/* ADVITEO — Design system. No fonts, trackers or third-party resources. */
:root{--ink:#272334;--muted:#666271;--purple:#7050ad;--purple-dark:#583d8e;--paper:#f8f7f3;--white:#fff;--line:#dedce3;--lavender:#eee9f5;--lime:#dfe9ad;--dark:#282236;--soft:#f1f0eb;--radius:8px;--container:1220px;--header:88px;--font:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:5px}img,svg{display:block;max-width:100%}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.04em;font-weight:500}p+p{margin-top:18px}ul,ol{margin:0;padding:0}::selection{background:var(--lime);color:var(--ink)}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;background:var(--white);padding:12px 20px}.skip-link:focus{top:12px}.container{max-width:var(--container);width:calc(100% - 112px);margin:auto}.section{padding:100px 0}.section-sm{padding:64px 0}.section-white{background:var(--white)}.section-lavender{background:var(--lavender)}.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.15em;line-height:1.5;color:var(--purple)}.eyebrow::before{content:'';width:7px;height:7px;background:currentColor;flex:0 0 7px}.eyebrow.light{color:var(--lime)}.eyebrow.neutral{color:var(--muted)}.eyebrow.no-dot::before{display:none}.serif{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--purple);letter-spacing:-.05em}.section-heading{font-size:clamp(32px,3.45vw,48px);max-width:750px;line-height:1.12}.intro{font-size:19px;line-height:1.65;color:var(--muted);max-width:680px}.small{font-size:13px;color:var(--muted);line-height:1.6}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.section-top .eyebrow{margin-bottom:18px}.section-top>p{max-width:340px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px;width:fit-content}.text-link:hover{color:var(--purple)}.arrow{display:inline-block;font-weight:400;font-size:20px;line-height:1;transition:transform .2s}.text-link:hover .arrow,.button:hover .arrow,.card-link:hover .arrow{transform:translateX(4px)}.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;border:1px solid var(--ink);border-radius:4px;background:var(--ink);color:white;font-size:14px;line-height:1.3;font-weight:600;padding:18px 24px;min-height:54px;transition:background .2s,transform .2s;text-align:center;cursor:pointer}.button:hover{background:var(--purple-dark);border-color:var(--purple-dark)}.button-purple{background:var(--purple);border-color:var(--purple)}.button-outline{background:transparent;border-color:var(--line);color:var(--ink)}.button-outline:hover{background:var(--white);border-color:var(--ink)}.button-white{background:var(--white);border-color:var(--white);color:var(--ink)}.button-white:hover{background:var(--lime);border-color:var(--lime)}.button-lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button-lime:hover{background:white;border-color:white}.button-small{padding:13px 18px;min-height:46px;font-size:13px}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.rule{border:0;border-top:1px solid var(--line);margin:32px 0}.tag{display:inline-flex;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;padding:6px 10px;border:1px solid var(--line);border-radius:2px;width:fit-content}.tag-purple{color:var(--purple);background:var(--lavender);border-color:transparent}.tag-lime{color:var(--ink);background:var(--lime);border-color:transparent}
/* Navigation */
.site-header{position:sticky;top:0;z-index:50;height:var(--header);border-bottom:1px solid var(--line);background:rgba(248,247,243,.96);backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{width:28px;height:28px;position:relative;border-left:7px solid var(--purple);border-bottom:7px solid var(--purple);transform:skewY(-15deg);align-self:center}.brand-mark::after{content:'';position:absolute;left:3px;bottom:5px;width:14px;height:7px;background:var(--purple);transform:rotate(-48deg);transform-origin:left center}.brand-word{font-size:28px;font-weight:700;letter-spacing:-1.4px;line-height:1}.brand-word span{color:var(--purple)}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav>a{font-size:13px;font-weight:500;position:relative;white-space:nowrap}.main-nav>a:not(.button){padding:30px 0}.main-nav>a:not(.button)::after{content:'';height:2px;background:var(--purple);position:absolute;bottom:19px;left:0;right:100%;transition:right .2s}.main-nav>a:hover::after,.main-nav>a[aria-current=page]::after{right:0}.main-nav>a[aria-current=page]{color:var(--purple)}.main-nav .nav-contact{margin-left:6px;color:var(--white)}.menu-toggle{display:none;align-items:center;gap:10px;background:none;border:1px solid var(--line);border-radius:4px;padding:10px 13px;font-size:13px}.menu-bars{width:17px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}.menu-bars::after{content:'';width:17px;height:1.5px;background:currentColor;position:absolute;top:4px;left:0}
/* Home */
.home-hero{padding:74px 0 56px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.13fr 1fr;gap:65px;align-items:center}.hero-copy{position:relative;z-index:1}.hero-copy .eyebrow{margin-bottom:25px}.hero-copy h1{font-size:clamp(56px,5.65vw,81px);line-height:1.02;letter-spacing:-.057em;margin-bottom:28px}.hero-copy h1 .serif{display:inline-block;line-height:1.04}.hero-copy .hero-description{color:var(--muted);font-size:17px;max-width:490px;line-height:1.7;margin-bottom:30px}.hero-copy .actions{gap:24px}.hero-copy .text-link{font-size:13px}.hero-note{margin-top:20px;font-size:11px;color:var(--muted)}.hero-visual{position:relative;padding:34px 24px 35px;min-width:0}.visual-bg{position:absolute;inset:0;background:var(--lavender);border-radius:50% 50% 6px 6px / 35% 35% 6px 6px;overflow:hidden}.visual-bg::before,.visual-bg::after{content:'';position:absolute;border:1px solid #d6cee5;border-radius:50%;width:460px;height:460px;left:60px;top:35px}.visual-bg::after{width:360px;height:360px;top:85px;left:110px}.mission-sheet{position:relative;background:var(--white);border:1px solid #e4dfea;box-shadow:0 16px 42px #3420460d;border-radius:6px;padding:26px 27px}.sheet-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.sheet-top .sheet-logo{font-size:19px;font-weight:700;color:var(--ink);letter-spacing:-1px;text-transform:none}.sheet-top .sheet-logo span{color:var(--purple)}.hero-tabs{display:flex;border-bottom:1px solid var(--line);gap:18px;margin-bottom:22px}.hero-tab{border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;padding:9px 0;font-size:11px;color:var(--muted)}.hero-tab[aria-selected=true]{color:var(--purple);border-color:var(--purple);font-weight:700}.sheet-caption{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:8px}.sheet-question{font-size:23px;letter-spacing:-.035em;line-height:1.28;min-height:89px;max-width:335px}.manager-box{margin:19px 0;background:var(--dark);color:white;padding:15px 17px;border-radius:4px;display:flex;gap:13px;align-items:center}.manager-symbol{background:var(--lime);color:var(--dark);width:34px;height:34px;display:grid;place-items:center;font-weight:700;border-radius:3px;font-size:19px}.manager-box strong{font-size:13px;font-weight:500;display:block}.manager-box small{font-size:10px;color:#d3cddb;display:block;margin-top:2px}.mini-flow{display:grid;grid-template-columns:repeat(3,1fr);position:relative;gap:10px;padding-bottom:21px;border-bottom:1px solid var(--line)}.mini-flow>div{position:relative;font-size:11px;padding-top:4px}.mini-flow>div span{display:block;width:19px;height:19px;border:1px solid #cdc2df;border-radius:50%;font-size:10px;line-height:17px;text-align:center;margin-bottom:7px;background:var(--white);position:relative;z-index:1;color:var(--purple)}.mini-flow::before{content:'';height:1px;background:#ded5e9;position:absolute;top:13px;left:0;right:55px}.mini-flow strong{font-weight:500}.sheet-bottom{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:17px;color:var(--purple);font-weight:600}.sheet-bottom .arrow{font-size:19px}.visual-footnote{position:relative;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:16px 0 0;text-align:center}.home-assurance{border-top:1px solid var(--line);margin-top:46px;padding-top:25px;display:grid;grid-template-columns:1.05fr repeat(3,1fr);gap:20px;align-items:center}.home-assurance>p{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.assurance-item{display:flex;align-items:center;gap:10px;font-size:12px}.check{display:inline-block;width:18px;height:18px;flex-shrink:0;border:1px solid #c5b8d8;border-radius:50%;position:relative}.check::after{content:'';position:absolute;width:7px;height:4px;border-left:1.3px solid var(--purple);border-bottom:1.3px solid var(--purple);transform:rotate(-45deg);left:5px;top:5px}
/* Cards / grids */
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.challenge-card{display:flex;flex-direction:column;border:1px solid var(--line);padding:31px 28px 26px;background:var(--paper);transition:border-color .2s,transform .2s;position:relative;min-height:345px;border-radius:3px}.challenge-card:hover{border-color:var(--purple);transform:translateY(-4px)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.card-number{font-size:11px;letter-spacing:.1em;color:var(--muted)}.line-icon{width:40px;height:40px;color:var(--purple)}.challenge-card h3{font-size:27px;margin-bottom:14px}.challenge-card .question{font-size:16px;line-height:1.55;margin-bottom:16px}.challenge-card .description{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:25px}.card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:12px;font-weight:600}.section-caption{font-size:12px;color:var(--muted);margin-top:22px}.dark-section{background:var(--dark);color:var(--white)}.dark-section .intro,.dark-section .muted{color:#c1bacb}.dark-section .section-heading{max-width:590px}.method-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.method-copy .eyebrow{margin-bottom:22px}.method-copy .intro{margin:24px 0 30px;font-size:16px;max-width:400px}.method-copy .serif{color:var(--lime)}.method-steps{padding-top:6px}.method-step{display:grid;grid-template-columns:33px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid #50485d}.method-step:first-child{padding-top:0}.step-number{color:var(--lime);font-size:11px;padding-top:4px}.method-step h3{font-size:23px;letter-spacing:-.025em;margin-bottom:9px}.method-step p{font-size:13px;line-height:1.7;color:#c1bacb}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.split-copy .eyebrow{margin-bottom:20px}.split-copy p{color:var(--muted);font-size:16px;margin-top:22px}.split-copy .text-link{margin-top:28px}.proof-list{margin-top:26px;list-style:none;display:grid;gap:14px}.proof-list li{display:flex;gap:13px;font-size:14px;align-items:flex-start}.proof-list .check{margin-top:2px}.document-frame{background:var(--lavender);padding:32px;border-radius:4px;position:relative}.document-card{background:white;padding:29px;border:1px solid #dfd8e8;border-radius:3px;box-shadow:0 12px 22px #28223608}.doc-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:20px}.doc-brand{font-weight:700;font-size:17px;letter-spacing:-.6px}.doc-kicker{font-size:9px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.doc-head .tag{font-size:8px;padding:4px 6px;align-self:center}.document-card h3{font-size:24px;margin-bottom:6px}.doc-subtitle{font-size:11px;color:var(--muted);margin-bottom:17px}.doc-row{display:grid;grid-template-columns:90px 1fr;gap:14px;font-size:11px;padding:12px 0;border-top:1px solid var(--line)}.doc-row strong{font-size:10px;font-weight:700;color:var(--purple)}.doc-row span{color:var(--muted)}.doc-bottom{margin-top:17px;background:var(--paper);padding:13px;font-size:10px;color:var(--muted);line-height:1.7}.doc-bottom strong{color:var(--ink);display:block}.document-frame>.small{font-size:10px;margin-top:14px;text-align:center}.mission-card{display:flex;flex-direction:column;min-height:365px;border:1px solid var(--line);border-radius:3px;padding:27px 27px 24px;background:white;transition:transform .2s,border-color .2s}.mission-card:hover{transform:translateY(-3px);border-color:var(--purple)}.mission-card>.tag{margin-bottom:28px}.mission-card h3{font-size:25px;line-height:1.2;margin-bottom:16px}.mission-card p{color:var(--muted);font-size:14px;line-height:1.65;margin-bottom:28px}.mission-card .mission-deliverable{font-size:11px;color:var(--muted);margin-bottom:20px}.mission-card .mission-deliverable strong{display:block;color:var(--ink);font-size:11px;font-weight:600;margin-bottom:4px}.mission-card .card-bottom{font-size:12px}.credibility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:44px}.credibility-item{border-top:1px solid var(--line);padding-top:25px}.credibility-item .eyebrow{font-size:10px;margin-bottom:20px}.credibility-item h3{font-size:23px;line-height:1.25;margin-bottom:14px}.credibility-item p{color:var(--muted);font-size:14px}.founder-line{margin-top:40px;padding:22px 0;border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;align-items:center}.founder-line p{font-size:13px;color:var(--muted);max-width:780px}.founder-line strong{font-weight:600;color:var(--ink)}.founder-line .text-link{font-size:12px;white-space:nowrap}
/* FAQ, footer, CTA */
.faq-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:90px}.faq-layout .eyebrow{margin-bottom:20px}.faq-layout .section-heading{font-size:40px}.faq-layout .text-link{margin-top:25px;font-size:13px}.faq-group details{border-bottom:1px solid var(--line)}.faq-group details:first-child{border-top:1px solid var(--line)}.faq-group summary{list-style:none;font-size:16px;font-weight:500;line-height:1.55;padding:23px 35px 23px 0;position:relative;cursor:pointer}.faq-group summary::-webkit-details-marker{display:none}.faq-group summary::after{content:'+';position:absolute;right:4px;top:23px;font-size:21px;font-weight:400;color:var(--purple);line-height:1.1}.faq-group details[open] summary::after{content:'−'}.faq-answer{padding:0 35px 25px 0;color:var(--muted);font-size:14px;line-height:1.8}.faq-answer a{color:var(--purple);text-decoration:underline}.end-cta{background:var(--lavender);padding:66px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.cta-inner .eyebrow{margin-bottom:17px}.cta-inner h2{font-size:44px;max-width:650px}.cta-inner p{font-size:14px;color:var(--muted);margin-top:16px;max-width:560px}.cta-action{display:flex;flex-direction:column;align-items:center;gap:13px;flex-shrink:0}.cta-action>span{font-size:11px;color:var(--muted)}.site-footer{background:var(--paper);padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:55px}.footer-brand .brand{margin-bottom:20px}.footer-brand p{font-size:13px;color:var(--muted);max-width:245px}.footer-title{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;margin:4px 0 19px}.footer-links{list-style:none;display:grid;gap:9px}.footer-links a{font-size:12px;color:var(--muted)}.footer-links a:hover{color:var(--purple);text-decoration:underline}.footer-email{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:4px;white-space:nowrap}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);margin-top:50px;padding-top:23px;border-top:1px solid var(--line)}.footer-legal{display:flex;gap:24px}.footer-legal a:hover{text-decoration:underline}
/* Interior */
.breadcrumb{font-size:11px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);margin-bottom:35px}.breadcrumb a:hover{color:var(--purple)}.breadcrumb span[aria-current]{color:var(--ink)}.page-hero{padding:43px 0 69px;border-bottom:1px solid var(--line)}.page-hero .eyebrow{margin-bottom:23px}.page-hero h1{font-size:clamp(43px,5.2vw,70px);max-width:950px;margin-bottom:24px;line-height:1.06}.page-hero .intro{font-size:18px;max-width:760px}.page-hero .actions{margin-top:29px}.page-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:65px;align-items:center}.page-hero-grid h1{font-size:clamp(42px,4.4vw,64px)}.hero-side{background:var(--lavender);padding:33px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-radius:3px}.hero-side .side-title{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--purple);margin-bottom:24px}.hero-side .line-icon{width:70px;height:70px;margin-bottom:30px}.hero-side h2{font-size:28px;line-height:1.2;margin-bottom:18px}.hero-side p{font-size:13px;color:var(--muted)}.quote-panel{border-left:2px solid var(--purple);padding:3px 0 3px 26px;margin:26px 0}.quote-panel p{font-family:var(--serif);font-size:28px;color:var(--ink);line-height:1.4;font-style:italic}.quote-panel .small{margin-top:14px;font-family:var(--font);font-size:11px;font-style:normal;color:var(--muted)}.subheading{font-size:30px;margin-bottom:25px}.list-clean{list-style:none;display:grid;gap:0}.list-clean li{padding:19px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:24px 1fr;gap:13px;font-size:15px}.list-clean li:last-child{border-bottom:1px solid var(--line)}.list-clean .item-no{color:var(--purple);font-size:10px;padding-top:5px}.list-clean strong{font-weight:500}.list-clean .detail{display:block;color:var(--muted);font-size:13px;margin-top:7px}.topic-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.topic-layout .eyebrow{margin-bottom:18px}.topic-layout .intro{font-size:16px;margin-top:20px}.topic-layout .text-link{margin-top:26px}.deliverable-block{padding:28px;border:1px solid var(--line);border-radius:3px}.deliverable-block h3{font-size:22px;margin-bottom:14px}.deliverable-block p{font-size:14px;color:var(--muted)}.capabilities{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.capability{padding:9px 13px;background:var(--lavender);font-size:12px;border-radius:2px;color:var(--purple-dark)}.note{border-left:2px solid var(--purple);padding:15px 20px;background:var(--lavender);font-size:13px;color:var(--muted);line-height:1.8;margin-top:25px}.note strong{color:var(--ink)}.note-warning{background:#f4eddf;border-color:#9c7943;color:#6f593a}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.filter-btn{background:transparent;border:1px solid var(--line);padding:11px 18px;border-radius:3px;font-size:12px;min-height:43px}.filter-btn[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.filter-btn:hover{border-color:var(--purple)}.filter-count{font-size:12px;color:var(--muted);margin-bottom:22px}.mission-grid{row-gap:24px}.mission-label{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-bottom:25px}.mission-label .small{font-size:10px;letter-spacing:.08em;text-transform:uppercase}.mission-meta{margin-top:35px;border-top:1px solid var(--line);padding-top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.mission-meta dt{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.mission-meta dd{font-size:14px;margin:0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:80px;align-items:start}.article-main h2{font-size:33px;margin-bottom:22px}.article-main h3{font-size:23px;margin:26px 0 12px}.article-main>section+section{margin-top:48px;padding-top:44px;border-top:1px solid var(--line)}.article-main p{font-size:15px;line-height:1.85;color:var(--muted)}.article-main .list-clean{margin:24px 0}.article-main .list-clean li{font-size:14px}.article-aside{position:sticky;top:118px;background:var(--lavender);padding:27px;border-radius:3px}.article-aside h2{font-size:26px;margin:18px 0 15px}.article-aside p{font-size:13px;color:var(--muted)}.article-aside .button{width:100%;margin:24px 0 12px;font-size:12px;padding:15px;gap:12px}.article-aside .small{font-size:10px}.process-detail{display:grid;grid-template-columns:100px 1fr 1fr;gap:40px;padding:43px 0;border-top:1px solid var(--line)}.process-detail:last-child{border-bottom:1px solid var(--line)}.process-detail>.number{font-family:var(--serif);font-size:52px;line-height:1.1;color:var(--purple)}.process-detail h3{font-size:30px;margin-bottom:16px}.process-detail p{color:var(--muted);font-size:14px}.process-deliverable{background:var(--lavender);padding:25px;align-self:start}.process-deliverable strong{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);margin-bottom:12px}.process-deliverable p{font-size:13px}.responsibility-card{padding:33px;border:1px solid var(--line);background:var(--paper);border-radius:3px}.responsibility-card h3{font-size:24px;margin:20px 0 17px}.responsibility-card p{font-size:14px;color:var(--muted)}.responsibility-card .tag{font-size:9px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.price-card{background:white;padding:37px;border:1px solid var(--line);border-radius:3px;display:flex;flex-direction:column}.price-card.featured{background:var(--dark);color:white;border-color:var(--dark)}.price-card .eyebrow{margin-bottom:26px}.price-card h2{font-size:29px;margin-bottom:25px}.price-value{font-size:48px;letter-spacing:-.04em;line-height:1.1}.price-unit{font-size:13px;color:var(--muted);margin-top:10px;margin-bottom:25px}.price-card.featured .price-unit{color:#c9c1d3}.price-card p{font-size:14px;color:var(--muted)}.price-card.featured p{color:#c9c1d3}.price-card .proof-list{margin-top:25px;padding-top:25px;border-top:1px solid var(--line)}.price-card.featured .proof-list{border-color:#574d64}.price-card .proof-list li{font-size:13px}.price-card.featured .check::after{border-color:var(--lime)}.budget-line{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;background:var(--lavender);padding:37px;margin-top:28px;border-radius:3px}.budget-line h3{font-size:30px}.budget-line p{font-size:14px;color:var(--muted)}.about-manifesto{max-width:880px;font-size:clamp(28px,3.5vw,44px);line-height:1.32;letter-spacing:-.035em}.about-manifesto .muted{color:#929099}.founder-panel{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start;border-top:1px solid var(--line);padding-top:35px}.founder-panel .founder-name{font-size:35px;margin:15px 0}.founder-panel .founder-role{font-size:13px;color:var(--muted)}.founder-panel .intro{font-size:17px}.founder-panel .small{margin-top:18px}.faq-section+.faq-section{margin-top:45px}.faq-section h2{font-size:25px;margin-bottom:22px}.faq-index{display:grid;gap:14px;margin-top:24px}.faq-index a{font-size:13px;border-bottom:1px solid var(--line);padding-bottom:11px}.faq-index a:hover{color:var(--purple)}
/* Contact */
.contact-section{padding:43px 0 90px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact-copy .eyebrow{margin-bottom:22px}.contact-copy h1{font-size:clamp(44px,4.8vw,66px);margin-bottom:25px}.contact-copy .intro{font-size:17px;margin-bottom:27px}.contact-email{font-size:23px;display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid var(--purple);color:var(--purple);padding-bottom:6px;margin:5px 0 34px;letter-spacing:-.02em}.contact-steps{list-style:none;border-top:1px solid var(--line);margin:14px 0 30px;max-width:460px}.contact-steps li{display:flex;align-items:baseline;gap:17px;padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.contact-steps li span{color:var(--purple);font-size:10px}.contact-form-card{background:white;border:1px solid var(--line);padding:33px;border-radius:5px}.contact-form-card h2{font-size:26px;margin-bottom:10px}.contact-form-card>.small{margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.field{display:flex;flex-direction:column;gap:7px}.field-full{grid-column:1/-1}.field label{font-size:12px;font-weight:600}.field label span{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border:1px solid #d7d4dd;background:var(--paper);border-radius:3px;padding:12px 13px;font-size:14px;color:var(--ink);min-height:45px}.field input::placeholder,.field textarea::placeholder{color:#898490}.field textarea{resize:vertical;min-height:122px;line-height:1.6}.field-help{font-size:10px;color:var(--muted)}.form-info{font-size:11px;line-height:1.7;color:var(--muted);margin:20px 0}.form-info a{text-decoration:underline;color:var(--purple)}.form-submit{width:100%;font-size:13px}.form-status{font-size:12px;margin-top:13px;color:var(--purple);min-height:0}.no-js-note{padding:12px;background:var(--lavender);font-size:12px;margin-bottom:20px}.contact-side-note{border-left:2px solid var(--purple);padding-left:19px;font-size:12px;color:var(--muted);max-width:400px}
/* Dialogs and legal */
dialog{border:1px solid var(--line);border-radius:7px;box-shadow:0 20px 80px #0002;background:var(--paper);color:var(--ink);padding:0;max-width:700px;width:calc(100% - 36px);max-height:88vh}dialog::backdrop{background:#1d142880;backdrop-filter:blur(4px)}.dialog-body{padding:35px}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:20px}.dialog-top h2{font-size:27px;line-height:1.2}.dialog-close{border:1px solid var(--line);background:white;border-radius:50%;width:36px;height:36px;font-size:25px;line-height:1;flex-shrink:0}.dialog-close:hover{border-color:var(--purple);color:var(--purple)}.dialog-body .document-card{box-shadow:none}.dialog-body>.small{margin:20px 0}.message-preview{width:100%;min-height:230px;border:1px solid var(--line);padding:16px;margin:18px 0;font-family:var(--font);font-size:13px;line-height:1.7;background:white;resize:vertical;color:var(--ink)}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap}.dialog-actions .button{font-size:12px;padding:15px 18px;gap:14px}.legal-content{max-width:860px}.legal-content h2{font-size:27px;margin:38px 0 18px}.legal-content h2:first-of-type{margin-top:0}.legal-content p,.legal-content li{font-size:14px;color:var(--muted);line-height:1.85}.legal-content ul{padding-left:21px;margin:17px 0}.legal-content a{text-decoration:underline;color:var(--purple)}.legal-content .note{margin-bottom:30px}.legal-table{width:100%;border-collapse:collapse;font-size:13px;margin:25px 0}.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:15px 10px;border-bottom:1px solid var(--line)}.legal-table th{font-weight:500;width:34%;padding-left:0}.legal-table td{color:var(--muted)}.empty-page{min-height:60vh;display:grid;place-items:center;text-align:center;padding:80px 25px}.empty-page h1{font-size:70px;margin:18px 0}.empty-page p{margin:22px 0;color:var(--muted)}.empty-page .eyebrow{justify-content:center}
/* Responsive */
@media(min-width:1500px){.hero-grid{gap:90px}.home-hero{padding-top:85px;padding-bottom:63px}.hero-visual{padding:38px 29px}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.main-nav{gap:22px}.hero-grid{gap:35px;grid-template-columns:1.08fr 1fr}.hero-copy h1{font-size:64px}.hero-copy .actions{gap:20px}.hero-copy .button{padding:17px}.hero-copy .text-link{font-size:12px}.hero-visual{padding:28px 20px}.mission-sheet{padding:23px 22px}.hero-tabs{gap:14px}.sheet-question{font-size:21px}.method-layout,.split{gap:60px}.challenge-card{padding:25px 22px}.mission-card{padding:25px 22px}.footer-grid{gap:32px}.article-layout{gap:45px}.contact-layout{gap:50px}.page-hero-grid{gap:38px}.home-assurance{gap:14px}.assurance-item{font-size:11px}.contact-form-card{padding:27px}.process-detail{grid-template-columns:70px 1fr 1fr;gap:28px}}
@media(max-width:960px){:root{--header:76px}.container{width:calc(100% - 56px)}.brand-word{font-size:26px}.menu-toggle{display:flex;margin-left:auto}.main-nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);padding:18px 28px 28px;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #00000008;max-height:calc(100dvh - 75px);overflow:auto;margin:0;gap:0}.main-nav.open{display:flex;flex-direction:column;align-items:stretch}.main-nav>a:not(.button){padding:17px 0;font-size:17px;border-bottom:1px solid var(--line)}.main-nav>a:not(.button)::after{display:none}.main-nav .nav-contact{margin:22px 0 0}.hero-grid{gap:25px}.hero-copy h1{font-size:57px}.hero-copy .hero-description{font-size:16px}.hero-copy .actions{flex-direction:column;align-items:flex-start;gap:21px}.hero-visual{padding:25px 14px}.mission-sheet{padding:22px 18px}.hero-tabs{gap:11px}.hero-tab{font-size:10px}.sheet-question{font-size:20px;min-height:98px}.sheet-top{font-size:8px}.manager-box{padding:13px 12px;gap:9px}.manager-box strong{font-size:11px}.manager-box small{font-size:9px}.mini-flow>div{font-size:10px}.home-assurance{grid-template-columns:repeat(3,1fr)}.home-assurance>p{grid-column:1/-1}.section{padding:75px 0}.section-top{gap:24px}.grid-3{gap:16px}.challenge-card h3{font-size:24px}.challenge-card .question{font-size:14px}.challenge-card .description{font-size:12px}.challenge-card{padding:24px 20px}.card-top{margin-bottom:28px}.mission-card h3{font-size:23px}.mission-card p{font-size:13px}.mission-card{padding:23px 20px}.method-layout{gap:45px}.split{gap:40px}.document-frame{padding:20px}.document-card{padding:23px}.doc-head .tag{display:none}.credibility-grid{gap:28px}.credibility-item h3{font-size:22px}.faq-layout{gap:45px;grid-template-columns:.8fr 1.2fr}.faq-layout .section-heading{font-size:34px}.cta-inner h2{font-size:37px}.cta-inner{gap:35px}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-contact{grid-column:1/-1;display:flex;align-items:center;gap:25px}.footer-contact .footer-title{margin:0}.footer-contact .small{margin:0!important}.footer-bottom{margin-top:35px}.article-layout{grid-template-columns:minmax(0,1fr) 270px;gap:35px}.article-aside{padding:23px}.page-hero-grid{grid-template-columns:1.3fr .7fr;gap:35px}.hero-side{padding:25px}.hero-side h2{font-size:25px}.hero-side .line-icon{width:55px;height:55px}.page-hero-grid h1{font-size:47px}.topic-layout{gap:40px}.contact-layout{gap:35px}.contact-copy h1{font-size:49px}.contact-form-card{padding:24px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.contact-email{font-size:21px}.price-card{padding:29px}.price-value{font-size:43px}.process-detail{grid-template-columns:45px 1fr 1fr;gap:25px}}
@media(max-width:720px){:root{--header:72px}.container{width:calc(100% - 40px)}.site-header{height:72px}.main-nav{top:71px}.brand-word{font-size:25px}.brand-mark{width:24px;height:24px;border-width:6px}.brand{gap:9px}.home-hero{padding:40px 0 28px}.hero-grid{grid-template-columns:1fr;gap:34px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:21px}.hero-copy h1{font-size:clamp(54px,10.3vw,76px);line-height:1.02;margin-bottom:24px}.hero-copy .hero-description{font-size:16px;max-width:550px;margin-bottom:26px}.hero-copy .actions{flex-direction:row;align-items:center;gap:22px}.hero-note{margin-top:17px;font-size:10px}.hero-visual{padding:28px 23px;max-width:480px;width:100%;margin:auto}.mission-sheet{padding:23px}.hero-tabs{gap:24px}.hero-tab{font-size:11px}.sheet-question{font-size:23px;min-height:84px;max-width:320px}.sheet-top{font-size:9px}.manager-box{padding:15px 17px}.manager-box strong{font-size:13px}.manager-box small{font-size:10px}.mini-flow>div{font-size:11px}.visual-footnote{font-size:8px}.home-assurance{margin-top:27px;padding-top:22px;grid-template-columns:1fr;gap:13px}.home-assurance>p{font-size:9px;margin-bottom:2px}.assurance-item{font-size:12px}.section{padding:61px 0}.section-sm{padding:48px 0}.section-heading{font-size:36px}.section-top{display:block;margin-bottom:31px}.section-top>p{margin-top:21px;max-width:100%;font-size:14px}.section-top>.text-link{margin-top:23px}.section-top .eyebrow{margin-bottom:17px}.grid-3,.grid-2{grid-template-columns:1fr;gap:18px}.challenge-card{padding:26px;min-height:0}.card-top{margin-bottom:24px}.challenge-card h3{font-size:28px}.challenge-card .question{font-size:17px}.challenge-card .description{font-size:14px;max-width:480px}.card-bottom{font-size:13px}.method-layout,.split,.topic-layout,.faq-layout{grid-template-columns:1fr;gap:38px}.method-copy .intro{max-width:100%;font-size:15px;margin:20px 0 27px}.method-step h3{font-size:23px}.method-step p{font-size:13px}.method-steps{padding-top:0}.split-copy p{font-size:15px}.document-frame{padding:25px;max-width:500px;width:100%;margin:auto}.document-card{padding:24px}.doc-head .tag{display:flex}.doc-row{grid-template-columns:86px 1fr}.mission-card{padding:26px;min-height:0}.mission-card>.tag{margin-bottom:23px}.mission-card h3{font-size:27px;max-width:460px}.mission-card p{font-size:14px;max-width:480px}.credibility-grid{grid-template-columns:1fr;gap:28px;margin-top:32px}.credibility-item{padding-top:24px}.credibility-item h3{font-size:25px}.credibility-item p{font-size:14px;max-width:520px}.founder-line{display:block;margin-top:28px;padding-top:24px}.founder-line .text-link{margin-top:22px}.faq-layout .section-heading{font-size:35px}.faq-group summary{font-size:15px;padding-top:21px;padding-bottom:21px}.faq-answer{font-size:13px;padding-right:20px}.cta-inner{display:block}.cta-inner h2{font-size:36px}.cta-inner p{font-size:14px}.cta-action{align-items:flex-start;margin-top:29px;gap:12px}.end-cta{padding:48px 0}.site-footer{padding:43px 0 23px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:290px}.footer-contact{display:block;grid-column:1/-1}.footer-contact .footer-title{margin-bottom:15px}.footer-contact .small{margin-top:14px!important}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px;font-size:9px}.footer-legal{flex-wrap:wrap;gap:19px}.breadcrumb{font-size:10px;gap:8px;margin-bottom:30px}.page-hero{padding:28px 0 48px}.page-hero h1{font-size:clamp(42px,8.6vw,62px);margin-bottom:23px}.page-hero .intro{font-size:16px}.page-hero .eyebrow{font-size:10px}.page-hero-grid{grid-template-columns:1fr;gap:31px}.page-hero-grid h1{font-size:clamp(44px,8.8vw,62px)}.hero-side{padding:27px;min-height:0}.hero-side .line-icon{width:42px;height:42px;margin-bottom:21px}.hero-side .side-title{margin-bottom:18px}.hero-side h2{font-size:27px;max-width:410px}.hero-side p{font-size:13px}.quote-panel p{font-size:25px}.subheading{font-size:28px}.list-clean li{font-size:14px}.list-clean .detail{font-size:13px}.article-layout{grid-template-columns:1fr;gap:40px}.article-aside{position:static;padding:27px}.article-main h2{font-size:30px}.article-main>section+section{margin-top:36px;padding-top:34px}.article-main p{font-size:14px}.mission-meta{grid-template-columns:1fr;gap:19px;margin-top:29px;padding-top:23px}.mission-meta dt{font-size:9px;margin-bottom:3px}.mission-meta dd{font-size:13px}.filters{gap:8px;margin-bottom:24px}.filter-btn{padding:10px 13px;font-size:11px}.process-detail{grid-template-columns:40px 1fr;gap:17px 21px;padding:30px 0}.process-detail>.number{font-size:38px}.process-detail h3{font-size:28px}.process-deliverable{grid-column:2;padding:20px}.responsibility-card{padding:27px}.price-grid{grid-template-columns:1fr;gap:20px}.price-card{padding:29px}.price-value{font-size:47px}.budget-line{grid-template-columns:1fr;gap:18px;padding:27px}.budget-line h3{font-size:28px}.about-manifesto{font-size:31px}.founder-panel{grid-template-columns:1fr;gap:26px}.founder-panel .intro{font-size:16px}.founder-panel .founder-name{font-size:30px}.contact-section{padding:28px 0 58px}.contact-layout{grid-template-columns:1fr;gap:39px}.contact-copy h1{font-size:clamp(45px,9vw,65px)}.contact-copy .intro{font-size:16px}.contact-form-card{padding:26px}.form-grid{grid-template-columns:1fr 1fr;gap:19px 15px}.field-full{grid-column:1/-1}.contact-email{font-size:24px;margin-bottom:27px}.contact-steps{margin-bottom:25px}.dialog-body{padding:24px}.dialog-top h2{font-size:24px}.dialog-body .document-card{padding:20px}.dialog-actions .button{width:100%}.legal-table th{width:38%}.legal-table th,.legal-table td{padding:12px 7px;font-size:12px}.legal-content .note{font-size:12px}.legal-content h2{font-size:25px}}
@media(max-width:390px){.container{width:calc(100% - 32px)}.hero-copy h1{font-size:53px}.hero-copy .actions{gap:22px}.hero-copy .button{padding:17px 20px;font-size:13px}.hero-visual{padding:23px 15px}.mission-sheet{padding:20px}.hero-tabs{gap:16px}.sheet-question{font-size:21px;min-height:86px}.manager-box{padding:13px 12px}.manager-box strong{font-size:12px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.contact-form-card{padding:22px}.section-heading{font-size:33px}.document-frame{padding:19px}.document-card{padding:19px}.doc-head .tag{display:none}.doc-row{grid-template-columns:74px 1fr;gap:10px}.page-hero h1{font-size:41px}.section-top .eyebrow{font-size:10px}.footer-grid{gap:30px 19px}.contact-email{font-size:22px}.brand-word{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-header,.site-footer,.end-cta,.actions,.article-aside,.filters,.menu-toggle,.hero-tabs,.hero-visual,.contact-form-card{display:none!important}body{background:white;font-size:11pt}.container{width:100%;max-width:none}.section,.section-sm,.page-hero{padding:25px 0}.hero-grid,.grid-3,.split,.method-layout,.topic-layout,.article-layout{display:block}.dark-section{background:white;color:black}.dark-section p{color:black!important}.grid-3>*{margin-bottom:15px;break-inside:avoid}.mission-card,.challenge-card{min-height:0}.hero-copy h1,.page-hero h1{font-size:38pt}.serif{color:inherit}.section-heading{font-size:25pt}details .faq-answer{display:block}.site-header{position:static}.note{break-inside:avoid}}
/* Programmatic page focus should announce the route, not frame the entire page. */
#contenu:focus{outline:none}.main-nav>a.nav-contact[aria-current=page]{color:var(--white)}
@media(max-width:720px){.empty-page h1{font-size:clamp(40px,10vw,60px)}}

/*
 * ADVITEO — IMPULSION
 * Visual-only theme for the complete initial website.
 * Copy, page hierarchy, calls to action and behavior are not changed.
 * Reference: supplied Impulsion desktop visual (b-hero.png).
 * Tokens: cobalt #263fd5 · citron #f0ef82 · paper #f3f4ed · navy #111f36.
 * Old variable names are kept as aliases so the original components remain reusable.
 */
:root {
  --blue: #263fd5;
  --blue-hover: #1c2fae;
  --citron: #f0ef82;
  --navy: #111f36;
  --ink: #151915;
  --muted: #545b56;
  --paper: #f3f4ed;
  --white: #fcfdf8;
  --line: #cdd0c4;
  --wash: #e8ebf4;
  --purple: var(--blue);
  --purple-dark: var(--blue-hover);
  --lime: var(--citron);
  --lavender: var(--wash);
  --dark: var(--navy);
  --soft: #ebeee5;
  --radius: 0px;
  --font: Arial, Helvetica, sans-serif;
  --serif: var(--font);
  --container: 1264px;
  --header: 84px;
  --on-blue: #f8f9ed;
  --on-blue-muted: #e0e5ff;
  --line-blue: #7184e7;
}

/* 01 — Type, spacing, navigation */
body { background: var(--paper); color: var(--ink); }
h1, h2, h3, h4 { font-weight: 600; }
h1, h2 { letter-spacing: -.052em; }
h3 { letter-spacing: -.035em; }
.container { width: calc(100% - 112px); }
.section { padding: 104px 0; }
.section-white { background: var(--white); }
.section-lavender { background: var(--wash); }
.section-heading { font-size: clamp(34px, 3.65vw, 52px); line-height: 1.08; }
.serif { font-family: var(--font); font-style: normal; font-weight: 600; letter-spacing: inherit; }
.eyebrow { font-size: 10px; letter-spacing: .15em; }
.eyebrow::before { width: 6px; height: 6px; flex-basis: 6px; border-radius: 50%; }
.eyebrow.neutral { color: var(--muted); }
.eyebrow.no-dot { font-size: 10px; }
.intro { line-height: 1.7; }
.tag, .capability { border-radius: 0; }
.tag-purple { background: var(--wash); color: var(--blue); }
.tag-lime { background: var(--citron); color: var(--ink); }
a, button, input, textarea, select { touch-action: manipulation; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 5px; }
.home-hero a:focus-visible, .home-hero button:focus-visible,
.page-hero a:focus-visible, .dark-section a:focus-visible,
.site-footer a:focus-visible, .contact-copy a:focus-visible,
.contact-section > .container > .breadcrumb a:focus-visible { outline-color: var(--citron); }
.button {
  border-radius: 0; font-size: 13px; font-weight: 600;
  min-height: 56px; padding: 17px 23px; gap: 28px;
  background: var(--ink); border-color: var(--ink); color: var(--white);
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.button:hover { background: var(--blue-hover); border-color: var(--blue-hover); transform: translateY(-2px); }
.button-purple { background: var(--blue); border-color: var(--blue); color: var(--white); }
.button-outline { background: transparent; border-color: var(--line); color: var(--ink); }
.button-outline:hover { background: var(--wash); border-color: var(--blue); color: var(--blue); }
.button-white { background: var(--white); border-color: var(--white); color: var(--ink); }
.button-white:hover, .button-lime { background: var(--citron); border-color: var(--citron); color: var(--ink); }
.button-lime:hover { background: var(--white); border-color: var(--white); color: var(--ink); }
.button-small { min-height: 46px; padding: 13px 18px; font-size: 12px; }
.text-link { font-size: 13px; font-weight: 600; min-height: 40px; }
.arrow { font-size: 22px; }
.site-header {
  height: var(--header); background: rgba(243,244,237,.97);
  border-color: var(--line); backdrop-filter: blur(12px);
}
.brand-mark { display: none; }
.brand-word { font-size: 34px; letter-spacing: -1.9px; font-weight: 700; }
.brand-word span { color: var(--blue); }
.main-nav { gap: 32px; }
.main-nav > a { font-size: 12px; }
.main-nav > a:not(.button) { padding: 28px 0; }
.main-nav > a:not(.button)::after { bottom: 17px; height: 1px; }
.main-nav .nav-contact { margin-left: 7px; padding: 14px 20px; gap: 25px; }
.menu-toggle { border-radius: 0; min-height: 44px; border-color: #959c90; }
.skip-link { background: var(--citron); color: var(--ink); }

/* 02 — Home: electric blue field, editorial heading and mission panel */
.home-hero { padding: 64px 0 0; background: var(--blue); color: var(--on-blue); isolation: isolate; }
.home-hero::before {
  content: ''; position: absolute; width: 680px; height: 680px;
  border: 1px solid rgba(224,229,255,.12); border-radius: 50%;
  right: -440px; top: -300px; pointer-events: none; z-index: -1;
}
.hero-grid { grid-template-columns: 1.16fr 1fr; gap: 82px; align-items: center; min-height: 548px; padding-bottom: 38px; }
.hero-copy .eyebrow { color: var(--citron); font-weight: 600; margin-bottom: 30px; }
.hero-copy h1 { font-size: clamp(64px, 6.5vw, 94px); line-height: 1.015; font-weight: 600; letter-spacing: -.058em; margin-bottom: 25px; }
.hero-copy h1 .serif { color: var(--citron); font-weight: 600; line-height: 1.08; position: relative; }
.hero-copy h1 .serif::after { content: ''; display: block; height: 2px; width: 46%; background: currentColor; margin-top: 16px; }
.hero-copy .hero-description { color: var(--on-blue-muted); font-size: 16px; max-width: 545px; line-height: 1.75; margin-bottom: 28px; }
.hero-copy .actions { gap: 27px; align-items: center; }
.hero-copy .button { background: var(--citron); border-color: var(--citron); color: var(--ink); }
.hero-copy .button:hover { background: var(--white); border-color: var(--white); }
.hero-copy .text-link { color: var(--on-blue); font-size: 12px; font-weight: 500; }
.hero-copy .text-link:hover { color: var(--citron); }
.hero-note { color: var(--on-blue-muted); font-size: 10px; line-height: 1.7; max-width: 500px; margin-top: 19px; }
.hero-visual { padding: 0; width: 100%; min-width: 0; position: relative; }
.visual-bg { background: none; border-radius: 0; overflow: visible; inset: 0; pointer-events: none; }
.visual-bg::before { width: 285px; height: 285px; top: -48px; left: auto; right: -35px; border: 1px solid rgba(224,229,255,.35); }
.visual-bg::after { width: 222px; height: 222px; top: -16px; left: auto; right: -3px; border: 1px solid rgba(224,229,255,.22); }
.mission-sheet {
  background: rgba(24,45,167,.24); color: var(--on-blue); border: 1px solid var(--line-blue);
  border-radius: 0; padding: 27px 28px 24px; box-shadow: none; backdrop-filter: none;
}
.sheet-top { color: var(--on-blue-muted); font-size: 9px; letter-spacing: .12em; padding-bottom: 19px; border-bottom: 1px solid var(--line-blue); margin-bottom: 15px; gap: 16px; }
.sheet-top .sheet-logo { font-size: 26px; letter-spacing: -1.2px; color: var(--on-blue); }
.sheet-top .sheet-logo span { color: var(--citron); }
.hero-tabs { border-color: var(--line-blue); gap: 20px; margin-bottom: 23px; }
.hero-tab { color: var(--on-blue-muted); font-size: 11px; padding: 10px 0 13px; min-height: 44px; }
.hero-tab[aria-selected=true] { color: var(--citron); border-color: var(--citron); }
.hero-tab:hover { color: var(--citron); }
.sheet-caption { color: var(--on-blue-muted); font-size: 9px; letter-spacing: .14em; margin-bottom: 12px; }
.sheet-question { color: var(--on-blue); font-size: 30px; line-height: 1.16; min-height: 72px; max-width: 100%; font-weight: 500; letter-spacing: -.04em; }
.manager-box { background: var(--citron); color: var(--ink); margin: 23px 0 24px; padding: 17px 16px; border-radius: 0; gap: 14px; }
.manager-symbol { background: transparent; color: var(--blue); border: 1px solid var(--blue); border-radius: 50%; font-size: 26px; font-weight: 600; width: 44px; height: 44px; flex-shrink: 0; letter-spacing: -1px; padding-right: 2px; }
.manager-box strong { font-size: 13px; font-weight: 600; }
.manager-box small { color: #41453a; font-size: 10px; line-height: 1.55; margin-top: 3px; }
.mini-flow { gap: 14px; border-color: var(--line-blue); padding-bottom: 21px; }
.mini-flow::before { background: var(--line-blue); top: 17px; left: 14px; right: 51px; }
.mini-flow > div { font-size: 11px; }
.mini-flow > div span { width: 27px; height: 27px; line-height: 25px; border: 1px solid var(--line-blue); color: var(--citron); background: #263fc9; font-size: 10px; margin-bottom: 9px; }
.mini-flow strong { font-weight: 500; }
.sheet-bottom { color: var(--on-blue); font-size: 11px; min-height: 26px; }
.sheet-bottom:hover { color: var(--citron); }
.sheet-bottom .arrow { font-size: 25px; color: var(--citron); }
.visual-footnote { text-align: left; color: var(--on-blue-muted); letter-spacing: .08em; font-size: 8px; margin-top: 14px; }
.home-assurance { border-color: var(--line-blue); margin-top: 26px; padding: 27px 0 29px; grid-template-columns: 1.15fr 1fr 1.05fr .9fr; }
.home-assurance > p { color: var(--on-blue-muted); font-size: 9px; letter-spacing: .12em; max-width: 220px; }
.assurance-item { font-size: 11px; gap: 11px; }
.check { border-radius: 0; border-color: #8f9a7a; width: 18px; height: 18px; }
.check::after { left: 4px; top: 5px; border-color: var(--blue); }
.home-assurance .check { border: 0; }
.home-assurance .check::after { border-color: var(--citron); width: 8px; height: 5px; }

/* 03 — Cards: geometric accents, no stock imagery or invented proof */
.grid-3 { gap: 22px; }
.challenge-card { border-radius: 0; background: var(--paper); padding: 14px 25px 25px; min-height: 415px; }
.challenge-card:hover { border-color: var(--blue); transform: translateY(-4px); }
.card-top {
  position: relative; min-height: 122px; margin: 0 -11px 25px; padding: 19px;
  border-bottom: 1px solid var(--line); background: var(--wash); overflow: hidden;
}
.card-top::before, .card-top::after { content: ''; position: absolute; pointer-events: none; }
.card-top::before { width: 126px; height: 126px; border: 1px solid #b7c2e8; border-radius: 50%; right: 12%; top: -39px; }
.card-top::after { height: 1px; width: 100%; left: 0; top: 62px; background: #cbd4ed; }
.card-top .line-icon { width: 61px; height: 61px; position: relative; z-index: 1; stroke-width: 1.25; }
.card-number { align-self: flex-start; color: var(--blue); z-index: 1; font-size: 10px; background: var(--wash); padding-left: 6px; }
.challenge-card:nth-child(2) .card-top::before { width: 145px; height: 145px; top: 36px; right: -5px; }
.challenge-card:nth-child(3) .card-top::before { border-radius: 0; width: 120px; height: 120px; top: -10px; right: 36px; transform: rotate(45deg); }
.challenge-card h3 { font-size: 28px; margin-bottom: 13px; }
.challenge-card .question { font-size: 15px; line-height: 1.6; }
.challenge-card .description { font-size: 13px; line-height: 1.7; }
.card-bottom { min-height: 46px; padding-top: 17px; }
.card-bottom .arrow { color: var(--blue); }
.mission-card { border-radius: 0; min-height: 355px; padding: 29px 28px 25px; position: relative; background: var(--white); }
.mission-card::before { content: ''; width: 44px; height: 3px; background: var(--blue); position: absolute; top: -1px; left: -1px; transition: width .2s; }
.mission-card:hover::before { width: calc(100% + 2px); }
.mission-card:hover { transform: translateY(-3px); }
.mission-card h3 { font-size: 27px; line-height: 1.16; }
.mission-card > .tag { font-size: 9px; letter-spacing: .11em; margin-bottom: 26px; }
.filter-btn { border-radius: 0; min-height: 46px; }
.filter-btn[aria-pressed=true] { background: var(--blue); border-color: var(--blue); color: var(--white); }
.filter-btn:hover:not([aria-pressed=true]) { background: var(--wash); }
.deliverable-block, .responsibility-card { border-radius: 0; border-top: 2px solid var(--blue); background: var(--white); padding: 30px; }
.deliverable-block h3 { font-size: 23px; }
.capability { background: var(--wash); border: 1px solid #cbd4ed; color: var(--blue-hover); font-size: 11px; }

/* 04 — Method, deliverables and reassurance */
.dark-section { background: var(--navy); color: var(--white); }
.dark-section .intro, .dark-section .muted, .method-step p { color: #c7cfde; }
.dark-section .serif, .method-copy .serif { color: var(--citron); }
.method-layout { gap: 100px; }
.method-copy .section-heading { max-width: 550px; }
.method-copy .intro { max-width: 490px; font-size: 15px; }
.method-copy .button-white { background: var(--citron); border-color: var(--citron); color: var(--ink); }
.method-copy .button-white:hover { background: var(--white); border-color: var(--white); }
.method-step { grid-template-columns: 44px 1fr; gap: 20px; border-color: #43516b; padding: 25px 0; }
.method-step h3 { font-size: 25px; line-height: 1.18; }
.method-step p { font-size: 13px; }
.step-number { font-size: 23px; font-weight: 400; letter-spacing: -.06em; line-height: 1.2; padding-top: 1px; }
.document-frame { border-radius: 0; background: transparent; padding: 0 13px 0 0; }
.document-card { border-radius: 0; border: 1px solid var(--ink); box-shadow: 12px 12px 0 var(--citron); background: var(--white); padding: 30px; }
.doc-head { border-color: var(--ink); }
.doc-brand { font-size: 21px; letter-spacing: -1px; }
.document-card h3 { font-size: 27px; }
.doc-bottom { background: var(--paper); border-left: 2px solid var(--blue); }
.document-frame > .small { text-align: left; margin-top: 30px; font-size: 10px; }
.credibility-item { border-color: #aab0a3; }
.credibility-item .eyebrow { color: var(--blue); }
.credibility-item h3 { font-size: 25px; }
.founder-line { border-color: var(--line); padding: 25px 0 0; }
.faq-group summary { font-weight: 500; font-size: 16px; padding: 24px 40px 24px 0; }
.faq-group summary::after { right: 1px; top: 22px; width: 24px; height: 26px; text-align: center; line-height: 24px; background: var(--wash); font-size: 19px; }
.faq-group details[open] summary { color: var(--blue); }
.faq-group details[open] summary::after { background: var(--blue); color: var(--white); }
.faq-answer { padding-right: 38px; }

/* 05 — End-of-page conversion and footer */
.end-cta { background: var(--citron); padding: 77px 0; border-top: 1px solid #d3d16b; }
.cta-inner { gap: 55px; }
.cta-inner .eyebrow { color: var(--ink); }
.cta-inner h2 { font-size: clamp(36px, 3.7vw, 51px); line-height: 1.08; max-width: 780px; }
.cta-inner p, .cta-action > span { color: #484d35; }
.cta-inner .button { background: var(--ink); border-color: var(--ink); color: var(--white); }
.cta-inner .button:hover { background: var(--blue); border-color: var(--blue); }
.site-footer { background: var(--navy); color: var(--white); padding-top: 64px; }
.site-footer .brand-word span { color: var(--citron); }
.footer-brand p, .footer-links a, .footer-bottom, .footer-contact .small { color: #c7cfde; }
.footer-title { color: var(--white); }
.footer-links a:hover { color: var(--citron); }
.footer-email { border-color: #64728b; color: var(--citron); }
.footer-bottom { border-color: #43516b; }

/* 06 — All interior pages inherit the same visual language */
.page-hero { background: var(--blue); color: var(--on-blue); padding: 32px 0 66px; border-color: var(--blue); position: relative; overflow: hidden; }
.page-hero > .container { position: relative; z-index: 1; }
.page-hero::after { content: ''; position: absolute; width: 540px; height: 540px; border-radius: 50%; border: 1px solid rgba(224,229,255,.15); top: -350px; right: -180px; pointer-events: none; }
.page-hero .eyebrow { color: var(--citron); margin-bottom: 23px; }
.page-hero h1 { font-size: clamp(43px, 4.9vw, 70px); font-weight: 600; line-height: 1.075; max-width: 1040px; }
.page-hero h1 .serif { color: var(--citron); }
.page-hero .intro { color: var(--on-blue-muted); font-size: 17px; max-width: 790px; }
.page-hero .breadcrumb { color: var(--on-blue-muted); margin-bottom: 41px; font-size: 10px; }
.page-hero .breadcrumb span[aria-current], .page-hero .breadcrumb a { color: var(--on-blue); }
.page-hero .breadcrumb a:hover { color: var(--citron); }
.page-hero .button { background: var(--citron); border-color: var(--citron); color: var(--ink); }
.page-hero .button:hover { background: var(--white); border-color: var(--white); }
.page-hero-grid { grid-template-columns: 1.4fr .7fr; gap: 75px; }
.page-hero-grid h1 { font-size: clamp(40px, 4.25vw, 62px); }
.page-hero .hero-side { border: 1px solid var(--line-blue); border-radius: 0; padding: 31px; background: rgba(17,31,54,.11); }
.hero-side .line-icon, .hero-side .side-title { color: var(--citron); }
.hero-side .side-title { font-size: 9px; }
.hero-side h2 { font-size: 28px; color: var(--on-blue); }
.hero-side p { color: var(--on-blue-muted); }
.quote-panel { border-color: var(--blue); }
.quote-panel p { font-family: var(--font); font-style: normal; font-weight: 400; font-size: 27px; letter-spacing: -.025em; }
.quote-panel .small { font-size: 11px; letter-spacing: 0; }
.list-clean strong { font-weight: 600; }
.list-clean .item-no { font-size: 11px; }
.note { border-radius: 0; }
.note-warning { background: #f5f0dc; color: #635534; border-color: #938344; }
.article-aside { border-radius: 0; background: var(--paper); border: 1px solid var(--line); border-top: 3px solid var(--blue); }
.article-aside h2 { font-size: 29px; }
.mission-meta { border-color: var(--line-blue); }
.page-hero .mission-meta dt { color: var(--on-blue-muted); }
.page-hero .mission-meta dd { color: var(--on-blue); }
.page-hero .mission-label .small { color: var(--on-blue-muted); }
.page-hero .tag-purple { background: var(--citron); border-color: var(--citron); color: var(--ink); }
.process-detail > .number { font-family: var(--font); font-weight: 400; letter-spacing: -.065em; font-size: 55px; }
.process-detail h3 { font-size: 30px; }
.process-deliverable { border: 1px solid #cbd4ed; background: var(--wash); }
.price-card { border-radius: 0; border-top: 3px solid var(--blue); background: var(--white); }
.price-card.featured { background: var(--navy); border-color: var(--navy); border-top-color: var(--citron); }
.price-card.featured .eyebrow { color: var(--citron); }
.price-card.featured .price-value { color: var(--citron); }
.price-card.featured p, .price-card.featured .price-unit { color: #c7cfde; }
.price-card.featured .proof-list { border-color: #43516b; }
.price-card.featured .check { border-color: #849166; }
.price-value { font-size: 54px; font-weight: 600; letter-spacing: -.055em; }
.budget-line { border-radius: 0; background: var(--wash); }
.about-manifesto { font-size: clamp(30px, 3.65vw, 49px); line-height: 1.24; font-weight: 500; }
.about-manifesto .muted { color: var(--muted); }
.founder-panel { border-top: 1px solid var(--ink); padding-top: 34px; }

/* 07 — Contact and dialogs; existing mail preparation stays unchanged */
.contact-section { padding: 32px 0 82px; background: var(--blue); color: var(--on-blue); }
.contact-section .breadcrumb { color: var(--on-blue-muted); margin-bottom: 42px; }
.contact-section .breadcrumb span[aria-current] { color: var(--on-blue); }
.contact-section .breadcrumb a:hover { color: var(--citron); }
.contact-layout { gap: 90px; }
.contact-copy .eyebrow { color: var(--citron); }
.contact-copy h1 { font-size: clamp(44px, 4.5vw, 65px); line-height: 1.06; font-weight: 600; }
.contact-copy .serif { color: var(--citron); }
.contact-copy .intro { color: var(--on-blue-muted); font-size: 16px; }
.contact-email { color: var(--citron); border-color: var(--citron); font-size: 24px; min-height: 44px; }
.contact-steps { border-color: var(--line-blue); }
.contact-steps li { border-color: var(--line-blue); }
.contact-steps li span { color: var(--citron); }
.contact-side-note { color: var(--on-blue-muted); border-color: var(--citron); }
.contact-form-card { border-radius: 0; background: var(--white); color: var(--ink); border: 1px solid var(--line-blue); padding: 34px; box-shadow: 10px 10px 0 var(--citron); margin: 0 10px 10px 0; }
.contact-form-card h2 { font-size: 29px; }
.field input, .field select, .field textarea { border-radius: 0; background: var(--paper); border: 1px solid #a6aea1; color: var(--ink); }
.field input::placeholder, .field textarea::placeholder { color: #646e63; opacity: 1; }
.field input:hover, .field select:hover, .field textarea:hover { border-color: #677461; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); }
.field label { font-size: 12px; }
.form-submit { background: var(--blue); border-color: var(--blue); color: var(--white); }
.form-submit:hover { background: var(--blue-hover); }
dialog { background: var(--paper); border: 1px solid var(--navy); border-radius: 0; box-shadow: 0 20px 80px rgba(17,31,54,.25); }
dialog::backdrop { background: rgba(17,31,54,.68); backdrop-filter: blur(4px); }
.dialog-close { border-radius: 0; width: 42px; height: 42px; background: var(--white); }
.dialog-close:hover { background: var(--blue); color: var(--white); border-color: var(--blue); }
.dialog-body .document-card { box-shadow: none; }
.dialog-top h2 { font-size: 28px; }
.message-preview { background: var(--white); }
.legal-content { max-width: 860px; }
.legal-table th { font-weight: 600; }
.legal-table td { overflow-wrap: anywhere; }
.empty-page { background: var(--blue); color: var(--on-blue); }
.empty-page .eyebrow, .empty-page .serif { color: var(--citron); }
.empty-page p { color: var(--on-blue-muted); }
.empty-page .button { background: var(--citron); border-color: var(--citron); color: var(--ink); }

/* 08 — Responsive overrides. Original structure and DOM order are kept. */
@media (min-width: 1550px) {
  .hero-grid { min-height: 570px; gap: 94px; }
  .home-hero { padding-top: 75px; }
}
@media (max-width: 1150px) {
  .container { width: calc(100% - 72px); }
  .hero-grid { grid-template-columns: 1.12fr 1fr; gap: 46px; }
  .hero-copy h1 { font-size: clamp(62px, 6.6vw, 76px); }
  .hero-copy .actions { gap: 20px; }
  .hero-copy .button { padding: 17px 18px; font-size: 12px; gap: 22px; }
  .hero-copy .text-link { font-size: 11px; }
  .mission-sheet { padding: 24px; }
  .sheet-question { font-size: 27px; min-height: 67px; }
  .hero-tabs { gap: 17px; }
  .hero-tab { font-size: 10px; }
  .main-nav { gap: 23px; }
  .method-layout, .split { gap: 60px; }
  .page-hero-grid { gap: 45px; }
  .contact-layout { gap: 55px; }
  .challenge-card { padding-inline: 23px; }
  .card-top { margin-inline: -9px; }
  .mission-card { padding: 26px 23px; }
  .contact-form-card { padding: 29px; }
  .home-assurance { gap: 16px; }
}
@media (max-width: 960px) {
  :root { --header: 76px; }
  .container { width: calc(100% - 56px); }
  .brand-word { font-size: 31px; }
  .main-nav { top: 75px; padding-inline: 28px; }
  .main-nav > a:not(.button) { padding: 17px 0; font-size: 17px; }
  .main-nav .nav-contact { margin-left: 0; }
  .home-hero { padding-top: 49px; }
  .hero-grid { grid-template-columns: 1fr; gap: 45px; min-height: 0; padding-bottom: 12px; }
  .hero-copy { max-width: 720px; }
  .hero-copy h1 { font-size: 80px; line-height: 1.025; }
  .hero-copy .hero-description { max-width: 650px; }
  .hero-copy .actions { flex-direction: row; align-items: center; gap: 28px; }
  .hero-copy .text-link { font-size: 12px; }
  .hero-visual { max-width: 660px; margin: 0; }
  .visual-bg::before, .visual-bg::after { right: 0; }
  .mission-sheet { padding: 28px; }
  .sheet-top { font-size: 9px; }
  .sheet-question { font-size: 32px; min-height: 78px; max-width: none; }
  .hero-tab { font-size: 12px; }
  .hero-tabs { gap: 26px; }
  .manager-box strong { font-size: 14px; }
  .manager-box small { font-size: 11px; }
  .mini-flow > div { font-size: 12px; }
  .sheet-bottom { font-size: 12px; }
  .home-assurance { margin-top: 30px; grid-template-columns: repeat(3, 1fr); row-gap: 17px; }
  .home-assurance > p { grid-column: 1 / -1; max-width: none; }
  .section { padding: 77px 0; }
  .section-heading { font-size: 40px; }
  .section-top > p { font-size: 14px; }
  .grid-3 { gap: 15px; }
  .challenge-card { padding: 11px 20px 23px; }
  .card-top { margin: 0 -9px 23px; padding: 15px; min-height: 109px; }
  .card-top .line-icon { width: 50px; height: 50px; }
  .challenge-card h3 { font-size: 24px; }
  .challenge-card .question { font-size: 14px; }
  .challenge-card .description { font-size: 12px; }
  .mission-card h3 { font-size: 24px; }
  .method-layout, .split, .topic-layout { gap: 42px; }
  .method-step { grid-template-columns: 37px 1fr; gap: 15px; }
  .method-step h3 { font-size: 23px; }
  .document-card { padding: 25px; }
  .document-frame { padding: 0 12px 0 0; }
  .page-hero h1 { font-size: 56px; }
  .page-hero-grid { grid-template-columns: 1.3fr .75fr; gap: 35px; }
  .page-hero-grid h1 { font-size: 46px; }
  .page-hero .hero-side { padding: 25px; }
  .hero-side h2 { font-size: 25px; }
  .page-hero .intro { font-size: 16px; }
  .contact-layout { gap: 38px; }
  .contact-copy h1 { font-size: 48px; }
  .contact-email { font-size: 22px; }
  .contact-form-card { padding: 25px; box-shadow: 7px 7px 0 var(--citron); margin-right: 7px; }
  .contact-form-card h2 { font-size: 26px; }
  .cta-inner h2 { font-size: 40px; }
  .cta-inner { gap: 35px; }
  .article-layout { gap: 35px; grid-template-columns: minmax(0, 1fr) 270px; }
  .article-aside { padding: 23px; }
  .price-value { font-size: 48px; }
  .footer-grid { gap: 30px; }
}
@media (max-width: 720px) {
  :root { --header: 72px; }
  .container { width: calc(100% - 44px); }
  .main-nav { top: 71px; padding: 18px 22px 28px; }
  .brand-word { font-size: 30px; }
  .home-hero { padding: 37px 0 0; }
  .hero-copy .eyebrow { font-size: 9px; letter-spacing: .1em; line-height: 1.6; margin-bottom: 24px; }
  .hero-copy h1 { font-size: clamp(51px, 10.25vw, 74px); letter-spacing: -.057em; line-height: 1.035; margin-bottom: 23px; }
  .hero-copy h1 .serif::after { height: 2px; margin-top: 14px; }
  .hero-copy .hero-description { font-size: 15px; line-height: 1.75; margin-bottom: 26px; }
  .hero-copy .actions { flex-direction: row; flex-wrap: wrap; gap: 18px 25px; }
  .hero-copy .button { min-height: 54px; padding: 16px 19px; font-size: 12px; gap: 26px; }
  .hero-copy .text-link { font-size: 12px; }
  .hero-note { font-size: 10px; margin-top: 17px; }
  .hero-grid { gap: 37px; padding-bottom: 0; }
  .hero-visual { max-width: 570px; margin: 0; padding: 0; }
  .visual-bg::before { width: 195px; height: 195px; top: -25px; right: 0; }
  .visual-bg::after { width: 145px; height: 145px; top: 0; right: 25px; }
  .mission-sheet { padding: 23px; }
  .sheet-top { font-size: 8px; letter-spacing: .07em; gap: 10px; }
  .sheet-top .sheet-logo { font-size: 25px; }
  .hero-tabs { gap: 21px; margin-bottom: 21px; }
  .hero-tab { font-size: 11px; }
  .sheet-question { font-size: 28px; line-height: 1.17; min-height: 66px; }
  .manager-box { padding: 15px 14px; gap: 11px; }
  .manager-box strong { font-size: 13px; }
  .manager-box small { font-size: 10px; }
  .manager-symbol { width: 40px; height: 40px; font-size: 24px; }
  .mini-flow > div { font-size: 11px; }
  .sheet-bottom { font-size: 11px; }
  .visual-footnote { font-size: 8px; line-height: 1.7; margin-top: 14px; }
  .home-assurance { grid-template-columns: 1fr; gap: 14px; padding: 23px 0 28px; margin-top: 25px; }
  .home-assurance > p { font-size: 9px; margin-bottom: 1px; }
  .assurance-item { font-size: 12px; }
  .section { padding: 63px 0; }
  .section-sm { padding: 47px 0; }
  .section-heading { font-size: 37px; line-height: 1.1; }
  .section-top { margin-bottom: 30px; }
  .section-top .eyebrow { margin-bottom: 17px; }
  .section-top > p { font-size: 14px; margin-top: 20px; }
  .grid-3, .grid-2 { grid-template-columns: 1fr; gap: 20px; }
  .challenge-card { padding: 12px 25px 26px; min-height: 0; }
  .card-top { margin: 0 -13px 24px; min-height: 127px; padding: 20px; }
  .card-top .line-icon { width: 61px; height: 61px; }
  .challenge-card h3 { font-size: 29px; }
  .challenge-card .question { font-size: 16px; }
  .challenge-card .description { font-size: 14px; }
  .mission-card { padding: 28px 25px 25px; min-height: 0; }
  .mission-card h3 { font-size: 28px; }
  .mission-card p { font-size: 14px; }
  .method-layout, .split, .topic-layout, .faq-layout { grid-template-columns: 1fr; gap: 37px; }
  .method-step { grid-template-columns: 36px 1fr; gap: 17px; padding: 24px 0; }
  .method-step h3 { font-size: 24px; }
  .method-copy .intro { font-size: 15px; }
  .step-number { font-size: 22px; }
  .document-frame { max-width: 570px; padding-right: 8px; margin: 0; }
  .document-card { padding: 25px; box-shadow: 7px 7px 0 var(--citron); }
  .document-frame > .small { margin-top: 24px; }
  .document-card h3 { font-size: 26px; }
  .doc-head .tag { display: inline-flex; }
  .doc-row { grid-template-columns: 82px 1fr; }
  .credibility-item h3 { font-size: 25px; }
  .faq-layout .section-heading { font-size: 37px; }
  .faq-group summary { font-size: 15px; padding: 22px 38px 22px 0; }
  .faq-answer { font-size: 14px; padding: 0 18px 23px 0; }
  .end-cta { padding: 54px 0; }
  .cta-inner h2 { font-size: 39px; }
  .cta-inner .button { font-size: 12px; }
  .cta-inner p { font-size: 14px; }
  .site-footer { padding: 45px 0 25px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 33px 26px; }
  .footer-bottom { font-size: 10px; line-height: 1.7; }
  .page-hero { padding: 25px 0 48px; }
  .page-hero .breadcrumb { margin-bottom: 32px; line-height: 1.8; }
  .page-hero .eyebrow { font-size: 9px; }
  .page-hero h1 { font-size: clamp(41px, 8.8vw, 62px); margin-bottom: 22px; line-height: 1.09; }
  .page-hero .intro { font-size: 16px; }
  .page-hero-grid { grid-template-columns: 1fr; gap: 33px; }
  .page-hero-grid h1 { font-size: clamp(41px, 8.8vw, 62px); }
  .page-hero .hero-side { padding: 27px; }
  .hero-side h2 { font-size: 27px; }
  .hero-side .line-icon { width: 48px; height: 48px; }
  .quote-panel p { font-size: 26px; }
  .quote-panel .small { font-size: 11px; }
  .article-layout { grid-template-columns: 1fr; gap: 38px; }
  .article-aside { position: static; padding: 26px; }
  .process-detail { grid-template-columns: 40px 1fr; gap: 17px 21px; }
  .process-detail > .number { font-size: 38px; }
  .process-detail h3 { font-size: 28px; }
  .process-deliverable { grid-column: 2; padding: 21px; }
  .deliverable-block, .responsibility-card { padding: 27px; }
  .price-value { font-size: 49px; }
  .price-card { padding: 28px; }
  .budget-line { padding: 27px; }
  .about-manifesto { font-size: 32px; }
  .contact-section { padding: 25px 0 58px; }
  .contact-section .breadcrumb { font-size: 10px; margin-bottom: 32px; }
  .contact-layout { grid-template-columns: 1fr; gap: 36px; }
  .contact-copy h1 { font-size: clamp(43px, 9.4vw, 65px); }
  .contact-copy .intro { font-size: 16px; }
  .contact-email { font-size: 24px; }
  .contact-form-card { padding: 26px; margin-right: 7px; }
  .contact-form-card h2 { font-size: 27px; }
  .form-grid { grid-template-columns: 1fr; gap: 19px; }
  .field-full { grid-column: auto; }
  .dialog-body { padding: 24px; }
  .dialog-top h2 { font-size: 25px; }
  .dialog-top { gap: 13px; }
  .dialog-actions .button { width: 100%; }
  .legal-table th, .legal-table td { font-size: 12px; }
  .empty-page h1 { font-size: clamp(40px, 9vw, 60px); }
}
@media (max-width: 390px) {
  .container { width: calc(100% - 36px); }
  .main-nav { padding-inline: 18px; }
  .hero-copy h1 { font-size: clamp(44px, 13.4vw, 52px); }
  .hero-copy .eyebrow { font-size: 8px; }
  .hero-copy .actions { gap: 17px; }
  .hero-copy .button { font-size: 12px; padding-inline: 17px; }
  .hero-note { font-size: 10px; }
  .mission-sheet { padding: 20px 18px; }
  .hero-tabs { gap: 16px; }
  .hero-tab { font-size: 10px; }
  .sheet-top { font-size: 7px; }
  .sheet-question { font-size: 26px; min-height: 92px; }
  .manager-box { padding: 14px 12px; gap: 10px; }
  .manager-box strong { font-size: 12px; }
  .manager-box small { font-size: 9px; }
  .section-heading, .faq-layout .section-heading { font-size: 34px; }
  .challenge-card { padding-inline: 22px; }
  .card-top { margin-inline: -10px; }
  .mission-card { padding-inline: 23px; }
  .document-card { padding: 21px; }
  .doc-head .tag { display: inline-flex; font-size: 7px; }
  .doc-row { grid-template-columns: 74px 1fr; gap: 10px; }
  .doc-brand { font-size: 19px; }
  .page-hero h1, .page-hero-grid h1 { font-size: 40px; }
  .page-hero h1 { overflow-wrap: break-word; }
  .contact-form-card { padding: 22px; }
  .contact-copy h1 { font-size: 43px; }
  .contact-email { font-size: 22px; }
  .cta-inner h2 { font-size: 36px; }
  .process-detail { grid-template-columns: 31px 1fr; gap: 18px 15px; }
  .process-detail > .number { font-size: 33px; }
  .process-detail h3 { font-size: 26px; }
  .process-deliverable { padding: 18px; }
  .button { gap: 20px; }
  .footer-grid { column-gap: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
@media print {
  body, .page-hero, .contact-section, .dark-section, .home-hero, .empty-page { background: white !important; color: black !important; }
  .page-hero .intro, .page-hero .serif, .home-hero .serif, .hero-copy .hero-description, .hero-note,
  .contact-copy .intro, .contact-copy .serif, .contact-side-note, .contact-email { color: black !important; }
  .page-hero::after, .home-hero::before, .visual-bg, .hero-copy h1 .serif::after { display: none; }
  .document-card { box-shadow: none; }
  .page-hero .breadcrumb, .page-hero .breadcrumb *, .page-hero .eyebrow { color: black !important; }
  .page-hero .hero-side { background: white; border-color: #777; }
  .hero-side h2, .hero-side p, .hero-side .side-title { color: black; }
}


/* Targeted September review: labels, spacing, founder and reporting. */
.eyebrow, .eyebrow.no-dot, .hero-copy .eyebrow, .page-hero .eyebrow,
.section-top .eyebrow { font-size: .875rem; line-height: 1.55; letter-spacing: .09em; }
.eyebrow::before, .eyebrow.no-dot::before { display: block; width: 7px; height: 7px; flex-basis: 7px; border-radius: 50%; }
.split > div > .eyebrow + .section-heading { margin-top: 22px; }
.split > div > .intro + .text-link { margin-top: 26px; }
.founder-panel { border-top: 0; padding-top: 0; }
.brand-word { letter-spacing: -.04em; }
.price-on-quote { font-size: 1.125rem; line-height: 1.5; margin: 26px 0 16px; color: var(--ink); }
.doc-kicker { font-size: .75rem; }
.doc-subtitle, .doc-bottom { font-size: .8125rem; }
.doc-row, .doc-row strong { font-size: .875rem; }
.doc-row { grid-template-columns: minmax(90px, .85fr) minmax(0, 3fr); }
.doc-row span { overflow-wrap: anywhere; }
#report-dialog { max-height: calc(100dvh - 32px); overscroll-behavior: contain; }
#report-dialog .dialog-body { padding-top: 0; }
#report-dialog .dialog-top { position: sticky; top: 0; z-index: 1; background: var(--paper); padding: 24px 0 18px; margin-bottom: 0; }
.dialog-close { flex-shrink: 0; }
@media (max-width: 720px) {
  .eyebrow, .eyebrow.no-dot, .hero-copy .eyebrow, .page-hero .eyebrow,
  .section-top .eyebrow { font-size: .875rem; }
  .doc-row { grid-template-columns: 1fr; gap: 4px; }
  #report-dialog { width: calc(100% - 24px); }
  #report-dialog .dialog-body { padding-left: 18px; padding-right: 18px; }
  #report-dialog .dialog-top h2 { font-size: 23px; }
}

.contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.form-submit:disabled { opacity:.65; cursor:wait; }

/* Header signature and the four requested editorial adjustments. */
.header-brand { display: flex; align-items: center; gap: 18px; flex-shrink: 0; }
.brand-tagline { display: block; max-width: none; white-space: nowrap; padding-left: 18px; border-left: 1px solid var(--line); font-size: 12px; line-height: 1.45; color: var(--muted); }
.hero-copy .eyebrow.hero-service-label::before { display: none; }
.related-missions .section-top > .text-link { flex-shrink: 0; align-self: flex-end; }
@media (max-width: 1150px) {
  .header-brand { flex-direction: column; align-items: flex-start; gap: 4px; }
  .brand-tagline { max-width: none; white-space: nowrap; padding-left: 0; border-left: 0; font-size: 12px; line-height: 1.25; }
  .header-inner { gap: 16px; }
}
@media (min-width: 601px) and (max-width: 960px) {
  .header-brand { flex-direction: row; align-items: center; gap: 18px; }
  .brand-tagline { max-width: none; white-space: nowrap; padding-left: 18px; border-left: 1px solid var(--line); font-size: 12px; line-height: 1.45; }
}
@media (max-width: 600px) {
  .brand-tagline { max-width: none; white-space: nowrap; font-size: 11px; }
  .related-missions .section-top > .text-link { align-self: flex-start; }
}
