@font-face{
  font-family:"Rubik";
  src:url("assets/fonts/Rubik-Variable.woff2") format("woff2");
  font-style:normal;
  font-weight:300 900;
  font-display:swap;
}

:root{
  --ink:#1b1b1a;--muted:#6e6a63;--paper:#f7f5f0;--warm:#ece8df;--accent:#9f9078;--accent-light:#ddd7c8;--dark:#171817;--line:rgba(27,27,26,.12);--white:#fff;
  --font:"Rubik",Arial,sans-serif;--shell:1320px;--r:14px;--shadow:0 24px 70px rgba(23,24,23,.12);--ease:220ms ease;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-weight:300;letter-spacing:normal;}body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(calc(100% - 48px),var(--shell));margin-inline:auto}.section{padding:clamp(88px,8vw,136px) 0}.section-muted{background:var(--warm)}.section-dark{background:#1d1e1d;color:#fff}.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;padding:12px 16px;background:#fff;color:#111;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{top:16px}*:focus-visible{outline:3px solid #7b6f5a;outline-offset:3px}h1,h2,h3,p{color:var(--muted);font-size:1.125rem;line-height:1.65;font-weight:300;letter-spacing:normal}h1,h2,h3{font-size:1.2rem;font-weight:500;letter-spacing:normal}h1{font-size:clamp(3.2rem,4.6vw,4rem);line-height:1.08;font-weight:500;letter-spacing:normal}h2{font-size:clamp(2.45rem,4.2vw,4rem);line-height:1.08;font-weight:500;letter-spacing:normal}h3{font-size:1.2rem}p{color:var(--muted);line-height:1.9;font-weight:300;letter-spacing:.003em}.eyebrow,.plan-label,.summary-eyebrow{margin:0 0 20px;color:var(--accent);font-size:.72rem;font-weight:300;letter-spacing:.17em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 26px;border:1px solid transparent;border-radius:999px;font-size:.88rem;transition:transform var(--ease),background var(--ease),color var(--ease);font-weight:300;letter-spacing:normal;}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--dark);color:#fff}.button-small{min-height:42px;padding-inline:20px}.button-light,.button-hero-light{background:#fff;color:#171817}.button-arrow{display:grid;place-items:center;width:28px;height:28px;margin-left:14px;border-radius:50%;background:#171817;color:#fff}.site-header{position:fixed;inset:0 0 auto;z-index:100;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(12,14,15,.28);backdrop-filter:blur(22px) saturate(130%);transition:background var(--ease),border-color var(--ease)}.site-header.scrolled{background:rgba(247,245,240,.92);border-color:var(--line)}.header-inner{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;min-height:82px;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;width:max-content}.brand-logo{width:40px;height:40px;border-radius:50%;object-fit:cover}.brand-name{font-weight:300;letter-spacing:normal}.desktop-nav{display:flex;gap:clamp(18px,2vw,30px);align-items:center}.desktop-nav a,.text-link{font-size:.78rem;font-weight:300;letter-spacing:normal}.site-header:not(.scrolled) .brand-name,.site-header:not(.scrolled) .desktop-nav a,.site-header:not(.scrolled) .text-link{color:rgba(255,255,255,.9)}.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:20px}.site-header:not(.scrolled) .button-primary{background:#fff;color:#171817}.menu-button{display:none;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.14)}.menu-button span{display:block;width:16px;height:1px;margin:4px auto;background:#fff}.mobile-nav{padding:18px 24px 28px;background:#fff;border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-weight:500}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:980px;padding:164px 0 90px;background:#0d1012;color:#fff}.hero-backdrop,.hero-shade{position:absolute;inset:0;pointer-events:none}.hero-backdrop{z-index:-3;background:url('assets/legalfusion-pen-hero.png') center 59%/cover no-repeat;filter:saturate(.82) brightness(.95) contrast(.98);transform:scale(1.018)}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(8,10,11,.88) 0%,rgba(8,10,11,.72) 34%,rgba(8,10,11,.18) 67%,rgba(8,10,11,.28) 100%),linear-gradient(180deg,rgba(8,10,11,.22),rgba(8,10,11,.03) 52%,rgba(8,10,11,.76))}.hero::after{content:"";position:absolute;z-index:-1;inset:auto 0 0;height:34%;background:linear-gradient(180deg,transparent,rgba(13,16,18,.4) 44%,#181a1b)}.hero-calm-inner{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(48px,6vw,110px);align-items:center;min-height:700px}.hero-copy{min-width:0}.hero h1{max-width:760px;margin-bottom:30px;font-size:clamp(3.4rem,4.8vw,4rem);line-height:1.08;font-weight:500;letter-spacing:normal}.hero h1 span{color:rgba(255,255,255,.72);font-weight:500}.hero .eyebrow{color:#d8cdbb}.hero-text{max-width:610px;margin-bottom:34px;color:rgba(255,255,255,.74);font-size:1.125rem;line-height:1.65;font-weight:300;letter-spacing:normal}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}.hero-text-link{display:inline-flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.84);font-size:.84rem;font-weight:500}.hero-proof{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16)}.hero-proof span{position:relative;padding-left:14px;color:rgba(255,255,255,.58);font-size:.69rem}.hero-proof span::before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;border-radius:50%;background:#c4b79d;transform:translateY(-50%)}.calm-workspace{min-width:0}.calm-workspace-label{font-size:.73rem;font-weight:300;letter-spacing:normal}.calm-workspace-frame{overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:#e7e7e7;box-shadow:0 46px 110px rgba(0,0,0,.4)}.hero-footer{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:40px;color:rgba(255,255,255,.46);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.hero-footer div{height:1px;background:rgba(255,255,255,.18)}.analysis-stories{background:#181a1b;color:#f3f1ec}.analysis-stories-inner{display:grid;gap:clamp(90px,10vw,160px)}.analysis-story{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(36px,5vw,86px);align-items:center}.analysis-story-reverse{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.analysis-story-reverse .analysis-story-visual{order:1}.analysis-story-reverse .analysis-story-copy{order:2}.analysis-story-copy{min-width:0}.analysis-story-copy h2{font-size:clamp(2.6rem,4.6vw,5.3rem)}
.analysis-stories .analysis-story-copy h2,
.analysis-stories .analysis-story-copy h1{color:rgba(255,255,255,.74)}
.analysis-stories .analysis-story-copy > p:not(.eyebrow){color:#fff}
.analysis-stories .eyebrow{color:rgba(255,255,255,.9)}
.analysis-story-copy p:last-child{color:#fff}.analysis-story-visual{overflow:hidden;margin:0;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 36px 90px rgba(0,0,0,.32)}.pricing-intro{padding:clamp(100px,9vw,154px) 0 0px;background:#f2efe8}.pricing-intro-inner{max-width:980px}.pricing-intro h1{max-width:1050px;margin:0 0 28px;font-size:clamp(3.1rem,5.6vw,6.4rem)}.pricing-intro-copy{max-width:680px}.plans-section{padding:26px 0 130px;background:#f2efe8}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}.plan-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:610px;padding:42px 34px 34px;border:0;border-radius:8px;background:rgba(255,255,255,.62);box-shadow:inset 0 0 0 1px rgba(27,27,26,.08);cursor:pointer;transition:transform var(--ease),box-shadow var(--ease)}.plan-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(27,27,26,.09)}.plan-card.selected{background:#fff;box-shadow:inset 0 0 0 1.5px #1b1b1a,0 24px 60px rgba(27,27,26,.08)}.recommendation{position:absolute;top:14px;right:14px;z-index:2;padding:7px 12px;border-radius:999px;background:var(--accent);color:#fff;font-size:.66rem;font-weight:500}.plan-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-top:20px}.plan-top>div:first-child{min-width:0}.plan-card h2{margin:0;font-size:clamp(1.55rem,2.1vw,2rem);overflow-wrap:anywhere}.radio-indicator{flex:0 0 auto;width:20px;height:20px;border:1px solid var(--line);border-radius:50%}.selected .radio-indicator{border:6px solid var(--ink)}.plan-description{min-height:96px;margin:24px 0;color:var(--muted);font-size:.87rem}.price-block{display:flex;flex-direction:column;min-height:106px;margin-bottom:24px}.price{font-size:2.45rem;font-weight:400}.enterprise-price{font-size:1.9rem}.price-suffix,.billing-note{font-size:.72rem;color:var(--muted)}.billing-note{margin-top:4px}.feature-list{display:grid;gap:14px;margin:0 0 28px;padding:0;list-style:none}.feature-list li{position:relative;padding-left:22px;color:#4d4b46;font-size:.8rem;line-height:1.45}.feature-list li::before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:500}.select-plan{width:100%;min-height:48px;margin-top:auto;border:1px solid var(--ink);border-radius:999px;background:#fff;cursor:pointer;font-size:.8rem;font-weight:300;letter-spacing:normal;}.selected .select-plan{background:var(--ink);color:#fff}.checkout-section{padding:clamp(88px,8vw,120px) 0;background:#e9e5dc}.checkout-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(34px,5vw,72px);align-items:start}.form-heading{margin-bottom:42px}.form-heading h2{margin-bottom:16px}.b2b-notice{margin:0 0 26px;padding:20px 22px;border-left:3px solid var(--accent);background:#f4f0e7}.b2b-notice strong{display:block;margin-bottom:5px}.b2b-notice p{margin:0;font-size:.8rem}.form-section{margin:0 0 24px;padding:30px;border:1px solid var(--line);border-radius:8px;background:#fff}.form-section legend{display:flex;gap:12px;align-items:center;padding:0 8px;font-weight:500}.form-section legend span{color:var(--accent);font-size:.7rem}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:grid;gap:8px;min-width:0}.full-width{grid-column:1/-1}label{font-size:.73rem;font-weight:400}input,select{width:100%;min-width:0;min-height:50px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(159,144,120,.15)}.quantity-control{display:grid;grid-template-columns:48px minmax(0,1fr) 48px}.quantity-control input{border-radius:0;text-align:center}.quantity-control button{border:1px solid var(--line);background:#fff;cursor:pointer}.quantity-control button:first-child{border-radius:10px 0 0 10px}.quantity-control button:last-child{border-radius:0 10px 10px 0}.checkbox-row{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px;color:var(--muted);font-size:.78rem;line-height:1.5}.checkbox-row input{width:17px;min-height:17px;margin-top:2px}.b2b-confirmation{padding:16px;border:1px solid rgba(159,144,120,.45);border-radius:10px;background:#faf8f3}.billing-address-panel{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:10px;background:#faf9f6}.billing-address-panel[hidden]{display:none}.subsection-heading{margin-bottom:22px}.subsection-heading span{font-weight:500}.subsection-heading p{margin:4px 0 0;font-size:.74rem}.form-notice{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:.75rem}.order-summary{position:sticky;top:104px}.summary-card{padding:30px;border-radius:8px;background:var(--ink);color:#fff;box-shadow:0 30px 80px rgba(37,37,37,.17)}.summary-plan,.summary-row,.summary-total,.summary-annual{display:flex;justify-content:space-between;gap:20px}.summary-plan{padding:22px 0;border-top:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17)}.summary-plan div{display:grid;gap:5px}.summary-plan span,.summary-row span,.summary-total span,.summary-annual span{color:rgba(255,255,255,.6);font-size:.73rem}.summary-plan button{align-self:center;padding:0;border:0;background:transparent;color:var(--accent-light);cursor:pointer;font-size:.7rem;font-weight:500}.summary-row{padding-top:17px;font-size:.8rem}.summary-row strong{max-width:190px;text-align:right;overflow-wrap:anywhere}.summary-divider{margin:24px 0;border-top:1px solid rgba(255,255,255,.17)}.summary-total{align-items:end}.summary-total strong{font-size:1.8rem}.summary-annual{margin-top:8px}.tax-note{margin:18px 0;color:rgba(255,255,255,.46);font-size:.67rem}.checkout-button{width:100%;min-height:54px;border:0;border-radius:999px;background:#fff;color:var(--ink);cursor:pointer;font-weight:300;letter-spacing:normal;}.checkout-button[disabled]{opacity:.6;cursor:not-allowed}.summary-trust{display:grid;gap:8px;margin-top:22px;color:rgba(255,255,255,.55);font-size:.68rem}.form-status{min-height:1.5rem;margin-top:14px;font-size:.8rem}.field-error{border-color:#a94747!important}.field-error-message{color:#a94747;font-size:.68rem}.field-valid{border-color:#4f7b57!important}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.statement-inner{max-width:1000px;text-align:center}.statement h2{max-width:950px;margin-inline:auto}.statement p:last-child{max-width:760px;margin-inline:auto}.section-heading{max-width:900px;margin-bottom:64px}.discovery-grid,.workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.discovery-item,.workflow-step{min-width:0;padding:32px;border-right:1px solid var(--line)}.discovery-item:first-child,.workflow-step:first-child{padding-left:0}.discovery-item:last-child,.workflow-step:last-child{border-right:0}.number,.workflow-step>span{display:inline-block;margin-bottom:54px;color:var(--accent);font-size:.72rem;font-weight:500}.workflow-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-color:rgba(255,255,255,.18)}.workflow-step{border-color:rgba(255,255,255,.18)}.workflow-step p{color:rgba(255,255,255,.58)}.product-detail-grid,.trust-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(48px,7vw,100px);align-items:center}.check-list{display:grid;gap:16px;margin:36px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:28px}.check-list li::before{content:"—";position:absolute;left:0;color:var(--accent)}.insight-card,.value-card,.reference-card,.logo-tile{border-radius:8px}.insight-card{padding:38px;background:var(--warm)}.insight-top,.impact-row{display:flex;justify-content:space-between;gap:20px}.insight-top{padding-bottom:22px;border-bottom:1px solid var(--line)}.insight-answer{padding:36px 0}.impact-row{padding:17px 0;border-top:1px solid var(--line);font-size:.78rem}.value-intro{display:grid;grid-template-columns:.55fr 1.45fr;gap:50px;align-items:end;margin-bottom:64px}.value-grid,.reference-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.value-card,.reference-card{padding:32px;border:1px solid var(--line);background:rgba(255,255,255,.55)}.value-card h3{margin-bottom:70px}.trust-facts{border-top:1px solid var(--line)}.trust-facts div{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.trust-facts p{margin:0;color:var(--ink);font-weight:500}.references-section,.faq-section{padding:clamp(88px,8vw,120px) 0}.references-section{background:#efebe3}.logo-cloud{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:50px}.logo-tile{display:grid;place-items:center;min-height:100px;padding:18px;border:1px solid var(--line);background:rgba(255,255,255,.45)}.logo-tile span{font-size:.68rem;letter-spacing:.12em}.reference-card{min-height:290px;display:flex;flex-direction:column}.reference-card blockquote{margin:0;font-size:1.08rem;line-height:1.55}.reference-meta{display:grid;gap:4px;margin-top:auto;padding-top:28px}.final-cta{background:var(--accent);color:#fff;text-align:center}.final-cta .eyebrow,.final-cta p{color:rgba(255,255,255,.76)}.faq-section{background:var(--paper)}.faq-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(42px,7vw,90px);align-items:start}.faq-intro{position:sticky;top:110px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;min-height:84px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;border:0;background:transparent;color:var(--ink);cursor:pointer;text-align:left;font-weight:300;letter-spacing:normal;}.faq-icon{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%}.faq-item.open .faq-icon{background:var(--ink);color:#fff}.faq-answer{padding:0 60px 26px 0}.faq-answer[hidden]{display:none}.site-footer{padding:52px 0;background:var(--dark);color:#fff}.footer-grid{display:flex;justify-content:space-between;gap:40px}.site-footer p{margin:18px 0 0;color:rgba(255,255,255,.5);font-size:.78rem}.footer-links{display:flex;flex-wrap:wrap;gap:22px}.footer-links a{color:rgba(255,255,255,.65);font-size:.76rem}.reveal{opacity:0;transform:translateY(18px);transition:opacity 700ms ease,transform 700ms ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1180px){.header-inner{grid-template-columns:1fr auto}.desktop-nav{display:none}.menu-button{display:block}.hero-calm-inner{grid-template-columns:1fr;gap:56px}.hero{min-height:auto}.calm-workspace{width:min(100%,980px)}.analysis-story,.analysis-story-reverse{grid-template-columns:1fr;gap:38px}.analysis-story-reverse .analysis-story-visual,.analysis-story-reverse .analysis-story-copy{order:initial}.plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-card.enterprise{grid-column:1/-1;min-height:auto}.checkout-layout{grid-template-columns:1fr}.order-summary{position:static}.logo-cloud{grid-template-columns:repeat(3,1fr)}}
@media (max-width:820px){.shell{width:min(calc(100% - 32px),var(--shell))}.header-inner{min-height:72px}.desktop-only{display:none}.hero{padding:124px 0 70px}.hero-actions{display:grid;align-items:stretch}.hero-actions .button,.hero-text-link{width:100%;justify-content:center}.hero-proof{display:grid}.plans-grid{grid-template-columns:1fr}.plan-card.enterprise{grid-column:auto}.field-grid,.product-detail-grid,.trust-grid,.value-intro,.faq-layout{grid-template-columns:1fr}.value-grid,.reference-cards{grid-template-columns:1fr}.workflow-grid{grid-template-columns:repeat(2,1fr)}.faq-intro{position:static}.footer-grid{display:grid}.logo-cloud{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.shell{width:min(calc(100% - 24px),var(--shell))}.section{padding:78px 0}.header-actions .button{display:none}.brand-name{font-size:.92rem}.brand-logo{width:36px;height:36px}.hero h1{font-size:clamp(3rem,14vw,4.5rem)}.calm-workspace-frame,.analysis-story-visual{border-radius:10px}.hero-footer span:last-child{display:none}.plan-card,.form-section,.summary-card,.insight-card,.value-card,.reference-card{padding:24px}.field-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.workflow-grid,.discovery-grid{grid-template-columns:1fr}.workflow-step,.discovery-item{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.workflow-step:last-child,.discovery-item:last-child{border-bottom:0}.logo-cloud{grid-template-columns:1fr 1fr}.faq-answer{padding-right:0}.summary-plan,.summary-row,.summary-total,.summary-annual{gap:12px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}


/* V14 – Checkout headings above cards */
.form-section-block{margin:0 0 30px}
.form-section-block .form-section{margin:0}
.form-section-heading{display:grid;grid-template-columns:auto auto 1fr;gap:12px;align-items:center;margin:0 0 14px;padding:0 2px}
.form-section-number{color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.08em}
.form-section-heading h3{margin:0;font-size:.95rem;font-weight:600;letter-spacing:-.02em}
.form-section-line{height:1px;background:var(--line)}
.form-section legend{display:none}
.billing-term-note{max-width:760px;margin:38px 0 0;color:var(--muted);font-size:.78rem}
.footer-social{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;margin-left:auto;color:rgba(255,255,255,.65);font-size:.76rem}
.footer-social>span{color:rgba(255,255,255,.42)}
.footer-social a{color:rgba(255,255,255,.72);text-decoration:none}
.footer-social a:hover{text-decoration:underline;text-underline-offset:4px}
.faq-placeholder .faq-question>span:first-child{color:var(--muted)}
@media (max-width:820px){.footer-social{margin-left:0}.form-section-heading{grid-template-columns:auto auto 1fr}}

.success-page{min-height:100vh;display:grid;place-items:center;padding:48px 24px;background:var(--paper)}.success-card{width:min(100%,720px);padding:48px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow);text-align:center}.success-card h1{font-size:clamp(2.6rem,6vw,4.7rem);margin-bottom:24px}.success-card p{max-width:580px;margin:0 auto 18px}.success-card .button{margin-top:18px}

/* V19 – Succesphire typography mapping only */
.plan-card h2,
.summary-card strong,
.form-section-heading h3,
.subsection-heading span,
.reference-meta strong,
.trust-facts p,
.reference-card blockquote,
.price,
.enterprise-price{
  font-weight:300;
  letter-spacing:normal;
}

.feature-list li,
.summary-row,
.summary-plan,
.summary-total,
.summary-annual,
.checkbox-row,
.form-notice,
.site-footer,
.footer-links a,
.mobile-nav a{
  font-weight:300;
  letter-spacing:normal;
}


/* V22 – Legal pages: closer visual alignment with the LegalFusion homepage */
.legal-page{background:var(--paper);color:var(--ink)}
.legal-page .site-header{border-bottom:1px solid rgba(255,255,255,.1);background:rgba(12,14,15,.28);backdrop-filter:blur(22px) saturate(130%)}
.legal-page .site-header.scrolled{background:rgba(247,245,240,.92);border-color:var(--line)}
.legal-page .site-header:not(.scrolled) .brand-name,
.legal-page .site-header:not(.scrolled) .desktop-nav a,
.legal-page .site-header:not(.scrolled) .text-link{color:rgba(255,255,255,.9)}
.legal-page .site-header:not(.scrolled) .button-primary{background:#fff;color:#171817}
.legal-main{padding-top:0}
.legal-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:520px;
  padding:clamp(170px,14vw,230px) 0 clamp(88px,8vw,128px);
  background:#181a1b;
  border-bottom:1px solid rgba(255,255,255,.08)
}
.legal-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 79% 38%,rgba(159,144,120,.16),transparent 26%),
    linear-gradient(125deg,#0d1012 0%,#181a1b 56%,#202220 100%)
}
.legal-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  z-index:-1;
  height:42%;
  background:linear-gradient(180deg,transparent,rgba(9,11,12,.34))
}
.legal-hero-inner{max-width:980px}
.legal-hero .eyebrow{color:#d8cdbb}
.legal-hero h1{
  max-width:900px;
  margin:0 0 28px;
  color:#fff;
  font-size:clamp(3.4rem,5.6vw,5.6rem);
  font-weight:300;
  line-height:1.08;
  letter-spacing:normal
}
.legal-hero-copy{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:1.125rem;
  font-weight:300;
  line-height:1.65;
  letter-spacing:normal
}
.legal-content{padding:clamp(96px,8vw,136px) 0 clamp(110px,9vw,154px);background:var(--paper)}
.legal-layout{
  display:grid;
  grid-template-columns:minmax(210px,.38fr) minmax(0,1.62fr);
  gap:clamp(52px,8vw,120px);
  align-items:start
}
.legal-index{position:sticky;top:112px;padding-top:3px}
.legal-index>p{margin:0 0 18px;color:var(--accent);font-size:.72rem;font-weight:300;letter-spacing:.17em;text-transform:uppercase}
.legal-index nav{display:grid;border-top:1px solid var(--line)}
.legal-index a{
  padding:14px 0;
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:.78rem;
  font-weight:300;
  line-height:1.45;
  transition:color var(--ease),padding-left var(--ease)
}
.legal-index a:hover{padding-left:5px;color:var(--ink)}
.legal-document{max-width:860px}
.legal-section{
  position:relative;
  padding:0 0 48px;
  margin:0 0 48px;
  border-bottom:1px solid var(--line);
  scroll-margin-top:120px
}
.legal-section:last-child{margin-bottom:0;border-bottom:0}
.legal-section-number{
  display:block;
  margin-bottom:16px;
  color:var(--accent);
  font-size:.7rem;
  font-weight:300;
  letter-spacing:.17em;
  text-transform:uppercase
}
.legal-section h2{
  margin:0 0 22px;
  color:var(--ink);
  font-size:clamp(2rem,3.2vw,3.2rem);
  font-weight:300;
  line-height:1.08;
  letter-spacing:normal
}
.legal-section p,
.legal-section address{
  margin:0;
  max-width:760px;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:300;
  line-height:1.85;
  font-style:normal;
  letter-spacing:normal
}
.legal-section p+p,.legal-section address+p{margin-top:18px}
.legal-section strong{color:var(--ink);font-weight:500}
.legal-section a{
  color:var(--ink);
  text-decoration:underline;
  text-decoration-color:rgba(27,27,26,.28);
  text-decoration-thickness:1px;
  text-underline-offset:4px
}
.legal-section a:hover{text-decoration-color:var(--ink)}
.legal-provider-note{
  margin-top:26px!important;
  padding:22px 24px;
  border-left:3px solid var(--accent);
  background:#f2efe8
}
.legal-page .footer-brand{color:#fff}

@media (max-width:820px){
  .legal-layout{grid-template-columns:1fr;gap:52px}
  .legal-index{position:static}
  .legal-index nav{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .legal-hero{min-height:460px;padding-top:150px}
}
@media (max-width:560px){
  .legal-index nav{grid-template-columns:1fr}
  .legal-section{padding-bottom:36px;margin-bottom:36px}
  .legal-section p,.legal-section address{font-size:1rem}
}

/* V23 – Impressum-only typography override
   Intentionally scoped to .impressum-page so the homepage remains untouched. */
.impressum-page .legal-section h2{
  font-size:clamp(1.6rem,2.2vw,2.45rem);
}

/* V24 – Datenschutz page only
   Scoped to .datenschutz-page; no homepage typography/layout rules are modified. */
.datenschutz-page .legal-section h2{
  font-size:clamp(1.6rem,2.2vw,2.45rem);
}
.datenschutz-page .privacy-index nav{
  max-height:calc(100vh - 170px);
  overflow:auto;
  padding-right:8px;
  scrollbar-width:thin;
}
.datenschutz-page .privacy-index a{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.datenschutz-page .privacy-index a span{
  color:var(--accent);
  font-size:.68rem;
}
.datenschutz-page .legal-list{
  display:grid;
  gap:8px;
  max-width:760px;
  margin:18px 0 22px;
  padding-left:22px;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:300;
  line-height:1.75;
}
.datenschutz-page .legal-address{
  margin:18px 0 22px;
  padding:22px 24px;
  border-left:3px solid var(--accent);
  background:#f2efe8;
}
.datenschutz-page .legal-section p + .legal-list,
.datenschutz-page .legal-list + p{
  margin-top:18px;
}
@media (max-width:820px){
  .datenschutz-page .privacy-index nav{
    max-height:none;
    overflow:visible;
    padding-right:0;
  }
  .datenschutz-page .legal-list{
    font-size:1rem;
  }
}

/* V25 – AGB page only
   Fully scoped to .agb-page; homepage and existing legal pages stay untouched. */
.agb-page .legal-section h2{
  font-size:clamp(1.6rem,2.2vw,2.45rem);
}
.agb-page .agb-index nav{
  max-height:calc(100vh - 170px);
  overflow:auto;
  padding-right:8px;
  scrollbar-width:thin;
}
.agb-page .agb-index a{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.agb-page .agb-index a span{
  color:var(--accent);
  font-size:.68rem;
}
.agb-page .agb-document .legal-section p{
  max-width:780px;
}
.agb-page .legal-list{
  display:grid;
  gap:8px;
  max-width:780px;
  margin:18px 0 22px;
  padding-left:22px;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:300;
  line-height:1.75;
}
.agb-page .legal-list + p,
.agb-page .legal-section p + .legal-list{
  margin-top:18px;
}
@media (max-width:820px){
  .agb-page .agb-index nav{
    max-height:none;
    overflow:visible;
    padding-right:0;
  }
  .agb-page .legal-list{
    font-size:1rem;
  }
}

/* V26 – AVV page only
   Fully scoped to .avv-page; homepage and existing legal pages stay untouched. */
.avv-page .legal-section h2{
  font-size:clamp(1.6rem,2.2vw,2.45rem);
}
.avv-page .avv-index nav{
  max-height:calc(100vh - 170px);
  overflow:auto;
  padding-right:8px;
  scrollbar-width:thin;
}
.avv-page .avv-index a{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.avv-page .avv-index a span{
  color:var(--accent);
  font-size:.68rem;
}
.avv-page .avv-document h3{
  margin:30px 0 12px;
  color:var(--ink);
  font-size:1.18rem;
  font-weight:400;
  line-height:1.4;
}
.avv-page .legal-list{
  display:grid;
  gap:8px;
  max-width:780px;
  margin:18px 0 22px;
  padding-left:22px;
  color:var(--muted);
  font-size:1.05rem;
  font-weight:300;
  line-height:1.75;
}
.avv-page .avv-parties{
  margin:0 0 58px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
}
.avv-page .avv-parties p{
  margin:0 0 16px;
}
.avv-page .avv-parties p:last-child{
  margin-bottom:0;
}
@media (max-width:820px){
  .avv-page .avv-index nav{
    max-height:none;
    overflow:visible;
    padding-right:0;
  }
  .avv-page .legal-list{
    font-size:1rem;
  }
}

/* Final typography refinement – content hierarchy only
   Headings/questions: Medium (500)
   Explanatory/body text: Light (300)
   No changes to sizing, spacing, colors or layout. */
h1,
h2,
h3,
.faq-question,
.form-section-heading h3,
.subsection-heading span,
.plan-card h2,
.value-card h3,
.discovery-item h3,
.workflow-step h3,
.insight-answer h3,
.legal-section h2,
.legal-section h3,
.success-card h1{
  font-weight:500;
}

p,
.hero-text,
.plan-description,
.billing-term-note,
.form-notice,
.faq-answer p,
.legal-hero-copy,
.legal-section p,
.legal-section address,
.success-card p{
  font-weight:300;
}


/* V21 – unified content typography
   Headings/questions: Rubik Medium (500)
   Explanatory/body copy: same typographic base as FAQ questions, Rubik Light (300)
   UI labels, buttons, pricing figures and decorative text remain unchanged. */

/* Content headings / questions */
h1, h2, h3,
.faq-question,
.form-section-heading h3,
.subsection-heading span,
.plan-card h2,
.value-card h3,
.discovery-item h3,
.workflow-step h3,
.insight-answer h3,
.legal-section h2,
.legal-section h3,
.success-card h1 {
  font-weight: 500;
}

/* Standard explanatory copy – aligned to the former FAQ-question type scale */
p,
.faq-answer p,
.plan-description,
.analysis-story-copy p:last-child,
.product-detail-copy p,
.value-card p,
.discovery-item p,
.workflow-step p,
.trust-copy p,
.reference-card blockquote,
.billing-term-note,
.form-notice,
.legal-hero-copy,
.legal-section p,
.legal-section address,
.legal-list,
.success-card p {
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: normal;
}

/* FAQ answer should visually match the question's base typography exactly,
   differing only by the lighter weight and paragraph line-height. */
.faq-answer p {
  color: var(--ink);
  line-height: 1.9;
}

/* V22 – section-intro spacing polish
   Scope: homepage content sections only.
   Goal: less bulky pricing intro and a calmer, consistent vertical rhythm
   between eyebrow, headline, explanatory copy and following visual/content. */

/* Pricing intro: reduce visual bulk and give the content more breathing room. */
.pricing-intro-inner{
  max-width:1120px;
}
.pricing-intro h1{
  max-width:1120px;
  margin:0 0 40px;
  font-size:clamp(3rem,4.8vw,5.25rem);
  line-height:1.06;
}
.pricing-intro-copy{
  max-width:720px;
  margin:0;
}
.pricing-intro .billing-toggle{
  margin-top:52px;
}
.pricing-intro .billing-term-note{
  margin-top:18px;
}

/* Reusable homepage section rhythm: eyebrow -> headline -> explanatory copy. */
.statement .eyebrow,
.section-heading .eyebrow,
.product-detail-copy .eyebrow,
.trust-copy .eyebrow,
.faq-intro .eyebrow,
.final-cta-inner .eyebrow{
  margin-bottom:24px;
}

.statement h2,
.section-heading h2,
.product-detail-copy h2,
.trust-copy h2,
.faq-intro h2,
.final-cta-inner h2{
  margin-top:0;
  margin-bottom:40px;
}

.statement p:last-child,
.section-heading > p:last-child,
.product-detail-copy > p:not(.eyebrow),
.trust-copy > p:not(.eyebrow),
.faq-intro > p:not(.eyebrow),
.final-cta-inner > p:not(.eyebrow){
  margin-top:0;
}

/* More space before the visual / functional content that follows an intro. */
.section-heading{
  margin-bottom:72px;
}
.product-detail-copy .check-list{
  margin-top:48px;
}
.trust-copy > p:not(.eyebrow){
  margin-bottom:0;
}
.faq-intro .faq-contact-link{
  display:inline-block;
  margin-top:32px;
}
.final-cta-inner .button{
  margin-top:28px;
}

/* Two-column sections benefit from slightly more separation at desktop size. */
@media (min-width:821px){
  .product-detail-grid,
  .trust-grid{
    gap:clamp(64px,8vw,120px);
  }
}

/* Keep the same rhythm on smaller screens without creating oversized gaps. */
@media (max-width:820px){
  .pricing-intro h1{
    margin-bottom:30px;
    font-size:clamp(2.8rem,12vw,4.2rem);
  }
  .pricing-intro .billing-toggle{
    margin-top:40px;
  }
  .statement h2,
  .section-heading h2,
  .product-detail-copy h2,
  .trust-copy h2,
  .faq-intro h2,
  .final-cta-inner h2{
    margin-bottom:30px;
  }
  .section-heading{
    margin-bottom:56px;
  }
  .product-detail-copy .check-list{
    margin-top:38px;
  }
}


/* V29 – SaaS-Leistungsbeschreibung
   Ausschließlich gekapselte Styles für service-description.html. */
.service-description-page .service-meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px 28px;
  margin-top:34px;
  color:rgba(255,255,255,.56);
  font-size:.78rem;
  font-weight:300
}
.service-description-page .service-meta strong{color:rgba(255,255,255,.84);font-weight:500}
.service-description-page .service-index a{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}
.service-description-page .service-index a span{color:var(--accent);font-size:.68rem}
.service-description-page .service-callout{
  margin:0 0 54px;
  padding:24px 28px;
  border-left:3px solid var(--accent);
  background:#f2efe8
}
.service-description-page .service-callout p{margin:0;color:var(--muted);font-size:1rem;line-height:1.8;font-weight:300}
.service-description-page .service-callout strong{color:var(--ink);font-weight:500}
.service-description-page .service-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  margin:32px 0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--line)
}
.service-description-page .service-facts>div{padding:22px 24px;background:#fff}
.service-description-page .service-facts span{display:block;margin-bottom:8px;color:var(--muted);font-size:.78rem;font-weight:300}
.service-description-page .service-facts strong{display:block;color:var(--ink);font-size:1rem;font-weight:500}
.service-description-page .service-placeholder-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:34px 0
}
.service-description-page .service-placeholder-grid article{
  padding:24px;
  border:1px dashed rgba(159,144,120,.56);
  border-radius:14px;
  background:#f3f0e8
}
.service-description-page .service-placeholder-grid article>span{
  display:block;
  margin-bottom:12px;
  color:var(--accent);
  font-size:.68rem;
  font-weight:300;
  letter-spacing:.12em;
  text-transform:uppercase
}
.service-description-page .service-placeholder-grid h3{margin:0 0 12px;color:var(--ink);font-size:1rem;font-weight:500;line-height:1.4}
.service-description-page .service-placeholder-grid p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.7;font-weight:300}
.service-description-page .service-limit-table{
  margin:32px 0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff
}
.service-description-page .service-limit-row{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:24px;
  padding:18px 22px;
  border-bottom:1px solid var(--line);
  align-items:start
}
.service-description-page .service-limit-row:last-child{border-bottom:0}
.service-description-page .service-limit-row span{color:var(--muted);font-size:.95rem;font-weight:300;line-height:1.55}
.service-description-page .service-limit-row strong{color:var(--ink);font-size:.95rem;font-weight:500;line-height:1.55}
.service-description-page .service-limit-head{background:#f2efe8}
.service-description-page .service-limit-head span{color:var(--ink);font-size:.76rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.service-description-page .service-list{margin-top:26px}
@media (max-width:820px){
  .service-description-page .service-facts,
  .service-description-page .service-placeholder-grid{grid-template-columns:1fr}
  .service-description-page .service-limit-row{grid-template-columns:1fr;gap:6px}
  .service-description-page .service-callout{margin-bottom:42px;padding:20px 22px}
}

/* V30 Security hardening: status colors without inline styles (CSP style-src-attr 'none'). */
#form-status.is-error{color:#a94747}
#form-status.is-success{color:#4f7b57}


/* V35 – Analysis stories: final text color override */
.analysis-stories .analysis-story-copy > p:not(.eyebrow) {
  color: #fff !important;
}

.analysis-stories .eyebrow{color:#b8aa91}

/* Product Detail – erweiterte Vertragsanalyse */
.product-detail-analysis .check-list{
  gap:22px;
}

.product-detail-analysis .check-list li{
  padding-left:0;
}

.product-detail-analysis .check-list li::before{
  content:none;
}

.product-detail-analysis .check-list li > strong{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.4;
  font-weight:500;
}

.product-detail-analysis .analysis-number{
  flex:0 0 auto;
  color:var(--accent);
  font-size:.7rem;
  font-weight:500;
  letter-spacing:.04em;
}

.product-detail-analysis .analysis-divider{
  flex:0 0 auto;
  color:var(--accent);
  font-weight:300;
}

.product-detail-analysis .check-list li > p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.55;
  font-weight:300;
}

.product-detail-analysis .check-list li.reveal:nth-child(1){
  transition-delay:0ms;
}

.product-detail-analysis .check-list li.reveal:nth-child(2){
  transition-delay:80ms;
}

.product-detail-analysis .check-list li.reveal:nth-child(3){
  transition-delay:160ms;
}

.product-detail-analysis .check-list li.reveal:nth-child(4){
  transition-delay:240ms;
}
/* Value Section – Entscheidungsgrundlage */
.value-decision{
  padding-top:88px;
  padding-bottom:88px;
}

.value-decision .value-intro{
  margin-bottom:64px;
}

.value-decision .value-card{
  position:relative;
  overflow:hidden;
  min-height:280px;
  padding:30px 32px;
  background:#F7F4EE;
  border-color:rgba(159,144,120,.28);
}

.value-decision .value-number{
  display:block;
  margin-bottom:30px;
  color:var(--accent);
  font-size:.72rem;
  font-weight:500;
  letter-spacing:.06em;
}

.value-decision .value-number::after{
  content:"";
  display:block;
  width:32px;
  height:1px;
  margin-top:14px;
  background:var(--accent);
  opacity:.6;
}

.value-decision .value-card h3{
  margin:0 0 36px;
}

.value-decision .value-card-accent{
  background:#252525;
  border-color:#252525;
}

.value-decision .value-card-accent .value-number{
  color:#DDD7C8;
}

.value-decision .value-card-accent .value-number::after{
  background:#DDD7C8;
  opacity:.45;
}

.value-decision .value-card-accent h3{
  color:#FFFFFF;
}

.value-decision .value-card-accent p{
  color:rgba(255,255,255,.72);
}
}

/* Trust Section – LegalFusion */
.trust .trust-copy > p:last-child{
  max-width:560px;
}

.trust-facts div{
  align-items:start;
}

.trust-facts span{
  padding-top:3px;
  color:var(--accent);
  font-size:.72rem;
  font-weight:500;
}

.trust-facts p{
  display:grid;
  gap:8px;
}

.trust-facts strong{
  color:var(--ink);
  font-size:1rem;
  font-weight:500;
  line-height:1.4;
}

.trust-facts small{
  max-width:520px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:300;
  line-height:1.65;
}
}


/* References – Editorial */
.references-editorial .references-heading{
  max-width:900px;
  margin-bottom:72px;
}

.references-editorial-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--line);
}

.reference-voice{
  display:flex;
  flex-direction:column;
  min-height:330px;
  padding:36px 44px 40px 0;
}

.reference-voice:nth-child(2){
  padding-left:44px;
  padding-right:0;
  border-left:1px solid var(--line);
}

.reference-voice-label{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:42px;
}

.reference-voice-label span{
  color:var(--accent);
  font-size:.72rem;
  font-weight:500;
}

.reference-voice-label p{
  margin:0;
  color:var(--accent);
  font-size:.72rem;
  font-weight:400;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.reference-voice blockquote{
  max-width:540px;
  margin:0;
  color:var(--ink);
  font-size:1.2rem;
  font-weight:300;
  line-height:1.65;
}

.reference-voice .reference-meta{
  margin-top:auto;
  padding-top:40px;
}

.reference-voice-featured{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(180px,.45fr) minmax(0,1.25fr) minmax(190px,.4fr);
  gap:48px;
  align-items:start;
  min-height:0;
  padding:48px 0 12px;
  border-top:1px solid var(--line);
}

.reference-voice-featured .reference-voice-label{
  margin:0;
}

.reference-voice-featured blockquote{
  max-width:760px;
  font-size:clamp(1.45rem,2.2vw,2rem);
  line-height:1.5;
}

.reference-voice-featured .reference-meta{
  margin:0;
  padding:4px 0 0;
}

@media (max-width:800px){
  .references-editorial-grid{
    grid-template-columns:1fr;
  }

  .reference-voice,
  .reference-voice:nth-child(2){
    min-height:0;
    padding:32px 0;
    border-left:0;
    border-bottom:1px solid var(--line);
  }

  .reference-voice-featured{
    grid-column:auto;
    grid-template-columns:1fr;
    gap:28px;
    padding:36px 0 0;
    border-top:0;
    border-bottom:0;
  }

  .reference-voice .reference-meta{
    margin-top:32px;
    padding-top:0;
  }
}

/* Final CTA – Dark */
.final-cta-dark{
  background:#252525;
}

.final-cta-dark .eyebrow{
  color:#DDD7C8;
}

.final-cta-dark h1{
  color:rgba(255,255,255,.92);
}

.final-cta-dark .final-cta-inner > p:not(.eyebrow){
  color:rgba(255,255,255,.72);
}

.final-cta-dark .button-light{
  background:#F7F4EE;
  color:#252525;
  border-color:#F7F4EE;
}

.final-cta-dark .button-light:hover{
  background:#DDD7C8;
  border-color:#DDD7C8;
}

/* Problem Section – Dark Contrast
   Scoped exclusively to #problem. */
#problem{
  background:#5F5A52;
}

#problem .eyebrow{
  color:#DDD7C8;
}

#problem h1,
#problem h2{
  color:#FFFFFF;
}

#problem p:last-child{
  color:rgba(255,255,255,.72);
}



