/* GAD Architecture v1.3.3 — global floating navigation.
 * Photo-backed home + projects: white controls over hero, no separate white bar.
 * Text-first routes: same floating controls in dark ink, with content clearance.
 * All routes: light blurred header after leaving the opening area.
 */
:root{--gad-header-height:76px}
body .site-header{
  position:fixed;left:0;right:0;top:var(--gad-header-admin-offset,0px);
  width:100%;z-index:120;
  background:transparent;border-bottom-color:transparent;
  box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  transition:background .16s ease,box-shadow .16s ease,border-color .16s ease;
}
body.admin-bar .site-header{top:var(--gad-header-admin-offset,32px)}
body.gad-content-header .site-header:not(.is-sticky){color:var(--ink,#15191a)}
body.gad-visual-header .site-header:not(.is-sticky){
  background:transparent;color:#fff;box-shadow:none;border-bottom-color:transparent;
  backdrop-filter:none;-webkit-backdrop-filter:none
}
body.gad-visual-header .site-header:not(.is-sticky) :is(.brand,.header-link,.gad-nav-trigger){
  color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.27)
}
body.gad-visual-header .site-header:not(.is-sticky) .brand-custom-logo{filter:brightness(0) invert(1)}
body.gad-visual-header .site-header:not(.is-sticky) .gad-nav-trigger:hover{color:#fff}
body.gad-visual-header .site-header:not(.is-sticky) .gad-nav-glyph svg{filter:drop-shadow(0 1px 3px rgba(0,0,0,.22))}
body .site-header.is-sticky{
  background:rgba(255,255,255,.88);color:var(--ink,#15191a);
  border-bottom-color:rgba(17,28,30,.07);
  box-shadow:0 5px 22px rgba(17,28,30,.04);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
body .site-header.is-sticky :is(.brand,.header-link,.gad-nav-trigger){color:var(--ink,#15191a);text-shadow:none}
body .site-header.is-sticky .brand-custom-logo,body .site-header.is-sticky .gad-nav-glyph svg{filter:none}
body.menu-open .site-header.is-sticky{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
/* No page is permitted to start its text under the floating controls. */
body.gad-content-header #main-content.site-shell{padding-top:var(--gad-header-height)}
/* Homepage hero reaches the top edge; normal sections still honor saved --max and --gutter. */
body.home.gad-visual-header #main-content.site-shell{width:100%;max-width:none}
body.home.gad-visual-header #main-content.site-shell > :is(.home-section,.editorial-row){
  width:calc(100% - 2 * var(--gutter));max-width:var(--max);
  margin-left:auto;margin-right:auto
}
body.home.gad-visual-header .hero{width:100%;margin:0}
body.home.gad-visual-header .hero::before{
  content:'';position:absolute;inset:0 0 auto;height:min(160px,38%);
  z-index:1;pointer-events:none;
  background:linear-gradient(to bottom,rgba(0,0,0,.31),rgba(0,0,0,0))
}
body.home.gad-visual-header .hero-content{
  left:max(var(--gutter),calc((100% - var(--max)) / 2));
  bottom:25px
}
body.home.gad-visual-header .hero-corner{
  right:max(var(--gutter),calc((100% - var(--max)) / 2))
}
@media(max-width:700px){
  :root{--gad-header-height:68px}
  body.home.gad-visual-header .hero-content{bottom:21px}
  body.home.gad-visual-header .hero-corner{bottom:15px}
}
@media(prefers-reduced-motion:reduce){body .site-header{transition:none}}
