/* Purchase-first refinement. Shared styles stay in style.css. */
html{scroll-padding-bottom:110px}
button,a,input,select,summary{touch-action:manipulation}
input:focus-visible{outline:3px solid #ae89e9;outline-offset:3px}
h1,h2,h3{text-wrap:balance}
dialog{overscroll-behavior:contain}
.language-label select{min-width:48px;min-height:44px}
.bag-button{min-width:44px;min-height:44px}
.gallery-arrows button{width:44px;height:44px}
#image-number{direction:ltr;unicode-bidi:isolate}
.visual-note{font-size:10px;margin-top:8px;color:#beb1c8}
.intro{max-width:440px;font-size:15px;line-height:1.65}
.hero-copy>.eyebrow{display:none}
.purchase-panel{padding-top:20px}
.price-note{font-size:11px;line-height:1.5;padding-bottom:12px}
.variant-title{font-size:12px;margin-top:13px}
.variant-title strong{font-size:12px}
.variant-options strong{font-size:12px}
.variant-options button>span{min-width:0}
.variant-options small{font-size:10px}
.purchase-panel>.buy-button{margin-top:14px;font-size:14px}
.payment-note{font-size:11px;padding:13px 0 6px;gap:8px}
.checkout-reassurance{display:flex;justify-content:center;align-items:center;gap:6px;color:#62576c;font-size:11px;line-height:1.5;padding-bottom:14px}
.checkout-reassurance svg{width:14px;height:14px;stroke-width:2.5}
.purchase-links{font-size:11px}
.purchase-links a{min-height:32px}
.is-awaiting-video{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding-block:44px}
.is-awaiting-video .section-top{display:block;margin:0}
.is-awaiting-video .section-top h2{font-size:36px;line-height:1.12}
.is-awaiting-video .section-top>p{margin-top:14px;font-size:12px}
.is-awaiting-video .video-placeholder{aspect-ratio:auto;min-height:190px}
.is-awaiting-video .video-mark{display:none}
.is-awaiting-video .video-placeholder-copy{gap:10px}
.tracking-card,.tracking-copy{min-width:0}
.tracking-input-row input{font-size:16px;width:100%;min-width:0}
.tracking-card>p{font-size:11px}
.tracking-demo{font-size:11px}
.model-select{min-height:44px}
.faq-list summary{font-size:15px}
.faq-list details>p{font-size:14px;line-height:1.8}

@media(min-width:761px) and (max-width:1100px){
 .product{column-gap:26px}
 .hero-copy h1{font-size:46px}
 .intro{font-size:13px}
 .variant-options small{display:none}
 .variant-options strong{font-size:11px}
 .purchase-links{font-size:10px}
}

@media(min-width:761px) and (max-width:1450px){
 .site-header{height:80px}
 .product{padding-top:28px;row-gap:16px}
 .hero-copy h1{font-size:clamp(44px,4.3vw,54px)}
 .intro{font-size:14px;line-height:1.55;margin-top:12px}
 .variant-options button{padding:6px;gap:8px}
 .variant-options img{width:36px;height:43px}
 .variant-options small{font-size:9px}
}
@media(max-width:1050px){.main-nav{display:none}}

@media(max-width:760px){
 .shell{padding-inline:18px}
 .demo-bar{min-height:25px;font-size:10px;padding-block:5px}
 .site-header{height:64px}
 .brand{font-size:25px}
 .header-actions{gap:10px}
 .product{gap:14px;padding-top:20px;padding-bottom:30px}
 .hero-copy h1{font-size:40px;line-height:1.02;letter-spacing:-1.6px}
 .product-kicker{font-size:10px;margin-bottom:10px;letter-spacing:.1em}
 .title-spark{width:27px;height:27px;inset-inline-end:-36px}
 .intro{font-size:13px;line-height:1.6;margin-top:12px;max-width:440px}
 .hero-shortcut{display:none}
 .main-image-button>img{aspect-ratio:auto;height:270px;object-fit:contain;background:#211b2b}
 .photo-stage{border-radius:12px}
 .photo-topline{inset:12px 12px auto}
 .edition-tag{font-size:8px;padding:6px 8px}
 .photo-count{font-size:10px}
 .photo-bottom{padding:7px 12px;min-height:58px}
 .photo-bottom .micro-label{font-size:8px}
 .photo-bottom strong{font-size:19px;margin-top:1px}
 .gallery-arrows{gap:4px}
 .visual-note{font-size:10px;line-height:1.4;margin-top:6px}
 .purchase-panel{padding:16px 16px 0;border-radius:12px}
 .price-value strong{font-size:30px;letter-spacing:-.8px}
 .price-value>span{font-size:11px}
 .micro-label{font-size:10px}
 .single-tag{font-size:10px;padding:4px 6px}
 .price-note{margin-top:5px;padding-bottom:10px;font-size:11px;line-height:1.45}
 .variant-title{font-size:12px;margin:11px 0 9px}
 .variant-title strong{font-size:11px}
 .variant-options{gap:7px}
 .variant-options button{padding:6px;gap:7px;min-height:51px}
 .variant-options img{width:32px;height:38px}
 .variant-options strong{font-size:12px;line-height:1.25}
 .variant-options small{display:none}
 .radio-mark{width:14px;height:14px}
 .purchase-panel>.buy-button{margin-top:12px;min-height:52px;font-size:14px;padding:13px 14px}
 .payment-note{padding:12px 0 5px;font-size:11px;gap:7px}
 .checkout-reassurance{font-size:11px;padding-bottom:12px}
 .purchase-links{font-size:11px;padding-block:8px;gap:10px}
 .purchase-links a{min-height:36px}
 .mobile-purchase{gap:12px;padding:10px 16px max(10px,env(safe-area-inset-bottom));min-height:75px}
 .mobile-purchase .mobile-selection{display:flex;align-items:center;gap:9px;min-width:0;min-height:48px;flex:1;padding:0;background:none;margin:0;color:var(--ink);font-weight:400;text-align:start}
 .mobile-selection>img{width:36px;height:44px;object-fit:cover;border-radius:5px}
 .mobile-selection-copy{display:flex;flex-direction:column;min-width:0;gap:3px;line-height:1.25}
 #mobile-model{font-size:11px;font-weight:600;overflow-wrap:anywhere}
 .mobile-price-line{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
 .mobile-price-line>strong{font:800 17px/1.3 var(--display);white-space:nowrap}
 .mobile-price-line>small{font-size:10px;color:#705481;text-decoration:underline;text-underline-offset:2px}
 .mobile-purchase .mobile-checkout{margin:0;flex-shrink:0;min-height:48px;font-size:13px;gap:12px;padding:13px 16px;justify-content:center}
 body:has(input:not([type=radio]):not([type=checkbox]):focus) .mobile-purchase,body:has(dialog[open]) .mobile-purchase{visibility:hidden;transform:translateY(115%)}
 .is-awaiting-video{grid-template-columns:1fr;gap:18px;padding-block:30px 36px}
 .is-awaiting-video .section-top h2{font-size:30px}
 .is-awaiting-video .section-top h2 br{display:none}
 .is-awaiting-video .section-top h2 em:before{content:' '}
 .is-awaiting-video .section-top .eyebrow{font-size:9px;margin-bottom:8px}
 .is-awaiting-video .section-top>p{display:none}
 .is-awaiting-video .video-placeholder{min-height:150px}
 .is-awaiting-video .video-coming{font-size:10px}
 .is-awaiting-video .video-placeholder-copy>p{font-size:12px}
 .section-top h2,.how-to .section-top h2{font-size:34px}
 .section-top>p{font-size:13px;line-height:1.6;margin-top:12px}
 .section-top .eyebrow{font-size:9px;margin-bottom:10px}
 .how-to{padding-block:38px}
 .supplier-steps{gap:12px}
 .supplier-step{display:grid;grid-template-columns:34% 1fr}
 .supplier-step .step-photo{height:100%;min-height:190px}
 .supplier-step .step-photo>img{height:100%;aspect-ratio:auto;object-fit:cover}
 .supplier-step .step-photo>span{width:28px;height:28px;font-size:13px;bottom:10px;inset-inline-start:10px}
 .step-copy{padding:18px 15px}
 .step-copy h3{font-size:21px;line-height:1.15;letter-spacing:-.4px;text-wrap:pretty}
 .step-copy>p{font-size:13px;line-height:1.65;margin-top:9px}
 .how-bottom>p{font-size:11px;line-height:1.65}
 .models{padding-block:40px}
 .model-card>p{font-size:12px;line-height:1.65}
 .model-select{font-size:11px}
 .model-mood{font-size:10px}
 .selected-tag{font-size:8px}
 .model-card-line h3{font-size:22px}
 .product-details{padding-block:40px}
 .specs-intro,.spec-item>span{font-size:12px}
 .source-note{font-size:11px}
 .box-panel>div>p:last-child,.box-panel>ul>li{font-size:12px}
 .tracking-section{padding-bottom:44px}
 .tracking-copy>p:not(.eyebrow){font-size:13px}
 .tracking-card label{font-size:12px}
 .tracking-input-row input{font-size:16px}
 .tracking-card>p,.tracking-demo{font-size:11px}
 .faq{gap:22px;padding-bottom:42px}
 .faq-copy>p:not(.eyebrow){font-size:13px}
 .faq-list summary{font-size:14px;padding-block:19px}
 .faq-list details>p{font-size:13px;line-height:1.8}
 .site-footer{padding-bottom:115px}
 .footer-links a,.footer-links button{font-size:11px;min-height:32px}
 .footer-top>p{font-size:12px}
 .footer-bottom{font-size:10px}
 .dialog-heading>button,.image-dialog>button{width:44px;height:44px}
 [dir=rtl] .hero-copy h1{font-size:34px;line-height:1.4}
 [dir=rtl] .intro{font-size:13px;line-height:1.8}
 [dir=rtl] .variant-options strong{font-size:12px;line-height:1.5}
 [dir=rtl] .buy-button{font-size:13px}
 [dir=rtl] .step-copy h3{font-size:19px;line-height:1.5}
 [dir=rtl] .step-copy>p{font-size:12px;line-height:1.9}
 [dir=rtl] .mobile-price-line>strong{font-size:16px}
 [dir=rtl] .mobile-checkout svg{transform:rotate(180deg)}
}

@media(max-width:370px){
 .site-header{gap:8px}
 .site-header .brand{font-size:22px;gap:7px;letter-spacing:-1.1px}
 .moon-mark{width:19px;height:19px}
 .brand-star{font-size:14px}
 .header-actions{gap:6px}
 .language-label select{min-width:40px;padding-inline:0}
 .bag-button{min-width:38px;gap:4px}
 .hero-copy h1{font-size:36px}
 .main-image-button>img{height:245px}
 .mobile-selection>img{display:none}
 .mobile-purchase{gap:8px;padding-inline:14px}
 .mobile-purchase .mobile-checkout{font-size:12px;padding-inline:13px;gap:9px}
 .variant-options strong{font-size:11px}
 .variant-options img{width:29px}
 .purchase-links{font-size:10px}
 .supplier-step{grid-template-columns:30% 1fr}
 .step-copy{padding:16px 13px}
 .model-select{font-size:10px}
}
