/* Ventega refinement v11: responsive integrity, premium colour roles and differentiated sections. */
:root,
html[data-theme="dark"],
html[data-theme="dark"] body{
  --accent-secondary:#d9b66f;
  --accent-secondary-rgb:217,182,111;
  --champagne:#d9b66f;
  --champagne-rgb:217,182,111;
  --good:#d9b66f;
}

html[data-theme="light"],
html[data-theme="light"] body{
  --bg:#f8f5f0;
  --bg-elev:#fffdf9;
  --surface:#fffdfb;
  --surface-2:#f3efe9;
  --border:#d8cfe1;
  --border-soft:#e8e0e7;
  --text:#25222a;
  --muted:#58535d;
  --faint:#706875;
  --accent-secondary:#9a6f25;
  --accent-secondary-rgb:154,111,37;
  --champagne:#a87825;
  --champagne-rgb:168,120,37;
  --good:#8c651f;
}

/* Wide screens get a deliberate left/right split instead of a centred cluster. */
.nav-inner{
  width:100%;
  max-width:none!important;
  padding-inline:clamp(18px,3.2vw,58px)!important;
  flex-wrap:nowrap!important;
}
.wordmark{flex:0 0 auto}
.nav-links{
  margin-left:auto;
  justify-content:flex-end;
  flex-wrap:nowrap!important;
  gap:clamp(12px,1.3vw,22px)!important;
}
@media(max-width:1120px){
  .nav-inner{padding-inline:22px!important}
  .nav-links{gap:11px!important}
  .nav-links>a{font-size:12.5px!important}
  .vt-display-btn{padding-inline:9px}
}
@media(max-width:860px){
  .nav-inner{flex-wrap:wrap!important;padding-inline:clamp(16px,4vw,24px)!important}
  .nav-links{margin-left:0;flex-wrap:wrap!important;justify-content:flex-start}
}

/* Real responsive sizing: children may shrink instead of being clipped. */
html,body{max-width:100%;overflow-x:clip}
.wrap{min-width:0;width:100%;max-width:1180px;margin-inline:auto}
main,section,.grid,.results-col,.panel,.below,.cards,.pc-shell,.pc-card,.pc-step{min-width:0;max-width:100%}
img,video{max-width:100%;height:auto}
svg{max-width:100%}
.grid>*{min-width:0}
@media(max-width:900px){.grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:600px){
  .wrap{width:100%;padding-inline:clamp(16px,5vw,20px)!important;padding-bottom:56px}
  section{padding-top:64px}
  .panel-head{padding:18px 17px 13px}
  .panel-body,.reco-body{padding:18px 17px 21px}
  .field-row{gap:12px;align-items:flex-start}
  .field-row label{min-width:0;overflow-wrap:anywhere}
  .svc{grid-template-columns:24px minmax(0,1fr);padding:14px 16px;gap:6px 10px}
  .svc-saving{grid-column:2;text-align:left;white-space:normal}
  .svc-bar{grid-column:2}
  .cmp,.path{padding-inline:16px}
  .cmp-note,.cmp-net{padding-inline:17px}
  .cta,.solution,.final-cta{padding-inline:20px!important}
  .hero-ctas,.calc-ctas{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:360px;margin-inline:auto}
  .hero-ctas .btn,.calc-ctas .btn{width:100%;white-space:normal;text-align:center}
  .pc-choice-title{align-items:flex-start;flex-wrap:wrap}
  .pc-status-badge{margin-left:27px}
}

/* Mobile-only, accessible disclosure sections are built by refinement-v11.js. */
.vt-mobile-details{border:0;margin:0;padding:0}
.vt-mobile-summary{display:none}
@media(max-width:640px){
  .home-page .hero-site{padding-bottom:12px}
  .home-page section{padding-top:58px}
  .home-page .sec-head{margin-bottom:26px}
  .home-page .cards{gap:11px}
  .home-page .card{padding:18px 18px 42px}
  .vt-mobile-details{margin-top:20px;border:1px solid var(--border-soft);border-radius:15px;background:color-mix(in srgb,var(--surface) 82%,transparent)}
  .vt-mobile-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;color:var(--text);font:650 14px/1.35 'Sora',sans-serif;cursor:pointer;list-style:none}
  .vt-mobile-summary::-webkit-details-marker{display:none}
  .vt-mobile-summary::after{content:'+';color:var(--violet-bright);font:500 22px/1 'IBM Plex Mono',monospace}
  .vt-mobile-details[open]>.vt-mobile-summary::after{content:'−'}
  .vt-mobile-details>.below,.vt-mobile-details>.cards,.vt-mobile-details>.vt-detail-stack{margin-top:0;padding:0 12px 14px}
  .vt-mobile-details>.below{gap:16px}
  .vt-mobile-details>.cards{display:grid}
  .vt-calc-details>.below>.panel,.vt-calc-details>.below>.cta{border-radius:12px}
  .vt-process-details>.vt-detail-stack{display:grid;gap:14px}
}