.plan-card{min-height:650px;padding:38px 26px 30px}
    .plan-description{min-height:118px}
  .plan-card h2{font-size:clamp(1.35rem,1.55vw,1.75rem)}
}
.pricing-disclaimer{
  max-width:900px;
  margin:28px auto 0;
  color:var(--muted);
  font-size:.74rem;
  line-height:1.65;
  text-align:center;
}
.essential-confirmation[hidden]{display:none}


/* Pricing – individual requirements note (Enterprise card removed) */
.pricing-custom-note{
  max-width:920px;
  margin:34px auto 0;
  padding:24px 28px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  text-align:center;
}
.pricing-custom-note p{
  margin:0;
  font-size:.86rem;
  line-height:1.65;
}
.pricing-custom-note strong{color:var(--ink);font-weight:500}
.pricing-custom-note a{
  color:var(--ink);
  border-bottom:1px solid rgba(27,27,26,.35);
}
.pricing-custom-note a:hover{border-bottom-color:var(--ink)}


/* Checkout finalization */
.start-info{align-content:start;padding-top:1px}.field-label{font-size:.73rem;font-weight:400}.start-info strong{font-size:.88rem;font-weight:500;color:var(--ink)}.start-info small{max-width:330px;color:var(--muted);font-size:.67rem;line-height:1.45}.inline-check{display:flex;align-items:center;gap:9px;margin-top:2px;color:var(--muted);font-size:.7rem}.inline-check input{width:16px;min-height:16px;margin:0}.final-order-block{margin-top:8px}.final-order-heading{margin-bottom:24px}.final-order-heading span{display:block;color:var(--ink);font-size:1rem;font-weight:500}.final-order-heading p{margin:5px 0 0;font-size:.74rem}.final-order-section{margin-bottom:24px}

