@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=DM+Mono:wght@300;400&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body{background:#F5F0E8;color:#1C1C1E;font-family:'DM Sans',system-ui,sans-serif;font-weight:300;line-height:1.6;overflow-x:hidden;width:100%;opacity:0;transition:opacity .15s ease}
body.loaded{opacity:1}

:root{
  --cream:#F5F0E8;--cream-deep:#EDE7D9;--cream-border:#DDD5C4;
  --charcoal:#1C1C1E;--charcoal-mid:#3A3A3C;--charcoal-light:#6B6B6E;
  --accent:#8B6914;--accent-light:#C4961F;--accent-pale:#F0E4C4;--white:#FDFAF5;
  --font-display:'Cormorant Garamond',Georgia,serif;
  --font-body:'DM Sans',system-ui,sans-serif;
  --font-mono:'DM Mono','Courier New',monospace;
  --nav-height:64px;
  --ease:cubic-bezier(0.16,1,0.3,1);
  --shadow-soft:0 10px 30px rgba(28,28,30,.06);
  --shadow-medium:0 20px 50px rgba(28,28,30,.10);
  --radius:2px;
}

.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}
.label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:400}
p{max-width:72ch}

/* ── NAV — only targets main nav, never footer nav ── */
body > nav{position:fixed;top:0;left:0;right:0;height:var(--nav-height);z-index:1000;transition:background .2s,border-color .2s;border-bottom:1px solid var(--cream-border);background:rgba(245,240,232,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
body > nav.scrolled{background:rgba(245,240,232,.98)}

/* About page — nav always visible since hero is dark */
body.about-page > nav{background:rgba(28,28,30,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)}
body.about-page > nav.scrolled{background:rgba(245,240,232,.96);border-bottom-color:var(--cream-border)}
body.about-page > nav.scrolled .nav-logo-word{color:var(--charcoal)}
body.about-page > nav.scrolled .nav-links a{color:var(--charcoal-mid)}
body.about-page > nav .nav-logo-word{color:var(--cream);transition:color .3s}
body.about-page > nav .nav-logo-tagline{color:var(--accent-light)}
body.about-page > nav .nav-links a{color:rgba(245,240,232,.7);transition:color .2s}
body.about-page > nav .nav-links a:hover{color:var(--cream)}
body.about-page > nav .nav-toggle span{background:var(--cream)}
body.about-page > nav.scrolled .nav-toggle span{background:var(--charcoal)}

/* Footer nav reset */
footer nav{position:static!important;height:auto!important;border:none!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

.nav-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:1rem}
.nav-logo{display:flex;flex-direction:column;text-decoration:none;gap:2px;flex-shrink:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.nav-logo-word{font-family:var(--font-display);font-size:1.35rem;font-weight:400;color:var(--charcoal);letter-spacing:.04em;line-height:1;transition:color .3s}
.nav-logo-tagline{font-family:var(--font-mono);font-size:.52rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.nav-links{display:flex;align-items:center;gap:1.75rem;list-style:none}
.nav-links a{font-family:var(--font-mono);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--charcoal-mid);transition:color .2s;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:44px;display:inline-flex;align-items:center}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--charcoal)}
.nav-cta{background:var(--charcoal)!important;color:var(--cream)!important;padding:.4rem .9rem;border-radius:var(--radius);transition:background .2s!important}
.nav-cta:hover{background:var(--accent)!important}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;align-items:center;cursor:pointer;padding:10px;background:none;border:none;flex-shrink:0;z-index:1001;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-width:44px;min-height:44px}
.nav-toggle span{display:block;width:22px;height:1.5px;background:var(--charcoal);transition:transform .3s var(--ease),opacity .3s,background .3s;transform-origin:center;will-change:transform}

