/* Final responsive rules shared across every public page. */
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:90px}body{min-width:280px}main,section,article,form,dialog{min-width:0}iframe,video{max-width:100%}input,select,textarea{font-size:16px}button,a{-webkit-tap-highlight-color:transparent}dialog{max-height:calc(100dvh - 32px);overflow:auto}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.product-layout>*{min-width:0}.collection-header .collection-links{min-width:0}.collection-header .collection-links a{letter-spacing:.07em}.footer-install-row{min-width:0}
@media(max-width:1000px) and (min-width:601px){.hero{grid-template-columns:1fr;min-height:0;padding-block:45px 60px}.hero-copy{max-width:650px}.hero-copy h1{font-size:clamp(68px,10vw,96px)}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-visual{height:500px;max-width:750px;width:100%}.hero-bottom{position:static;grid-column:1/-1;margin-top:15px}.product-layout{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.product-information h1{font-size:clamp(34px,4.6vw,48px)}.product-launch-info{padding-block:20px}.product-display{aspect-ratio:1/1.15}.collection-header .collection-links{gap:20px;font-size:10px}.landing-shop-grid{gap:16px}.landing-shop-card h3{font-size:22px}}
@media(max-width:760px){.section-top{flex-direction:column;align-items:flex-start}.section-top p{max-width:100%}.booking .progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.booking .progress li{min-width:0}.booking .progress span{display:block;margin-left:0}.checkout-preview{white-space:normal;line-height:1.2}.related-heading{gap:20px;flex-wrap:wrap}.location-details{width:100%}.location-map iframe{height:320px}}
@media(max-width:600px){:root{--section-space:52px}.wrap{width:calc(100% - 32px)}.section,.reviews{padding-block:52px}.hero{min-height:0}.hero-copy h1{font-size:clamp(50px,15vw,84px)}.hero-visual{height:clamp(300px,90vw,420px)}.hero-actions{flex-wrap:wrap}.hero-actions a{min-height:44px}.hero-note{line-height:1.8}.section-top h2,.reviews h2{font-size:clamp(34px,9.5vw,46px)}.process .steps article{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;min-height:0}.process .steps h3{margin:16px 0 10px}.process .steps p{margin:0}.service h3{font-size:24px}.review-card{flex-basis:92%;min-width:0}.collection-header.wrap{width:calc(100% - 32px);grid-template-columns:minmax(0,1fr) auto;gap:0 12px;min-height:120px}.collection-header .logo{font-size:29px}.collection-header .collection-links{width:100%;justify-content:space-between;gap:8px;font-size:9px}.collection-header .collection-links a{font-size:9px;letter-spacing:.02em;min-width:0;min-height:44px;padding:0!important}.collection-header .cart-trigger{width:44px;height:44px}.collection-heading{padding:24px 0 30px}.collection-heading h1{font-size:clamp(40px,11vw,58px)}.collection-intro{flex-wrap:wrap;gap:8px 14px;padding-block:14px}.collection-intro p{font-size:11px}.collection-grid{gap:30px 16px}.collection-link{font-size:18px;line-height:1.2;padding-right:30px}.product-eyebrow{padding:26px 0 28px;font-size:16px}.back-to-collection{margin-bottom:16px}.product-layout{grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:48px}.product-display{aspect-ratio:1;max-height:500px}.product-information h1{font-size:clamp(30px,8.8vw,44px);line-height:1.04}.product-information .product-launch-info{max-width:100%;padding-block:18px}.product-related{padding-top:35px}.product-related .related-heading h2{font-size:32px}#related-products{gap:24px}.related-product-link{min-height:44px;display:flex;align-items:center}.landing-shop-card .model-stage{height:clamp(290px,92vw,390px)}.landing-shop-intro .button{width:100%;justify-content:space-between}.location-details .button{width:100%;justify-content:space-between}.location-map{border-radius:16px}.location-details address{font-size:16px}.booking{padding-top:24px}.booking-header{align-items:center}.panel{padding:20px 14px}.booking .wide{white-space:normal;line-height:1.5;justify-content:center}.calendar-heading{gap:8px}.calendar-heading h3{font-size:20px}.calendar-heading button{min-width:40px;padding:8px}.days,.weekdays{gap:3px}.day{min-height:38px;height:40px;min-width:0}.times{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.time{font-size:13px;min-height:44px}.fields{grid-template-columns:minmax(0,1fr)}.review-row{gap:12px}.review-row strong{max-width:62%}.terms{align-items:flex-start}.terms input{margin-top:3px}.footer-bottom{overflow-wrap:anywhere}footer.wrap{gap:24px 18px}footer .footer-bottom{padding:22px 16px;gap:18px}footer .footer-install-row{justify-content:flex-end;margin:0}.pwa-dialog,.cart-notice{padding:24px 20px}.pwa-dialog h2,.cart-notice h2{font-size:32px;line-height:1.05}}
@media(max-width:420px){.collection-grid{grid-template-columns:minmax(0,1fr);max-width:340px}.collection-image{aspect-ratio:1}.collection-link{width:100%;font-size:22px}.collection-intro span:last-child{display:none}#related-products{grid-template-columns:minmax(0,1fr)}.related-model{aspect-ratio:1}.collection-header .collection-links{font-size:8px;gap:6px}.collection-header .collection-links a{font-size:8px}.services-grid{grid-template-columns:minmax(0,1fr)}.service{min-height:0;padding:24px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .button{width:100%;justify-content:space-between}.hero-bottom{font-size:6px}.booking-header>span{max-width:50%}.progress li{font-size:9px}.review-row{flex-wrap:wrap}.review-row strong{max-width:100%;text-align:left}.location-map iframe{height:280px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
