/* Clear product choices, short labels and comfortable mobile controls. */
:root{--focus:#68745b;--panel:#f1f0ea}
html{scroll-padding-top:88px}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a,input,select,textarea{touch-action:manipulation}
:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
.header{position:sticky;top:0;z-index:40;background:rgba(251,251,248,.98)}
.header-inner{height:78px}
.logo{width:200px;flex:none}
.nav{gap:20px}
.nav a{font-size:10px;letter-spacing:.1em;white-space:nowrap}
.nav-enquiry{border:1px solid var(--line);padding:11px 13px!important}
.menu{align-items:center;gap:10px;min-height:44px;background:none;border:0}
.menu-icon{width:20px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;display:inline-block}
.menu[aria-expanded=true] .menu-icon{border-bottom:0;height:1px}
.family-arrow,.material-card-heading>span,.primary-link>span:empty,.link>span:empty{display:none}
.family-row{grid-template-columns:8% 43% 1fr}
.family-name{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px;text-decoration-color:#b8b9ad}
.link,.custom-enquiry,.footer-profile{text-underline-offset:5px}
.primary-link{justify-content:center;text-align:center;min-height:48px;letter-spacing:.04em}
.intro-copy>p{max-width:380px}
.material-card-heading h2{margin-top:8px}
.material-card-heading .eyebrow{font-size:10px;letter-spacing:.12em}
.material-card-image{height:auto;aspect-ratio:1.45}
.material-card-image img{width:100%;height:100%;object-fit:cover}
.company-footer .footer-brand h2{font-size:clamp(32px,3.2vw,48px)}
.company-footer .footer-brand p{font-size:13px}
.company-footer .footer-links{gap:18px;flex-wrap:wrap}
.company-footer .footer-bottom p{white-space:nowrap}
.collection-overview-hero{align-items:start!important}
.collection-overview-hero figure{align-self:center}
.collection-overview-hero h1{font-size:clamp(36px,3.9vw,62px)}
.collection-introduction{font-size:15px!important;line-height:1.7!important}
.collection-price-line{margin:24px 0!important}
.collection-overview-actions .primary-link{margin-top:0}
.gallery-stage .gallery-photo{border:0;background:transparent}
.gallery-stage img.full{object-fit:contain}
.configuration-intro{margin-bottom:16px}
.quick-enquiry-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}
.quick-enquiry-actions .primary-link,.quick-enquiry-actions button{margin:0;min-height:46px;font-size:11px}
.quick-enquiry-actions button,.project-actions button,.project-line button,.project-list button{cursor:pointer;border:1px solid #bfc2b6;background:#fafaf7;padding:11px 13px;color:var(--ink);font:inherit}
.quick-enquiry-actions button:hover,.project-actions button:hover{background:#e8e9e0}
.quick-enquiry-actions .caption{grid-column:1/-1;margin:2px 0}
.mobile-enquiry-bar{display:none}
.fit-check{margin:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}
.fit-check>summary{font-size:12px;cursor:pointer;min-height:36px;display:flex;align-items:center;justify-content:space-between}
.fit-check>summary:after{content:'+';font-size:20px;font-weight:300}
.fit-check[open]>summary:after{content:'−'}
.fit-check p{font-size:12px;line-height:1.6;color:var(--muted)}
.fit-check label{font-size:12px;display:block;margin-top:13px}
.fit-check select,.fit-check input,.fit-check textarea{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #c9cdc1;background:#fff}
.fit-check a{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.project-enquiry-section{scroll-margin-top:90px;padding-top:45px;padding-bottom:60px;border-top:1px solid var(--line)}
.project-enquiry-section h2{font:normal clamp(32px,3.7vw,48px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:10px 0 17px}
.project-enquiry-section h3{font:normal 23px/1.2 Georgia,serif;letter-spacing:-.02em;margin:0 0 13px}
.project-enquiry-section p{font-size:13px;line-height:1.6;color:var(--muted)}
.project-list{display:grid;gap:14px;margin:24px 0}
.project-line{padding:20px;background:#f2f1eb;border:1px solid #d8d9ce;min-width:0}
.project-line>header,.project-line-head{display:flex;gap:16px;justify-content:space-between;align-items:start}
.project-line header span,.project-line-head span{font-size:12px;white-space:nowrap}
.project-line dl{font-size:12px}
.project-line-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0}
.project-line-fields label{font-size:11px;color:#666d5e;min-width:0;display:block}
.project-line-fields input,.project-line-fields select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #c5c9bb;background:#fff;color:var(--ink);font-size:14px}
.project-line button{font-size:11px}
.project-line a{font-size:12px;text-decoration:underline;text-underline-offset:4px}
.project-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.project-actions .primary-link{margin:0;min-width:190px}
.project-actions a:not(.primary-link){font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:12px 0}
.project-actions button{font-size:12px}
.project-enquiry-section textarea{width:100%;padding:12px;border:1px solid #c8cbbf;background:#fff;margin-top:7px;min-height:85px;font:inherit}
.project-enquiry-section label{font-size:12px}
.project-enquiry-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.project-enquiry-drawer>summary>span{font:normal 30px/1.2 Georgia,serif;letter-spacing:-.025em;display:flex;gap:12px;align-items:center}
.project-enquiry-drawer>summary strong{font:normal 12px Arial,sans-serif;border:1px solid #bac1b0;border-radius:50%;min-width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center}
.project-enquiry-drawer>summary small{font-size:11px;color:var(--muted);line-height:1.5}
.project-enquiry-content{padding-top:14px}
.project-line-heading{display:flex;align-items:start;justify-content:space-between;gap:14px}
.project-line-heading>div{min-width:0}
.project-line-heading h3{font-size:22px;margin-top:8px;overflow-wrap:anywhere}
.project-line-heading p{font-size:11px}
.project-line .project-line-size{font-size:14px;font-weight:500;color:var(--ink);margin:12px 0 9px}
.project-line .project-line-price{font-size:13px;color:#4a5440;margin:8px 0}
.project-add-links{display:flex;flex-wrap:wrap;gap:20px;margin:18px 0 26px}
.project-add-links a{font-size:12px;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
.contact-project-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}
.contact-project-actions button{font-size:12px;min-height:44px}
.contact-project-actions a{font-size:12px;text-decoration:underline;text-underline-offset:5px}
.choices .swatch-unknown{background:repeating-linear-gradient(135deg,#efeee7,#efeee7 5px,#dadbd1 5px,#dadbd1 6px);color:#4a5440;font-style:normal;text-align:center;line-height:41px;font-size:18px}
.project-line-heading>button{font-size:10px;padding:8px 10px;background:transparent}
.project-line-edit>summary{font-size:12px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:8px 0}
.project-subtotal{font-size:14px!important;color:var(--ink)!important;border-top:1px solid var(--line);padding-top:18px}
.text-button{grid-column:1/-1;font-size:11px;text-decoration:underline;text-underline-offset:4px;display:flex;gap:6px;align-items:center;padding:8px 0;justify-self:start}
.secondary-button{border:1px solid #bfc4b7;background:transparent;color:var(--ink);cursor:pointer;padding:12px 16px;font:inherit}
details>summary{list-style:none}
details>summary::-webkit-details-marker{display:none}
.project-summary,.project-totals{padding:16px 0;margin:18px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.7}
.project-empty{padding:25px;background:#f1f0e9}
.contact-page .project-enquiry-section{grid-column:1/-1}
.contact-heading h1{font-size:clamp(38px,4.5vw,62px);line-height:1.08}
.contact-heading>p{font-size:14px;line-height:1.7;max-width:330px}
.contact-heading .contact-direct{margin-top:30px}
.enquiry-panel .caption{line-height:1.6}
.sample-request{display:inline-block;font-size:12px;text-decoration:underline;text-underline-offset:5px;margin-top:12px}
.aftercare-link{font-size:12px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){
 .header-inner{height:68px}
 .logo{width:175px}
 .menu{display:flex}
 .nav{display:none;position:absolute;top:68px;left:0;right:0;padding:18px 24px 24px;background:#fafaf7;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #2428200b;grid-template-columns:1fr 1fr;gap:0 25px;max-height:calc(100dvh - 68px);overflow:auto}
 .nav.open{display:grid}
 .nav a{padding:17px 0;font-size:13px;letter-spacing:.03em;border-bottom:1px solid #dedfd5}
 .nav .nav-enquiry{padding:14px!important;margin-top:14px;text-align:center;grid-column:1/-1}
 .product-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:5%}
}
@media(min-width:741px) and (max-width:960px){
 .collection-overview-hero{grid-template-columns:1fr!important;gap:28px!important}
 .collection-overview-hero figure{width:100%}
 .collection-overview-hero figure img{width:100%;height:auto}
 .collection-overview-hero>div{max-width:600px}
}
@media(max-width:740px){
 html{scroll-padding-top:78px}
 .header-inner{height:62px}
 .logo{width:150px}
 .nav{top:62px;padding:10px 20px 20px}
 .menu{font-size:11px;padding:8px 0 8px 12px}
 .intro-visual{height:auto;aspect-ratio:1.5}
 .intro-visual img{height:100%;object-fit:cover;object-position:53% center}
 .intro-copy{padding:34px 20px 39px}
 .intro-copy h1{font-size:43px;margin:12px 0 15px}
 .intro-copy>.eyebrow{font-size:9px}
 .intro-copy>p{font-size:14px;line-height:1.6;max-width:280px}
 .intro-copy .link{margin-top:19px;font-size:11px}
 .collection-intro{padding-top:38px;padding-bottom:20px}
 .collection-intro h2{font-size:35px}
 .collection-intro p{font-size:13px;margin-top:15px}
 .family-row{grid-template-columns:30px 1fr;min-height:76px}
 .family-name{font-size:27px}
 .family-list{padding-bottom:42px}
 .home-about{padding:42px 0 50px}
 .home-about h2{font-size:37px;margin-top:15px}
 .home-about p{font-size:13px;line-height:1.65}
 .material-story{padding-bottom:40px}
 .material-grid img{height:330px}
 .material-copy{padding-top:28px}
 .material-copy h2{font-size:37px;margin:15px 0}
 .material-copy p{font-size:13px;line-height:1.65}
 .material-title{padding-top:34px;padding-bottom:30px}
 .material-title h1{font-size:43px}
 .material-title>p{font-size:13px;line-height:1.65;max-width:310px}
 .surface-shortcuts{gap:15px;margin-top:23px}
 .material-cards{grid-template-columns:1fr;gap:34px;padding-bottom:45px}
 .material-card-heading{margin-top:12px;padding-top:12px}
 .material-card-heading h2{font-size:34px;margin:6px 0 8px}
 .material-card-heading p{font-size:13px;line-height:1.5}
 .collection-commercial{margin-top:13px}
 .collection-commercial span{font-size:11px}
 .collection-read-more{margin-top:12px}
 .collection-programmes{padding:38px 0 45px}
 .collection-programmes h2{font-size:36px;margin-bottom:25px}
 .programme-grid{gap:22px}
 .programme-grid h3{font-size:25px;margin:10px 0}
 .programme-grid p{font-size:12px;line-height:1.6;margin:8px 0 14px}
 .production-note{font-size:11px;line-height:1.6}
 .crumb{padding-top:15px;padding-bottom:16px;font-size:9px}
 .product-layout{display:block}
 .product-preview{top:62px!important;z-index:15}
 .product-preview .caption{font-size:10px;line-height:1.5}
 .gallery-stage{height:245px!important}
 .model-stage-toolbar #rotate-left,.model-stage-toolbar #rotate-right{font-size:9px!important;letter-spacing:0!important;line-height:1.2!important;padding:8px 4px!important}
 .model-stage-toolbar button{min-height:34px}
 .view-tabs{gap:6px;margin-bottom:14px}
 .view-tabs button{padding:9px 10px;font-size:10px;min-height:38px}
 .detail h1{font-size:37px;margin-top:9px;margin-bottom:12px}
 .detail .intro{font-size:13px;line-height:1.55;margin-bottom:17px}
 .configuration-intro{font-size:11px;line-height:1.5;margin-bottom:15px}
 .choice-heading{gap:10px}
 .choice-heading>strong{font-size:12px}
 .choice-heading>span{font-size:10px}
 .choice-step{width:21px;height:21px;font-size:9px}
 .choice-help{font-size:11px;line-height:1.5}
 .quick-calculator{padding:14px!important}
 .quick-calculator input{font-size:16px;min-height:44px}
 .quick-price-result strong{font-size:27px}
 .quick-price-result small{font-size:11px}
 .quick-enquiry-actions{gap:8px}
 .quick-enquiry-actions .primary-link,.quick-enquiry-actions button{font-size:11px;letter-spacing:0;padding:13px 9px}
 .mobile-enquiry-bar{display:flex;position:fixed;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;gap:12px;background:#fafaf6;border-top:1px solid #c9cdbf;padding:9px 18px calc(9px + env(safe-area-inset-bottom));z-index:45;box-shadow:0 -5px 18px #2227180b}
 .mobile-enquiry-bar strong{font:normal 21px Georgia,serif;display:block}
 .mobile-enquiry-bar small{font-size:10px;color:var(--muted);display:block;margin-top:3px}
 .mobile-enquiry-bar a,.mobile-enquiry-bar button{min-height:43px;padding:12px 16px;background:var(--ink);color:white;border:0;font-size:11px;text-decoration:none;white-space:nowrap}
 body:has(.mobile-enquiry-bar){padding-bottom:76px}
 .configurator-page:has(.project-enquiry-drawer[open]) .mobile-enquiry-bar{display:none}
 body:has(.project-enquiry-drawer[open]){padding-bottom:0}
 .project-enquiry-section{padding-top:30px;padding-bottom:35px;scroll-margin-top:77px}
 .project-enquiry-section h2{font-size:34px}
 .project-line{padding:15px}
 .project-enquiry-drawer>summary{display:block;position:relative;padding-right:20px}
 .project-enquiry-drawer>summary>span{font-size:28px}
 .project-enquiry-drawer>summary:after{content:'+';position:absolute;right:0;top:18px;font-size:22px;font-weight:300}
 .project-enquiry-drawer[open]>summary:after{content:'−'}
 .project-enquiry-drawer>summary small{display:block;margin-top:8px}
 .project-line-fields{grid-template-columns:1fr 1fr;gap:12px}
 .project-line-fields input,.project-line-fields select{font-size:16px;min-height:44px}
 .project-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .project-actions .primary-link{min-width:0;padding:13px 10px;font-size:10px}
 .project-actions button{padding:12px 10px}
 .project-enquiry-section textarea{font-size:16px}
 .fit-check input,.fit-check select,.fit-check textarea{font-size:16px;min-height:44px}
 .contact-page{padding-top:30px;gap:26px}
 .contact-heading h1{font-size:35px;margin:12px 0 14px}
 .contact-heading>p{font-size:13px;line-height:1.6}
 .contact-heading .contact-direct{margin-top:20px}
 .contact-direct .company-contact-channels{display:flex;flex-wrap:wrap;gap:13px 22px}
 .contact-direct .company-contact-channels>a{margin:0;padding:0}
 .contact-direct .company-contact-channels>a>span{font-size:10px}
 .contact-direct .company-contact-channels strong{font-size:12px}
 .contact-direct .wechat-contact{display:none}
 .enquiry-panel h2{font-size:25px}
 .enquiry-panel label{font-size:12px}
 .enquiry-panel .caption{font-size:11px}
 .collection-overview-hero{padding-top:25px!important;padding-bottom:35px!important;gap:25px!important}
 .collection-overview-hero h1{font-size:37px}
 .collection-introduction{font-size:14px!important;line-height:1.65!important}
 .collection-overview-hero .eyebrow{font-size:9px;letter-spacing:.13em}
 .collection-editorial{gap:22px!important;padding-top:35px!important;padding-bottom:35px!important}
 .collection-editorial h2{font-size:25px!important}
 .collection-editorial p,.collection-questions p{font-size:13px!important;line-height:1.65!important}
 .company-footer{padding-top:32px;padding-bottom:25px}
 .company-footer .footer-brand h2{display:none}
 .company-footer-grid{grid-template-columns:1fr;gap:26px}
 .company-footer .footer-brand p{margin:0;font-size:13px}
 .company-footer .footer-brand .footer-profile{margin-top:13px}
 .company-footer h3{margin-bottom:15px}
 .company-footer .company-contact-channels{display:grid;grid-template-columns:1fr 1fr;gap:18px}
 .company-footer .company-contact-channels>a,.company-footer .wechat-contact{margin:0}
 .company-footer .company-contact-channels strong{font-size:12px;overflow-wrap:anywhere}
 .company-footer .footer-resources{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
 .footer-resources h3,.footer-material-links{grid-column:1/-1}
 .company-footer .footer-resources>a{font-size:12px;margin:0}
 .footer-resources small{display:none}
 .footer-material-links{grid-template-columns:1fr 1fr;margin-top:8px;padding-top:15px;gap:12px}
 .company-footer .footer-bottom{margin-top:24px;padding-top:20px}
 .footer-bottom .footer-links{margin-top:8px;gap:14px}
 .footer-bottom .footer-links a{font-size:9px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
