/* RH / LE TERRAIN ET LES FAITS — static one-page portfolio
   No framework, no cookies, no external fonts, responsive and accessible. */
:root{--ink:#152a29;--night:#112624;--night2:#19322f;--paper:#f5f5ef;--white:#fffef8;--muted:#65716c;--line:#d8ded6;--lime:#d3f47e;--teal:#245b52;--copper:#ec8663;--shell:1200px;--radius:6px;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.nav-open{overflow:hidden}
::selection{background:var(--lime);color:var(--night)}
img,svg{max-width:100%;display:block}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid #a4b6ff;outline-offset:4px;border-radius:2px}
[hidden]{display:none!important}
.shell{width:min(var(--shell),calc(100% - 90px));margin-inline:auto}
.skip-link{position:fixed;z-index:9999;top:-70px;left:16px;padding:12px 16px;background:var(--lime);color:var(--night);font-weight:700}
.skip-link:focus{top:12px}
.announcement-bar{height:31px;display:flex;align-items:center;justify-content:center;gap:13px;background:var(--lime);font-size:9px;letter-spacing:.18em;font-weight:800;color:var(--night)}
.beacon,.status-dot,.mini-indicator{display:inline-block;width:7px;height:7px;background:#158563;border-radius:50%;box-shadow:0 0 0 3px rgba(21,133,99,.10)}
.announcement-separator{opacity:.35}
.site-header{position:sticky;top:0;z-index:60;background:var(--night);color:#f6f6ee;border-bottom:1px solid rgba(255,255,255,.11);transition:box-shadow .25s,background .25s}
.site-header.is-scrolled{box-shadow:0 14px 35px rgba(8,26,23,.17);background:rgba(17,38,36,.97);backdrop-filter:blur(14px)}
.nav-shell{height:77px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;gap:13px;min-width:190px}
.brand-mark{font-size:36px;font-weight:900;letter-spacing:-.085em;line-height:1}
.brand-period,.footer-logo span{color:var(--lime)}
.brand-caption{font-size:9px;line-height:1.3;letter-spacing:.12em;font-weight:700;color:#d9e0d9}
.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto}
.desktop-nav a{font-size:11px;font-weight:650;letter-spacing:.018em;color:#cfdbd3;transition:color .2s}
.desktop-nav a:hover{color:var(--lime)}
.nav-contact{padding:12px 15px;border:1px solid #789087;font-size:11px;font-weight:800;white-space:nowrap;display:flex;align-items:center;gap:22px;transition:background .2s,color .2s}
.nav-contact:hover{background:var(--lime);color:var(--night);border-color:var(--lime)}
.mobile-menu-toggle{display:none;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:none;border:1px solid #516c64;cursor:pointer}
.mobile-menu-toggle span{display:block;width:20px;height:1.5px;background:var(--white)}
.mobile-nav{background:var(--night);padding:10px 24px 24px;border-top:1px solid rgba(255,255,255,.15)}
.mobile-nav a{display:block;color:var(--white);padding:13px 6px;border-bottom:1px solid rgba(255,255,255,.13);font-size:15px}
.section{padding:121px 0}
.kicker,.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.18em;font-weight:800;text-transform:uppercase;color:#576d61}
.kicker-index{color:#b3684b}
.kicker-light{color:#c1d3c9}
.kicker-light .kicker-index{color:var(--lime)}
h1,h2,h3,p,blockquote{margin-top:0}
h1,h2,h3{line-height:1.08;letter-spacing:-.054em}
h1{font-size:clamp(57px,5.55vw,91px);font-weight:780}
h2{font-size:clamp(43px,5.1vw,77px);font-weight:760}
h3{font-size:clamp(26px,2.6vw,40px);font-weight:730}
h1 em,h2 em,h3 em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.065em}
.section-lead{margin-bottom:50px}
.section-lead h2{margin:20px 0 20px}
.section-lead>p:last-child{max-width:585px;color:#5b6861;font-size:17px;line-height:1.75}
.section-lead-split{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:65px}
.section-lead-split>p:last-child{max-width:365px;justify-self:end;margin-bottom:14px}
/* Hero */
.hero{position:relative;overflow:hidden;background:var(--night);color:var(--white)}
.hero-grain{position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle at 16% 42%,rgba(211,244,126,.09),transparent 41%),radial-gradient(circle at 76% 67%,rgba(67,151,119,.17),transparent 34%)}
.hero-layout{position:relative;display:grid;grid-template-columns:1.25fr .85fr;gap:44px;align-items:center;min-height:670px;padding-top:76px;padding-bottom:83px}
.hero-content{position:relative;z-index:2}
.hero-eyebrow{color:#bbd0c4;margin-bottom:30px;gap:12px;flex-wrap:wrap}
.eyebrow-line{height:1px;width:31px;background:var(--lime)}
.eyebrow-dot{color:var(--lime)}
.hero h1{margin-bottom:23px;white-space:nowrap}
.hero h1 em{color:var(--lime)}
.outline-word{color:transparent;-webkit-text-stroke:1.7px #dbe6de;text-stroke:1.7px #dbe6de}
.hero-description{max-width:590px;color:#bed0c5;font-size:17px;line-height:1.8;margin-bottom:33px}
.hero-actions{display:flex;align-items:center;gap:31px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:15px 18px;font-weight:780;font-size:12px;min-height:51px;border:1px solid transparent;transition:background .23s,transform .23s,color .23s}
.btn:hover{transform:translateY(-3px)}
.btn-lime{background:var(--lime);color:var(--night)}
.btn-lime:hover{background:#e4ffa7}
.btn-arrow{font-size:22px;line-height:1;font-weight:400}
.btn-link{font-size:12px;font-weight:700;border-bottom:1px solid #718d80;padding:8px 0;color:#e9f0ea}
.btn-link span{padding-left:13px;color:var(--lime)}
.hero-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:55px;color:#a9c1b2;font-size:10px;letter-spacing:.05em}
.hero-meta span{display:flex;align-items:center;gap:11px}
.status-dot{width:6px;height:6px;background:var(--lime);box-shadow:0 0 0 4px rgba(211,244,126,.08)}
.hero-visual{position:relative;width:100%;height:513px;background:#1d3933;border:1px solid #4a655c;isolation:isolate;transform:rotate(1.2deg);box-shadow:18px 19px 0 rgba(3,18,16,.25)}
.visual-grid{position:absolute;inset:0;background:linear-gradient(rgba(204,246,192,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(204,246,192,.05) 1px,transparent 1px);background-size:33px 33px;mask-image:linear-gradient(#000 50%,transparent);z-index:-1}
.visual-head{display:flex;align-items:center;justify-content:space-between;padding:21px 24px 18px;color:#bbd5c6;border-bottom:1px solid rgba(255,255,255,.13);font-size:9px;letter-spacing:.12em;font-weight:700}
.visual-head-left{display:flex;align-items:center;gap:8px}
.mini-indicator{width:5px;height:5px;background:var(--lime)}
.visual-title{font-size:30px;line-height:1.1;letter-spacing:-.052em;padding:24px 27px 0;color:#e1ebe1}
.visual-title strong{color:var(--lime);font-weight:750}
.network-canvas{position:relative;margin:-4px auto 0;height:320px;max-width:440px}
.network-paths{position:absolute;inset:0;width:100%;height:100%;color:#accdb6}
.network-center{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:119px;height:119px;background:var(--lime);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--night);box-shadow:0 0 0 10px rgba(211,244,126,.09),0 0 0 26px rgba(211,244,126,.045)}
.network-center>span:not(.network-pulse){font-size:35px;line-height:1;font-weight:850;letter-spacing:-.09em}
.network-center small{font-size:8px;font-weight:750;letter-spacing:.08em;margin-top:5px}
.network-pulse{position:absolute;inset:-28px;border:1px solid #cee6b0;border-radius:50%;opacity:.38;animation:pulse 4s infinite ease-out}
@keyframes pulse{0%{transform:scale(.82);opacity:.45}70%{transform:scale(1.08);opacity:0}100%{transform:scale(1.08);opacity:0}}
.site-node{position:absolute;width:92px;height:92px;border:1px solid #aec5b7;background:#294b40;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--white)}
.site-node span{font-size:25px;font-weight:600;line-height:1}
.site-node small{font-size:6px;letter-spacing:.1em;margin-top:6px}
.site-node-a{top:26px;left:12%;animation:float 6s ease-in-out infinite}
.site-node-b{top:21px;right:10%;animation:float 5s ease-in-out infinite .6s}
.site-node-c{bottom:3px;right:10%;animation:float 6s ease-in-out infinite 1.3s}
@keyframes float{50%{transform:translateY(-7px)}}
.visual-footer{position:absolute;bottom:0;left:0;right:0;min-height:68px;padding:13px 24px;border-top:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:.12em;font-weight:800;color:#becfc3}
.visual-count{font-size:28px;letter-spacing:-.05em;line-height:1;color:var(--lime)}
.visual-count small{font-size:9px;font-weight:400;color:#d5e4d6;letter-spacing:0;margin-left:6px}
.floating-tag{position:absolute;top:95px;right:-18px;transform:rotate(-4deg);background:var(--copper);color:#192622;padding:8px 12px;font-size:10px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.16)}
.floating-tag span{font-size:17px;vertical-align:-1px}
.hero-bottom{position:relative;border-top:1px solid rgba(255,255,255,.1);background:#122b27}
.hero-bottom-inner{min-height:65px;display:flex;align-items:center;justify-content:space-between;color:#bfd0c4;font-size:9px;font-weight:760;letter-spacing:.17em;gap:12px}
.hero-bottom a{color:var(--lime)}.hero-bottom a span{font-size:17px;margin-left:8px}
/* Metrics */
.metrics-section{background:var(--paper)}
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:var(--white)}
.metric-card{min-height:284px;position:relative;padding:23px 23px 26px;border-right:1px solid var(--line)}
.metric-card:last-child{border-right:0}
.metric-index{font-size:9px;letter-spacing:.16em;font-weight:800;color:#6c766e;margin-bottom:42px}
.metric-number{font-size:clamp(61px,5.2vw,83px);line-height:.9;letter-spacing:-.085em;font-weight:800;margin-bottom:29px;font-variant-numeric:tabular-nums;white-space:nowrap}
.metric-plus{font-size:.58em;vertical-align:16%;font-weight:600;color:#7b9860}
.metric-unit{font-size:.38em;letter-spacing:-.05em;color:#5b7b64}
.metric-card h3{font-size:16px;letter-spacing:-.025em;margin-bottom:11px;font-weight:770}
.metric-card>p:last-child{font-size:12px;line-height:1.6;color:#627168;margin:0;max-width:240px}
.metric-card-accent{background:var(--lime)}
.metric-card-accent .metric-index,.metric-card-accent>p:last-child{color:#34513d}
.metric-card-accent .metric-unit{color:#43643a}
.source-note{display:flex;align-items:flex-start;gap:10px;margin-top:19px;color:#6f7770;font-size:11px;line-height:1.5;max-width:830px}
.asterisk{color:#437e64;font-size:19px;line-height:.9}
/* Proof */
.proof-section{background:#e9eee7}
.proof-stack{display:grid;gap:19px}
.proof-card{display:grid;grid-template-columns:83px minmax(0,1fr) minmax(260px,34%);background:var(--white);border:1px solid #d7dfd5;min-height:326px;overflow:hidden}
.proof-serial{padding:25px 18px;border-right:1px solid #d7dfd5;display:flex;flex-direction:column;justify-content:space-between}
.proof-serial>span:first-child{font-size:9px;writing-mode:vertical-rl;transform:rotate(180deg);font-weight:750;letter-spacing:.15em;color:#63766c}
.proof-glyph{font-size:28px;color:#265947}
.proof-body{padding:35px 37px 29px;display:flex;flex-direction:column}
.proof-overline{font-size:9px;font-weight:800;letter-spacing:.18em;color:#a2664c;margin-bottom:15px}
.proof-body h3{font-size:clamp(30px,2.7vw,42px);margin-bottom:17px}
.proof-body>p:not(.proof-overline):not(.proof-bottom){font-size:13px;line-height:1.7;color:#52655a;margin-bottom:18px}
.proof-sequence{display:flex;gap:7px;align-items:center;flex-wrap:wrap;color:#234f43;margin-bottom:22px}
.proof-sequence span{border:1px solid #c7d8c8;padding:6px 8px;font-size:9px;font-weight:780;letter-spacing:.015em}
.proof-sequence i{font-size:13px;font-style:normal}
.proof-bottom{padding-top:13px;border-top:1px solid #e4e8e0;font-size:11px;line-height:1.65;color:#607068;margin-top:auto;margin-bottom:0!important}
.proof-bottom strong{color:#254d40;margin-right:4px}
.proof-art{position:relative;min-height:310px;overflow:hidden;background:#1c3832;color:#dbe9d9}
.art-mini-label{position:absolute;top:25px;left:25px;font-size:9px;font-weight:800;letter-spacing:.14em;color:#c5d9c8}
.art-small{position:absolute;bottom:21px;left:25px;right:25px;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.19);padding-top:12px;font-size:9px;letter-spacing:.1em;font-weight:700;color:#becfc3}
.art-small span{font-size:18px;line-height:.6;color:var(--lime)}
.proof-art-recruit{background:#244c43}
.art-circle{position:absolute;width:112px;height:112px;border-radius:50%;border:1px solid #a9c8af;display:grid;place-items:center;font-size:10px;font-weight:800;letter-spacing:.09em;color:#cde1cc;z-index:1}
.art-circle.a1{left:8%;top:77px}
.art-circle.a2{right:6%;top:116px;background:var(--lime);color:#162923;border-color:var(--lime)}
.art-circle.a3{left:27%;top:180px;width:96px;height:96px;background:#2d5d51}
.art-connector{position:absolute;width:140px;height:1px;background:rgba(235,249,231,.5);transform-origin:left center}
.art-connector.line1{left:34%;top:142px;transform:rotate(12deg)}
.art-connector.line2{left:33%;top:226px;transform:rotate(-18deg)}
.proof-art-process{background:#243d39;padding-top:88px}
.process-line{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:0 27px 10px;padding:10px 13px;border:1px solid #59756a;color:#e4eee0;font-size:10px;font-weight:800;letter-spacing:.09em;background:rgba(255,255,255,.03)}
.process-line span:first-child{color:#a5bea9}
.process-line b{color:var(--lime)}
.proof-art-report{background:#d3f47e;color:#1b3329}
.proof-art-report .art-mini-label{color:#345543}
.art-report-title{font-size:42px;font-weight:800;letter-spacing:-.08em;margin:82px 25px 7px}
.art-barchart{padding:0 27px}
.art-barchart>div{display:grid;grid-template-columns:81px minmax(40px,1fr) 47px;gap:10px;align-items:center;margin:13px 0}
.art-barchart span{font-size:9px;font-weight:700}
.art-barchart i{height:15px;width:var(--p);max-width:100%;background:#35674e;display:block}
.art-barchart .bar-after{background:#fffdf2}
.art-barchart b{text-align:right;font-size:16px}
.art-report-caption{font-size:12px;font-weight:800;padding:13px 27px;line-height:1.5}
.art-report-caption small{font-size:10px;font-weight:450}
/* Insight */
.insight-section{background:var(--night);color:var(--white)}
.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.insight-intro h2{font-size:clamp(40px,4.8vw,69px);margin:26px 0 25px}
.insight-intro h2 em{color:var(--lime)}
.insight-intro>p:not(.kicker){font-size:15px;line-height:1.75;color:#bdd2c5}
.insight-intro .insight-footnote{font-size:11px!important;color:#9cb7a6!important;border-left:2px solid var(--lime);padding-left:15px;margin-top:30px}
.insight-panel{border:1px solid #597469;background:#1c3731;padding:29px}
.panel-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.16em;color:#c0d3c4;font-weight:800;padding-bottom:21px;border-bottom:1px solid #526b60}
.insight-chart{padding:31px 0}
.chart-row+.chart-row{margin-top:34px}
.chart-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.chart-label span{font-size:10px;letter-spacing:.08em;color:#c3d4c6}
.chart-label b{font-size:43px;letter-spacing:-.075em;line-height:1}
.chart-label small{font-size:19px}
.chart-track{height:17px;background:#38564b;overflow:hidden}
.chart-fill{width:var(--width);height:100%;background:#84ae9c;transform-origin:left;transform:scaleX(1)}
.chart-fill.after{background:var(--lime)}
.has-motion .insight-chart:not(.is-in-view) .chart-fill{transform:scaleX(0)}
.has-motion .insight-chart.is-in-view .chart-fill{animation:growBar 1.4s var(--ease) both}
.has-motion .insight-chart.is-in-view .chart-fill.after{animation-delay:.24s}
@keyframes growBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.delta-line{border-top:1px solid #526b60;padding-top:23px;display:flex;gap:22px;align-items:start}
.delta-line strong{font-size:37px;white-space:nowrap;letter-spacing:-.06em;color:var(--lime);line-height:1}
.delta-line span{font-size:11px;color:#b7cbbf;line-height:1.6}
/* Lenses */
.thinking-section{background:var(--paper)}
.lens-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}
.lens-card{min-height:449px;background:var(--white);border:1px solid var(--line);padding:29px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.lens-card:nth-child(2){background:#eaf0e6}
.lens-number{font-size:10px;letter-spacing:.14em;font-weight:800;color:#617268}
.lens-icon{height:123px;position:relative;margin-top:24px;margin-bottom:14px}
.lens-dot{position:absolute;width:25px;height:25px;border-radius:50%;border:2px solid #3f7560;z-index:1;background:var(--white)}
.lens-dot.d1{left:25px;top:24px}.lens-dot.d2{left:105px;top:51px;background:var(--lime)}.lens-dot.d3{left:187px;top:6px}
.lens-line{position:absolute;width:97px;height:1px;background:#8bad99;transform-origin:left top}.lens-line.l1{left:51px;top:38px;transform:rotate(19deg)}.lens-line.l2{left:125px;top:62px;transform:rotate(-30deg)}
.lens-icon-books{display:flex;align-items:flex-start;gap:7px;padding:24px}
.lens-icon-books span{width:27px;height:75px;border:2px solid #4a8067;border-radius:3px;background:#d5e5d7;transform:rotate(-9deg)}
.lens-icon-books span:nth-child(2){height:91px;background:var(--lime);transform:rotate(2deg)}
.lens-icon-books span:nth-child(3){height:67px;transform:rotate(13deg)}
.lens-icon-grid{display:grid;grid-template-columns:repeat(3,35px);grid-template-rows:repeat(2,35px);gap:10px;align-content:center;margin-left:25px}
.lens-icon-grid span{border:2px solid #638f78}.lens-icon-grid span:nth-child(2),.lens-icon-grid span:nth-child(4){background:#d3f47e}.lens-icon-grid span:nth-child(6){background:#346a55}
.lens-card h3{font-size:29px;line-height:1.16;margin-bottom:17px}
.lens-card p{font-size:12.5px;color:#586a5e;line-height:1.75;margin-bottom:20px}
.lens-tag{margin-top:auto;padding-top:17px;border-top:1px solid #d6ddd4;font-size:9px;letter-spacing:.12em;font-weight:790;color:#466e56}
/* Approach */
.approach-section{background:#e8eee7}
.approach-layout{display:grid;grid-template-columns:.9fr 1fr;gap:100px;align-items:start}
.approach-sticky{position:sticky;top:130px}
.approach-sticky h2{font-size:clamp(42px,4.45vw,66px);margin:26px 0 22px}
.approach-sticky>p:last-child{font-size:14px;color:#5c6c60;max-width:390px;line-height:1.75}
.approach-step{display:grid;grid-template-columns:60px 1fr;gap:19px;padding:32px 0;border-top:1px solid #c8d3c8}
.approach-step:last-child{border-bottom:1px solid #c8d3c8}
.approach-step>span{font-family:Georgia,serif;font-size:24px;font-style:italic;color:#5a7b61}
.approach-step h3{font-size:24px;letter-spacing:-.04em;margin-bottom:11px}
.approach-step p{font-size:13px;line-height:1.7;color:#617067;max-width:430px;margin-bottom:0}
/* Future */
.future-section{background:var(--paper)}
.tab-module{border:1px solid #d4ddd3;background:var(--white)}
.tab-bar{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #d4ddd3}
.tab-button{padding:24px 26px;border:0;background:#edf0e9;color:#536859;cursor:pointer;text-align:left;font-size:11px;font-weight:800;letter-spacing:.13em;display:flex;align-items:center;gap:12px;transition:background .2s}
.tab-button+.tab-button{border-left:1px solid #d4ddd3}
.tab-button.is-active{background:var(--lime);color:var(--night)}
.tab-marker{width:8px;height:8px;border:1px solid currentColor;border-radius:50%}
.tab-button.is-active .tab-marker{background:currentColor}
.tab-content{padding:35px 37px 41px}
.tab-content-head{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;font-weight:800;letter-spacing:.14em;color:#627668;border-bottom:1px solid #e1e7de;padding-bottom:22px}
.phase-badge{border:1px solid #adcab1;background:#edf8db;padding:7px 10px;color:#3e6a51;font-size:9px;white-space:nowrap}
.phase-badge-outline{background:#f8f6ed;border-color:#d6cebb;color:#7e7352}
.tab-content-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:60px;padding-top:36px}
.tab-content h3{font-size:45px;max-width:370px}
.capability-list>div{display:grid;grid-template-columns:32px 1fr;gap:12px;border-bottom:1px solid #e0e7dc;padding:12px 0 16px}
.capability-list>div:first-child{padding-top:0}
.capability-list>div span{font-size:10px;font-weight:800;color:#6b926e}
.capability-list p{font-size:13px;line-height:1.65;color:#42574b;margin:0}
.tool-strip{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.tool-strip>span{font-size:9px;letter-spacing:.14em;font-weight:800;color:#607063;margin-right:auto}
.tool-strip strong{border:1px solid #aebeb0;padding:6px 11px;font-size:9px;letter-spacing:.055em}
.tool-strip small{font-size:10px;color:#738076;flex-basis:100%;text-align:right}
/* Quote */
.perspective-quote{background:var(--lime);padding:105px 0}
.quote-shell{position:relative}
.quote-mark{font-family:Georgia,serif;font-size:120px;line-height:.5;color:#59805c;opacity:.62}
.perspective-quote blockquote{font-size:clamp(30px,3.9vw,55px);line-height:1.31;font-weight:720;letter-spacing:-.045em;max-width:1050px;margin:9px 0 34px}
.perspective-quote .quote-shell>p{font-size:9px;letter-spacing:.16em;font-weight:850}
.quote-dash{margin-inline:9px}
/* Contact */
.contact-section{background:var(--night);color:var(--white);padding:111px 0}
.contact-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}
.contact-layout h2{font-size:clamp(48px,5.5vw,78px);margin:24px 0}
.contact-layout h2 em{color:var(--lime)}
.contact-layout>div:first-child>p:last-child{font-size:14px;color:#bad0c0;line-height:1.8;max-width:485px}
.contact-card{padding:35px;background:#234239;border:1px solid #5e7d6d}
.contact-card-kicker{font-size:10px;letter-spacing:.14em;color:#cde2d0;font-weight:800}
.contact-card>p{font-family:Georgia,serif;font-size:23px;line-height:1.48;letter-spacing:-.025em;color:#e9f2e5;margin:22px 0 31px}
.contact-email{width:100%}
.contact-unconfigured{font-size:12px;line-height:1.7;padding:18px;background:#355649;border:1px solid #789286;color:#ecf5ed}
.contact-unconfigured strong{color:var(--lime)}
.contact-secondary{display:flex;gap:20px;flex-wrap:wrap;padding-top:23px}
.contact-secondary a{font-size:11px;color:var(--lime);font-weight:700;border-bottom:1px solid #799c73;padding-bottom:5px}
.contact-secondary a span{margin-left:4px}
.site-footer{background:#0c1f1d;color:#d8e6d8;padding:29px 0}
.footer-layout{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-logo{font-size:32px;letter-spacing:-.09em;font-weight:900}
.footer-layout>p{margin:0;font-size:11px;line-height:1.6}
.footer-layout>p small{color:#8fae9b}
.footer-links{display:flex;flex-direction:column;text-align:right;gap:7px;font-size:10px;color:#96b1a1}
.footer-links a{color:var(--lime)}
.back-to-top{position:fixed;right:22px;bottom:24px;width:44px;height:44px;border:1px solid #486f5a;color:var(--night);background:var(--lime);font-size:20px;cursor:pointer;z-index:40;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .25s,transform .25s}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}
/* motion / progressive enhancement */
.has-motion .reveal{opacity:0;transform:translateY(25px);transition:transform .9s var(--ease),opacity .9s var(--ease)}
.has-motion .reveal.is-revealed{opacity:1;transform:none}
.metrics-grid .reveal:nth-child(2),.lens-grid .reveal:nth-child(2){transition-delay:.1s}
.metrics-grid .reveal:nth-child(3),.lens-grid .reveal:nth-child(3){transition-delay:.2s}
.metrics-grid .reveal:nth-child(4){transition-delay:.3s}
/* Responsive */
@media(max-width:1100px){.shell{width:calc(100% - 64px)}.desktop-nav{gap:17px}.nav-shell{gap:20px}.hero-layout{grid-template-columns:1.12fr .88fr;gap:25px}.hero h1{font-size:clamp(52px,5.8vw,73px)}.hero-visual{height:490px}.proof-card{grid-template-columns:65px minmax(0,1fr) minmax(228px,32%)}.proof-body{padding:28px 28px 24px}.insight-grid,.approach-layout{gap:58px}.contact-layout{gap:53px}}
@media(max-width:900px){.desktop-nav,.nav-contact{display:none}.mobile-menu-toggle{display:flex}.nav-shell{height:67px}.brand{min-width:auto}.hero-layout{grid-template-columns:1fr;gap:46px;padding-top:62px;padding-bottom:67px}.hero h1{font-size:clamp(57px,9vw,85px)}.hero-content{max-width:730px}.hero-visual{max-width:525px;justify-self:center;height:500px;transform:rotate(.7deg)}.hero-meta{margin-top:31px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric-card{border-bottom:1px solid var(--line)}.metric-card:nth-child(2){border-right:0}.metric-card:nth-child(n+3){border-bottom:0}.section-lead-split{grid-template-columns:1fr;gap:0}.section-lead-split>p:last-child{max-width:680px;justify-self:start}.proof-card{grid-template-columns:65px minmax(0,1fr)}.proof-art{grid-column:2;min-height:245px}.art-circle.a1{top:75px}.art-circle.a2{top:70px}.art-circle.a3{top:135px}.proof-art-process{padding-top:60px}.insight-grid,.approach-layout,.contact-layout{grid-template-columns:1fr;gap:45px}.insight-intro h2{max-width:670px}.insight-panel{max-width:650px}.lens-grid{grid-template-columns:1fr 1fr}.lens-card:last-child{grid-column:1/-1;min-height:330px}.approach-sticky{position:static}.approach-sticky>p:last-child{max-width:690px}.tab-content-layout{gap:35px}.contact-card{max-width:640px}}
@media(max-width:600px){html{scroll-padding-top:70px}.shell{width:calc(100% - 36px)}.announcement-bar{height:28px;font-size:7px;gap:8px;letter-spacing:.11em}.brand-mark{font-size:31px}.brand-caption{font-size:7.5px}.nav-shell{height:63px}.section{padding:82px 0}.kicker,.eyebrow{font-size:9px}.hero-layout{padding-top:51px;padding-bottom:53px;gap:42px}.hero-eyebrow{line-height:1.8;margin-bottom:25px}.hero h1{font-size:clamp(43px,10.3vw,65px);letter-spacing:-.064em;white-space:normal}.outline-word{-webkit-text-stroke:1.1px #dbe6de}.hero-description{font-size:14px;line-height:1.8}.hero-actions{gap:20px}.hero-meta{gap:13px;font-size:10px}.hero-visual{height:445px;max-width:410px;width:calc(100% - 10px)}.visual-title{font-size:26px;padding:22px 20px 0}.visual-head{padding:17px 18px;font-size:7.5px}.network-canvas{height:280px}.site-node{width:75px;height:75px}.site-node span{font-size:19px}.site-node small{font-size:5px}.network-center{width:98px;height:98px}.network-center>span:not(.network-pulse){font-size:27px}.network-center small{font-size:6px}.site-node-a{top:35px;left:6%}.site-node-b{top:27px;right:4%}.site-node-c{bottom:3px;right:4%}.visual-footer{padding:12px 14px}.visual-count{font-size:23px}.visual-count small{display:block;margin:4px 0 0;font-size:8px}.floating-tag{right:-5px;top:84px;font-size:8px}.hero-bottom-inner{font-size:8px;line-height:1.5}.hero-bottom a{white-space:nowrap;font-size:7px}.section-lead{margin-bottom:32px}.section-lead h2{font-size:clamp(41px,9vw,58px)}.section-lead>p:last-child{font-size:14px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{padding:18px 15px;min-height:280px}.metric-index{font-size:8px;margin-bottom:39px}.metric-number{font-size:clamp(49px,12vw,72px);margin-bottom:22px}.metric-card h3{font-size:14px;line-height:1.2}.metric-card>p:last-child{font-size:10px}.source-note{font-size:10px}.proof-card{grid-template-columns:44px minmax(0,1fr)}.proof-serial{padding:21px 11px}.proof-serial>span:first-child{font-size:8px}.proof-body{padding:26px 19px}.proof-body h3{font-size:clamp(29px,8vw,39px)}.proof-body>p:not(.proof-overline):not(.proof-bottom){font-size:12px}.proof-sequence{gap:5px}.proof-sequence span{font-size:8px;padding:5px}.proof-sequence i{font-size:10px}.proof-bottom{font-size:10px}.proof-art{min-height:267px}.insight-intro h2{font-size:clamp(41px,9vw,61px)}.insight-panel{padding:20px}.panel-top{font-size:8px}.chart-label b{font-size:34px}.delta-line{gap:12px}.delta-line strong{font-size:33px}.delta-line span{font-size:10px}.lens-grid{grid-template-columns:1fr}.lens-card,.lens-card:last-child{grid-column:auto;min-height:390px}.lens-card h3{font-size:29px}.lens-icon{height:105px}.approach-sticky h2{font-size:47px}.approach-step{grid-template-columns:42px 1fr;gap:10px;padding:24px 0}.approach-step h3{font-size:22px}.tab-bar{grid-template-columns:1fr 1fr}.tab-button{padding:16px 12px;font-size:8px;letter-spacing:.05em;gap:8px;line-height:1.4}.tab-content{padding:22px 18px 26px}.tab-content-head{font-size:8px;flex-wrap:wrap}.tab-content-layout{grid-template-columns:1fr;gap:10px;padding-top:24px}.tab-content h3{font-size:38px}.capability-list p{font-size:12px}.tool-strip{gap:8px}.tool-strip>span{flex-basis:100%}.tool-strip small{text-align:left}.perspective-quote{padding:78px 0}.perspective-quote blockquote{font-size:31px}.contact-layout h2{font-size:clamp(42px,9vw,61px)}.contact-card{padding:24px}.contact-card>p{font-size:21px}.footer-layout{align-items:flex-start;flex-wrap:wrap}.footer-links{width:100%;text-align:left}.back-to-top{right:12px;bottom:14px;width:39px;height:39px}}
@media(max-width:365px){.announcement-bar{letter-spacing:.045em}.hero h1{font-size:40px}.hero-meta span{font-size:9px}.hero-visual{height:425px}.network-canvas{height:265px}.metric-card{min-height:304px}.metric-number{font-size:47px}.proof-art{min-height:250px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.chart-fill{transform:none!important}}
@media print{.announcement-bar,.site-header,.hero-bottom,.hero-visual,.back-to-top,.hero-actions,.tab-bar{display:none!important}html{scroll-behavior:auto}body{background:#fff;color:#000}.section,.hero{padding:26px 0;background:#fff!important;color:#000!important}.shell{width:95%}.hero-layout{display:block;min-height:0;padding:24px 0}.hero-description{color:#333}.metrics-grid,.lens-grid,.tab-content-layout,.contact-layout{display:block}.metric-card,.lens-card,.proof-card{page-break-inside:avoid;background:#fff!important;color:#000!important}.proof-card{display:block}.proof-art{display:none}.tab-content[hidden]{display:block!important}.insight-panel{background:#fff;color:#000}.insight-intro h2 em,.contact-layout h2 em{color:#000}.site-footer{display:none}.has-motion .reveal{opacity:1;transform:none}}