/* Violet owns the brand; champagne/gold is the restrained secondary state colour. */
html[data-theme="light"] .pc-field input:focus,
html[data-theme="light"] .pc-field select:focus,
html[data-theme="light"] .pc-field textarea:focus{
  border-color:var(--accent-secondary)!important;
  box-shadow:0 0 0 3px rgba(var(--accent-secondary-rgb),.13)!important;
}
html[data-theme="light"] .pc-choice input:checked+.pc-choice-body,
html[data-theme="light"] .pc-radio input:checked+span{
  border-color:var(--accent-secondary)!important;
  background:linear-gradient(145deg,rgba(var(--accent-secondary-rgb),.10),rgba(109,63,224,.055))!important;
}
html[data-theme="light"] .pc-choice input:checked+.pc-choice-body .pc-choice-title::before{
  border-color:var(--accent-secondary);background:var(--accent-secondary);box-shadow:inset 0 0 0 4px #fff;
}
html[data-theme="light"] .service-card-available .service-status-badge,
html[data-theme="light"] .pc-choice-available .pc-status-badge{
  color:#725018!important;border-color:rgba(var(--accent-secondary-rgb),.42)!important;background:rgba(var(--accent-secondary-rgb),.10)!important;
}
html[data-theme="light"] .service-card-available{
  border-color:rgba(var(--accent-secondary-rgb),.28)!important;
  box-shadow:0 16px 42px rgba(91,67,28,.055),inset 0 2px 0 rgba(var(--accent-secondary-rgb),.36)!important;
}
html[data-theme="light"] .service-card-available .more,
html[data-theme="light"] .pc-kicker,
html[data-theme="light"] .home-usecase-item b{color:var(--accent-secondary)!important}
html[data-theme="light"] .pc-progress-fill{
  background:linear-gradient(90deg,var(--violet),var(--accent-secondary))!important;
}
html[data-theme="light"] .pc-success-icon{color:var(--accent-secondary);border-color:rgba(var(--accent-secondary-rgb),.38);background:rgba(var(--accent-secondary-rgb),.09)}
html[data-theme="light"] .panel,
html[data-theme="light"] .card,
html[data-theme="light"] .stage-card,
html[data-theme="light"] .prob-card{
  box-shadow:0 16px 42px rgba(91,67,28,.065);
}

/* Remove the former turquoise success/state palette everywhere. */
.service-card-available .service-status-badge,
.pc-choice-available .pc-status-badge,
.badge-base,.pg,.pc-success-icon{
  color:var(--champagne)!important;border-color:rgba(var(--champagne-rgb),.40)!important;background:rgba(var(--champagne-rgb),.10)!important;
}
.chip::before,.cmp-col b{color:var(--champagne)!important}
.amp-g{background:rgba(var(--champagne-rgb),.08)!important;border-color:rgba(var(--champagne-rgb),.38)!important}
.amp-g .tag,.amp-g h3,.amp-g p,.amp-g .bsp{color:var(--champagne)!important;border-color:rgba(var(--champagne-rgb),.28)!important}
[style*="79,143,99"]{border-color:rgba(var(--champagne-rgb),.38)!important}
/* Calculator tiers V16: gold/champagne is reserved for "Höchstes Potenzial"
   (max. three services), "Sinnvoll" uses the Ventega violet, low leverage
   stays neutral and restrained. */
.badge-gold{color:var(--champagne)!important;border:1px solid rgba(var(--champagne-rgb),.45)!important;background:rgba(var(--champagne-rgb),.12)!important}
.badge-useful{color:var(--violet-bright)!important;border:1px solid rgba(139,92,246,.35)!important;background:rgba(139,92,246,.12)!important}
.badge-low{color:var(--faint);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 78%,transparent)}
.svc.tier-gold{background:linear-gradient(90deg,rgba(var(--champagne-rgb),.075),transparent 62%);box-shadow:inset 3px 0 0 rgba(var(--champagne-rgb),.55)}
.svc.tier-gold .svc-saving{color:var(--champagne)}
.svc.tier-gold .svc-bar i{background:linear-gradient(90deg,rgba(var(--champagne-rgb),.85),var(--champagne))}
.svc.tier-low{opacity:.46}

