@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#172520;--green:#234c38;--lime:#d9ee88;--paper:#f7f9f5;--muted:#69736d;--line:#dce2da}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #608932;outline-offset:5px}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:26px 5%;gap:24px;border-bottom:1px solid var(--line)}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:25px;letter-spacing:-1px;display:flex;align-items:center;gap:9px}.brand-period{color:#63803a;margin-left:-8px}.brand-icon{background:var(--green);color:var(--lime);width:32px;height:34px;line-height:30px;text-align:center;border-radius:8px;font-size:29px;position:relative}.brand-icon span{font-size:16px;position:absolute;top:-8px;right:1px}nav{display:flex;gap:30px;font-size:14px}nav a:hover,footer a:hover{color:#5d8135}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--green);color:white;padding:16px 24px;border:1px solid var(--green);border-radius:7px;font-weight:600;cursor:pointer;line-height:1.4}.button:hover{background:#326447}.button.small{font-size:14px;padding:12px 18px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:#e9efdf}.button.light{background:var(--lime);color:var(--ink);border-color:var(--lime)}.wrap{max-width:1260px;margin:auto;padding:0 38px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;padding:80px 0 68px;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#54723f;display:block;margin-bottom:21px}.eyebrow:before{content:'';display:inline-block;width:20px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.14;letter-spacing:-1.9px;margin:0}h1{font-size:clamp(40px,4.55vw,64px);font-weight:650}h1 em{font-style:normal;color:#648348}p{color:var(--muted);margin:20px 0}.hero p{font-size:17px;max-width:475px;line-height:1.8}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.fine{font-size:12px!important;color:var(--muted)}.check{color:#5d7746;margin-right:7px}.report-surround{background:#e9efdf;border-radius:16px;padding:27px;position:relative}.report{background:white;border:1px solid #e1e6dd;border-radius:10px;padding:27px;box-shadow:0 20px 40px #193c2210;transform:rotate(-1deg)}.report-top{display:flex;justify-content:space-between;align-items:center;font-size:12px}.pill{font-size:12px;padding:4px 9px;background:#edf1e6;border-radius:4px;color:#597242}.report h3{font-size:23px;letter-spacing:-.8px;margin-top:24px}.report p{font-size:12px;margin:6px 0 23px}.scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.score{padding:17px 10px;background:#f7f8f4;border:1px solid #e6e9e1;border-radius:6px}.score label{font-size:11px;display:block;min-height:34px;line-height:1.4;color:#536052}.score strong{font-size:33px;font-weight:550;letter-spacing:-1px}.score strong small{font-size:12px;letter-spacing:0;color:#949b91}.bar{height:4px;background:#e3e7dc;margin:8px 0}.bar i{display:block;height:100%;background:#8e9e61}.score span{font-size:11px;color:#8d6c39}.finding{border-top:1px solid var(--line);margin-top:23px;padding-top:17px;font-size:13px}.finding b{font-size:11px;letter-spacing:1px;display:block;margin-bottom:8px}.finding p{font-size:13px;line-height:1.6;margin:5px 0}.report-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:17px;font-size:11px;color:#6a7469}.float-note{position:relative;margin:16px -7px -5px 65px;padding:13px 17px;border:1px solid #d1dbbf;border-radius:7px;background:#f6faed;font-size:12px;display:flex;gap:12px;align-items:center}.float-note strong{font-size:20px;color:#678247}.audience{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:20px;align-items:center;justify-content:space-between;padding:24px 0;font-size:14px}.audience span:first-child{font-size:12px;color:var(--muted)}section{padding:75px 0}h2{font-size:38px;font-weight:600}h3{font-size:21px;letter-spacing:-.7px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.section-heading p{max-width:360px;font-size:15px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:27px}.card p{font-size:15px}.icon{font-size:23px;color:#5d7848;display:block;margin-bottom:28px}.card .number{font-size:12px;letter-spacing:2px;color:#81906f;margin-bottom:35px;display:block}.dark{background:var(--green);color:white;border-radius:14px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:35px;margin:5px 0 65px}.dark h2{font-size:34px;max-width:560px}.dark p{color:#c2d0bd}.page{padding:65px 0 80px;min-height:65vh}.page-intro{max-width:760px;margin-bottom:42px}.page-intro h1{font-size:48px}.page-intro p{font-size:18px}.price{font-size:43px;font-family:Manrope,sans-serif;letter-spacing:-2px;margin:24px 0}.price small{font:14px 'DM Sans',sans-serif;letter-spacing:0}.featured{background:var(--green);color:#fff;border-color:var(--green)}.featured p,.featured li{color:#d6e2d0}ul{list-style:none;padding:0}li{margin:12px 0;color:var(--muted);font-size:15px}li:before{content:'✓';color:#83a367;margin-right:10px}.cols{display:grid;grid-template-columns:1.35fr .8fr;gap:50px}.form-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{font-size:14px;font-weight:500;display:block}input,select,textarea{display:block;width:100%;padding:12px 13px;border:1px solid #ccd6c8;border-radius:6px;margin-top:8px;background:#fff;color:var(--ink)}textarea{min-height:125px;resize:vertical}.full{grid-column:1/-1}.notice{padding:15px 20px;background:#edf2e5;border-left:3px solid #8aa765;font-size:14px;color:#53634b;margin:20px 0}.article{max-width:780px}.article h2{font-size:26px;margin:36px 0 12px}.article p{line-height:1.8}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:600}.sample-report{max-width:880px;margin:auto;background:white;padding:48px;border:1px solid var(--line);border-radius:12px}.sample-report .score label{font-size:14px}.sample-report .score{padding:20px}.sample-report h2{font-size:28px;margin-top:35px}.sample-report .score strong{font-size:45px}.step{display:grid;grid-template-columns:55px 1fr;gap:16px;margin:28px 0}.step>span{border:1px solid var(--line);border-radius:50%;width:40px;height:40px;text-align:center;padding-top:6px;color:#739155}.step p{margin-top:7px}footer{border-top:1px solid var(--line);padding:36px max(5%,24px);display:flex;justify-content:space-between;gap:25px;font-size:13px;color:var(--muted)}footer p{margin:5px 0}footer a,footer span{display:inline-block;margin-right:20px;margin-top:10px}.hidden{display:none}@media(max-width:1000px){nav{gap:15px}header{padding:20px 25px}.hero{gap:25px}.report-surround{padding:17px}.report{padding:19px}.wrap{padding:0 25px}}@media(max-width:760px){header{flex-wrap:wrap;gap:16px}.brand{font-size:23px}header>.button{font-size:12px;padding:10px}nav{order:3;width:100%;justify-content:space-between;font-size:13px}.hero{grid-template-columns:1fr;padding:44px 0;gap:35px}h1{font-size:44px}.hero p{font-size:16px}.report-surround{max-width:520px;width:100%;margin:auto}.audience{flex-wrap:wrap;justify-content:flex-start;gap:10px 25px}.audience span:first-child{width:100%}.section-heading{display:block}.section-heading p{margin-top:18px}.cards,.cols{grid-template-columns:1fr}section{padding:48px 0}h2{font-size:31px}.dark{padding:30px;display:block}.dark .button{margin-top:15px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.page-intro h1{font-size:39px}.sample-report{padding:22px}.sample-report .scores{gap:6px}.sample-report .score{padding:12px 8px}.sample-report .score label{font-size:12px}.sample-report .score strong{font-size:32px}.form-panel{padding:22px}footer{display:block}.page{padding-top:40px}}@media print{header,footer,.actions,.notice{display:none}body{background:white}.sample-report{border:0;padding:0}.page{padding:0}}
/* Vichan — the journey */

