/* V583: one open product layout. Existing cart, payment and gallery behaviour is retained. */
body.pt583-product { --pt583-ink:#202b25;--pt583-muted:#64716a;--pt583-line:#dfe5df;--pt583-green:#355f4e; }
body.pt583-product #mainContent { min-width:0; }
body.pt583-product #mainContent>.container { max-width:1160px!important;padding-inline:24px!important; }
body.pt583-product #mainContent :is(.product-layout,.pt569-power-layout) { display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)!important;gap:clamp(28px,4vw,58px)!important;align-items:start!important; }
body.pt583-product #mainContent :is(.product-gallery,.accessory-media-v443,.pt569-power-gallery,.pt555-gallery) { min-width:0;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;align-self:start!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-gallery { position:relative!important;top:auto!important;bottom:auto!important; }
body.pt583-product #mainContent .pt583-gallery-stage { position:relative; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.airpods-stage-v283,.main-media-stage,.pt570-gallery-stage,.accessory-main-stage-v443,.pt569-power-stage,.pt555-stage) { height:clamp(350px,39vw,510px)!important;max-height:none!important;min-height:0!important;border:0!important;border-radius:4px!important;box-shadow:none!important;background:#f3f4f1!important;overflow:hidden; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.airpods-stage-v283,.main-media-stage,.pt570-gallery-stage,.accessory-main-stage-v443,.pt569-power-stage,.pt555-stage)>img { width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;border:0!important;border-radius:4px!important;box-shadow:none!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-gallery>img.main-image { width:100%!important;height:clamp(350px,39vw,510px)!important;max-height:none!important;object-fit:contain!important;padding:18px!important;background:#f3f4f1!important;border:0!important;border-radius:4px!important;box-shadow:none!important;box-sizing:border-box; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.product-thumb-row,.airpods-thumb-row-v283,.thumb-row.airpods-pro-thumb-row,.thumb-row.airpods4-thumb-row-v514,.pt570-gallery-thumbs,.accessory-thumbs-v443,.pt569-power-thumbs) { display:flex!important;flex-wrap:nowrap!important;gap:9px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;padding:6px 2px 9px!important;margin:9px 0 0!important;max-width:100%!important;min-width:0!important;min-height:0!important;align-items:stretch!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.product-thumb-row,.airpods-thumb-row-v283,.thumb-row.airpods-pro-thumb-row,.thumb-row.airpods4-thumb-row-v514,.pt570-gallery-thumbs,.accessory-thumbs-v443,.pt569-power-thumbs)>:is(button,a,.thumb-item,.airpods-thumb-v283,.video-thumb,img) { flex:0 0 76px!important;width:76px!important;min-width:76px!important;max-width:76px!important;height:76px!important;min-height:0!important;margin:0!important;padding:5px!important;border:1px solid transparent!important;border-radius:4px!important;background:transparent!important;box-shadow:none!important;box-sizing:border-box!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.product-thumb-row,.airpods-thumb-row-v283,.thumb-row.airpods-pro-thumb-row,.thumb-row.airpods4-thumb-row-v514,.pt570-gallery-thumbs,.accessory-thumbs-v443,.pt569-power-thumbs)>:is(.active,.is-active,[aria-pressed=true]) { border-color:#7b9282!important;box-shadow:none!important;outline:none!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent :is(.product-thumb-row,.airpods-thumb-row-v283,.thumb-row.airpods-pro-thumb-row,.thumb-row.airpods4-thumb-row-v514,.pt570-gallery-thumbs,.accessory-thumbs-v443,.pt569-power-thumbs) :is(img,video) { width:100%!important;height:100%!important;min-height:0!important;max-height:66px!important;object-fit:contain!important;padding:0!important;margin:0!important;background:#f3f4f1!important;border:0!important;border-radius:2px!important;box-shadow:none!important; }
body.pt583-product #mainContent :is(.gallery-dots-v212,.airpods-dots-v283,.airwrap-dots-v462) { margin:10px 0 0!important;padding:0!important;min-height:8px!important;gap:7px!important; }
body.pt583-product #mainContent :is(.gallery-dots-v212,.airpods-dots-v283,.airwrap-dots-v462)>button { height:6px!important;min-height:6px!important;width:6px!important;min-width:6px!important;padding:0!important;border:0!important;box-shadow:none!important; }
body.pt583-product #mainContent :is(.gallery-dots-v212,.airpods-dots-v283,.airwrap-dots-v462)>button.is-active { width:18px!important; }

/* The existing controls keep their original links, labels, variant values and handlers. */
body.pt583-product #mainContent .pt583-colour-choice { padding:22px 0 18px!important;margin:0!important;min-width:0; }
body.pt583-product #mainContent .pt583-colour-choice .selected-color-label { margin:0 0 12px!important;font-size:12px!important;line-height:1.6!important;font-weight:400!important;color:#536257!important; }
body.pt583-product #mainContent .pt583-colour-choice .selected-color-label strong { color:#293d30!important;font-weight:600!important; }
body.pt583-product #mainContent .pt583-colours { display:flex!important;flex-flow:row wrap!important;grid-template-columns:none!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;width:auto!important;max-width:100%!important;margin:0!important;padding:2px!important;overflow:visible!important;border:0!important;box-shadow:none!important;background:none!important; }
body.pt583-product #mainContent .pt583-colours>.pt583-colour { position:relative!important;display:flex!important;flex:0 0 38px!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;min-height:38px!important;max-height:38px!important;padding:4px!important;margin:0!important;border:1px solid #cfd9d0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;outline:none!important;transform:none!important;font-size:0!important;line-height:0!important;text-decoration:none!important;box-sizing:border-box!important;cursor:pointer; }
body.pt583-product #mainContent .pt583-colour>:not(.pt583-colour-dot) { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important; }
body.pt583-product #mainContent .pt583-colour img { display:none!important; }
body.pt583-product #mainContent .pt583-colour::before,body.pt583-product #mainContent .pt583-colour::after { display:none!important;content:none!important; }
body.pt583-product #mainContent .pt583-colour>.pt583-colour-dot { position:static!important;display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:1px solid #0000000d!important;border-radius:50%!important;background:var(--pt583-swatch)!important;box-sizing:border-box!important; }
body.pt583-product #mainContent .pt583-colours>.pt583-colour:is(.is-active,.active,[aria-current=page],[aria-pressed=true]) { padding:3px!important;border:2px solid #385946!important;outline:2px solid #e5ece4!important;outline-offset:2px!important; }
body.pt583-product #mainContent .pt583-colour:hover { border-color:#486c53!important; }
body.pt583-product #mainContent .pt583-colours>.pt583-colour:focus-visible { outline:2px solid #355f4e!important;outline-offset:4px!important; }

/* Product information follows the same readable hierarchy as Airstrait. */
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card { min-width:0!important;padding:6px 0 0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important; }
body.pt583-product #mainContent .product-info-card::before { display:none!important;content:none!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card h1 { font-size:clamp(30px,3.15vw,42px)!important;font-weight:600!important;line-height:1.12!important;letter-spacing:-.04em!important;color:var(--pt583-ink)!important;margin:0 0 16px!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card :is(.product-subhook,.pt555-lead) { font-size:22px!important;line-height:1.4!important;letter-spacing:-.025em!important;font-weight:450!important;color:#344137!important;margin:0 0 15px!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card :is(.accessory-desc-v417,.airwrap-support-line-v460) { max-width:480px;font-size:13px!important;line-height:1.8!important;font-weight:400!important;color:var(--pt583-muted)!important;margin:0 0 15px!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card>.pt546-rating { width:max-content!important;max-width:100%;min-height:0!important;padding:0 0 4px!important;margin:2px 0 12px!important;border:0!important;border-bottom:1px solid #b9c7bc!important;border-radius:0!important;background:none!important;box-shadow:none!important;font-size:12px!important;font-weight:500!important;line-height:1.6!important;color:var(--pt583-green)!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card>.pt546-rating strong { font-size:inherit!important;font-weight:600!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card :is(.price,.pt555-price>strong) { font-size:36px!important;line-height:1.2!important;font-weight:600!important;letter-spacing:-.04em!important;color:#243d2d!important;margin:5px 0 10px!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card :is(.cable-info-note-v346,.cable-info-note-v347,.accessory-note-box-v417) { margin:8px 0 15px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:12px!important;line-height:1.65!important;color:var(--pt583-muted)!important; }
body.pt583-product #mainContent .product-info-card .pt552-fulfilment-note { margin:15px 0 12px!important;font-size:11px!important;line-height:1.6!important; }
body.pt583-product #mainContent .product-info-card .buy-row { gap:10px!important; }
body.pt583-product #mainContent .product-info-card .buy-row>.btn { min-height:46px!important;font-size:13px!important;line-height:1.4!important;padding:11px 10px!important;border-radius:10px!important; }
body.pt583-product #mainContent .pt583-option-choice { margin:18px 0!important; }
body.pt583-product #mainContent .pt583-option-label { font-size:12px!important;line-height:1.6!important;color:#536257!important;margin:0 0 10px!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs) { display:flex!important;gap:10px!important;flex-wrap:wrap!important;max-width:100%!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs)>button { flex:1 1 130px!important;max-width:210px!important;min-width:0!important;padding:12px 15px!important;min-height:64px!important;gap:3px!important;background:transparent!important;border:1px solid #cfd9d0!important;border-radius:5px!important;box-shadow:none!important;text-align:left!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs)>button:is(.is-active,[aria-pressed=true]) { border-color:#476b53!important;box-shadow:inset 0 0 0 1px #476b53!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs)>button strong { font-size:13px!important;font-weight:600!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs)>button span { font-size:12px!important;font-weight:500!important; }
body.pt583-product #mainContent :is(.magsafe-variant-grid-v417,.pt555-packs)>button small { font-size:10px!important;font-weight:400!important; }
body.pt583-product #mainContent .pt555-swatches button { width:38px!important;height:38px!important;min-width:38px!important;padding:4px!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important; }
body.pt583-product #mainContent .pt555-swatches button[aria-pressed=true] { border-color:#385946!important;outline:2px solid #e5ece4;outline-offset:2px; }

/* Editorial content is separated with space and fine rules, without enclosing cards. */
body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections { display:block!important;grid-template-columns:none!important;columns:auto!important;gap:0!important;margin:38px 0 0!important;width:100%!important;max-width:none!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections>:is(section,details) { grid-column:auto!important;grid-row:auto!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;border:0!important;border-top:1px solid var(--pt583-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:44px 0!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections>:is(section,details)>h2 { margin:0 0 22px!important;font-size:clamp(25px,2.8vw,36px)!important;line-height:1.2!important;font-weight:500!important;letter-spacing:-.035em!important;color:var(--pt583-ink)!important; }
body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections>.product-section-card>p { font-size:14px!important;line-height:1.85!important;max-width:760px;color:var(--pt583-muted); }
body.pt583-product #mainContent :is(.sony-xm6-feature-card-v332,.sony-xm6-video-card-v334,.buds4-feature-card-v347,.airpods-feature-card-v283,.pt555-feature,.pt553-feature-link,.pt570-feature-grid>article) { border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important; }
body.pt583-product #mainContent :is(.sony-xm6-feature-card-v332,.sony-xm6-video-card-v334,.buds4-feature-card-v347,.airpods-feature-card-v283)>div { padding-inline:0!important; }
body.pt583-product #mainContent .product-sections :is(.sony-xm6-feature-card-v332,.sony-xm6-video-card-v334,.buds4-feature-card-v347,.airpods-feature-card-v283,.pt555-feature) h3 { font-size:18px!important;line-height:1.4!important;font-weight:550!important;letter-spacing:-.02em!important;color:var(--pt583-ink)!important;margin:12px 0 8px!important; }
body.pt583-product #mainContent .product-sections :is(.sony-xm6-feature-card-v332,.sony-xm6-video-card-v334,.buds4-feature-card-v347,.airpods-feature-card-v283,.pt555-feature) p { font-size:14px!important;line-height:1.8!important;font-weight:400!important;color:var(--pt583-muted)!important; }
body.pt583-product #mainContent .pt553-feature-link { padding:0!important; }
body.pt583-product #mainContent .pt553-feature-link>img { border-radius:4px!important; }
body.pt583-product #mainContent :is(.pt566-faq,.pt570-disclosure,.pt575-product-help,.as-accordion) { box-shadow:none!important; }
body.pt583-product #mainContent :is(.pt566-faq,.pt575-product-help) { border:0!important;border-top:1px solid var(--pt583-line)!important;border-radius:0!important;background:none!important;padding:0!important; }
body.pt583-product #mainContent :is(.pt566-faq,.pt575-product-help)>summary { padding:19px 0!important;font-size:14px!important;line-height:1.6!important;font-weight:550!important; }
body.pt583-product #mainContent :is(.pt566-faq-answer,.pt575-product-help>p) { padding:0 0 20px!important;margin:0!important;font-size:13px!important;line-height:1.8!important; }
body.pt583-product #mainContent .pt568-cushion-detail { border:0!important;background:none!important;box-shadow:none!important;padding:0!important;gap:40px!important; }
body.pt583-product #mainContent .pt568-cushion-detail .pt568-cushion-info { border:0!important;background:none!important;box-shadow:none!important; }
body.pt583-product #mainContent .pt568-colour-picker { border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important; }
body.pt583-product #mainContent .pt568-colour-picker>summary { padding:12px 0!important; }
body.pt583-product #mainContent .pt558-colour-options { border-radius:4px!important;box-shadow:none!important; }

@media(max-width:800px) {
 body.pt583-product #mainContent>.container { padding-inline:18px!important; }
 body.pt583-product #mainContent :is(.product-layout,.pt569-power-layout) { grid-template-columns:minmax(0,1fr)!important;gap:26px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent :is(.airpods-stage-v283,.main-media-stage,.pt570-gallery-stage,.accessory-main-stage-v443,.pt569-power-stage,.pt555-stage) { height:min(380px,95vw)!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-gallery>img.main-image { height:min(380px,95vw)!important;max-height:380px!important;padding:14px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card { padding-top:0!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card h1 { font-size:34px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card :is(.product-subhook,.pt555-lead) { font-size:22px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent :is(.product-thumb-row,.airpods-thumb-row-v283,.thumb-row.airpods-pro-thumb-row,.thumb-row.airpods4-thumb-row-v514,.pt570-gallery-thumbs,.accessory-thumbs-v443,.pt569-power-thumbs)>:is(button,a,.thumb-item,.airpods-thumb-v283,.video-thumb,img) { flex-basis:68px!important;width:68px!important;min-width:68px!important;max-width:68px!important;height:68px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections { margin-top:30px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections>:is(section,details) { padding:34px 0!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-sections>:is(section,details)>h2 { font-size:29px!important; }
 body.pt583-product #mainContent .product-sections :is(.sony-xm6-feature-card-v332,.sony-xm6-video-card-v334,.buds4-feature-card-v347,.airpods-feature-card-v283,.pt555-feature) h3 { font-size:16px!important; }
 body.pt583-product #mainContent .pt568-cushion-detail { gap:26px!important; }
}
@media(max-width:360px) {
 body.pt583-product #mainContent .pt583-colours { gap:8px!important; }
 body.pt583-product #mainContent .pt583-colours>.pt583-colour { width:36px!important;height:36px!important;min-width:36px!important;max-width:36px!important;min-height:36px!important;max-height:36px!important;flex-basis:36px!important; }
 body.pt583-product:not(.pt581-airstrait) #mainContent .product-info-card h1 { font-size:31px!important; }
}