.features-grid{grid-template-columns:1fr}
@media(max-width:1024px){
  .nav-toggle{display:flex}
  .nav-links{display:none}
  .nav-links.open{display:flex;position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;background:var(--cream);flex-direction:column;align-items:stretch;padding:1.5rem;gap:0;z-index:999;border-top:1px solid var(--cream-border);overflow-y:auto}
  .nav-links.open li{width:100%}
  .nav-links.open a{font-size:.82rem;color:var(--charcoal)!important;padding:1rem 0;border-bottom:1px solid var(--cream-border);width:100%;display:flex;align-items:center;min-height:52px}
  .nav-links.open .nav-cta{background:var(--charcoal)!important;color:var(--cream)!important;padding:1rem 1.25rem!important;border-radius:var(--radius);border-bottom:none!important;margin-top:1rem;justify-content:center}
}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:.5rem;background:var(--charcoal);color:var(--cream);padding:.85rem 1.75rem;font-family:var(--font-mono);font-size:.63rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid var(--charcoal);border-radius:var(--radius);cursor:pointer;transition:background .25s,border-color .25s;white-space:nowrap;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:44px}
.btn-primary:hover{background:var(--accent);border-color:var(--accent)}
.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--charcoal);padding:.85rem 1.75rem;font-family:var(--font-mono);font-size:.63rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid var(--cream-border);border-radius:var(--radius);cursor:pointer;transition:border-color .25s,background .25s;white-space:nowrap;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:44px}
.btn-secondary:hover{border-color:var(--charcoal);background:rgba(28,28,30,.03)}

/* ── HERO ── */
.hero{min-height:100vh;display:flex;align-items:center;padding-top:var(--nav-height);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(196,150,31,.09),transparent 38%),radial-gradient(circle at 80% 70%,rgba(139,105,20,.11),transparent 42%);pointer-events:none}
.hero::after{content:'';position:absolute;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%231C1C1E' stroke-width='1'%3E%3Cpath d='M0 60h120M60 0v120'/%3E%3C/g%3E%3C/svg%3E");mix-blend-mode:multiply;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:5rem 0 4rem;position:relative;z-index:1}
.hero-eyebrow{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.hero-eyebrow-line{width:28px;height:1px;background:var(--accent);flex-shrink:0}
.hero-headline{font-family:var(--font-display);font-size:clamp(2.8rem,5vw,5rem);font-weight:300;line-height:.98;letter-spacing:-.02em;color:var(--charcoal);margin-bottom:1.5rem}
.hero-headline em{font-style:italic;color:var(--accent)}
.hero-subhead{font-size:.98rem;font-weight:300;color:var(--charcoal-mid);line-height:1.8;margin-bottom:2.5rem}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.hero-panel{display:flex;flex-direction:column;gap:2px}
.hero-panel-card{background:var(--white);border:1px solid var(--cream-border);padding:2rem 2rem 1.75rem;position:relative;overflow:hidden;box-shadow:var(--shadow-soft)}
.hero-panel-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);transform:scaleY(0);transition:transform .4s var(--ease);transform-origin:bottom}
.hero-panel-card:hover::before{transform:scaleY(1)}
.hero-stat-number{font-family:var(--font-display);font-size:2.8rem;font-weight:300;color:var(--charcoal);line-height:1;display:block;margin-bottom:.6rem}
.hero-stat-label{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--charcoal-light);display:block}
.hero-stat-source{font-family:var(--font-mono);font-size:.68rem;color:var(--accent);margin-top:.35rem;letter-spacing:.06em;display:block}

/* ── DIAGRAM ── */
.diagram-section{background:var(--charcoal);padding:2.5rem 0}
.diagram-label{margin-bottom:1.5rem}
.diagram-label .label{color:rgba(245,240,232,.4)}
.diagram-flow{display:flex;align-items:center;gap:.75rem;overflow-x:auto;padding-bottom:.5rem}
.diagram-node{flex-shrink:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:1rem 1.25rem;text-align:center;min-width:130px}
.diagram-node-accent{background:rgba(139,105,20,.15);border-color:rgba(196,150,31,.3)}
.diagram-node-icon{font-size:1.1rem;color:rgba(245,240,232,.18);margin-bottom:.5rem;display:block}
.diagram-node-accent .diagram-node-icon{color:var(--accent-light)}
.diagram-node-title{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream);margin-bottom:.3rem}
.diagram-node-desc{font-size:.7rem;font-weight:300;color:rgba(245,240,232,.45);line-height:1.4}
.diagram-arrow{color:rgba(245,240,232,.2);font-size:1.1rem;flex-shrink:0}

/* ── SECTIONS ── */
.section-header{margin-bottom:3rem}
.section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:.98;color:var(--charcoal);margin-top:.5rem}
.section-title em{font-style:italic;color:var(--accent)}
.section-subtext{font-size:.9rem;font-weight:300;color:var(--charcoal-light);margin-top:1rem;line-height:1.7}