:root{--ink:#f2f4fc;--green:#526cfa;--lime:#b9c7ff;--paper:#080b15;--muted:#9aa4be;--line:#ffffff15}html{scroll-behavior:smooth}body{background:#080b15;font-family:'DM Sans',sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 0,#23317718,transparent 60%);z-index:-1}header{position:sticky;top:0;z-index:30;max-width:none;padding:20px 5%;background:#080b15dd;backdrop-filter:blur(24px);transition:padding .3s,border-color .3s}header.scrolled{padding-top:13px;padding-bottom:13px;border-color:#ffffff25}header nav a{color:#aab3c9}header nav a:hover,header nav a[aria-current=page]{color:white}.brand{font-size:24px;letter-spacing:-1.2px}.brand-icon{background:linear-gradient(135deg,#a9b8ff,#5d71e9);color:#080b15}.brand-period{color:#91a4ff}.button{background:#dfe5ff;color:#11172d;border:1px solid #e2e7ff;border-radius:50px;padding:17px 25px;box-shadow:0 0 0 0 #9aafff00;transition:transform .3s,box-shadow .3s,background .3s;position:relative}.button:hover{background:#fff;transform:translateY(-3px);box-shadow:0 8px 40px #94a6ff25}.button span{transition:transform .3s}.button:hover span{transform:translate(2px,-2px)}.button.secondary{border-color:#ffffff25;color:#d4dcf5;background:#ffffff03}.button.secondary:hover{background:#ffffff0d}.button.light{background:#e0e6ff;border-color:#e0e6ff;color:#101529}.button.small{font-size:13px}.eyebrow,.chapter-index{color:#9caeff;font-size:12px;letter-spacing:2px}.eyebrow:before{display:none}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-weight:500}h2{font-weight:500}.gradient-word{background:linear-gradient(100deg,#8cb7ff 5%,#bda6ff 62%,#e0d8ff);-webkit-background-clip:text;background-clip:text;color:transparent}.wrap{max-width:1230px;padding:0 55px}.opening{position:relative;padding:86px 6% 0;overflow:hidden;min-height:calc(100vh - 85px)}.opening-inner{position:relative;text-align:center;z-index:2}.opening h1{font-size:clamp(48px,6.9vw,98px);letter-spacing:-5px;line-height:1.09;margin:26px auto 0;max-width:1100px}.opening .intro-copy{font-size:18px;line-height:1.8;margin:28px auto 0;color:#9ba7c5}.opening .actions{justify-content:center;margin-top:32px}.opening-glow{position:absolute;width:900px;height:800px;left:50%;top:230px;transform:translateX(-50%);background:radial-gradient(ellipse,#354cb62b 0,#573c8e16 35%,transparent 67%);pointer-events:none}.hero-foot{max-width:1100px;margin:65px auto 24px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.9px;color:#717f9e}.signal-stage{max-width:1100px;position:relative;margin:auto;padding:30px 40px 25px;border:1px solid #8fa9ff25;border-bottom:0;border-radius:22px 22px 0 0;background:linear-gradient(135deg,#111a3090,#11132390);overflow:hidden}.signal-grid{position:absolute;inset:0;background-image:linear-gradient(#9ab0ff06 1px,transparent 1px),linear-gradient(90deg,#9ab0ff06 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(transparent,#000)}.signal-label{color:#7385ae;font-size:10px;letter-spacing:2.4px;position:relative}.signal-route{display:flex;align-items:center;justify-content:center;position:relative;margin:30px 0}.signal-node{width:185px;flex-shrink:0;text-align:center}.signal-node>span{border:1px solid #748fe34d;background:#121d39;display:block;width:38px;height:38px;line-height:36px;border-radius:50%;font-size:11px;margin:0 auto 12px;color:#a6b8ec;box-shadow:0 0 24px #6b87ef15}.signal-node b{font-size:17px;font-weight:500;display:block}.signal-node small{color:#6e7d9e;font-size:12px}.signal-node.core>span{border-color:#b6b0ff;background:#a3acfa;color:#10182f;box-shadow:0 0 35px #8f8afd45}.connector{height:1px;background:linear-gradient(90deg,#5772ad22,#829ee977,#5772ad22);width:120px;position:relative;margin-top:-40px}.connector i{position:absolute;width:22px;height:2px;background:#b8caff;top:-1px;box-shadow:0 0 12px #849efa;animation:signal-flow 3.5s ease-in-out infinite}.connector:nth-of-type(4) i{animation-delay:1.7s}.signal-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff09;padding-top:16px;font-size:9px;letter-spacing:2px;color:#647393}.industry-strip{padding:27px 6%;display:flex;align-items:center;justify-content:center;gap:38px;border-top:1px solid #ffffff16;border-bottom:1px solid #ffffff0d;position:relative;background:#0a0e1a;font-size:14px}.industry-strip>span{font-size:12px;color:#68748e}.industry-strip b{color:#a9b2c9;font-weight:500}.industry-strip i{font-size:12px;font-style:normal;color:#5d6488}.chapter{scroll-margin-top:100px}.friction-section{padding:135px 0 110px}.chapter-heading h2{font-size:clamp(36px,4.5vw,58px);letter-spacing:-2.6px;margin-top:24px;line-height:1.18}.chapter-heading h2>span{color:#75809b}.chapter-heading p{max-width:510px;font-size:17px;line-height:1.8;margin-top:24px}.friction-list{margin-top:65px}.friction-row{display:grid;grid-template-columns:65px 1fr 55px;gap:26px;align-items:center;border-top:1px solid #ffffff15;padding:34px 16px;transition:background .3s,transform .3s}.friction-row:last-child{border-bottom:1px solid #ffffff15}.friction-row:hover{background:#ffffff03;transform:translateX(5px)}.row-number{font-size:13px;align-self:start;margin-top:4px;color:#65738e}.mini-tag{font-size:10px;color:#93a8ed;letter-spacing:1.4px;text-transform:uppercase}.friction-row h3{font-size:26px;margin-top:11px;letter-spacing:-.8px;font-weight:500}.friction-row p{max-width:620px;font-size:15px;margin:12px 0 0;color:#8995b0}.row-symbol{height:42px;width:42px;display:grid;place-items:center;border:1px solid #ffffff20;border-radius:50%;color:#a9b6df;font-size:19px}.clarity-section{background:linear-gradient(160deg,#111a30,#0e1222 60%);border-top:1px solid #aab9ff15;border-bottom:1px solid #aab9ff15;padding:105px 0}.clarity-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.clarity-copy h2{font-size:55px;letter-spacing:-2.7px;margin-top:24px;line-height:1.2}.clarity-copy>p{font-size:16px;line-height:1.9;max-width:405px}.text-link{display:inline-flex;gap:30px;color:#bdcaff;font-size:14px;margin-top:14px;border-bottom:1px solid #8193cf4d;padding-bottom:8px}.method-note{border-left:1px solid #9eabdd44;padding-left:20px;font-size:13px;line-height:1.9;color:#7485a8;margin-top:44px}.clarity-panel{border:1px solid #a9b7f229;background:linear-gradient(145deg,#1a2541bb,#10172a);border-radius:18px;padding:28px 30px;box-shadow:0 25px 80px #0004}.panel-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.4px;color:#9badd4;padding-bottom:12px}.pill{background:#a9b7f211;color:#b0bee8;border:1px solid #a9b7f222;font-size:10px;letter-spacing:0}.metric-row{display:flex;gap:25px;align-items:center;padding:27px 0;border-bottom:1px solid #ffffff0b}.metric-ring{width:86px;height:86px;flex-shrink:0;border-radius:50%;background:conic-gradient(var(--ring-color) calc(var(--value)*1%),#6476a025 0);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.metric-ring:before{content:'';position:absolute;inset:3px;background:#17213a;border-radius:50%}.metric-ring strong{position:relative;font:500 29px Manrope,sans-serif;letter-spacing:-1px}.metric-ring small{position:relative;font-size:9px;color:#8696bb}.metric-row h3{font-size:17px;letter-spacing:-.4px;font-weight:500}.metric-row p{font-size:12px;margin:7px 0;color:#8e9fbe;max-width:230px}.metric-status{font-size:10px;color:#b3a5dc}.panel-bottom{color:#7484a6;font-size:10px;line-height:1.7;margin-top:20px}.direction-section{padding:115px 0 140px}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;position:relative;margin-top:70px}.roadmap-line{position:absolute;left:0;right:0;top:22px;height:1px;background:linear-gradient(90deg,#8f9ddb66,#8f9ddb11)}.roadmap-marker{height:45px;width:45px;border-radius:50%;border:1px solid #768dc355;background:#11192d;position:relative;display:grid;place-items:center;font-size:12px;color:#a7b8e5;margin-bottom:32px}.roadmap-card h3{font-size:29px;letter-spacing:-1px;font-weight:500}.roadmap-card h4{font-size:14px;color:#a4b5e1;font-weight:500;margin:18px 0 12px}.roadmap-card p{font-size:15px;line-height:1.8;min-height:110px}.roadmap-card small{font-size:11px;color:#6f7e9e}.roadmap-card>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff18;padding-top:20px;margin-top:28px;font-size:13px;color:#c9d4f2}.roadmap-card>a:hover{color:white}.closing{position:relative;overflow:hidden;padding:100px 0 110px;border-top:1px solid #8193c91c;text-align:center;background:#0c1121}.closing-halo{position:absolute;width:1100px;height:650px;bottom:-530px;left:50%;transform:translateX(-50%);border-radius:50%;box-shadow:0 -40px 120px #617bef44,0 -3px 40px #adadff55;border:1px solid #9baefa66;pointer-events:none}.closing h2{font-size:clamp(36px,4.7vw,64px);letter-spacing:-2.8px;line-height:1.2;position:relative}.closing p{font-size:18px}.closing .fine{margin-top:20px;font-size:11px!important}.closing .wrap{position:relative}.chapter-nav{position:fixed;right:20px;top:48%;z-index:20;display:flex;flex-direction:column;gap:13px}.chapter-nav button{font:10px 'DM Sans',sans-serif;color:#617090;background:transparent;border:0;cursor:pointer;padding:6px;position:relative}.chapter-nav button.active{color:#dbe3ff}.chapter-nav button.active:before{content:'';width:3px;height:14px;background:#a1b3ff;position:absolute;right:-9px;top:6px;border-radius:4px}.journey-progress{position:fixed;right:0;top:0;bottom:0;width:2px;background:#8daaff08;z-index:40}.journey-progress i{display:block;width:100%;height:100%;background:linear-gradient(#7995ff,#c7a4ff);transform-origin:top;transform:scaleY(0)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.opening h1.reveal{transition-delay:.08s}.opening .intro-copy{transition-delay:.16s}.opening .actions{transition-delay:.24s}.roadmap-card:nth-of-type(3){transition-delay:.1s}.roadmap-card:nth-of-type(4){transition-delay:.2s}.card,.form-panel,.sample-report{background:linear-gradient(135deg,#151c30,#101626);border-color:#a9b5e322;border-radius:15px}.card{transition:transform .35s,border-color .35s}.card:hover{transform:translateY(-4px);border-color:#a3b5ff55}.featured{background:linear-gradient(140deg,#273b79,#24264c);border-color:#8a9ff155}.featured p,.featured li{color:#b9c6e5}.notice{background:#8d9fe00c;border-color:#8f9fdb;color:#a0afcf;border-radius:0 8px 8px 0}.page-intro h1{font-size:60px;letter-spacing:-3px}.page{animation:page-in .6s both}.page-intro{margin-bottom:48px}.page p{color:#9ca9c4}.page .eyebrow{color:#9baeff}.score{background:#ffffff04;border-color:#ffffff13}.score label{color:#a6b4d4}.score span{color:#bfa6d9}.score strong small{color:#788bad}.bar{background:#ffffff12}.bar i{background:#94a8f5}.article h2{color:#d5def5}.step>span{color:#a2b6ee}.icon,.card .number{color:#9dacf0}input,select,textarea{background:#0d1426;color:#e0e8ff;border-color:#63779d44}input:focus,select:focus,textarea:focus{outline:2px solid #93a4ff;outline-offset:2px}input::placeholder,textarea::placeholder{color:#617192}select option{background:#111a30}label{color:#bdc9e5}.intake-progress{margin-bottom:30px}.intake-progress>span{font-size:10px;letter-spacing:2px;color:#8fa4e7}.intake-progress h3{font-size:29px;margin:12px 0 23px}.intake-progress>div{display:flex;gap:8px}.intake-progress i{height:3px;flex:1;background:#ffffff12;border-radius:5px}.intake-progress i.current{background:#a1b2ff}.intake-controls{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.intake-controls button:last-child{margin-left:auto}.form-grid>[data-step='2']{grid-column:1/-1}.form-grid label{animation:page-in .4s both}[hidden]{display:none!important}footer{background:#080b15;color:#667593;font-size:12px;padding:35px 6%}footer .brand{color:#c4cce2}.motion-toggle{position:fixed;bottom:18px;right:20px;border:1px solid #8d9dce33;background:#0d1427dd;color:#9cadcf;padding:8px 12px;border-radius:30px;z-index:40;font-size:11px;cursor:pointer}body.motion-paused *{animation-play-state:paused!important;scroll-behavior:auto!important}body.motion-paused .reveal{opacity:1;transform:none;transition:none}@keyframes signal-flow{0%{left:0;opacity:0}20%{opacity:1}80%{opacity:1}100%{left:calc(100% - 22px);opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.opening{padding-top:110px}.opening h1{font-size:100px}}
@media(max-width:1000px){.wrap{padding:0 40px}.opening h1{letter-spacing:-3px}.industry-strip{gap:20px;flex-wrap:wrap}.clarity-layout{gap:35px}.clarity-copy h2{font-size:43px}.metric-row{gap:16px}.clarity-panel{padding:24px}.roadmap{gap:26px}.roadmap-card p{min-height:140px}}
@media(max-width:760px){header{padding:17px 22px}header.scrolled{padding-top:12px;padding-bottom:12px}header nav{font-size:12px}.wrap{padding:0 25px}.opening{padding:60px 22px 0;min-height:auto}.opening h1{font-size:clamp(41px,8.6vw,62px);letter-spacing:-2.3px;line-height:1.15}.opening .eyebrow{font-size:9px;letter-spacing:1.6px}.opening .intro-copy{font-size:15px}.opening .actions{gap:10px}.opening .button{font-size:12px;padding:14px 18px}.hero-foot{margin-top:45px;font-size:8px;letter-spacing:1px;gap:20px}.hero-foot span:last-child{display:none}.signal-stage{padding:20px 12px;border-radius:14px 14px 0 0}.signal-label{font-size:8px;letter-spacing:1px}.signal-node{width:85px}.signal-node b{font-size:12px}.signal-node small{font-size:8px}.signal-node>span{height:30px;width:30px;line-height:28px}.connector{width:50px;margin-top:-32px}.signal-bottom{font-size:7px;letter-spacing:1px}.industry-strip{padding:23px;gap:10px 20px;font-size:11px}.industry-strip>span{width:100%;text-align:center;font-size:10px;margin-bottom:7px}.industry-strip i{display:none}.friction-section{padding:75px 0}.chapter-heading h2{font-size:35px;letter-spacing:-1.6px}.chapter-heading p{font-size:15px}.chapter-index{font-size:9px;letter-spacing:1.5px}.friction-list{margin-top:40px}.friction-row{grid-template-columns:25px 1fr;gap:12px;padding:27px 0}.row-symbol{display:none}.friction-row h3{font-size:22px}.friction-row p{font-size:14px}.row-number{font-size:10px}.mini-tag{font-size:9px}.clarity-section{padding:70px 0}.clarity-layout{grid-template-columns:1fr;gap:35px}.clarity-copy h2{font-size:43px}.method-note{margin-top:25px}.metric-row h3{font-size:16px}.metric-row p{font-size:12px}.metric-ring{width:78px;height:78px}.direction-section{padding:75px 0}.roadmap{grid-template-columns:1fr;margin-top:45px;gap:40px;padding-left:40px}.roadmap-line{top:0;bottom:0;width:1px;height:auto;left:15px;background:linear-gradient(#899ddd66,#899ddd00)}.roadmap-card{position:relative}.roadmap-marker{position:absolute;left:-43px;top:0;width:36px;height:36px;font-size:10px}.roadmap-card h3{padding-top:2px;font-size:28px}.roadmap-card p{min-height:0}.roadmap-card>a{margin-top:20px}.closing{padding:75px 0 90px}.closing h2{font-size:36px;letter-spacing:-1.8px}.closing .eyebrow{font-size:9px}.chapter-nav{display:none}.page-intro h1{font-size:42px;letter-spacing:-2px}.motion-toggle{right:12px;bottom:10px;font-size:10px;padding:7px 10px}.form-grid{grid-template-columns:1fr}.page .cards[style]{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media print{body,.sample-report{background:white;color:#111}.page p,.score label,.article h2{color:#333}.motion-toggle{display:none}.score{border-color:#ccc}.gradient-word{color:#111}}

/* Brand v1.1 lockup. The wordmark is ARTWORK, not type - the brandbook says
   "do not retype the wordmark" - so this is the supplied master, recoloured
   only to the two approved values and never restyled.

   240px IS THE BOOK'S MINIMUM for the full lockup, not a design preference:
   "Full lockup: at least 240 px / 50 mm wide; enlarge if the motto is not
   legible." A first pass at 176px rendered the motto as an illegible smudge,
   which is exactly what that rule exists to prevent.

   Below 760px there is no room for a compliant lockup, so the header falls
   back to the SYMBOL ALONE - which the same page permits: "Use the approved
   symbol alone for small icons." Shrinking the lockup instead would break the
   rule; dropping the wordmark does not.

   Padding is the clear space the book asks for: half the symbol height. */
.brand-logo{display:block;width:240px;height:54px;
  background:url(/vichan-logo.png) left center/contain no-repeat;padding:0 8px}
.brand-mark{display:block;width:34px;height:29px;
  background:url(/vichan-mark.png) center/contain no-repeat}
@media(max-width:760px){
  .brand-logo{width:34px;height:29px;background-image:url(/vichan-mark.png);
    background-position:center;padding:0 4px}
}

/* Footer, rebuilt October 2026. Was a single line with two dead-ish links; now
   the four things a B2B footer is actually for: who you are, where to go next,
   how to reach a human, and the legal pages.

   The legal column is not decoration. An Indian payment provider will not
   activate an account without a privacy policy, terms, AND a refund and
   cancellation policy with real timelines, each reachable from the footer of
   every page. Those slots exist now so the gap is visible rather than
   remembered later. */
.foot-main{display:grid;grid-template-columns:1.4fr 2fr;gap:60px;padding-bottom:34px}
.foot-brand p{max-width:330px;font-size:14px;margin:18px 0 0;line-height:1.7}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.foot-cols h3{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;
  color:var(--ink);margin:0 0 16px;font-weight:600}
.foot-cols a{display:block;margin:0 0 11px;font-size:14px;color:var(--muted)}
.foot-cols a:hover{color:var(--ink)}
.foot-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:22px;font-size:12px}
.foot-base span{margin:0}
footer{display:block}
@media(max-width:760px){
  .foot-main{grid-template-columns:1fr;gap:34px}
  .foot-cols{grid-template-columns:1fr 1fr;gap:24px}
  .foot-base{display:block}
  .foot-base span{display:block;margin-bottom:8px}
}

/* The tagline, set as the brandbook sets it: sentence case, not the all-caps
   treatment the .eyebrow component applies. It belongs directly under the mark
   because that is the pairing the lockup itself uses.

   It was in this footer until the October rebuild replaced it with a
   descriptor sentence, which left the motto nowhere on the page except a 12px
   kicker at the very bottom and the browser tab. Nothing noticed, because
   nothing checked - see the test in test_app.py. */
.foot-tagline{font-family:Manrope,sans-serif;font-weight:600;font-size:15px;
  color:var(--ink);margin:14px 0 0;letter-spacing:-.2px}

/* Hero intro, three beats.
   "AI-assisted operational intelligence. Human judgment. A clear next move."
   is the brand's own sequence - machine, then person, then decision - so the
   clauses arrive in that order rather than together. The animation states the
   argument; it is not decoration laid over it. 220ms apart, which reads as
   deliberate rather than slow.

   THE TWO FALLBACKS ARE NOT OPTIONAL. The site's global rules are
   `.reveal{opacity:1}` under prefers-reduced-motion and
   `body.motion-paused .reveal{opacity:1}` - both of which fix the PARAGRAPH
   and say nothing about its children. Without the two rules at the bottom, a
   visitor with reduced motion, or anyone who pressed the pause control, would
   get three permanently invisible clauses and an empty hero. A motion effect
   that hides content when motion is switched off is worse than no effect. */
.intro-copy .beat{display:inline-block;opacity:0;transform:translateY(7px);
  transition:opacity .75s ease,transform .75s cubic-bezier(.16,1,.3,1)}
.intro-copy.is-visible .beat{opacity:1;transform:none}
.intro-copy .beat:nth-of-type(2){transition-delay:.22s}
.intro-copy .beat:nth-of-type(3){transition-delay:.44s}

@media(prefers-reduced-motion:reduce){
  .intro-copy .beat{opacity:1;transform:none;transition:none}
}
body.motion-paused .intro-copy .beat{opacity:1;transform:none;transition:none}