/* V30 – AGB editorial alignment
   Layout-only refinement. Fully scoped to .agb-page so the homepage and other
   legal pages remain unchanged. The AGB wording itself is not modified. */
.agb-page .legal-hero{
  min-height:500px;
  padding:clamp(158px,12vw,196px) 0 clamp(82px,7vw,108px);
}
.agb-page .legal-hero-inner{
  max-width:1120px;
}
.agb-page .legal-hero h1{
  max-width:860px;
  margin-bottom:26px;
  font-size:clamp(3rem,5vw,4.8rem);
  line-height:1.04;
  font-weight:400;
}
.agb-page .legal-hero-copy{
  max-width:760px;
  font-size:1rem;
  line-height:1.7;
}
.agb-page .legal-content{
  padding:clamp(88px,7vw,118px) 0 clamp(120px,9vw,164px);
}
.agb-page .legal-layout{
  grid-template-columns:minmax(220px,250px) minmax(0,850px);
  justify-content:space-between;
  gap:clamp(56px,7vw,104px);
}
.agb-page .agb-index{
  top:108px;
  padding-top:0;
}
.agb-page .agb-index>p{
  margin-bottom:22px;
  font-size:.68rem;
  letter-spacing:.18em;
}
.agb-page .agb-index nav{
  max-height:calc(100vh - 158px);
  padding:0 10px 0 0;
  border-top:0;
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(159,144,120,.45) transparent;
}
.agb-page .agb-index a{
  position:relative;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  padding:11px 6px 11px 0;
  border-bottom:1px solid rgba(27,27,26,.08);
  color:#706c65;
  font-size:.72rem;
  line-height:1.42;
  transition:color var(--ease),transform var(--ease);
}
.agb-page .agb-index a:first-child{
  border-top:1px solid rgba(27,27,26,.08);
}
.agb-page .agb-index a:hover,
.agb-page .agb-index a:focus-visible{
  padding-left:0;
  color:var(--ink);
  transform:translateX(3px);
}
.agb-page .agb-index a span{
  padding-top:1px;
  color:var(--accent);
  font-size:.62rem;
  letter-spacing:.06em;
}
.agb-page .agb-document{
  width:100%;
  max-width:850px;
}
.agb-page .legal-section{
  margin:0 0 58px;
  padding:0 0 58px;
  border-bottom:1px solid rgba(27,27,26,.10);
  scroll-margin-top:116px;
}
.agb-page .legal-section-number{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
  color:var(--accent);
  font-size:.65rem;
  letter-spacing:.18em;
}
.agb-page .legal-section-number::after{
  content:"";
  width:42px;
  height:1px;
  background:rgba(159,144,120,.46);
}
.agb-page .legal-section h2{
  margin-bottom:26px;
  color:var(--ink);
  font-size:clamp(1.85rem,2.6vw,2.55rem);
  line-height:1.12;
  font-weight:400;
}
.agb-page .legal-list{
  display:grid;
  gap:11px;
  max-width:820px;
  margin:0;
  padding-left:1.25rem;
  color:#625f59;
  font-size:1rem;
  font-weight:300;
  line-height:1.78;
}
.agb-page .legal-list li{
  padding-left:.16rem;
}
.agb-page .legal-list li::marker{
  color:var(--accent);
  font-size:.72em;
}
.agb-page .legal-list + p,
.agb-page .legal-section p + .legal-list{
  margin-top:20px;
}