/* ── PILLARS (primary) ── */
.pillars{background:var(--white);border-top:1px solid var(--cream-border);padding:5rem 0}
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}
.pillar-card{padding:2.5rem 2rem;border:1px solid var(--cream-border);border-radius:var(--radius);position:relative;background:var(--white);transition:box-shadow .3s,transform .3s}
.pillar-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-3px)}
.pillar-card::before{content:'';position:absolute;top:0;left:2rem;right:2rem;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .4s var(--ease);transform-origin:left}
.pillar-card:hover::before{transform:scaleX(1)}
.pillar-number{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.15em;color:var(--cream-border);margin-bottom:1.5rem;display:block}
.pillar-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--charcoal);margin-bottom:1rem;line-height:1.1}
.pillar-desc{font-size:.9rem;font-weight:300;color:var(--charcoal-mid);line-height:1.8;max-width:none}

/* ── FEATURES (supporting) ── */
.features{background:#F8F5EE;border-top:1px solid var(--cream-border);border-bottom:1px solid var(--cream-border);padding:5rem 0}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--cream-border);overflow:hidden}
.feature-card{padding:2rem 1.75rem;border-right:1px solid var(--cream-border);border-bottom:1px solid var(--cream-border);transition:background .3s}
.feature-card:hover{background:var(--cream)}
.feature-number{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.15em;color:var(--cream-border);margin-bottom:1.5rem;display:block}
.feature-icon{width:28px;height:28px;margin-bottom:1rem;color:var(--accent)}
.feature-title{font-family:var(--font-display);font-size:1.3rem;font-weight:400;color:var(--charcoal);margin-bottom:.6rem;line-height:1.1}
.feature-desc{font-size:.84rem;font-weight:300;color:var(--charcoal-mid);line-height:1.75;max-width:none}

/* ── STATS ── */
.stats-bar{background:var(--charcoal);padding:3rem 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid rgba(255,255,255,.08)}
.stat-item{padding:1.5rem 1.25rem;border-right:1px solid rgba(255,255,255,.08);text-align:center}
.stat-number{font-family:var(--font-display);font-size:2.4rem;font-weight:300;color:var(--cream);line-height:1;display:block}
.stat-desc{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(245,240,232,.4);display:block;margin-top:.4rem}
.stat-source{font-family:var(--font-mono);font-size:.68rem;color:var(--accent-light);display:block;margin-top:.25rem}

/* ── RESEARCH ── */
.research{background:var(--cream);padding:5rem 0;position:relative;border-top:1px solid var(--cream-border)}
.research::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(139,105,20,.4),transparent)}
.research-inner{display:grid;grid-template-columns:1fr 1.8fr;gap:4rem;align-items:start}
.research-quote{font-family:var(--font-display);font-size:1.75rem;font-weight:300;font-style:italic;line-height:1.4;color:var(--charcoal-mid);border-left:2px solid var(--accent);padding-left:1.5rem}
.research-attribution{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--charcoal-light);margin-top:1rem}
.research-also-note{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--charcoal-light)}
.research-body p{font-size:.92rem;font-weight:300;color:var(--charcoal-mid);line-height:1.85;margin-bottom:1rem;max-width:none}
.research-tag{display:inline-block;background:var(--accent-pale);color:var(--accent);font-family:var(--font-mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .55rem;border-radius:var(--radius);margin:.2rem .25rem .2rem 0}

/* ── SUBSTACK ── */
.substack-section{background:var(--cream-deep);border-top:1px solid var(--cream-border);padding:5rem 0}
.substack-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:2.5rem;gap:1rem;flex-wrap:wrap}
.substack-article{background:var(--white);border:1px solid var(--cream-border);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:1fr 300px;box-shadow:var(--shadow-soft);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.substack-article:hover{transform:translateY(-3px);box-shadow:var(--shadow-medium)}
.substack-content{padding:2.5rem 2rem;display:flex;flex-direction:column;gap:1rem}
.substack-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.substack-issue{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-pale);padding:.2rem .5rem;border-radius:var(--radius)}
.substack-date{font-family:var(--font-mono);font-size:.58rem;color:var(--charcoal-light)}
.substack-author{font-family:var(--font-mono);font-size:.58rem;color:var(--charcoal-light)}
.substack-title{font-family:var(--font-display);font-size:1.75rem;font-weight:400;color:var(--charcoal);line-height:1.15}
.substack-excerpt{font-size:.88rem;font-weight:300;color:var(--charcoal-mid);line-height:1.8;flex:1;max-width:none}
.substack-read-link{display:inline-flex;align-items:flex-end;gap:.5rem;color:var(--charcoal);text-decoration:none;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--charcoal);padding-bottom:2px;transition:color .2s,border-color .2s;width:fit-content;-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;min-height:44px}
.substack-read-link:hover{color:var(--accent);border-color:var(--accent)}
.substack-visual{background:var(--charcoal);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;position:relative;overflow:hidden}
.substack-visual::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 70%,rgba(139,105,20,.22),transparent 55%)}
.substack-visual-text{position:relative;z-index:1}
.substack-visual-headline{font-family:var(--font-display);font-size:1.2rem;font-weight:300;font-style:italic;color:var(--cream);line-height:1.45;margin-bottom:.75rem}
.substack-visual-sub{font-family:var(--font-mono);font-size:.52rem;letter-spacing:.08em;color:rgba(245,240,232,.35);text-transform:uppercase;margin-bottom:1.5rem}
.substack-follow{display:inline-flex;align-items:center;gap:.5rem;background:rgba(245,240,232,.08);border:1px solid rgba(245,240,232,.16);color:var(--cream);padding:.55rem 1rem;font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:var(--radius);transition:background .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.substack-follow:hover{background:rgba(245,240,232,.16)}

/* ── CONTACT ── */
.contact-section{background:var(--white);border-top:1px solid var(--cream-border);padding:5rem 0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.contact-pitch{font-size:.92rem;font-weight:300;color:var(--charcoal-mid);line-height:1.85;margin-bottom:2rem;max-width:none;transition:opacity .3s}
.contact-detail{display:flex;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--cream-border)}
.contact-detail-label{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);min-width:68px;padding-top:2px;flex-shrink:0}
.contact-detail-value{font-size:.86rem;color:var(--charcoal-mid);font-weight:300}
.contact-form{display:flex;flex-direction:column;gap:1rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{display:flex;flex-direction:column;gap:.35rem}
.form-label{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal-light)}
.form-input,.form-select,.form-textarea{background:var(--cream);border:1px solid var(--cream-border);border-radius:var(--radius);padding:.75rem 1rem;font-family:var(--font-body);font-size:.9rem;font-weight:300;color:var(--charcoal);transition:border-color .2s,background .2s;outline:none;width:100%;appearance:none;-webkit-appearance:none;min-height:44px}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);background:var(--white)}
.form-input::placeholder,.form-textarea::placeholder{color:var(--charcoal-light)}
.form-textarea{resize:vertical;min-height:120px}
.form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B6B6E' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:2.25rem}

