/* Soft glass over the mountain palette, with a quiet color for each division. */
body{--glass-base:#f1f6fb;--glass-haze:#cedff0;--glass-photo:#e0ebf5;--glass-accent:#315e8e;--glass-ink:#17334e;--glass-muted:#52697e;--glass-line:#41688b24;--glass-shadow:#365a7d20}
body[data-product-theme=harvesters]{--glass-base:#fbf3f4;--glass-haze:#efd4da;--glass-photo:#f3e4e8;--glass-accent:#984555;--glass-ink:#422a33;--glass-muted:#765b65;--glass-line:#98455524;--glass-shadow:#7b354b1c}
body[data-product-theme=nvironmentron]{--glass-base:#f3f8f3;--glass-haze:#d2e3d1;--glass-photo:#e4eee2;--glass-accent:#4c7047;--glass-ink:#263d2b;--glass-muted:#596f5c;--glass-line:#4c704724;--glass-shadow:#3c653820}
body[data-product-theme=sensafact]{--glass-base:#faf8f0;--glass-haze:#e9dfbf;--glass-photo:#f0ead8;--glass-accent:#846724;--glass-ink:#403725;--glass-muted:#746951;--glass-line:#84672424;--glass-shadow:#75602520}

#division-view,#family-browser,#product-dialog{--paper:var(--glass-base);--ink:var(--glass-ink);--muted:var(--glass-muted);--line:var(--glass-line);color:var(--ink)}
#division-view{background:var(--glass-base)}
#division-view::before{background:radial-gradient(ellipse at 95% 5%,var(--glass-haze),transparent 62%),linear-gradient(145deg,#ffffffb3,var(--glass-base));opacity:1}
#division-view .division-header{background:color-mix(in srgb,var(--glass-base) 76%,transparent);border-bottom:1px solid #ffffffd9;box-shadow:0 5px 28px -20px var(--glass-shadow);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2)}
#division-view .division-back{min-height:44px;padding:8px 15px;border:1px solid #ffffffbf;border-radius:40px;background:#ffffff70;box-shadow:inset 0 1px 0 #fff,0 4px 15px -10px var(--glass-shadow)}
#division-view .division-back small{color:var(--glass-muted)}
#division-view .division-menu-trigger{min-height:44px;border-radius:40px}
#division-view .group-division-intro{padding-top:42px;padding-bottom:34px}
#division-view .group-division-intro #precision-title{color:var(--glass-ink)}
#division-view #families>.section-rule{border-top-color:var(--glass-line)}
#division-view #families .family-grid{gap:26px}
#division-view #families .family-card,#division-view #families .family-card:nth-child(n){padding:12px;border:1px solid #ffffffe0;border-radius:26px;overflow:hidden;background:linear-gradient(145deg,#ffffffbb,#ffffff61);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #ffffff88,0 16px 40px -26px var(--glass-shadow);backdrop-filter:blur(14px) saturate(1.12);-webkit-backdrop-filter:blur(14px) saturate(1.12);transition:transform .35s cubic-bezier(.22,.7,.22,1),box-shadow .35s,background .35s}
#division-view #families .family-card:hover,#division-view #families .family-card:focus-visible{transform:translateY(-4px);border:1px solid #fff;background:linear-gradient(145deg,#fffffff0,#ffffff8c);box-shadow:inset 0 1px 0 #fff,0 22px 46px -26px var(--glass-shadow)}
#division-view #families .family-photo{border-radius:17px;background:radial-gradient(ellipse at 35% 12%,#ffffffc9,var(--glass-photo));border:1px solid #ffffff9c}
#division-view #families .family-card:hover .family-photo,#division-view #families .family-card:focus-visible .family-photo{background:radial-gradient(ellipse at 35% 12%,#ffffffeb,var(--glass-photo))}
#division-view #families .family-card-bottom{padding:21px 12px 12px}
#division-view #families .family-card h3{color:var(--glass-ink);font-size:clamp(27px,2.5vw,35px)}
#division-view #families .family-card p{color:var(--glass-muted)}
#division-view #families .family-explore{color:var(--glass-accent);padding-top:12px;border-top:1px solid var(--glass-line)}
#division-view #families .family-explore>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffffffa1;border:1px solid #ffffffc2;flex-shrink:0}
#division-view .configuration-enquiry{margin:0 0 32px;padding:36px;border:1px solid #ffffffc9;border-radius:28px;background:linear-gradient(135deg,#ffffffad,#ffffff57);box-shadow:inset 0 1px 0 #fff,0 14px 38px -27px var(--glass-shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
#division-view .configuration-enquiry .text-button{padding:10px 18px;border:1px solid #ffffffd9;border-radius:40px;background:#ffffffa6;box-shadow:inset 0 1px 0 #fff;gap:24px}
#division-view .collection-footer{border-color:var(--glass-line);color:var(--glass-muted)}

#family-browser,#product-dialog{border:1px solid #ffffffdf;border-radius:28px;background:linear-gradient(135deg,#ffffffeb,color-mix(in srgb,var(--glass-base) 92%,transparent));box-shadow:inset 0 1px 0 #fff,0 32px 90px #182f4a29;backdrop-filter:blur(22px) saturate(1.14);-webkit-backdrop-filter:blur(22px) saturate(1.14)}
#family-browser::backdrop,#product-dialog::backdrop{background:#18324c38;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
#family-browser .family-browser-shell,#product-dialog .product-dialog-shell{border-radius:27px;overflow:hidden}
#family-browser .family-browser-header,#product-dialog .product-dialog-header{background:#ffffff73;border-color:var(--glass-line)}
#family-browser .family-browser-grid{gap:24px}
#family-browser .family-browser-product{padding:9px;border:1px solid #ffffffdb;border-radius:22px;background:#ffffff80;box-shadow:inset 0 1px 0 #fff,0 12px 30px -24px var(--glass-shadow);overflow:hidden;transition:background .25s,transform .3s}
#family-browser .family-browser-product:hover{background:#ffffffc9;transform:translateY(-3px)}
#family-browser .family-browser-photo,#family-browser .family-browser-product:hover .family-browser-photo{border-radius:15px;background:radial-gradient(ellipse at 30% 15%,#ffffffbd,var(--glass-photo))}
#family-browser .family-browser-product-copy{padding:16px 12px 12px}
#family-browser .family-browser-search-field{padding:0 14px;border:1px solid #ffffffdf;border-radius:18px;background:#ffffffb0;box-shadow:inset 0 1px 0 #fff,0 5px 20px -15px var(--glass-shadow)}
#family-browser .family-browser-product-label,#family-browser .family-browser-maker,#family-browser .family-browser-count,#family-browser .family-browser-introduction p{color:var(--glass-muted)}
#family-browser .family-browser-close,#product-dialog .round-button{width:44px;height:44px;background:#ffffffa8;border:1px solid #ffffffd9;box-shadow:inset 0 1px 0 #fff;color:var(--glass-ink)}
#family-browser .family-browser-close:hover,#product-dialog .round-button:hover{background:var(--glass-photo);color:var(--glass-accent)}
#product-dialog .product-art{background:radial-gradient(ellipse at 30% 15%,#ffffffa8,var(--glass-photo));border-right:1px solid #ffffffbc}
#product-dialog .product-detail{background:#ffffff61}
#product-dialog .product-art>.micro,#product-dialog .art-footnote,#product-dialog .photo-viewer-help{color:var(--glass-muted)}
#product-dialog .detail-tabs{gap:5px;padding:5px;margin-bottom:17px;border:1px solid #ffffffd9;border-radius:18px;background:#ffffff80}
#product-dialog .detail-tabs button{flex:1;min-height:44px;padding:10px 12px;border:0;border-radius:13px;font-size:11px;color:var(--glass-muted)}
#product-dialog .detail-tabs button[aria-selected=true]{background:var(--glass-photo);color:var(--glass-accent);box-shadow:inset 0 1px 0 #ffffffd9,0 3px 12px -8px var(--glass-shadow)}
#product-dialog .photo-inspect-controls button{min-height:44px;padding:9px 14px;border:1px solid #ffffffd9!important;border-radius:40px;background:#ffffff8c;color:var(--glass-accent)}
#product-dialog .photo-zoom-tools button{min-width:44px;padding:8px}
#product-dialog .photo-zoom-tools output{color:var(--glass-ink)}
#product-dialog .product-resources a,#product-dialog .product-resources button{border-bottom-color:var(--glass-line);color:var(--glass-accent)}

/* Keep the existing carousel composition; soften its glass edges. */
.crest-card,.crest-card[data-active=true]{border-radius:22px;background:linear-gradient(145deg,#fffffff2,#edf5fbc9);border-color:#ffffffe0;box-shadow:inset 0 1px 0 #fff,0 18px 40px -26px #123b645c;backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1)}

@media(max-width:750px){
 #division-view .group-division-intro{padding-top:30px;padding-bottom:28px}
 #division-view #families .family-grid{gap:22px}
 #division-view .configuration-enquiry{padding:26px;border-radius:24px}
 #division-view #families .family-card h3{font-size:32px}
}
@media(max-width:600px){
 #family-browser,#product-dialog{width:calc(100vw - 20px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);border-radius:24px}
 #family-browser .family-browser-shell,#product-dialog .product-dialog-shell{border-radius:23px}
 #family-browser .family-browser-header{padding:18px}
 #family-browser .family-browser-body{padding:22px 18px 32px}
 #product-dialog .product-dialog-header{padding-inline:18px}
 #product-dialog .product-art,#product-dialog .product-detail{padding-inline:20px}
 #product-dialog .detail-tabs button{padding-inline:8px;font-size:10px}
 #division-view #families .family-card-bottom{padding:19px 10px 10px}
 #division-view .division-back{padding-inline:11px}
 .crest-card,.crest-card[data-active=true]{border-radius:18px}
}
@supports not (backdrop-filter:blur(1px)){
 #division-view .division-header{background:var(--glass-base)}
 #division-view #families .family-card,#family-browser,#product-dialog{background:color-mix(in srgb,var(--glass-base) 25%,white)}
}
@media(prefers-reduced-motion:reduce){
 #division-view #families .family-card,#family-browser .family-browser-product{transition:none}
 #division-view #families .family-card:hover,#family-browser .family-browser-product:hover{transform:none}
}

/* Floating homepage crests: the mountain remains visible through each station. */
.crest-card,.crest-card[data-active=true],.crest-card[data-active=true]:hover{
 background:transparent;border:0;box-shadow:none;backdrop-filter:none;
 -webkit-backdrop-filter:none;border-radius:0;padding:0;
 grid-template-rows:minmax(0,1fr) 25px;gap:10px;
}
.crest-card::before,.crest-card::after,.crest-card .card-heading{display:none}
.crest-card>img{mix-blend-mode:normal;filter:url(#crest-white-key)}
.crest-card .card-foot,.crest-card[data-active=true] .card-foot{
 border:0;margin:0;padding:0;background:transparent;justify-content:center;gap:12px;
 text-align:center;color:#304c61;
}
.crest-card:focus-visible{outline:2px solid #315e8e;outline-offset:8px;border-radius:12px}