@media (max-width:980px){
  .agb-page .legal-layout{
    grid-template-columns:minmax(190px,220px) minmax(0,1fr);
    gap:48px;
  }
  .agb-page .legal-list{
    font-size:.96rem;
  }
}
@media (max-width:820px){
  .agb-page .legal-hero{
    min-height:440px;
    padding-top:142px;
  }
  .agb-page .legal-layout{
    grid-template-columns:1fr;
    gap:54px;
  }
  .agb-page .agb-index{
    position:static;
  }
  .agb-page .agb-index nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-height:none;
    padding-right:0;
    column-gap:26px;
  }
  .agb-page .legal-document{
    max-width:none;
  }
}
@media (max-width:560px){
  .agb-page .legal-hero h1{
    font-size:clamp(2.55rem,12vw,3.35rem);
  }
  .agb-page .agb-index nav{
    grid-template-columns:1fr;
  }
  .agb-page .legal-section{
    margin-bottom:42px;
    padding-bottom:42px;
  }
  .agb-page .legal-list{
    font-size:.95rem;
    line-height:1.72;
  }
}

/* V – Homepage section rhythm refinement
   Color-only adjustment after section reordering.
   No content, layout, spacing, typography or behavior changes. */

/* Hero remains the single dark opening chapter. */

/* Analysis stories join the following pricing area as one calm light chapter. */
.analysis-stories{
  background:#f2efe8;
  color:var(--ink);
}
.analysis-stories .analysis-story-copy h1,
.analysis-stories .analysis-story-copy h2{
  color:var(--muted);
}
.analysis-stories .analysis-story-copy > p:not(.eyebrow),
.analysis-stories .analysis-story-copy p:last-child{
  color:var(--muted);
}
.analysis-stories .eyebrow{
  color:var(--accent);
}
.analysis-stories .analysis-story-visual{
  border-color:rgba(27,27,26,.10);
  box-shadow:0 30px 70px rgba(27,27,26,.10);
}
.analysis-stories .hero-footer{
  color:rgba(27,27,26,.42);
}
.analysis-stories .hero-footer div{
  background:rgba(27,27,26,.14);
}

