@media(min-width:951px){
  .site-header{height:76px;padding-inline:3.5vw}
  .site-header .brand-image-link>img{width:132px}
  .site-header .logo small{margin-left:10px;padding-left:10px;font-size:8px}
  .site-header nav{gap:24px;font-size:12px}
  .site-header>.pill{min-height:40px;padding-inline:18px;font-size:12px}
  .portfolio-filter-dock{top:76px}
}
footer{padding:70px 4.5vw 22px!important;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr)!important;gap:4vw!important}
.footer-intro h2{max-width:720px;margin:18px 0!important;font-size:clamp(40px,4.5vw,68px)!important}
.footer-intro>p{font-size:14px;line-height:1.65}
.contact-direct{display:flex!important;flex-wrap:wrap;gap:8px 22px!important;margin-top:22px!important}
.contact-direct a{font-size:14px!important}
footer>.project-intake{max-width:760px;width:100%}
.project-intake-compact .intake-status{padding:14px 20px}
.project-intake-compact .intake-step{padding:24px 26px}
.project-intake-compact .intake-heading h3{margin:9px 0 5px;font-size:27px}
.project-intake-compact .intake-heading p{margin-bottom:22px;font-size:12px}
.project-intake-compact .intake-grid{gap:12px}
.project-intake-compact input,.project-intake-compact select,.project-intake-compact textarea{padding:11px}
.project-intake-compact .intake-consent a{color:#d4a52f;text-decoration:underline;text-underline-offset:3px}
.project-intake-compact .module-picker{margin-top:18px}
.project-intake-compact .module-picker span{padding:7px 10px}
.project-intake-compact .intake-actions{margin-top:22px;padding-top:18px}
.foot{margin-top:42px!important;padding:20px 0 66px!important;grid-template-columns:140px minmax(190px,1fr) auto auto!important;gap:18px 30px!important;align-items:start!important}
.foot>span{line-height:1.55}
.footer-primary-links,.footer-legal-links{display:flex!important;flex-wrap:wrap;align-items:center;gap:7px 15px!important}
.footer-primary-links a,.footer-legal-links a{white-space:nowrap}
.footer-legal-links a{color:#d2cec5}
.footer-legal-links .footer-portal-shortcut{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #d4a52f66;border-radius:7px;color:#f2ead8;background:#d4a52f0c}.footer-portal-shortcut span{color:#d4a52f;font:700 8px monospace;letter-spacing:.1em}
.footer-copyright{grid-column:2/-1;padding-top:2px;color:#777}

.legal-hero{min-height:610px;padding:165px 6vw 80px;background:#11110e;color:#f7f2e8;display:flex;flex-direction:column;justify-content:flex-end}
.legal-hero h1{max-width:1100px;margin:25px 0;font-size:clamp(68px,10vw,150px);line-height:.84;letter-spacing:-.075em}
.legal-hero>p{max-width:760px;color:#b3ada2;font-size:clamp(17px,1.5vw,22px);line-height:1.6}
.legal-hero>div{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:10px 24px;max-width:760px;margin-top:42px;padding-top:20px;border-top:1px solid #ffffff22}
.legal-hero>div span{color:#77736c;font-size:9px;text-transform:uppercase;letter-spacing:.14em}
.legal-hero>div b{font-size:12px}
.legal-document{padding:100px 6vw 130px;background:#fffdf8;display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);gap:8vw}
.legal-document>aside{position:sticky;top:105px;align-self:start}
.legal-document>aside>span{display:block;margin-bottom:18px;color:#8b8377;font-size:9px;text-transform:uppercase;letter-spacing:.16em}
.legal-document aside nav{display:grid;border-top:1px solid #d7cfc2}
.legal-document aside a{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:12px 0;border-bottom:1px solid #d7cfc2;font-size:11px;line-height:1.35}
.legal-document aside i{color:#a86f08;font-style:normal;font-size:8px}
.legal-document article>section{scroll-margin-top:105px;padding:0 0 70px;margin-bottom:70px;border-bottom:1px solid #d7cfc2}
.legal-document article>section>span{color:#a86f08;font-size:10px;letter-spacing:.14em}
.legal-document h2{margin:12px 0 28px;font-size:clamp(38px,4.5vw,72px);line-height:.95;letter-spacing:-.055em}
.legal-document p,.legal-document li{max-width:880px;color:#5f5b54;font-size:17px;line-height:1.8}
.legal-document ul{max-width:880px;margin:25px 0 0;padding:0;list-style:none;border-top:1px solid #d7cfc2}
.legal-document li{position:relative;padding:15px 10px 15px 35px;border-bottom:1px solid #d7cfc2}
.legal-document li:before{content:'↗';position:absolute;left:5px;color:#a86f08}
.legal-contact{padding:55px;background:#d4a52f;color:#11110e}
.legal-contact>span{font-size:9px;text-transform:uppercase;letter-spacing:.15em}
.legal-contact h2{margin:20px 0;font-size:clamp(42px,5vw,78px)}
.legal-contact a{display:inline-block;padding-bottom:6px;border-bottom:1px solid;font-weight:700}
@media(max-width:950px){
  footer{grid-template-columns:1fr!important;padding:60px 20px 25px!important}
  .foot{grid-template-columns:1fr 1fr!important}
  .footer-copyright{grid-column:1/-1}
  .legal-hero{min-height:530px;padding:130px 20px 65px}
  .legal-document{grid-template-columns:1fr;padding:70px 20px 100px}
  .legal-document>aside{position:static}
  .legal-document aside nav{grid-template-columns:1fr 1fr}
  .legal-document article>section{scroll-margin-top:85px}
}
@media(max-width:600px){
  footer{padding:52px 16px 18px!important}
  .footer-intro h2{font-size:44px!important}
  .project-intake-compact .intake-step{padding:22px 16px}
  .foot{grid-template-columns:1fr!important;margin-top:28px!important;padding-bottom:76px!important}
  .footer-copyright{grid-column:auto}
  .legal-hero h1{font-size:58px}
  .legal-hero>div{grid-template-columns:auto 1fr}
  .legal-document aside nav{grid-template-columns:1fr}
  .legal-document article>section{padding-bottom:45px;margin-bottom:50px}
  .legal-document p,.legal-document li{font-size:15px}
  .legal-contact{padding:34px 24px}
}

/* Compact mega menus for the two primary service directories. */
.site-header #site-navigation{align-items:center}
.nav-group{position:relative;display:flex;align-items:center;height:76px}
.nav-parent{display:flex;align-items:center;gap:6px}
.nav-chevron{color:#d4a52f;font-size:13px;transition:transform .25s}
.nav-group:hover .nav-chevron,.nav-group:focus-within .nav-chevron{transform:rotate(180deg)}
.nav-submenu{position:absolute;top:calc(100% - 7px);left:50%;width:360px;padding:8px;border:1px solid #ffffff22;border-radius:14px;background:rgba(13,14,12,.98);box-shadow:0 25px 70px #0006;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .22s,visibility .22s,transform .22s;pointer-events:none}
.nav-group:hover .nav-submenu,.nav-group:focus-within .nav-submenu{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
.site-header .nav-submenu>a{display:grid;grid-template-columns:28px 1fr;gap:8px;min-height:58px;padding:10px 12px;border-radius:9px;color:#f7f2e8!important;transition:background .2s,color .2s}
.site-header .nav-submenu>a:hover,.site-header .nav-submenu>a:focus{background:#d4a52f;color:#11110e!important}
.site-header .nav-submenu>a:after{display:none!important}
.nav-submenu>a>i{color:#d4a52f;font:normal 8px/1.5 monospace}
.nav-submenu>a:hover>i{color:#11110e}
.nav-submenu>a span,.nav-submenu>a b,.nav-submenu>a small{display:block;min-width:0}
.nav-submenu>a b{font-size:13px}
.nav-submenu>a small{margin-top:2px;color:#99958d;font-size:9px;line-height:1.35}
.nav-submenu>a:hover small{color:#39362f}
.nav-submenu-services{position:fixed;top:84px;right:18px;left:auto;display:grid;width:520px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 102px);grid-template-columns:1fr 1fr;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d4a52f #25251f;transform:translateY(10px)}
.nav-group:hover .nav-submenu-services,.nav-group:focus-within .nav-submenu-services{transform:translateY(0)}
.nav-submenu-services::-webkit-scrollbar{width:7px}.nav-submenu-services::-webkit-scrollbar-track{background:#25251f}.nav-submenu-services::-webkit-scrollbar-thumb{background:#d4a52f;border-radius:20px}
.nav-submenu-services>a{grid-template-columns:1fr!important}
.nav-submenu-services .service-realm-link:nth-of-type(9){border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:13px;margin-bottom:4px}
.service-chapter{scroll-margin-top:95px}
@media(max-width:950px){
  .site-header #site-navigation{align-items:stretch}
  .nav-group{display:block;height:auto;border-bottom:1px solid #ffffff18}
  .site-header nav .nav-parent{border-bottom:0!important}
  .site-header nav .nav-parent:after{display:none!important}
  .nav-submenu,.nav-submenu-services{position:static;display:grid!important;width:auto;max-width:none;max-height:none;padding:0 0 12px 18px;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none;pointer-events:auto;overflow:visible;grid-template-columns:1fr 1fr}
  .site-header .nav-submenu>a{min-height:46px!important;padding:8px 10px!important;border:0!important;border-left:1px solid #ffffff20!important;border-radius:0!important;grid-template-columns:22px 1fr!important;justify-content:start!important;font-size:12px!important}
  .site-header .nav-submenu-services>a{grid-template-columns:1fr!important}
  .nav-submenu>a b{font-size:11px}
  .nav-submenu>a small{font-size:8px}
}
@media(max-width:600px){
  .nav-submenu,.nav-submenu-services{grid-template-columns:1fr}
}
