
:root{
  --ink:#0b0c0e; --paper:#f2f0e9; --muted:#9a9b9d; --line:rgba(255,255,255,.14);
  --gold:#bda77e; --pad:clamp(24px,5vw,80px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:#fff;font-family:"DM Sans",sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.serif{font-family:"Libre Caslon Display",serif;font-weight:400}
.noise{pointer-events:none;position:fixed;inset:0;z-index:90;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.nav{position:fixed;z-index:100;top:0;left:0;right:0;height:88px;padding:0 var(--pad);display:flex;align-items:center;gap:42px;transition:.35s;background:linear-gradient(to bottom,rgba(11,12,14,.65),transparent)}
.nav.scrolled{height:68px;background:rgba(11,12,14,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.brand{display:flex;align-items:center;gap:12px;font-weight:600;letter-spacing:.12em}
.brand-mark{width:32px;height:32px;border:1px solid rgba(255,255,255,.55);display:grid;place-items:center;font-family:"Libre Caslon Display";font-size:18px;transform:rotate(45deg)}
.brand-mark::first-letter{transform:rotate(-45deg)}
.brand-word{font-size:14px}
.nav-links{margin-left:auto;display:flex;gap:28px;font-size:12px;color:#c7c7c8}
.nav-links a:hover{color:white}
.nav-cta{font-size:12px;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px}
.hero{min-height:100svh;position:relative;padding:150px var(--pad) 70px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero-grid{position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to bottom,black,transparent 85%)}
.hero-orb{position:absolute;border-radius:50%;filter:blur(5px);opacity:.45}
.orb-a{width:52vw;height:52vw;right:-18vw;top:-14vw;background:radial-gradient(circle at 35% 35%,#655d50 0,#24272b 40%,transparent 68%)}
.orb-b{width:38vw;height:38vw;left:-20vw;bottom:-18vw;background:radial-gradient(circle,#303840 0,transparent 68%)}
.hero-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:#9b9c9e;margin-bottom:40px}
.hero-title{font-size:clamp(54px,8.2vw,138px);line-height:.84;letter-spacing:-.055em;margin:0;max-width:1500px;position:relative}
.hero-title span{display:block}
.hero-title .serif{color:#d9d1bf;font-style:italic;font-size:.93em}
.hero-bottom{position:relative;margin-top:70px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:end}
.hero-copy{max-width:540px;color:#b6b7b8;font-size:16px;line-height:1.65}
.hero-divisions{display:flex;justify-content:flex-end;gap:30px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#d2d2d2}
.scroll-indicator{position:absolute;right:var(--pad);bottom:35px;display:flex;align-items:center;gap:12px;color:#8e8f90;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.scroll-indicator i{display:block;width:50px;height:1px;background:#666;position:relative;overflow:hidden}
.scroll-indicator i:after{content:"";position:absolute;width:22px;height:1px;background:white;animation:scan 2s infinite}
@keyframes scan{from{left:-22px}to{left:50px}}
.section-light{background:var(--paper);color:#101113}
.intro{padding:140px var(--pad) 90px}
.intro .eyebrow{color:#68696b}
.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:12vw}
.intro h2,.divisions-head h2,.founder-copy h2,.consulting-grid h2,.contact h2{font-size:clamp(48px,6vw,95px);line-height:.95;letter-spacing:-.045em;margin:0}
.intro-copy{padding-top:20px;max-width:650px}
.intro-copy p{font-size:18px;line-height:1.7;color:#4c4e51;margin:0 0 24px}
.crossline{display:flex;align-items:center;gap:20px;margin-top:110px;font-size:10px;letter-spacing:.18em;color:#656668}
.crossline i{height:1px;background:#c8c5bb;flex:1;position:relative}
.crossline i:after{content:"";position:absolute;left:65%;top:-3px;width:7px;height:7px;border-radius:50%;background:#111}
.divisions{position:relative;background:#0d0e10}
.divisions-head{padding:130px var(--pad) 80px}
.eyebrow.light{color:#777a7e}
.divisions-head h2{max-width:900px}
.division-panel{min-height:82vh;border-top:1px solid var(--line);display:grid;grid-template-columns:.5fr 2fr 1.2fr;gap:40px;padding:70px var(--pad);position:relative;overflow:hidden}
.division-number{font-size:12px;color:#707276}
.division-label{text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:#b6a783;margin-bottom:32px}
.division-content{z-index:2}
.division-content h3{font-size:clamp(48px,6vw,100px);line-height:.92;letter-spacing:-.05em;margin:0 0 40px}
.division-content p{max-width:620px;color:#a7a9ab;line-height:1.7;font-size:16px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:35px}
.tags span{border:1px solid rgba(255,255,255,.15);border-radius:100px;padding:9px 13px;font-size:10px;color:#b9babc}
.division-art{align-self:stretch;min-height:420px;border-left:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}
.division-art:before,.division-art:after{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.12);transform:rotate(20deg)}
.division-art:after{transform:rotate(65deg);inset:17%}
.division-art span{position:absolute;bottom:15px;right:-8px;font-size:clamp(38px,5vw,76px);font-weight:600;letter-spacing:-.05em;writing-mode:vertical-rl;color:rgba(255,255,255,.04)}
.art-2:before{border-radius:50%;transform:none}.art-2:after{border-radius:50%;transform:none;inset:28%}
.art-3:before{clip-path:polygon(50% 0,100% 100%,0 100%);transform:none;background:rgba(189,167,126,.06)}
.quote-section{padding:150px var(--pad);position:relative}
.quote-mark{font-family:"Libre Caslon Display";font-size:160px;line-height:.4;color:#c3b18d}
blockquote{margin:0 auto;max-width:1200px;font-size:clamp(42px,5.5vw,88px);line-height:1.05;letter-spacing:-.04em}
blockquote .serif{font-style:italic}
.quote-author{max-width:1200px;margin:60px auto 0;border-top:1px solid #cbc8bd;padding-top:20px;display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#6c6d6f}
.founder{display:grid;grid-template-columns:1.05fr 1fr;min-height:850px}
.founder-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:
radial-gradient(circle at 50% 35%,rgba(189,167,126,.22),transparent 38%),
linear-gradient(135deg,#16181c,#090a0c 70%)}
.founder-visual:before{content:"";position:absolute;width:65%;height:65%;border:1px solid rgba(255,255,255,.13);border-radius:50%}
.founder-monogram{font-family:"Libre Caslon Display";font-size:clamp(140px,20vw,360px);letter-spacing:-.13em;color:rgba(255,255,255,.06);transform:translateX(-5%)}
.founder-caption{position:absolute;left:40px;bottom:40px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#6f7275}
.founder-copy{padding:120px var(--pad);display:flex;flex-direction:column;justify-content:center}
.founder-copy p{color:#a8aaac;line-height:1.8;max-width:600px;font-size:16px}
.text-link{margin-top:30px;width:max-content;border-bottom:1px solid #777;padding-bottom:7px;font-size:12px}
.consulting-detail{padding:140px var(--pad)}
.consulting-detail .eyebrow{color:#707174}
.consulting-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:10vw}
.consulting-grid p{color:#55585a;line-height:1.7;font-size:17px}
.process{list-style:none;padding:0;margin:40px 0 0;border-top:1px solid #cbc8be}
.process li{display:grid;grid-template-columns:52px 110px 1fr;gap:18px;border-bottom:1px solid #cbc8be;padding:20px 0;align-items:center}
.process span{font-size:10px;color:#8a8b8e}.process b{font-size:13px}.process em{font-style:normal;color:#626466;font-size:13px}
.manifesto{padding:100px 0;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.manifesto-line{display:flex;width:max-content;animation:marquee 20s linear infinite}
.manifesto-line.reverse{animation-direction:reverse}
.manifesto-line span{font-size:clamp(80px,14vw,220px);line-height:.8;white-space:nowrap;padding-right:100px;letter-spacing:-.055em}
.manifesto-line .serif{color:#b7a581;font-style:italic}
@keyframes marquee{to{transform:translateX(-50%)}}
.contact{padding:130px var(--pad) 40px}
.contact h2{font-size:clamp(55px,8vw,130px);max-width:1200px}
.contact p{max-width:570px;color:#999b9e;line-height:1.7;margin:40px 0}
.contact-mail{display:inline-block;font-size:clamp(20px,3vw,42px);border-bottom:1px solid #777;padding-bottom:8px}
footer{border-top:1px solid var(--line);margin-top:130px;padding-top:30px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;color:#77797c;font-size:11px;line-height:1.7;text-transform:uppercase;letter-spacing:.12em}
.footer-brand{color:white}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .9s ease,transform .9s cubic-bezier(.22,.8,.2,1)}
.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
 .nav-links{display:none}.nav-cta{margin-left:auto}
 .hero{padding-top:130px}.hero-bottom,.intro-grid,.consulting-grid,.founder{grid-template-columns:1fr}
 .hero-divisions{justify-content:flex-start;flex-wrap:wrap}
 .division-panel{grid-template-columns:40px 1fr;min-height:auto}
 .division-art{display:none}
 .founder-visual{min-height:650px}
 footer{grid-template-columns:1fr}
}
@media(max-width:600px){
 .nav{height:70px}.brand-word{font-size:12px}.nav-cta{font-size:10px}
 .hero-title{font-size:53px}.hero-bottom{margin-top:45px}
 .intro,.quote-section,.consulting-detail,.contact{padding-top:100px;padding-bottom:90px}
 .division-panel{padding-top:55px;padding-bottom:55px}
 .process li{grid-template-columns:34px 80px 1fr}
 .quote-author{gap:30px}
}


/* Official MASEFG identity */
.brand-image{width:138px;height:34px;overflow:hidden;display:block;position:relative}
.brand-image img{width:138px;height:34px;object-fit:cover;object-position:50% 26.5%;filter:invert(1) grayscale(1) contrast(1.2);mix-blend-mode:screen}
.official-logo{margin:85px auto 0;max-width:650px;display:flex;justify-content:center}
.official-logo img{width:100%;height:auto;display:block;mix-blend-mode:multiply}
.footer-logo{width:170px;height:42px;overflow:hidden;position:relative}
.footer-logo img{width:170px;height:42px;object-fit:cover;object-position:50% 26.5%;filter:invert(1) grayscale(1) contrast(1.2);mix-blend-mode:screen}
@media(max-width:600px){
  .brand-image{width:112px;height:28px}
  .brand-image img{width:112px;height:28px}
  .official-logo{margin-top:55px;max-width:420px}
}

/* 2026 identity refinement — integrated official crest */
.brand-lockup{display:flex;align-items:center;gap:11px;min-width:max-content}
.brand-name{font-family:"Libre Caslon Display",serif;font-size:22px;letter-spacing:.12em;line-height:1}
.brand-divider{color:rgba(255,255,255,.35);font-weight:300}
.brand-divisions{font-size:9px;letter-spacing:.17em;color:#a9abad;line-height:1;white-space:nowrap}
.crest-crop{position:relative;display:block;overflow:hidden;flex:0 0 auto}
.crest-crop img{position:absolute;max-width:none;filter:invert(1) grayscale(1) contrast(1.3);mix-blend-mode:screen}
/* Source artwork: 1536x1024. Crest occupies approx x637–899 / y449–749. */
.crest-small{width:31px;height:35px}
.crest-small img{width:181px;left:-75px;top:-53px}
.nav.scrolled .crest-small{transform:scale(.9)}

/* The identity is woven into the layout instead of presented as a standalone poster. */
.intro{position:relative;overflow:hidden}
.intro:after{content:"MASEFG";position:absolute;right:-.04em;bottom:-.18em;font-family:"Libre Caslon Display",serif;font-size:clamp(120px,21vw,350px);letter-spacing:-.05em;color:rgba(16,17,19,.035);pointer-events:none}

.founder-visual:before{width:72%;height:72%;border-radius:0;transform:rotate(45deg);border-color:rgba(255,255,255,.08)}
.founder-visual:after{content:"";position:absolute;width:54%;height:54%;border:1px solid rgba(189,167,126,.15);transform:rotate(45deg)}
.founder-logo-stage{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:translateY(-1%)}
.crest-founder{width:240px;height:276px;margin-bottom:30px;filter:drop-shadow(0 25px 60px rgba(0,0,0,.28))}
.crest-founder img{width:1400px;left:-581px;top:-408px}
.founder-logo-word{font-family:"Libre Caslon Display",serif;font-size:clamp(48px,5vw,78px);letter-spacing:.18em;margin-left:.18em;color:#efede7}
.founder-logo-sub{margin-top:13px;font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:#8e9093}
.founder-caption{z-index:3}

.footer-lockup{display:flex;align-items:center;gap:14px;color:#efefec}
.footer-lockup strong{font-family:"Libre Caslon Display",serif;font-size:21px;letter-spacing:.14em;font-weight:400}
.footer-lockup span{font-size:8px;letter-spacing:.14em;color:#77797c}
.crest-footer{width:35px;height:40px}
.crest-footer img{width:205px;left:-85px;top:-60px}

/* Remove old pasted-logo rules */
.brand-image,.official-logo,.footer-logo{display:none!important}

@media(max-width:1120px){
  .brand-divisions{display:none}
  .brand-divider{display:none}
  .nav{gap:24px}
}
@media(max-width:900px){
  .brand-name{font-size:20px}
  .founder-logo-stage{transform:scale(.9)}
}
@media(max-width:600px){
  .crest-small{width:27px;height:31px}
  .crest-small img{width:157px;left:-65px;top:-46px}
  .brand-name{font-size:18px}
  .nav-cta{display:none}
  .founder-logo-stage{transform:scale(.72)}
  .founder-visual{min-height:560px}
}

/* =========================================================
   Final responsive polish — desktop + touch-first mobile
   ========================================================= */
:root{--nav-h:88px}
html{scroll-padding-top:88px;-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button{font:inherit;color:inherit}

/* True transparent crest asset: no image cropping, no white canvas. */
.crest-crop{overflow:visible}
.crest-crop img{position:static;width:100%;height:100%;object-fit:contain;filter:invert(1) brightness(1.55);mix-blend-mode:normal}
.crest-small{width:30px;height:34px}
.crest-small img{width:100%;height:100%}
.crest-founder{width:min(235px,32vw);height:auto;aspect-ratio:276/316;margin-bottom:28px}
.crest-founder img{width:100%;height:100%}
.crest-footer{width:35px;height:40px}
.crest-footer img{width:100%;height:100%}

/* Desktop navigation remains the full institutional lockup. */
.nav{padding-left:max(var(--pad),env(safe-area-inset-left));padding-right:max(var(--pad),env(safe-area-inset-right))}
.brand-lockup{gap:10px}
.brand-divisions{display:inline-block}
.menu-toggle{display:none}

/* Mobile menu is deliberately full-screen and editorial, not a generic dropdown. */
.mobile-menu{position:fixed;inset:0;z-index:95;background:rgba(9,10,12,.97);backdrop-filter:blur(24px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s ease}
.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto}
.mobile-menu-inner{height:100%;padding:calc(112px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(34px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));display:flex;flex-direction:column}
.mobile-menu-label{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#777b80;margin-bottom:34px}
.mobile-menu-inner>a{display:flex;align-items:baseline;gap:18px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1);font-family:"Libre Caslon Display",serif;font-size:clamp(40px,12vw,66px);line-height:1}
.mobile-menu-inner>a span{font-family:"DM Sans",sans-serif;font-size:9px;letter-spacing:.14em;color:#7c7f83}
.mobile-menu-foot{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:10px;font-size:9px;line-height:1.5;text-transform:uppercase;letter-spacing:.16em;color:#777b80}
.mobile-menu-foot a{color:#c5c6c7;text-transform:none;letter-spacing:.08em}
body.menu-open{overflow:hidden}

/* Desktop refinement */
@media(min-width:1181px){
  .nav-links{gap:clamp(18px,2vw,30px)}
  .nav-cta{white-space:nowrap}
  .hero{padding-top:clamp(138px,12vh,180px);padding-bottom:80px}
  .hero-bottom{margin-top:clamp(48px,7vh,82px)}
  .division-panel{min-height:min(82vh,920px)}
  .founder{min-height:min(850px,92vh)}
}

/* Medium desktop / tablet landscape: preserve lockup and move navigation into premium menu. */
@media(max-width:1180px){
  .nav-links,.nav-cta{display:none}
  .brand-lockup{margin-right:auto}
  .brand-divisions,.brand-divider{display:inline-block}
  .menu-toggle{display:flex;width:42px;height:42px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.025);border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer;position:relative;z-index:101}
  .menu-toggle span{width:15px;height:1px;background:#eee;transition:transform .3s ease,opacity .3s ease}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
}

/* Tablet portrait */
@media(max-width:900px){
  :root{--pad:clamp(28px,6vw,54px)}
  html{scroll-padding-top:76px}
  .nav{height:76px;background:linear-gradient(to bottom,rgba(11,12,14,.9),rgba(11,12,14,.18))}
  .nav.scrolled{height:68px}
  .brand-name{font-size:20px}
  .brand-divisions{font-size:8px;letter-spacing:.14em}
  .hero{min-height:100svh;padding-top:126px;padding-bottom:74px;justify-content:center}
  .hero-title{font-size:clamp(64px,10.8vw,94px);line-height:.88}
  .hero-bottom{grid-template-columns:1fr;margin-top:54px;gap:28px}
  .hero-copy{font-size:15px;max-width:620px}
  .hero-divisions{justify-content:flex-start;gap:22px}
  .scroll-indicator{bottom:26px}
  .intro-grid,.consulting-grid,.founder{grid-template-columns:1fr}
  .intro-grid{gap:52px}
  .intro-copy{max-width:720px}
  .division-panel{grid-template-columns:48px 1fr;min-height:auto;padding-top:72px;padding-bottom:72px}
  .division-art{display:none}
  .quote-section{padding-top:120px;padding-bottom:120px}
  blockquote{font-size:clamp(48px,8vw,72px)}
  .founder-visual{min-height:680px}
  .founder-copy{padding-top:100px;padding-bottom:110px}
  .consulting-grid{gap:58px}
  footer{grid-template-columns:1fr 1fr;row-gap:34px}
  .footer-lockup{grid-column:1/-1}
}

/* Phone: specifically composed, not scaled-down desktop. */
@media(max-width:640px){
  :root{--pad:22px}
  html{scroll-padding-top:70px}
  .noise{opacity:.025}
  .nav{height:70px;padding-left:max(17px,env(safe-area-inset-left));padding-right:max(17px,env(safe-area-inset-right));gap:12px}
  .nav.scrolled{height:64px;background:rgba(11,12,14,.9);backdrop-filter:blur(16px)}
  .brand-lockup{display:grid;grid-template-columns:25px auto;grid-template-rows:auto auto;column-gap:9px;row-gap:2px;align-items:center;min-width:0}
  .crest-small{width:25px;height:29px;grid-row:1/3}
  .brand-name{font-size:17px;letter-spacing:.12em;line-height:.92}
  .brand-divider{display:none}
  .brand-divisions{display:block;font-size:6.2px;letter-spacing:.12em;line-height:1.1;color:#818388;white-space:nowrap}
  .menu-toggle{width:38px;height:38px;flex:0 0 38px}

  .hero{min-height:100svh;padding-top:calc(104px + env(safe-area-inset-top));padding-bottom:calc(48px + env(safe-area-inset-bottom));justify-content:center}
  .hero-grid{background-size:62px 62px;opacity:.75}
  .orb-a{width:95vw;height:95vw;right:-47vw;top:2vh;opacity:.38}
  .orb-b{width:80vw;height:80vw;left:-52vw;bottom:2vh;opacity:.3}
  .hero-kicker{font-size:8px;line-height:1.55;letter-spacing:.17em;margin-bottom:27px;max-width:290px}
  .hero-title{font-size:clamp(47px,13.8vw,64px);line-height:.91;letter-spacing:-.052em}
  .hero-title .serif{font-size:.96em}
  .hero-bottom{margin-top:34px;gap:20px}
  .hero-copy{font-size:13px;line-height:1.62;margin:0;max-width:330px}
  .hero-divisions{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:13px;font-size:7.5px;letter-spacing:.08em;color:#9d9fa2}
  .scroll-indicator{right:22px;bottom:21px;font-size:8px}
  .scroll-indicator i{width:34px}

  .intro,.quote-section,.consulting-detail,.contact{padding-top:92px;padding-bottom:84px}
  .eyebrow{font-size:8.5px;letter-spacing:.2em;margin-bottom:28px}
  .intro-grid{gap:42px}
  .intro h2,.divisions-head h2,.founder-copy h2,.consulting-grid h2,.contact h2{font-size:clamp(43px,12.2vw,58px);line-height:.98;letter-spacing:-.043em}
  .intro-copy{padding-top:0}
  .intro-copy p{font-size:14.5px;line-height:1.7;margin-bottom:18px}
  .crossline{margin-top:68px;gap:12px;font-size:7.5px;letter-spacing:.13em}
  .intro:after{font-size:48vw;bottom:-.12em;color:rgba(16,17,19,.025)}

  .divisions-head{padding:92px var(--pad) 54px}
  .division-panel{display:grid;grid-template-columns:29px 1fr;gap:14px;padding:52px var(--pad) 58px}
  .division-number{font-size:9px;padding-top:4px}
  .division-label{font-size:8.5px;margin-bottom:22px}
  .division-content h3{font-size:clamp(45px,12vw,59px);line-height:.95;margin-bottom:28px}
  .division-content p{font-size:13.5px;line-height:1.7;margin:0}
  .tags{gap:6px;margin-top:28px}
  .tags span{font-size:7.5px;padding:7px 9px}

  .quote-section{padding-top:105px;padding-bottom:105px}
  .quote-mark{font-size:105px;margin-left:-2px}
  blockquote{font-size:clamp(39px,10.7vw,52px);line-height:1.02}
  .quote-author{margin-top:40px;padding-top:15px;display:grid;gap:6px;font-size:8px;letter-spacing:.12em}

  .founder{display:flex;flex-direction:column;min-height:auto}
  .founder-visual{min-height:500px;order:0}
  .founder-visual:before{width:74%;height:74%}
  .founder-visual:after{width:52%;height:52%}
  .founder-logo-stage{transform:none;width:100%;padding:50px 24px 76px}
  .crest-founder{width:142px;margin-bottom:24px}
  .founder-logo-word{font-size:42px;letter-spacing:.15em;margin-left:.15em}
  .founder-logo-sub{font-size:7px;letter-spacing:.16em;margin-top:10px}
  .founder-caption{left:22px;bottom:20px;font-size:7.5px;letter-spacing:.14em}
  .founder-copy{padding:82px var(--pad) 92px}
  .founder-copy p{font-size:13.5px;line-height:1.72}
  .text-link{margin-top:20px;font-size:10px}

  .consulting-grid{gap:42px}
  .consulting-grid p{font-size:14px;line-height:1.7;margin-top:0}
  .process{margin-top:30px}
  .process li{grid-template-columns:26px 70px 1fr;gap:8px;padding:15px 0;align-items:start}
  .process span{font-size:8px;padding-top:2px}.process b{font-size:10.5px}.process em{font-size:10.5px;line-height:1.45}

  .manifesto{padding:70px 0}
  .manifesto-line span{font-size:22vw;padding-right:52px}
  .contact{padding-bottom:max(32px,env(safe-area-inset-bottom))}
  .contact p{font-size:13.5px;line-height:1.7;margin:28px 0 34px}
  .contact-mail{font-size:clamp(17px,5.2vw,23px);padding-bottom:7px;overflow-wrap:anywhere}
  footer{margin-top:86px;grid-template-columns:1fr;gap:26px;padding-top:25px;font-size:8.5px;letter-spacing:.1em}
  .footer-lockup{grid-column:auto}
  .footer-lockup strong{font-size:19px}
  .footer-lockup span{font-size:6.8px}
  .crest-footer{width:31px;height:36px}
}

/* Very small phones (320–375 px) */
@media(max-width:380px){
  :root{--pad:18px}
  .brand-divisions{font-size:5.5px;letter-spacing:.08em}
  .hero-title{font-size:45px}
  .hero-divisions{gap:9px;font-size:7px}
  .process li{grid-template-columns:23px 62px 1fr}
  .founder-logo-word{font-size:36px}
}

/* Touch devices: eliminate hover-only affordances and expensive effects. */
@media(pointer:coarse){
  .nav-links a:hover{color:inherit}
  .text-link,.contact-mail{-webkit-tap-highlight-color:transparent}
  .hero-orb{filter:none}
}

/* Respect accessibility and preserve premium smoothness without forced motion. */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
}


/* Premium language switch */
.lang-switch{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.16em;margin-left:18px;color:#77797c}
.lang-switch button{appearance:none;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;padding:7px 3px;cursor:pointer;transition:color .25s ease,opacity .25s ease}
.lang-switch button.active{color:#fff}
.lang-switch button:not(.active){opacity:.55}
.lang-switch span{opacity:.28}
@media(max-width:900px){
  .lang-switch{margin-left:8px;gap:4px}
  .lang-switch button{padding:8px 2px}
}
@media(max-width:600px){
  .lang-switch{font-size:9px;margin-left:6px}
}