/* Deliberate champagne micro-accents: labels, dividers and selected highlights. */
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .process-domain::before,
html[data-theme="dark"] .home-usecase-item b,
html[data-theme="dark"] .home-person span{color:var(--champagne)}
.service-group-head::after{
  content:'';display:block;flex:1 1 80px;height:1px;margin-bottom:8px;
  background:linear-gradient(90deg,rgba(var(--champagne-rgb),.48),transparent);
}
.card,.panel,.stage-card,.legal-card{border-top-color:rgba(var(--champagne-rgb),.18)}

/* Continue the homepage accent language on every overview, detail, legal and
   check page without turning the surfaces into a gold theme. */
body:not(.home-page) .page-hero .eyebrow,
body:not(.home-page) .sec-head .eyebrow,
body:not(.home-page) .pc-kicker,
body:not(.home-page) .legal-kicker{
  color:var(--champagne)!important;
}
body:not(.home-page) .page-intro{
  border-top-color:rgba(var(--champagne-rgb),.42)!important;
  background:linear-gradient(135deg,rgba(var(--champagne-rgb),.075),rgba(109,63,224,.075),color-mix(in srgb,var(--surface) 86%,transparent))!important;
  box-shadow:inset 0 1px 0 rgba(var(--champagne-rgb),.22),0 18px 48px rgba(3,1,9,.10);
}
body:not(.home-page) .sec-head::after{
  content:'';display:block;width:min(190px,34vw);height:1px;margin-top:18px;
  background:linear-gradient(90deg,rgba(var(--champagne-rgb),.58),rgba(139,92,246,.34),transparent);
}
body:not(.home-page) :is(.card,.panel,.stage-card,.next-card,.process-domain,.pc-card,.legal-card,.service-development-notice){
  border-top-color:rgba(var(--champagne-rgb),.28)!important;
  box-shadow:inset 0 1px 0 rgba(var(--champagne-rgb),.12),0 18px 46px rgba(3,1,9,.08);
}
body:not(.home-page) .next-card>span,
body:not(.home-page) .more{color:var(--champagne)!important}
body:not(.home-page) .btn-ghost{border-color:rgba(var(--champagne-rgb),.24)}
body:not(.home-page) footer{position:relative;border-top-color:rgba(var(--champagne-rgb),.20)}
body:not(.home-page) footer::before{
  content:'';position:absolute;left:10%;right:10%;top:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(var(--champagne-rgb),.54),rgba(139,92,246,.30),transparent);
}
body:not(.home-page) .legal h2,
body:not(.home-page) .legal-card h2{border-left-color:rgba(var(--champagne-rgb),.62)!important}
html[data-theme="light"] body:not(.home-page) .page-hero .eyebrow,
html[data-theme="light"] body:not(.home-page) .sec-head .eyebrow,
html[data-theme="light"] body:not(.home-page) .pc-kicker,
html[data-theme="light"] body:not(.home-page) .legal-kicker{color:var(--accent-secondary)!important}
html[data-theme="light"] body:not(.home-page) :is(.card,.panel,.stage-card,.next-card,.process-domain,.pc-card,.legal-card,.service-development-notice){
  box-shadow:inset 0 1px 0 rgba(var(--accent-secondary-rgb),.17),0 18px 44px rgba(82,62,37,.075);
}

/* Process-oriented use cases: independent from the people-led About design. */
.process-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;counter-reset:process-domain}
.process-domain{
  position:relative;min-width:0;padding:25px 25px 23px 74px;border:1px solid var(--border-soft);border-radius:16px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--surface-2) 82%,transparent));
  counter-increment:process-domain;
}
.process-domain::before{
  content:counter(process-domain,decimal-leading-zero);position:absolute;left:22px;top:24px;
  color:var(--accent-secondary);font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.08em;
}
.process-domain h3{font:650 17px/1.3 'Sora',sans-serif;margin-bottom:8px}
.process-domain p{color:var(--muted);font-size:14px}
.process-proof{
  margin-top:24px;padding:24px;border:1px solid var(--border);border-radius:16px;text-align:center;
  background:linear-gradient(120deg,rgba(109,63,224,.10),rgba(var(--accent-secondary-rgb),.055),rgba(var(--champagne-rgb),.065));
}
.process-proof strong{display:block;font:650 clamp(18px,2.5vw,25px)/1.35 'Sora',sans-serif}
.process-proof span{display:block;max-width:760px;margin:9px auto 0;color:var(--muted)}
@media(max-width:720px){
  .process-map{grid-template-columns:1fr}
  .process-domain{padding:21px 19px 20px 59px}
  .process-domain::before{left:18px;top:21px}
}

