/* ════════════════════════════════════════════════════════════════════
   FIN10 CONSULTING — STYLESHEET
   Hand-written, dependency-free. Ported from the original Tailwind theme.
   Palette sampled from the logo: navy ink + warm gold on cream paper.
   Display: Fraunces · Body: Hanken Grotesk
   ════════════════════════════════════════════════════════════════════ */

/* ── Design tokens ─────────────────────────────────────────────────── */
:root{
  --ink:#001040;            /* logo navy            */
  --ink-2:#101e50;          /* elevated navy        */
  --paper:#f7f3ea;          /* warm cream           */
  --card:#ffffff;
  --gold:#e0b050;           /* logo gold            */
  --gold-deep:#c09038;      /* deep gold            */
  --slate-body:#5b6576;     /* readable body text   */
  --hairline:rgba(0,16,64,.14);
  --hairline-2:rgba(0,16,64,.08);
  --muted:#ede8dc;

  --radius:1rem;
  --radius-lg:1.25rem;
  --radius-xl:1.5rem;
  --maxw:80rem;             /* 1280px container     */
  --ease:cubic-bezier(.22,1,.36,1);
  --shadow-sm:0 1px 2px rgba(0,16,64,.06);
  --shadow-md:0 10px 30px -10px rgba(0,16,64,.18);
  --shadow-lg:0 24px 60px -20px rgba(0,16,64,.22);
}

/* ── Reset ─────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:"Hanken Grotesk",ui-sans-serif,system-ui,sans-serif;
  font-feature-settings:"ss01","cv11";
  background:var(--paper);
  color:var(--slate-body);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
input,select,textarea{font:inherit}
ul{list-style:none}
::selection{background:var(--gold);color:#fff}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}

h1,h2,h3,h4,h5{
  font-family:"Fraunces",ui-serif,Georgia,serif;
  color:var(--ink);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:1.1;
}

/* ── Layout helpers ────────────────────────────────────────────────── */
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:1.25rem}
@media(min-width:640px){.container{padding-inline:2rem}}
@media(min-width:1024px){.container{padding-inline:3rem}}

.section{padding-block:5rem}
@media(min-width:1024px){.section{padding-block:5rem}}
.section--tight{padding-block:4rem}
@media(min-width:1024px){.section--tight{padding-block:5rem}}

.bg-paper{background:var(--paper);padding-top:30px}
.bg-card{background:var(--card)}
.bg-dark{background:#0F1E50;color:rgba(255,255,255,.82)}
.border-y{border-block:1px solid var(--hairline)}
.border-t{border-top:1px solid var(--hairline)}
.rel{position:relative}

/* 12-col split (image + text feature rows) */
.split{display:grid;gap: 55px;}
@media(min-width:1024px){
  .split{grid-template-columns:repeat(12,1fr);align-items:center}
  .split--top{align-items:start}
  .lg-4{grid-column:span 4}.lg-5{grid-column:span 5}.lg-6{grid-column:span 6}
  .lg-7{grid-column:span 7}.lg-8{grid-column:span 8}
  .lg-order-1{order:1}.lg-order-2{order:2}
}
.order-1{order:1}.order-2{order:2}

/* responsive card grids */
.cards,.cards-2,.cards-3,.cards-4{display:grid;gap:1.25rem;grid-template-columns:1fr}
@media(min-width:768px){.cards-2,.cards-3,.cards-4{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cards-3{grid-template-columns:repeat(3,1fr)}.cards-4{grid-template-columns:repeat(4,1fr)}}

/* ── Type scale ────────────────────────────────────────────────────── */
.display-1{font-size:58px;line-height:1.03;letter-spacing:-.02em}
.display-2{font-size:clamp(1.875rem,4vw,3rem);line-height:1.08;letter-spacing:-.015em}
.display-3{font-size:clamp(1.5rem,3vw,2rem);line-height:1.1}
.h-lg{font-size:1.25rem}
.lead{font-size:1.0625rem;color:var(--slate-body)}
@media(min-width:640px){.lead{font-size:17px}}
.accent{font-style:italic;font-weight:300;color:var(--gold-deep)}
.bg-dark .accent,.on-dark .accent{color:var(--gold)}
.muted-text{color:var(--slate-body)}
.small{font-size:.875rem}
.xs{font-size:.75rem}

.eyebrow{
  font-family:"Hanken Grotesk",sans-serif;
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);font-weight:600;display:inline-block;
}
.eyebrow .num{color:var(--gold-deep);margin-right:.5rem}

/* section heading block */
.heading{max-width:48rem;margin-bottom:3rem}
.heading--center{margin-inline:auto;text-align:center}
.heading p{margin-top:1.25rem}

/* ── Buttons & links ───────────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  border-radius:999px;padding:.875rem 1.5rem;font-weight:500;font-size:.95rem;
  transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
  border:1px solid transparent;line-height:1;
}
.btn svg{width:1.15rem;height:1.15rem}
.btn--lg{padding:1rem 1.75rem;font-size:1rem}
.btn--ink{background:var(--ink);color:#fff;box-shadow:var(--shadow-sm)}
.btn--ink:hover{background:var(--ink-2)}
.btn--gold{background:var(--gold);color:var(--ink)}
.btn--gold:hover{background:#fff}
.btn--outline{border-color:var(--hairline);color:var(--ink)}
.btn--outline:hover{border-color:rgba(192,144,56,.5);color:var(--gold-deep)}
.btn--outline-light{border-color:rgba(255,255,255,.25);color:#fff}
.btn--outline-light:hover{background:rgba(255,255,255,.1)}
.btn--block{width:100%}
.btn[disabled]{opacity:.6;cursor:not-allowed}
.btn .dot{height:.375rem;width:.375rem;border-radius:999px;background:var(--gold)}

/* arrow text-link with hover nudge */
.alink{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);transition:color .2s;font-size: 15px;
    font-weight: 500;}
.alink svg{width:1rem;height:1rem;transition:transform .25s var(--ease)}
.alink:hover{color:var(--gold-deep)}
.alink:hover svg{transform:translate(2px,-2px)}
.alink--back:hover svg{transform:translateX(-2px)}
.on-dark .alink{color:rgba(255,255,255,.7)}
.on-dark .alink:hover{color:var(--gold)}

