.brand-logo{display:block;width:140px;flex:0 0 auto}.brand-logo img{width:100%;height:auto;mix-blend-mode:screen}.site-header{height:108px;background:linear-gradient(#10191790,transparent)}.header-actions{gap:22px}.language-switch{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:14px}.language-switch button{padding:8px 2px;min-height:40px;border-bottom:1px solid transparent}.language-switch button[aria-pressed="true"]{border-bottom-color:currentColor}.language-switch>span{opacity:.4}.hero-copy{top:clamp(125px,17vh,190px)}.hero-copy h1{font-size:clamp(32px,3.5vw,56px)}.product-info .model-heading{font-size:clamp(32px,3.3vw,49px);line-height:1.2;margin:16px 0 23px}.model-heading span{display:block;font-family:var(--font);font-size:15px;letter-spacing:3px;margin-bottom:8px}.model-heading strong{font-weight:400;white-space:nowrap}.product-description,.details-grid p,.story-copy h2,.design-heading>p{white-space:pre-line}.color-heading{gap:15px}.color-heading strong{text-align:right}.product-meta{flex-wrap:wrap}.product-stage{padding-left:0;padding-right:0}.modal-product-copy h2{line-height:1.35;font-size:30px}.booking-selection>div:last-child{min-width:0}.booking-selection strong{overflow-wrap:anywhere}footer{background:#16211c;color:#d0d8d0;border-top:0}footer .footer-logo{width:168px}footer>div{flex-wrap:wrap}.footer-link{font-size:14px}.demo-tag{border-color:#ffffff40}.inline-link{text-decoration:underline;text-underline-offset:4px;padding:0;font-size:inherit}.info-dialog h3{font-size:18px;margin-top:24px}.info-dialog .dialog-top h2{font-size:24px}.check-label{display:flex;align-items:flex-start;gap:10px;font-size:14px}.check-label input{width:19px;height:19px;min-height:19px;margin:4px 0 0;flex:0 0 auto;accent-color:#243b2b}.field-error{display:block;font-size:14px;color:#9d2c31;margin-top:7px}.field-error:empty{display:none}[aria-invalid="true"]{border-color:#a53131}.reference-number{padding:18px 0;font-family:var(--serif);font-size:25px;letter-spacing:1px}.booking-dialog h3{font-size:24px;margin:20px 0 10px}#booking-success>p{font-size:15px}.summary-buttons .button:disabled,button:disabled{opacity:.5;cursor:wait}.cookie-banner{position:fixed;bottom:22px;left:22px;z-index:40;width:min(540px,calc(100vw - 44px));padding:25px 27px;background:#fff;color:#1e2522;box-shadow:0 8px 45px #07100c30;border:1px solid #e4e7e3;border-radius:5px}.cookie-banner h2{font-size:21px;margin-bottom:9px}.cookie-banner p{font-size:14px;line-height:1.8}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}.cookie-actions button{border:1px solid #9ea89f;border-radius:3px;padding:9px 13px;font-size:14px;flex:1 1 auto;min-height:44px;background:#fff}.cookie-actions button:hover{background:#eff2ec}.cookie-category{border-bottom:1px solid #dce1db;padding:15px 0}.cookie-category h3{margin-top:0}.cookie-category p{font-size:14px;color:#626d64}.cookie-category small{font-size:12px;color:#626d64}.cookie-category .check-label{font-size:18px;margin-bottom:5px}#cookie-save{margin-top:22px}.menu-dialog .language-switch{margin:25px 0}.button-outline{border:1px solid #9ba59d;background:#fff;color:#26372b;min-width:0}.admin-page{background:#f4f5f2}.admin-header{display:flex;align-items:center;gap:32px;padding:7px max(24px,5vw);background:#16211c;color:#fff}.admin-header .brand-logo{width:125px;margin-right:auto}.admin-main{max-width:1240px;margin:auto;padding:45px 28px 70px;min-height:80vh}.admin-heading h1{font-size:clamp(28px,3vw,40px);margin:10px 0}.admin-heading>p:last-child{color:#69756b;font-size:14px}.auth-panel{max-width:460px;margin:35px auto;background:white;padding:32px;border:1px solid #dde2db;border-radius:5px}.auth-panel h2{font-size:25px;margin-bottom:15px}.auth-panel>p{font-size:14px;margin-bottom:20px;color:#667368}.auth-panel small{font-size:12px;color:#6a746d}.admin-toolbar{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;padding:26px 0 20px}.admin-toolbar label{margin:0;flex:1 1 180px}.admin-toolbar .button{font-size:14px;min-width:0;height:45px}.admin-toolbar .text-button{margin:0}.admin-toolbar select,#request-status{display:block;width:100%;min-height:45px;border:1px solid #d6dcd5;background:#fff;border-radius:3px;padding:8px 12px;margin-top:7px;font:inherit}.admin-rows{display:grid;gap:12px;margin-top:16px}.request-card{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(140px,1fr) auto;gap:20px;align-items:center;padding:23px;background:#fff;border:1px solid #dde2db;border-radius:4px}.request-card h3{font-size:18px;overflow-wrap:anywhere}.request-card p{font-size:14px;color:#667168;overflow-wrap:anywhere}.request-card .button{min-width:0;font-size:14px}.status-label{font-size:13px;display:inline-block;border:1px solid #c5d1c4;padding:3px 10px;border-radius:20px;margin-top:7px}.pagination{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}.pagination .button{min-width:0}.danger{color:#9d2c31}.admin-empty{padding:40px;text-align:center;background:#fff;border:1px solid #dde2db;border-radius:4px}.admin-empty p{margin-top:8px;color:#667168}.admin-page footer{justify-content:space-between}.request-card .request-info{min-width:0}.request-card time{font-size:13px;color:#657166}.dialog-intro{margin-top:13px}.eyebrow{font-size:12px}.stage-label{font-size:11px}.swatch{min-width:34px;min-height:34px}
@media(max-width:1100px){.desktop-nav{gap:18px}.header-actions{gap:16px}.header-book{display:none}.site-header{padding:0 24px}.brand-logo{width:126px}}
@media(max-width:760px){.site-header{height:96px;padding:0 20px}.site-header .brand-logo{width:108px}.header-actions{gap:12px}.language-switch{font-size:13px;gap:6px}.hero-copy{top:122px}.hero-copy h1{font-size:clamp(29px,7.5vw,36px)}.hero-copy>p:last-child{max-width:340px;margin:auto}.product-info .model-heading{font-size:38px}.cookie-banner{left:12px;bottom:12px;width:calc(100vw - 24px);padding:20px;max-height:48svh;overflow:auto}.cookie-banner h2{font-size:19px}.cookie-actions{gap:8px}.cookie-actions button{font-size:13px;padding:9px 10px}.admin-header{gap:17px;padding:10px 18px;flex-wrap:wrap}.admin-header .brand-logo{width:102px}.admin-header>a:last-child{font-size:13px}.admin-main{padding:30px 20px 50px}.request-card{grid-template-columns:1fr;gap:12px;padding:20px}.request-card .button{width:100%}.auth-panel{padding:24px}.admin-toolbar{gap:12px}.admin-toolbar label{flex-basis:100%}.modal-product-copy h2{font-size:28px}.booking-selection .booking-viewport{width:90px;flex-basis:90px}.hero-caption{font-size:10px}.hero-caption>a{display:none}}
@media(max-width:360px){.site-header{padding:0 14px}.site-header .brand-logo{width:92px}.header-actions{gap:8px}.language-switch{font-size:12px}.product-info .model-heading{font-size:32px}.hero-copy h1{font-size:29px}.hero-buttons{flex-direction:column}.hero-buttons .button{flex:auto;min-height:44px}.hero-bottom{bottom:20px}.hero-buttons{margin-bottom:20px}}

/* Give the model caption its own row so the white image stage cannot cover it. */
.product-stage {padding-top:26px}
.product-stage>.stage-label {
  position:static;display:block;inset:auto;margin:0 29px 10px;
  font-size:12px;line-height:1.8;letter-spacing:1.8px;color:#617064;
  white-space:normal;overflow-wrap:anywhere;
}
@media(max-width:760px) {
  .product-stage {padding-top:19px}
  .product-stage>.stage-label {margin-inline:20px}
}
