/* Shared navigation only. Advisor content keeps its existing type and palette. */
@font-face{font-family:'LF Header Sans';src:url('/assets/reference/montserrat-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'LF Header Sans';src:url('/assets/reference/montserrat-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'LF Header Sans';src:url('/assets/reference/montserrat-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--announcement-height:34px;--navigation-height:92px;--header:calc(var(--announcement-height) + var(--navigation-height))}
html{scroll-padding-top:var(--header)}
.brand-ribbon.site-ribbon{box-sizing:border-box;position:sticky;top:0;z-index:42;display:flex;align-items:center;justify-content:center;min-height:var(--announcement-height);height:var(--announcement-height);margin:0;padding:6px 18px;background:#f6dc0c;color:#20251c;border:0;font:500 11px/1.45 'LF Header Sans',Montserrat,Arial,sans-serif;text-align:center;letter-spacing:0}
.brand-site-header.site-header{box-sizing:border-box;position:sticky;top:var(--announcement-height);z-index:41;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:var(--navigation-height);height:var(--navigation-height);padding:10px clamp(16px,3.5vw,52px);margin:0;background:#fff;border-bottom:1px solid #e7e7e7;color:#20251c;font-family:'LF Header Sans',Montserrat,Arial,sans-serif}
.brand-site-header.site-header>a.brand-logo,.brand-site-header.site-header>a.brand{display:flex;flex-direction:column;align-items:center;width:clamp(154px,14vw,184px);max-width:100%;min-width:0;flex:none;margin:0;line-height:1}
.brand-site-header a.brand-logo>.brand-mark,.brand-site-header a.brand>.brand-mark{display:block;position:relative;width:100%;aspect-ratio:3000/650;overflow:hidden;margin:0;padding:0;line-height:0}
.brand-site-header .brand-mark img{display:block;width:100%;height:auto;max-width:none;max-height:none;margin:0;object-fit:contain}
.brand-site-header a.brand-logo>.brand-caption,.brand-site-header a.brand>.brand-caption{display:block;width:100%;margin:4px 0 0;color:#20251c;font:500 9px/1.4 'LF Header Sans',Montserrat,Arial,sans-serif;letter-spacing:.015em;text-transform:none;white-space:normal;text-align:center}
.brand-site-header.site-header>.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.1vw,18px);min-width:0;margin:0;padding:0;font:500 12px/1.4 'LF Header Sans',Montserrat,Arial,sans-serif;white-space:nowrap}
.brand-site-header.site-header .main-nav>a,.brand-site-header.site-header .main-nav>a.nav-advisor{box-sizing:border-box;position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 0;background:none;color:#20251c;border:0;border-radius:0;font:inherit;letter-spacing:0;text-decoration:none;white-space:nowrap}
.brand-site-header.site-header .main-nav>a[aria-current=page],.brand-site-header.site-header .main-nav>a:hover{text-decoration:underline;text-underline-offset:7px}
.brand-site-header.site-header .main-nav>a::after{content:none}
.brand-site-header.site-header .header-actions{display:flex;align-items:center;gap:6px;min-width:0;margin:0;padding:0}
.brand-site-header.site-header .selection-link{box-sizing:border-box;flex:none;min-height:44px;margin:0;padding:9px 12px;border-radius:3px;font:600 11px/1.4 'LF Header Sans',Montserrat,Arial,sans-serif;color:#20251c}
.brand-site-header.site-header>.menu-toggle,.brand-site-header.site-header>.mobile-menu-toggle{display:none;box-sizing:border-box;align-items:center;justify-content:center;min-width:44px;width:44px;height:44px;min-height:44px;margin:0;padding:8px;border:0;border-radius:0;background:none;color:#20251c}
.brand-site-header .menu-toggle svg,.brand-site-header .mobile-menu-toggle svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.brand-site-header :is(a,button):focus-visible,.shared-mobile-dialog :is(a,button):focus-visible{outline:3px solid #796500;outline-offset:4px}

/* The advisor's mobile drawer is driven by brand-ui.js. */
.shared-mobile-dialog{box-sizing:border-box;position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:30px 24px;background:#fff;color:#20251c;border:0;overflow:auto;font:400 15px/1.6 'LF Header Sans',Montserrat,Arial,sans-serif}
.shared-mobile-dialog::backdrop{background:#0006}
.shared-mobile-dialog .shared-menu-close{box-sizing:border-box;position:absolute;top:18px;right:18px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:9px;border:1px solid #deded7;border-radius:0;background:#fff;color:#20251c}
.shared-mobile-dialog .shared-menu-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.shared-mobile-dialog>h2{margin:12px 50px 28px 0;font:500 25px/1.3 'LF Header Sans',Montserrat,Arial,sans-serif;letter-spacing:0}
.shared-mobile-dialog>.main-nav{display:flex;flex-direction:column;gap:0;margin:0 0 24px;padding:0}
.shared-mobile-dialog .main-nav>a{display:flex;align-items:center;min-height:54px;padding:12px 2px;border-bottom:1px solid #e7e7e7;color:#20251c;font:500 16px/1.5 'LF Header Sans',Montserrat,Arial,sans-serif;text-decoration:none}
.shared-mobile-dialog .main-nav>a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.shared-mobile-dialog .selection-link{font-family:'LF Header Sans',Montserrat,Arial,sans-serif}
.shared-menu-secondary{display:flex;flex-wrap:wrap;gap:2px 22px;margin-top:26px;padding-top:20px;border-top:1px solid #e7e7e7}
.shared-menu-secondary a{display:flex;align-items:center;min-height:44px;color:inherit;text-decoration:underline;text-underline-offset:4px}

/* Project images have one explicit disclosure and one shared provenance note. */
.kangoo-project>.project-toggle{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:64px;margin:0;padding:18px 0;border:0;border-block:1px solid #d9d5ca;border-radius:0;background:transparent;color:inherit;font:400 clamp(25px,3vw,36px)/1.3 var(--serif);letter-spacing:-.02em;text-align:left;cursor:pointer}
.project-toggle svg{flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.project-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.project-toggle:focus-visible{outline:3px solid #796500;outline-offset:5px}
.project-visual-note{max-width:68ch;margin:22px 0;font:400 14px/1.7 var(--sans);color:#646258}
#mobile-project-images .kangoo-project-grid{padding-top:0}
.kangoo-project:has(>.project-toggle[aria-expanded=true]){padding-bottom:60px}
.maisons-motion-controls button svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#view-home .signature-orbit::before,#view-home .signature-orbit::after,#view-home .signature-discovery::before{content:none}
.motion-brand-lockup>.brand-mark{display:block;width:100%;aspect-ratio:3000/650;overflow:hidden;line-height:0}
.motion-brand-lockup>.brand-caption{margin:16px 0 0;color:inherit;font:500 clamp(12px,1.7vw,20px)/1.5 var(--sans);letter-spacing:.015em;text-align:center}

@media(min-width:1024px) and (max-width:1250px){
 .brand-site-header.site-header{gap:12px;padding-inline:16px}
 .brand-site-header.site-header>.main-nav{gap:10px;font-size:11px}
 .brand-site-header.site-header .header-actions{gap:2px}
 .brand-site-header.site-header .header-actions .icon-button{min-width:36px;width:36px}
 .brand-site-header.site-header .selection-link{padding-inline:9px;font-size:10px}
}
@media(max-width:1023px){
 :root{--navigation-height:80px}
 .brand-site-header.site-header{grid-template-columns:44px minmax(0,1fr) auto;gap:10px;padding:10px 18px}
 .brand-site-header.site-header>.main-nav{display:none}
 .brand-site-header.site-header>.menu-toggle,.brand-site-header.site-header>.mobile-menu-toggle{display:inline-flex}
 .brand-site-header.site-header>a.brand-logo,.brand-site-header.site-header>a.brand{width:min(165px,100%);justify-self:start}
 .brand-site-header.site-header .header-actions .favorites-link,.brand-site-header.site-header .header-actions .account-link{display:none}
 .brand-site-header.site-header .selection-link{width:auto;max-width:110px;padding:8px 10px;font-size:11px;white-space:normal;text-align:center}
}
@media(max-width:600px){
 :root{--announcement-height:48px;--navigation-height:76px}
 .brand-ribbon.site-ribbon{padding:6px 14px;font-size:11px;line-height:1.5}
 .brand-site-header.site-header{gap:8px;padding:8px 14px}
 .brand-site-header.site-header .header-actions{gap:2px}
 .brand-site-header.site-header .header-actions .icon-button{min-width:36px;width:36px;height:44px}
 .brand-site-header.site-header .selection-link{min-width:76px;max-width:90px;padding:6px 7px;font-size:10px}
 .brand-site-header a.brand-logo>.brand-caption,.brand-site-header a.brand>.brand-caption{font-size:8px;letter-spacing:0}
 .project-visual-note{margin:20px 0;font-size:14px}
 .motion-brand-lockup>.brand-caption{margin-top:10px}
}
@media(max-width:360px){
 .brand-site-header.site-header{gap:6px;padding-inline:10px}
 .brand-site-header.site-header .selection-link{min-width:70px;max-width:76px;padding-inline:5px;font-size:9px}
 .brand-site-header a.brand-logo>.brand-caption,.brand-site-header a.brand>.brand-caption{font-size:7px}
}