/* ── Reveal-on-scroll ──────────────────────────────────────────────── */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal-group>*{opacity:0;transform:translateY(16px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal-group.in>*{opacity:1;transform:none}
.reveal-group.in>*:nth-child(1){transition-delay:.0s}
.reveal-group.in>*:nth-child(2){transition-delay:.06s}
.reveal-group.in>*:nth-child(3){transition-delay:.12s}
.reveal-group.in>*:nth-child(4){transition-delay:.18s}
.reveal-group.in>*:nth-child(5){transition-delay:.24s}
.reveal-group.in>*:nth-child(6){transition-delay:.30s}
.reveal-group.in>*:nth-child(7){transition-delay:.36s}
.reveal-group.in>*:nth-child(8){transition-delay:.42s}
@media(prefers-reduced-motion:reduce){
  .reveal,.reveal-group>*{opacity:1!important;transform:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* ════════════════════════════════════════════════════════════════════
   HEADER / NAV
   ════════════════════════════════════════════════════════════════════ */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:#F7F3EA;backdrop-filter:blur(12px);
  border-bottom:1px solid var(--hairline-2);
  padding-block:1rem;transition:padding .3s,box-shadow .3s,background .3s,border-color .3s;
}
.site-header.scrolled{padding-block:.75rem;background:#F7F3EA;border-bottom-color:var(--hairline);box-shadow:0 2px 16px -8px rgba(0,16,64,.2)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}

.brand{display:flex;align-items:center;gap:.7rem;flex-shrink:0}
.brand img{height:2.5rem;width:2.5rem;object-fit:contain;border-radius: 15px;
}
@media(min-width:640px){.brand img{height:2.75rem;width:2.75rem}}
.brand-text{display:none;line-height:1.15}
@media(min-width:640px){.brand-text{display:block}}
.brand-name{font-family:"Fraunces",serif;color:var(--ink);font-size:1rem;font-weight:500}
@media(min-width:1024px){.brand-name{font-size:1.125rem}}
.brand-tag{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}

.nav-desktop{display:none;align-items:center;gap:1.75rem;font-size:.9rem}
@media(min-width:1024px){.nav-desktop{display:flex}}
.nav-desktop a,.nav-trigger{color:var(--ink);transition:color .2s}
.nav-desktop a:hover,.nav-trigger:hover,.nav-desktop a.active{color:var(--gold-deep)}

/* services dropdown */
.nav-svc{position:relative}
.nav-trigger{display:inline-flex;align-items:center;gap:.25rem}
.nav-trigger svg{width:1rem;height:1rem;transition:transform .25s}
.nav-svc.open .nav-trigger svg{transform:rotate(180deg)}
.svc-menu{
  position:absolute;top:calc(100% + .85rem);left:50%;transform:translateX(-50%) translateY(8px);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,transform .2s,visibility .2s;
  z-index:80;
}
.nav-svc.open .svc-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.svc-menu-inner{
  width:min(78vw,675px);background:rgba(255,255,255,.98);border:1px solid rgba(0,16,64,.1);
  border-radius:1.6rem;box-shadow:0 28px 70px -26px rgba(0,16,64,.32);padding:1.15rem;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem 1rem;
}
.svc-menu-all{
  grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;
  border-radius:.85rem;padding:.7rem .85rem;font-size:.72rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-deep) !important;border-bottom:1px solid rgba(0,16,64,.08);
  margin-bottom:.25rem;font-size: 12px;
    font-weight: 500;
}
.svc-menu-all:hover{background:var(--paper)}
.svc-menu-item{
  display:flex;align-items:flex-start;gap:0px;border-radius:.95rem;padding:5px 5px;
  transition:background .2s,transform .2s;
}
.svc-menu-item:hover{background:var(--paper);transform:translateY(-1px)}
.svc-menu-item .n{
  min-width:1.6rem;font-size:.68rem;font-weight:700;color:var(--gold-deep);letter-spacing:.12em;margin-top:.18rem
}
.svc-menu-item .t{color:var(--ink);font-size:13px;font-weight:500;line-height:1.25}
.svc-menu-item:hover .t{color:var(--gold-deep)}
.svc-menu-item .d{
  display:block;font-size:.84rem;color:var(--slate-body);line-height:1.45;
  overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical
}
@media(max-width:1199px){
  .svc-menu{left:50%}
  .svc-menu-inner{width:min(88vw,660px)}
}

.header-cta{display:flex;align-items:center;gap:.6rem}
.btn-talk{display:none}
@media(min-width:768px){
      .btn-talk {
        display: inline-flex;
        align-items: center;
        gap: .75rem;
        /* min-height: 3.15rem; */
        padding: 13px 18px;
        border-radius: 999px;
        background: var(--ink);
        color: #fff;
        font-size: 14px;
        font-weight: 600;
        border: 1px solid rgba(0, 16, 64, .12);
        box-shadow: 0 12px 24px -18px rgba(0, 16, 64, .35);
    }
  .btn-talk:hover{
    background:var(--ink-2);
    color:#fff
  }
  .btn-talk .dot{
    height:.45rem;
    width:.45rem;
    background:#efbb4a;
    box-shadow:0 0 0 4px rgba(239,187,74,.12)
  }
}
.menu-btn{
  display:inline-flex;align-items:center;justify-content:center;height:2.75rem;width:2.75rem;
  border-radius:.5rem;border:1px solid var(--hairline);color:var(--ink);
}
.menu-btn:hover{border-color:rgba(192,144,56,.4)}
.menu-btn svg{width:1.25rem;height:1.25rem}
@media(min-width:1024px){.menu-btn{display:none}}

/* mobile drawer */
.drawer{position:fixed;inset:0;z-index:60;visibility:hidden;pointer-events:none}
.drawer.open{visibility:visible;pointer-events:auto}
.drawer-scrim{position:absolute;inset:0;background:rgba(0,16,64,.4);opacity:0;transition:opacity .3s}
.drawer.open .drawer-scrim{opacity:1}
.drawer-panel{
  position:absolute;top:0;right:0;height:100dvh;width:88%;max-width:24rem;
  background:var(--paper);box-shadow:var(--shadow-lg);
  transform:translateX(100%);transition:transform .3s var(--ease);
  display:flex;flex-direction:column;
}
.drawer.open .drawer-panel{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid var(--hairline)}
.drawer-head span{font-family:"Fraunces",serif;color:var(--ink);font-size:1.125rem}
.drawer-nav{padding:1.25rem;display:flex;flex-direction:column;overflow-y:auto}
.drawer-nav>a{padding-block:.75rem;color:var(--ink);font-size:1.125rem;border-bottom:1px solid var(--hairline)}
.drawer-nav>a.active{color:var(--gold-deep)}
.drawer-svc{margin-top:1rem}
.drawer-svc .eyebrow{margin-bottom:.75rem}
.drawer-svc a{display:flex;justify-content:space-between;padding-block:.625rem;font-size:.875rem;color:var(--ink);border-bottom:1px solid var(--hairline-2)}
.drawer-svc a .n{color:var(--gold-deep);margin-right:.5rem}

/* ════════════════════════════════════════════════════════════════════
   HERO  (home)
   ════════════════════════════════════════════════════════════════════ */
.section-dark{background:var(--ink);color:rgba(236,240,247,.93);position:relative;overflow:hidden}

.hero{position:relative;min-height:88vh;display:flex;align-items:center;
  padding-top:7rem;padding-bottom:4rem;overflow:hidden;color:#fff}
@media(min-width:640px){.hero{min-height:92vh;padding-top:8rem;padding-bottom:5rem}}
.hero-img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;opacity:.4}
.hero-grad{position:absolute;inset:0;background:linear-gradient(115deg,rgba(12,30,51,.95) 0%,rgba(12,30,51,.82) 40%,rgba(16,41,74,.7) 100%)}
.hero-glow{position:absolute;inset:0;opacity:.5;pointer-events:none;
  background:radial-gradient(700px 500px at 85% 20%,rgba(191,155,87,.22),transparent 60%)}
.hero .container{position:relative}
.hero h1{color:#fff}
.hero .lead{color:rgba(255,255,255,.75)}
.hero-points{margin-top:2.25rem;display:flex;flex-wrap:wrap;gap:.625rem 1.5rem;font-size:.875rem;color:rgba(255,255,255,.7)}
.hero-points li{display:inline-flex;align-items:center;gap:.5rem}
.hero-points svg{width:1rem;height:1rem;color:var(--gold)}
.hero-actions{margin-top:2.25rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.hero-card{
  position:relative;margin-left:auto;max-width:24rem;border-radius:1.5rem;
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);
  backdrop-filter:blur(12px);padding:1.75rem;
}
.hero-card p{color:#fff;font-size:1.125rem;line-height:1.35;font-family:"Fraunces",serif}
.hero-card .rule{margin-top:1.5rem;height:1px;background:rgba(255,255,255,.1)}
.hero-card .meta{margin-top:1.25rem;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.hide-lg-down{display:none}
@media(min-width:1024px){.hide-lg-down{display:block}}

/* highlights band */
.highlights{display:grid;grid-template-columns:repeat(2,1fr)}
@media(min-width:768px){.highlights{grid-template-columns:repeat(4,1fr)}}
.highlights>div{padding:2.5rem 1.5rem;text-align:center;border-right:1px solid rgba(255,255,255,.1)}
.highlights>div:last-child{border-right:none}
@media(max-width:767px){.highlights>div:nth-child(2n){border-right:none}}
.highlights .k{font-family:"Fraunces",serif;color:var(--gold);font-size:1.875rem}
@media(min-width:640px){.highlights .k{font-size:2.25rem}}
.highlights .v{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.6)}
@media(min-width:640px){.highlights .v{font-size:14px}}

/* ════════════════════════════════════════════════════════════════════
   PAGE HERO (interior pages)
   ════════════════════════════════════════════════════════════════════ */
.page-hero{position:relative;padding-top:7rem;padding-bottom:4rem;overflow:hidden;color:#fff;background: oklch(20.1% .095 262)}
@media(min-width:640px){.page-hero{padding-top:8rem;padding-bottom:5rem}}
@media(min-width:1024px){.page-hero{padding-top:11rem;padding-bottom:7rem}}
.page-hero .hero-img{opacity:.35}
.page-hero-grad{position:absolute;inset:0;background:linear-gradient(120deg, rgba(12, 30, 51, 0.92) 0%, rgba(12, 30, 51, 0.78) 50%, rgba(16, 41, 74, 0.85) 100%)}
.page-hero .container{position:relative}
.page-hero h1{color:#fff;max-width:56rem}
.page-hero .lead{color:rgba(255,255,255,.75);margin-top:1.5rem;max-width:42rem}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.75rem;color:rgba(255,255,255,.6);margin-bottom:1.25rem}
.crumbs a:hover{color:var(--gold)}
.crumbs .cur{color:rgba(255,255,255,.8)}
.crumbs svg{width:.75rem;height:.75rem}

/* ════════════════════════════════════════════════════════════════════
   CARDS
   ════════════════════════════════════════════════════════════════════ */
.icon-box{
  height:2.75rem;width:2.75rem;border-radius:.6rem;background:var(--ink);color:var(--gold);
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
}
.icon-box svg{width:1.25rem;height:1.25rem}

/* generic lift card (value props, industries) */
.lift{
  border-radius:1.25rem;border:1px solid var(--hairline);background:var(--card);padding:1.75rem;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.lift:hover{transform:translateY(-4px);border-color:rgba(224,176,80,.4);box-shadow:var(--shadow-md)}
.lift h3,.lift h4{margin-top:1.5rem;font-size:1.125rem;color:var(--ink)}
.lift p{margin-top:.5rem;font-size:.875rem;color:var(--slate-body)}
.lift--paper{background:var(--paper)}

/* industry card */
.ind-card{position:relative}
.ind-card .icon-box{transition:transform .3s}
.ind-card:hover .icon-box{transform:scale(1.1) rotate(3deg)}
.ind-card .corner{position:absolute;top:1.5rem;right:1.5rem;width:1rem;height:1rem;color:var(--gold-deep);opacity:0;transition:opacity .3s,transform .3s}
.ind-card:hover .corner{opacity:1;transform:translate(2px,-2px)}

/* service card (image header) */
.svc-card{
  position:relative;display:flex;flex-direction:column;border-radius:1.25rem;background:var(--card);
  border:1px solid var(--hairline);overflow:hidden;height:100%;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.svc-card:hover{transform:translateY(-4px);border-color:rgba(224,176,80,.5);box-shadow:var(--shadow-lg)}
.svc-card-media{position:relative;height:11rem;overflow:hidden;background:var(--ink)}
.svc-card-media img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;opacity:.7;transition:opacity .7s var(--ease),transform .7s var(--ease)}
.svc-card:hover .svc-card-media img{opacity:.9;transform:scale(1.05)}
.svc-card-media .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,16,64,.15) 0%,rgba(0,16,64,.55) 100%)}
.svc-card-icon{position:absolute;top:1rem;left:1rem;height:2.75rem;width:2.75rem;border-radius:.75rem;
  background:rgba(247,243,234,.95);backdrop-filter:blur(4px);color:var(--ink);
  display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.4);transition:background .25s,color .25s}
.svc-card-icon svg{width:1.25rem;height:1.25rem}
.svc-card:hover .svc-card-icon{background:var(--gold);color:var(--ink)}
.svc-card-num{position:absolute;top:1.25rem;right:1.25rem;font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600}
.svc-card-body{display:flex;flex-direction:column;flex:1;padding:1.75rem}
.svc-card-body h3{font-size:1.25rem;color:var(--ink);line-height:1.25}
.svc-card-body p{margin-top:.75rem;font-size:.875rem;color:var(--slate-body);flex:1}
.svc-card-more{margin-top:1.5rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--ink);transition:color .25s}
.svc-card-more svg{width:1rem;height:1rem;transition:transform .25s var(--ease)}
.svc-card:hover .svc-card-more{color:var(--gold-deep)}
.svc-card:hover .svc-card-more svg{transform:translate(2px,-2px)}

/* ── framed image (feature rows) ───────────────────────────────────── */
.frame{position:relative}
.frame-aura{position:absolute;inset:-.75rem;border-radius:1.5rem;background:linear-gradient(135deg,rgba(224,176,80,.25),transparent);opacity:0;transition:opacity .5s}
.frame:hover .frame-aura{opacity:1}
.frame-img{position:relative;border-radius:1.5rem;overflow:hidden;border:1px solid var(--hairline);box-shadow:var(--shadow-md)}
.frame-img img{width:100%;object-fit:cover;transition:transform .7s var(--ease)}
.frame:hover .frame-img img{transform:scale(1.03)}
.frame-img .scrim{position:absolute;inset:0;background:linear-gradient(45deg,rgba(0,16,64,.4),transparent)}
.img-h-md img{height:360px}
@media(min-width:1024px){.img-h-md img{height:480px}}
.img-tag{position:absolute;left:1.5rem;bottom:1.5rem;right:1.5rem;color:#fff}
.pill{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;background:var(--gold);color:var(--ink);
  padding:.25rem .75rem;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500}
.pill svg{width:.85rem;height:.85rem}
.img-tag-title{margin-top:.75rem;font-family:"Fraunces",serif;font-size:1.25rem;line-height:1.35;max-width:24rem}

/* floating badge cards on images */
.float-card{position:absolute;border-radius:1.25rem;padding:1.5rem;max-width:18rem;box-shadow:var(--shadow-lg);display:none}
@media(min-width:768px){.float-card{display:block}}
.float-card--ink{background:var(--ink);color:#fff;border:1px solid rgba(255,255,255,.1);bottom:-1.5rem;left:-1.5rem}
.float-card--paper{background:var(--paper);border:1px solid var(--hairline);bottom:-1.5rem;right:-1.5rem;max-width:14rem;padding:1.25rem}
.float-card .ft{font-family:"Fraunces",serif;line-height:1.35}
.float-card--ink .ft{color:#fff;font-size:1.125rem}
.float-card--paper .ft{color:var(--ink);font-size:1rem}

/* small stat badge (industries) */
.stat-badge{position:absolute;bottom:-1.25rem;right:-1.25rem;display:none;align-items:center;gap:.75rem;
  border-radius:1.25rem;background:var(--ink);color:#fff;padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-md)}
@media(min-width:768px){.stat-badge{display:flex}}
.stat-badge .big{font-family:"Fraunces",serif;color:var(--gold);font-size:1.5rem}
.stat-badge .lbl{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7);line-height:1.2}

/* ── checklist ─────────────────────────────────────────────────────── */
.check-list{display:flex;flex-direction:column;gap:1rem}
.check-list li{display:flex;gap:.75rem;color:var(--slate-body)}
.check-list .tick{margin-top:.15rem;height:1.25rem;width:1.25rem;border-radius:999px;background:rgba(224,176,80,.15);color:var(--gold-deep);
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.check-list .tick svg{width:.8rem;height:.8rem}

/* offering grid (service detail) */
.offerings{display:grid;gap:1rem}
@media(min-width:640px){.offerings{grid-template-columns:repeat(2,1fr)}}
.offerings li{display:flex;align-items:flex-start;gap:.75rem;border-radius:.85rem;border:1px solid var(--hairline);
  padding:1.25rem;background:rgba(247,243,234,.4)}
.offerings .tick{margin-top:.1rem;height:1.5rem;width:1.5rem;border-radius:999px;background:rgba(224,176,80,.15);color:var(--gold-deep);
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.offerings .tick svg{width:.9rem;height:.9rem}
.offerings li span:last-child{color:var(--ink);font-size:.875rem;line-height:1.55}

/* sticky side card */
.service-overview{align-items:start}
.service-overview-intro .display-2{
  max-width:31rem;
  font-size:clamp(2.45rem,5vw,2.4rem);
  line-height:1.08
}
.service-overview-copy{
  max-width:49rem;
  padding-top:.35rem
}
.service-overview-copy .lead{
  font-size:1.08rem;
  line-height:1.72;
  color:#56657c
}
@media(min-width:1024px){
  .service-overview-copy .lead{font-size:1.1rem}
}
.service-overview-link{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  font-size:1rem;
  color:var(--ink)
}
.service-overview-link svg{
  width:1rem;
  height:1rem
}
.side-card{position:sticky;top:7rem;border-radius:1.25rem;border:1px solid var(--hairline);background:var(--paper);padding:2rem}
.side-card h3{font-size:1.5rem;color:var(--ink);line-height:1.3;margin-bottom:1rem}
.side-card p{color:var(--slate-body);font-size:.875rem;line-height:1.6}
.service-offerings-title{
  font-size:clamp(2.35rem,5vw,3rem);
  line-height:1.06
}
.service-audience-card{
  padding:2.4rem 2.55rem;
  border-radius:1.9rem
}
.service-audience-card .eyebrow{
  margin-bottom:1.35rem;
  letter-spacing:.28em
}
.service-audience-card h3{
  font-size:clamp(1rem,3.4vw,1.75rem);
  line-height:1.14;
  margin-bottom:1.5rem
}
.service-audience-card h3 .accent{
  color:var(--ink);
  font-style:italic;
  font-weight:300
}
.service-audience-card p{
  font-size:1rem;
  line-height:1.72;
  max-width:28rem
}
.service-audience-card .btn{
  min-width:15.5rem
}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--hairline);background:var(--card);
  padding:.5rem 1rem;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink)}
.chip .dot{height:.375rem;width:.375rem;border-radius:999px;background:var(--gold);margin-right:.5rem}

/* ════════════════════════════════════════════════════════════════════
   CTA SECTION
   ════════════════════════════════════════════════════════════════════ */
.cta-band{padding-block:4rem}
@media(min-width:640px){.cta-band{padding-block:5rem}}
@media(min-width:1024px){.cta-band{padding-block:3rem 4rem}}
.cta-card{
  position:relative;overflow:hidden;border-radius:1.5rem;border:1px solid rgba(224,176,80,.3);
  background:linear-gradient(135deg,#f6e7c1 0%,#efd7a2 50%,#e0b050 100%);
  padding:2.5rem;box-shadow:0 24px 60px -24px rgba(224,176,80,.4);
}
@media(min-width:640px){.cta-card{padding:3.5rem}}
@media(min-width:1024px){.cta-card{padding:4rem}}
.cta-glow{position:absolute;inset:0;opacity:.4;pointer-events:none;mix-blend-mode:overlay;
  background:radial-gradient(700px 360px at 85% 110%,rgba(255,255,255,.55),transparent 60%),radial-gradient(500px 320px at 5% 0%,rgba(0,16,64,.18),transparent 60%)}
.cta-card .inner{position:relative;display:grid;gap:2.5rem;align-items:center}
@media(min-width:1024px){.cta-card .inner{grid-template-columns:repeat(12,1fr)}}
.cta-card .eyebrow{color:rgba(0,16,64,.7)}
.cta-card h2{color:var(--ink);font-size:clamp(1.875rem,4vw,3rem);line-height:1.05}
.cta-card h2 .accent{color:rgba(0,16,64,.8)}
.cta-card p{margin-top:1.25rem;color:rgba(0,16,64,.8);max-width:36rem}
@media(min-width:1024px){.cta-justify-end{justify-self:end}}

/* ════════════════════════════════════════════════════════════════════
   CLIENTS
   ════════════════════════════════════════════════════════════════════ */
.client-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media(min-width:640px){.client-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}
@media(min-width:1024px){.client-grid{grid-template-columns:repeat(6,1fr)}}
.client-cell{display:flex;align-items:center;justify-content:center;border-radius:.85rem;border:1px solid var(--hairline);
  background:var(--card);aspect-ratio:3/2;padding:1.5rem;transition:transform .3s,border-color .3s,box-shadow .3s}
.client-cell:hover{transform:translateY(-4px);border-color:rgba(224,176,80,.4);box-shadow:var(--shadow-md)}
.client-mark{font-family:"Fraunces",serif;font-size:1.15rem;letter-spacing:.02em;color:var(--ink);opacity:.78;transition:opacity .3s}
.client-cell:hover .client-mark{opacity:1;color:var(--gold-deep)}
.logo-placeholder{aspect-ratio:3/1.4;border-radius:.75rem;border:1px dashed var(--hairline);background:var(--card);
  display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;color:rgba(91,101,118,.6);gap:.5rem;transition:border-color .3s,color .3s}
.logo-placeholder:hover{border-color:rgba(224,176,80,.5);color:var(--gold-deep)}
.logo-placeholder svg{width:1rem;height:1rem}
.industries-trusted{
  max-width:28rem;
  margin:0 auto 2.75rem;
  text-align:center
}
.industries-trusted .eyebrow{
  letter-spacing:.3em
}
.industries-trusted-note{
  margin-top:.75rem;
  font-size:1rem;
  color:#5e697d
}
.industries-logo-marquee{
  overflow:hidden;
  width:100%;
  mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.96) 8%,rgba(0,0,0,.96) 92%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.96) 8%,rgba(0,0,0,.96) 92%,transparent 100%)
}
.industries-logo-track{
  display:flex;
  align-items:stretch;
  gap:1.25rem;
  width:max-content;
  animation:industries-logo-scroll 26s linear infinite
}
.industries-logo-track:hover{
  animation-play-state:paused
}
.industries-logo-marquee .logo-placeholder{
  aspect-ratio:3/1.45;
  flex:0 0 clamp(13rem,18vw,15rem);
  border-radius:1.4rem;
  border-style:dashed;
  border-color:rgba(0,16,64,.14);
  font-size:.95rem;
  color:#97a0af;
  gap:.7rem
}
.industries-logo-marquee .logo-placeholder svg{

  width:1.15rem;
  height:1.15rem
}

.logo-placeholder img{
  height: 150px;
  width: 150px;
  object-fit: contain;
}

/* ════════════════════════════════════════════════════════════════════
   FAQ ACCORDION
   ════════════════════════════════════════════════════════════════════ */
.faq-item{border-bottom:1px solid var(--hairline)}
.faq-item:last-child{border-bottom:none}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;font-weight: 700;
  font-family:"Fraunces",serif;color:var(--ink);font-size:1rem;padding-block:1.25rem;transition:color .2s}
@media(min-width:640px){.faq-q{font-size:1.125rem}}
.faq-q:hover{color:var(--gold-deep)}
.faq-q .chev{width:1.1rem;height:1.1rem;flex-shrink:0;transition:transform .3s;color:#001040}
.faq-item.open .faq-q .chev{transform:rotate(180deg)}
.faq-a{overflow:hidden;max-height:0;transition:max-height .35s var(--ease)}
.faq-a-inner{color:var(--slate-body);font-size:.95rem;line-height:1.7;padding-bottom:1.25rem}
.faq-sticky{position:static}
@media(min-width:1024px){.faq-sticky{position:sticky;top:7rem}}
.industries-logo-marquee .logo-placeholder svg{
  width:1.15rem;
  height:1.15rem
}
@keyframes industries-logo-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - .625rem))}
}
/* ════════════════════════════════════════════════════════════════════
   FORMS
   ════════════════════════════════════════════════════════════════════ */
