/* Haldir — complete landing. Brand colors and Manrope from the approved hero. */
:root{--ink:#15251f;--forest:#173d32;--ivory:#f4f3e9;--lichen:#dde6d6;--accent:#d5e7a3;--body:#5d6c58;--rule:#d6ddce;--gutter:clamp(24px,8vw,128px)}
html{scroll-behavior:smooth;scroll-padding-top:28px}body{overflow-x:clip}.page{width:100%;max-width:none;margin:0;overflow:hidden}.icon{width:24px;height:24px;flex-shrink:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #9aaf65;outline-offset:7px}a,button{touch-action:manipulation}.skip{position:fixed;top:12px;left:12px;transform:translateY(-180%);z-index:99;padding:12px 20px;background:var(--accent);color:var(--ink);border-radius:6px}.skip:focus{transform:translateY(0)}
.container{width:calc(100% - var(--gutter)*2);max-width:1344px;margin:0 auto}.section{padding:120px 0}.kicker{display:flex;align-items:center;gap:13px;font-size:10px;line-height:1.5;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:#68795e;margin:0 0 25px}.kicker .index{color:#9ba98c}.section h2{font-size:clamp(36px,3.4vw,54px);font-weight:450;line-height:1.14;letter-spacing:-2px;margin:0}.section p{font-size:15px;line-height:1.85;color:var(--body)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:64px}.section-head>p{max-width:390px;margin:0 0 3px}.section-head h2{max-width:700px}.muted{color:#6c7f60}.hero{height:990px}.nav{max-width:1408px;margin:0 auto;width:calc(100% - clamp(48px,12vw,192px))}.brand{flex-shrink:0}.brand-home{display:block}.links{margin-left:90px}.content{margin-left:max(var(--gutter),calc((100vw - 1344px)/2));width:min(700px,calc(100% - 48px))}.intro{max-width:530px}.nav-cta,.main-cta{transition:background .18s,transform .18s}.main-cta:hover{background:#e0edbc;transform:translateY(-2px)}.nav-cta:hover{background:#f4f3e918}.links a{transition:color .15s}.links a:hover{color:var(--accent)}.menu-toggle{display:none}.photo-label{right:max(var(--gutter),calc((100vw - 1344px)/2));bottom:185px}.product-wrap{width:calc(100% - var(--gutter)*2);max-width:1344px;margin-top:-155px}.under{padding-bottom:0}.microcaption{gap:32px;font-size:10px;color:#63715b}.microcaption span:first-child{max-width:860px}.microcaption .detail{color:#627557;font-size:10px}.app-meta{color:#63715b}.side-label{color:#68775f}.side-item{color:#627258}.side-bottom{color:#68775f}.work-head span{color:#66775e}.receipt small{color:#68785d}.composer{color:#708064}.permission-row{color:#66765e}.permission-row.budget strong small{color:#697a60}.blocked p{color:#69755f}.balances{color:#627455}.intro{color:#e1e7dce8}.status{color:#dce5d0c5}.photo-label{color:#ecf0e3c9}
/* 01 — one job, three readable steps. */
.how{padding-top:112px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:58px}.step{border-top:1px solid var(--rule);padding-top:25px}.step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}.step-number{font-size:12px;color:#738663;font-variant-numeric:tabular-nums}.step-top .icon{color:#768a65;width:23px;height:23px}.step h3{font-size:21px;letter-spacing:-.5px;font-weight:550;margin:0 0 16px}.step p{font-size:14px;margin:0;max-width:350px}
/* 02 — the demo is a visible sequence, not a simulated product. */
.demo{background:#e7ecdf;border-top:1px solid #d9e1d0;border-bottom:1px solid #d9e1d0}.demo .section-head{margin-bottom:43px}.demo .section-head h2{max-width:760px}.demo .section-head>p{max-width:390px}.scenario-line{display:flex;align-items:center;gap:22px;flex-wrap:wrap;border-top:1px solid #cbd6c0;padding:20px 0 30px;margin:0;color:#5c6e51;font-size:11px}.scenario-label{color:#40563a;font-weight:600;display:flex;align-items:center;gap:9px}.scenario-label:before{content:"";height:5px;width:5px;border-radius:50%;background:#76965a}.scenario-line .separator{width:1px;height:13px;background:#c1ceb5}.approved-list{display:flex;gap:9px;flex-wrap:wrap}.approved-list span{display:inline-flex;gap:5px;align-items:center;color:#526c45}.approved-list .icon{width:11px;height:11px}.beats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.beat{display:flex;flex-direction:column;min-width:0;background:#f7f8f1;border:1px solid #d3ddc9;border-radius:9px;padding:29px 27px 26px}.beat-index{font-size:10px;letter-spacing:1px;color:#849675;margin-bottom:22px}.beat h3{font-size:20px;line-height:1.4;letter-spacing:-.5px;font-weight:550;margin:0 0 14px}.beat>p{font-size:13px;line-height:1.85;margin:0 0 27px}.event{margin-top:auto;padding-top:20px;border-top:1px solid #dce4d4;display:flex;align-items:flex-start;gap:13px}.event>.icon{width:21px;height:21px;color:#5e7c4a;margin-top:2px}.event strong{display:block;font-size:12px;font-weight:600;color:#435b36;margin-bottom:5px}.event small{display:block;font-size:11px;color:#77896a;line-height:1.75}.event.error>.icon,.event.error strong{color:#a34e43}.event.error small{color:#875f53}.event .amount{margin-left:auto;font-size:15px;letter-spacing:-.5px;white-space:nowrap;color:#425b37}.event .amount small{display:inline;font-size:9px;margin-left:3px}.unapproved{font-size:10px;padding:3px 6px;background:#f2e7dc;color:#8b684b;display:inline-block;border-radius:3px}.demo-status{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:28px;margin-top:30px;border-top:1px solid #cbd6c0}.demo-status p{font-size:11px;margin:0;display:flex;align-items:center;gap:10px;color:#526b46}.demo-status .icon{width:15px;height:15px}.demo-status .balance{font-variant-numeric:tabular-nums;font-size:11px;color:#425937;white-space:nowrap}.scenario-caption{font-size:10px!important;line-height:1.8!important;margin:16px 0 0;color:#697b5d!important;max-width:950px}
/* 03 — outcome stays anchored to delivered work. */
.outcome-layout{display:grid;grid-template-columns:1fr 1fr;gap:120px}.outcome-copy h2{max-width:580px}.outcome-copy>p{max-width:480px;margin:26px 0 0}.receipt-connection{margin-top:42px;border:1px solid #d5decb;padding:23px 25px;border-radius:8px;max-width:465px;background:#fafaf4}.connection-label{font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:#7a8b6d;margin-bottom:18px}.connection{display:flex;align-items:center;gap:15px}.connection>.icon{color:#688255;width:27px;height:27px}.connection strong{font-size:13px;display:block;font-weight:550}.connection small{font-size:11px;display:block;margin-top:5px;color:#687d59}.connection .icon:last-child{margin-left:auto;width:18px;height:18px}.feature{padding:30px 0;display:flex;gap:23px;border-top:1px solid var(--rule)}.feature:first-child{padding-top:5px;border-top:0}.feature:last-child{padding-bottom:0}.feature>.icon{width:23px;height:23px;color:#7a8c6a;margin-top:3px}.feature h3{font-size:19px;font-weight:550;letter-spacing:-.4px;margin:0 0 12px}.feature p{font-size:14px;margin:0;max-width:480px}
/* 04 — a technical promise, in the same forest palette. */
.near{padding:0;background:#173d32;color:var(--ivory);position:relative;isolation:isolate;overflow:hidden}.near-photo{position:absolute;inset:0 0 0 51%;background:none;z-index:-2}.near:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#173d32 0%,#173d32 43%,#173d32e6 52%,#173d324a 78%,#173d3220 100%);z-index:-1}.near .container{padding:104px 0 109px}.near-copy{max-width:680px}.near .kicker{color:#c3d5a5}.near .kicker .index{color:#98b07e}.near h2{max-width:650px;font-size:clamp(36px,3.4vw,54px)}.near-copy>p{font-size:15px;max-width:570px;color:#d7e1cde0;margin:28px 0 0;line-height:1.9}.near-copy .support{font-size:12px;color:#bdcdb0;border-top:1px solid #d5e7a333;padding-top:23px;margin-top:32px;max-width:540px;line-height:1.9}
/* 05 — native accessible accordions, all content readable without JavaScript. */
.faq .container{display:grid;grid-template-columns:390px 1fr;gap:100px}.faq h2{font-size:45px;max-width:310px}.questions{border-top:1px solid var(--rule)}.question{border-bottom:1px solid var(--rule)}.question summary{display:flex;align-items:center;justify-content:space-between;gap:28px;list-style:none;cursor:pointer;font-size:16px;font-weight:500;letter-spacing:-.25px;line-height:1.6;padding:25px 0}.question summary::-webkit-details-marker{display:none}.question summary .icon{width:17px;height:17px;color:#7c8d6d;transition:transform .2s}.question[open] summary .icon{transform:rotate(45deg)}.question p{font-size:14px;margin:0;padding:0 42px 26px 0;max-width:740px}.question summary:hover{color:#52713d}
/* 06 — close on one action. */
.closing{position:relative;isolation:isolate;overflow:hidden;background:#183b2e;color:var(--ivory);text-align:center;padding:112px 24px 106px}.closing:before{content:"";position:absolute;inset:0;background:none;z-index:-2}.closing:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0f2b22db,#102e24a6 60%,#102e24c4);z-index:-1}.closing h2{font-size:clamp(42px,4.2vw,66px);font-weight:450;line-height:1.14;letter-spacing:-2.7px;margin:0}.closing h2 span{color:var(--accent)}.closing p{font-size:14px;line-height:1.8;color:#d5dfcb;margin:23px auto 0;max-width:540px}.closing .main-cta{margin-top:29px}.footer{background:#102b22;color:#b8c8ab}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:120px}.footer-brand{display:block;flex-shrink:0;width:119px}.footer-brand img{display:block;max-width:100%;height:auto}.footer p{font-size:11px;margin:0;color:#a7ba98}.back-top{font-size:11px;display:flex;align-items:center;gap:13px}.back-top .icon{width:14px;height:14px;transform:rotate(-90deg)}
@media(min-width:1800px){.hero{height:1040px}.content{padding-top:92px}.photo{background-position:center 48%}.nav{max-width:1456px}}
@media(max-width:1250px){.nav{width:calc(100% - var(--gutter)*2)}.links{margin-left:0;gap:27px}.content{padding-top:70px}h1{font-size:68px;letter-spacing:-3.5px}.hero{height:960px}.photo{background-position:58% center}.photo-label{display:none}.product-wrap{margin-top:-155px}.app-body{grid-template-columns:155px 1fr 252px}.work{padding:25px 22px}.app-brand{width:178px}.permissions{padding:26px 17px}.balances{font-size:8px;gap:6px}.blocked p br{display:none}.receipt .tag{display:none}.microcaption .detail{display:none}.section{padding:95px 0}.steps{gap:35px}.section-head{gap:45px}.section-head>p{max-width:330px}.section h2{font-size:44px;letter-spacing:-1.6px}.beat{padding:25px 21px}.beats{gap:18px}.beat h3{font-size:18px}.event{gap:9px}.event .amount{font-size:13px}.outcome-layout{gap:65px}.faq .container{grid-template-columns:280px 1fr;gap:65px}.near{padding:0}.near .container{padding:90px 0}.near-copy{max-width:610px}}
@media(max-width:950px){:root{--gutter:40px}.hero{height:940px}.content{padding-top:67px}h1{font-size:64px}.photo:after{background:linear-gradient(90deg,#0a1b15de,#0c1f189e 53%,#0f241b25),linear-gradient(0deg,#12271f,transparent 40%)}.intro{max-width:485px;font-size:15px}.app-body{grid-template-columns:1fr 246px}.sidebar{display:none}.app-brand{width:130px}.work{padding:24px}.balances{flex-wrap:wrap}.section-head{display:block;margin-bottom:45px}.section-head>p{max-width:600px;margin:24px 0 0}.steps{gap:29px}.step h3{font-size:18px}.step p{font-size:13px}.step-top{margin-bottom:25px}.scenario-line{gap:15px}.beats{grid-template-columns:1fr}.beat{padding:28px;display:grid;grid-template-columns:42px 1fr 230px;gap:0 20px}.beat-index{grid-row:1/3;grid-column:1;align-self:start;margin:4px 0 0}.beat h3{grid-column:2;margin-bottom:9px;font-size:19px}.beat>p{grid-column:2;grid-row:2;margin:0}.event{grid-column:3;grid-row:1/3;align-self:center;padding:12px 0 12px 25px;border-top:0;border-left:1px solid #dce4d4;margin:0;display:flex}.event .amount{display:none}.demo-status{display:block}.demo-status .balance{margin-top:13px}.outcome-layout{gap:48px}.receipt-connection{padding:20px}.feature{gap:17px}.near-photo{left:38%}.near:after{background:linear-gradient(90deg,#173d32 0%,#173d32e6 54%,#173d3280)}.near-copy{max-width:570px}.faq .container{display:block}.faq h2{max-width:none;margin-bottom:40px}.question summary{font-size:15px}.closing{padding:90px 24px}.footer-inner{min-height:110px}}
@media(max-width:640px){:root{--gutter:24px}html{scroll-padding-top:18px}.hero{height:auto;min-height:0;padding-bottom:170px}.nav{height:84px;position:relative;gap:16px}.brand{width:123px;height:33px}.nav-cta{display:none}.menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f4f3e90d;color:#f4f3e9;border:1px solid #f4f3e936;border-radius:6px}.menu-toggle .icon{width:18px;height:18px}.links{display:none;position:absolute;left:0;right:0;top:74px;z-index:10;background:#183b2ef7;border:1px solid #adc19036;border-radius:8px;padding:12px;box-shadow:0 20px 30px #0d211b33;backdrop-filter:blur(15px)}.links.is-open{display:flex;align-items:stretch;flex-direction:column;gap:0}.links a{padding:13px 12px;font-size:14px}.content{width:auto;margin:0 24px;padding-top:57px;max-width:560px}.eyebrow{font-size:8px;letter-spacing:1.05px;gap:9px}h1{font-size:clamp(42px,11.4vw,68px);line-height:1.12;letter-spacing:-2.4px;margin:25px 0 25px}.intro{font-size:14px;line-height:1.85;max-width:440px}.main-cta{font-size:12px;padding:16px 19px;margin-top:26px;gap:34px}.status{font-size:10px;margin-top:18px}.photo{background-position:64% center}.photo:after{background:linear-gradient(90deg,#0b221bea,#0d281fba 48%,#173d3278),linear-gradient(0deg,#12271f,transparent 45%)}.product-wrap{margin-top:-130px;width:calc(100% - 32px)}.product{border-radius:9px}.product-top{height:58px;gap:10px}.app-brand{width:auto;padding-left:17px;margin-right:auto}.mini-brand{width:77px;height:21px}.top-title{font-size:10px;margin-right:16px}.top-title .slash{display:none}.app-meta{display:none}.product-wrap .product:before{content:"Illustrative product view";display:block;background:#fafbf7;color:#65765b;text-align:center;font-size:9px;letter-spacing:.3px;padding-top:15px;margin-bottom:-8px}.app-body{display:flex;flex-direction:column;min-height:0}.work{padding:22px 20px 24px}.work-head{margin-bottom:24px}.work-head h3{font-size:16px}.work-head>span{display:none}.user-message{margin-bottom:25px}.name{font-size:10px}.message{font-size:12px;line-height:1.8}.avatar{width:24px;height:24px}.receipt{padding:13px 10px;gap:9px}.file-symbol{width:22px;height:30px}.file-symbol svg{width:21px;height:21px}.receipt strong{font-size:12px}.receipt small{font-size:10px}.composer{display:none}.permissions{border-left:0;border-top:1px solid #dde5d4;padding:24px 20px 22px}.perm-head{font-size:12px;margin-bottom:18px}.permission-row{font-size:11px;line-height:20px;margin-bottom:6px}.permission-row.budget strong{font-size:21px}.perm-rule{margin:16px 0}.blocked strong{font-size:11px}.blocked p{font-size:11px;line-height:1.8}.blocked p br{display:none}.balances{font-size:10px;gap:17px;line-height:20px;margin-top:18px}.microcaption{font-size:10px;line-height:1.8;margin:17px 8px 0}.section{padding:74px 0}.kicker{font-size:9px;letter-spacing:1.2px;margin-bottom:20px;gap:10px}.section h2{font-size:36px;letter-spacing:-1.45px;line-height:1.18}.section p{font-size:14px;line-height:1.85}.section-head{margin-bottom:38px}.section-head>p{margin-top:21px}.steps{grid-template-columns:1fr;gap:30px}.step{padding-top:21px}.step-top{margin-bottom:20px}.step h3{font-size:21px;margin-bottom:12px}.step p{max-width:none}.scenario-line{align-items:flex-start;gap:14px;flex-direction:column;padding:20px 0 25px}.scenario-line .separator{display:none}.approved-list{gap:13px;font-size:10px}.beat{display:flex;padding:25px 22px}.beat-index{margin:0 0 20px;font-size:10px}.beat h3{font-size:21px;line-height:1.4;margin-bottom:13px}.beat>p{font-size:13px;line-height:1.85;margin:0 0 25px}.event{align-self:stretch;border-left:0;border-top:1px solid #dce4d4;padding:20px 0 0;gap:12px}.event .amount{display:block;font-size:14px}.event strong{font-size:12px}.event small{font-size:11px}.beats{gap:15px}.demo-status{margin-top:25px;padding-top:22px}.demo-status p{font-size:11px;line-height:1.8;align-items:flex-start}.demo-status p .icon{margin-top:4px}.demo-status .balance{font-size:10px;line-height:1.8;white-space:normal}.scenario-caption{font-size:10px!important;line-height:1.85!important}.outcome-layout{grid-template-columns:1fr;gap:40px}.outcome-copy>p{margin-top:24px}.receipt-connection{margin-top:28px;padding:21px 20px;max-width:none}.connection-label{font-size:8px}.feature:first-child{padding-top:28px;border-top:1px solid var(--rule)}.feature{padding:26px 0;gap:17px}.feature h3{font-size:20px;line-height:1.4}.feature p{font-size:13px}.feature>.icon{width:21px;height:21px}.near{padding:0}.near .container{padding:75px 0}.near h2{font-size:36px}.near-photo{inset:0;background-position:69% center;opacity:.5}.near:after{background:linear-gradient(90deg,#173d32f2,#173d32c9),linear-gradient(0deg,#173d32,transparent)}.near-copy>p{font-size:14px;margin-top:25px;color:#e1e8d9}.near-copy .support{font-size:12px;color:#c5d2b9}.faq h2{margin-bottom:35px}.question summary{font-size:15px;line-height:1.7;padding:22px 0;gap:24px}.question p{font-size:13px;padding:0 21px 23px 0}.closing{padding:80px 24px 78px}.closing h2{font-size:39px;line-height:1.2;letter-spacing:-1.6px}.closing p{font-size:13px;max-width:350px;margin-top:23px}.closing .main-cta{margin-top:27px}.closing:before{background-position:65% center}.closing:after{background:#102e24c9}.footer-inner{min-height:146px;flex-wrap:wrap;padding:30px 0;gap:22px}.footer-brand{width:111px}.footer p{order:3;width:100%;font-size:10px}.back-top{font-size:10px;margin-left:auto}}
.skip{width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;white-space:nowrap;transform:none}
.skip:focus{width:auto;height:auto;overflow:visible;clip-path:none;padding:12px 20px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
