/* AFH Marketing V2 — Influence Architecture. Original visual system. */
:root { --ink:#171d20; --dark:#101719; --chalk:#f3f0e9; --white:#faf8f3; --copper:#b87352; --copper-light:#d7a489; --steel:#758188; --quiet:#9da5a4; --line:rgba(23,29,32,.18); --frame:rgba(244,241,234,.17); --ease:cubic-bezier(.22,1,.36,1); --page:clamp(22px,5.5vw,108px); font-synthesis:none }
* { box-sizing:border-box } html { scroll-behavior:smooth; scrollbar-color:var(--copper) var(--ink); } body { margin:0; font-family:'Helvetica Neue',Arial,sans-serif; color:var(--ink); background:var(--chalk); -webkit-font-smoothing:antialiased; font-weight:400; line-height:1.5; overflow-x:hidden; } body.menu-is-open { overflow:hidden }
a {color:inherit; text-decoration:none} button,input,textarea,select {font:inherit} button {cursor:pointer} img,svg,canvas {max-width:100%} svg {display:block} ::selection {background:var(--copper);color:#fff}
:focus-visible {outline:3px solid var(--copper);outline-offset:5px} .skip {position:fixed;top:-70px;left:22px;background:var(--chalk);z-index:300;padding:13px;color:var(--ink)} .skip:focus {top:18px}
@view-transition { navigation:auto; } ::view-transition-old(root) {animation:.18s ease both fade-away} ::view-transition-new(root){animation:.4s var(--ease) both fade-in} @keyframes fade-away{to{opacity:0}} @keyframes fade-in{from{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}
#progress {position:fixed;top:0;left:0;width:0;height:2px;background:var(--copper-light);z-index:500;pointer-events:none;transition:width .08s linear}
nav[aria-label="Main navigation"] {display:flex;gap:2.3vw;align-items:center}
.site-header {height:86px;position:absolute;inset:0 0 auto;z-index:120;display:flex;align-items:center;justify-content:space-between;padding:0 var(--page);color:var(--chalk);border-bottom:1px solid var(--frame)}
.site-header.light-head {color:var(--chalk)} .site-header.compact {position:fixed;background:rgba(17,24,26,.93);backdrop-filter:blur(24px);height:70px;box-shadow:0 12px 35px rgba(0,0,0,.1)}
.brand {display:flex;gap:12px;align-items:baseline;white-space:nowrap;z-index:121}.brand-name {font-size:31px;letter-spacing:-.075em;font-weight:800;line-height:1}.brand-sub {font-size:9px;letter-spacing:.22em;font-weight:650}
.head-link{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;padding:14px 0;position:relative}.head-link:after{content:'';height:1px;background:var(--copper-light);position:absolute;left:0;right:100%;bottom:9px;transition:right .35s var(--ease)}.head-link:hover:after,.head-link[aria-current="page"]:after{right:0}
.menu-toggle {border:1px solid currentColor;background:transparent;color:inherit;display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.14em;font-weight:800;text-transform:uppercase;padding:12px 16px;transition:background .25s,border-color .25s}.menu-toggle:hover{background:var(--copper);border-color:var(--copper)} .menu-toggle .lines{width:17px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;transition:transform .25s}.menu-toggle[aria-expanded="true"] .lines{transform:rotate(45deg)}
.mega {position:fixed;inset:0;z-index:115;background:#141b1d;color:var(--chalk);padding:130px var(--page) 60px;display:grid;grid-template-columns:1fr 1.2fr;gap:5vw;opacity:0;visibility:hidden;transform:translateY(-15px);transition:opacity .42s,transform .42s,visibility .42s;overflow-y:auto} .mega.open {opacity:1;visibility:visible;transform:none}.mega-kicker {margin-bottom:26px}.mega-main {display:grid;align-content:start}.mega-main a{font-size:clamp(29px,4.9vw,77px);letter-spacing:-.06em;line-height:1.1;padding:7px 0;width:max-content;max-width:100%;transition:color .3s,transform .3s}.mega-main a:hover{color:var(--copper-light);transform:translateX(14px)}.mega-side{padding-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:35px}.mega-side a{display:block;border-bottom:1px solid var(--frame);padding:13px 0;font-size:15px}.mega-side a:hover{color:var(--copper-light)}.mega-foot{align-self:end;color:#aab4b2;line-height:1.75;font-size:12px}
.kicker,.eyebrow{font-size:10px;letter-spacing:.23em;text-transform:uppercase;font-weight:750;line-height:1.6}.kicker{display:flex;align-items:center;gap:12px}.kicker:before {content:'';width:6px;height:6px;border-radius:50%;background:var(--copper)}.muted-label{color:var(--steel)}.white-label{color:#aab3b2}
.display{font-size:clamp(60px,9vw,169px);font-weight:630;letter-spacing:-.084em;line-height:.92;margin:0}.display em {font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.085em}.h2{font-size:clamp(39px,6vw,94px);font-weight:590;letter-spacing:-.07em;line-height:1.02;margin:0}.h3 {font-size:clamp(26px,3.1vw,54px);font-weight:580;letter-spacing:-.055em;line-height:1.06;margin:0}.body-lg{font-size:clamp(16px,1.5vw,22px);line-height:1.55;color:#484f50;max-width:650px}.body-md{font-size:clamp(14px,1.2vw,17px);line-height:1.75;color:#536062;max-width:640px}
.btn {display:inline-flex;align-items:center;justify-content:space-between;gap:27px;min-height:52px;padding:0 21px;text-transform:uppercase;font-size:10px;letter-spacing:.13em;font-weight:750;border:1px solid var(--ink);transition:background .33s,color .33s,transform .33s var(--ease);white-space:nowrap;background:transparent}.btn:hover{transform:translateY(-3px)}.btn svg{height:17px;width:17px;transition:transform .3s}.btn:hover svg{transform:translate(3px,-3px)}.btn-dark{background:var(--ink);color:var(--white);border-color:var(--ink)}.btn-dark:hover{background:var(--copper);border-color:var(--copper)}.btn-light{background:var(--chalk);color:var(--ink);border-color:var(--chalk)}.btn-light:hover{background:var(--copper-light)}.btn-outline-light{color:var(--chalk);border-color:var(--frame)}.btn-outline-light:hover{background:var(--chalk);color:var(--ink)}.btn-plain{border-color:transparent;border-bottom-color:currentColor;padding-left:0;padding-right:0;min-height:43px}
.section{padding:clamp(85px,11vw,165px) var(--page);position:relative;overflow:hidden}.section.compact-pad{padding-top:80px;padding-bottom:80px}.dark{background:var(--ink);color:var(--chalk)}.dark .body-lg,.dark .body-md{color:#abb2b0}.light{background:var(--chalk)}.pale{background:var(--white)}.copper{color:var(--copper)}.topline{border-top:1px solid var(--line);padding-top:21px;display:flex;justify-content:space-between;gap:30px;align-items:center}.dark .topline{border-color:var(--frame)}
.hero{height:auto;min-height:min(990px,100svh);padding:150px var(--page) 55px;background:var(--dark);color:var(--chalk);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.hero:before,.page-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 79% 47%,rgba(167,114,91,.16),transparent 43%);pointer-events:none}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(243,240,233,.065) 1px, transparent 1px),linear-gradient(to bottom,rgba(243,240,233,.055) 1px, transparent 1px);background-size:9vw 9vw;mask-image:linear-gradient(to left,black,transparent 85%);opacity:.62;pointer-events:none}
.hero-canvas {position:absolute;inset:0 0 0 auto;width:75%;height:100%;z-index:1;opacity:.97;pointer-events:none} .hero-inner{position:relative;z-index:2;margin-top:8vh;pointer-events:none}.hero-inner a,.hero-inner button{pointer-events:auto}.hero-kicker{color:#bfc8c5;margin-bottom:36px}.hero h1{max-width:1080px;text-wrap:balance}.hero h1 span{color:var(--copper-light)}.hero-desc{color:#c2cac8;max-width:500px;font-size:clamp(16px,1.33vw,21px);line-height:1.65;margin-top:31px}.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:39px}.hero-meta{z-index:2;position:relative;display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:70px;color:#acb7b4;border-top:1px solid var(--frame);font-size:9px;text-transform:uppercase;letter-spacing:.15em}.hero-side{position:absolute;right:var(--page);top:27%;writing-mode:vertical-rl;color:#788b87;letter-spacing:.21em;font-size:10px;z-index:2}
.scroll-cue{display:inline-flex;align-items:center;gap:11px}.scroll-cue .arrow-down{display:inline-block;animation:bob 1.7s ease-in-out infinite alternate}@keyframes bob{to{transform:translateY(7px)}}
.announcement{background:var(--copper);color:#fff;padding:15px var(--page);display:flex;justify-content:space-between;gap:15px;font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.ticker{border-top:1px solid var(--frame);border-bottom:1px solid var(--frame);overflow:hidden;padding:21px 0;background:var(--dark);color:#ddd}.ticker-inner{display:flex;width:max-content;animation:marquee 35s linear infinite;gap:70px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.ticker-inner span:before{content:'✳';color:var(--copper-light);margin-right:70px}.ticker:hover .ticker-inner{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}
.intro-wrap{display:grid;grid-template-columns:.8fr 1.7fr;gap:6vw}.intro-copy{font-size:clamp(29px,4vw,60px);line-height:1.19;letter-spacing:-.05em;max-width:1000px;margin:0}.intro-copy b{font-weight:600}.intro-copy em{color:var(--copper);font-family:Georgia,serif;font-style:italic;font-weight:400}.intro-foot{display:grid;grid-template-columns:.9fr 1fr;gap:30px;margin-top:56px;align-items:end}
.service-cards{display:grid;grid-template-columns:repeat(12,1fr);gap:12px;margin-top:50px}.service-card{grid-column:span 4;min-height:340px;padding:27px;display:flex;flex-direction:column;position:relative;border:1px solid var(--line);background:var(--white);overflow:hidden;transform-style:preserve-3d;transition:background .35s,border-color .35s,box-shadow .35s;isolation:isolate}.service-card:hover{background:#fff;border-color:var(--copper);box-shadow:0 18px 32px rgba(0,0,0,.06)}.service-card.feature{grid-column:span 8;background:#222c2d;color:var(--chalk)}.service-card.feature:hover{background:#1b2425}.service-card .card-num{font-size:10px;letter-spacing:.16em;opacity:.6}.service-card .card-arrow{position:absolute;right:24px;top:26px;font-size:20px;transform:rotate(0deg);transition:transform .3s}.service-card:hover .card-arrow{transform:rotate(45deg)}.service-card .card-body{margin-top:auto;position:relative;z-index:3}.service-card h3{font-size:clamp(26px,2.65vw,44px);letter-spacing:-.055em;font-weight:600;line-height:1.06;margin:0 0 14px}.service-card p{font-size:14px;line-height:1.65;max-width:390px;color:#697375;margin:0}.service-card.feature p{color:#c2cbca}.feature-visual{position:absolute;width:360px;height:290px;right:5%;top:5%;opacity:.7;z-index:1;pointer-events:none}.feature-visual svg{width:100%;height:100%}
.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:25px;align-items:start}.section-heading p{margin:23px 0 0;max-width:670px}.eyebrow-line{display:flex;gap:10px;align-items:center}
.statement{font-size:clamp(44px,7vw,125px);letter-spacing:-.072em;line-height:1.04;font-weight:570;margin:50px 0 0}.statement .indent{margin-left:11vw;display:block}.statement em{font-family:Georgia,serif;font-weight:400;color:var(--copper-light)}
.stage-list{margin-top:80px;border-top:1px solid var(--frame)}.stage{display:grid;grid-template-columns:100px 1fr 1.3fr 40px;gap:30px;align-items:center;border-bottom:1px solid var(--frame);padding:34px 0;transition:padding .4s var(--ease),color .4s}.stage:hover{padding-left:20px;color:var(--copper-light)}.stage b{font-size:clamp(25px,3vw,50px);font-weight:550;letter-spacing:-.05em}.stage p{color:#aab4b1;font-size:14px;margin:0}.stage em{font-style:normal;color:var(--copper-light)}
.orbit-section{background:var(--dark);min-height:700px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:4vw}.orbit-graphic{min-height:510px;position:relative;display:grid;place-items:center}.orbit-ring{width:clamp(290px,35vw,590px);height:clamp(290px,35vw,590px);border:1px solid rgba(210,164,138,.25);border-radius:50%;position:absolute;animation:turn 80s linear infinite}.orbit-ring:before,.orbit-ring:after{content:'';position:absolute;top:50%;left:-5px;width:9px;height:9px;border-radius:50%;background:var(--copper-light)}.orbit-ring:after{left:auto;right:-5px;background:#a0b3ae}.orbit-ring.two{width:70%;height:70%;animation-direction:reverse;animation-duration:56s;border-style:dashed}.orbit-ring.three{width:38%;height:38%;animation-duration:40s;border-color:rgba(210,164,138,.45)}.orbit-centre{position:relative;z-index:2;text-align:center;font-size:clamp(32px,4vw,70px);letter-spacing:-.065em;line-height:1}.orbit-centre small{font-size:11px;display:block;letter-spacing:.19em;margin-top:20px;color:var(--copper-light)}@keyframes turn{to{transform:rotate(360deg)}}
.founder-band{display:grid;grid-template-columns:1fr 1.25fr;background:var(--white)}.founder-graphic{min-height:560px;display:flex;align-items:center;justify-content:center;background:#d9d2c8;position:relative;overflow:hidden}.founder-graphic:before,.founder-graphic:after{content:'';width:65%;aspect-ratio:1;position:absolute;border:1px solid rgba(23,29,32,.14);transform:rotate(25deg)}.founder-graphic:after{width:50%;transform:rotate(-22deg)}.founder-script{font-family:Georgia,serif;font-style:italic;font-size:clamp(130px,20vw,360px);color:var(--ink);letter-spacing:-.13em;line-height:1;z-index:1;position:relative}.founder-graphic .graphic-caption{position:absolute;left:7%;bottom:30px;font-size:10px;letter-spacing:.2em;text-transform:uppercase}.founder-info{padding:90px var(--page) 90px 9%;display:flex;flex-direction:column;justify-content:center}.founder-info h2{font-size:clamp(44px,5vw,80px);letter-spacing:-.07em;line-height:1.03;margin:27px 0}.founder-info p{max-width:530px;line-height:1.8;color:#556166;font-size:16px}
.blueprint{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:50px}.blueprint-visual{min-height:470px;position:relative;display:grid;place-items:center;border:1px solid var(--line);background:linear-gradient(125deg,#eff0e9,#e8e7e0);overflow:hidden}.blueprint-visual:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(33,45,43,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(33,45,43,.04) 1px,transparent 1px);background-size:25px 25px}.blueprint-visual svg{max-width:90%;max-height:90%;z-index:1;filter:drop-shadow(0 15px 25px rgba(0,0,0,.09));transform:translateY(2px);transition:transform .65s var(--ease)}.blueprint-visual:hover svg{transform:translateY(-13px) rotate(-1deg)}.blueprint-copy{padding-top:45px}.blueprint-copy h2{margin:22px 0 20px}.blueprint-copy ul{list-style:none;padding:0;margin:35px 0;border-top:1px solid var(--line)}.blueprint-copy li{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:50px}.insight-card{display:flex;flex-direction:column;min-height:470px;background:var(--white);border:1px solid var(--line);position:relative;overflow:hidden;transition:transform .4s var(--ease)}.insight-card:hover{transform:translateY(-8px)}.insight-art{height:215px;display:grid;place-items:center;background:var(--ink);color:var(--copper-light);font-size:clamp(60px,7vw,110px);font-weight:650;letter-spacing:-.1em;position:relative;overflow:hidden}.insight-art:after{content:'';width:220px;height:220px;border:1px solid var(--copper-light);border-radius:50%;position:absolute;transform:scale(1.45) rotateX(65deg);opacity:.6}.insight-card:nth-child(2) .insight-art{background:#b8c0bc;color:var(--ink)}.insight-card:nth-child(3) .insight-art{background:#d6ab93;color:var(--ink)}.insight-detail{padding:24px;flex:1;display:flex;flex-direction:column}.insight-detail h3{font-size:clamp(24px,2.2vw,35px);line-height:1.15;letter-spacing:-.055em;font-weight:580;margin:19px 0}.insight-detail .readmore{margin-top:auto;padding-top:21px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}
.footer{background:#11191b;color:var(--chalk);padding:115px var(--page) 32px}.footer h2{font-size:clamp(53px,8.6vw,158px);font-weight:530;line-height:.91;letter-spacing:-.08em;margin:26px 0 55px}.footer h2 em{font-family:Georgia,serif;font-weight:400;color:var(--copper-light)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;margin-top:95px;padding-top:38px;border-top:1px solid var(--frame)}.footer .foot-title{font-size:36px;letter-spacing:-.09em;font-weight:800}.footer nav{display:flex;flex-direction:column;gap:10px;font-size:13px}.footer nav a:hover{color:var(--copper-light)}.footer p{font-size:12px;color:#aab4b1;line-height:1.7}.footer-bottom{padding-top:34px;display:flex;justify-content:space-between;gap:18px;color:#9ca7a4;font-size:10px;text-transform:uppercase;letter-spacing:.13em}
.page-hero{background:var(--dark);color:var(--chalk);min-height:670px;padding:170px var(--page) 90px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.page-hero .display{max-width:1240px;position:relative;z-index:2;font-size:clamp(68px,8vw,135px)}.page-hero .lead{position:relative;z-index:2;max-width:680px;color:#c4cecb;font-size:clamp(18px,1.6vw,23px);margin-top:38px}.page-hero .mesh-small{position:absolute;right:-15%;top:5%;height:125%;width:66%;opacity:.35;pointer-events:none}.page-hero .kicker{color:#acb8b3;position:relative;z-index:2;margin-bottom:25px}.page-hero .corner-num{position:absolute;right:var(--page);bottom:38px;letter-spacing:.3em;color:#9ba9a4;font-size:10px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:55px 50px;margin-top:62px}.feature-item{border-top:1px solid var(--line);padding-top:19px}.feature-item b{display:block;font-size:clamp(23px,2.7vw,40px);letter-spacing:-.055em;line-height:1.12;margin:22px 0;font-weight:590}.feature-item p{color:#556166;font-size:14px;line-height:1.75}.feature-item .number{font-size:11px;color:var(--copper);font-weight:750;letter-spacing:.17em}.feature-item .micro{font-size:12px;color:#65706e}
.interactive-panel{padding:45px;background:#202b2c;color:var(--chalk);border:1px solid var(--frame);overflow:hidden;position:relative}.interactive-panel .eyebrow{color:#9eaca9}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.pill{border:1px solid rgba(245,243,237,.25);background:transparent;color:#d4dcd9;padding:11px 15px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;transition:background .3s,color .3s,border .3s}.pill.active,.pill[aria-pressed="true"]{background:var(--copper-light);color:var(--ink);border-color:var(--copper-light)}.pill:hover:not(.active){border-color:var(--copper-light)}.panel-display{border-top:1px solid var(--frame);padding-top:30px;min-height:170px}.panel-display h3{font-size:clamp(28px,3.5vw,52px);letter-spacing:-.055em;font-weight:550;margin:0 0 17px}.panel-display p{max-width:660px;color:#b8c3c0;font-size:14px;line-height:1.75}
.network-explorer{display:grid;grid-template-columns:1.15fr .85fr;gap:0;background:var(--ink);color:var(--chalk);min-height:640px}.network-screen{position:relative;overflow:hidden;min-height:600px;background:radial-gradient(circle at 57% 48%,#2a3939,#121a1d 63%)}.network-screen canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.network-screen .screen-label{position:absolute;top:28px;left:35px;font-size:10px;letter-spacing:.21em;color:#b2c3be}.network-panel{padding:70px 6vw 55px 5vw;display:flex;flex-direction:column;justify-content:center;background:#1a2425}.network-panel h2{margin:20px 0}.network-panel .pill-row{margin-top:34px}.network-panel .panel-display{min-height:145px}
.diagram-journey{padding:35px;border:1px solid var(--line);background:var(--white);display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px}.diagram-journey button{border:0;background:none;text-align:left;display:flex;flex-direction:column;min-height:190px;gap:14px;padding:16px 20px;border-right:1px solid var(--line);transition:background .3s}.diagram-journey button:last-child{border-right:0}.diagram-journey button.active{background:#e7d9cc}.diagram-journey button:hover{background:#efebe3}.diagram-journey button span{font-size:11px;letter-spacing:.13em;color:var(--copper)}.diagram-journey button b{font-size:clamp(20px,2.4vw,37px);letter-spacing:-.05em;font-weight:570}.diagram-journey button small{font-size:12px;color:#536062;line-height:1.55}
.proof-toggle{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 33px}.proof-toggle button{background:transparent;padding:11px 15px;border:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.proof-toggle button[aria-pressed="true"]{background:var(--ink);color:var(--chalk)}.proof-card{min-height:122px;line-height:1.8;color:#475557;font-size:15px}.blueprint-visual .line-reveal{stroke-dasharray:700;stroke-dashoffset:700;transition:stroke-dashoffset 2s var(--ease)}.blueprint-visual.visible .line-reveal{stroke-dashoffset:0}
.quote-panel{background:#d9d1c7;padding:80px var(--page)}.quote-panel blockquote{font-size:clamp(33px,5.9vw,95px);letter-spacing:-.067em;font-weight:560;line-height:1.12;margin:15px 0 25px}.quote-panel cite{font-size:11px;font-weight:750;letter-spacing:.16em;font-style:normal;text-transform:uppercase}
.about-letters{font-family:Georgia,serif;font-size:clamp(150px,27vw,470px);font-style:italic;letter-spacing:-.15em;text-align:center;line-height:1;color:#c7a68d;opacity:.95;margin:0;position:relative}.credential-block{padding:30px;border-top:1px solid var(--line)}.credential-block b{font-size:25px;letter-spacing:-.04em;display:block;font-weight:600;margin:15px 0}.credential-block p{font-size:14px;line-height:1.75;color:#536062;margin:0}
.insights-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:45px}.search{width:min(450px,100%);padding:15px 17px;background:var(--white);border:1px solid var(--line);color:var(--ink);font-size:14px}.search::placeholder{color:#777}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.article-item{background:var(--white);border:1px solid var(--line);padding:28px;min-height:320px;display:flex;flex-direction:column;transition:background .3s,transform .3s}.article-item:hover{transform:translateY(-5px);background:#fff}.article-item h3{font-size:32px;letter-spacing:-.06em;line-height:1.12;font-weight:600;margin:18px 0}.article-item p{font-size:14px;color:#586568;line-height:1.7}.article-item .bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.article{display:grid;grid-template-columns:.55fr 1.45fr;gap:6vw}.article aside{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#64706d;padding-top:8px}.article-body h2{font-size:clamp(27px,3vw,47px);letter-spacing:-.055em;line-height:1.15;margin:30px 0 16px}.article-body p{font-size:clamp(16px,1.5vw,21px);line-height:1.8;color:#4e5a5c;margin:0 0 28px}.article-body .lead-article{font-size:clamp(22px,2.4vw,35px);color:var(--ink);line-height:1.55;margin:0 0 35px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-field{display:flex;flex-direction:column;gap:9px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700}.form-field.full{grid-column:1/-1}.form-field input,.form-field textarea,.form-field select{border:1px solid var(--line);background:var(--white);padding:14px 16px;color:var(--ink);text-transform:none;letter-spacing:normal;font-size:15px;min-height:53px;border-radius:0}.form-field textarea{min-height:150px;resize:vertical}.form-note{font-size:12px;color:#64706d;line-height:1.7}.status-msg{background:#ece2d9;border-left:3px solid var(--copper);padding:17px;margin-top:20px;font-size:13px}
[data-reveal]{opacity:1;transform:none;transition:opacity .85s var(--ease),transform .85s var(--ease)}.motion-ready [data-reveal]:not(.is-visible){opacity:0;transform:translateX(-32px)}[data-reveal].is-visible{opacity:1;transform:none} [data-split] .letter{display:inline-block;animation:riseIn .75s backwards var(--ease);animation-delay:var(--delay,0ms)}@keyframes riseIn{from{transform:translateY(15px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(min-width:1280px){.hero{min-height:910px}}@media(max-width:1100px){.site-header nav[aria-label="Main navigation"] .head-link{display:none}.intro-wrap{grid-template-columns:1fr;gap:35px}.hero-canvas{width:100%;opacity:.63}.service-card{grid-column:span 6}.service-card.feature{grid-column:span 12}.stage{grid-template-columns:60px 1fr 1fr 30px}.network-explorer{grid-template-columns:1fr}.network-screen{min-height:450px}.network-panel{padding:60px var(--page)}.orbit-section{grid-template-columns:1fr}.orbit-graphic{min-height:400px}.page-hero .mesh-small{opacity:.2}}
@media(max-width:720px){.site-header{height:76px;padding:0 22px}.brand-name{font-size:29px}.brand-sub{font-size:8px}.menu-toggle{padding:11px}.menu-toggle .label{display:none}.mega{grid-template-columns:1fr;padding:110px 22px 30px;gap:20px}.mega-main a{font-size:39px}.mega-side{padding:0;gap:25px}.mega-foot{display:none}.hero{padding:130px 22px 33px;min-height:810px}.hero-inner{margin-top:0}.display{font-size:clamp(56px,13.4vw,86px)}.hero h1{max-width:580px}.hero-desc{font-size:15px;max-width:370px}.hero-canvas{width:180%;left:0;top:26%;height:74%;opacity:.44}.hero-side{display:none}.hero-meta{font-size:8px;padding-top:20px;display:block;line-height:2}.hero-meta .scroll-cue{display:none}.section{padding:78px 22px}.section-heading{display:block}.section-heading .h2{margin-top:25px}.h2{font-size:clamp(38px,11vw,60px)}.h3{font-size:31px}.statement{font-size:clamp(37px,10.5vw,65px)}.statement .indent{margin-left:0}.intro-foot{grid-template-columns:1fr;gap:20px}.service-cards{grid-template-columns:1fr}.service-card,.service-card.feature{grid-column:span 1;min-height:310px}.feature-visual{opacity:.33;right:-80px;top:0}.stage{grid-template-columns:33px 1fr 15px;gap:16px;align-items:start}.stage p{grid-column:2/3}.stage b{font-size:27px}.stage em{grid-column:3;grid-row:1}.orbit-graphic{min-height:340px}.orbit-ring{width:290px;height:290px}.founder-band{grid-template-columns:1fr}.founder-graphic{min-height:320px}.founder-script{font-size:190px}.founder-info{padding:75px 22px}.founder-info h2{font-size:49px}.blueprint{grid-template-columns:1fr}.blueprint-visual{min-height:300px}.blueprint-copy{padding:0}.insight-grid{grid-template-columns:1fr}.insight-card{min-height:400px}.footer{padding:75px 22px 30px}.footer h2{font-size:clamp(60px,11vw,90px)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{line-height:1.7;flex-direction:column}.page-hero{min-height:570px;padding:145px 22px 68px}.page-hero .display{font-size:clamp(52px,13vw,86px)}.page-hero .lead{font-size:16px}.two-col{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr;gap:30px}.feature-item{padding-top:16px}.interactive-panel{padding:25px}.network-screen{min-height:350px}.network-panel{padding:55px 22px}.diagram-journey{grid-template-columns:1fr 1fr;padding:12px}.diagram-journey button{min-height:140px;border-bottom:1px solid var(--line);padding:12px}.diagram-journey button:nth-child(2){border-right:0}.diagram-journey button:nth-child(n+3){border-bottom:0}.diagram-journey button b{font-size:22px}.article-grid{grid-template-columns:1fr}.article{grid-template-columns:1fr}.article aside{border-bottom:1px solid var(--line);padding:0 0 15px}.about-letters{font-size:210px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:1}.insights-controls{display:block}.search{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important}.hero-canvas{opacity:.2}.orbit-ring{transform:none!important}}

[hidden]{display:none!important}
.diagram-journey>div{display:flex;flex-direction:column;min-height:190px;gap:14px;padding:16px 20px;border-right:1px solid var(--line)}.diagram-journey>div:last-child{border-right:0}.diagram-journey>div span{font-size:11px;letter-spacing:.13em;color:var(--copper)}.diagram-journey>div b{font-size:clamp(20px,2.4vw,37px);letter-spacing:-.05em;font-weight:570}.diagram-journey>div small{font-size:12px;color:#536062;line-height:1.55}
.proof-card h3{font-size:25px;letter-spacing:-.04em;margin:0 0 12px}.proof-card p{margin:0;color:#4c5958;line-height:1.8}
@media(max-width:720px){.diagram-journey>div{min-height:140px;padding:12px;border-bottom:1px solid var(--line)}.diagram-journey>div:nth-child(2){border-right:0}.diagram-journey>div:nth-child(n+3){border-bottom:0}.diagram-journey>div b{font-size:22px}}

.network-panel .body-md{color:#b7c4c0}
.motion-toggle{font:inherit;letter-spacing:inherit;text-transform:uppercase;color:inherit;border:1px solid var(--frame);background:transparent;padding:7px 11px;font-size:9px;transition:border-color .25s,color .25s}.motion-toggle:hover{color:var(--copper-light);border-color:var(--copper-light)}
body.motion-paused *,body.motion-paused *::before,body.motion-paused *::after{animation-play-state:paused!important}
@media(max-width:720px){.motion-toggle{font-size:8px;padding:7px 8px}}

/* AFH V2.1 — capability-led editorial and outcome architecture */
.challenge-section{position:relative;isolation:isolate}
.challenge-section .section-heading{margin-bottom:54px}
.challenge-section .h2 em,.engagement-section .h2 em,.outcomes-panel .h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;color:var(--copper)}
.challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:30px}
.challenge-card{position:relative;background:#f4f2ec;display:flex;flex-direction:column;padding:clamp(30px,4.8vw,72px);min-height:315px;transition:background .3s ease}
.challenge-card:hover,.challenge-card:focus-within{background:#e9dfd4}
.challenge-card::before{content:'↗';position:absolute;right:36px;top:27px;color:var(--copper);font-size:25px}
.challenge-card h3{font-size:clamp(22px,2.75vw,41px);line-height:1.15;letter-spacing:-.052em;font-weight:570;max-width:490px;padding-right:35px}
.challenge-card p{font-size:14px;line-height:1.75;color:#566160;max-width:510px;margin:22px 0 35px}
.challenge-card a{margin-top:auto;text-transform:uppercase;font-weight:740;letter-spacing:.14em;font-size:10px;border-bottom:1px solid #be886f;align-self:start;padding-bottom:9px;transition:color .25s,border-color .25s}
.challenge-card a:hover{color:#a45739;border-color:#a45739}
.output-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:70px}
.output-card{position:relative;border:1px solid var(--line);background:#faf9f6;padding:34px;min-height:320px;display:flex;flex-direction:column;transition:transform .38s var(--ease),box-shadow .38s var(--ease),border-color .38s var(--ease)}
.output-card:hover{transform:translateY(-8px);border-color:#bd917b;box-shadow:0 18px 30px rgba(18,24,26,.06)}
.output-index{color:var(--copper);font-weight:720;letter-spacing:.14em;font-size:10px}
.output-card h3{font-size:clamp(23px,2.2vw,34px);line-height:1.2;letter-spacing:-.04em;font-weight:590;margin:34px 0 16px}
.output-card p{font-size:14px;line-height:1.75;color:#52605d}
.offer-note{font-size:12px;line-height:1.75;color:#5e6462;max-width:860px;margin:25px 0 6px}
.model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:56px}
.model-card{padding:clamp(27px,3.2vw,51px);background:var(--white);border:1px solid var(--line);min-height:375px;display:flex;flex-direction:column;transition:background .3s ease,border-color .3s ease}
.model-card:hover{background:#eee4d7;border-color:#cfb19e}
.model-card h3{font-size:clamp(27px,3vw,44px);line-height:1.13;letter-spacing:-.055em;font-weight:580;margin:40px 0 16px}
.model-card p{color:#52605f;font-size:14px;line-height:1.73}
.model-steps{border-top:1px solid var(--line);margin-top:auto;padding-top:18px;font-size:11px;color:#8a563e;font-weight:730;letter-spacing:.06em;line-height:1.6}
.agency-credibility{background:#ddd5ca;color:var(--ink);padding:clamp(55px,8vw,140px) var(--page);display:grid;grid-template-columns:1.15fr 1fr;gap:6vw;align-items:center}
.agency-credibility h2{font-weight:600;letter-spacing:-.065em;font-size:clamp(37px,5.4vw,82px);line-height:1.11;margin-top:25px}
.agency-credibility p{font-size:clamp(16px,1.3vw,21px);line-height:1.75;max-width:590px}
.agency-credibility a{display:inline-block;border-bottom:1px solid var(--ink);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:760;padding:7px 0;margin-top:33px}
.agency-credibility a:hover{color:#a35d40;border-color:#a35d40}
.hero-desc{max-width:665px}
@media(max-width:950px){
 .challenge-card{padding:40px 30px;min-height:300px}
 .output-grid,.model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .model-card:last-child,.output-card:last-child{grid-column:span 2;min-height:255px}
 .agency-credibility{gap:4vw}
}
@media(max-width:670px){
 .challenge-grid,.output-grid,.model-grid{grid-template-columns:1fr}
 .challenge-card{min-height:260px;padding:35px 27px}
 .challenge-card h3{font-size:29px}
 .model-card:last-child,.output-card:last-child{grid-column:auto}
 .model-card{min-height:275px}.model-card h3{margin-top:28px}
 .output-card{min-height:215px;padding:27px}.output-card h3{margin-top:22px}
 .agency-credibility{display:block}.agency-credibility>div:last-child{margin-top:35px}
 .agency-credibility h2{font-size:42px}
 .hero-desc{max-width:100%}
}
@media(prefers-reduced-motion:reduce){.challenge-card,.output-card,.model-card{transition:none}.output-card:hover{transform:none}}
/* Deliberately complete the nine-service grid with a full-width built environment specialism. */
.service-cards-all .service-card:last-child{grid-column:span 12;min-height:240px;background:#ebe3d8}
.service-cards-all .service-card:last-child .card-body{max-width:680px}
.service-cards-all .service-card:last-child h3{font-size:clamp(32px,4vw,62px)}
@media(max-width:670px){.service-cards-all .service-card:last-child{grid-column:span 1;min-height:250px}}

/* AFH V2.2 — Strategic agency architecture. Original component styling. */
.departments-section .section-heading h2 em,.agency-sectors .section-heading h2 em,.agency-delivery .section-heading h2 em,.agency-leadership .h2 em{font-family:Georgia,serif;color:var(--copper);font-weight:400}
.departments-grid{margin-top:65px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.department-card{background:#f5f2ea;color:var(--ink);padding:clamp(28px,4vw,62px);min-height:370px;position:relative;display:flex;flex-direction:column;transition:background .3s,transform .35s var(--ease)}
.department-card:hover{background:#e9dfd2;transform:translateY(-3px)}.department-card .department-arrow{position:absolute;top:25px;right:35px;font-size:25px;color:var(--copper)}
.department-card h3{font-size:clamp(32px,4vw,60px);line-height:1.09;letter-spacing:-.065em;margin:45px 0 18px;font-weight:590;max-width:550px}.department-card p{max-width:545px;color:#4b5654;font-size:15px;line-height:1.8}
.department-card small{margin-top:auto;padding-top:35px;font-size:11px;line-height:1.7;color:#946950;text-transform:uppercase;letter-spacing:.095em;font-weight:670}
.agency-sectors{background:#e9e5dc}.sector-ledger{margin-top:55px;border-top:1px solid var(--line)}.sector-ledger-item{display:grid;grid-template-columns:minmax(250px,1fr) minmax(250px,1.1fr) 30px;gap:50px;border-bottom:1px solid var(--line);padding:31px 0;align-items:center}
.sector-ledger-item h3{font-size:clamp(22px,2.75vw,38px);font-weight:600;letter-spacing:-.05em}.sector-ledger-item p{color:#536061;max-width:515px;line-height:1.65;font-size:14px}.sector-ledger-item>span{font-size:24px;color:var(--copper)}
.agency-delivery .section-heading p{color:#c0c8c5}.agency-delivery-grid{margin-top:65px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--frame)}
.agency-delivery-grid article{padding:36px;border-right:1px solid var(--frame);display:flex;flex-direction:column;min-height:320px}.agency-delivery-grid article:last-child{border:0}
.agency-delivery-grid article span{font-size:10px;letter-spacing:.17em;color:var(--copper-light);font-weight:760}.agency-delivery-grid h3{font-size:clamp(24px,2.3vw,33px);font-weight:580;letter-spacing:-.05em;line-height:1.2;margin:60px 0 20px}.agency-delivery-grid p{color:#b6c1bd;line-height:1.75;font-size:14px}
.team-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:60px}.team-model-item{border:1px solid var(--line);padding:34px;min-height:335px;display:flex;flex-direction:column}
.team-model-item span{font-size:10px;letter-spacing:.16em;color:var(--copper);font-weight:700}.team-model-item h3{font-size:clamp(25px,2.8vw,37px);margin:45px 0 20px;line-height:1.12;letter-spacing:-.05em;font-weight:600}.team-model-item p{color:#54605c;line-height:1.8;font-size:14px}
.agency-leadership .about-letters{opacity:.77}.sector-page-grid{border-top:1px solid var(--line)}.sector-extended{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:start;border-bottom:1px solid var(--line);padding:62px 0}
.sector-extended h2{font-size:clamp(34px,4vw,61px);letter-spacing:-.065em;line-height:1.13;margin:32px 0 23px;font-weight:590}.sector-extended p{max-width:640px;font-size:16px;line-height:1.8;color:#52605c}.sector-extended a{display:inline-block;margin-top:25px;border-bottom:1px solid var(--copper);padding-bottom:10px;text-transform:uppercase;font-weight:700;font-size:10px;letter-spacing:.12em}
.methodology-steps{margin-top:70px;border-top:1px solid var(--line)}.methodology-step{display:grid;grid-template-columns:110px 1.15fr .8fr;gap:5vw;padding:45px 0;border-bottom:1px solid var(--line);align-items:start}
.methodology-step>span{font-size:10px;color:var(--copper);font-weight:750;letter-spacing:.13em}.methodology-step h3{font-size:clamp(27px,3.2vw,48px);letter-spacing:-.06em;line-height:1.12;margin:0 0 17px;font-weight:600}.methodology-step p{font-size:15px;color:#515d5c;line-height:1.78}.methodology-step b{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:18px}
.standard-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 60px;margin-top:55px}.standard-list>div{border-top:1px solid var(--line);padding-top:25px}.standard-list b{font-size:25px;font-weight:600;letter-spacing:-.04em}.standard-list p{font-size:14px;line-height:1.8;margin-top:15px;color:#52605c}
@media(max-width:1100px){.agency-delivery-grid{grid-template-columns:repeat(2,1fr)}.agency-delivery-grid article:nth-child(2){border-right:0}.agency-delivery-grid article:nth-child(-n+2){border-bottom:1px solid var(--frame)}.sector-ledger-item{gap:25px}.methodology-step{grid-template-columns:65px 1fr 1fr;gap:25px}}
@media(max-width:750px){.departments-grid,.team-model-grid,.standard-list{grid-template-columns:1fr}.department-card{min-height:290px;padding:32px}.department-card h3{margin-top:35px}.agency-delivery-grid{grid-template-columns:1fr}.agency-delivery-grid article{border-right:0;border-bottom:1px solid var(--frame);min-height:230px}.agency-delivery-grid article:last-child{border-bottom:0}.agency-delivery-grid h3{margin:30px 0 15px}.sector-ledger-item{grid-template-columns:1fr 20px;gap:15px}.sector-ledger-item p{grid-column:1;grid-row:2}.sector-ledger-item span{grid-column:2;grid-row:1}.sector-extended{grid-template-columns:1fr;gap:35px;padding:45px 0}.methodology-step{grid-template-columns:42px 1fr;gap:18px}.methodology-step>div:last-child{grid-column:2}.team-model-item{min-height:260px}.standard-list{gap:35px}}
@media(prefers-reduced-motion:reduce){.department-card{transition:none}.department-card:hover{transform:none}}

/* AFH V2.3 / Opportunity architecture: the design demonstrates strategy, not decoration. */
.opportunity-section{--lab-line:rgba(230,238,232,.13);padding:clamp(85px,10vw,145px) var(--page);background:#162022;color:var(--chalk);position:relative;overflow:hidden;isolation:isolate}
.opportunity-section:before{content:'';width:80vw;height:70vw;max-width:1150px;max-height:850px;position:absolute;right:-28%;top:-30%;border-radius:50%;background:radial-gradient(ellipse,rgba(191,124,82,.105),transparent 65%);pointer-events:none}
.opportunity-heading{display:grid;grid-template-columns:1.35fr .65fr;column-gap:7vw;position:relative;z-index:1;align-items:end;margin-bottom:58px}.opportunity-heading .kicker{grid-column:1/-1;color:#b7c5c0;margin-bottom:22px}
.opportunity-heading h2{font-size:clamp(38px,5.7vw,92px);font-weight:590;letter-spacing:-.075em;line-height:1.05;max-width:980px}.opportunity-heading h2 em{color:#d7a489;font-family:Georgia,serif;font-weight:400}.opportunity-heading p{font-size:clamp(14px,1.23vw,18px);line-height:1.75;color:#b9c7c2;max-width:440px;padding-bottom:7px}
.lab-layout{display:grid;grid-template-columns:minmax(235px,.62fr) minmax(0,1.38fr);border:1px solid var(--lab-line);position:relative;z-index:1;min-height:650px}
.lab-options{background:#192528;border-right:1px solid var(--lab-line);display:flex;flex-direction:column;align-self:stretch}
.lab-option{position:relative;background:transparent;display:flex;flex-direction:column;align-items:start;justify-content:center;text-align:left;border:0;border-bottom:1px solid var(--lab-line);color:#c6d0cb;flex:1;padding:27px 55px 28px 32px;min-height:105px;transition:background .25s,color .25s}
.lab-option:last-child{border-bottom:0}.lab-option>span:first-child{font-size:9px;letter-spacing:.17em;color:#a7b8af;font-weight:740;margin-bottom:9px}.lab-option strong{font-size:clamp(18px,1.65vw,27px);font-weight:570;letter-spacing:-.045em;line-height:1.21;max-width:255px}.lab-option .lab-chevron{position:absolute;right:27px;top:50%;transform:translateY(-50%);font-size:22px;color:#c98d70;transition:transform .2s}.lab-option:hover,.lab-option:focus-visible{background:#293538;color:#fff}.lab-option.active{background:#cf9474;color:#171d20}.lab-option.active>span:first-child,.lab-option.active .lab-chevron{color:#263235}.lab-option:hover .lab-chevron{transform:translate(4px,-50%)}
.lab-result{position:relative;display:flex;flex-direction:column;min-width:0;background:linear-gradient(130deg,#223032,#182326)}
.lab-visual{min-height:255px;height:34%;position:relative;overflow:hidden;border-bottom:1px solid var(--lab-line);background:radial-gradient(ellipse at 50% 50%,rgba(200,139,105,.13),transparent 66%),linear-gradient(125deg,#1b2729,#243131)}
.lab-visual svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 2px 13px rgba(196,119,86,.25));transform:perspective(650px) rotateX(11deg) rotateY(-9deg) scale(1.08);transition:transform 1.3s var(--ease)}
.lab-result[data-lab-mode="convert"] .lab-visual svg{transform:perspective(650px) rotateX(-11deg) rotateY(9deg) scale(1.1)}
.lab-result[data-lab-mode="campaign"] .lab-visual svg{transform:perspective(650px) rotateX(7deg) rotateY(13deg) scale(1.08)}
.lab-result[data-lab-mode="complex"] .lab-visual svg{transform:perspective(650px) rotateX(-6deg) rotateY(-14deg) scale(1.12)}
.lab-result[data-lab-mode="capacity"] .lab-visual svg{transform:perspective(650px) rotateX(10deg) rotateY(2deg) scale(1.03)}
.lab-grid path{stroke:rgba(232,237,229,.075);stroke-width:1}.lab-links path{stroke:url(#lab-glow);stroke-width:1.5;stroke-opacity:.8}.lab-trace{stroke:#deab89;stroke-width:3;stroke-dasharray:10 18;stroke-linecap:round;animation:lab-flow 9s linear infinite}.lab-points circle{fill:#e9bc9e;stroke:#243033;stroke-width:3;animation:lab-node 4s ease-in-out infinite alternate}.lab-points circle:nth-child(2n){animation-delay:-1.7s;fill:#e9e7d8}
.lab-visual-label,.lab-visual-count{position:absolute;font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#c8d3ce;font-weight:700}.lab-visual-label{left:26px;bottom:20px}.lab-visual-count{right:30px;bottom:20px}
.lab-summary{padding:clamp(30px,3.5vw,58px);flex:1;display:flex;flex-direction:column}.lab-summary h3{font-size:clamp(28px,3.7vw,54px);max-width:800px;line-height:1.15;letter-spacing:-.065em;font-weight:610;margin:21px 0 14px;min-height:1.2em}.lab-summary>p{color:#bbc9c3;font-size:clamp(14px,1.18vw,17px);line-height:1.75;max-width:630px}.lab-deliverable-label{font-size:9px;letter-spacing:.17em;color:#dfa98c;font-weight:750;text-transform:uppercase;margin:30px 0 10px}.lab-summary ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}.lab-summary li{font-size:12px;line-height:1.55;color:#d3ded8;border-top:1px solid var(--lab-line);padding-top:13px}.lab-summary li::before{content:'↗ ';color:#daa88a}.lab-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:auto;padding-top:33px}.lab-actions .btn{padding:0 16px;white-space:normal;text-align:left}.lab-text-link{font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #bc896e;padding:13px 0;color:#e4cab9}.lab-text-link:hover{color:#fff}
.lab-disclaimer{max-width:750px;color:#acbab4;font-size:12px;line-height:1.8;margin:25px 0 0}
@keyframes lab-flow{to{stroke-dashoffset:-450}}@keyframes lab-node{to{opacity:.58;stroke-width:5}}
.buyer-lens-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-top:54px}.buyer-lens-options{display:flex;flex-direction:column;background:#f0eae2}.buyer-choice{padding:27px 28px;border:0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:clamp(17px,2vw,27px);font-weight:590;letter-spacing:-.04em;text-align:left;background:transparent;color:var(--ink);transition:background .3s}.buyer-choice:last-child{border-bottom:0}.buyer-choice.active{background:#d4a185}.buyer-choice:hover{background:#e5d6cb}.buyer-choice.active:hover{background:#d4a185}.buyer-choice span{color:#7b5d4c}
.buyer-lens-card{background:#faf8f3;padding:clamp(28px,4.2vw,68px);min-height:430px;display:flex;flex-direction:column}.buyer-lens-card h3{font-size:clamp(30px,3vw,49px);line-height:1.13;letter-spacing:-.06em;font-weight:600;margin:19px 0}.buyer-lens-card p{font-size:16px;line-height:1.77;color:#53605d;max-width:610px}.buyer-lens-card b{font-size:10px;text-transform:uppercase;letter-spacing:.15em;margin:30px 0 12px}.buyer-lens-card ul{margin:0 0 24px 18px;padding:0;color:#465550;line-height:1.9}.buyer-lens-card .text-cta{font-size:11px;letter-spacing:.12em;font-weight:760;text-transform:uppercase;border-bottom:1px solid var(--copper);align-self:start;margin-top:auto;padding:8px 0}
.faq-wrap .section-heading h2 em{font-family:Georgia,serif;font-weight:400;color:var(--copper)}.faq-list{max-width:1080px;margin:58px 0 0 auto;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:30px;cursor:pointer;font-size:clamp(18px,2vw,28px);font-weight:570;line-height:1.33;letter-spacing:-.04em;padding:24px 5px;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:focus-visible{outline-offset:-2px}.faq-plus{border:1px solid #acaba5;width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;font-size:20px;font-weight:400;transition:transform .2s;color:#865943}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-answer{max-width:820px;padding:0 45px 27px 5px}.faq-answer p{font-size:15px;line-height:1.8;color:#56605f}
@media(max-width:1150px){.lab-summary ul{grid-template-columns:1fr}.lab-summary li{padding-top:7px}.lab-summary{padding:32px}.lab-visual{height:30%;min-height:220px}}
@media(max-width:920px){.opportunity-heading{grid-template-columns:1fr}.opportunity-heading p{margin-top:25px}.lab-layout{grid-template-columns:1fr}.lab-options{display:grid;grid-template-columns:repeat(2,1fr);border-right:0;border-bottom:1px solid var(--lab-line)}.lab-option{min-height:105px;border-right:1px solid var(--lab-line);padding:20px 53px 20px 22px}.lab-option strong{font-size:20px}.lab-visual{height:250px}.lab-summary ul{grid-template-columns:repeat(3,1fr)}.buyer-lens-layout{grid-template-columns:1fr}}
@media(max-width:640px){.opportunity-section{padding:75px var(--page)}.opportunity-heading h2{font-size:clamp(39px,11vw,57px)}.opportunity-heading{margin-bottom:32px}.lab-options{display:flex}.lab-option{min-height:73px;padding:17px 50px 16px 18px}.lab-option>span:first-child{font-size:8px;margin-bottom:4px}.lab-option strong{font-size:18px}.lab-option .lab-chevron{right:15px}.lab-visual{height:188px;min-height:188px}.lab-summary{padding:27px 22px 32px}.lab-summary h3{font-size:30px;min-height:auto;margin:14px 0}.lab-summary ul{grid-template-columns:1fr;gap:6px}.lab-summary li{font-size:12px}.lab-actions{align-items:stretch;gap:10px;flex-direction:column}.lab-actions .btn,.lab-text-link{width:100%;justify-content:space-between}.lab-disclaimer{font-size:11px}.buyer-choice{font-size:19px;padding:22px}.buyer-lens-card{min-height:unset;padding:27px 25px}.buyer-lens-card h3{font-size:29px}.faq-list{margin-top:35px}.faq-list summary{font-size:19px;padding:20px 0}}
@media(prefers-reduced-motion:reduce){.lab-trace,.lab-points circle{animation:none!important}.lab-option,.lab-visual svg,.buyer-choice,.faq-plus{transition:none!important}}
body.motion-paused .lab-trace,body.motion-paused .lab-points circle{animation-play-state:paused}

/* Final readability refinements from the UX/accessibility review. */
.muted-label{color:#53625f}.btn{font-size:11px}.head-link{font-size:11px}
.lab-summary[aria-live]{outline:none}
/* Retain brand copper while darkening small text against pale backgrounds for readable contrast. */
.output-index,.department-card small,.methodology-step>span,.team-model-item>span,.model-steps{color:#875139}
.opportunity-section{scroll-margin-top:76px}

/* V2.4: consistent left-to-right text entrances; AFH wordmarks remain static. */
.motion-line{display:block;opacity:1;transform:none}
.motion-ready .motion-heading:not(.motion-in) .motion-line{opacity:0;transform:translateX(-64px)}
.motion-ready .motion-heading .motion-line{transition:transform 1s var(--ease),opacity .8s ease;transition-delay:calc(var(--line-index,0)*180ms)}
.motion-ready .hero-sequence .motion-line{transition-duration:1.1s,.9s;transition-delay:calc(180ms + var(--line-index,0)*280ms)}
.hero h1>.motion-line{color:var(--chalk)}
.hero h1>.motion-line:last-child{color:var(--copper-light)}
.hero h1>.motion-line span{color:inherit}
.footer{overflow:hidden}.footer-motion{float:right;font-size:11px;min-height:44px;margin-bottom:20px}
.motion-toggle{font-size:11px;min-height:44px}
.sector-ledger>a.sector-ledger-item:hover,.sector-ledger>a.sector-ledger-item:focus-visible{background:rgba(184,115,82,.08)}
.model-card .text-cta{margin-top:auto;padding-top:22px}
body.motion-paused .motion-heading .motion-line,body.motion-paused [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
@media(max-width:720px){.hero-meta .scroll-cue{display:flex;margin-top:12px;gap:10px}.motion-toggle{font-size:11px;padding:8px 12px}.motion-ready .motion-heading:not(.motion-in) .motion-line{transform:translateX(-36px)}.hero-desc{font-size:16px}.footer-motion{float:none;margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.motion-heading .motion-line,.motion-ready [data-reveal]:not(.is-visible){opacity:1!important;transform:none!important;transition:none!important}.ticker-inner{animation:none!important;flex-wrap:wrap;width:auto;gap:20px;padding:0 22px}.ticker-inner span:nth-child(n+6){display:none}}

/* V2.5: fewer sections; practical reading scale; accessible controls. */
.section{padding:clamp(64px,7vw,105px) var(--page)}.h2{font-size:clamp(36px,4.7vw,70px)}
.hero{height:auto;min-height:min(800px,100svh);padding:122px var(--page) 32px}.hero-inner{margin-top:0}.hero .display{font-size:clamp(72px,8vw,128px);line-height:.94}.hero-kicker{margin-bottom:24px}.hero-desc{max-width:690px;font-size:17px;line-height:1.6;margin-top:23px}.hero-cta{margin-top:24px}.hero-meta{padding-top:20px;margin-top:28px}.hero-side{display:none}
.page-hero{min-height:0;padding:137px var(--page) 65px}.page-hero .display{font-size:clamp(48px,6vw,88px);max-width:1020px}.page-hero .lead{font-size:18px;line-height:1.65;margin-top:24px;max-width:740px}.page-hero .mesh-small{opacity:.12}.page-hero .corner-num{display:none}
.head-link{font-size:11px;letter-spacing:.09em}.site-header nav{gap:22px}.header-motion{font-size:10px;white-space:nowrap;min-height:44px;padding:8px 10px;letter-spacing:.05em}.header-motion:disabled{opacity:.8;cursor:default}.menu-close{position:absolute;right:var(--page);top:24px;border:1px solid #98a7a2;background:none;color:var(--chalk);min-height:44px;padding:10px 18px;font-size:14px}.menu-close span{padding-left:18px}.mega-extra{align-self:start}.mega{padding-top:100px;z-index:140}.mega-side{gap:20px}.mega-main a{font-size:clamp(29px,4.4vw,65px)}
.small-index{font-size:12px;font-weight:700;letter-spacing:.1em;color:#875139}.support-grid,.deliverable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:45px}.support-card{border-top:1px solid #aaa9a1;padding:25px 0;display:flex;flex-direction:column;align-items:start}.support-card h3,.deliverable-grid h3{font-size:30px;font-weight:570;letter-spacing:-.045em;line-height:1.15;margin:20px 0 14px}.support-card p,.deliverable-grid p{font-size:16px;line-height:1.7;color:#485654;margin:0 0 26px}.text-cta{font-size:13px;font-weight:650;border-bottom:1px solid #875139;padding-bottom:7px}.support-card .text-cta{margin-top:auto}.sample-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start;margin-top:45px}.sample-label{display:inline-block;font-size:12px;line-height:1.5;color:#875139;border:1px solid #875139;padding:8px 10px}.sample-context h3{font-size:clamp(28px,3vw,42px);line-height:1.15;font-weight:550;letter-spacing:-.05em;margin:25px 0 18px}.sample-context p{font-size:17px;line-height:1.75;color:#485654;margin-bottom:28px}.sample-sheet{background:#faf8f3;border:1px solid #aaafa7;padding:30px;box-shadow:10px 14px 0 #e6e2d9;transform:rotate(1deg)}.sheet-header{display:flex;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.06em;padding-bottom:20px}.sheet-header span{color:#875139}.sample-sheet dl,.worked-brief{margin:0}.sample-sheet dl>div,.worked-brief>div{border-top:1px solid #b1b4ab;padding:16px 0}.sample-sheet dt,.worked-brief dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#875139;margin-bottom:8px}.sample-sheet dd,.worked-brief dd{margin:0;font-size:16px;line-height:1.6}.accountability{display:flex;justify-content:space-between;align-items:center;gap:50px;margin:35px 0 0 33.333%}.accountability p{font-size:17px;line-height:1.75;color:#c0cac5;max-width:540px}.dark .muted-label{color:#bcc7c2}.resource-feature{display:flex;align-items:center;justify-content:space-between;gap:35px}.resource-feature .eyebrow{margin-bottom:22px}
.service-directory{margin-top:35px;border-top:1px solid #aaa9a1}.directory-row{display:grid;grid-template-columns:48px 1fr 36px;gap:20px;align-items:center;border-bottom:1px solid #aaa9a1;padding:27px 12px}.directory-row:hover{background:#e7e2d9}.directory-row h3{font-size:clamp(23px,2.4vw,35px);font-weight:570;letter-spacing:-.035em;line-height:1.2;margin:0 0 7px}.directory-row p{font-size:16px;line-height:1.6;color:#485654;margin:0}.directory-row>span:last-child{font-size:27px}.finder-disclosure{background:#162022;color:var(--chalk);padding:0 var(--page)}.finder-disclosure>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:30px 0;min-height:80px;font-size:24px;line-height:1.3;list-style:none}.finder-disclosure>summary::-webkit-details-marker{display:none}.finder-disclosure>summary>span{font-size:30px}.finder-disclosure[open]>summary>span{transform:rotate(45deg)}.finder-disclosure .opportunity-section{padding:25px 0 70px}.opportunity-heading h2{font-size:clamp(34px,4.2vw,62px)}.opportunity-heading{margin-bottom:32px}.lab-layout{min-height:0}.compact-lab-visual{height:0;min-height:0;border:0;overflow:visible}.compact-lab-visual #lab-visual-count{position:absolute;top:12px;right:18px;font-size:11px;color:#c7d2cc}.lab-summary{scroll-margin-top:100px;padding:35px}.lab-summary h3{font-size:clamp(27px,3vw,42px)}.lab-summary ul{grid-template-columns:1fr}.lab-option{min-height:84px;padding:20px 48px 20px 25px}.lab-option strong{font-size:21px}.lab-option>span:first-child{font-size:10px}.lab-deliverable-label,.lab-text-link{font-size:11px}.lab-summary li{font-size:14px}.lab-disclaimer{font-size:13px}
.deliverable-grid article{border-top:1px solid #aaa9a1;padding-top:24px}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.scope-grid h2,.scope-grid h3{font-size:29px;letter-spacing:-.04em;font-weight:580;line-height:1.2;margin:0 0 20px}.scope-grid p{font-size:17px;color:#485654;line-height:1.8;margin:0}.service-next{margin-top:35px;padding-top:25px;border-top:1px solid #aaa9a1;display:flex;align-items:center;gap:30px;justify-content:space-between}.related-service{max-width:460px;font-size:15px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}.feature-item .number{color:#875139}.btn-dark:hover{background:#875139;border-color:#875139;color:#fff}.btn{font-size:12px;letter-spacing:.09em}.menu-toggle:hover{background:#875139;border-color:#875139}.form-field input,.form-field textarea,.form-field select{border-color:#777f7b}.enquiry-explainer,.copy-result{grid-column:1/-1}.enquiry-explainer{border-left:3px solid #875139;padding:2px 0 2px 19px}.enquiry-explainer h3{font-size:23px;margin:0 0 10px;letter-spacing:-.03em}.enquiry-explainer p{font-size:15px;line-height:1.7;margin:0}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.btn-copy{background:transparent;color:var(--ink)}.btn-copy:hover{background:#e6e1d8}.copy-result label{display:block;margin-bottom:10px;font-weight:600;font-size:14px}.copy-result textarea{width:100%;border:1px solid #777f7b;padding:15px;background:var(--white);font:inherit;font-size:15px;line-height:1.5}.copy-result[hidden]{display:none}.next-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding-left:20px;margin-top:40px}.next-steps li{padding-left:5px}.next-steps b{font-size:24px;letter-spacing:-.03em;font-weight:560}.next-steps p{font-size:16px;line-height:1.75;color:#485654}.contact-footer-note{font-size:16px;line-height:1.6;color:#c4cec7}.inner-page .footer{padding-top:60px}.inner-page .footer h2{font-size:clamp(42px,5vw,70px);margin:20px 0 28px}.inner-page .footer-grid{margin-top:50px}.inner-page .footer-grid:first-child{margin-top:0;border-top:0}.footer nav{font-size:14px}.footer p{font-size:14px}.footer-bottom{font-size:11px}
.resource-search{display:block;max-width:600px;font-size:14px;font-weight:600;margin-bottom:35px}.resource-search input{width:100%;display:block;border:1px solid #777f7b;background:var(--white);font:inherit;padding:15px;margin-top:12px}.resource-list{display:grid;grid-template-columns:1fr 1fr;gap:0 42px}.resource-row{display:block;border-top:1px solid #aaa9a1;padding:30px 0 36px}.resource-row[hidden]{display:none}.resource-row h2{font-size:32px;line-height:1.15;letter-spacing:-.045em;font-weight:580;margin:18px 0 14px}.resource-row p{font-size:17px;line-height:1.6;color:#485654;margin-bottom:25px}.article-v25{display:grid;grid-template-columns:220px minmax(0,760px);gap:6vw;justify-content:space-between}.article-v25 aside a{display:block;margin-top:22px;font-size:14px}.article-copy>p:first-child{margin-top:0}.article-copy p,.article-copy li{font-size:18px;line-height:1.8;color:#465351}.article-copy h2{font-size:34px;font-weight:560;line-height:1.2;letter-spacing:-.045em;margin:42px 0 18px}.article-copy li{margin-bottom:13px}.article-copy blockquote{margin:25px 0;padding:28px;border-left:3px solid #875139;background:#eee9df;font-size:20px;line-height:1.7}.article-copy .btn{margin-top:25px}.resource-template{background:#eee9df;padding:20px 28px;margin:35px 0}.resource-template h2{margin-top:0}.resource-template ol{padding-left:22px}.table-scroll{overflow-x:auto;margin:35px 0}.article-copy table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.6;min-width:560px}.article-copy th,.article-copy td{border:1px solid #9a9f96;padding:15px;text-align:left;vertical-align:top}.article-copy caption{text-align:left;font-size:20px;margin-bottom:15px;font-weight:600}.article-copy th{background:#e9e5dc}.worked-brief dd{font-size:18px}.resource-checks{padding-left:24px}.resource-checks li h2{margin-top:28px}.motion-ready .motion-heading:not(.motion-in) .motion-line{transform:translateX(-38px)}.motion-ready .motion-heading .motion-line{transition-duration:.65s,.5s;transition-delay:calc(var(--line-index,0)*120ms)}.motion-ready .hero-sequence .motion-line{transition-duration:1.1s,.9s;transition-delay:calc(180ms + var(--line-index,0)*280ms)}[data-reveal]{transition-duration:.55s}.motion-paused [data-tilt]{transform:none!important}.header-motion:focus-visible,.menu-close:focus-visible{outline:2px solid #e3ad8e;outline-offset:4px}
@media(max-width:1100px){.site-header nav{gap:12px}.accountability{margin-left:0}.support-grid,.deliverable-grid{gap:24px}.support-card h3,.deliverable-grid h3{font-size:27px}.article-v25{grid-template-columns:170px minmax(0,1fr);gap:35px}}
@media(max-width:720px){.site-header{padding-left:22px;padding-right:22px}.brand{gap:9px}.brand-sub{font-size:8px}.header-motion{font-size:10px;max-width:83px;white-space:normal;line-height:1.3;letter-spacing:0;padding:5px 7px}.site-header nav{gap:9px}.menu-toggle{padding:11px;min-height:44px}.hero{padding:115px 22px 34px;min-height:0}.hero .display{font-size:clamp(54px,15.6vw,88px);line-height:.98}.hero-kicker{font-size:9px;margin-bottom:24px;max-width:310px}.hero-desc{font-size:16px;margin-top:25px}.hero-cta{gap:12px;margin-top:25px}.hero-cta .btn{font-size:11px;padding:0 16px}.hero-meta{font-size:8px;line-height:1.7;margin-top:30px;padding-top:20px}.hero-meta .scroll-cue{display:none}.page-hero{padding:115px 22px 52px}.page-hero .display{font-size:clamp(43px,11.7vw,75px);line-height:1.02}.page-hero .lead{font-size:17px}.page-hero .kicker{font-size:10px}.section{padding:62px 22px}.section-heading{grid-template-columns:1fr;gap:18px}.h2{font-size:clamp(35px,9.5vw,54px)}.support-grid,.deliverable-grid,.scope-grid,.sample-layout,.next-steps,.resource-list{grid-template-columns:1fr}.support-grid,.deliverable-grid{margin-top:28px;gap:16px}.support-card{padding:23px 0 15px}.support-card h3,.deliverable-grid h3{font-size:29px;margin-top:12px}.support-card p{margin-bottom:18px}.sample-layout{margin-top:30px;gap:30px}.sample-sheet{padding:21px;box-shadow:5px 7px 0 #e6e2d9;transform:none}.sample-sheet dd{font-size:15px}.accountability,.resource-feature,.service-next{display:block}.accountability{margin:25px 0 0}.accountability .btn,.resource-feature .btn{margin-top:17px}.directory-row{grid-template-columns:28px 1fr 20px;padding:23px 0;gap:12px}.directory-row h3{font-size:25px}.directory-row p{font-size:15px}.finder-disclosure{padding:0 22px}.finder-disclosure>summary{font-size:21px;gap:20px}.finder-disclosure .opportunity-section{padding:15px 0 40px}.opportunity-heading h2{font-size:36px}.lab-option strong{font-size:19px}.lab-summary{padding:28px 20px}.lab-summary h3{font-size:29px}.lab-summary .eyebrow{font-size:10px}.lab-actions .btn{font-size:11px}.lab-options{border-right:0}.scope-grid{gap:30px}.related-service{display:block;margin-top:25px}.next-steps{gap:25px;margin-top:30px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.article-v25{grid-template-columns:1fr;gap:30px}.article-v25 aside{border-bottom:1px solid #aaa9a1;padding-bottom:22px}.article-copy h2{font-size:29px}.article-copy p,.article-copy li,.worked-brief dd{font-size:17px}.article-copy blockquote{font-size:18px;padding:22px}.article-copy ol,.article-copy ul{padding-left:22px}.resource-template{padding:22px}.resource-row h2{font-size:29px}.mega{padding:95px 22px 35px}.mega-side{grid-template-columns:1fr 1fr}.menu-close{right:22px}.body-lg{font-size:17px}.btn{white-space:normal;text-align:left}.footer-grid{gap:25px}.motion-ready .motion-heading:not(.motion-in) .motion-line{transform:translateX(-24px)}}
@media(prefers-reduced-motion:reduce){.sample-sheet{transform:none}.motion-heading .motion-line{transition:none!important;opacity:1!important;transform:none!important}}

.agency-monogram{font-family:inherit;font-size:clamp(100px,13vw,170px);font-style:normal;font-weight:650;letter-spacing:-.07em;line-height:1;color:#b78d76;margin:32px 0 0;}

/* V2.7 / Avenir reading face; the approved headline families remain unchanged. */
body{font-family:Avenir,'Avenir Next','Helvetica Neue',Arial,sans-serif}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,h4,h5,h6,.display,.h2,.brand-name,.foot-title,.agency-monogram{font-family:'AFH Avenir',Avenir,'Avenir Next','Helvetica Neue',Arial,sans-serif;font-weight:700}
.hero .display,.brand-name,.foot-title,.agency-monogram{font-weight:900}
.display,.h2{letter-spacing:-.045em}
.hero .display{letter-spacing:-.055em}
h1 em,h2 em,h3 em,.display em,.h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic}
.head-link,.brand-sub,.kicker,.eyebrow,.small-index,.sheet-header,.ink-row dt,label,.motion-toggle,.text-cta,.btn,.pill,.buyer-choice,.lab-option{font-weight:500}
main p em,main li em,main dd em{font-family:inherit}
/* Re-entry effects are armed only by JavaScript. Content is visible without it. */
.motion-piece{--motion-delay:0ms;--entry-y:22px}
.motion-ready .motion-piece[data-motion-kind='rise'],.motion-ready .motion-piece[data-motion-kind='rule'],.motion-ready .motion-piece[data-motion-kind='eyebrow'],.motion-ready .motion-piece[data-motion-kind='title']{opacity:0;translate:0 var(--entry-y);transition:opacity .6s ease var(--motion-delay),translate .75s cubic-bezier(.16,1,.3,1) var(--motion-delay)}
.motion-ready .motion-piece[data-motion-kind='eyebrow'],.motion-ready .motion-piece[data-motion-kind='title']{translate:-28px 0}
.motion-ready .motion-piece.motion-in{opacity:1;translate:0 0}
.motion-ready .motion-heading .motion-line{transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .65s ease;transition-delay:calc(var(--line-index,0)*130ms)}
.motion-ready .motion-heading:not(.motion-in) .motion-line{opacity:0;transform:translateX(-52px)}
.motion-ready .motion-heading.motion-in .motion-line{opacity:1;transform:none}
.motion-ready .hero-sequence .motion-line{transition-duration:1.15s,.9s;transition-delay:calc(120ms + var(--line-index,0)*250ms)}
.motion-ready .motion-piece[data-motion-kind='rule']{position:relative}
.motion-ready .motion-piece[data-motion-kind='rule']::after{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:#b78d76;transform:scaleX(0);transform-origin:left;transition:transform .85s cubic-bezier(.16,1,.3,1) var(--motion-delay);pointer-events:none}
.motion-ready .motion-piece[data-motion-kind='rule'].motion-in::after{transform:scaleX(1)}
.motion-ready .methodology-step.motion-piece::after{height:2px;background:linear-gradient(90deg,#b78d76 0%,#b78d76 60%,transparent 100%)}
.motion-ready .motion-piece[data-motion-kind='form']{opacity:.65;transition:opacity .7s ease}
.motion-ready .motion-piece[data-motion-kind='form'].motion-in{opacity:1}
.sample-sheet{position:relative;translate:0 var(--paper-drift,0px)}
.motion-ready .sample-sheet.motion-piece{opacity:.65;translate:0 calc(var(--paper-drift,0px) + var(--entry-y));transform:rotate(-1.1deg) scale(.985);transition:opacity .6s ease,translate .8s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}
.motion-ready .sample-sheet.motion-piece.motion-in{opacity:1;translate:0 var(--paper-drift,0px);transform:rotate(.6deg) scale(1)}
.sheet-header{position:relative}
.sheet-header::after{content:'';position:absolute;bottom:8px;left:0;width:100%;height:2px;background:#b78d76;transform-origin:left}
.motion-ready .sheet-header::after{transform:scaleX(0);transition:transform .7s cubic-bezier(.16,1,.3,1)}
.motion-ready .sheet-header.motion-in::after{transform:scaleX(1)}
.motion-ready .sheet-header>b,.motion-ready .sheet-header>span{clip-path:inset(0 100% 0 0);transition:clip-path .6s cubic-bezier(.4,0,.25,1) .1s}
.motion-ready .sheet-header.motion-in>b,.motion-ready .sheet-header.motion-in>span{clip-path:inset(0 0 0 0)}
.ink-row{position:relative}
.ink-row::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:1px;background:#b78d76;transform-origin:left}
.motion-ready .ink-row::before{transform:scaleX(0);transition:transform .45s cubic-bezier(.2,.8,.3,1) var(--ink-delay,0ms)}
.motion-ready .ink-row dt,.motion-ready .ink-row dd{clip-path:inset(0 100% 0 0)}
.motion-ready .ink-row dt{transition:clip-path .32s linear calc(var(--ink-delay,0ms) + 90ms)}
.motion-ready .ink-row dd{transition:clip-path .7s cubic-bezier(.25,.1,.5,1) calc(var(--ink-delay,0ms) + 250ms)}
.motion-ready .ink-row.motion-in::before{transform:scaleX(1)}
.motion-ready .ink-row.motion-in dt,.motion-ready .ink-row.motion-in dd{clip-path:inset(0 0 0 0)}
/* Architectural strokes add an opening sequence to every inner page. */
.motion-ready .mesh-small.motion-piece{opacity:.18}
.motion-ready .mesh-small.motion-piece svg{transform-origin:50% 50%;transform:translateX(22px) rotate(-4deg);transition:transform 1.8s cubic-bezier(.16,1,.3,1)}
.motion-ready .mesh-small.motion-piece :is(path,circle,line,polyline){stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s cubic-bezier(.3,.1,.2,1) var(--line-delay)}
.motion-ready .mesh-small.motion-in svg{transform:none}
.motion-ready .mesh-small.motion-in :is(path,circle,line,polyline){stroke-dashoffset:0}
.support-card,.deliverable-grid>article,.resource-row,.directory-row{transition:background-color .25s ease,border-color .25s ease}
.support-card:hover,.support-card:focus-within,.resource-row:hover,.resource-row:focus-visible,.directory-row:hover,.directory-row:focus-visible{border-color:#b78d76}
.text-cta{background-image:linear-gradient(#b78d76,#b78d76);background-repeat:no-repeat;background-size:0 1px;background-position:left bottom;transition:background-size .35s ease,color .25s ease}
.text-cta:hover,.text-cta:focus-visible{background-size:100% 1px;color:#875139}
.pill,.buyer-choice,.lab-option{transition:background-color .24s ease,border-color .24s ease,color .24s ease}
.motion-ready .motion-piece:not(.motion-in){transition-duration:0s;transition-delay:0s}
.motion-ready .motion-piece:not(.motion-in)::after,.motion-ready .motion-piece:not(.motion-in)::before,.motion-ready .ink-row:not(.motion-in) dt,.motion-ready .ink-row:not(.motion-in) dd,.motion-ready .sheet-header:not(.motion-in)>b,.motion-ready .sheet-header:not(.motion-in)>span,.motion-ready .motion-heading:not(.motion-in) .motion-line{transition-duration:0s;transition-delay:0s}
/* Pause/focus settles the page completely, including a partly written brief. */
.motion-ready .motion-settled,.motion-ready .motion-settled .motion-line,.motion-ready .motion-settled dt,.motion-ready .motion-settled dd,.motion-ready .motion-settled.sheet-header>b,.motion-ready .motion-settled.sheet-header>span{opacity:1!important;translate:none!important;transform:none!important;clip-path:none!important;transition:none!important}
.motion-settled::before,.motion-settled::after{transform:none!important;transition:none!important}
.motion-paused .motion-piece,.motion-paused .motion-piece *,.motion-paused .motion-piece::before,.motion-paused .motion-piece::after{opacity:1!important;translate:none!important;transform:none!important;clip-path:none!important;transition:none!important;animation:none!important;stroke-dashoffset:0!important}
.motion-paused .mesh-small.motion-piece{opacity:.18!important}
@media(max-width:720px){.motion-piece{--entry-y:16px}.motion-ready .motion-heading:not(.motion-in) .motion-line{transform:translateX(-30px)}.ink-row{--ink-delay:0ms!important}.motion-ready .sample-sheet.motion-piece.motion-in{transform:none;translate:0 0}.motion-ready .motion-piece[data-motion-kind='rise'],.motion-ready .motion-piece[data-motion-kind='rule']{transition-duration:.5s,.65s}.motion-ready .mesh-small.motion-piece{opacity:.13}}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-piece,.motion-ready .motion-piece *,.motion-ready .motion-piece::before,.motion-ready .motion-piece::after{opacity:1!important;translate:none!important;transform:none!important;clip-path:none!important;transition:none!important;animation:none!important;stroke-dashoffset:0!important}.motion-ready .mesh-small.motion-piece{opacity:.13!important}}
.motion-ready .motion-piece:not(.motion-in){transition-duration:0s;transition-delay:0s}

@font-face{font-family:"AFH Avenir";src:url("/assets/fonts/avenir-book.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap;}
@font-face{font-family:"AFH Avenir";src:url("/assets/fonts/avenir-medium.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap;}
@font-face{font-family:"AFH Avenir";src:url("/assets/fonts/avenir-heavy.ttf") format("truetype");font-style:normal;font-weight:600 850;font-display:swap;}
@font-face{font-family:"AFH Avenir";src:url("/assets/fonts/avenir-black.ttf") format("truetype");font-style:normal;font-weight:900;font-display:swap;}
body{font-family:"AFH Avenir",Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;}
/* V2.8 / Shared content tracks keep adjacent cards aligned as headings wrap. */
@media(min-width:721px){
 .support-grid,.deliverable-grid,.scope-grid,.next-steps,.resource-list{row-gap:0}
 .support-card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-items:start}
 .support-card .text-cta{align-self:end;justify-self:start}
 .deliverable-grid>article{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0;align-items:start}
 .scope-grid>div{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0;align-items:start}
 .resource-row{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-items:start}
 .resource-row p{margin:0 0 25px}
 .resource-row .text-cta{align-self:end;justify-self:start}
 .next-steps{padding-left:0;counter-reset:afh-step}
 .next-steps>li{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:0;align-items:start;position:relative;padding-left:24px;counter-increment:afh-step}
 .next-steps>li::before{content:counter(afh-step) '.';position:absolute;left:0;top:0;font-size:16px;line-height:36px;font-weight:400}
 .next-steps>li>b{display:block}
 .next-steps>li>p{margin:16px 0 0}
 /* Continue the actual heading column, including its gutter. */
 .accountability{margin-left:calc((100% - 25px)/3 + 25px);display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px 32px}
 .accountability p{margin:0;flex:1 1 330px}
 .accountability .btn{flex:0 0 auto;margin-top:0}
}