.panel{border-radius:1.5rem;border:1px solid var(--hairline);background:var(--card);padding:1.75rem}
@media(min-width:640px){.panel{padding:2.5rem}}
.form-grid{display:grid;gap:1.25rem;margin-top:2rem}
.form-row{display:grid;gap:1.25rem}
@media(min-width:640px){.form-row{grid-template-columns:repeat(2,1fr)}}
.field{display:block}
.field-label{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--slate-body);margin-bottom:.4rem;display:inline-block}
.field-label .req{color:var(--gold-deep)}
.form-input{
  width:100%;background:var(--paper);border:1px solid var(--hairline);border-radius:.75rem;
  padding:.75rem 1rem;font-size:.95rem;color:var(--ink);transition:border-color .2s;
}
.form-input:focus{outline:none;border-color:var(--gold)}
textarea.form-input{resize:vertical;min-height:7rem}
.note{font-size:.78rem;color:var(--slate-body)}
.form-ok{border-radius:.85rem;background:rgba(224,176,80,.12);border:1px solid rgba(224,176,80,.35);
  color:var(--gold-deep);padding:.85rem 1rem;font-size:.9rem}
.form-err{border-radius:.85rem;background:rgba(200,40,40,.08);border:1px solid rgba(200,40,40,.25);
  color:#b23b3b;padding:.85rem 1rem;font-size:.9rem}
.contact-success-popup{
  position:fixed;
  inset:0;
  z-index:90;
  display:grid;
  place-items:center;
  padding:1.25rem;
  opacity:0;
  pointer-events:none;
  transition:opacity .22s var(--ease);
}
.contact-success-popup.open{
  opacity:1;
  pointer-events:auto;
}
.contact-success-popup[hidden]{display:none}
.contact-success-popup__scrim{
  position:absolute;
  inset:0;
  background:rgba(0,16,64,.56);
  backdrop-filter:blur(5px);
}
.contact-success-popup__card{
  position:relative;
  width:min(100%,28rem);
  padding:2rem;
  border-radius:1.5rem;
  border:1px solid rgba(224,176,80,.34);
  background:var(--card);
  box-shadow:var(--shadow-lg);
  text-align:center;
  transform:translateY(10px) scale(.98);
  transition:transform .22s var(--ease);
}
.contact-success-popup.open .contact-success-popup__card{
  transform:translateY(0) scale(1);
}
.contact-success-popup__mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:3.75rem;
  height:3.75rem;
  margin-inline:auto;
  border-radius:999px;
  background:rgba(224,176,80,.16);
  color:var(--gold-deep);
  font-weight:700;
  font-size:1.4rem;
}
.contact-success-popup__card h3{
  margin:.95rem 0 .5rem;
  font-family:"Fraunces",serif;
  color:var(--ink);
  font-size:2rem;
  line-height:1.1;
}
.contact-success-popup__card p{
  margin:0;
  color:var(--slate-body);
  line-height:1.6;
}
.contact-success-popup__close{
  position:absolute;
  top:.85rem;
  right:.85rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.4rem;
  height:2.4rem;
  border-radius:999px;
  border:1px solid var(--hairline);
  background:var(--paper);
  color:var(--ink);
  cursor:pointer;
}
.contact-success-popup__close:hover{
  border-color:rgba(224,176,80,.55);
  color:var(--gold-deep);
}