.home-usecase-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.home-usecase-item{position:relative;padding:21px 18px;border:1px solid var(--border-soft);border-radius:14px;background:color-mix(in srgb,var(--surface) 90%,transparent)}
.home-usecase-item::after{content:'→';position:absolute;right:-10px;top:50%;z-index:2;transform:translateY(-50%);color:var(--violet-bright);font:500 18px 'IBM Plex Mono',monospace}
.home-usecase-item:last-child::after{display:none}
.home-usecase-item b{display:block;color:var(--violet-bright);font:600 11px 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px}
.home-usecase-item h3{font:650 15px/1.35 'Sora',sans-serif;margin-bottom:7px}
.home-usecase-item p{color:var(--muted);font-size:13px}
.home-about-story{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:18px;align-items:stretch}
.home-about-copy{padding:clamp(25px,4vw,42px);border:1px solid var(--border-soft);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,transparent),rgba(109,63,224,.07))}
.home-about-copy h2{font:700 clamp(26px,3.4vw,38px)/1.16 'Sora',sans-serif;margin:9px 0 15px}
.home-about-copy p{color:var(--muted);max-width:650px}
.home-about-people{display:flex;flex-direction:column;justify-content:center;padding:26px;border:1px solid rgba(139,92,246,.32);border-radius:18px;background:linear-gradient(155deg,rgba(109,63,224,.18),color-mix(in srgb,var(--surface) 90%,transparent))}
.home-person+.home-person{margin-top:18px;padding-top:18px;border-top:1px solid var(--border-soft)}
.home-person strong{display:block;font:650 16px 'Sora',sans-serif}
.home-person span{display:block;margin-top:4px;color:var(--violet-bright);font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.09em;text-transform:uppercase}
@media(max-width:860px){.home-usecase-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.home-usecase-item:nth-child(2)::after{display:none}.home-about-story{grid-template-columns:minmax(0,1fr)}.home-about-copy,.home-about-people{min-width:0}}
@media(max-width:560px){.home-usecase-flow{grid-template-columns:1fr}.home-usecase-item::after{content:'↓';right:50%;top:auto;bottom:-15px;transform:translateX(50%)}.home-usecase-item:nth-child(2)::after{display:block}.home-usecase-item:last-child::after{display:none}}

/* Calm premium closing surfaces shared by overview and detail pages. */
.final-cta,.final,.process-proof{
  position:relative;isolation:isolate;overflow:hidden;
  border:1px solid rgba(169,126,235,.30)!important;border-radius:20px!important;
  background:
    radial-gradient(80% 125% at 10% 0%,rgba(119,66,214,.19),transparent 63%),
    radial-gradient(62% 115% at 94% 100%,rgba(var(--champagne-rgb),.075),transparent 68%),
    linear-gradient(145deg,rgba(30,17,49,.96),rgba(13,8,24,.97))!important;
  box-shadow:0 24px 62px rgba(3,1,9,.28),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.final-cta::after,.final::after,.process-proof::after{
  content:'';position:absolute;z-index:-1;left:8%;right:8%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(var(--champagne-rgb),.62),rgba(177,124,255,.48),transparent);
}
.final-cta,.final{padding:clamp(38px,5vw,58px) clamp(22px,5vw,50px)!important}
.final h2,.final-cta h2{max-width:720px;margin-inline:auto}
.final p,.final-cta p{max-width:680px;margin:12px auto 24px;color:var(--muted)}
.final .hero-ctas,.final-cta .hero-ctas{justify-content:center}
html[data-theme="dark"] .final-cta .eyebrow,
html[data-theme="dark"] .final .eyebrow{color:var(--champagne)}
html[data-theme="light"] .final-cta,
html[data-theme="light"] .final,
html[data-theme="light"] .process-proof{
  border-color:rgba(145,115,68,.22)!important;
  background:
    radial-gradient(75% 120% at 8% 0%,rgba(var(--accent-secondary-rgb),.075),transparent 64%),
    radial-gradient(62% 120% at 96% 100%,rgba(var(--champagne-rgb),.085),transparent 68%),
    linear-gradient(145deg,rgba(255,253,249,.96),rgba(243,238,232,.95))!important;
  box-shadow:0 24px 58px rgba(82,62,37,.10),inset 0 1px 0 rgba(255,255,255,.88)!important;
}
html[data-theme="light"] .final-cta::after,
html[data-theme="light"] .final::after,
html[data-theme="light"] .process-proof::after{
  background:linear-gradient(90deg,transparent,rgba(var(--accent-secondary-rgb),.58),rgba(var(--champagne-rgb),.48),transparent);
}