/* Pricing remains in the same light chapter. */
.pricing-intro,
.plans-section{
  background:#f2efe8;
}

/* Checkout stays warm but close enough to the pricing surface to avoid striping. */
.checkout-section{
  background:#ece8df;
}

/* Problem + workflow form one continuous calm editorial chapter. */
#problem,
.statement.section-muted,
.workflow.section-dark{
  background:#f7f5f0;
  color:var(--ink);
}
#problem .eyebrow,
.workflow.section-dark .eyebrow{
  color:var(--accent);
}
#problem h1,
#problem h2,
.workflow.section-dark h1,
.workflow.section-dark h2,
.workflow.section-dark h3{
  color:var(--muted);
}
#problem p:last-child,
.workflow.section-dark .section-heading > p:not(.eyebrow),
.workflow.section-dark .workflow-step p{
  color:var(--muted);
}
.workflow.section-dark .workflow-grid,
.workflow.section-dark .workflow-step{
  border-color:var(--line);
}

/* Deliberate dark product feature / future video chapter. */
.product-detail-analysis{
  background:#1d1e1d;
  color:#fff;
}
.product-detail-analysis .eyebrow,
.product-detail-analysis .analysis-number,
.product-detail-analysis .analysis-divider{
  color:#b8aa91;
}
.product-detail-analysis h1,
.product-detail-analysis h2,
.product-detail-analysis h3{
  color:rgba(255,255,255,.78);
}
.product-detail-analysis .product-detail-copy > p:not(.eyebrow),
.product-detail-analysis .check-list li > strong,
.product-detail-analysis .check-list li > p{
  color:rgba(255,255,255,.68);
}
.product-detail-analysis .insight-card{
  background:#f2efe8;
  color:var(--ink);
}
.product-detail-analysis .insight-card h1,
.product-detail-analysis .insight-card h2,
.product-detail-analysis .insight-card h3,
.product-detail-analysis .insight-card p,
.product-detail-analysis .insight-card strong,
.product-detail-analysis .insight-card span{
  color:inherit;
}