/* contact detail card */
.contact-card{position:relative;overflow:hidden;border-radius:1.5rem;border:1px solid var(--hairline);
  background:var(--ink);color:#fff;padding:1.75rem}
@media(min-width:640px){.contact-card{padding:2.25rem}}
.contact-card .glow{position:absolute;inset:0;opacity:.4;pointer-events:none;
  background:radial-gradient(400px 250px at 100% 0%,rgba(191,155,87,.25),transparent 60%)}
.contact-card .inner{position:relative}
.contact-list{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.25rem;font-size:.9rem}
.contact-list li{display:flex;gap:.75rem}
.contact-list svg{width:1.25rem;height:1.25rem;color:var(--gold);flex-shrink:0;margin-top:.15rem}
.contact-list .lbl{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:.25rem}
.contact-list a:hover{color:var(--gold)}
.map-wrap{border-radius:1.5rem;overflow:hidden;border:1px solid var(--hairline)}
.map-wrap iframe{display:block;width:100%;height:320px;border:0}
.file-trigger{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--slate-body);font-size:.875rem}
.file-trigger:hover{border-color:var(--gold)}
.file-trigger svg{width:1rem;height:1rem;color:var(--gold-deep)}
.file-trigger .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-trigger input{display:none}

/* ════════════════════════════════════════════════════════════════════
   JOBS
   ════════════════════════════════════════════════════════════════════ */
.job-toolbar{border-radius:1.25rem;border:1px solid var(--hairline);background:var(--card);padding:1.25rem;margin-bottom:2.5rem}
@media(min-width:640px){.job-toolbar{padding:1.5rem}}
.job-toolbar .row{display:flex;flex-direction:column;gap:1rem}
@media(min-width:1024px){.job-toolbar .row{flex-direction:row;align-items:center}}
.search-wrap{position:relative;flex:1}
.search-wrap svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--slate-body)}
.search-wrap input{width:100%;border-radius:999px;border:1px solid var(--hairline);background:var(--paper);
  padding:.75rem 1rem .75rem 2.75rem;font-size:.875rem;color:var(--ink)}
