:root{--vapaa-green: #009840;--vapaa-gold: #E8A800;--vapaa-green-text: #007A34;--vapaa-agni-text: #A5541B;--vapaa-paper: #F2F1EB;--vapaa-base: #DDDBD4;--vapaa-ink: #272727;--vapaa-vayu: #C4CFD4;--vapaa-apas: #7FA9A2;--vapaa-prithvi: #A68064;--vapaa-agni: #B05B1D;--vapaa-akasha: #2E3346;--surface: var(--vapaa-paper);--surface-raised:#FFFFFF;--rule: var(--vapaa-base);--text: var(--vapaa-ink);--text-body: #46443F;--text-muted: #6E6A62;--accent: var(--vapaa-green-text);--accent-warm: var(--vapaa-agni-text);--highlight: var(--vapaa-gold);--serif: "Cormorant Garamond", "Cochin", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--step--1: clamp(.82rem, .8rem + .1vw, .88rem);--step-0: clamp(1rem, .96rem + .2vw, 1.12rem);--step-1: clamp(1.2rem, 1.1rem + .5vw, 1.45rem);--step-2: clamp(1.5rem, 1.3rem + 1vw, 2.05rem);--step-3: clamp(1.9rem, 1.5rem + 2vw, 3rem);--step-4: clamp(2.4rem, 1.6rem + 3.8vw, 4.4rem);--tracking-kicker: .16em;--maxw: 1180px;--maxw-prose: 68ch;--gutter: clamp(20px, 5vw, 32px);--section-y: clamp(56px, 8vw, 100px);--radius: 12px}.on-dark,[data-surface=dark]{--surface: var(--vapaa-ink);--surface-raised:#33322F;--rule: #45433E;--text: var(--vapaa-paper);--text-body: #C8C4BA;--text-muted: #948F86;--accent: var(--vapaa-gold);--accent-warm: var(--vapaa-gold)}.on-light,[data-surface=light]{--surface: var(--vapaa-paper);--surface-raised:#FFFFFF;--rule: var(--vapaa-base);--text: var(--vapaa-ink);--text-body: #46443F;--text-muted: #6E6A62;--accent: var(--vapaa-green-text);--accent-warm: var(--vapaa-agni-text)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--surface);color:var(--text);font-family:var(--sans);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.1;margin:0;text-wrap:balance}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-2)}p{margin:0 0 1em}p:last-child{margin-bottom:0}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.prose{max-width:var(--maxw-prose);color:var(--text-body)}.section{background:var(--surface);color:var(--text);padding-block:var(--section-y)}.section+.section{border-top:1px solid var(--rule)}.section.on-dark+.section:not(.on-dark),.section:not(.on-dark)+.section.on-dark{border-top:0}.kicker{font-size:var(--step--1);letter-spacing:var(--tracking-kicker);text-transform:uppercase;color:var(--accent-warm);margin:0 0 1rem}.lede{font-size:var(--step-1);color:var(--text-body);max-width:54ch}.display{font-family:var(--serif);font-size:var(--step-2);line-height:1.35;max-width:min(100%,46rem);color:var(--text)}.button{display:inline-block;font-family:var(--sans);font-size:var(--step-0);font-weight:500;padding:.85em 1.6em;border-radius:var(--radius);background:var(--highlight);color:var(--vapaa-ink);border:1.5px solid var(--highlight);transition:background .18s ease,color .18s ease}.button:hover{background:transparent;color:var(--highlight)}.button--quiet{background:transparent;color:var(--text);border-color:var(--rule)}.button--quiet:hover{border-color:var(--accent);color:var(--accent);background:transparent}.card{background:var(--surface-raised);border:1px solid var(--rule);border-radius:var(--radius);padding:clamp(22px,3vw,32px)}.grid{display:grid;gap:clamp(20px,3vw,30px);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.stack>*+*{margin-top:var(--stack-gap, 1.25rem)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--gutter);top:-100px;background:var(--vapaa-gold);color:var(--vapaa-ink);padding:10px 18px;border-radius:0 0 var(--radius) var(--radius);z-index:100}.skip-link:focus{top:0}.nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--vapaa-paper) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--vapaa-base)}.nav__inner{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;min-height:72px;flex-wrap:wrap;padding-block:10px}.nav__brand{display:flex;align-items:center;gap:12px}.nav__brand img{width:40px;height:40px}.nav__word{font-family:var(--serif);font-size:var(--step-1);font-weight:600;letter-spacing:.06em;color:var(--vapaa-ink)}.nav__links{display:flex;align-items:center;gap:clamp(12px,2.2vw,26px);flex-wrap:wrap}.nav__links a{font-size:var(--step--1);letter-spacing:.03em;color:var(--text-muted);padding-block:4px;border-bottom:1px solid transparent}.nav__links a:hover{color:var(--vapaa-ink)}.nav__links a[aria-current=page]{color:var(--vapaa-ink);border-bottom-color:var(--vapaa-agni)}.nav__links .nav__cta{color:var(--vapaa-ink);border:1.5px solid var(--vapaa-ink);border-radius:999px;padding:.5em 1.1em;font-weight:500}.nav__links .nav__cta:hover,.nav__links .nav__cta[aria-current=page]{background:var(--vapaa-ink);color:var(--vapaa-paper);border-bottom-color:var(--vapaa-ink)}.hero{position:relative;overflow:hidden;background:var(--vapaa-paper)}.hero__inner{position:relative;padding-block:clamp(72px,11vw,132px)}.hero__motif{position:absolute;right:-6%;top:50%;transform:translateY(-50%);height:min(640px,86vw);width:auto;opacity:.07;pointer-events:none}.hero__kicker{color:var(--vapaa-prithvi)}.hero h1{max-width:15ch;color:var(--vapaa-ink)}.hero .lede{margin-block:1.5rem 2.25rem}.hero__actions{display:flex;gap:14px;flex-wrap:wrap}[data-surface=light] .button,.on-light .button{background:var(--vapaa-ink);border-color:var(--vapaa-ink);color:var(--vapaa-paper)}[data-surface=light] .button:hover,.on-light .button:hover{background:transparent;color:var(--vapaa-ink)}[data-surface=light] .button--quiet,.on-light .button--quiet{background:transparent;color:var(--vapaa-ink);border-color:var(--vapaa-base)}[data-surface=light] .button--quiet:hover,.on-light .button--quiet:hover{border-color:var(--vapaa-ink);color:var(--vapaa-ink)}.on-dark .button{background:var(--vapaa-gold);border-color:var(--vapaa-gold);color:var(--vapaa-ink)}.on-dark .button:hover{background:transparent;color:var(--vapaa-gold)}.on-dark .button--quiet{background:transparent;color:var(--vapaa-paper);border-color:#55524b}.on-dark .button--quiet:hover{border-color:var(--vapaa-gold);color:var(--vapaa-gold)}.page-head{padding-bottom:clamp(36px,5vw,56px)}.page-head__title{max-width:18ch;margin-bottom:1.25rem}.page-head .lede{margin-top:0}.section h2{margin-bottom:1.5rem}.section__intro{margin-bottom:2.25rem}.section__more{margin-top:2rem}.more{font-weight:500;color:var(--accent);border-bottom:1px solid transparent}.more:hover{border-bottom-color:currentColor}.card__tag{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-warm);margin-bottom:.35rem}.card h3{margin-bottom:.75rem}.card p{color:var(--text-body)}.card .more{display:inline-block;margin-top:.5rem}.nda{font-size:var(--step--1);font-style:italic;color:var(--text-muted);border-left:3px solid var(--rule);padding-left:12px;margin-top:1.25rem}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(24px,5vw,56px);align-items:start}@media(max-width:820px){.split{grid-template-columns:1fr}}.conditions{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:60rem}.condition{padding:18px 0 18px 22px;border-left:3px solid var(--vapaa-agni);font-family:var(--serif);font-size:var(--step-1);line-height:1.35;color:var(--text)}.tension__close{margin-top:2.5rem;font-family:var(--serif);font-size:var(--step-2);line-height:1.3;max-width:30ch}.areas{list-style:none;margin:0;padding:0;display:grid;gap:clamp(22px,3vw,32px);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.area{padding-top:20px;border-top:1px solid var(--vapaa-base)}.area__n{font-family:var(--serif);font-size:var(--step-1);color:var(--vapaa-agni);display:block;margin-bottom:.5rem}.area h3{font-size:var(--step-1);margin-bottom:.5rem}.area p{color:var(--text-body);margin:0}.three{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.three>div{padding:22px;border-left:4px solid var(--vapaa-agni);background:var(--surface-raised);border-radius:0 var(--radius) var(--radius) 0}.three b{display:block;font-family:var(--serif);font-size:var(--step-1);font-weight:600;margin-bottom:6px}.three p{margin:0;color:var(--text-body);font-size:var(--step--1)}.cases{display:grid;gap:clamp(20px,3vw,30px);grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.case{display:flex;flex-direction:column}.case dl{margin:0;display:grid;gap:12px}.case dt{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-warm)}.case dd{margin:0 0 4px;color:var(--text-body)}.cases__note{margin-top:2rem;padding:18px 22px;background:var(--surface-raised);border:1px solid var(--rule);border-radius:var(--radius);color:var(--text-body);max-width:70ch}.capabilities{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 12px}.capabilities li{font-family:var(--serif);font-size:var(--step-1);padding:8px 16px;border:1px solid var(--vapaa-base);border-radius:999px;background:var(--surface-raised)}.ideas{list-style:none;margin:0;padding:0;display:grid;gap:0}.idea{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:12px 28px;padding-block:18px;border-top:1px solid var(--rule)}.idea:last-child{border-bottom:1px solid var(--rule)}.idea__name{font-family:var(--serif);font-size:var(--step-1);font-weight:600}.idea__name sup{font-size:.5em;font-weight:400;margin-left:2px}.idea__gloss{color:var(--text-body);margin:0}@media(max-width:620px){.idea{grid-template-columns:1fr;gap:4px}}.devanagari{font-family:"Noto Serif Devanagari",Devanagari MT,Kohinoor Devanagari,serif}.modes{list-style:none;margin:0;padding:0;display:grid;gap:clamp(28px,4vw,44px)}.mode{display:grid;grid-template-columns:72px minmax(0,1fr);gap:clamp(16px,3vw,32px);align-items:start;padding-top:28px;border-top:1px solid var(--rule)}.mode:first-child{border-top:0;padding-top:0}.mode__n{font-family:var(--serif);font-size:var(--step-2);color:var(--vapaa-agni);line-height:1}.mode__h{font-size:var(--step-2);margin-bottom:.5rem}.mode__when{font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.mode__p{color:var(--text-body);max-width:62ch;margin:0}@media(max-width:620px){.mode{grid-template-columns:1fr;gap:10px}}.founder{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:clamp(24px,5vw,56px);align-items:center}.founder__mark{width:100%;max-width:200px;opacity:.9}@media(max-width:720px){.founder{grid-template-columns:1fr}.founder__mark{max-width:120px}}.book{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}.book__cover{width:100%;max-width:300px;aspect-ratio:5 / 8;border-radius:4px;box-shadow:0 24px 50px -24px #27272773,0 1px #27272714;background:var(--vapaa-paper)}.book__title{font-size:var(--step-3);margin-bottom:.5rem}.book__subtitle{font-family:var(--serif);font-size:var(--step-1);color:var(--text-body);margin-bottom:1.25rem}.book__meta{color:var(--text-muted);font-size:var(--step--1);letter-spacing:.04em;margin-bottom:1.5rem}.book__actions{display:flex;gap:12px;flex-wrap:wrap;margin-block:1.75rem}.book__pending{display:inline-block;padding:.85em 1.6em;border-radius:var(--radius);border:1.5px dashed var(--vapaa-base);color:var(--text-muted);font-size:var(--step-0)}.book__placeholder-note{font-size:var(--step--1);color:var(--text-muted);font-style:italic;margin-top:.75rem;max-width:300px}@media(max-width:760px){.book{grid-template-columns:1fr}.book__cover{max-width:240px}}.contents{display:grid;gap:clamp(20px,3vw,30px);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.contents h3{font-size:var(--step-1);margin-bottom:.75rem}.contents ol{margin:0;padding-left:1.2em;color:var(--text-body);display:grid;gap:6px}.details{border-collapse:collapse;width:100%;max-width:560px;font-size:var(--step--1)}.details th,.details td{text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid var(--rule);vertical-align:top}.details th{font-weight:500;color:var(--text-muted);width:40%}.reading__body{--stack-gap: 1.25rem}.reading__body h2{font-size:var(--step-2);margin-top:2.5rem;margin-bottom:.9rem}.reading__body p{margin-bottom:1.15rem}.reading__body strong{color:var(--text);font-weight:600}.reading__body a{color:var(--accent);border-bottom:1px solid currentColor}.reading__body blockquote{margin:2rem 0;padding-left:1.25rem;border-left:3px solid var(--vapaa-agni);font-family:var(--serif);font-size:var(--step-1);color:var(--text)}.closer h2{color:var(--vapaa-paper)}.closer .lede{color:#c8c4ba;margin-block:0 2rem}.contact__email{margin-top:2rem}.contact__ways{display:grid;gap:14px}.contact__ways a{color:var(--accent);border-bottom:1px solid transparent}.contact__ways a:hover{border-bottom-color:currentColor}.footer{background:var(--vapaa-ink);color:#948f86;padding-block:clamp(40px,6vw,64px);font-size:var(--step--1)}.footer__inner{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:28px 40px}.footer__brand img{width:150px;height:auto;margin-bottom:14px}.footer__line{margin:0;max-width:32ch;color:#c8c4ba;font-family:var(--serif);font-size:var(--step-0)}.footer__col{display:flex;flex-direction:column;gap:8px}.footer__h{margin:0 0 4px;color:var(--vapaa-paper);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.footer__col a{color:#c8c4ba}.footer__col a:hover{color:var(--vapaa-gold)}.footer__legal{grid-column:1 / -1;margin:0;padding-top:18px;border-top:1px solid #35332F;font-size:12px;letter-spacing:.03em;line-height:1.6}@media(max-width:720px){.footer__inner{grid-template-columns:1fr}}@media(max-width:900px){.hero__motif{right:-30%;opacity:.045;height:min(520px,120vw)}}@media(max-width:560px){.hero__motif{display:none}}@media(max-width:640px){.nav{position:static}}
