/* V18.77 — gallery + simple, real-SKU choices. Scoped to the product page. */
.p77-product{--pd-ink:#14191f;--pd-muted:#626c79;--pd-line:#e3e7ed;--pd-soft:#f7f8fa;--pd-orange:#f14b1c;color:var(--pd-ink)}
.p77-product [hidden]{display:none!important}.p77-product *{box-sizing:border-box}
.p77-shell{width:min(1240px,calc(100% - 64px));margin-inline:auto}
.p77-product .pd-breadcrumb{font-size:14px;padding:21px 0 24px;gap:8px;line-height:1.5}
.p77-product .pd-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:46px;align-items:start}
.p77-product .pd-gallery{position:sticky;top:110px;display:grid;grid-template-columns:60px minmax(0,1fr);gap:16px;align-items:start;padding-top:8px}
.p77-product .pd-photo{grid-column:2;grid-row:1;aspect-ratio:1;min-height:360px;border:0;border-radius:20px;background:linear-gradient(145deg,#fff,#f9fafb)}
.p77-product .pd-photo>button{padding:42px 20px;min-width:0;min-height:0}
.p77-product .pd-photo>button:disabled{cursor:default}
.p77-product .pd-photo img{max-height:500px;mix-blend-mode:multiply;object-fit:contain}
.p77-product .pd-photo-label{left:12px;top:12px;border:1px solid #edf0f3;font-size:13px;padding:5px 9px;border-radius:6px}
.p77-product .pd-photo-caption{font-size:14px;bottom:13px}
.p77-product .pd-thumbs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:9px;overflow-y:auto;overflow-x:hidden;max-height:490px;margin:40px 0 0;padding:3px}
.p77-product .pd-thumbs:empty{display:none}
.p77-product .pd-thumbs button{flex:0 0 62px;width:54px;height:62px;border-radius:9px;background:white;padding:4px}
.p77-product .pd-thumbs button[aria-pressed=true]{border-color:var(--pd-orange)}
.p77-product .pd-gallery-note{grid-column:1/-1;text-align:center;font-size:14px;line-height:1.55;margin:0;color:#657080;padding:0 22px}
.p77-product .pd-copy{padding:0}
.p77-product .pd-eyebrow{font-size:13px;letter-spacing:.025em;font-weight:650;margin:0 0 7px;text-transform:none}
.p77-product .pd-copy h1{font-size:32px;line-height:1.17;letter-spacing:-.85px;margin-bottom:8px;font-weight:750;overflow-wrap:break-word}
.p77-product .pd-subtitle{font-size:16px;line-height:1.55;margin:0 0 8px}
.p77-product .pd-review-link{font-size:14px;min-height:34px;margin:0 0 12px;color:#596676}
.p77-product .pd-price-row{gap:9px}
.p77-product .pd-price{font-size:33px;line-height:1.25;letter-spacing:-.8px}
.p77-product .pd-price-note{font-size:14px;line-height:1.5;margin-bottom:14px}
.p77-product .pd-install-promise{background:#f0f8f3;border:1px solid #dcebe1;border-radius:11px;padding:12px 14px;margin:14px 0}
.p77-product .pd-install-promise strong{font-size:16px}.p77-product .pd-install-promise p{font-size:14px}
.p77-product .pd-fit{margin:12px 0;padding:12px 0;border-top:0;gap:10px}
.p77-product .pd-fit p{font-size:14px}.p77-product .pd-fit strong{font-size:15px}
.p77-product .pd-fit-icon{background:#f6f7f9;height:35px}
.p77-options{border:1px solid var(--pd-line);border-radius:14px;margin:16px 0 18px;padding:18px;background:#fff;min-width:0}
.p77-options h2{font-size:16px;line-height:1.4;display:flex;justify-content:space-between;gap:10px;margin:0 0 12px;align-items:baseline}
.p77-options h2>span{font-size:13px;font-weight:400;color:var(--pd-muted)}
.p77-part-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.p77-option{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;align-content:start;border:1px solid #dde3eb;border-radius:9px;padding:12px;min-height:93px;text-decoration:none!important;color:var(--pd-ink);position:relative;background:#fff;font-size:15px;line-height:1.4}
.p77-option>span{font-weight:550}.p77-option>strong{font-size:16px;font-weight:650}.p77-option>small{color:#357249;font-size:13px;min-height:18px}
.p77-option.is-selected,.p77-choice.is-selected{border-color:var(--pd-orange);box-shadow:inset 0 0 0 1px var(--pd-orange);background:#fff8f4}
.p77-option.is-selected:after{content:'✓';position:absolute;right:9px;bottom:8px;font-size:14px;font-weight:700;color:#d54216}
.p77-option:hover,.p77-choice:not(.is-unavailable):hover{border-color:#f14b1c;background:#fffaf7}
.p77-option-hint{font-size:13px;line-height:1.5;color:var(--pd-muted);margin:12px 0 0}
.p77-choice-group{border:0;padding:0;margin:0 0 18px;min-width:0}
.p77-choice-group legend{font-size:15px;line-height:1.5;font-weight:650;margin:0 0 9px;padding:0}
.p77-choice-group legend>span{font-weight:400;color:var(--pd-muted);margin-left:7px}
.p77-choices{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.p77-choice{min-height:45px;display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;gap:3px;border:1px solid #dfe4eb;border-radius:8px;padding:9px 12px;color:#202730;text-decoration:none!important;background:white;font-size:15px;line-height:1.4;text-align:center}
.p77-choice strong{font-size:14px;font-weight:550}.p77-choice small{font-size:12px;color:#747d88}
.p77-choice:has(i){flex:none;flex-direction:row;align-items:center;gap:8px}
.p77-choice i{width:22px;height:22px;border-radius:100%;background:var(--swatch);border:1px solid #0002;box-shadow:0 0 0 3px #fff}
.p77-choice.is-unavailable{background:#f8f9fb;color:#89909b;border-style:dashed;cursor:not-allowed}
.p77-unknown{padding:9px 13px;background:#f7f8fa;color:#626c79;border-radius:8px;font-size:15px}
.p77-condition{background:#f7f9fb;border-radius:9px;padding:13px 14px;margin:0;font-size:14px;line-height:1.5}
.p77-condition h3{font-size:14px;font-weight:650;line-height:1.5;margin:0 0 8px}
.p77-condition dl{margin:0;display:grid;gap:5px}.p77-condition dl>div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:10px}
.p77-condition dt{color:#5a6471}.p77-condition dd{margin:0;color:#293641}
.p77-condition p{font-size:13px;line-height:1.5;color:#667382;margin:8px 0 0}
.p77-product .pd-stock{font-size:14px;margin:14px 0 8px}.p77-product .pd-fulfilment{font-size:14px;padding:8px 0 13px}
.p77-product .pd-buy-row{gap:10px}.p77-product .pd-primary{border-radius:10px;font-size:16px;min-height:51px;background:#f14b1c;border-color:#f14b1c}
.p77-product .pd-primary:disabled{background:#e6e8eb;border-color:#e6e8eb}.p77-product .pd-buy-note{font-size:14px;text-align:center;margin:10px 0}
.p77-product .pd-details{margin-top:52px}.p77-product .pd-tabs{gap:32px;scroll-padding:16px}
.p77-product .pd-tabs button[aria-selected=true]{border-bottom-color:#f14b1c;color:#c73d12}
.p77-product .pd-description-grid{background:linear-gradient(110deg,#fff9f5,#fff);border:1px solid #f4ece5;border-radius:16px;padding:28px;gap:38px}
.p77-product .pd-panel h2{font-size:24px;line-height:1.3}.p77-product .pd-panel p{line-height:1.7}
.p77-product .pd-feature-list li:before{color:#de451b}
.p77-product .pd-related{border:0;padding-top:10px}.p77-product .pd-related h2{font-size:23px}
.p77-product .pd-related-card{transition:border-color .15s;background:white}.p77-product .pd-related-card:hover{border-color:#d85b2a}
.p77-product .pd-related-card img{background:#fafbfc}
.p77-product .pd-review-empty{border-style:solid;background:#fbfcfd}
.p77-preview-banner{max-width:1240px;margin:15px auto 0;border:1px solid #efd9c8;background:#fff9f3;padding:12px 16px;border-radius:9px;font:14px/1.5 Inter,Arial,sans-serif;color:#79532e}
.p77-preview-banner nav{display:flex;flex-wrap:wrap;gap:16px;margin-top:7px}.p77-preview-banner a{color:#8c441a;font-weight:600}
@media(min-width:1600px){.p77-shell{width:min(1330px,calc(100% - 100px))}.p77-product .pd-grid{gap:64px}.p77-product .pd-photo{min-height:460px}}
@media(max-width:1050px){.p77-shell{width:calc(100% - 40px)}.p77-product .pd-grid{gap:28px;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}.p77-product .pd-gallery{grid-template-columns:1fr;gap:12px}.p77-product .pd-photo{grid-column:1;min-height:320px}.p77-product .pd-thumbs{grid-row:2;flex-direction:row;overflow-x:auto;overflow-y:hidden;margin:0;justify-content:center}.p77-product .pd-copy h1{font-size:29px}.p77-product .pd-description-grid{gap:24px;padding:22px}.p77-preview-banner{margin:12px 20px 0}}
@media(max-width:760px){
 .p77-shell{width:calc(100% - 32px)}.p77-product .pd-breadcrumb{padding:14px 0;font-size:14px}.p77-product .pd-breadcrumb strong{display:none}
 .p77-product .pd-grid{display:flex;flex-direction:column;gap:22px}.p77-product .pd-gallery{position:static;width:100%;padding:0;gap:8px}
 .p77-product .pd-photo{min-height:0;aspect-ratio:1.35;border-radius:14px}.p77-product .pd-photo>button{padding:28px 36px 38px}
 .p77-product .pd-photo img{max-height:290px}.p77-product .pd-photo-label{font-size:13px}.p77-product .pd-photo-caption{font-size:14px;bottom:10px}
 .p77-product .pd-thumbs{gap:8px}.p77-product .pd-thumbs button{width:52px;height:58px;flex-basis:52px}
 .p77-product .pd-gallery-note{font-size:15px;line-height:1.5;padding:0 4px;margin-top:2px;text-align:left}
 .p77-product .pd-copy{width:100%}.p77-product .pd-eyebrow{font-size:14px}.p77-product .pd-copy h1{font-size:28px;line-height:1.2;letter-spacing:-.7px}
 .p77-product .pd-subtitle{font-size:17px}.p77-product .pd-review-link{font-size:15px;min-height:40px;margin-bottom:8px}
 .p77-product .pd-price{font-size:32px}.p77-product .pd-price-note{font-size:15px}
 .p77-options{padding:15px;border-radius:12px;margin:16px 0}.p77-options h2{font-size:17px}.p77-options h2>span{display:none}
 .p77-option{font-size:16px;padding:12px;min-height:104px}.p77-option>strong{font-size:17px}.p77-option>small{font-size:14px}
 .p77-option-hint{font-size:15px}.p77-choice-group legend{font-size:17px}.p77-choice{font-size:16px;min-height:48px;padding:10px}.p77-choice strong{font-size:15px}.p77-choice small{font-size:14px}
 .p77-condition{font-size:15px;padding:13px}.p77-condition h3{font-size:16px}.p77-condition p{font-size:15px}.p77-condition dl>div{grid-template-columns:58px minmax(0,1fr);gap:9px}
 .p77-product .pd-install-promise strong{font-size:17px}.p77-product .pd-install-promise p,.p77-product .pd-fit p{font-size:15px}
 .p77-product .pd-fit strong{font-size:16px}.p77-product .pd-fit{gap:8px}.p77-product .pd-fit button{font-size:15px}
 .p77-product .pd-stock,.p77-product .pd-buy-note,.p77-product .pd-subaction{font-size:15px}.p77-product .pd-fulfilment{font-size:16px}
 .p77-product .pd-primary{font-size:17px;min-height:52px}.p77-product .pd-qty button{width:44px}.p77-product .pd-qty output{font-size:17px}
 .p77-product .pd-details{margin-top:32px}.p77-product .pd-tabs{gap:25px}.p77-product .pd-tabs button{font-size:17px}
 .p77-product .pd-description-grid{padding:19px 16px;grid-template-columns:1fr}.p77-product .pd-panel p{font-size:17px}
 .p77-product .pd-related-grid{grid-template-columns:1fr}.p77-product .pd-related-card:last-child{display:grid}.p77-preview-banner{margin:12px 16px 0;font-size:15px}
 .modern-product-page .pd-mobile-buy{z-index:45;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff}
 .modern-product-page .pd-mobile-buy small{font-size:13px}.modern-product-page .pd-mobile-buy strong{font-size:23px}.modern-product-page .pd-mobile-buy button{font-size:16px;min-height:49px}
}
@media(max-width:359px){.p77-shell{width:calc(100% - 24px)}.p77-product .pd-copy h1{font-size:26px}.p77-options{padding:12px}.p77-part-options{gap:8px}.p77-option{padding:10px;font-size:15px}.p77-choice{padding:9px;font-size:15px}.modern-product-page .pd-mobile-buy{padding-inline:12px;gap:8px}.modern-product-page .pd-mobile-buy button{font-size:15px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.p77-product *{scroll-behavior:auto!important;transition:none!important}}
@media print{.p77-product .pd-gallery{position:static}.modern-product-page .pd-mobile-buy{display:none!important}.p77-product .pd-panel[hidden]{display:block!important}}

/* Native SKU navigation returns to the choice panel, without writing cart or browser storage. */
#p77-choices{scroll-margin-top:120px}
@media(max-width:760px){#p77-choices{scroll-margin-top:90px}.pd-mobile-buy{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}