.search-wrap input:focus{outline:none;border-color:var(--gold)}
.filters{display:flex;flex-wrap:wrap;gap:.5rem}
.filter{padding:.5rem 1rem;border-radius:999px;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;
  border:1px solid var(--hairline);color:var(--slate-body);transition:.2s}
.filter:hover{border-color:var(--gold);color:var(--gold-deep)}
.filter.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.job-count{margin-bottom:1.5rem;font-size:.875rem;color:var(--slate-body)}
.job-count b{color:var(--ink);font-weight:500}
.job-list{display:grid;gap:1.25rem}
.job-card{border-radius:1.25rem;border:1px solid var(--hairline);background:var(--card);padding:1.5rem;
  transition:border-color .35s var(--ease),box-shadow .35s var(--ease)}
@media(min-width:1024px){.job-card{padding:2rem}}
.job-card:hover{border-color:rgba(224,176,80,.4);box-shadow:var(--shadow-md)}
.job-card .top{display:flex;flex-direction:column;gap:1.5rem}
@media(min-width:1024px){.job-card .top{flex-direction:row;align-items:flex-start;gap:2.5rem}}
.job-main{flex:1}
.job-fn{display:inline-flex;align-items:center;gap:.4rem;font-size:.625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}
.job-fn svg{width:.75rem;height:.75rem}
.job-card h3{margin-top:.5rem;font-size:1.25rem;color:var(--ink);line-height:1.2}
@media(min-width:640px){.job-card h3{font-size:1.5rem}}
.job-meta{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.875rem;color:var(--slate-body)}
.job-meta span{display:inline-flex;align-items:center;gap:.4rem}
.job-meta svg{width:1rem;height:1rem;color:var(--gold-deep)}
.job-desc{margin-top:1rem;font-size:.875rem;color:var(--slate-body);line-height:1.6}
.job-toggle{margin-top:1rem;display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;color:var(--ink);transition:color .2s}
.job-toggle:hover{color:var(--gold-deep)}
.job-toggle svg{width:1rem;height:1rem}
.job-details{display:none;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--hairline);gap:1.5rem;
  grid-template-columns:1fr}
@media(min-width:640px){.job-details{grid-template-columns:repeat(2,1fr)}}
.job-card.open .job-details{display:grid}
.job-details .eyebrow{margin-bottom:.75rem;display:block}
.job-bullets{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:var(--slate-body)}
.job-bullets li{display:flex;gap:.5rem}
.job-bullets li::before{content:"";margin-top:.5rem;height:.25rem;width:.25rem;border-radius:999px;background:var(--gold);flex-shrink:0}
.job-apply{flex-shrink:0}
@media(min-width:1024px){.job-apply{text-align:right}}
.empty{border-radius:1.25rem;border:1px dashed var(--hairline);background:var(--card);padding:3rem;text-align:center;color:var(--slate-body)}

/* apply modal */
.modal{position:fixed;inset:0;z-index:70;display:none;align-items:flex-end;justify-content:center;padding:0;
  background:rgba(0,16,64,.6);backdrop-filter:blur(4px)}
@media(min-width:640px){.modal{align-items:center;padding:1.5rem}}
.modal.open{display:flex}
.modal-card{width:100%;background:var(--paper);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);
  border-radius:1.5rem 1.5rem 0 0;max-height:92vh;overflow-y:auto}
@media(min-width:640px){.modal-card{max-width:32rem;border-radius:1.5rem}}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--hairline)}
.modal-head h2{font-family:"Fraunces",serif;font-size:1.5rem;color:var(--ink);line-height:1.2}
.modal-head .sub{font-size:.75rem;color:var(--slate-body);margin-top:.25rem}
.modal-close{height:2.5rem;width:2.5rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}
.modal-close:hover{background:var(--card)}
.modal-close svg{width:1.25rem;height:1.25rem}
.modal-body{padding:1.5rem}
.apply-ok{padding:2.5rem;text-align:center}
.apply-ok .mark{margin-inline:auto;height:3.5rem;width:3.5rem;border-radius:999px;background:rgba(224,176,80,.15);
  color:var(--gold-deep);display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem}

/* ════════════════════════════════════════════════════════════════════
   BLOG
   ════════════════════════════════════════════════════════════════════ */