/* ── FOOTER ── */
footer{background:var(--charcoal);padding:2.5rem 0}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap}
.footer-logo{font-family:var(--font-display);font-size:1.3rem;font-weight:300;letter-spacing:.06em;color:var(--cream)}
.footer-tagline{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,232,.28);margin-top:.3rem}
.footer-location{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;color:rgba(245,240,232,.22);margin-top:.2rem}
.footer-links{display:flex;gap:1.75rem;list-style:none;flex-wrap:wrap;align-items:center}
.footer-links a{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,232,.38);text-decoration:none;transition:color .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;min-height:44px;display:inline-flex;align-items:center}
.footer-links a:hover{color:var(--cream)}
.footer-copy{font-family:var(--font-mono);font-size:.68rem;color:rgba(245,240,232,.2);letter-spacing:.04em;align-self:flex-end}

/* ── ABOUT PAGE ── */
.about-hero{min-height:65vh;display:flex;align-items:flex-end;padding-top:calc(var(--nav-height) + 4rem);padding-bottom:4rem;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 30%,rgba(196,150,31,.12),transparent 38%),radial-gradient(circle at 80% 70%,rgba(139,105,20,.15),transparent 42%),var(--charcoal)}
.about-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.08),rgba(0,0,0,.32));pointer-events:none}
.about-hero-inner{position:relative;z-index:1}
.about-hero-label{color:var(--accent-light)!important}
.about-hero-headline{font-family:var(--font-display);font-size:clamp(2.8rem,7vw,5.5rem);font-weight:300;line-height:.98;color:var(--cream);margin-top:.5rem}
.about-hero-headline em{font-style:italic;color:var(--accent-light)}
.about-hero-sub{font-size:1rem;font-weight:300;color:rgba(245,240,232,.58);max-width:480px;line-height:1.75;margin-top:1.5rem}

