/* Requested local presentation refinements. No shared or paid-page changes. */
.tso .tsc-top{grid-template-columns:minmax(0,1fr);align-items:start}
.tso .tsc-penny{align-items:start}
.tso .tsc-lede strong{font-weight:600}
.tso .tsc-stopby-copy .tire-directions{margin-top:10px;font-size:13px}
.tire-directions summary{width:fit-content;cursor:pointer;color:var(--teal);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.tire-directions .tire-map-links{display:flex;flex-wrap:wrap;gap:8px 18px;padding-top:10px}
.tire-map-links a{display:inline-flex;align-items:center;min-height:36px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.tso figure figcaption,.tso .tsc figure figcaption{margin-top:7px;color:#364b46;font-size:14px;line-height:1.45}
.tso figure figcaption>strong{display:block;font-weight:600}
.tso #reviews{background:#fff}
.tso .tso-install-photo{background:transparent;border-radius:0;overflow:visible}
.tso .tso-install-photo img{border-radius:12px}
.tso .tcw-stepno{color:var(--teal)}
.tso #installation>.wrap>.tso-visit{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
@media(max-width:760px){.tso #installation>.wrap>.tso-visit{grid-template-columns:1fr}}
@media(max-width:560px){.tso .tsp-compare{grid-template-columns:1fr}}
.tso figure .photo-credit,.tire-examples .photo-credit{display:block;margin-top:4px;font-size:11px;line-height:1.45;color:#52635e;font-weight:400}
.tso figure .photo-credit a,.tire-examples .photo-credit a{text-decoration:underline;text-underline-offset:2px}
.tso .tsc-signs2 li{padding-bottom:12px}
.tso .tsc-signs2 .tire-sign-copy{min-width:0}
.tire-example-button{display:inline-flex;align-items:center;gap:7px;min-height:38px;margin-top:5px;padding:4px 0;border:0;background:none;color:var(--teal);font:600 13px/1.4 Poppins,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tire-example-button::after{content:'\203A';font-size:18px;text-decoration:none}
.tire-example-button:focus-visible,.tire-directions summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.tso .tsp{align-items:start;grid-template-columns:1fr 1fr;gap:30px}
.tso .tsp-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:none}
.tso .tsp-photo img{object-fit:contain;aspect-ratio:auto;background:transparent;height:180px;width:100%;max-width:100%}
.tso .tsp-photo figcaption .photo-context{display:block;font-size:13px;margin-top:4px}
/* One shared grid row makes the two numbered explanations begin together. */
.tso #tire-age .tsc-steps{row-gap:10px}
.tso #tire-age .tsc-step{display:contents}
.tso #tire-age .tsc-date-media{grid-column:1;grid-row:1;min-width:0}
.tso #tire-age .tsc-date-example{grid-column:2;grid-row:1;min-width:0}
.tso #tire-age .tsc-photo{width:100%;max-width:360px;align-self:start;margin:0}
.tso #tire-age .tsc-diagram,.tso #tire-age .tso-dot-photo{width:100%;max-width:360px;height:auto}
.tso #tire-age .tsc-photo img{width:100%;height:auto;object-fit:contain}
.tso #tire-age .tsc-step:first-child>p{grid-column:1;grid-row:2}
.tso #tire-age .tsc-step:nth-child(2)>p{grid-column:2;grid-row:2}
.tso #tire-age .tsc-decode{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0;align-items:center}
.tso #tire-age .tsc-part{flex:none;min-width:88px;gap:8px;padding:9px 12px;white-space:nowrap}
.tso #tire-age .tsc-part small{flex:none}
.tso #tire-age .tsc-age-note{margin-top:var(--tso-divider-before);padding-top:var(--tso-divider-after)}
.tso #tire-age .tsc-age-note p{margin:0 0 9px;max-width:none}
.tso #tire-age .tsc-age-note .tsc-age-sources{font-size:12px;margin-bottom:0}
.tso #tire-age .tsc-age-sources a{white-space:normal;display:inline;min-height:0}
.tso .tsp-photo[id]{scroll-margin-top:110px}
.tso .tsp-photo[id]:target{outline:2px solid var(--teal);outline-offset:7px;border-radius:5px}
.tso .tire-coverage-grid a{color:var(--teal);font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media(min-width:761px){
 .tso #tire-age .tsc-diagram{width:auto;height:170px;max-width:100%}
 .tso #tire-age .tso-dot-photo{width:335.202px;height:170px;max-width:100%}
 .tso #tire-age .tsc-photo img{height:100%;object-fit:contain}
}
@media(min-width:1200px){
 .tso #tire-age .tsc-photo{display:grid;grid-template-columns:minmax(0,1fr) 196px;gap:18px;max-width:none;align-items:start}
 .tso #tire-age .tsc-photo figcaption{margin:0}
 .tso #tire-age .tsc-equals{flex-basis:100%;font-size:13px}
}
.tso #tire-check{padding-bottom:14px}
.tso #quote{padding-top:18px}
.tso #quote .tso-rail{align-items:start}
.tso #quote .tso-sameday{padding-top:0}
.tso .tso-coverage{background:#fff;border-top:1px solid var(--tso-rule);border-bottom:1px solid var(--tso-rule)}
.tso .tso-coverage-inner{display:block;padding-top:34px;padding-bottom:34px}
.tso .tso-coverage h2{color:var(--tso-deep);margin-bottom:12px}
.tso .tso-coverage p{color:var(--tso-body);max-width:80ch}
.tso .tire-coverage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:22px}
.tso .tire-coverage-grid section{border-top:3px solid var(--teal);padding-top:14px}
.tso .tire-coverage-grid h3{font-size:20px;line-height:1.2;margin-bottom:10px}
.tso .tire-coverage-grid p{font-size:14px;line-height:1.65;margin-bottom:10px}
.tso .tire-coverage-note{margin-top:16px;font-size:14px}
.tso .tire-coverage-sources{margin-top:14px;font-size:12px}
.tso .tire-coverage-sources summary{cursor:pointer;color:var(--teal);font-weight:600}
.tso .tire-coverage-sources ul{margin:8px 0 0;padding-left:18px}
.tso .tire-coverage-sources a{text-decoration:underline;text-underline-offset:3px}
.tire-examples{width:min(920px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid #d8ded9;border-top:5px solid var(--green);border-radius:10px;background:#fff;color:var(--ink);box-shadow:0 16px 70px #012a2940;overflow:auto}
.tire-examples:not([open]){display:none}
.tire-examples::backdrop{background:#012a29b3}
.tire-examples .example-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:start;gap:18px;padding:20px 24px 14px;background:#fff;border-bottom:1px solid #e3e8e4}
.tire-examples h2{margin:0;font:600 25px/1.2 Oswald,Arial,sans-serif;text-transform:uppercase;color:var(--teal-900)}
.tire-examples .example-close{flex:none;width:40px;height:40px;padding:0;border:1px solid #ccd8d1;border-radius:4px;color:var(--teal);background:#fff;font:400 25px/1 Arial;cursor:pointer}
.tire-examples .example-body{padding:18px 24px 24px}
.tire-examples .example-intro{font-size:14px;line-height:1.6;margin:0 0 18px}
.tire-examples .example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tire-examples .example-grid.is-small{grid-template-columns:repeat(2,minmax(0,1fr))}
.tire-examples.is-single{width:min(560px,calc(100% - 32px))}
.tire-examples.is-single .example-grid{grid-template-columns:1fr}
.tire-examples figure{margin:0;min-width:0}
.tire-examples figure img{width:100%;height:210px;object-fit:contain;border-radius:6px;background:#f4f5f2}
.tire-examples figcaption{margin-top:10px;font-size:13px;line-height:1.55}
.tire-examples figcaption>strong{display:block;margin-bottom:4px;font-size:15px;color:var(--teal-900)}
.tire-examples .example-note{margin:20px 0 0;padding-top:14px;border-top:1px solid #e3e8e4;font-size:13px;line-height:1.6}
.tire-examples .example-credits{margin-top:20px;padding-top:12px;border-top:1px solid #e3e8e4;color:#52635e;font-size:11px;line-height:1.5}
.tire-examples .example-credits h3{font:600 11px/1.5 Poppins,Arial,sans-serif;margin:0 0 6px;text-transform:none;color:inherit}
.tire-examples .example-credits ul{margin:0;padding-left:16px}
.tire-examples .example-credits li+li{margin-top:5px}
.tire-examples .example-credits a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:1000px){.tso .tsp{grid-template-columns:1fr}.tso .tsp-photos{max-width:700px}}
@media(max-width:760px){
 .tso #tire-age .tsc-steps{display:block}
 .tso #tire-age .tsc-step{display:flex;gap:10px}
 .tso #tire-age .tsc-step+li{margin-top:24px}
 .tso #tire-age .tsc-photo,.tso #tire-age .tsc-diagram{max-width:360px}
 .tso #tire-check{padding-bottom:12px}
 .tso #quote{padding-top:14px}
 .tso .tsp-photos{order:0;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .tso .tsp-photo img{width:100%;height:160px;object-fit:contain}
 .tso .tire-coverage-grid{grid-template-columns:1fr;gap:16px}
 .tire-examples .example-grid,.tire-examples .example-grid.is-small{grid-template-columns:1fr}
 .tire-examples .example-head{padding:16px}
 .tire-examples .example-body{padding:16px}
 .tire-examples figure img{height:180px}
}
@media(max-width:400px){.tso .tsp-photos{grid-template-columns:1fr}.tso .tsp-photo img{height:auto;max-height:230px}}
/* One page-body rhythm, taken from the owner's offer/process reference.
   Hero, card interiors, forms, FAQ rows and dialog spacing stay independent. */
#main.tso{--tso-divider-before:34px;--tso-divider-after:28px}
#main.tso>section:not(.tso-open){padding-top:var(--tso-divider-after);padding-bottom:var(--tso-divider-before)}
#main.tso #coverage .tso-coverage-inner{padding-top:0;padding-bottom:0}
#main.tso #tire-patching,#main.tso #tire-age,#main.tso #quote .tso-next-row{margin-top:var(--tso-divider-before);padding-top:var(--tso-divider-after)}
#main.tso #quote .tso-next-row{margin-bottom:0}
#main.tso #quote .tso-quote-grid{row-gap:0}
#main.tso #installation{position:relative}
#main.tso #installation::before{content:"";position:absolute;top:0;left:max(24px,calc((100% - var(--wrap,1180px))/2 + 24px));right:max(24px,calc((100% - var(--wrap,1180px))/2 + 24px));border-top:1px solid var(--tso-rule)}
@media(max-width:760px){#main.tso{--tso-divider-before:28px;--tso-divider-after:24px}}
@media print{.tire-examples,.tire-example-button,.tire-directions{display:none!important}}