.post-card{display:block;height:100%;border-radius:1.25rem;overflow:hidden;border:1px solid var(--hairline);
  background:var(--card);transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.post-card:hover{transform:translateY(-4px);border-color:rgba(224,176,80,.4);box-shadow:var(--shadow-md)}
.post-media{overflow:hidden;aspect-ratio:16/10}
.post-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.post-card:hover .post-media img{transform:scale(1.05)}
.post-body{padding:1rem 1.5rem}
.post-cat{font-size:.625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}
.post-body h3{margin-top:.75rem;font-size:1.125rem;color:var(--ink);line-height:1.3;transition:color .2s}
.post-card:hover .post-body h3{color:var(--gold-deep)}
.post-excerpt{margin-top:.5rem;font-size:.875rem;color:var(--slate-body);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-meta{margin-top:1.25rem;display:flex;align-items:center;gap:.5rem;font-size:.6875rem;color:var(--slate-body)}
.post-meta svg{width:.75rem;height:.75rem}

/* featured post */
.featured{display:grid;gap:2rem;align-items:center;border-radius:1.5rem;overflow:hidden;border:1px solid var(--hairline);
  background:var(--card);padding:1.25rem;transition:border-color .35s,box-shadow .35s}
@media(min-width:1024px){.featured{grid-template-columns:repeat(12,1fr);gap:3rem;padding:2rem}}
.featured:hover{border-color:rgba(224,176,80,.4);box-shadow:var(--shadow-md)}
.featured-media{overflow:hidden;border-radius:1.25rem}
.featured-media img{width:100%;height:260px;object-fit:cover;transition:transform .7s var(--ease)}
@media(min-width:640px){.featured-media img{height:360px}}
@media(min-width:1024px){.featured-media img{height:440px}}
.featured:hover .featured-media img{transform:scale(1.03)}
.featured h2{font-size:clamp(1.5rem,3vw,2.25rem);color:var(--ink);line-height:1.1;transition:color .2s}
.featured:hover h2{color:var(--gold-deep)}
.featured .meta{margin-top:1.5rem;display:flex;gap:1.25rem;font-size:.75rem;color:var(--slate-body)}
.featured .meta span{display:inline-flex;align-items:center;gap:.4rem}
.featured .meta svg{width:.85rem;height:.85rem}

/* blog detail */
.article-hero{position:relative;padding-top:7rem;padding-bottom:3rem;overflow:hidden;color:#fff;background:#001040}
@media(min-width:640px){.article-hero{padding-top:8rem;padding-bottom:4rem}}
@media(min-width:1024px){.article-hero{padding-top:9rem;padding-bottom:5rem}}
.article-hero .glow{position:absolute;inset:0;opacity:.4;pointer-events:none;
  background:radial-gradient(700px 400px at 80% 0%,rgba(191,155,87,.18),transparent 60%)}
.article-hero h1{color:#fff;font-size:clamp(1.875rem,5vw,3.5rem);max-width:56rem}
.article-meta{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;font-size:.875rem;color:rgba(255,255,255,.7)}
.article-meta span{display:inline-flex;align-items:center;gap:.5rem}
.article-meta svg{width:1rem;height:1rem;color:var(--gold)}
.article-img{margin-top:-3rem;position:relative;z-index:2}
@media(min-width:640px){.article-img{margin-top:-4rem}}
@media(min-width:1024px){.article-img{margin-top:-5rem}}
.article-img-inner{border-radius:1.5rem;overflow:hidden;border:1px solid var(--hairline);box-shadow:var(--shadow-md)}
.article-img-inner img{width:100%;height:260px;object-fit:cover}
@media(min-width:640px){.article-img-inner img{height:400px}}
@media(min-width:1024px){.article-img-inner img{height:480px}}
.article-grid{display:grid;gap:2.5rem}
@media(min-width:1024px){.article-grid{grid-template-columns:repeat(12,1fr);gap:3.5rem}}
.prose{min-width:0;display:flex;flex-direction:column;gap:1.5rem;font-size:1.05rem;line-height:1.85;color:rgba(0,16,64,.85)}
.prose .standfirst{font-size:1.35rem;color:var(--ink);font-family:"Fraunces",serif;line-height:1.4}
@media(min-width:640px){.prose .standfirst{font-size:1.5rem}}
.tag-row{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--hairline)}
.tag{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;border:1px solid var(--hairline);
  background:var(--card);padding:.4rem .85rem;font-size:.75rem;color:var(--ink);transition:.2s}
.tag:hover{border-color:rgba(224,176,80,.5);color:var(--gold-deep)}
.tag svg{width:.75rem;height:.75rem;color:var(--gold-deep)}
.share-box{margin-top:2.5rem;border-radius:1.25rem;border:1px solid var(--hairline);background:var(--card);padding:1.5rem;
  display:flex;flex-direction:column;gap:1rem}
@media(min-width:640px){.share-box{flex-direction:row;align-items:center;justify-content:space-between}}
.share-box .lead-row{display:flex;align-items:center;gap:.75rem}
.share-box .lead-row>svg{width:1.25rem;height:1.25rem;color:var(--gold-deep)}
.share-box .t{color:var(--ink);font-family:"Fraunces",serif;font-size:1rem}
.share-box .s{font-size:.75rem;color:var(--slate-body)}
.share-actions{display:flex;gap:.5rem}
.share-btn{height:2.5rem;width:2.5rem;border-radius:999px;border:1px solid var(--hairline);background:var(--paper);
  display:inline-flex;align-items:center;justify-content:center;color:var(--ink);transition:.2s}
.share-btn:hover{border-color:var(--gold);color:var(--gold-deep)}
.share-btn svg{width:1rem;height:1rem}

.sidebar{display:flex;flex-direction:column;gap:2rem}
@media(min-width:1024px){.sidebar{position:sticky;top:7rem;align-self:start}}
.side-box{border-radius:1.25rem;border:1px solid var(--hairline);background:var(--card);padding:1.5rem}
.author-row{display:flex;align-items:center;gap:1rem}
.avatar{height:3rem;width:3rem;border-radius:999px;background:var(--ink);color:var(--gold);
  display:inline-flex;align-items:center;justify-content:center;font-family:"Fraunces",serif;font-size:1.125rem}
.author-row .nm{color:var(--ink);font-family:"Fraunces",serif}
.author-row .rl{font-size:.75rem;color:var(--slate-body)}
.cat-list li a{display:flex;align-items:center;justify-content:space-between;border-radius:.6rem;padding:.5rem .75rem;
  font-size:.875rem;color:var(--ink);transition:.2s;margin-bottom:.15rem}
.cat-list li a:hover{background:var(--paper);color:var(--gold-deep)}
.cat-list li a.active{background:var(--ink);color:#fff}
.cat-list .c{font-size:.75rem;color:var(--slate-body)}
.cat-list a.active .c{color:var(--gold)}
.mini-post{display:flex;gap:.75rem}
.mini-post+.mini-post{margin-top:1.25rem}
.mini-post .thumb{flex-shrink:0;width:5rem;height:5rem;border-radius:.6rem;overflow:hidden;background:var(--ink)}
.mini-post .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mini-post:hover .thumb img{transform:scale(1.1)}
.mini-post .pc{font-size:.625rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-deep)}
.mini-post .pt{font-size:.875rem;color:var(--ink);line-height:1.3;margin-top:.25rem;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}
.mini-post:hover .pt{color:var(--gold-deep)}
.mini-post .pm{font-size:.6875rem;color:var(--slate-body);margin-top:.35rem}
.side-cta{border-radius:1.25rem;background:var(--ink);color:#fff;padding:1.5rem;position:relative;overflow:hidden}
.side-cta .glow{position:absolute;inset:0;opacity:.4;pointer-events:none;
  background:radial-gradient(300px 200px at 100% 0%,rgba(191,155,87,.3),transparent 60%)}
.side-cta .inner{position:relative}
.side-cta .ft{font-family:"Fraunces",serif;font-size:1.125rem;line-height:1.35}

/* pull quote (about) */
.pull{padding-block:5rem;background:#001040}
.pull .container{text-align:center}
.pull .eyebrow{
  margin-bottom:2rem;
  color:var(--gold);
  letter-spacing:.28em
}
.pull .q{font-family:"Fraunces",serif;color:#fff;font-size:clamp(2.2rem,4.9vw,3.1rem);line-height:1.14;text-align:center;max-width:58rem;margin-inline:auto;letter-spacing:0}
.pull .q .accent{color:var(--gold)}
.pull .rule{margin:2.35rem auto 0;height:2px;width:3.8rem;background:var(--gold)}

/* ════════════════════════════════════════════════════════════════════
   404 / ERROR
   ════════════════════════════════════════════════════════════════════ */
.error-wrap{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;
  background:var(--paper);padding:1rem;overflow:hidden;text-align:center}
.error-wrap .glow{position:absolute;inset:0;opacity:.5;pointer-events:none;
  background:radial-gradient(700px 400px at 50% 0%,rgba(224,176,80,.18),transparent 60%)}
.error-inner{position:relative;max-width:32rem;padding-block:6rem}
.error-inner h1{font-size:clamp(3rem,8vw,3.75rem);color:var(--ink)}

/* ════════════════════════════════════════════════════════════════════
   FOOTER
   ════════════════════════════════════════════════════════════════════ */
.site-footer{background:var(--ink);color:rgba(255,255,255,.7);position:relative}
.footer-grid{display:grid;gap:3rem;padding-block:4rem}
@media(min-width:1024px){.footer-grid{grid-template-columns:repeat(12,1fr);padding-block:5rem}}
.f-brand{display:flex;align-items:center;gap:.75rem}
.f-brand img{height:3.5rem;width:3.5rem;object-fit:contain;border-radius:.5rem}
.f-brand .nm{font-family:"Fraunces",serif;color:#fff;font-size:1.25rem}
.f-brand .tg{font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.f-about{margin-top:1.25rem;font-size:.875rem;max-width:24rem}
.f-social{margin-top:1.5rem;display:flex;gap:.75rem}
.f-social a{height:2.5rem;width:2.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.15);
  display:inline-flex;align-items:center;justify-content:center;transition:.2s}
.f-social a:hover{border-color:var(--gold);color:var(--gold)}
.f-social svg{width:1rem;height:1rem}
.f-col .eyebrow{color:var(--gold);margin-bottom:1rem;display:block}
.f-col ul li{margin-bottom:.65rem;font-size:.875rem}
.f-col a:hover{color:var(--gold)}
.f-contact li{display:flex;gap:.75rem;font-size:.875rem;margin-bottom:.85rem}
.f-contact svg{width:1rem;height:1rem;color:var(--gold);flex-shrink:0;margin-top:.15rem}
.f-bottom{border-top:1px solid rgba(255,255,255,.1)}
.f-bottom .row{padding-block:1.5rem;display:flex;flex-direction:column;gap:.75rem;align-items:center;
  justify-content:space-between;font-size:.75rem;color:rgba(255,255,255,.5)}
@media(min-width:640px){.f-bottom .row{flex-direction:row}}
.f-bottom .links{display:flex;align-items:center;gap:1.25rem}
.f-bottom .links a:hover{color:var(--gold)}
.f-bottom .sep{color:rgba(255,255,255,.2)}
.f-bottom .credit a{color:var(--gold)}
.f-bottom .credit a:hover{text-decoration:underline}

/* spacing utilities used in markup */
.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}
.mt-5{margin-top:2.5rem}.mt-6{margin-top:3rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}
.flex-between{display:flex;flex-direction:column;gap:1.5rem}
@media(min-width:1024px){.flex-between{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.nowrap{white-space:nowrap}
.center{text-align:center}
.maxw-2xl{max-width:42rem}
.maxw-xl{max-width:36rem}
.stack-5>*+*{margin-top:1.25rem}
.italic-light{font-style:italic;font-weight:300}

/* ── dark-section type helpers (used by .on-dark intro blocks) ──────── */
.section-dark .accent{color:var(--gold)}
.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4{color:#fff}
.on-dark .lead{color:rgba(255,255,255,.72)}
.on-dark .accent{color:var(--gold)}
.on-dark .eyebrow .num{color:var(--gold)}
.page-hero .accent,.article-hero .accent{color:var(--gold)}

/* Home finishing */
.section--home{padding-block:4.5rem}
@media(min-width:1024px){.section--home{padding-block:6rem;} .faq-padding{padding: 1rem 6rem !important;}}
.home-heading{margin-bottom:0}
.home-about{align-items:center}
@media(min-width:1024px){
  .home-about{grid-template-columns:repeat(12,1fr);gap: 100px;}
  .home-about-media{grid-column:7/span 6}
  
}
.home-about p:not(.lead){color:var(--slate-body)}
.home-about-media .frame{padding-bottom:2.6rem}
/* .home-about-media .img-h-md img{height:420px} */
/* @media(min-width:1024px){.home-about-media .img-h-md img{height:560px}} */
.home-about-media .frame-img{
  border-radius:2rem;
  overflow:hidden;
  border:none;
  box-shadow:0 24px 60px -24px rgba(0,16,64,.24)
}
.home-about-media .frame-img .scrim{display:none}
.home-about-card{
  display:block;
  left:-2rem;
  bottom:-1rem;
  max-width:25rem;
  padding:1.9rem 2rem 1.85rem;
  border-radius:2rem;
  border:none;
  box-shadow:0 30px 55px -26px rgba(0,16,64,.46)
}
.home-about-kicker{
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.26em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:1rem
}
.home-about-kicker::before{
  content:"";
  display:inline-block;
  width:1rem;
  height:1px;
  background:var(--gold);
  vertical-align:middle;
  margin-right:.8rem
}
.home-about-card .ft{
  font-size:1.1rem;
  line-height:1.45;
  max-width:18rem
}
.home-about-card .accent{color:var(--gold);font-style:italic}
@media(max-width:767px){
  .home-about-media .frame{padding-bottom:0}
  .home-about-card{
    left:1rem;
    right:1rem;
    bottom:1rem;
    max-width:none;
    padding:1.4rem 1.5rem 1.35rem;
    border-radius:1.6rem
  }
  .home-about-card .ft{max-width:none;font-size:1rem}
  .display-1 {
    font-size: 40px;
  }
  .home-sector-img .frame-img img {
    height: 360px;
  }
  .cta-band {
    padding-block: 2rem 4rem;
  }
}
.home-sector-img .frame-img{
  border-radius:2rem;
  overflow:hidden;
  border:none;
  box-shadow:0 24px 60px -24px rgba(0,16,64,.2)
}
.home-sector-img .frame-img img{height:460px;width:100%;object-fit:cover}
.home-sector-copy{max-width:52rem}
.home-sector-copy .display-2{max-width:50rem;font-size:clamp(2.1rem,4.6vw,3rem);line-height:1.08}
.home-sector-copy .display-2 .accent{color:var(--ink);font-style:italic;font-weight:300}
.home-sector-copy .lead{max-width:54rem;font-size:1.05rem;line-height:1.6}
.value-band{background:#f2eee5}
.value-band .heading{margin-bottom:2.5rem}
.industry-chips{display:grid;grid-template-columns:1fr;gap:.75rem}
@media(min-width:640px){.industry-chips{grid-template-columns:repeat(2,1fr)}}
.industry-chip{
  display:inline-flex;align-items:center;gap:.75rem;border-radius:.85rem;
  border:1px solid var(--hairline);background:var(--paper);padding:.8rem 1rem;
  color:var(--ink);font-size:.875rem;font-weight:500;
  transition:transform .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease)
}
.industry-chip:hover{transform:translateY(-2px);border-color:rgba(224,176,80,.5);box-shadow:var(--shadow-sm)}
.industry-chip span{height:1.85rem;width:1.85rem;border-radius:999px;background:var(--ink);color:var(--gold);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.industry-chip svg{width:.95rem;height:.95rem}
.industry-chips--sectors{margin-top:2.25rem;gap:1.1rem}
@media(min-width:1024px){.industry-chips--sectors{grid-template-columns:repeat(3,minmax(0,1fr))}}
.industry-chips--sectors .industry-chip{
  /* min-height:5rem; */
  border-radius:1.25rem;
  background:#f7f3ea;
  padding:0.8rem;
  font-size:14px;
  box-shadow:none
}
.industry-chips--sectors .industry-chip span{
  height:2.4rem;
  width:2.4rem;
  margin-right:.05rem
}
.industry-chips--sectors .industry-chip svg{width:1rem;height:1rem}
.job-strip{
  display:grid;gap:2rem;align-items:center;border-radius:1.25rem;border:1px solid var(--hairline);
  background:var(--card);padding:2.25rem;box-shadow:var(--shadow-sm)
}
@media(min-width:768px){.job-strip{grid-template-columns:1fr auto;padding:3rem}}
.job-strip p{margin-top:1rem;max-width:36rem;color:var(--slate-body)}
.voices-heading{max-width:68rem;margin-bottom:3.25rem}
.voices-heading .display-2{font-size:clamp(2.35rem,5vw,3rem);line-height:1.06}
.voices-heading .accent{color:var(--ink);font-style:italic;font-weight:300}
.voices-carousel{position:relative}
.voices-viewport{overflow:hidden}
.voices-track{
  display:flex;
  gap:1.9rem;
  transition:transform .45s var(--ease)
}
.voices-slide{
  flex:0 0 100%;
  min-width:0
}
@media(min-width:768px){.voices-slide{flex-basis:calc((100% - 1.9rem) / 2)}}
@media(min-width:1200px){.voices-slide{flex-basis:calc((100% - 3.8rem) / 3)}}
.quote-card{
  min-height:21.5rem;
  border-radius:1.75rem;
  border:1px solid rgba(0,16,64,.14);
  background:#f7f3ea;
  padding:2rem 2rem 1.8rem;
  display:flex;
  flex-direction:column;
  box-shadow:0 14px 36px -28px rgba(0,16,64,.18)
}
.quote-mark{
  font-family:"Fraunces",serif;
  color:#d1a14a;
  font-size:2.2rem;
  line-height:1
}
.quote-card blockquote{
  margin-top:1.5rem;
  color:var(--ink);
  font-family:"Fraunces",serif;
  font-size:1.05rem;
  line-height:1.6
}
@media(min-width:1024px){.quote-card blockquote{font-size:1.12rem}}
.quote-card figcaption{
  margin-top:auto;
  padding-top:1.35rem;
  border-top:1px solid rgba(0,16,64,.12);
  font-size:.8rem;
  color:var(--slate-body)
}
.quote-card figcaption strong{
  display:block;
  color:var(--ink);
  font-size:.95rem;
  font-weight:700
}
.quote-card figcaption span{display:block;margin-top:.25rem;font-size:.8rem}
.voices-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1.15rem;
  margin-top:2.6rem
}
.voices-arrow{
  height:3.35rem;
  width:3.35rem;
  border-radius:999px;
  border:1px solid rgba(0,16,64,.16);
  background:var(--paper);
  color:var(--ink);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:transform .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)
}
.voices-arrow:hover{
  transform:translateY(-1px);
  border-color:rgba(209,161,74,.55);
  color:var(--gold-deep)
}
.voices-arrow[disabled]{opacity:.4;cursor:not-allowed;transform:none}
.voices-arrow svg{width:1.1rem;height:1.1rem}
.voices-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-width:7rem
}
.voices-dot{
  height:.65rem;
  width:.65rem;
  border-radius:999px;
  background:rgba(0,16,64,.18);
  transition:width .25s var(--ease),background .25s var(--ease),opacity .25s var(--ease)
}
.voices-dot.active{
  width:2.55rem;
  background:#c99534
}

/* Team page */
.team-expertise{background:var(--paper)}
.team-expertise-layout{gap:4rem}
@media(min-width:1024px){.team-expertise-layout{grid-template-columns:repeat(12,1fr)}}
.team-expertise-intro .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.7rem
}
.team-line{
  display:inline-block;
  width:1rem;
  height:1px;
  background:var(--gold)
}
.team-expertise-intro .display-2{
  max-width:24rem;
  font-size:clamp(2.45rem,5vw,2.2rem);
  line-height:1.08
}
.team-expertise-intro .accent{
  display:block;
  color:var(--gold-deep);
  font-style:italic;
  font-weight:300
}
.team-expertise-copy{max-width:52rem}
.team-expertise-copy .lead,
.team-expertise-copy p{
  color:#56657c;
  font-size:1.05rem;
  line-height:1.72
}
@media(min-width:1024px){
  .team-expertise-copy .lead,
  .team-expertise-copy p{font-size:1.08rem}
}
.team-expertise-chips{
  gap:.8rem;
  max-width:44rem
}
.team-expertise-chips .chip{
  border-color:rgba(0,16,64,.14);
  background:#fff;
  padding:.5rem 1.15rem;
  font-size:12px;
  letter-spacing:.22em;
  box-shadow:0 8px 18px -18px rgba(0,16,64,.2)
}
.team-expertise-chips .dot{
  height:.42rem;
  width:.42rem;
  background:var(--gold)
}
.team-leadership{background:var(--paper)}
.team-leadership-heading{max-width:56rem;margin-bottom:3.5rem}
.team-leadership-heading .display-2{
  font-size:clamp(2.35rem,5vw,3rem);
  line-height:1.08
}
.team-leadership-heading .accent{color:var(--ink);font-style:italic;font-weight:300}
.team-leadership-heading p{max-width:42rem;margin-inline:auto}
.leader-card{
  border-radius:1.6rem;
  overflow:hidden;
  border:1px solid rgba(0,16,64,.12);
  background:#fff;
  box-shadow:0 18px 36px -26px rgba(0,16,64,.18);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)
}
.leader-card:hover{
  transform:translateY(-10px);
  border-color:rgba(224,176,80,.38);
  box-shadow:0 28px 48px -28px rgba(0,16,64,.28)
}
.leader-hero{
  position:relative;
  min-height:24.5rem;
  padding:1rem 1rem 1.4rem;
  display:flex;
  align-items:center;
  justify-content:center
}
.leader-card--ink .leader-hero{
  background:linear-gradient(180deg,#173154 0%,#142b4c 55%,#112248 100%)
}
.leader-card--midnight .leader-hero{
  background:linear-gradient(180deg,#1d1f3e 0%,#171b3a 58%,#111d4d 100%)
}
.leader-card--gold .leader-hero{
  background:linear-gradient(180deg,#b98d3f 0%,#ae8440 48%,#2f3145 100%)
}
.leader-tag{
  position:absolute;
  top:.85rem;
  left:.85rem;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#efbb4a;
  color:var(--ink);
  padding:.38rem .72rem;
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:700
}
.leader-initials{
  font-family:"Fraunces",serif;
  font-size:3.3rem;
  line-height:1;
  color:rgba(255,255,255,.92)
}
.leader-body{padding:1.35rem 1.35rem 1.45rem}
.leader-body h3{
  color:var(--ink);
  font-size:1.55rem;
  line-height:1.15
}
.leader-role{
  margin-top:.5rem;
  color:var(--gold-deep);
  font-size:.72rem;
  letter-spacing:.2em;
  text-transform:uppercase
}
.leader-copy{
  margin-top:.9rem;
  color:#56657c;
  font-size:.92rem;
  line-height:1.7
}
.industries-grid-heading{
  margin-bottom:2rem;
  max-width:40rem
}
.industries-grid-heading .display-2{
  font-size:clamp(2.35rem,5vw,4rem);
  line-height:1.06
}
.industries-grid{gap:1.5rem}
.industries-grid .ind-card{
  /* min-height:15.5rem; */
  border-radius:1.85rem;
  border-color:rgba(0,16,64,.14);
  background:#f7f3ea;
  padding:2rem 2rem 1.75rem;
  box-shadow:none
}
.industries-grid .ind-card:hover{
  transform:none;
  box-shadow:none;
  border-color:rgba(209,161,74,.85)
}
.industries-grid .ind-card .icon-box{
  height:2.7rem;
  width:2.7rem;
  border-radius:1rem
}
.industries-grid .ind-card h3{
  margin-top:1.6rem;
  font-size:1.1rem;
  line-height:1.28
}
.industries-grid .ind-card p{
  margin-top:.95rem;
  font-size:14px;
  line-height:1.55;
  max-width:14rem
}
.industries-grid .ind-card .corner{
  top:1.9rem;
  right:1.9rem;
  opacity:0;
  color:#d1a14a
}
.industries-grid .ind-card:hover .corner{
  opacity:1;
  transform:translate(2px,-2px)
}
.faq-advisor{position:relative;border-radius:1.25rem;overflow:hidden;border:1px solid var(--hairline);box-shadow:var(--shadow-md)}
.faq-advisor img{width:100%;height:340px;object-fit:cover}
.faq-advisor::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,16,64,.82))}
.faq-advisor-caption{position:absolute;left:1.25rem;right:1.25rem;bottom:1.25rem;z-index:1;color:#fff}
.faq-advisor-caption span{display:inline-flex;border-radius:999px;background:var(--gold);color:var(--ink);padding:.25rem .65rem;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;align-items: center;}
.faq-advisor-caption strong{display:block;margin-top:.75rem;max-width:22rem;font-family:"Fraunces",serif;line-height:1.35}
.home-cta .inner{gap:2rem}
.home-cta .btn{white-space:nowrap}

/* Footer finish */
.site-footer{background:#001040;border-top:8px solid var(--paper)}
.footer-grid{gap:2rem;padding-block:4.5rem 4rem}
@media(min-width:1024px){
  .footer-grid{grid-template-columns:repeat(12,1fr);gap:3.5rem;padding-block:5rem 4.25rem}
}
.f-brand{gap:.7rem;align-items:center}
.f-brand img{height:2.25rem;width:2.25rem;border-radius:.35rem}
.f-brand .nm{font-size:1rem;line-height:1.1}
.f-brand .tg{font-size:.55rem;letter-spacing:.2em;color:var(--gold);line-height:1}
.f-about{margin-top:1.25rem;max-width:22rem;font-size:.8rem;line-height:1.7;color:rgba(255,255,255,.68)}
.f-social{margin-top:1.35rem;gap:.55rem}
.f-social a{height:2rem;width:2rem;border-radius:.35rem;color:rgba(255,255,255,.72)}
.f-social svg{width:.85rem;height:.85rem}
.f-col .eyebrow{margin-bottom:1rem;font-size:.62rem;letter-spacing:.24em;color:var(--gold)}
.f-col ul li{margin-bottom:.48rem;font-size:.78rem;line-height:1.35;color:rgba(255,255,255,.68)}
.f-col a{transition:color .2s}
.f-contact li{gap:.65rem;margin-bottom:.8rem;font-size:.78rem;line-height:1.5}
.f-contact svg{width:.9rem;height:.9rem;color:var(--gold);margin-top:.2rem}
.f-bottom{border-top:1px solid rgba(255,255,255,.08)}
.f-bottom .row{padding-block:1.15rem;font-size:.68rem;color:rgba(255,255,255,.45);gap:.9rem}
@media(min-width:1024px){.f-bottom .row{display:grid;grid-template-columns:1fr auto auto;align-items:center}}
.f-bottom .links{gap:.7rem}
.f-bottom .credit a{color:var(--gold)}

/* Footer screenshot match */
.site-footer{
  background:#001040;
  border-top:8px solid #f7f3ea;
  color:rgba(230,237,255,.84)
}
/* .site-footer .container{max-width:92.5rem} */
.footer-grid{
  grid-template-columns:1fr;
  gap:3rem;
  padding-block:5.35rem 5.25rem
}
@media(min-width:1024px){
  .footer-grid{
    grid-template-columns:2.1fr 1fr 1.55fr 1.55fr;
    gap:5.5rem;
    align-items:start
  }
  .site-footer .lg-2,.site-footer .lg-3,.site-footer .lg-4{grid-column:auto}
}
.f-brand{gap:1.15rem}
.f-brand img{
  height:3.5rem;
  width:3.5rem;
  border-radius:.8rem;
  /* background:#fff; */
  /* padding:.25rem; */
  /* box-shadow:0 0 0 5px rgba(255,255,255,.06) */
}
.f-brand .nm{
  font-size:1.4rem;
  color:#fff;
  letter-spacing:0;
  line-height:1
}
.f-brand .tg{
  display:inline-block;
  margin-top:.45rem;
  font-size:.62rem;
  letter-spacing:.24em;
  color:var(--gold);
  font-weight:700
}
.f-about{
  margin-top:2rem;
  max-width:29rem;
  font-size:14px;
  line-height:1.55;
  color:rgba(230,237,255,.88)
}
.f-social{margin-top:2rem;gap:.85rem}
.f-social a{
  height:3rem;
  width:3rem;
  border-radius:999px;
  border-color:rgba(255,255,255,.14);
  color:rgba(230,237,255,.76)
}
.f-social a:hover{border-color:rgba(224,176,80,.65);color:var(--gold)}
.f-social svg{width:1.1rem;height:1.1rem}
.f-col .eyebrow{
  margin-bottom:1.55rem;
  font-size:.72rem;
  letter-spacing:.34em;
  color:var(--gold);
  font-weight:700
}
.f-col ul li{
  margin-bottom:13px;
  font-size:14px;
  line-height:1.35;
  color:rgba(230,237,255,.88)
}
.f-col a:hover{color:var(--gold)}
.f-contact li{
  gap:1rem;
  margin-bottom:1.45rem;
  font-size:1rem;
  line-height:1.45;
  color:rgba(230,237,255,.88)
}
.f-contact svg{
  width:1.05rem;
  height:1.05rem;
  color:var(--gold);
  margin-top:.2rem
}
.f-bottom{border-top:1px solid rgba(255,255,255,.12)}
.f-bottom .row{
  padding-block:1.45rem;
  font-size:.82rem;
  color:rgba(230,237,255,.56)
}
@media(min-width:1024px){
  .f-bottom .row{grid-template-columns:1fr auto auto}
}
.f-bottom .links{gap:1rem}
.f-bottom .sep{color:rgba(230,237,255,.28)}

/* About page */
.about-who{background:var(--paper)}
.about-who-layout{gap:4.5rem;align-items:start}
@media(min-width:1024px){.about-who-layout{grid-template-columns:repeat(12,1fr)}}
.about-who-intro .eyebrow{
  color:var(--gold-deep);
  letter-spacing:.28em
}
.about-who-intro .display-2{
  font-size:clamp(2.5rem,5vw,2.25rem);
  line-height:1.05;
  max-width:none
}
.about-who-intro .accent{
  color:var(--gold-deep);
  font-style:italic;
  font-weight:300
}
.about-who-copy{
  max-width:none;
  padding-top:.5rem
}
.about-who-copy .lead,
.about-who-copy p{
  color:#56657c;
  font-size:1.08rem;
  line-height:1.72
}
@media(min-width:1024px){
  .about-who-intro{padding-top:.35rem}
.about-who-copy .lead,
.about-who-copy p{font-size:1.1rem}
}
.about-approach{align-items:center}
.about-approach-media .frame-img{
  border-radius:1.75rem;
  overflow:hidden
}
.about-approach-media .frame-img .scrim{display:none}
.about-approach-copy{
  max-width:42rem;
  padding-top:2rem
}
.about-approach-copy .eyebrow{
  letter-spacing:.28em
}
.about-approach-copy .display-2{
  max-width:38rem;
  font-size:34px;
  line-height:1.06
}
.about-approach-copy .accent{
  color:var(--gold-deep);
  font-style:italic;
  font-weight:300
}
.about-approach-copy .check-list{
  gap:1.45rem;
  max-width:43rem
}
.about-approach-copy .check-list li{
  font-size:1rem;
  line-height:1.48
}
.about-approach-copy .check-list .tick{
  flex:0 0 auto;
  margin-top:.18rem
}
.approach-note{
  right:-1.1rem;
  bottom:-1.1rem;
  max-width:14.25rem;
  padding:1rem 1.55rem
}
.approach-note .eyebrow{
  margin-bottom:6px;
  color:var(--gold-deep);
  letter-spacing:.26em
}
.approach-note .ft{
  font-size:1rem;
  line-height:1.3
}
@media(min-width:1024px){
  .about-approach{align-items:center}
  .about-approach-copy{padding-top:.75rem}
  .about-approach-copy .check-list li{font-size:16px}
}
