/* Tolani Family Office - pre-deployment polish, 2026-09-01 */
html{overflow-x:clip;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{overflow-x:clip}
img{height:auto}
button,a,input,select,textarea{-webkit-tap-highlight-color:rgba(207,173,122,.16)}
:focus-visible{outline:2px solid var(--brass-light);outline-offset:4px}
.site-header a:focus-visible,.site-header button:focus-visible{outline-color:#e3c18d}
.button,.nav-cta,.mobile-cta,.menu-toggle{min-height:44px}
.button{align-items:center}
.menu-open{overflow:hidden}
.mobile-nav{max-height:calc(100svh - 72px);overflow-y:auto;overscroll-behavior:contain}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.form-status{min-height:1.5em;margin:16px 0 0;font-family:var(--serif);font-size:.9rem;color:#655d52}
.form-status[data-state="success"]{color:#365a45}.form-status[data-state="error"]{color:#7f3f39}
.enquiry-form button:disabled{opacity:.62;cursor:wait}
.data-table{width:100%}.article-prose{min-width:0;overflow-wrap:break-word}
.brand img,.footer-brand img{height:auto!important}
.refined-gallery-grid img,.inst-proof-gallery img,.inst-role-visual img{max-width:100%}
@media(max-width:850px){
 .shell,.narrow{width:min(100% - 38px,var(--refined-max,1240px))}
 .site-header{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
 .mobile-nav a{min-height:44px;display:flex;align-items:center}
 input,select,textarea{font-size:16px!important}
 .data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:normal}
 .data-table th,.data-table td{min-width:150px}
 .homev2-hero,.refined-steward,.inst-hero{min-height:clamp(600px,88svh,760px)}
 .homev2-hero-inner{min-height:calc(clamp(600px,88svh,760px) - 72px)}
 .homev2-hero-copy{max-width:100%}
 .homev2-hero h1,.inst-hero h1,.refined-steward h1{font-size:clamp(3.25rem,13vw,4.7rem)!important;line-height:.9!important}
 .homev2-hero p,.inst-hero p,.refined-steward p{font-size:1.08rem!important;line-height:1.55!important}
 .homev2-route{max-width:100%;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
 .homev2-route::-webkit-scrollbar{display:none}
 .majlis-gathering-photo img{aspect-ratio:4/3;object-position:center 42%}
 .inst-proof-gallery{gap:9px}.inst-proof-gallery figure{min-height:0}
}
@media(max-width:620px){
 .shell,.narrow{width:calc(100% - 32px)!important}.nav-shell{width:calc(100% - 24px)!important}
 .brand{width:136px!important;flex-basis:136px!important}.brand img{width:136px!important;max-height:49px!important}.footer-brand img{width:172px!important}
 .eyebrow,.kicker,.label{letter-spacing:.14em}
 .page-intro,.editorial-section,.home-history,.home-philosophy,.house-map,.journal-preview,.family-chapter,.map-chapter,.pillar-chapter,.operating-principles,.knowledge-bank,.flow-problem,.architecture-dark,.flow-instrument,.process-ledger,.museum-intro,.video-section,.steward-note,.research-feature,.article-list-section,.publishing-band,.institution-story,.institution-functions,.institution-video,.contact-section,.goodwill-note,.heritage-split,.video-feature{padding-top:58px!important;padding-bottom:58px!important}
 .section-head h2,.intro-grid h2,.history-lead h2,.philosophy-copy h2,.house-map h2,.chapter-copy h2,.pillar-copy h2,.knowledge-copy h2,.instrument-copy h2,.video-grid h2,.steward-note h2,.institution-copy h2,.correspondence-copy h2,.goodwill-grid h2,.heritage-split-copy h2,.video-feature-copy h2{font-size:clamp(2.65rem,12vw,3.55rem)!important;line-height:.94!important}
 .article-hero h1{font-size:clamp(2.85rem,12vw,4.1rem)!important;line-height:.94!important}.article-prose h2{font-size:clamp(2rem,9vw,2.8rem)!important}.article-prose h3{font-size:clamp(1.55rem,7vw,2.05rem)!important}
 .form-grid{grid-template-columns:1fr!important}.compact-form{padding:28px 20px!important}.compact-form h2{font-size:2.45rem!important}.route-list>div{grid-template-columns:1fr!important;gap:3px!important}
 .footer-meta div{display:flex;flex-wrap:wrap;gap:10px 16px}
 .inst-person{padding-left:0!important;padding-right:0!important}.inst-person-portrait img{max-height:520px;object-position:center 20%}
 .author-metrics,.inst-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.library-hero-markers{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){.homev2-hero h1,.inst-hero h1,.refined-steward h1{font-size:3.18rem!important}.library-books-grid{gap:22px 12px!important}.author-metrics,.inst-metrics{grid-template-columns:1fr!important}.form-note,.form-status{font-size:.84rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* ============================================================
   FINAL BRAND + FOOTER AUDIT 2026-09-01
   ============================================================ */
/* New supplied logo: preserve its natural proportions and eliminate inherited crop rules. */
.brand{width:84px!important;flex:0 0 84px!important;display:flex;align-items:center;height:78px}
.brand img{display:block!important;width:auto!important;height:60px!important;max-width:82px!important;max-height:60px!important;object-fit:contain!important;object-position:center!important}

.site-footer.site-footer-v3{position:relative;background:#06131d!important;color:#d5cabc!important;border-top:0!important;padding:0 0 24px!important;overflow:hidden}
.site-footer-v3::before,.site-footer-v3::after{display:none!important}
.footer-accent{height:1px;background:linear-gradient(90deg,transparent 0%,rgba(207,173,122,.18) 12%,rgba(207,173,122,.72) 50%,rgba(207,173,122,.18) 88%,transparent 100%)}
.footer-lead-v3{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr)!important;gap:88px!important;align-items:end!important;padding-top:54px!important;padding-bottom:46px!important;border-bottom:1px solid rgba(207,173,122,.16)}
.footer-kicker{display:block;font-family:var(--caps);font-size:.62rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-light);margin-bottom:13px}
.footer-lead-copy h2{font-family:var(--serif);font-size:clamp(2.8rem,4vw,4.5rem);font-weight:500;letter-spacing:-.035em;line-height:.92;color:#f4eadc;margin:0}
.footer-lead-note{max-width:470px;justify-self:end}
.site-footer .footer-lead-note p{font-family:var(--serif);font-size:1.06rem!important;line-height:1.6!important;color:#bcb1a3!important;max-width:44ch!important;margin:0 0 20px!important}
.footer-enquiry-link{display:inline-flex!important;align-items:center;gap:11px;font-family:var(--caps)!important;font-size:.64rem!important;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#ead5b2!important;margin:0!important;padding:11px 0 8px;border-bottom:1px solid rgba(207,173,122,.6)}
.footer-enquiry-link span{transition:transform .2s ease}
.footer-enquiry-link:hover span{transform:translateX(4px)}
.footer-directory-v3{display:grid!important;grid-template-columns:1.35fr .72fr .72fr .9fr!important;gap:54px!important;padding-top:40px!important;padding-bottom:42px!important;align-items:start!important}
.site-footer-v3 .footer-brand{max-width:300px!important}
.site-footer-v3 .footer-logo-link{display:inline-block!important;margin:0 0 17px!important}
.site-footer-v3 .footer-brand img{display:block!important;width:auto!important;height:118px!important;max-width:150px!important;max-height:118px!important;object-fit:contain!important;object-position:left center!important;margin:0!important}
.site-footer-v3 .footer-brand p{font-family:var(--sans)!important;font-size:.76rem!important;line-height:1.45!important;letter-spacing:.035em;color:#b3a99c!important;margin:0 0 5px!important}
.footer-micro{display:block;font-family:var(--sans);font-size:.68rem;line-height:1.45;color:#746d65}
.footer-group h4,.site-footer-v3 h4{font-family:var(--caps)!important;font-size:.59rem!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#caa873!important;margin:3px 0 15px!important}
.site-footer-v3 .footer-group a{display:block!important;font-family:var(--sans)!important;font-size:.78rem!important;line-height:1.45!important;color:#c8beb1!important;margin:0 0 9px!important;transition:color .18s ease,transform .18s ease}
.site-footer-v3 .footer-group a:hover{color:#f1dfc1!important;transform:translateX(2px)}
.site-footer-v3 .footer-group a span{font-size:.72em;color:#9f835c;margin-left:2px}
.footer-meta-v3{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:24px!important;border-top:1px solid rgba(207,173,122,.14)!important;padding-top:18px!important;color:#766f67!important;font-family:var(--sans)!important;font-size:.62rem!important;letter-spacing:.02em}
.footer-meta-v3 .footer-location{justify-self:center;color:#8e857b}
.footer-meta-v3 nav{display:flex!important;justify-content:flex-end!important;gap:20px!important}
.footer-meta-v3 a{font-family:var(--sans)!important;font-size:.62rem!important;color:#8e857b!important;margin:0!important}
.footer-meta-v3 a:hover{color:#d7c7ad!important}

@media(max-width:900px){
  .footer-lead-v3{grid-template-columns:1fr!important;gap:20px!important;padding-top:44px!important;padding-bottom:38px!important}
  .footer-lead-note{justify-self:start;max-width:600px}
  .footer-directory-v3{grid-template-columns:1.15fr 1fr 1fr!important;gap:34px 28px!important}
  .site-footer-v3 .footer-brand{grid-column:1/-1!important;border-bottom:1px solid rgba(207,173,122,.12);padding-bottom:24px!important;max-width:none!important}
  .footer-meta-v3{grid-template-columns:1fr auto!important}
  .footer-meta-v3 .footer-location{display:none}
}
@media(max-width:620px){
  .brand{width:66px!important;flex-basis:66px!important;height:72px!important}
  .brand img{width:auto!important;height:52px!important;max-width:64px!important;max-height:52px!important}
  .footer-lead-v3{padding-top:38px!important;padding-bottom:32px!important}
  .footer-lead-copy h2{font-size:2.72rem!important;line-height:.94!important}
  .site-footer .footer-lead-note p{font-size:1rem!important}
  .footer-directory-v3{grid-template-columns:1fr 1fr!important;gap:30px 22px!important;padding-top:30px!important;padding-bottom:34px!important}
  .site-footer-v3 .footer-brand{grid-column:1/-1!important}
  .site-footer-v3 .footer-brand img{height:104px!important;max-width:132px!important;max-height:104px!important}
  .footer-meta-v3{grid-template-columns:1fr!important;gap:12px!important;align-items:start!important}
  .footer-meta-v3 nav{justify-content:flex-start!important;gap:16px!important;flex-wrap:wrap}
}

/* ============================================================
   FINAL VISUAL MICRO POLISH 2026-09-01
   Non-invasive typography, icon and spacing refinements.
   ============================================================ */
/* More deliberate headline wrapping on supported browsers. */
h1,h2,.footer-lead-copy h2,.inst-person-header h3,.inst-role-body h3,.gathering-card h3{text-wrap:balance}
.article-prose p,.intro-prose p,.heritage-split-copy p,.inst-person-copy p,.inst-role-body p,.majlis-gathering-copy p{text-wrap:pretty}

/* Keep numeric credentials visually aligned. */
.inst-metrics strong,.inst-public-proof strong,.art-stat-num,.library-hero-markers strong{font-variant-numeric:tabular-nums lining-nums}

/* Icon geometry should remain crisp and never collapse in narrow layouts. */
.inst-role-icon,.inst-preserve-icon,.inst-public-metric-icon{flex:0 0 auto}
.inst-role-icon svg,.inst-preserve-icon svg,.inst-public-metric-icon svg{display:block}

/* Maintain a quiet placeholder surface while editorial imagery loads. */
.inst-person-portrait,.inst-role-visual,.inst-proof-gallery figure,.majlis-gathering-photo,.heritage-plate{background:#0a1720}
.majlis-gathering-photo,.heritage-plate{overflow:hidden}

/* Fine tune small-screen rhythm without changing the editorial composition. */
@media(max-width:620px){
  .footer-enquiry-link{min-height:44px;align-items:center}
  .site-footer-v3 .footer-group a{margin-bottom:10px!important}
  .footer-group h4,.site-footer-v3 h4{margin-bottom:14px!important}
  .inst-role-icon{margin-top:1px}
}


/* ============================================================
   FINAL USER REPORTED ALIGNMENT CORRECTIONS 2026-09-01
   Header breathing room, home chronology line, Institution hero leading.
   ============================================================ */
/* Header: keep the supplied mark away from the browser edge and give it
   a little more air without making the navigation feel oversized. */
@media (min-width: 761px){
  .nav-shell{
    width:min(1440px,calc(100% - 80px)) !important;
  }
  .brand{
    width:82px !important;
    flex:0 0 82px !important;
    height:78px !important;
  }
  .brand img{
    width:auto !important;
    height:56px !important;
    max-width:78px !important;
    max-height:56px !important;
    object-position:left center !important;
  }
}

/* Home chronology: the rule now sits in the dedicated space between the
   two-line era heading block and the image, so it can never strike text. */
@media (min-width: 981px){
  .homev2-timeline{
    padding-top:28px !important;
  }
  .homev2-era-date{
    min-height:18px !important;
  }
  .homev2-era h3{
    min-height:2.25em !important;
    margin:7px auto 58px !important;
  }
  .homev2-timeline:before{
    top:116px !important;
  }
  .homev2-era:before{
    top:84px !important;
  }
}

/* Institution hero: Cormorant needs more leading at this scale. The wider
   measure preserves the dramatic headline while removing glyph collisions. */
@media (min-width: 981px){
  .inst-hero-copy{
    width:min(720px,58%) !important;
  }
  .inst-hero h1{
    font-size:clamp(4.7rem,6.45vw,7.5rem) !important;
    line-height:.95 !important;
    letter-spacing:-.038em !important;
    max-width:11ch;
  }
}
@media (min-width: 761px) and (max-width: 980px){
  .inst-hero h1{
    line-height:.95 !important;
  }
}