.origin-section{background:var(--charcoal);padding:1.75rem 0;border-top:1px solid rgba(255,255,255,.07)}
.origin-inner{display:flex;align-items:center;gap:1.5rem}
.origin-text{font-family:var(--font-display);font-size:1.05rem;font-weight:300;font-style:italic;color:rgba(245,240,232,.55);line-height:1.65}
.origin-text strong{font-style:normal;font-weight:400;color:var(--cream)}

.team-section{background:var(--white);padding:5rem 0;border-top:1px solid var(--cream-border)}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;margin-top:3rem;align-items:start}
.team-card{background:rgba(253,250,245,.95);border:1px solid rgba(221,213,196,.8);padding:2.5rem 2rem;box-shadow:var(--shadow-soft);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.team-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-medium)}
.team-card-role{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem}
.team-card-name{font-family:var(--font-display);font-size:2rem;font-weight:400;color:var(--charcoal);margin-bottom:1rem;line-height:1.05}
.team-card-bio{font-size:.88rem;font-weight:300;color:var(--charcoal-mid);line-height:1.8;margin-bottom:1.5rem;max-width:none}
.team-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}
.linkedin-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--cream);border:1px solid var(--cream-border);padding:.45rem .85rem;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;color:var(--charcoal-mid);text-decoration:none;border-radius:var(--radius);transition:background .2s,border-color .2s,color .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:36px}
.linkedin-badge:hover{background:var(--accent-pale);border-color:var(--accent);color:var(--accent)}
.linkedin-dot{width:6px;height:6px;background:#0A66C2;border-radius:50%;flex-shrink:0}

.values-section{background:var(--cream-deep);border-top:1px solid var(--cream-border);padding:5rem 0}
.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0;border-left:1px solid var(--cream-border);margin-top:3rem}

.about-cta{background:var(--charcoal);padding:3rem 0}
.about-cta-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}
.about-cta-headline{font-family:var(--font-display);font-size:2rem;font-weight:300;color:var(--cream);line-height:1.1}
.about-cta-sub{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,232,.32);margin-top:.35rem}

/* ── ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
.reveal.visible{opacity:1;transform:translateY(0)}
.hero-eyebrow{animation:fadeUp .7s var(--ease) .15s both}
.hero-copy .hero-headline{animation:fadeUp .7s var(--ease) .25s both}
.hero-copy .hero-subhead{animation:fadeUp .7s var(--ease) .37s both}
.hero-copy .hero-actions{animation:fadeUp .7s var(--ease) .48s both}
.hero-panel{animation:fadeIn .9s var(--ease) .55s both}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* ── RESPONSIVE ── */
.features-grid{grid-template-columns:1fr}
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr;padding:4rem 0 3rem}
  .hero-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
  .research-inner{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr;gap:3rem}
  .pillars-grid{grid-template-columns:1fr}
}

@media(max-width:768px){
  .hero-grid{padding:3rem 0 2.5rem}
  .hero-panel{grid-template-columns:1fr}
  .features-grid{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
  .substack-article{grid-template-columns:1fr}
  .substack-visual{min-height:180px}
  .form-row{grid-template-columns:1fr}
  .footer-inner{flex-direction:column;align-items:flex-start}
  .substack-header{flex-direction:column}
  .hero-actions{flex-direction:column;align-items:flex-start}
  .diagram-flow{flex-direction:column;align-items:stretch}
  .diagram-arrow{transform:rotate(90deg);text-align:center}
  .about-cta-inner{flex-direction:column;align-items:flex-start}
  .values-grid{grid-template-columns:1fr}
  .pillars-grid{grid-template-columns:1fr}
}

@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr 1fr}
  .hero-stat-number{font-size:2.2rem}
  .team-grid{grid-template-columns:1fr}
}