/* Trust + references remain one continuous light chapter. */
.trust,
.references-section.references-editorial{
  background:#f7f5f0;
}

/* V – Section palette refinement
   Color-only: adjacent content sections receive distinct, restrained surfaces.
   No content, layout, spacing, typography or behavior changes. */
.analysis-stories{
  background:#f7f5f0;
}
.pricing-intro,
.plans-section{
  background:#f0ede6;
}
.checkout-section{
  background:#e6e1d7;
}
#problem,
.statement.section-muted{
  background:#f4f1ea;
}
.workflow.section-dark{
  background:#e9e4da;
  color:var(--ink);
}
.product-detail-analysis{
  background:#1d1e1d;
}
.trust{
  background:#e8e3d9;
}
.references-section.references-editorial{
  background:#f7f5f0;
}
.final-cta-dark{
  background:#252525;
}
.faq-section{
  background:#f1eee7;
}

/* Product Detail – video placeholder */
.product-video{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9;
  align-self:center;
  border:1px solid rgba(27,27,26,.10);
  border-radius:14px;
  background:#111;
  box-shadow:0 30px 80px rgba(27,27,26,.10);
}

.product-video video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#111;
}

/* V – Analysis stories: improved paragraph contrast on light background */
.analysis-stories .analysis-story-copy > p:not(.eyebrow),
.analysis-stories .analysis-story-copy p:last-child{
  color:#5a5751 !important;
}


/* Checkout: direkte Bestellung ist auf eine Nutzerlizenz begrenzt. */


/* AP3 – Embedded Whop Checkout prototype */
.payment-stage{
  width:min(calc(100% - 48px),var(--shell));
  margin:0 auto;
  padding:10px 0 0;
}
.payment-stage[hidden]{display:none}
.payment-stage-header{
  max-width:760px;
  margin:0 0 34px;
}
.payment-stage-header h2{
  margin:0 0 16px;
  color:var(--ink);
}
.payment-stage-header p:not(.eyebrow){
  margin:0;
  max-width:680px;
}
.payment-stage-card{
  overflow:hidden;
  max-width:860px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:var(--shadow);
}
#whop-embedded-checkout{
  min-height:560px;
}
@media (max-width:720px){
  .payment-stage{
    width:min(calc(100% - 32px),var(--shell));
  }
  .payment-stage-card{
    border-radius:10px;
  }
}
