/* Spirit Design Atelier | Unified Banners, Dropdown, Icons, Motion: 2026 */
:root{--sda-header-h:92px;--sda-hero-height:430px;--sda-banner-grey:#e7e7e4;--sda-banner-ink:#525451;--sda-ink:#282923;--sda-accent:#b39167}
/* Fixed, opaque, consistently branded header without inherited mix-blend color artifacts. */
.site-header,.site-header.is-scrolled{z-index:3000!important;mix-blend-mode:normal!important;background:#242019!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:#faf7ee!important}
.site-header nav,.site-header .nav{overflow:visible}
/* Desktop mega menu: fixed under the navbar, fully opaque, with no overlap from white styles. */
@media(min-width:981px){
 .site-header .nav-portfolio{position:static!important}
 .site-header .nav-portfolio .portfolio-mega{position:fixed!important;inset:auto auto auto 50%!important;top:var(--sda-header-h)!important;left:50%!important;right:auto!important;width:min(920px,calc(100vw - 56px))!important;max-width:920px!important;max-height:calc(100vh - var(--sda-header-h) - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain;transform:translate(-50%,10px)!important;background:#24221e!important;color:#f9f6ef!important;border:1px solid rgba(223,199,158,.24)!important;border-radius:0 0 14px 14px!important;box-shadow:0 24px 75px rgba(0,0,0,.35)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:3100!important;margin:0!important;padding:22px!important}
 .site-header .nav-portfolio:is(:hover,:focus-within,.is-open) .portfolio-mega{transform:translate(-50%,0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
 .site-header .portfolio-mega-head{border-bottom:1px solid rgba(255,255,255,.15)!important}
 .site-header .portfolio-mega-head strong{color:#f8f4ec!important}
 .site-header .portfolio-mega-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .site-header .portfolio-mega .mega-project-link{color:#f8f4ec!important;background:transparent!important}
 .site-header .portfolio-mega .mega-project-link:hover{background:#3c352d!important}
}
/* A single visual system for page banners, including journal & journal articles */
main .page-hero,main .journal-new-hero,main .journal-story-header,
main .project-hero-copy,main .services-editorial-intro{
 box-sizing:border-box!important;height:var(--sda-hero-height)!important;min-height:var(--sda-hero-height)!important;max-height:var(--sda-hero-height)!important;
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 padding:calc(var(--sda-header-h) + 15px) 22px 26px!important;margin:0!important;
 background:var(--sda-banner-grey)!important;color:var(--sda-banner-ink)!important;text-align:center!important;border:0!important;
}
main .page-hero>.container,main .journal-new-hero-inner,main .journal-story-header>.container,main .project-hero-copy{
 margin-inline:auto!important;width:min(100%,1160px)!important;max-width:1160px!important;text-align:center!important;
}
main .page-hero .eyebrow,main .project-hero-copy .eyebrow,main .services-editorial-intro .eyebrow,main .journal-kicker,main .journal-story-breadcrumb{color:#7a7873!important;letter-spacing:.12em!important;margin:0 0 13px!important}
main .page-hero h1,main .services-editorial-intro h1,main .project-hero-copy h1,
main .journal-new-hero h1,main .journal-story-header h1{font-size:clamp(34px,4.1vw,64px)!important;line-height:1.12!important;letter-spacing:-.055em!important;font-weight:500!important;color:#4c4e4c!important;max-width:1100px!important;margin:0 auto 15px!important;text-align:center!important;text-shadow:none!important}
main .journal-new-hero em{font-family:Georgia,serif!important;color:#888987!important;font-style:italic!important;font-weight:400!important}
main .page-hero .lead,main .project-hero-copy p,main .services-editorial-intro p,
main .journal-hero-footer p,main .journal-story-deck{color:#686a67!important;margin:0 auto!important;max-width:850px!important;text-align:center!important;line-height:1.55!important;font-size:clamp(13px,1.12vw,16px)!important}
main .journal-new-hero:after,main .page-hero::before{display:none!important}
main .journal-hero-footer{margin:14px 0 0!important;padding:0!important;border:0!important;justify-content:center!important;align-items:center!important;text-align:center!important;display:flex!important;flex-direction:column!important;gap:5px!important}
main .journal-hero-footer>span{color:#7a7774!important;font-size:9px!important}
main .journal-story-header .journal-back{color:#77736b!important;margin:0 auto 10px!important;display:inline-block!important;border-color:#aca69c!important}
main .journal-story-breadcrumb{margin:0 auto 12px!important}
main .journal-story-byline{display:flex!important;justify-content:center!important;gap:18px!important;border:0!important;padding:0!important;margin:10px auto 0!important;color:#7b746c!important;flex-wrap:wrap!important;font-size:9px!important}
main .journal-story-header>.container{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important}
main .project-hero-simple{padding:0!important;background:#f8f6f2!important}
main .project-hero-image,main .journal-story-image{height:430px!important;max-height:430px!important;min-height:0!important;overflow:hidden!important}
main .project-hero-image img,main .journal-story-image img{width:100%!important;height:100%!important;object-fit:cover!important}
main .services-editorial-page{padding-top:0!important;background:#f8f6f2!important}
main .services-editorial-intro{max-width:none!important;width:100%!important;position:relative!important;isolation:isolate!important;margin-bottom:50px!important}
main .services-editorial-intro::before{content:"";background:var(--sda-banner-grey);position:absolute;inset:0 calc((100% - 100vw)/2);z-index:-1}
main .services-editorial-intro > *{position:relative;z-index:1}
main .services-editorial-intro .eyebrow{display:block!important}
main .page-hero .btn{margin-top:20px!important}
/* Keep bespoke leadership portraits intact; harmonize their background and heading tone. */
.profile-page .profile-hero{background:var(--sda-banner-grey)!important}
.profile-page .profile-hero:before{opacity:.1!important}
/* Footer social links: real vector marks instead of abbreviations */
.footer-socials{gap:14px!important;justify-content:center!important}
.footer-socials a{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;border:1px solid rgba(38,35,30,.3)!important;border-radius:50%!important;color:#25231e!important;background:transparent!important;transition:transform .3s ease, background .3s ease,color .3s ease!important}
.footer-socials a svg{display:block!important;width:21px!important;height:21px!important;max-width:21px!important;max-height:21px!important}
.footer-socials a:hover,.footer-socials a:focus-visible{background:#242019!important;color:#fff!important;transform:translateY(-3px)!important}
/* Helpful, scannable SEO editorial copy and qualified lead paths */
.sda-home-local{padding:90px 0;background:#f4f1eb;text-align:center}.sda-home-local h2,.sda-seo-content h2{max-width:940px;margin:16px auto 24px;font-size:clamp(30px,4vw,55px);line-height:1.2;color:#363630}.sda-home-local p{max-width:810px;margin:0 auto 24px;line-height:1.85;color:#5f605b}
.sda-home-links{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.sda-home-links a,.sda-seo-contact{display:inline-flex;padding:13px 17px;border:1px solid #a38a6f;font-size:12px;color:#352b24;font-weight:700}
.sda-service-local{padding:52px 0 0;max-width:850px}.sda-service-local h2{font-size:clamp(26px,3vw,38px);line-height:1.3;margin-bottom:12px}.sda-service-local p{line-height:1.8;margin-bottom:22px;color:#5b5b55}.sda-service-local a{display:inline-block;margin:4px 15px 4px 0;text-decoration:underline;text-underline-offset:5px}
.sda-seo-content{background:#f8f6f2;padding:80px 0;color:#383631}.sda-seo-content h2{margin-left:0}.sda-seo-content>.container>p{max-width:1000px;line-height:1.9;color:#5a5953}.sda-seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}.sda-seo-grid article{background:#fff;padding:30px;border:1px solid #ded9d1}.sda-seo-grid h3{font-size:23px;margin:0 0 10px}.sda-seo-grid p{font-size:14px;line-height:1.85;color:#66615c}.sda-seo-grid a{display:inline-block;margin-top:18px;text-decoration:underline;text-underline-offset:4px}.sda-local-faq{background:#eeece8}.sda-local-faq details{border-bottom:1px solid #d0cac2;padding:18px 0}.sda-local-faq summary{cursor:pointer;font-weight:650}.sda-local-faq details p{line-height:1.75;color:#57544e}.sda-seo-contact{margin-top:30px}
/* Extra motion: avoid layout shifts and honor reduced-motion preference */
@media(prefers-reduced-motion:reduce){.footer-socials a,.sda-home-links a{transition:none!important}}
@media(max-width:980px){
 :root{--sda-header-h:76px;--sda-hero-height:380px}
 .site-header nav .nav-portfolio .portfolio-mega,.site-header nav .nav-portfolio:hover .portfolio-mega,.site-header nav .nav-portfolio:focus-within .portfolio-mega{position:static!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;max-height:0!important;padding:0!important;border:0!important;box-shadow:none!important;transform:none!important;overflow:hidden!important;background:transparent!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
 .site-header nav .nav-portfolio.is-open .portfolio-mega,.site-header nav .nav-portfolio.is-open:hover .portfolio-mega,.site-header nav .nav-portfolio.is-open:focus-within .portfolio-mega{max-height:1250px!important;overflow:visible!important;padding:8px 0 18px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
 .site-header nav .portfolio-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .site-header nav .portfolio-mega .mega-project-link{color:#f6f1e8!important;background:transparent!important}
}
@media(max-width:760px){
 :root{--sda-hero-height:365px}
 main .page-hero h1,main .services-editorial-intro h1,main .project-hero-copy h1,main .journal-new-hero h1,main .journal-story-header h1{font-size:clamp(30px,7vw,44px)!important;line-height:1.12!important}
 main .journal-hero-footer>span{display:none!important}
 main .journal-kicker{font-size:9px!important}
 main .journal-story-breadcrumb{font-size:9px!important}
 main .project-hero-image,main .journal-story-image{height:260px!important;max-height:260px!important}
 .site-header nav .portfolio-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .sda-seo-grid{grid-template-columns:1fr}
 .sda-seo-content,.sda-home-local{padding:60px 0}
}
@media(max-width:460px){:root{--sda-hero-height:350px}
 main .page-hero h1,main .services-editorial-intro h1,main .project-hero-copy h1,main .journal-new-hero h1,main .journal-story-header h1{font-size:clamp(28px,8vw,39px)!important}
 main .journal-story-header .journal-back{font-size:10px!important}
 main .journal-story-header .journal-story-byline{font-size:8px!important}
 main .journal-story-deck{font-size:12px!important}
 .site-header nav .portfolio-mega-grid{grid-template-columns:1fr!important}
}


/* PORTFOLIO DROPDOWN HOVER FIX - ALL DESKTOPS */

@media (min-width: 981px) {

  .site-header .nav-portfolio-row {
    position: relative !important;
  }

  /* Invisible hover bridge */
  .site-header .nav-portfolio-row::after {
    content: "";
    position: absolute;
    top: 100%;
    left: -25px;
    right: -25px;
    height: 90px;
    background: transparent;
    display: none;
    z-index: 1;
  }

  /* Keep hover bridge active */
  .site-header .nav-portfolio:hover
  .nav-portfolio-row::after,
  .site-header .nav-portfolio:focus-within
  .nav-portfolio-row::after {
    display: block;
  }

  /* Keep submenu open */
  .site-header .nav-portfolio:hover .portfolio-mega,
  .site-header .nav-portfolio:focus-within .portfolio-mega,
  .site-header .nav-portfolio.is-open .portfolio-mega {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) !important;
  }

  /* Make project links clickable */
  .site-header .portfolio-mega {
    z-index: 3100 !important;
  }
}

