/* Clarity Cut / Architectural split-header v1.5.4.
   Replaces the previous pill/shell structure; menu & CTA components are shared. */
.cc-header{
  background:var(--cc-header-bg);
  border-bottom:1px solid rgba(217,187,119,.19);
  isolation:isolate;
}
.cc-header::after{
  content:"";
  position:absolute;right:0;bottom:0;left:0;height:1px;
  background:linear-gradient(90deg,transparent 4%,rgba(217,187,119,.55) 35%,transparent 85%);
  pointer-events:none;
}
.cc-header-architecture{
  display:grid;
  grid-template-columns:192px minmax(0,1fr);
  min-height:148px;
  position:relative;
}
.cc-header-brand-area{
  position:relative;
  min-width:0;
  display:flex;align-items:center;justify-content:center;
  background:
    linear-gradient(145deg,rgba(217,187,119,.13),transparent 55%),
    #151517;
  border-right:1px solid rgba(217,187,119,.25);
  border-left:1px solid rgba(217,187,119,.09);
}
.cc-header-brand-area::before{
  content:"";
  position:absolute;top:0;left:0;width:42%;height:2px;
  background:linear-gradient(90deg,var(--cc-gold),transparent);
}
.cc-header-brand-area::after{
  content:"";
  position:absolute;right:-1px;bottom:0;width:32px;height:32px;
  background:var(--cc-header-bg);
  clip-path:polygon(100% 0,100% 100%,0 100%);
  border-left:1px solid rgba(217,187,119,.26);
  pointer-events:none;
}
.cc-header-brand-rule{
  position:absolute;bottom:18px;left:23px;width:40px;height:1px;
  background:var(--cc-gold);opacity:.55;pointer-events:none;
}
.cc-header-brand-area .cc-brand{
  display:flex;align-items:center;justify-content:center;
  width:100%;max-width:100%;height:100%;
  padding:12px 18px;
}
.cc-header-brand-area .cc-brand img{
  display:block;width:var(--cc-logo-width,94px);max-height:111px;object-fit:contain;
}
.cc-header-content{min-width:0;display:grid;grid-template-rows:44px minmax(94px,1fr)}
.cc-header-info{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  min-width:0;padding:0 clamp(16px,2.2vw,32px);
  border-bottom:1px solid rgba(217,187,119,.13);
  background:linear-gradient(90deg,rgba(217,187,119,.055),transparent 80%);
}
.cc-header-info-tag{
  display:inline-flex;align-items:center;gap:13px;
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--cc-gold);font-size:9px;font-weight:700;letter-spacing:.24em;
}
.cc-topbar-gem,.cc-header-info-diamond{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--cc-gold)}
.cc-topbar-gem svg,.cc-header-info-diamond svg{display:block;width:14px;height:14px;stroke-width:1.4}
.cc-header-info-diamond svg{width:13px;height:13px}
.cc-header-info-email{
  display:inline-flex;align-items:center;gap:9px;
  color:var(--cc-header-text);font-size:10px;letter-spacing:.06em;
  opacity:.78;white-space:nowrap;
  transition:opacity .25s,color .25s;
}
.cc-header-info-email svg{width:13px;height:13px;color:var(--cc-gold)}
.cc-header-info-email:hover{opacity:1;color:var(--cc-gold)}
.cc-header-mainline{
  display:flex;align-items:stretch;justify-content:space-between;gap:15px;
  position:relative;min-height:104px;min-width:0;
  padding:0 clamp(16px,2.2vw,32px);
}
.cc-header-mainline::before{
  content:"";position:absolute;left:0;bottom:0;width:30%;height:1px;
  background:linear-gradient(90deg,var(--cc-gold),transparent);opacity:.35;
  pointer-events:none;
}
.cc-header-mainline .cc-desktop-nav{
  justify-content:flex-start;align-items:center;min-width:0;flex:1 1 auto;
}
.cc-header-mainline .cc-menu{gap:clamp(12px,1.7vw,30px)}
.cc-header-mainline .cc-menu>li>a{
  min-height:74px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
}
.cc-header-mainline .cc-desktop-nav .cc-menu>li>a::after{
  height:2px;bottom:14px;
}
.cc-header-mainline .cc-header-actions{
  flex:0 0 auto;gap:10px;justify-content:flex-end;
  padding-left:clamp(13px,1.8vw,26px);
  border-left:1px solid rgba(217,187,119,.2);
}
.cc-header[data-layout="centered"] .cc-header-mainline .cc-desktop-nav{justify-content:center}
/* Keep native desktop mega menu anchored to the second header tier. */
.cc-header-mainline .cc-mega{top:calc(100% - 1px)}
.cc-header-mainline .cc-submenu-toggle{color:var(--cc-gold)}
.cc-header.cc-scrolled{background:color-mix(in srgb,var(--cc-header-bg) 96%,#000)}
.cc-header.cc-scrolled .cc-header-brand-area{
  background:linear-gradient(140deg,rgba(217,187,119,.1),transparent 55%),#131416;
}
@media(max-width:1360px){
  .cc-header-architecture{grid-template-columns:164px minmax(0,1fr)}
  .cc-header-mainline{gap:10px;padding-inline:18px}
  .cc-header-mainline .cc-menu{gap:clamp(9px,1.25vw,19px)}
  .cc-header-mainline .cc-menu>li>a{font-size:10px;letter-spacing:.055em}
  .cc-header-mainline .cc-header-actions{padding-left:12px}
}
@media(max-width:1100px){
  .cc-header-architecture{
    grid-template-columns:112px minmax(0,1fr);
    min-height:90px;
  }
  .cc-header-brand-area{min-height:90px}
  .cc-header-brand-area::after{width:20px;height:20px}
  .cc-header-brand-rule{left:12px;bottom:11px;width:26px}
  .cc-header-brand-area .cc-brand{padding:7px 13px}
  .cc-header-brand-area .cc-brand img{
    width:var(--cc-logo-mobile-width,77px);max-height:76px;
  }
  .cc-header-content{display:flex;justify-content:flex-end}
  .cc-header-info{display:none}
  .cc-header-mainline{min-height:90px;justify-content:flex-end;flex:1}
  .cc-header-mainline .cc-desktop-nav{display:none}
  .cc-header-mainline .cc-header-actions{border:0;padding-left:0}
  .cc-header-mainline .cc-quick-call{display:none}
  .cc-header-mainline .cc-menu-trigger{
    display:inline-flex;min-height:48px;align-items:center;gap:12px;
    border:1px solid rgba(217,187,119,.32);
    padding:0 15px;color:var(--cc-header-text);
    background:transparent;
    font-size:10px;letter-spacing:.16em;
    transition:background .25s,color .25s,border-color .25s;
  }
  .cc-header-mainline .cc-menu-trigger:hover,
  .cc-header-mainline .cc-menu-trigger:focus-visible{
    color:var(--cc-gold);border-color:var(--cc-gold);
    background:rgba(217,187,119,.07);
  }
}
@media(max-width:680px){
  .cc-header-architecture{grid-template-columns:94px minmax(0,1fr);min-height:78px}
  .cc-header-brand-area{min-height:78px}
  .cc-header-brand-area .cc-brand{padding:6px 10px}
  .cc-header-brand-area .cc-brand img{max-height:66px}
  .cc-header-mainline{min-height:78px;padding-inline:12px}
  .cc-header-mainline .cc-header-actions>.cc-appointment{display:none}
  .cc-header-mainline .cc-menu-trigger{min-height:44px}
}
@media(max-width:390px){
  .cc-header-architecture{grid-template-columns:83px minmax(0,1fr)}
  .cc-header-mainline .cc-menu-trigger span{display:none}
}
@media(prefers-reduced-motion:reduce){
  .cc-header-info-email,.cc-header-mainline .cc-menu-trigger{transition:none}
}

/* Stable sticky reduction: compact logo, navigation and appointment only.
 * JS preserves the expanded header footprint via an adjacent spacer. */
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-architecture{min-height:78px;grid-template-columns:155px minmax(0,1fr)}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-content{display:block;min-width:0}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-info{display:none!important}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-mainline{min-height:78px}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area{min-height:78px}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-rule,
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area::before,
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area::after,
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-mainline::before,
.cc-sticky-enabled .cc-header.cc-scrolled .cc-quick-call{display:none!important}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area .cc-brand{padding:7px 13px}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area .cc-brand img{width:min(var(--cc-logo-width,94px),66px);max-height:67px}
.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-mainline .cc-menu>li>a{min-height:67px}
@media(max-width:1100px){
 .cc-sticky-enabled .cc-header.cc-scrolled .cc-header-architecture{grid-template-columns:100px minmax(0,1fr);min-height:74px}
 .cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area,.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-mainline{min-height:74px}
 .cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area .cc-brand img{width:min(var(--cc-logo-mobile-width,77px),61px);max-height:62px}
}
@media(max-width:680px){
 .cc-sticky-enabled .cc-header.cc-scrolled .cc-header-architecture{grid-template-columns:86px minmax(0,1fr);min-height:70px}
 .cc-sticky-enabled .cc-header.cc-scrolled .cc-header-brand-area,.cc-sticky-enabled .cc-header.cc-scrolled .cc-header-mainline{min-height:70px}
}

/* Reserve the expanded header's space while its visible sticky state is compact.
 * Prevents the scroll offset and layout height from fighting each other. */
/* The reserved sticky footprint must be painted: visibility:hidden exposed
 * the light body behind it as a bright band below the compact header. */
.cc-header-footprint{height:0;min-height:0;pointer-events:none;visibility:visible;flex:none;background:#101010}
/* Avoid Chrome's scroll anchoring moving the viewport when sticky height changes. */
.cc-site-shell{overflow-anchor:none}