/* The embedded check is a quiet entry point; the dedicated page remains available. */
.pc-home-section .pc-shell{max-width:880px}
.pc-home-section .pc-card{border-radius:20px}
@media(max-width:640px){.pc-home-section .pc-step{padding:24px 18px}.pc-home-section .pc-progress{padding-inline:4px}}

/* Mobile title and control integrity, including long legal headings. */
@media(max-width:600px){
  .page-hero,.legal,.legal-shell{min-width:0;max-width:100%}
  .page-hero h1,.legal .page-hero h1{
    max-width:100%;font-size:clamp(25px,8.2vw,34px)!important;line-height:1.12;
    overflow-wrap:anywhere;word-break:normal;hyphens:auto;text-align:center;
  }
  .legal h2{overflow-wrap:anywhere;hyphens:auto}
  .final .hero-ctas,.final-cta .hero-ctas{width:100%;max-width:360px;margin-inline:auto}
  .service-group-head::after{display:none}
}

@media(prefers-reduced-motion:reduce){
  html:not(.motion-force) .process-domain,
  html:not(.motion-force) .home-usecase-item{transition:none!important}
}

/* Ventega AI is run by a single founder: the team grid renders one centred
   card instead of a two-column layout with an empty slot. */
.founders-clean.founders-single{grid-template-columns:minmax(0,320px);justify-content:center;max-width:320px}
@media(max-width:580px){.founders-clean.founders-single{max-width:360px}}
.home-about-people .home-person+.home-person{margin-top:18px}

/* ── Small caps labels: brand sans instead of monospace ───────────────────
   The small gold/violet eyebrow, kicker and section labels used IBM Plex
   Mono, which reads as a technical "AI template" look. They now use the
   project's own brand sans (Sora, already loaded locally – no new font
   file, no web font request). Colour, size, uppercase and spacing stay as
   they are. Numeric readouts (KPI values, savings, counters, code) keep
   their monospace on purpose. */
.eyebrow,
.stage-num,
.kpi-label,
.cmp-col span,
.badge,
.header-tag,
.pc-kicker,
.pc-step-number,
.pc-progress-meta,
.pc-status-badge,
.pc-edit,
.service-status-badge,
.home-usecase-item b,
.home-person span,
.vt-display-group legend,
.amp-g .tag,
.path-step>b,
.founder-clean span{
  font-family:'Sora',system-ui,sans-serif;
  font-weight:600;
  text-transform:uppercase;
}
.eyebrow{letter-spacing:.16em}
.stage-num{letter-spacing:.15em}
.kpi-label,.cmp-col span{letter-spacing:.14em}
.badge,.pc-status-badge,.service-status-badge{letter-spacing:.09em}
.pc-kicker{letter-spacing:.18em}
.pc-step-number{letter-spacing:.15em}
.pc-progress-meta,.vt-display-group legend{letter-spacing:.12em}
.home-usecase-item b,.home-person span{letter-spacing:.12em}
.header-tag{letter-spacing:.1em}
.path-step>b{letter-spacing:.12em}
.founder-clean span{letter-spacing:.11em;text-transform:none}
.pc-edit{text-transform:none;letter-spacing:.02em}

/* ── Potenzialrechner: Ersparnis grün, Kostenrichtwert nach Umfang ──────── */
:root,html[data-theme="dark"],html[data-theme="dark"] body{--success:#5bc98f}
html[data-theme="light"],html[data-theme="light"] body{--success:#1c7a4e}
/* Only the yearly saving turns green; the cost figure keeps its own colour. */
.cmp-col b:not(.cost){color:var(--success)!important}
.cmp-scope{display:block;margin-top:7px;color:var(--muted);font-size:11.5px}
