body.landing-active{display:block;background:var(--paper);color:var(--ink)}
body.landing-active .sidebar,body.landing-active>main{display:none!important}
.landing-page{min-height:100vh;background:var(--paper);overflow:hidden}
.landing-page.hidden{display:none}
.landing-header{height:88px;max-width:1480px;margin:auto;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.landing-wordmark{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:700 17px 'Space Grotesk',sans-serif;letter-spacing:-.55px}
.landing-symbol{width:30px;height:30px;display:grid;place-items:center;background:var(--ink);color:var(--accent);border-radius:4px;font:700 17px 'Space Grotesk',sans-serif}
.landing-nav{display:flex;gap:34px;margin-left:60px}
.landing-nav a,.landing-footer>a:last-child{color:#5f6962;text-decoration:none;font-size:12px;font-weight:600}
.landing-nav a:hover,.landing-footer>a:last-child:hover{color:var(--ink)}
.landing-actions{display:flex;align-items:center;gap:18px}
.landing-language-picker select{width:51px;border:0;border-bottom:1px solid #c9cec2;background:transparent;padding:7px 2px;color:#465149;font:700 10px 'DM Sans',sans-serif;letter-spacing:.7px;cursor:pointer}
.landing-login,.landing-cta-secondary{border:0;background:none;color:var(--ink);font:700 12px 'DM Sans',sans-serif;cursor:pointer}
.landing-login{padding:12px 0 12px 14px}
.landing-login span,.landing-cta-secondary span,.landing-footer>a:last-child span{margin-left:9px;color:#6d8c28}
.landing-content{max-width:1480px;margin:auto;padding:0 clamp(22px,5vw,76px)}
.landing-hero{min-height:650px;padding:50px 0 72px;display:grid;grid-template-columns:minmax(370px,.88fr) minmax(460px,1.12fr);gap:32px;align-items:center}
.landing-hero-copy{position:relative;z-index:3;padding:12px 0 0}
.landing-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 24px;color:#788276;font-size:9px;font-weight:700;letter-spacing:1.35px}
.landing-eyebrow>span{width:8px;height:8px;border-radius:50%;background:#c0df31;box-shadow:0 0 0 4px #e8edcf}
.landing-hero h1{max-width:630px;margin:0;color:var(--ink);font:600 clamp(46px,5.25vw,76px)/.99 'Space Grotesk',sans-serif;letter-spacing:-4.8px}
.landing-hero h1 em,.landing-section-heading h2 em{color:#778a37;font-style:normal}
.landing-lede{max-width:455px;margin:25px 0 26px;color:#667169;font-size:15px;line-height:1.7}
.landing-cta-row{display:flex;align-items:center;gap:23px;flex-wrap:wrap}
.landing-cta-primary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:27px;padding:0 17px;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:var(--paper);text-decoration:none;font:700 12px 'DM Sans',sans-serif;cursor:pointer}
.landing-cta-primary:hover{background:#34423a}
.landing-cta-primary span{color:var(--accent);font-size:17px}
.landing-cta-secondary{padding:12px 0}
.landing-proof{display:flex;align-items:center;gap:11px;margin:42px 0 0;color:#899187;font-size:8px;font-weight:700;letter-spacing:1.05px}
.landing-proof i{width:3px;height:3px;border-radius:50%;background:#b7c28e}
.landing-stage{position:relative;min-height:520px;isolation:isolate;background-image:radial-gradient(#a5ad9c 1px,transparent 1px);background-size:16px 16px;background-position:3px 4px}
.landing-stage:before{content:"";position:absolute;z-index:-1;width:270px;height:270px;right:0;top:2%;border:1px solid #c7cebb;border-radius:50%}
.landing-stage:after{content:"";position:absolute;z-index:-1;width:160px;height:160px;right:12%;top:15%;border:1px solid #c7cebb;border-radius:50%}
.landing-poster{position:absolute;left:2%;top:6%;width:64%;max-width:390px;aspect-ratio:.86;padding:25px 23px;background:var(--accent);color:var(--ink);box-shadow:8px 9px 0 var(--ink);transform:rotate(-7deg);display:flex;flex-direction:column;justify-content:space-between}
.poster-top{font:700 10px/1.15 'DM Sans',sans-serif;letter-spacing:1px}
.poster-big{font:700 clamp(58px,7vw,100px)/.77 'Space Grotesk',sans-serif;letter-spacing:-8px}
.poster-bottom{padding-top:10px;border-top:1px solid #9aac3a;font:700 8px 'DM Sans',sans-serif;letter-spacing:1.6px}
.landing-how{padding:88px 0 98px;border-top:1px solid var(--line)}
.landing-section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:25px;margin-bottom:34px}
.landing-section-heading .landing-eyebrow{align-self:end;margin:0 0 9px}
.landing-section-heading h2{grid-column:2;grid-row:1/3;margin:0;font:600 clamp(34px,4vw,52px)/1.03 'Space Grotesk';letter-spacing:-2.5px}
.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dfe2d7;border-bottom:1px solid #dfe2d7}
.landing-step{position:relative;display:block;min-height:207px;padding:23px 28px 25px 0;border-right:1px solid #dfe2d7;border-bottom:1px solid #dfe2d7;color:var(--ink);text-decoration:none}
.landing-step:nth-child(3n+2),.landing-step:nth-child(3n){padding-left:28px}
.landing-step:nth-child(3n){border-right:0}
.landing-step:nth-child(n+4){border-bottom:0}
.landing-step:hover h3{text-decoration:underline;text-decoration-color:var(--fern);text-underline-offset:4px}
.step-number{color:#8b965a;font:600 11px 'Space Grotesk'}
.landing-steps h3{margin:30px 0 8px;font:600 18px 'Space Grotesk';letter-spacing:-.4px}
.landing-steps p{max-width:300px;margin:0;color:#758077;font-size:12px;line-height:1.65}
.step-mark{position:absolute;right:24px;top:18px;color:#9eb742;font:24px 'Space Grotesk'}
.landing-zones-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:16px 25px;padding:72px 0 42px;scroll-margin-top:20px}
.landing-zones-intro .landing-eyebrow{margin:0 0 4px}
.landing-zones-intro h2{grid-column:2;grid-row:1/3;margin:0;color:var(--pine);font:600 clamp(36px,4.4vw,58px)/1.01 'Space Grotesk';letter-spacing:-3px}
.landing-zones-intro h2 em{color:var(--fern);font-style:normal}
.landing-zones-intro>p:last-child{max-width:390px;margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.landing-zone{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(260px,.78fr) minmax(360px,1.22fr);align-items:center;gap:clamp(36px,7vw,100px);min-height:430px;padding:68px clamp(0px,4vw,56px);border-top:1px solid var(--line);scroll-margin-top:20px}
.landing-zone::before{content:"";position:absolute;z-index:-1;inset:0 calc(-1 * clamp(22px,5vw,76px));background:var(--zone-surface,var(--paper))}
.landing-zone:nth-of-type(even){--zone-surface:var(--surface)}
.landing-zone.is-reversed .landing-zone-copy{grid-column:2;grid-row:1}
.landing-zone.is-reversed>:not(.landing-zone-copy){grid-column:1;grid-row:1}
.landing-zone-copy{max-width:390px}
.landing-zone-kicker{display:flex;align-items:center;gap:12px;margin:0 0 19px;color:var(--fern);font-size:9px;font-weight:700;letter-spacing:1.15px}
.landing-zone-kicker span:first-child{font:600 12px 'Space Grotesk'}
.landing-zone-copy h3{margin:0 0 15px;color:var(--pine);font:600 clamp(31px,3.4vw,45px)/1.04 'Space Grotesk';letter-spacing:-2px}
.landing-zone-copy>p:last-child{max-width:370px;margin:0;color:var(--muted);font-size:14px;line-height:1.75}
.landing-end{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 -1px 50px;padding:38px 42px;background:var(--ink);color:var(--paper)}
.landing-end .landing-eyebrow{margin-bottom:13px;color:#b2bbab}
.landing-end .landing-eyebrow>span{background:var(--accent);box-shadow:0 0 0 4px #303c26}
.landing-end h2{margin:0;font:600 clamp(28px,3.5vw,44px)/1.06 'Space Grotesk';letter-spacing:-1.8px}
.landing-end .landing-cta-primary{flex:0 0 auto;background:var(--accent);border-color:var(--accent);color:var(--ink)}
.landing-end .landing-cta-primary span{color:var(--ink)}
.landing-footer{min-height:75px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}
.landing-footer>.landing-wordmark{font-size:13px}
.landing-footer .landing-symbol{width:23px;height:23px;font-size:13px}
.landing-footer>span{color:#9aa194;font-size:8px;font-weight:700;letter-spacing:1px}
.landing-footer>a:last-child{font-size:10px}
.landing-page :focus-visible,.login-close:focus-visible{outline:2px solid #718d30;outline-offset:4px}
.login-close{position:absolute;z-index:3;top:62px;right:24px;width:36px;height:36px;border:1px solid #dfe3dc;border-radius:50%;background:#fff;color:#445047;font-size:22px;cursor:pointer}
@media(prefers-reduced-motion:reduce){.landing-page *{scroll-behavior:auto}}

/* VALLFROST brand palette: Dust Grey, Fern and Pine Teal. */
.landing-wordmark,.landing-nav a,.landing-footer>a:last-child{color:var(--pine)}
.landing-language-picker select{width:128px;min-width:128px;height:38px;padding:7px 8px;border:1px solid var(--pine);border-left:4px solid var(--fern);border-radius:3px;background:var(--surface);color:var(--pine);font-size:11px;font-weight:700;white-space:nowrap}
.landing-login span,.landing-cta-secondary span,.landing-footer>a:last-child span{color:var(--fern)}
.landing-eyebrow{color:var(--muted)}
.landing-eyebrow>span{background:var(--fern);box-shadow:0 0 0 4px #52754F26}
.landing-hero h1 em,.landing-section-heading h2 em{color:var(--fern)}
.landing-lede,.landing-steps p{color:var(--muted)}
.landing-cta-primary{border-color:var(--pine);background:var(--pine);color:var(--surface)}
.landing-cta-primary:hover{border-color:var(--fern);background:var(--fern);color:#fff}
.landing-cta-primary span{color:var(--dust)}
.landing-poster{background:var(--fern);color:#fff;box-shadow:8px 9px 0 var(--pine)}
.landing-end{background:var(--pine);color:var(--surface)}
.landing-end .landing-eyebrow{color:#E3E7DE}
.landing-end .landing-eyebrow>span{background:var(--fern);box-shadow:0 0 0 4px #52754F33}
.landing-end .landing-cta-primary{border-color:var(--fern);background:var(--fern);color:#fff}
.landing-end .landing-cta-primary span{color:#fff}
.landing-page :focus-visible,.login-close:focus-visible{outline-color:var(--fern)}

/* The hero preview uses the Events layout with isolated sample data. */
/* Preview frames load the real app styles; this file only lays out the landing. */
.landing-system-preview{width:100%;margin:0;border:1px solid var(--line);background:var(--surface);box-shadow:8px 8px 0 #344e4112;min-width:0}
.landing-system-preview figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);color:var(--pine);font:700 8px 'DM Sans';letter-spacing:.65px}
.landing-system-preview figcaption small{color:var(--muted);font-size:7px}
.landing-preview-viewport{position:relative;width:100%;overflow:hidden;background:var(--dust)}
.landing-preview-viewport iframe,.landing-preview-expanded-viewport iframe{position:absolute;top:0;left:0;display:block;border:0;transform-origin:top left}
.landing-stage{min-height:680px}
.landing-stage .landing-poster{top:0;left:3%;width:62%;max-width:360px}
.landing-stage .poster-big{position:absolute;top:65px;left:23px;font-size:75px;letter-spacing:-5px}
.landing-hero-preview{position:relative;z-index:2;top:0;left:3%;width:97%;margin-top:205px;transform:rotate(1.5deg);box-shadow:0 17px 45px #344E4126}
.landing-system-preview figcaption button{border:0;background:none;color:var(--pine);font:700 9px 'DM Sans';cursor:pointer;white-space:nowrap}
.landing-preview-dialog{width:min(1400px,96vw);height:92vh;max-width:96vw;max-height:92vh;padding:44px 0 0;overflow:clip;border:1px solid var(--line);border-radius:3px;background:var(--surface)}
.landing-preview-dialog::backdrop{background:#344E41bb}
.landing-preview-expanded-viewport{position:relative;width:100%;height:100%;overflow:clip}
.landing-preview-close{position:absolute;top:6px;right:10px;width:32px;height:32px;border:1px solid var(--line);background:var(--surface);color:var(--pine);font-size:22px;cursor:pointer}
.landing-note{max-width:540px;margin:18px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.landing-note strong{color:var(--pine)}
.landing-steps-four{grid-template-columns:repeat(4,1fr)}
.landing-steps-four .landing-step:nth-child(3n){padding-left:28px;border-right:1px}
.landing-steps-four .landing-step:nth-child(4n){border-right:0;padding-left:28px}
.landing-steps-four .landing-step:nth-child(-n+4){border-bottom:0}
.landing-steps-four .landing-step:nth-child(n+5){border-bottom:0}
.landing-how,.landing-value,.landing-zones{scroll-margin-top:20px}
.landing-value{padding:88px 0 98px;border-top:1px solid var(--line);scroll-margin-top:20px}
.landing-value-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.landing-value-card{min-height:220px;padding:24px 24px 28px 0;border-right:1px solid var(--line)}
.landing-value-card:not(:first-child){padding-left:24px}
.landing-value-card:last-child{border-right:0}
.value-number{color:var(--fern);font:600 11px 'Space Grotesk'}
.landing-value-card h3{margin:35px 0 10px;color:var(--pine);font:600 20px 'Space Grotesk';letter-spacing:-.5px}
.landing-value-card p{max-width:250px;margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.landing-boundary{margin:28px 0 0;padding:17px 20px;border-left:4px solid var(--fern);background:var(--surface);color:var(--muted);font-size:13px;line-height:1.65}
.landing-boundary strong{color:var(--pine)}
.landing-end>div{max-width:680px}
.landing-end>div>p:last-child{max-width:560px;margin:14px 0 0;color:#dfe7de;font-size:13px;line-height:1.6}
.landing-zone{grid-template-columns:minmax(260px,.68fr) minmax(400px,1.32fr);gap:clamp(28px,4vw,65px);padding-inline:0}
@media(max-width:1100px){.landing-hero{grid-template-columns:minmax(300px,.85fr) minmax(380px,1.15fr);gap:20px;padding:36px 0 48px}.landing-hero-copy{max-width:760px}.landing-stage{max-width:730px;width:100%;margin:0 auto;min-height:580px}.landing-hero-preview{top:0;margin-top:205px}.landing-stage .landing-poster{max-width:350px}.landing-zone{grid-template-columns:minmax(240px,.65fr) minmax(360px,1.35fr);gap:28px}.landing-nav{margin-left:0;gap:22px}}
@media(max-width:760px){.landing-header{height:72px;padding:0 20px}.landing-nav{display:none}.landing-actions{gap:12px}.landing-content{padding:0 20px}.landing-hero{gap:35px;padding:48px 0 56px}.landing-hero h1{font-size:clamp(43px,10vw,68px);letter-spacing:-3px}.landing-lede{font-size:14px}.landing-proof{margin-top:30px}.landing-stage{min-height:clamp(525px,125vw,860px)}.landing-hero-preview{top:0;left:0;width:100%;margin-top:190px}.landing-stage .landing-poster{width:60%;padding:18px;max-width:300px}.poster-big{font-size:clamp(65px,14vw,90px);letter-spacing:-5px}.landing-how{padding:56px 0}.landing-section-heading,.landing-zones-intro{grid-template-columns:1fr;gap:12px}.landing-section-heading h2,.landing-zones-intro h2{grid-column:1;grid-row:auto;font-size:clamp(34px,8vw,48px)}.landing-steps{grid-template-columns:1fr}.landing-steps .landing-step:nth-child(n){min-height:0;padding:20px 38px 22px 0;border-right:0;border-bottom:1px solid var(--line)}.landing-steps .landing-step:last-child{border:0}.landing-steps h3{margin:15px 0 5px}.step-mark{top:35px}.landing-zones-intro{padding:40px 0 30px}.landing-zone,.landing-zone.is-reversed{grid-template-columns:1fr;gap:28px;min-height:0;padding:44px 0}.landing-zone::before{left:-20px;right:-20px}.landing-zone.is-reversed .landing-zone-copy,.landing-zone.is-reversed>:not(.landing-zone-copy){grid-column:1;grid-row:auto}.landing-zone-copy{max-width:530px}.landing-zone-copy h3{font-size:clamp(32px,8vw,42px)}.landing-end{align-items:flex-start;flex-direction:column;margin-bottom:30px;padding:28px 24px}.landing-footer>span{display:none}}
@media(max-width:480px){.landing-wordmark{font-size:14px}.landing-symbol{width:27px;height:27px}.landing-login{font-size:11px}.landing-hero-copy .landing-eyebrow{font-size:8px;letter-spacing:.8px}.landing-cta-row{align-items:flex-start;flex-direction:column;gap:8px}.landing-proof{gap:7px;font-size:7px;letter-spacing:.6px}.landing-system-preview figcaption{padding:10px;font-size:7px;letter-spacing:.3px}.landing-system-preview figcaption small{font-size:6px}.landing-hero-preview{transform:rotate(1deg)}.landing-end h2{font-size:31px}}


.landing-zone.is-reversed{grid-template-columns:minmax(400px,1.32fr) minmax(260px,.68fr)}
@media(max-width:1100px){.landing-zone.is-reversed{grid-template-columns:minmax(360px,1.35fr) minmax(240px,.65fr)}}
@media(max-width:900px){.landing-hero{grid-template-columns:1fr;gap:35px}.landing-stage{max-width:700px;min-height:740px}}
@media(max-width:760px){.landing-zone.is-reversed{grid-template-columns:1fr}.landing-stage{min-height:clamp(480px,110vw,740px)}}
@media(max-width:760px){.landing-language-picker select{width:118px;min-width:118px}}
@media(max-width:900px){.landing-value-grid{grid-template-columns:repeat(2,1fr)}.landing-value-card:nth-child(2){border-right:0}.landing-value-card:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:760px){.landing-value{padding:56px 0}.landing-value-grid{grid-template-columns:1fr}.landing-value-card,.landing-value-card:not(:first-child){min-height:0;padding:21px 0;border-right:0;border-top:1px solid var(--line)}.landing-value-card:first-child{border-top:0}.landing-value-card h3{margin:18px 0 7px}.landing-boundary{font-size:12px}}

/* The workflow is a handoff, not a feature checklist. */
.landing-flow{padding:96px 0 102px;border-top:1px solid var(--line);scroll-margin-top:20px}
.landing-flow-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:end;gap:clamp(28px,7vw,100px);margin-bottom:48px}
.landing-flow-intro .landing-eyebrow{margin:0 0 18px}
.landing-flow-intro h2{max-width:720px;margin:0;color:var(--pine);font:600 clamp(38px,4.8vw,65px)/.98 'Space Grotesk';letter-spacing:-3.8px}
.landing-flow-intro h2 em{color:var(--fern);font-style:normal}
.landing-flow-intro>p{max-width:390px;margin:0 0 5px;color:var(--muted);font-size:14px;line-height:1.8}
.landing-flow-track{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.landing-flow-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:start;gap:18px;min-height:148px;padding:24px 0;border-bottom:1px solid var(--line)}
.landing-flow-card:last-child{border-bottom:0}
.flow-index{color:var(--fern);font:600 12px 'Space Grotesk'}
.landing-flow-card h3{margin:0 0 8px;color:var(--pine);font:600 21px 'Space Grotesk';letter-spacing:-.6px}
.landing-flow-card p{max-width:560px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.flow-state{margin-top:3px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:1.3px}

/* The continuity section connects the record to the team’s next action. */
.landing-continuity{padding:96px 0 102px;border-top:1px solid var(--line);scroll-margin-top:20px}
.landing-continuity-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);gap:clamp(42px,8vw,120px);align-items:start}
.landing-continuity-copy .landing-eyebrow{margin:0 0 18px}
.landing-continuity-copy h2{max-width:600px;margin:0;color:var(--pine);font:600 clamp(38px,4.5vw,60px)/1 'Space Grotesk';letter-spacing:-3.4px}
.landing-continuity-copy h2 em{color:var(--fern);font-style:normal}
.landing-continuity-copy>p:last-child{max-width:390px;margin:25px 0 0;color:var(--muted);font-size:14px;line-height:1.8}
.landing-continuity-list{border-top:1px solid var(--line)}
.landing-continuity-row{display:grid;grid-template-columns:42px minmax(0,1fr) 25px;gap:16px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}
.landing-continuity-row h3{margin:0 0 7px;color:var(--pine);font:600 20px 'Space Grotesk';letter-spacing:-.5px}
.landing-continuity-row p{max-width:500px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.continuity-arrow{color:var(--fern);font-size:20px;line-height:1}
.landing-continuity .landing-boundary{margin-top:48px}

@media(max-width:900px){
  .landing-flow-intro,.landing-continuity-layout{grid-template-columns:1fr;gap:28px}
  .landing-flow-intro>p{max-width:560px}
  .landing-continuity-copy>p:last-child{max-width:560px}
}
@media(max-width:760px){
  .landing-flow,.landing-continuity{padding:64px 0 72px}
  .landing-flow-intro{margin-bottom:34px}
  .landing-flow-intro h2,.landing-continuity-copy h2{font-size:clamp(36px,9vw,52px);letter-spacing:-2.7px}
  .landing-flow-card{grid-template-columns:40px minmax(0,1fr);gap:14px;min-height:0;padding:20px 0}
  .flow-state{grid-column:2;margin-top:4px}
  .landing-continuity-layout{gap:40px}
  .landing-continuity-row{grid-template-columns:38px minmax(0,1fr) 20px;gap:12px;padding:19px 0}
  .landing-continuity-row h3{font-size:18px}
  .landing-continuity .landing-boundary{margin-top:34px}
}

/* Pricing is the landing page's decision point: clear value first, one action per plan. */
.landing-pricing{padding:96px 0 102px;border-top:1px solid var(--line);scroll-margin-top:20px}
.landing-pricing-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:end;gap:clamp(28px,7vw,100px)}
.landing-pricing-intro .landing-eyebrow{margin:0 0 18px}
.landing-pricing-intro h2{max-width:720px;margin:0;color:var(--pine);font:600 clamp(38px,4.8vw,65px)/.98 'Space Grotesk';letter-spacing:-3.8px}
.landing-pricing-intro h2 em{color:var(--fern);font-style:normal}
.landing-pricing-intro>p{max-width:430px;margin:0 0 5px;color:var(--muted);font-size:14px;line-height:1.8}
.landing-pricing-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:42px;padding:14px 18px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.landing-billing-switch{display:inline-flex;align-items:center;gap:10px;color:var(--pine);font-size:11px;font-weight:700;white-space:nowrap;cursor:pointer}
.landing-billing-switch input{position:absolute;width:1px;height:1px;opacity:0}
.landing-billing-switch-track{position:relative;width:42px;height:24px;border-radius:999px;background:var(--line);transition:background .18s ease}
.landing-billing-switch-track i{position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:var(--paper);box-shadow:0 1px 3px #344e4140;transition:transform .18s ease}
.landing-billing-switch input:checked+.landing-billing-switch-track{background:var(--fern)}
.landing-billing-switch input:checked+.landing-billing-switch-track i{transform:translateX(18px)}
.landing-billing-switch input:focus-visible+.landing-billing-switch-track{outline:2px solid var(--fern);outline-offset:3px}
.landing-billing-switch strong{color:var(--fern);font-size:10px;letter-spacing:.3px}
.landing-pricing-controls>p{margin:0;color:var(--muted);font-size:11px;line-height:1.5;text-align:right}
.landing-pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:52px}
.landing-pricing-card{display:flex;flex-direction:column;min-height:390px;padding:25px 22px 22px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 28px #344e4110}
.landing-pricing-card.is-featured{border-color:var(--fern);box-shadow:0 0 0 1px var(--fern),0 16px 34px #344e4118}
.landing-pricing-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px}
.landing-pricing-card-head span{color:var(--fern);font-size:9px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}
.landing-pricing-card h3{margin:0;color:var(--pine);font:600 23px 'Space Grotesk';letter-spacing:-.8px}
.landing-pricing-price{display:block;color:var(--pine);font:600 27px 'Space Grotesk';letter-spacing:-1.2px}
.landing-pricing-cycle{display:block;margin-top:4px;color:var(--fern);font-size:9px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.landing-pricing-card>p{min-height:44px;margin:9px 0 17px;color:var(--muted);font-size:12px;line-height:1.6}
.landing-pricing-card ul{display:grid;gap:8px;margin:0 0 25px;padding:0;list-style:none;color:var(--muted);font-size:11px;line-height:1.5}
.landing-pricing-card li{position:relative;padding-left:18px}
.landing-pricing-card li::before{content:'✓';position:absolute;left:0;color:var(--fern);font-weight:700}
.landing-pricing-button{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;padding:11px 13px;border:1px solid var(--fern);border-radius:7px;background:transparent;color:var(--pine);font:600 11px 'DM Sans';cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.landing-pricing-button:hover,.landing-pricing-button:focus-visible{background:var(--fern);color:var(--paper);transform:translateY(-1px)}
.landing-pricing-button span{font-size:16px;line-height:1}
.landing-pricing-note{margin:25px 0 0;padding:16px 20px;border-left:4px solid var(--fern);background:var(--surface);color:var(--muted);font-size:13px;line-height:1.65}
.payment-mockup{display:none;position:fixed;z-index:120;inset:0;place-items:center;padding:24px;background:#1d252899;overflow:auto}
.payment-mockup.open{display:grid}
.payment-mockup-card{position:relative;display:grid;grid-template-columns:minmax(250px,.82fr) minmax(320px,1.18fr);width:min(900px,100%);background:var(--paper);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 24px 70px #1d252855}
.payment-mockup-close{position:absolute;z-index:2;top:14px;right:17px;width:32px;height:32px;border:0;background:transparent;color:var(--muted);font-size:25px;line-height:1;cursor:pointer}
.payment-mockup-summary{display:flex;flex-direction:column;justify-content:center;padding:42px 34px;background:var(--pine);color:var(--paper)}
.payment-mockup-summary .landing-eyebrow{color:#dfe7de}
.payment-mockup-summary .landing-eyebrow>span{background:var(--fern);box-shadow:0 0 0 4px #52754f33}
.payment-mockup-summary h2{margin:0;color:var(--paper);font:600 clamp(30px,4vw,46px)/1.04 'Space Grotesk';letter-spacing:-2px}
.payment-mockup-summary>p:not(.landing-eyebrow){margin:20px 0 28px;color:#dfe7de;font-size:13px;line-height:1.7}
.payment-mockup-total{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-top:18px;border-top:1px solid #dfe7de4d}
.payment-mockup-total span{color:#dfe7de;font-size:12px}
.payment-mockup-total strong{color:var(--paper);font:600 22px 'Space Grotesk'}
.payment-mockup-note{margin:13px 0 0!important;color:#b8c5ba!important;font-size:11px!important}
.payment-mockup-checkout{padding:37px 34px 32px;background:var(--paper)}
.payment-mockup-checkout-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px;color:var(--pine);font:600 17px 'Space Grotesk'}
.payment-mockup-checkout-head small{color:var(--fern);font:700 9px 'DM Sans';letter-spacing:1px;text-transform:uppercase}
.payment-mockup-checkout label{display:block;margin-bottom:16px;color:var(--pine);font-size:11px;font-weight:600}
.payment-mockup-checkout input{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--pine);font:13px 'DM Sans';outline:0}
.payment-mockup-checkout input:focus{border-color:var(--fern);box-shadow:0 0 0 3px #52754f1c}
.payment-card-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.payment-mockup-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:9px;padding:12px 15px}
.payment-mockup-submit span{font-size:16px}
.payment-mockup-disclaimer{display:block;margin-top:14px;color:var(--muted);font-size:10px;line-height:1.5;text-align:center}
.payment-mockup-success{text-align:center;padding:42px 15px 18px}
.payment-success-mark{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 16px;border-radius:50%;background:#dfead9;color:var(--fern);font-size:24px}
.payment-mockup-success h3{margin:0 0 9px;color:var(--pine);font:600 24px 'Space Grotesk'}
.payment-mockup-success p{margin:0 0 22px;color:var(--muted);font-size:13px;line-height:1.6}
.payment-mockup-success button{width:100%}
.payment-mockup [hidden]{display:none!important}
@media(max-width:1100px){.landing-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.landing-pricing-intro{grid-template-columns:1fr;gap:28px}.landing-pricing-intro>p{max-width:560px}.payment-mockup-card{grid-template-columns:1fr;max-width:620px}.payment-mockup-summary{padding:32px 30px 28px}.payment-mockup-checkout{padding:30px}}
@media(max-width:760px){.landing-pricing{padding:64px 0 72px}.landing-pricing-intro h2{font-size:clamp(36px,9vw,52px);letter-spacing:-2.7px}.landing-pricing-controls{align-items:flex-start;flex-direction:column;gap:9px;margin-top:34px}.landing-pricing-controls>p{text-align:left}.landing-pricing-grid{grid-template-columns:1fr;margin-top:34px}.landing-pricing-card{min-height:0}.payment-mockup{padding:10px}.payment-mockup-card{max-height:calc(100vh - 20px);overflow:auto}.payment-mockup-summary,.payment-mockup-checkout{padding:27px 21px}.payment-mockup-summary h2{font-size:34px}}
