  :root{
    --ink:#0e0f14;
    --ink-2:#141620;
    --ink-3:#1b1e2a;
    --navy:#12233f;
    --navy-2:#0e1c33;
    --cream:#f8f1e2;
    --cream-2:#f1e7d3;
    --gold:#c69a3c;
    --gold-bright:#dcb257;
    --bronze:#a97a3c;
    --care:#d4694a;
    --capacity:#cc9a2e;
    --competence:#2f9488;
    --coherence:#1b3a63;
    --maroon:#8b1e3f;
    --on-dark:#efe7d6;
    --on-dark-dim:#a99f8b;
    --on-dark-faint:#6e6857;
    --on-light:#1a1813;
    --on-light-dim:#5b5446;
    --line-dark:rgba(198,154,60,0.22);
    --line-light:rgba(26,24,19,0.14);
    --display:'Fraunces', Georgia, serif;
    --body:'EB Garamond', Georgia, serif;
    --ui:'Libre Franklin', -apple-system, BlinkMacSystemFont, sans-serif;
    --maxw:1200px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;background:var(--ink);color:var(--on-dark);
    font-family:var(--body);font-size:19px;line-height:1.6;
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ::selection{background:var(--gold);color:var(--ink);}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px;}
  h1,h2,h3,h4{margin:0;font-weight:600;}
  .eyebrow{
    font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:0.28em;
    text-transform:uppercase;color:var(--gold);
  }
  .rule{height:1px;background:var(--line-dark);border:0;margin:0;}

  /* ---------------- BRAND MOTIF (orbit / spark / flow) ---------------- */
  .brand-flow{position:absolute;left:0;right:0;height:120px;pointer-events:none;z-index:0;}
  .brand-flow.top{top:0;}
  .brand-flow.bottom{bottom:0;}
  .brand-flow img{width:100%;height:100%;display:block;}
  .spark{display:inline-block;width:0.7em;height:0.7em;vertical-align:0;color:var(--gold);}
  .spark svg{width:100%;height:100%;display:block;}
  .eyebrow .spark{margin-right:0.7em;transform:translateY(1px);}
  /* editorial section index — large ghosted numeral behind a header */
  .sec-head.indexed, .tree-head.indexed{position:relative;}
  .sec-head.indexed > *, .tree-head.indexed > *{position:relative;z-index:1;}
  .sec-head.indexed .sec-index, .tree-head.indexed .sec-index{
    font-family:var(--display);font-weight:600;font-style:italic;
    font-size:clamp(90px,12vw,180px);line-height:0.72;color:var(--bronze);opacity:0.15;
    position:absolute;top:-0.18em;right:0;z-index:0;pointer-events:none;user-select:none;}

  /* ---------------- HEADER ---------------- */
  header.site{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:rgba(14,15,20,0.86);backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(198,154,60,0.14);
  }
  header .bar{display:flex;align-items:center;justify-content:space-between;height:78px;}
  .brand{display:flex;align-items:center;gap:14px;}
  .brand .mark{width:44px;height:44px;flex:0 0 44px;}
  .brand .wordmark{font-family:var(--display);font-weight:600;font-size:19px;letter-spacing:0.02em;line-height:1;color:var(--on-dark);}
  .brand .wordmark small{display:block;font-family:var(--ui);font-weight:500;font-size:9.5px;letter-spacing:0.34em;color:var(--gold);margin-top:5px;text-transform:uppercase;}
  header nav{display:flex;align-items:center;gap:38px;}
  header nav a{font-family:var(--ui);font-size:13px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--on-dark-dim);transition:color .2s;}
  header nav a:hover{color:var(--gold);}
  .btn-book{
    font-family:var(--ui);font-size:12.5px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;
    color:var(--ink);background:var(--gold);padding:12px 22px;border-radius:2px;transition:background .2s;
  }
  .btn-book:hover{background:var(--gold-bright);}
  .menu-toggle{display:none;background:none;border:1px solid var(--line-dark);color:var(--on-dark);width:44px;height:44px;border-radius:2px;cursor:pointer;}
  .mobile-nav{display:none;flex-direction:column;padding:12px 40px 26px;border-top:1px solid var(--line-dark);}
  .mobile-nav a{font-family:var(--ui);font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-dark-dim);padding:12px 0;border-bottom:1px solid rgba(198,154,60,0.1);}

  /* ---------------- HERO ---------------- */
  .hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;overflow:hidden;}
  .hero-bg{position:absolute;inset:0;}
  .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 28%;opacity:0.42;}
  .hero-bg::after{content:"";position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(14,15,20,0.72) 0%, rgba(14,15,20,0.35) 42%, rgba(14,15,20,0.92) 100%);}
  .hero-bg::before{content:"";position:absolute;inset:0;z-index:1;
    background:radial-gradient(120% 90% at 70% 20%, rgba(30,60,110,0.34), transparent 60%);}
  .hero-inner{position:relative;z-index:2;width:100%;padding-bottom:82px;padding-top:140px;}
  .hero .kicker{margin-bottom:30px;}
  .hero h1{
    font-family:var(--display);font-weight:700;line-height:0.98;letter-spacing:-0.01em;
    font-size:clamp(52px, 9vw, 128px);color:#fff;margin:0;
  }
  .hero h1 .dot{color:var(--gold);}
  .hero .subhead{
    font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold-bright);
    font-size:clamp(22px,3.4vw,40px);margin:22px 0 0;
  }
  .hero .byline{
    font-family:var(--ui);font-size:14px;letter-spacing:0.16em;text-transform:uppercase;
    color:var(--on-dark-dim);margin-top:34px;
  }
  .hero .byline b{color:var(--on-dark);font-weight:600;}
  .hero .cta-row{margin-top:38px;display:flex;gap:18px;flex-wrap:wrap;align-items:center;}
  .cta-primary{
    font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;
    background:var(--gold);color:var(--ink);padding:16px 30px;border-radius:2px;transition:background .2s;
  }
  .cta-primary:hover{background:var(--gold-bright);}
  .cta-ghost{
    font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;
    color:var(--on-dark);padding:16px 4px;border-bottom:1px solid var(--gold);transition:color .2s;
  }
  .cta-ghost:hover{color:var(--gold);}

  /* ---------------- SECTION SCAFFOLD ---------------- */
  section{position:relative;}
  .band{padding:110px 0;}
  .band.dark{background:var(--ink);}
  .band.ink2{background:var(--ink-2);}
  .band.navy{background:var(--navy-2);}
  .band.cream{background:var(--cream);color:var(--on-light);}
  .band.cream .eyebrow{color:var(--bronze);}
  .band.cream .rule{background:var(--line-light);}
  .sec-head{max-width:820px;margin-bottom:56px;}
  .sec-head .eyebrow{display:block;margin-bottom:20px;}
  .sec-head h2{font-family:var(--display);font-weight:600;font-size:clamp(34px,5vw,56px);line-height:1.04;letter-spacing:-0.01em;}
  .sec-head p.lede{font-size:21px;line-height:1.65;color:var(--on-dark-dim);margin:26px 0 0;max-width:720px;}
  .band.cream .sec-head p.lede{color:var(--on-light-dim);}

  /* ---------------- THE FIRM ---------------- */
  .firm-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:70px;align-items:center;}
  .firm-statement{font-family:var(--display);font-weight:500;font-size:clamp(26px,3.2vw,38px);line-height:1.28;letter-spacing:-0.005em;color:#fff;}
  .firm-statement .em{color:var(--gold-bright);font-style:italic;}
  .firm-body p{color:var(--on-dark-dim);font-size:19px;margin:0 0 20px;}
  .firm-body p:last-child{margin-bottom:0;}
  .sectors{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;}
  .sectors span{font-family:var(--ui);font-size:11.5px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--on-dark-dim);border:1px solid var(--line-dark);border-radius:40px;padding:8px 16px;}

  /* ---------------- PHILOSOPHY ---------------- */
  .philosophy-quote{
    font-family:var(--display);font-weight:500;font-style:italic;
    font-size:clamp(28px,4.2vw,52px);line-height:1.22;letter-spacing:-0.01em;color:#fff;max-width:1000px;
  }
  .philosophy-quote .u{color:var(--gold-bright);font-style:normal;}
  .approach{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:72px;border-top:1px solid var(--line-dark);}
  .approach .step{padding:32px 30px 30px 30px;border-right:1px solid var(--line-dark);}
  .approach .step:first-child{padding-left:0;}
  .approach .step:last-child{border-right:0;padding-right:0;}
  .approach .step .n{font-family:var(--ui);font-size:12px;font-weight:700;letter-spacing:0.14em;color:var(--gold);}
  .approach .step h4{font-family:var(--display);font-weight:600;font-size:22px;margin:16px 0 10px;color:#fff;}
  .approach .step p{font-size:16px;line-height:1.5;color:var(--on-dark-dim);margin:0;}

  /* ---------------- 4Cs FRAMEWORK ---------------- */
  .fw-4c{display:grid;grid-template-columns:0.9fr 1.1fr;gap:64px;align-items:center;margin-bottom:20px;}
  .wheel-wrap{display:flex;justify-content:center;}
  .wheel{width:100%;max-width:420px;height:auto;}
  .conditions{display:flex;flex-direction:column;gap:14px;}
  .cond{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:baseline;border-left:4px solid;padding:16px 0 16px 22px;background:rgba(255,255,255,0.55);border-radius:0 4px 4px 0;}
  .cond.care{border-color:var(--care);}
  .cond.capacity{border-color:var(--capacity);}
  .cond.competence{border-color:var(--competence);}
  .cond.coherence{border-color:var(--coherence);}
  .cond h4{font-family:var(--display);font-weight:700;font-size:27px;line-height:1;}
  .cond.care h4{color:var(--care);}
  .cond.capacity h4{color:#b5851f;}
  .cond.competence h4{color:var(--competence);}
  .cond.coherence h4{color:var(--coherence);}
  .cond .role{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--on-light-dim);display:block;margin-top:8px;}
  .cond .cats{font-family:var(--body);font-style:italic;font-size:17px;color:var(--on-light-dim);margin-top:4px;}
  .rules{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:56px;}
  .rule-card{background:var(--cream);padding:26px 24px;}
  .rule-card .c{font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;margin-bottom:12px;}
  .rule-card.care .c{color:var(--care);}
  .rule-card.capacity .c{color:#b5851f;}
  .rule-card.competence .c{color:var(--competence);}
  .rule-card.coherence .c{color:var(--coherence);}
  .rule-card p{font-family:var(--display);font-style:italic;font-weight:500;font-size:19px;line-height:1.32;color:var(--on-light);margin:0;}

  /* ---------------- GIFTED TREE ---------------- */
  .tree-head{max-width:760px;margin-bottom:60px;}
  .tree{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;}
  .tree::before{content:"";position:absolute;left:0;right:0;top:39px;height:2px;
    background:linear-gradient(90deg, var(--bronze), var(--gold-bright));opacity:0.5;}
  .stage{position:relative;padding:0 20px;}
  .stage .node{width:16px;height:16px;border-radius:50%;background:var(--gold);border:4px solid var(--ink-2);margin:32px auto 0;box-shadow:0 0 0 1px var(--gold);}
  .stage .lvl{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);text-align:center;margin-top:24px;}
  .stage h4{font-family:var(--display);font-weight:700;font-size:26px;color:#fff;text-align:center;margin:8px 0 8px;}
  .stage p{font-size:16px;line-height:1.5;color:var(--on-dark-dim);text-align:center;margin:0;}
  .stage p em{color:var(--gold-bright);font-style:italic;display:block;font-size:15px;margin-top:6px;}
  .tree-line{text-align:center;margin-top:66px;font-family:var(--display);font-style:italic;font-size:clamp(22px,3vw,32px);color:var(--on-dark);max-width:900px;margin-left:auto;margin-right:auto;line-height:1.35;}
  .tree-line b{color:var(--gold-bright);font-style:normal;font-weight:600;}

  /* ---------------- EXPERIENCES ---------------- */
  .exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);}
  .exp{background:var(--ink);padding:40px 34px;transition:background .25s;position:relative;}
  .exp:hover{background:var(--ink-3);}
  .exp .idx{font-family:var(--display);font-style:italic;font-size:16px;color:var(--gold);}
  .exp h4{font-family:var(--display);font-weight:600;font-size:25px;color:#fff;margin:16px 0 12px;}
  .exp p{font-size:17px;line-height:1.55;color:var(--on-dark-dim);margin:0;}
  .exp.flag::after{content:"New";position:absolute;top:22px;right:26px;font-family:var(--ui);font-size:10px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold);border-radius:20px;padding:3px 10px;}

  /* ---------------- FOUNDER ---------------- */
  .founder-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;align-items:center;}
  .founder-photo{position:relative;}
  .founder-photo img{width:100%;border-radius:4px;filter:grayscale(0.15) contrast(1.02);}
  .founder-photo .tag{position:absolute;left:0;bottom:26px;background:var(--gold);color:var(--ink);font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:9px 18px;}
  .founder-body h3{font-family:var(--display);font-weight:600;font-size:clamp(30px,4vw,46px);color:var(--on-light);line-height:1.05;}
  .founder-body .title{font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--bronze);margin:14px 0 26px;}
  .founder-body p{color:var(--on-light-dim);font-size:19px;margin:0 0 20px;}
  .creds{display:flex;flex-wrap:wrap;gap:46px;margin-top:36px;padding-top:34px;border-top:1px solid var(--line-light);}
  .creds .cr{font-family:var(--ui);display:flex;flex-direction:column;max-width:160px;}
  .creds .seal-box{height:60px;display:flex;align-items:center;margin-bottom:16px;}
  .creds .seal-box img{max-height:58px;max-width:130px;width:auto;object-fit:contain;
    filter:grayscale(1) brightness(0.35);opacity:0.85;}
  .creds .seal-box img.v{max-height:42px;}
  .creds .cr b{display:block;font-size:13px;font-weight:700;letter-spacing:0.04em;color:var(--on-light);}
  .creds .cr span{font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-light-dim);margin-top:3px;}

  /* ---------------- PROOF: PARTNERS + GALLERY + QUOTES ---------------- */
  .partners{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:36px 0;margin-bottom:64px;}
  .partners .plabel{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);text-align:center;margin-bottom:28px;}
  .logo-wall{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-light);
    border:1px solid var(--line-light);border-radius:4px;overflow:hidden;margin:0 auto;}
  .logo-wall .cell{background:var(--cream);min-height:118px;display:flex;align-items:center;justify-content:center;
    text-align:center;padding:22px 18px;font-family:var(--display);font-weight:500;font-size:16px;line-height:1.25;
    color:var(--on-light);transition:background .2s,color .2s;}
  .logo-wall .cell img{max-height:52px;max-width:100%;width:auto;object-fit:contain;
    filter:grayscale(1) contrast(0.9) brightness(0.4);opacity:0.72;transition:filter .2s,opacity .2s;}
  .logo-wall a.cell:hover{background:#fff;color:var(--bronze);}
  .logo-wall a.cell:hover img{filter:none;opacity:1;}
  .press-wall{grid-template-columns:repeat(4,1fr);}
  .proof-sub{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin:0 0 30px;}
  .gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:10px;margin-bottom:70px;}
  .gallery figure{margin:0;position:relative;overflow:hidden;border-radius:3px;background:var(--ink-3);}
  .gallery figure img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
  .gallery figure:hover img{transform:scale(1.05);}
  .gallery .g-tall{grid-row:span 2;}
  .gallery .g-wide{grid-column:span 2;}
  .gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;font-family:var(--ui);font-size:11px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-dark);background:linear-gradient(0deg, rgba(14,15,20,0.9), transparent);opacity:0;transition:opacity .25s;}
  .gallery figure:hover figcaption{opacity:1;}
  .quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;}
  .quote{border-top:2px solid var(--gold);padding-top:26px;}
  .quote blockquote{margin:0 0 24px;font-family:var(--display);font-style:italic;font-weight:500;font-size:23px;line-height:1.4;color:var(--on-dark);}
  .quote cite{font-style:normal;font-family:var(--ui);}
  .quote cite b{display:block;font-size:14px;font-weight:700;letter-spacing:0.04em;color:var(--gold);}
  .quote cite span{font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:var(--on-dark-dim);}

  /* ---------------- BOOKING ---------------- */
  .book{position:relative;overflow:hidden;}
  .book-bg{position:absolute;inset:0;}
  .book-bg img{width:100%;height:100%;object-fit:cover;opacity:0.16;}
  .book-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--ink),rgba(14,15,20,0.7),var(--ink));}
  .book-inner{position:relative;z-index:2;text-align:center;max-width:820px;margin:0 auto;}
  .book h2{font-family:var(--display);font-weight:600;font-size:clamp(34px,5vw,58px);line-height:1.06;color:#fff;}
  .book p{color:var(--on-dark-dim);font-size:20px;margin:24px auto 0;max-width:640px;}
  .book .cta-row{justify-content:center;margin-top:40px;}
  .book .contact-line{font-family:var(--ui);font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--on-dark-faint);margin-top:30px;}
  .book .contact-line a{color:var(--gold);}

  /* ---------------- FOOTER ---------------- */
  footer.site{background:#0a0b0f;padding:56px 0 44px;border-top:1px solid rgba(198,154,60,0.14);position:relative;overflow:hidden;}
  .foot-grid{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;}
  .foot-brand{display:flex;align-items:center;gap:14px;}
  .foot-brand .mark{width:40px;height:40px;}
  .foot-brand .wordmark{font-family:var(--display);font-weight:600;font-size:17px;color:var(--on-dark);}
  .foot-brand .wordmark small{display:block;font-family:var(--ui);font-size:9px;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-top:4px;}
  .foot-meta{font-family:var(--ui);font-size:12px;letter-spacing:0.05em;color:var(--on-dark-faint);text-align:right;line-height:1.9;}
  .foot-meta a{color:var(--on-dark-dim);}
  .foot-cred{margin-top:40px;padding-top:26px;border-top:1px solid rgba(198,154,60,0.1);font-family:var(--ui);font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--on-dark-faint);text-align:center;}

  /* ---------------- SIGNATURE KEYNOTES ---------------- */
  .talks{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);}
  .talk{background:var(--ink);padding:40px 38px;}
  .talk .tk-num{font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:0.14em;color:var(--gold);}
  .talk h4{font-family:var(--display);font-weight:600;font-size:28px;color:#fff;margin:14px 0 6px;line-height:1.1;}
  .talk .tag{font-family:var(--body);font-style:italic;font-size:18px;color:var(--gold-bright);margin:0 0 18px;}
  .talk .best{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-dark-dim);margin:0 0 14px;}
  .talk ul{list-style:none;margin:0;padding:0;}
  .talk ul li{position:relative;padding-left:20px;font-size:16.5px;color:var(--on-dark-dim);margin-bottom:9px;line-height:1.45;}
  .talk ul li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:7px;background:var(--gold);border-radius:50%;}
  .talk .fmt{margin-top:20px;padding-top:16px;border-top:1px solid var(--line-dark);font-family:var(--ui);font-size:12px;letter-spacing:0.06em;color:var(--on-dark-faint);text-transform:uppercase;}

  /* ---------------- WHO WE SERVE (header-left / index-right) ---------------- */
  .serve-split{display:grid;grid-template-columns:0.82fr 1.18fr;gap:72px;align-items:start;}
  .serve-head .eyebrow{display:block;margin-bottom:18px;color:var(--bronze);}
  .serve-head h2{font-family:var(--display);font-weight:600;font-size:clamp(30px,3.6vw,46px);line-height:1.04;letter-spacing:-0.01em;color:var(--navy);}
  .serve-head .lede{font-size:18px;line-height:1.6;color:var(--on-light-dim);margin:24px 0 0;}
  .serve-list{border-top:1px solid rgba(26,24,19,0.22);}
  .serve-list .row{display:grid;grid-template-columns:0.9fr 1.1fr;gap:32px;padding:24px 0;
    border-bottom:1px solid var(--line-light);align-items:baseline;transition:padding-left .2s;}
  .serve-list .row:hover{padding-left:10px;}
  .serve-list .row .n{font-family:var(--ui);font-size:12px;font-weight:600;letter-spacing:0.1em;color:var(--bronze);}
  .serve-list .row h4{font-family:var(--display);font-weight:600;font-size:22px;line-height:1.1;color:var(--navy);}
  .serve-list .row h4 .n{display:block;margin-bottom:8px;}
  .serve-list .row p{font-size:16px;line-height:1.5;color:var(--on-light-dim);margin:0;}

  /* ---------------- RESULTS / CASE STUDY ---------------- */
  .result-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:70px;align-items:center;}
  .result-stat{font-family:var(--display);font-weight:700;font-size:clamp(64px,9vw,120px);line-height:0.9;color:var(--gold-bright);letter-spacing:-0.02em;}
  .result-stat span{display:block;font-family:var(--ui);font-size:14px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--on-dark-dim);margin-top:20px;line-height:1.4;}
  .result-body .rlabel{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin:0 0 20px;}
  .result-body h3{font-family:var(--display);font-weight:600;font-size:clamp(26px,3.4vw,38px);line-height:1.16;color:#fff;margin:0 0 22px;}
  .result-body p{color:var(--on-dark-dim);font-size:18px;margin:0 0 18px;}
  .result-body .attrib{font-family:var(--ui);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--on-dark-faint);margin-top:26px;}

  /* ---------------- PRESS ---------------- */
  .press{margin-top:60px;border-top:1px solid var(--line-dark);padding-top:40px;}
  .press .plabel{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);text-align:center;margin-bottom:26px;}
  .partners .logo-wall .cell img{max-height:76px;filter:grayscale(1) brightness(0.3);opacity:0.82;}
  .partners .logo-wall a.cell:hover img,.partners .logo-wall .cell:hover img{filter:grayscale(1) brightness(0.3);opacity:1;}
  .press .logo-wall{max-width:760px;}
  .press-wall{grid-template-columns:repeat(2,1fr);}
  .press-also{text-align:center;font-family:var(--body);font-style:italic;font-size:16.5px;color:var(--on-light-dim);margin:24px 0 0;}
  .press-also a{color:var(--bronze);border-bottom:1px solid rgba(169,122,60,0.35);}
  .press-wall .cell{min-height:134px;}
  .press-wall .cell img{max-height:44px;max-width:82%;filter:grayscale(1) brightness(0.2);opacity:0.9;}
  .press-wall a.cell:hover img{filter:grayscale(1) brightness(0.2);opacity:1;}

  /* ---------------- FAQ ---------------- */
  .faq{max-width:900px;margin:0 auto;}
  .faq details{border-bottom:1px solid var(--line-dark);padding:4px 0;}
  .faq summary{list-style:none;cursor:pointer;padding:24px 40px 24px 0;font-family:var(--display);font-weight:600;font-size:22px;color:#fff;position:relative;}
  .faq summary::-webkit-details-marker{display:none;}
  .faq summary::after{content:"+";position:absolute;right:6px;top:22px;font-family:var(--ui);font-size:26px;font-weight:300;color:var(--gold);transition:transform .2s;}
  .faq details[open] summary::after{content:"–";}
  .faq details p{margin:0 0 24px;color:var(--on-dark-dim);font-size:18px;line-height:1.6;max-width:760px;}

  /* ---------------- INQUIRY FORM ---------------- */
  .form-wrap{max-width:760px;margin:44px auto 0;text-align:left;}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
  .field{display:flex;flex-direction:column;}
  .field.full{grid-column:1 / -1;}
  .field label{font-family:var(--ui);font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--on-dark-dim);margin-bottom:8px;}
  .field input,.field select,.field textarea{
    font-family:var(--body);font-size:17px;color:var(--on-dark);background:rgba(255,255,255,0.04);
    border:1px solid var(--line-dark);border-radius:2px;padding:13px 15px;transition:border-color .2s;
  }
  .field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);}
  .field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c69a3c' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;}
  .field textarea{resize:vertical;min-height:110px;}
  .form-wrap .cta-primary{border:none;cursor:pointer;margin-top:8px;width:100%;font-size:14px;padding:18px;}
  .hp{position:absolute;left:-9999px;}

  /* ---------------- LIGHT BANDS (cream / cream2) ---------------- */
  .band.cream2{background:var(--cream-2);color:var(--on-light);}
  .band.cream2 .eyebrow{color:var(--bronze);}
  .band.cream2 .rule{background:var(--line-light);}
  .band.cream2 .sec-head p.lede{color:var(--on-light-dim);}
  .band.cream .sec-head h2, .band.cream2 .sec-head h2{color:var(--navy);}
  /* firm */
  .band.cream .firm-statement, .band.cream2 .firm-statement{color:var(--navy);}
  .band.cream .firm-statement .em, .band.cream2 .firm-statement .em{color:var(--bronze);}
  .band.cream .firm-body p, .band.cream2 .firm-body p{color:var(--on-light-dim);}
  .band.cream .sectors span, .band.cream2 .sectors span{color:var(--on-light-dim);border-color:var(--line-light);}
  /* philosophy */
  .band.cream .philosophy-quote, .band.cream2 .philosophy-quote{color:var(--navy);}
  .band.cream .philosophy-quote .u, .band.cream2 .philosophy-quote .u{color:var(--bronze);}
  .band.cream .approach, .band.cream2 .approach,
  .band.cream .approach .step, .band.cream2 .approach .step{border-color:var(--line-light);}
  .band.cream .approach .step .n, .band.cream2 .approach .step .n{color:var(--bronze);}
  .band.cream .approach .step h4, .band.cream2 .approach .step h4{color:var(--navy);}
  .band.cream .approach .step p, .band.cream2 .approach .step p{color:var(--on-light-dim);}
  /* keynotes */
  .band.cream .talks, .band.cream2 .talks{background:var(--line-light);border-color:var(--line-light);}
  .band.cream .talk{background:var(--cream);}
  .band.cream2 .talk{background:var(--cream-2);}
  .band.cream .talk h4, .band.cream2 .talk h4{color:var(--navy);}
  .band.cream .talk .tag, .band.cream2 .talk .tag{color:var(--bronze);}
  .band.cream .talk .best, .band.cream2 .talk .best,
  .band.cream .talk ul li, .band.cream2 .talk ul li{color:var(--on-light-dim);}
  .band.cream .talk .fmt, .band.cream2 .talk .fmt{color:var(--on-light-dim);border-color:var(--line-light);}
  .band.cream .talk .tk-num, .band.cream2 .talk .tk-num{color:var(--bronze);}
  /* experiences */
  .band.cream .exp-grid, .band.cream2 .exp-grid{background:var(--line-light);border-color:var(--line-light);}
  .band.cream .exp{background:var(--cream);}
  .band.cream2 .exp{background:var(--cream-2);}
  .band.cream .exp:hover, .band.cream2 .exp:hover{background:#ece2cd;}
  .band.cream .exp .idx, .band.cream2 .exp .idx{color:var(--bronze);}
  .band.cream .exp h4, .band.cream2 .exp h4{color:var(--navy);}
  .band.cream .exp p, .band.cream2 .exp p{color:var(--on-light-dim);}
  /* gifted tree */
  .band.cream .tree-head h2, .band.cream2 .tree-head h2{color:var(--navy)!important;}
  .band.cream .stage h4, .band.cream2 .stage h4{color:var(--navy);}
  .band.cream .stage p, .band.cream2 .stage p{color:var(--on-light-dim);}
  .band.cream .stage p em, .band.cream2 .stage p em,
  .band.cream .stage .lvl, .band.cream2 .stage .lvl{color:var(--bronze);}
  .band.cream .stage .node{border-color:var(--cream);}
  .band.cream2 .stage .node{border-color:var(--cream-2);}
  .band.cream .tree-line, .band.cream2 .tree-line{color:var(--on-light);}
  .band.cream .tree-line b, .band.cream2 .tree-line b{color:var(--bronze);}
  /* proof */
  .band.cream .partners, .band.cream2 .partners{border-color:var(--line-light);}
  .band.cream .partners .names span, .band.cream2 .partners .names span{color:var(--on-light);}
  .band.cream .partners .names em, .band.cream2 .partners .names em,
  .band.cream .proof-sub, .band.cream2 .proof-sub{color:var(--bronze);}
  .band.cream .quote blockquote, .band.cream2 .quote blockquote{color:var(--navy);}
  .band.cream .quote cite b, .band.cream2 .quote cite b{color:var(--bronze);}
  .band.cream .quote cite span, .band.cream2 .quote cite span{color:var(--on-light-dim);}
  .band.cream .press, .band.cream2 .press{border-color:var(--line-light);}
  .band.cream .press .outlets a, .band.cream2 .press .outlets a{color:var(--on-light);}
  /* faq */
  .band.cream .faq details, .band.cream2 .faq details{border-color:var(--line-light);}
  .band.cream .faq summary, .band.cream2 .faq summary{color:var(--navy);}
  .band.cream .faq summary::after, .band.cream2 .faq summary::after{color:var(--bronze);}
  .band.cream .faq details p, .band.cream2 .faq details p{color:var(--on-light-dim);}

  /* ---------------- RESPONSIVE ---------------- */
  @media(max-width:1000px){
    .talks{grid-template-columns:1fr;}
    .serve-split{grid-template-columns:1fr;gap:40px;}
    .logo-wall{grid-template-columns:repeat(3,1fr);}
    .press-wall{grid-template-columns:repeat(2,1fr);}
    .result-grid{grid-template-columns:1fr;gap:40px;}
    .firm-grid,.founder-grid,.fw-4c{grid-template-columns:1fr;gap:44px;}
    .approach{grid-template-columns:1fr 1fr;}
    .approach .step{border-right:0;border-bottom:1px solid var(--line-dark);padding-right:0;}
    .rules{grid-template-columns:1fr 1fr;}
    .exp-grid{grid-template-columns:1fr 1fr;}
    .tree{grid-template-columns:1fr 1fr 1fr;row-gap:40px;}
    .tree::before{display:none;}
    .quotes{grid-template-columns:1fr;gap:30px;}
    .gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px;}
  }
  @media(max-width:680px){
    .wrap{padding:0 22px;}
    body{font-size:18px;}
    header nav{display:none;}
    .menu-toggle{display:block;}
    header.open .mobile-nav{display:flex;}
    .band{padding:74px 0;}
    .approach,.rules,.exp-grid,.tree,.gallery,.form-row{grid-template-columns:1fr;}
    .serve-list .row{grid-template-columns:1fr;gap:8px;}
    .logo-wall,.press-wall{grid-template-columns:repeat(2,1fr);}
    .talk{padding:32px 26px;}
    .tree .node,.tree::before{display:none;}
    .stage{padding:22px 0;border-bottom:1px solid var(--line-dark);}
    .gallery{grid-auto-rows:200px;}
    .gallery .g-tall{grid-row:auto;}
    .gallery .g-wide{grid-column:auto;}
    .hero-inner{padding-bottom:56px;}
  }

  /* ---------------- MULTI-PAGE ADDITIONS ---------------- */
  header nav a.active{color:var(--gold);}
  /* Page header (photo-led, dark) for interior pages */
  .page-hero{position:relative;overflow:hidden;background:var(--ink);padding:150px 0 70px;}
  .page-hero.tall{padding:170px 0 90px;}
  .page-hero-bg{position:absolute;inset:0;z-index:0;}
  .page-hero-bg img{width:100%;height:100%;object-fit:cover;opacity:0.3;object-position:center 30%;}
  .page-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,15,20,0.7),rgba(14,15,20,0.92));}
  .page-hero .wrap{position:relative;z-index:2;}
  .page-hero .eyebrow{display:block;margin-bottom:18px;}
  .page-hero h1{font-family:var(--display);font-weight:700;font-size:clamp(44px,7vw,86px);line-height:1.0;letter-spacing:-0.015em;color:#fff;margin:0;}
  .page-hero h1 .dot{color:var(--gold);}
  .page-hero p.dek{font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold-bright);font-size:clamp(20px,2.8vw,32px);margin:20px 0 0;max-width:760px;}
  .page-hero p.sub{color:var(--on-dark-dim);font-size:19px;line-height:1.6;margin:22px 0 0;max-width:680px;}
  .page-hero .brand-flow{opacity:0.7;}

  /* Bolder, larger, higher-contrast section headings across pages */
  .sec-head h2{font-weight:700;font-size:clamp(38px,5.4vw,62px);}
  .band.cream .sec-head h2, .band.cream2 .sec-head h2{color:var(--navy);}
  .sec-head .eyebrow{font-size:13px;letter-spacing:0.24em;font-weight:700;}
  .sec-head p.lede{font-size:22px;color:var(--on-light-dim);}
  .band.dark .sec-head p.lede, .band.navy .sec-head p.lede{color:var(--on-dark-dim);}

  /* End-of-page booking CTA strip */
  .cta-strip{background:var(--navy-2);padding:74px 0;text-align:center;position:relative;overflow:hidden;}
  .cta-strip h2{font-family:var(--display);font-weight:700;font-size:clamp(30px,4.4vw,52px);line-height:1.05;color:#fff;margin:0;}
  .cta-strip p{color:var(--on-dark-dim);font-size:19px;margin:18px auto 30px;max-width:560px;}
  .cta-strip .brand-flow{opacity:0.6;}
  .cta-strip .inner{position:relative;z-index:2;}

  /* Section photo band (full-bleed image used to break up content) */
  .photo-break{position:relative;height:clamp(280px,42vw,460px);overflow:hidden;}
  .photo-break img{width:100%;height:100%;object-fit:cover;object-position:center 32%;}
  .photo-break .cap{position:absolute;left:0;bottom:0;padding:26px 40px;z-index:2;
    background:linear-gradient(0deg,rgba(14,15,20,0.85),transparent);color:var(--on-dark);
    font-family:var(--display);font-style:italic;font-size:22px;}
  .photo-break::after{content:"";position:absolute;inset:0;background:rgba(14,15,20,0.12);}

  /* two-up intro image beside text */
  .split-img{border-radius:4px;width:100%;object-fit:cover;filter:grayscale(0.1) contrast(1.02);}

  /* ---------------- MULTI-PAGE NAV SIZING ---------------- */
  header nav{gap:24px;}
  header nav a{font-size:11.5px;letter-spacing:0.05em;}
  @media(max-width:1120px){ header nav{gap:18px;} header nav a{font-size:11px;letter-spacing:0.03em;} }
  @media(max-width:960px){
    header nav{display:none;}
    .menu-toggle{display:block;}
    header.open .mobile-nav{display:flex;}
  }

  /* ---------------- WHAT'S POSSIBLE: NEWS CLIPS ---------------- */
  .news-grid{display:flex;flex-direction:column;gap:14px;margin-top:8px;}
  .news-item{display:grid;grid-template-columns:190px 1fr auto;gap:28px;align-items:center;
    padding:26px 30px;border:1px solid var(--line-light);border-radius:4px;background:var(--cream);
    transition:background .2s,transform .2s;}
  .news-item:hover{background:#fff;transform:translateX(4px);}
  .news-item .outlet{font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:0.12em;
    text-transform:uppercase;color:var(--bronze);line-height:1.4;}
  .news-item h4{font-family:var(--display);font-weight:600;font-size:21px;line-height:1.28;color:var(--navy);margin:0;}
  .news-item .read{font-family:var(--ui);font-size:12px;font-weight:700;letter-spacing:0.08em;
    text-transform:uppercase;color:var(--bronze);white-space:nowrap;}
  @media(max-width:760px){.news-item{grid-template-columns:1fr;gap:10px;}.news-item .read{justify-self:start;}}

  /* ---------------- MOBILE REFINEMENT (headings + spacing) ---------------- */
  @media(max-width:680px){
    .page-hero{padding:116px 0 52px;}
    .page-hero.tall{padding:124px 0 58px;}
    .page-hero h1{font-size:38px;line-height:1.04;letter-spacing:-0.01em;}
    .page-hero p.dek{font-size:19px;margin-top:16px;}
    .page-hero p.sub{font-size:16.5px;margin-top:18px;}
    .sec-head{margin-bottom:38px;}
    .sec-head h2{font-size:29px;line-height:1.12;}
    .sec-head p.lede{font-size:17.5px;}
    .sec-head .eyebrow{font-size:11.5px;letter-spacing:0.18em;}
    .firm-statement{font-size:25px;line-height:1.3;}
    .philosophy-quote{font-size:24px;line-height:1.32;}
    .cta-strip{padding:56px 0;}
    .cta-strip h2{font-size:27px;}
    .cta-strip p{font-size:17px;}
    .founder-body h3{font-size:30px;}
    .serve-head h2{font-size:27px;}
    .serve-list .row h4{font-size:20px;}
    .tree-head h2{font-size:27px !important;}
    .result-stat{font-size:82px;}
    .result-body h3{font-size:25px;}
    .talk h4{font-size:23px;}
    .talk .tag{font-size:16px;}
    .cond h4{font-size:24px;}
    .stage h4{font-size:23px;}
    .exp h4{font-size:22px;}
    .photo-break{height:240px;}
    .photo-break .cap{font-size:17px;padding:20px 22px;}
    .press-wall{grid-template-columns:1fr;}
    .press-wall .cell{min-height:110px;}
    .news-item h4{font-size:19px;}
    .creds{gap:32px;}
  }
  @media(max-width:400px){
    .page-hero h1{font-size:34px;}
    .sec-head h2{font-size:26px;}
    .hero h1{font-size:46px;}
  }

  /* ---------------- PARTNER LOGO WALL (natural color, white cells) ---------------- */
  .partner-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line-light);
    border:1px solid var(--line-light);border-radius:4px;overflow:hidden;}
  .partner-grid .cell{background:#fff;min-height:124px;display:flex;align-items:center;justify-content:center;padding:22px 20px;}
  .partner-grid .cell img{max-height:66px;max-width:100%;width:auto;object-fit:contain;}
  @media(max-width:1000px){.partner-grid{grid-template-columns:repeat(3,1fr);}}
  @media(max-width:560px){.partner-grid{grid-template-columns:repeat(2,1fr);} .partner-grid .cell{min-height:104px;padding:16px;}}

  /* ---------------- CASE STUDY CARDS ---------------- */
  .case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;}
  .case-card{border:1px solid var(--line-light);border-radius:4px;background:var(--cream);padding:32px 28px;
    display:flex;flex-direction:column;transition:background .2s,transform .2s;}
  .case-card:hover{background:#fff;transform:translateY(-3px);}
  .case-card .ctype{font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--bronze);margin-bottom:16px;}
  .case-card h3{font-family:var(--display);font-weight:600;font-size:24px;line-height:1.16;color:var(--navy);margin:0 0 14px;}
  .case-card p{font-size:16px;line-height:1.55;color:var(--on-light-dim);margin:0 0 20px;}
  .case-card .src{margin-top:auto;font-family:var(--ui);font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--bronze);}
  @media(max-width:900px){.case-grid{grid-template-columns:1fr;}}
