/* D06 original CSSOM, scoped exclusively to W07. */
.sgw2-pdp-page .pdp{display: grid; grid-template-columns: 1fr 1fr; gap: 45px; align-items: start; margin-bottom: 50px;}
.sgw2-pdp-page .pdp-image{background: var(--soft); border: 1px solid var(--line); border-radius: 10px; position: relative; padding: 32px; min-height: 440px; display: grid; place-items: center;}
.sgw2-pdp-page .pdp-image img{width: 88%; height: 350px; object-fit: contain; mix-blend-mode: multiply;}
.sgw2-pdp-page .pdp-image .badge{position: absolute; top: 18px; left: 18px; background: rgb(255, 255, 255);}
.sgw2-pdp-page .image-note{color: var(--muted); font-size: 14px; margin: 12px 0px;}
.sgw2-pdp-page .gallery-info{display: flex; gap: 12px; align-items: center; border-bottom: 1px solid var(--line); padding: 15px 0px; margin-bottom: 20px;}
.sgw2-pdp-page .gallery-info .ico{color: var(--red); width: 26px; height: 26px;}
.sgw2-pdp-page .pdp-detail .eyebrow{margin-bottom: 10px; color: var(--red);}
.sgw2-pdp-page .pdp-detail h1{font-size: 42px; margin-bottom: 13px;}
.sgw2-pdp-page .pdp-detail .spec-line{font-size: 19px; color: var(--muted); margin-bottom: 17px;}
.sgw2-pdp-page .pdp-detail .price{font-size: 36px;}
.sgw2-pdp-page .pdp-detail .price.was{font-size: 17px;}
.sgw2-pdp-page .fitment{border: 1px solid var(--line); border-radius: 7px; padding: 14px; font-size: 14px; margin: 18px 0px; display: flex; gap: 10px; background: rgb(250, 250, 251);}
.sgw2-pdp-page .fitment .ico{color: var(--muted);}
.sgw2-pdp-page .fitment strong{display: block; margin-bottom: 3px;}
.sgw2-pdp-page .fitment.published{background: rgb(240, 246, 242); border-color: rgb(207, 224, 212);}
.sgw2-pdp-page .fitment.published .ico{color: rgb(53, 96, 74);}
.sgw2-pdp-page .fitment.conditional{background: rgb(255, 247, 237); border-color: rgb(234, 219, 201);}
.sgw2-pdp-page .quantity-line{display: flex; gap: 20px; align-items: flex-end; margin: 18px 0px;}
.sgw2-pdp-page .quantity-control{display: flex; align-items: center; border: 1px solid rgb(203, 209, 218); border-radius: 5px; overflow: hidden; background: white; width: 150px;}
.sgw2-pdp-page .quantity-control button{display: grid; place-items: center; width: 43px; height: 44px; font-size: 22px;}
.sgw2-pdp-page .quantity-control input{border: 0px; min-width: 0px; width: 61px; padding: 0px; text-align: center; font-weight: 700; height: 44px; font-size: 17px;}
.sgw2-pdp-page .quantity-control input::-webkit-inner-spin-button{appearance: none;}
.sgw2-pdp-page .quantity-line label{font-size: 14px; color: var(--muted); font-weight: 700; display: flex; flex-direction: column; gap: 6px;}
.sgw2-pdp-page .quantity-line .line-total{margin-left: auto; text-align: right;}
.sgw2-pdp-page .line-total small{display: block; font-size: 14px; color: var(--muted);}
.sgw2-pdp-page .line-total b{font-size: 27px; letter-spacing: -0.035em;}
.sgw2-pdp-page .mode-buttons{display: flex; gap: 8px; margin: 18px 0px 12px;}
.sgw2-pdp-page .mode-buttons button{flex: 1 1 0%; border: 1px solid var(--line); border-radius: 6px; padding: 10px; font-size: 14px; font-weight: 700; min-height: 46px; text-align: center;}
.sgw2-pdp-page .mode-buttons button[aria-pressed="true"]{border-color: var(--ink); background: var(--ink); color: white;}
.sgw2-pdp-page .extras{background: var(--soft); padding: 16px; border-radius: 6px; margin: 15px 0px;}
.sgw2-pdp-page .extras h3{font-size: 17px; margin-bottom: 13px;}
.sgw2-pdp-page .extras label{margin: 13px 0px;}
.sgw2-pdp-page .extras .extra-price{margin-left: auto; font-weight: 700; white-space: nowrap;}
.sgw2-pdp-page .pdp-actions{display: flex; gap: 10px; margin-top: 16px;}
.sgw2-pdp-page .pdp-actions .primary{flex: 1 1 0%;}
.sgw2-pdp-page .pdp-actions > .ghost{padding-inline: 14px;}
.sgw2-pdp-page .feature-list{padding: 20px; background: var(--soft); border-radius: 7px;}
.sgw2-pdp-page .feature-list h3{font-size: 21px; margin-bottom: 13px;}
.sgw2-pdp-page .feature-list p{font-size: 15px; margin: 10px 0px; color: var(--muted);}
.sgw2-pdp-page .detail-tabs{display: flex; gap: 28px; border-bottom: 1px solid var(--line); margin-bottom: 26px; overflow-x: auto;}
.sgw2-pdp-page .detail-tabs button{padding: 15px 0px; font-size: 15px; font-weight: 700; border-bottom: 3px solid transparent; white-space: nowrap;}
.sgw2-pdp-page .detail-tabs button[aria-selected="true"]{color: var(--red); border-color: var(--red);}
.sgw2-pdp-page .spec-table{border-collapse: collapse; width: 100%; font-size: 15px;}
.sgw2-pdp-page .spec-table td, .sgw2-pdp-page .spec-table th{text-align: left; padding: 14px 17px; border-bottom: 1px solid var(--line);}
.sgw2-pdp-page .spec-table th{width: 32%; background: rgb(250, 250, 250);}
.sgw2-pdp-page .product-related{padding: 38px 0px 60px;}
.sgw2-pdp-page .pdp-reassurance{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 40px;}
.sgw2-pdp-page .pdp-reassurance > div{border: 1px solid var(--line); border-radius: 7px; padding: 20px;}
.sgw2-pdp-page .pdp-reassurance .ico{color: var(--red); margin-bottom: 12px;}
.sgw2-pdp-page .pdp-reassurance strong{display: block; margin-bottom: 9px;}
.sgw2-pdp-page .pdp-reassurance p{font-size: 14px; color: var(--muted);}
.sgw2-pdp-page .contextual-promo{border: 1px solid var(--line); border-radius: 7px; padding: 19px; margin-top: 16px;}
.sgw2-pdp-page .contextual-promo h3{font-size: 20px; margin-bottom: 10px;}
.sgw2-pdp-page .contextual-promo p{font-size: 14px; color: var(--muted); margin-bottom: 8px;}
.sgw2-pdp-page .horizon-note{border: 1px solid var(--line); border-radius: 9px; padding: 28px; background: rgb(250, 250, 251);}
.sgw2-pdp-page .horizon-note h2{font-size: 27px; margin-bottom: 17px;}
.sgw2-pdp-page .two-col{display: grid; grid-template-columns: 1fr 1fr; gap: 20px;}
@media (max-width: 1190px){
.sgw2-pdp-page .pdp{gap: 28px;}
.sgw2-pdp-page .pdp-image{min-height: 390px; padding: 22px;}
.sgw2-pdp-page .pdp-image img{height: 310px;}
.sgw2-pdp-page .pdp-detail h1{font-size: 36px;}
}
@media (max-width: 900px){
.sgw2-pdp-page .pdp{grid-template-columns: 1fr 1fr; gap: 22px;}
.sgw2-pdp-page .pdp-image{min-height: 320px; padding: 15px;}
.sgw2-pdp-page .pdp-image img{height: 260px;}
.sgw2-pdp-page .pdp-detail h1{font-size: 32px;}
.sgw2-pdp-page .pdp-actions{flex-wrap: wrap;}
.sgw2-pdp-page .pdp-actions .primary{flex-basis: 100%;}
.sgw2-pdp-page .pdp-reassurance{gap: 12px;}
.sgw2-pdp-page .pdp-reassurance > div{padding: 16px;}
}
@media (max-width: 700px){
.sgw2-pdp-page .pdp{grid-template-columns: 1fr; gap: 22px; margin-bottom: 30px;}
.sgw2-pdp-page .pdp-image{min-height: 330px;}
.sgw2-pdp-page .pdp-image img{height: 265px; max-width: 310px;}
.sgw2-pdp-page .pdp-detail h1{font-size: 35px;}
.sgw2-pdp-page .pdp-detail .spec-line{font-size: 19px;}
.sgw2-pdp-page .pdp-actions .primary{flex-basis: auto;}
.sgw2-pdp-page .pdp-actions{gap: 8px;}
.sgw2-pdp-page .pdp-actions .btn{padding-inline: 12px;}
.sgw2-pdp-page .pdp-reassurance{grid-template-columns: 1fr;}
.sgw2-pdp-page .pdp-reassurance > div{display: grid; grid-template-columns: 30px 1fr; gap: 0px 14px; padding: 17px;}
.sgw2-pdp-page .pdp-reassurance p{grid-column: 2;}
.sgw2-pdp-page .pdp-reassurance .ico{grid-row: 1 / 3;}
.sgw2-pdp-page .detail-tabs{gap: 22px;}
.sgw2-pdp-page .spec-table th{width: 39%;}
.sgw2-pdp-page .spec-table th, .sgw2-pdp-page .spec-table td{padding: 12px; font-size: 14px;}
.sgw2-pdp-page .two-col{grid-template-columns: 1fr;}
}
@media (max-width: 370px){
.sgw2-pdp-page .quantity-line{gap: 10px;}
.sgw2-pdp-page .quantity-control{width: 132px;}
.sgw2-pdp-page .pdp-detail h1{font-size: 31px;}
}
@media (max-width: 700px){
.sgw2-pdp-page .pdp > div:first-child{display: contents;}
.sgw2-pdp-page .pdp .pdp-image{order: 0;}
.sgw2-pdp-page .pdp .image-note{order: 1; margin: 0px;}
.sgw2-pdp-page .pdp > div:first-child > .text-link{order: 2; margin-top: -10px;}
.sgw2-pdp-page .pdp .pdp-detail{order: 3;}
.sgw2-pdp-page .pdp .gallery-info{order: 4; margin: 0px;}
.sgw2-pdp-page .pdp .feature-list{order: 5;}
}
@media (max-width: 700px){
.sgw2-pdp-page .pdp{gap: 14px;}
.sgw2-pdp-page .pdp .pdp-detail{display: contents;}
.sgw2-pdp-page .pdp-detail > .eyebrow{order: -3; margin: 4px 0px 0px;}
.sgw2-pdp-page .pdp-detail > h1{order: -2; margin: 0px;}
.sgw2-pdp-page .pdp-detail > .spec-line{order: -1; margin: 0px 0px 8px;}
.sgw2-pdp-page .pdp .pdp-image{order: 0;}
.sgw2-pdp-page .pdp .image-note{order: 1;}
.sgw2-pdp-page .pdp > div:first-child > .text-link{order: 2;}
.sgw2-pdp-page .pdp-detail > .product-price-line{order: 3; margin-top: 10px;}
.sgw2-pdp-page .pdp-detail > .price-context{order: 4; margin: 0px;}
.sgw2-pdp-page .pdp-detail > p.small.muted{order: 5;}
.sgw2-pdp-page .pdp-detail > .fitment{order: 6; margin: 7px 0px;}
.sgw2-pdp-page .pdp-detail > .buy-panel{order: 7;}
.sgw2-pdp-page .pdp .gallery-info{order: 8; margin: 0px;}
.sgw2-pdp-page .pdp .feature-list{order: 9;}
}
.sgw2-pdp-page .c2-cart-numbers .quantity-control{margin: 10px 0px; width: 139px;}
.sgw2-pdp-page .c2-cart-numbers .quantity-control input{width: 53px; min-width: 0px; font-size: 16px;}
.sgw2-pdp-page .c2-cart-numbers .quantity-control button{width: 40px; min-width: 40px; height: 44px;}
@media (max-width: 1100px){
.sgw2-pdp-page .c2-cart-numbers .quantity-control{margin: 0px;}
}
@media (max-width: 800px){
.sgw2-pdp-page .c2-cart-numbers .quantity-control{width: 130px;}
.sgw2-pdp-page .c2-cart-numbers .quantity-control input{width: 44px;}
}
@media (max-width: 600px){
.sgw2-pdp-page .c2-cart-numbers .quantity-control{margin-left: auto;}
}
/* W07 missing-data/accessibility states; D06 geometry above is unchanged. */
.sgw2-pdp-page .product-page{padding-bottom:1px}
.sgw2-pdp-page .pdp>div{min-width:0}
.sgw2-pdp-page .pdp-detail h1{overflow-wrap:anywhere}
.sgw2-pdp-page .product-page [role=tabpanel]{outline-offset:4px}
.sgw2-pdp-page .product-page th,.sgw2-pdp-page .product-page td,.sgw2-pdp-page .spec-line,.sgw2-pdp-page .eyebrow,.sgw2-pdp-page .breadcrumb{overflow-wrap:anywhere}
.sgw2-pdp-page .product-page button:disabled{cursor:not-allowed;opacity:.6}
.sgw2-pdp-page .product-page .pdp-image .catalog-missing-image{min-height:350px;display:grid;place-items:center;text-align:center}
.sgw2-pdp-page .product-zoom{border:1px solid var(--line);border-radius:10px;max-width:min(90vw,780px)}
.sgw2-pdp-page .product-zoom img{max-height:75vh;object-fit:contain;margin:auto}
.sgw2-pdp-page .product-zoom::backdrop{background:#0009}
.sgw2-pdp-page .product-page .error-msg{color:#ae0020;padding:12px 0;font-weight:700}
.sgw2-pdp-page .product-page .line-total{min-width:0;overflow-wrap:anywhere}
.sgw2-pdp-page .sgw2-compare__bar{position:static;margin-bottom:30px}
.sgw2-pdp-page .sgw2-compare__space{display:none}
@media(max-width:1190px){.sgw2-pdp-page .product-page .pdp-image .catalog-missing-image{min-height:310px}}
@media(max-width:900px){.sgw2-pdp-page .product-page .pdp-image .catalog-missing-image{min-height:260px}}
@media(max-width:700px){.sgw2-pdp-page .product-page .pdp-image .catalog-missing-image{min-height:265px}}
