
:root{
  --navy:#003366;--navy-deep:#0a1f3d;--navy-mid:#0d2f57;--royal:#0066cc;
  --success:#10b981;--success-hover:#059669;--success-deep:#047857;
  --mint:#37d6a8;
  --grad-primary:linear-gradient(135deg,#003366 0%,#001f3f 100%);
  --grad-primary-hover:linear-gradient(135deg,#004080 0%,#002b5e 100%);
  --grad-success:linear-gradient(135deg,#10b981 0%,#059669 100%);
  --grad-success-hover:linear-gradient(135deg,#059669 0%,#047857 100%);
  --sheen:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.09) 50%,transparent 62%);
  --sheen-soft:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.055) 50%,transparent 60%);
  --ink:#16283f;--ink-soft:#42566e;--ink-mute:#71839a;
  --paper:#fff;--cloud:#f4f7fb;--line:#dde6f0;--danger:#e02424;
  --radius:14px;--shadow:0 20px 55px -22px rgba(0,51,102,.28);
  --gbm-pad-x:clamp(20px,4vw,72px);
  --font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:var(--paper);font-size:18px;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}
body.gbm-modal-open{overflow:hidden}
img,svg,video,iframe{max-width:100%}
img{display:block;height:auto}
p{margin:0 0 1em}p:last-child{margin-bottom:0}
h1,h2,h3,h4{line-height:1.15;letter-spacing:-.02em}

/* Goldener Schnitt: Inhalt nutzt ~62 % der Breite, mittig; rechts Platz fuer das Widget */
.wrap{width:100%;max-width:1620px;margin:0 auto;padding-inline:var(--gbm-pad-x)}
@media(min-width:1360px){#flagband ~ section .wrap{padding-right:410px}}
.section{padding:clamp(70px,9vw,118px) 0}
.sec-head{text-align:center;max-width:960px;margin:0 auto clamp(36px,5vw,58px)}
.eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:800;color:var(--royal);margin-bottom:14px}
.eyebrow::before,.eyebrow::after{content:"";height:1px;width:46px;flex:none;background:linear-gradient(90deg,transparent,currentColor);opacity:.5}
.eyebrow::after{background:linear-gradient(90deg,currentColor,transparent)}
.eyebrow.left{justify-content:flex-start}
.eyebrow.left::before{display:none}
/* Ein-Schlagwort-Regel: Ueberschriften einfarbig, genau EIN Schlagwort traegt den Verlauf */
.sec-head h2{font-size:clamp(30px,4.2vw,46px);font-weight:800;color:#132c49}
.sec-head h2.g-navy{color:transparent}
.sec-head .sub{font-size:19px;color:var(--ink-soft);margin-top:16px}
.accent-green{color:var(--success-hover)}

/* Buttons aus den GBM-Design-Vorlagen; Schimmer sehr langsam, dezent, zeitversetzt */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;font-size:16px;border-radius:11px;padding:17px 30px;border:0;cursor:pointer;text-decoration:none;font-family:inherit;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}
/* Schimmer getrennt: Buttons eigener Rhythmus (Sweep alle 8 s), grosse Flaechen traeger (13 s), nie ueber dem Inhalt */
.btn::after,.sheenable::after{content:"";position:absolute;inset:0;background:var(--sheen);transform:translateX(-130%);animation:sheenBtn 8s linear infinite;animation-delay:var(--sd,0s);pointer-events:none;z-index:0}
.sheenable::after{background:var(--sheen-soft);animation:sheenSoft 18s linear infinite;animation-delay:var(--sd,0s)}
.report-card .cover,.report-card .body{position:relative;z-index:1}
@keyframes sheenBtn{0%,74%{transform:translateX(-130%)}94%,100%{transform:translateX(130%)}}
@keyframes sheenSoft{0%,45%{transform:translateX(-130%)}96%,100%{transform:translateX(130%)}}
@keyframes gbmc-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
/* Monochrome Text-Verlaeufe: dunkler Ton -> nur LEICHT hellerer Ton DERSELBEN Farbe, dezent (Regel Sergio) */
.g-navy{background:linear-gradient(115deg,#13304f 0%,#2f5b8f 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-green{background:linear-gradient(115deg,#065f46 0%,#0d9268 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-orange{background:linear-gradient(115deg,#8a3c0d 0%,#c2601b 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-teal{background:linear-gradient(115deg,#0d5f6e 0%,#178ba0 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-gray-light{background:linear-gradient(115deg,#c3d2e3 0%,#e6eef8 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-mint{background:linear-gradient(115deg,#3ecf9f 0%,#8beccb 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.g-gold{background:linear-gradient(115deg,#8a5c0e 0%,#c08f18 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Pulsierende Punkte (Kettner-Muster): sehr langsam, ein kurzer Ping alle 10 s, zeitversetzt */
@keyframes pulseDot{0%{box-shadow:0 0 0 0 rgba(55,214,168,.4)}8%{box-shadow:0 0 0 7px rgba(55,214,168,0)}100%{box-shadow:0 0 0 7px rgba(55,214,168,0)}}
.lic-pill .dot,.hero-badges .dot,.final .badges .dot{animation:pulseDot 10s ease-out infinite}
.hero-badges span:nth-child(2) .dot,.final .badges span:nth-child(2) .dot{animation-delay:3.3s}
.hero-badges span:nth-child(3) .dot,.final .badges span:nth-child(3) .dot{animation-delay:6.6s}
@media(prefers-reduced-motion:reduce){.lic-pill .dot,.hero-badges .dot,.final .badges .dot{animation:none}}
/* Feiner Zwischentitel mit Seitenstrichen (Kettner-Muster) */
.sub-label{display:flex;align-items:center;justify-content:center;gap:16px;font-size:13.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--royal);margin-bottom:14px}
.sub-label::before,.sub-label::after{content:"";height:1px;width:52px;background:linear-gradient(90deg,transparent,var(--royal));opacity:.55}
.sub-label::after{background:linear-gradient(90deg,var(--royal),transparent)}
.btn-success{background:var(--grad-success);color:#fff;box-shadow:0 8px 20px -8px rgba(5,150,105,.55),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-success:hover{background:var(--grad-success-hover);transform:translateY(-3px);box-shadow:0 12px 25px -8px rgba(4,120,87,.55),inset 0 1px 0 rgba(255,255,255,.2)}
.btn-success:active{transform:translateY(1px);box-shadow:0 2px 10px -4px rgba(4,120,87,.4)}
.btn-ghost-light{background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.55);backdrop-filter:blur(6px)}
.btn-ghost-light::after{display:none}
.btn-ghost-light:hover{background:rgba(255,255,255,.2)}
@media(prefers-reduced-motion:reduce){.btn::after,.sheenable::after{animation:none}}

header{position:fixed;left:0;right:0;top:0;z-index:80;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:transform .35s ease,box-shadow .3s}
header.hidden{transform:translateY(-100%)}
header.scrolled{box-shadow:0 10px 30px -22px rgba(0,51,102,.35)}
.nav{display:flex;align-items:center;gap:26px;height:60px}
.nav img{height:28px;width:auto}
.nav-links{display:none;gap:24px;margin-left:auto}
@media(min-width:1000px){.nav-links{display:flex}}
.nav-links a{color:var(--ink-soft);text-decoration:none;font-weight:600;font-size:14.5px}
.nav-links a:hover{color:var(--navy)}
.nav .btn{margin-left:auto;padding:10px 18px;font-size:13.5px;border-radius:9px}
@media(min-width:1000px){.nav .btn{margin-left:0}}

.hero{position:relative;color:#fff}
.hero-bg{position:absolute;inset:0;background:url("https://go.goodbyematrix.com/assets/sao-tome-hero.v1.png") center 30%/cover no-repeat}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,40,.72) 0%,rgba(8,26,50,.55) 40%,rgba(8,26,50,.7) 100%)}
.hero-inner{position:relative;text-align:center;padding:clamp(60px,7vw,100px) var(--gbm-pad-x) clamp(180px,20vw,280px)}
.lic-pill{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(55,214,168,.6);color:var(--mint);background:rgba(8,30,58,.5);backdrop-filter:blur(8px);border-radius:999px;padding:9px 18px;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.lic-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--mint)}
.hero h1{font-size:clamp(42px,6vw,76px);font-weight:900;text-transform:uppercase;letter-spacing:.01em;margin:28px 0 4px;text-shadow:0 4px 30px rgba(0,0,0,.35)}
.hero .h1sub{font-size:clamp(24px,3vw,38px);font-weight:700;color:#dbe7f5}
.hero .lead{max-width:64ch;margin:24px auto 0;font-size:19.5px;color:#e2ecf8}
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin:34px 0 30px}
.hero-badges{display:flex;flex-wrap:wrap;gap:28px;justify-content:center}
.hero-badges span{display:inline-flex;align-items:center;gap:9px;font-size:15.5px;font-weight:700;color:#eef4fb;white-space:nowrap}
.hero-badges .dot{width:8px;height:8px;border-radius:50%;background:var(--mint)}
.video-pull{position:relative;margin-top:calc(clamp(150px,17vw,240px)*-1);padding-bottom:clamp(20px,2.5vw,34px)}
.video-frame{position:relative;max-width:1020px;margin:0 auto;border-radius:18px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 40px 100px -30px rgba(6,20,40,.65)}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Transkript: nur fuer SEO da – bewusst fast unsichtbar, Box erst beim Aufklappen */
.transkript{max-width:1020px;margin:10px auto 0;text-align:center}
.transkript details{border:1px solid transparent;border-radius:12px;background:transparent}
.transkript details[open]{border-color:var(--line);background:#fff;text-align:left}
.transkript summary{display:inline-block;cursor:pointer;list-style:none;padding:8px 14px;font-weight:600;font-size:13px;color:#b9c6d4}
.transkript summary:hover{color:var(--ink-mute)}
.transkript details[open] summary{display:block;color:var(--navy);font-weight:800;font-size:15.5px;padding:16px 22px}
.transkript summary::-webkit-details-marker{display:none}
.transkript .a{padding:0 22px 18px;color:var(--ink-soft);font-size:15.5px}

.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;text-align:center;transition:transform .25s,box-shadow .25s}
.stat:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.stat b{display:block;font-size:clamp(24px,2.6vw,32px);font-weight:900;color:var(--navy);white-space:nowrap;letter-spacing:-.02em}
.stat span{font-size:14.5px;color:var(--ink-mute);font-weight:600}
.stat b{white-space:normal;overflow-wrap:anywhere;text-wrap:balance;display:flex;flex-direction:column;justify-content:center;line-height:1.05;min-height:2.1em;margin-block:-.175em}
.mini-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:38px}
.mini-badges span{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 18px;font-size:13.5px;color:var(--ink-mute);font-weight:600;white-space:nowrap;transition:transform .18s,border .18s,box-shadow .18s}
.mini-badges span:hover{transform:translateY(-2px) scale(1.05);border-color:#0f766e;box-shadow:0 10px 22px -14px rgba(15,118,110,.5)}
.mini-badges b{color:var(--navy);font-weight:800;font-size:14.5px}
.mini-badges svg{width:15px;height:15px;flex:none;color:#0f766e}

.flag-band{position:relative;height:clamp(140px,20vw,240px);background:url("https://go.goodbyematrix.com/assets/sao-tome-flag.v1.png") center/cover no-repeat}
.flag-band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(10,31,61,.25))}

.prose{max-width:900px;margin:0 auto;position:relative}
.prose p{color:var(--ink-soft);position:relative}
/* Dezentes Wasserzeichen (Schild = Safe Haven) hinter dem Fakten-Text */
.wm::before{content:"";position:absolute;top:-10px;left:-46px;width:250px;height:250px;background:#0f766e;opacity:.05;pointer-events:none;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0c4.6 0 9.2 1 13.4 2.9L457.7 82.8c22 9.3 38.4 31 38.3 57.2c-.5 99.2-41.3 280.7-213.6 363.2c-16.7 8-36.1 8-52.8 0C57.3 420.7 16.5 239.2 16 140c-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.8 1 251.4 0 256 0z'/%3E%3C/svg%3E") center/contain no-repeat}
.kurzgesagt{background:#eefbf4;border:1px solid #cbeeda;border-radius:14px;padding:22px 28px;margin-top:30px;font-size:17px}
.kurzgesagt b{color:var(--success-deep)}

.pass-grid{display:grid;gap:56px;align-items:center}
@media(min-width:1000px){.pass-grid{grid-template-columns:1.618fr 1fr}}
.pass-stage{display:flex;justify-content:center}
.pass-tilt{width:min(380px,92%);will-change:transform;transition:transform .18s ease-out;animation:passfloat 9s ease-in-out infinite;filter:drop-shadow(0 30px 50px rgba(10,31,61,.35))}
@keyframes passfloat{0%,100%{translate:0 0}50%{translate:0 -8px}}
@media(prefers-reduced-motion:reduce){.pass-tilt{animation:none}}
.pass-tilt img{border-radius:10px}
.check{list-style:none;margin:26px 0 0}
.check li{position:relative;padding:0 0 15px 34px;font-size:17px;color:var(--ink-soft)}
.check li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23059669' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") center/contain no-repeat}
.fit-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 36px;margin-top:56px}
#ablauf .fit-box{margin-bottom:56px}
.fit-box h3{font-size:clamp(21px,2.2vw,26px);color:var(--navy);margin-bottom:26px;text-align:center}
.fit-box .check{margin-top:0;display:grid;gap:0 44px}
@media(min-width:900px){.fit-box .check{grid-template-columns:1fr 1fr}}
/* PROGRAMM-SPEZIFISCH-KOMPONENTE: Bearbeitungszeit-Balken (1:1 aus finder-analysis.v21.css) */
.timeline{--timeline-target:0%;margin-top:12px;min-width:0}.timeline-head{align-items:baseline;color:var(--ink-mute);display:flex;font-size:10.5px;gap:8px;justify-content:flex-end}.timeline-head b{color:var(--navy);font-size:14px}.timeline-track{background:var(--line);border-radius:999px;height:8px;margin-top:5px;overflow:visible;position:relative}.timeline-track::before{background:linear-gradient(90deg,#10b981 0%,#0b9d58 24%,#f59e0b 58%,#c2601b 80%,#e02424 100%);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute;transform:scaleX(0);transform-origin:left center;transition:transform 1.5s cubic-bezier(.2,.8,.2,1)}.timeline-progress{border-radius:inherit;display:block;height:100%;left:0;opacity:0;overflow:hidden;pointer-events:none;position:absolute;top:0;transition:width 1.5s cubic-bezier(.2,.8,.2,1) 1.5s,opacity .15s linear 1.5s;width:0;z-index:1}.timeline-progress::after{animation:timelineStripes 1.05s linear infinite;background:repeating-linear-gradient(135deg,rgba(255,255,255,.24) 0,rgba(255,255,255,.24) 6px,rgba(255,255,255,.04) 6px,rgba(255,255,255,.04) 12px);background-size:17px 17px;content:"";inset:0;position:absolute}@keyframes timelineStripes{to{background-position:17px 0}}.timeline-marker{background:#fff;border:3px solid var(--navy);border-radius:50%;box-shadow:0 2px 8px rgba(10,31,61,.28);height:17px;left:9px;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:left 1.5s cubic-bezier(.2,.8,.2,1) 1.5s,opacity .15s linear 1.5s;width:17px;z-index:2}.timeline.is-revealed .timeline-track::before{transform:scaleX(1)}.timeline.is-revealed .timeline-progress{opacity:1;width:var(--timeline-target)}.timeline.is-revealed .timeline-marker{left:clamp(9px,var(--timeline-target),calc(100% - 9px));opacity:1}.timeline-ticks{color:var(--ink-mute);display:flex;font-size:9px;justify-content:space-between;margin-top:5px}.timeline.unknown .timeline-track{background:repeating-linear-gradient(135deg,#dde6f0,#dde6f0 8px,#f4f7fb 8px,#f4f7fb 16px);overflow:hidden}.timeline.unknown .timeline-track::before{display:none}html.no-js .timeline-track::before{transform:none}html.no-js .timeline-progress,html.no-js .timeline-marker{display:none}
@media(prefers-reduced-motion:reduce){.timeline-track::before{transform:none}.timeline-progress{opacity:1;transition:none;width:var(--timeline-target)}.timeline-progress::after{animation:none}.timeline-marker{left:clamp(9px,var(--timeline-target),calc(100% - 9px));opacity:1;transition:none}}

.map-stats{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:34px}
.map-stats span,.map-stats a{background:var(--cloud);border:1px solid var(--line);border-radius:999px;padding:10px 20px;font-weight:800;font-size:15.5px;color:var(--navy);white-space:nowrap;text-decoration:none;transition:border .15s,transform .15s}
.map-stats span:hover{border-color:var(--royal);transform:translateY(-2px)}
.map-stats a{border-color:#c3dcf5;background:#eaf3fd}
.map-stats a:hover{border-color:var(--royal);transform:translateY(-2px);text-decoration:underline}
.map-section{padding-bottom:clamp(16px,2vw,28px)}
.map-section+.cost{padding-top:clamp(18px,2.2vw,32px)}
.map-free{margin:0 auto;min-width:0}
.map-free iframe{width:0;min-width:100%!important;border:0;display:block;background:transparent}
.map-note{text-align:center;margin-top:20px}
.map-note a{display:inline-flex;align-items:center;gap:9px;border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:12px 17px;text-decoration:none;color:var(--navy);font-weight:700;font-size:14.5px;transition:border .15s,transform .15s}
.map-note a:hover{border-color:var(--royal);transform:translateY(-2px)}
.map-note a::before{content:"PDF";font-size:10.5px;font-weight:900;background:#e02424;color:#fff;border-radius:5px;padding:3px 6px}

/* Kosten: schlank und edel, kein wuchtiger Block */
.cost{background:var(--cloud)}
.price-cards{display:grid;gap:20px;max-width:900px;margin:0 auto}
@media(min-width:820px){.price-cards{grid-template-columns:1fr 1fr}}
@media(min-width:1040px){.price-cards{grid-template-columns:1fr 1fr .92fr;max-width:1240px}}
.price-card.docs{background:linear-gradient(165deg,#fbfdff 0%,#f2f7fc 100%)}
.price-card.docs .amount{font-size:clamp(22px,2vw,26px)}
.price-card.docs .foot{font-size:12.5px;color:var(--ink-mute);margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.price-card{position:relative;background:linear-gradient(165deg,#ffffff 0%,#f7fafd 100%);border:1px solid var(--line);border-radius:var(--radius);padding:30px 30px;overflow:hidden;transition:transform .25s,box-shadow .25s}
.price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.price-card.featured{border:1.5px solid var(--navy)}
.price-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
.price-card-head h3{min-width:0}
.price-card .tag{flex:none;background:var(--grad-primary);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 12px;white-space:nowrap}
.price-card h3{font-size:19px;margin-bottom:2px}
.price-card .from{font-size:13.5px;color:var(--ink-mute);font-weight:600}
.price-card .amount{font-size:clamp(30px,2.8vw,38px);font-weight:900;letter-spacing:-.02em;background:linear-gradient(120deg,#0d2f57,#0066cc);-webkit-background-clip:text;background-clip:text;color:transparent;margin:6px 0 16px}
.price-card .amount small{font-size:.46em;font-weight:700;-webkit-text-fill-color:var(--ink-mute)}
.price-rows div{display:grid;grid-template-columns:minmax(0,1fr) fit-content(46%);align-items:start;gap:16px;min-width:0;padding:10px 0;border-top:1px solid var(--line);font-size:15px}
.price-rows div span{min-width:0}
.price-rows div span:last-child{font-weight:800;color:var(--navy);white-space:normal;text-align:right;overflow-wrap:normal}
.per-person{display:block;text-align:center;margin:34px auto 0;font-size:16.5px;color:var(--ink-soft)}
.per-person b{color:var(--navy)}

.field{background:#fff;border:1.5px solid var(--line);border-radius:9px;color:var(--ink);font:inherit;font-size:15px;padding:11px 13px;width:100%;transition:border .15s,box-shadow .15s}
.field:hover{border-color:#94a3b8}
.field:focus{outline:none;border-color:var(--royal);box-shadow:0 0 0 4px rgba(0,102,204,.1)}
.add-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.add-btn{background:#fff;border:1.5px dashed #b9c9dd;color:var(--navy);border-radius:999px;padding:11px 20px;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer;transition:border .15s,background .15s}
.add-btn:hover{border-color:var(--royal);background:#f0f6fd}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.chip{display:inline-flex;align-items:center;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700;white-space:nowrap;background:#eaf3fd;border:1px solid #c3dcf5;color:var(--navy)}
.chip.k{background:#e7f8ef;border-color:#bfead5;color:var(--success-deep)}
.mini-rows div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:14.5px}
.mini-rows div span:last-child{font-weight:800;color:var(--navy)}

/* Zeitstrahl nach Kettner-Red-Ruby-Muster: Mittellinie mit Farbverlauf (mobil links, ab 900px mittig),
   Stationen abwechselnd links/rechts, Zeit-Pill mit Uhr-Icon; Farbreise Blau -> Gruen */
.steps{position:relative;max-width:1040px;margin:0 auto}
.steps::before{content:"";position:absolute;left:20px;top:6px;bottom:6px;width:3px;border-radius:3px;background:linear-gradient(180deg,#1a63b4 0%,#0d94a3 55%,#0b9d58 100%)}
.step{position:relative;padding:0 0 46px 66px}
.step:last-child{padding-bottom:0}
html.js .step.rv{transition-delay:calc(var(--i)*.12s)}
.step .n{position:absolute;left:0;top:0;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--c),var(--c2));color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:16px;box-shadow:0 0 0 5px var(--cloud),0 7px 15px -7px var(--c);z-index:1}
@media(min-width:900px){
  .steps::before{left:50%;transform:translateX(-50%)}
  .step{display:grid;grid-template-columns:1fr 1fr;padding:0 0 54px 0}
  .step .body{grid-column:2;padding-left:58px}
  .step:nth-child(odd) .body{grid-column:1;grid-row:1;padding-left:0;padding-right:58px;text-align:right}
  .step .n{left:50%;transform:translateX(-50%)}
}
.step .t{display:inline-flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--c) 9%,#fff);border:1px solid color-mix(in srgb,var(--c) 26%,#fff);color:var(--c);border-radius:999px;padding:5px 14px;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.step .t::before{content:"";width:13px;height:13px;flex:none;background:var(--c);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E") center/contain no-repeat}
.step h3{font-size:21px;margin-bottom:6px}
.step p{color:var(--ink-soft);font-size:16.5px}
.step-more{margin-top:6px}
.step-more summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--royal)}
.step-more summary::-webkit-details-marker{display:none}
.step-more summary:hover{text-decoration:underline}
.step-more summary::after{content:"▾";font-size:10px;transition:rotate .25s;rotate:0deg}
.step-more[open] summary::after{rotate:180deg}
.step-more .a{margin-top:8px}
.step-more .a p{font-size:15px}
.usp-more{display:inline-block;margin-top:9px;font-size:13px;font-weight:700;color:var(--royal);cursor:pointer}
.usp-more:hover{text-decoration:underline}
.tcard .tbody.slim{padding:15px 22px 17px}
.tcap{font-size:13.5px;color:var(--ink-mute);margin:0}
.step .t{transition:transform .2s ease}
.step:hover .t{transform:scale(1.08)}
/* Lauflicht die Mittellinie entlang: klar sichtbar, nur abwaerts, blendet am Ziel aus */
.steps::after{content:"";position:absolute;left:19px;top:0;width:5px;height:170px;border-radius:5px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.95) 50%,transparent);filter:blur(.6px);opacity:0;animation:strahl 9s linear infinite}
@media(min-width:900px){.steps::after{left:50%;transform:translateX(-50%)}}
@keyframes strahl{0%{top:-10%;opacity:0}8%{opacity:.9}78%{opacity:.9}92%,100%{top:96%;opacity:0}}
@media(prefers-reduced-motion:reduce){.steps::after{display:none}}

/* Report: gross, Verlauf, gediegener Schimmer, Cover frei mit Abstand */
.report{background:var(--cloud)}
.report-card{position:relative;display:grid;width:100%;max-width:1240px;min-width:0;margin:0 auto;background:linear-gradient(130deg,#14406e 0%,var(--navy) 48%,var(--navy-mid) 100%);border-radius:24px;color:#fff;box-shadow:var(--shadow);overflow:hidden}
.report-card>*{min-width:0;max-width:100%}
.report-card .cover::before{content:"";position:absolute;inset:6%;background:radial-gradient(circle at 45% 45%,rgba(77,148,230,.42),transparent 65%);filter:blur(8px)}
.report-card .cover img{position:relative;z-index:1}
@media(min-width:900px){.report-card{grid-template-columns:1fr 1.5fr;align-items:center}}
.report-card .cover{display:flex;justify-content:center;align-items:center;padding:48px 24px}
.report-card .cover img{width:min(400px,100%);filter:drop-shadow(0 34px 50px rgba(0,0,0,.5));transition:transform .3s}
.report-card .cover img:hover{transform:translateY(-6px) scale(1.02)}
.report-card .body{padding:clamp(26px,5vw,64px)}
.report-card h2{font-size:clamp(28px,3.4vw,42px);margin:12px 0 16px}
.report-card p{color:#c9d8ec;font-size:17.5px}
.report-card p strong{color:#fff}
.report-points{list-style:none;margin:2px 0 6px}
.report-points li{position:relative;padding:0 0 11px 30px;color:#c9d8ec;font-size:17px;line-height:1.6}
.report-points li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;background:var(--mint);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") center/contain no-repeat}

.license-grid{display:grid;gap:52px;align-items:center;max-width:1240px;margin:0 auto}
@media(min-width:960px){.license-grid{grid-template-columns:1.2fr 1fr}}
.license-visual{position:relative;cursor:zoom-in;transition:transform .3s,filter .3s;filter:drop-shadow(0 24px 40px rgba(10,31,61,.28))}
.license-visual:hover{transform:translateY(-6px) scale(1.015)}
.license-visual::after{content:"+";position:absolute;right:16px;bottom:16px;width:42px;height:42px;border-radius:50%;background:rgba(10,31,61,.85);color:#fff;font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}
.license-visual:hover::after{opacity:1}
.license-visual img{border-radius:10px}
.doc-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.doc-chips a{display:inline-flex;align-items:center;gap:9px;border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:12px 17px;text-decoration:none;color:var(--navy);font-weight:700;font-size:14.5px;transition:border .15s,transform .15s}
.doc-chips a:hover{border-color:var(--royal);transform:translateY(-2px)}
.doc-chips a::before{content:"PDF";font-size:10.5px;font-weight:900;background:#e02424;color:#fff;border-radius:5px;padding:3px 6px}

.sergio{position:relative;color:#fff;overflow:hidden}
.sergio-bg{position:absolute;inset:0;background:url("https://go.goodbyematrix.com/assets/sao-tome-sergio.v1.png") right 56%/cover no-repeat}
.sergio-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(95deg,rgba(5,18,36,.96) 0%,rgba(6,24,46,.88) 42%,rgba(8,28,54,.28) 100%)}
.sergio-inner{position:relative;max-width:640px;padding:clamp(90px,12vw,160px) 0}
.sergio .eyebrow{color:var(--mint)}
.sergio h2{font-size:clamp(30px,4vw,46px);margin:6px 0 20px;font-weight:800}
.sergio p{color:#dbe7f5;font-size:18px}

.usp-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));max-width:1240px;margin:0 auto}
.usp{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;transition:transform .2s,box-shadow .2s}
.usp:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.usp h3{font-size:18px;margin-bottom:8px;color:var(--navy)}
.usp p{font-size:15.5px;color:var(--ink-soft)}
.usp .num{font-size:13px;font-weight:900;color:#11808f;letter-spacing:.1em;margin-bottom:10px;display:block}

/* Testimonials: Bild-Karten mit Pass-Fotos (Muster der Live-Seite) */
.testi{background:var(--cloud)}
.testi-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));max-width:1240px;margin:0 auto}
.tcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .2s,box-shadow .2s}
.tcard:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.tcard .timg{overflow:hidden;background:var(--cloud)}
.tcard .timg img{width:100%;height:auto;transition:transform .6s}
.tcard:hover .timg img{transform:scale(1.02)}
.tcard .tbody{padding:26px 28px}
.stars{color:#f59e0b;letter-spacing:3px;font-size:15px;margin-bottom:10px}
.tcard p{font-size:15.5px;color:var(--ink-soft);margin-bottom:16px}
.tcard .who b{display:block;font-size:15px}
.tcard .who span{font-size:13px;color:var(--ink-mute)}
.testi-legend{text-align:center;font-size:13px;color:var(--ink-mute);margin-top:22px}
.tt-viewport{overflow:hidden;max-width:1240px;margin:-6px auto -32px}
.tt-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:12px 8px 40px}
.tt-track::-webkit-scrollbar{display:none}
.tt-track>.tcard{flex:0 0 min(340px,84vw);scroll-snap-align:start;display:flex;flex-direction:column}
.tt-track>.tcard .tbody{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.tt-track>.tcard .who{margin-top:auto;padding-top:6px}
.tt-track>.tcard{max-height:clamp(430px,72vh,760px)}
.tt-track>.tcard .ttext{overflow:hidden auto;flex:1 1 auto;min-height:0}
.tt-track>.tcard .timg{min-height:0}
.tt-track>.tcard .ttext.tt-more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 46px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 46px),transparent)}
.tt-bar{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px}
.tt-bar[hidden]{display:none}
.tt-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--navy);cursor:pointer;transition:border-color .18s,color .18s,box-shadow .18s}
.tt-btn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.tt-btn:hover{border-color:#c08f18;color:#8a6a14;box-shadow:var(--shadow)}
.tt-btn:disabled{opacity:.4;cursor:default;box-shadow:none;border-color:var(--line);color:var(--navy)}
.tt-dots{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap}
.tt-dot{width:40px;height:40px;padding:0;border:0;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}
.tt-dot::before{content:"";width:9px;height:9px;border-radius:50%;background:#c4cfdd;transition:background .18s,transform .18s}
.tt-dot[aria-current="true"]::before{background:linear-gradient(115deg,#8a5c0e,#c08f18);transform:scale(1.35)}
.tt-track:focus-visible,.tt-btn:focus-visible,.tt-dot:focus-visible,.tt-track>.tcard .ttext:focus-visible{outline:3px solid #c08f18;outline-offset:3px}
@media(min-width:640px){.tt-track>.tcard{flex-basis:45%}}
@media(min-width:1000px){.tt-track>.tcard{flex-basis:30%}}
@media(max-width:639px){.tt-dots{display:none}}
@media(prefers-reduced-motion:reduce){.tt-btn,.tt-dot::before{transition:none}}

/* Anastasiya: grosses Bild als Kachel neben dem Text, gleiche Hoehe (Live-Muster) */
.ana-grid{display:grid;gap:52px;align-items:center;max-width:1240px;margin:0 auto}
@media(min-width:960px){.ana-grid{grid-template-columns:1fr 1.2fr}}
.ana-photo{display:flex;justify-content:center}
.ana-photo img{width:min(440px,100%);height:auto;border-radius:20px;box-shadow:var(--shadow)}

/* App: oben flach, UNTEN Wellen (Live-Muster), grosses Mockup */
.app-sec{position:relative;color:#fff;overflow:hidden}
.app-bg{position:absolute;inset:0;background:url("https://go.goodbyematrix.com/assets/sovereigns-app-background.v1.jpg") center/cover no-repeat}
.app-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(5,18,36,.93) 0%,rgba(6,24,46,.82) 50%,rgba(8,28,54,.5) 100%)}
.app-grid{position:relative;display:grid;gap:32px;align-items:center;padding-top:clamp(90px,11vw,150px);padding-bottom:clamp(130px,14vw,190px)}
@media(min-width:960px){.app-grid{grid-template-columns:1.35fr 1fr}}
.app-sec .eyebrow{color:var(--mint)}
.app-sec h2{font-size:clamp(30px,4vw,48px);margin:6px 0 20px}
.app-sec p{color:#d5e2f2;font-size:18px}
.app-visual{display:flex;justify-content:center}
.app-tilt{width:100%;display:flex;justify-content:center;will-change:transform;transition:transform .18s ease-out;animation:passfloat 10s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.app-tilt{animation:none}}
.app-visual img{width:min(640px,128%);max-width:none;filter:drop-shadow(0 40px 70px rgba(0,0,0,.55))}
@media(min-width:960px){.app-tilt{justify-content:flex-end}}
@media(max-width:959px){.app-visual img{width:min(520px,100%)}}
.app-waves{position:absolute;left:0;right:0;bottom:-1px;line-height:0}
.app-waves svg{width:100%;height:clamp(50px,7vw,110px);display:block}

.faq-list{max-width:1080px;margin:0 auto}
.faq-list details{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:12px;overflow:hidden}
.faq-list summary{cursor:pointer;list-style:none;padding:21px 60px 21px 26px;font-weight:800;font-size:17px;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:24px;top:50%;width:29px;height:29px;border-radius:50%;background:var(--cloud);color:var(--navy);font-size:19px;line-height:27px;text-align:center;transform:translateY(-50%);transition:rotate .25s,background .25s;rotate:0deg}
.faq-list details[open] summary::after{rotate:45deg;background:var(--navy);color:#fff}
.faq-list .a{padding:0 26px 22px;color:var(--ink-soft);font-size:16.5px}

.final{position:relative;color:#fff;text-align:center;overflow:hidden;padding:clamp(110px,13vw,170px) 0}
.final-bg{position:absolute;inset:0;background:url("https://go.goodbyematrix.com/assets/sao-tome-hero.v1.png") center 65%/cover no-repeat}
.final-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,40,.9),rgba(8,28,54,.86))}
.final .wrap{position:relative}
.final h2{font-size:clamp(30px,4vw,48px);margin-bottom:16px;font-weight:900}
.final p{color:#c9d8ec;font-size:18.5px;max-width:62ch;margin:0 auto 32px}
.final .badges{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:24px;font-size:14px;color:#9fe1cb}
.final .badges span{display:inline-flex;align-items:center;gap:8px}
.final .badges .dot{width:6px;height:6px;border-radius:50%;background:var(--mint)}

.prog-grid{display:grid;gap:18px;max-width:1240px;margin:0 auto;grid-template-columns:1fr}
@media(min-width:640px){.prog-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.prog-grid{grid-template-columns:repeat(3,1fr)}}
.prog{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;will-change:transform;transition:transform .18s ease-out}
html.js .prog.rv.in{transition:opacity .8s ease,transform .18s ease-out}
.prog img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.prog:hover img{transform:scale(1.06)}
.prog::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,36,.15),rgba(5,18,36,.45))}
.prog b{position:relative;z-index:1;font-size:clamp(19px,1.8vw,23px);font-weight:800;text-align:center;background:rgba(8,24,46,.55);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:12px 22px;letter-spacing:.01em}

footer{background:var(--navy-deep);color:#9db7d6;font-size:14.5px}
.foot-grid{display:grid;gap:36px;padding:66px 0 42px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.foot-grid img{height:30px;width:auto;filter:brightness(0) invert(1);margin-bottom:16px}
.foot-grid h4{color:#fff;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.foot-grid a{display:block;color:#9db7d6;text-decoration:none;padding:5px 0}
.foot-grid a:hover{color:#fff}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding:22px 0;text-align:center}

#gbmw{position:fixed;right:26px;top:96px;width:322px;z-index:70;opacity:0;transform:translateY(20px);pointer-events:none;transition:opacity .45s ease,transform .45s ease}
#gbmw.on{opacity:1;transform:translateY(var(--gbmw-footer-shift,0px));pointer-events:auto}
#gbmw.on.is-footer-near{transition:opacity .45s ease,transform .12s linear}
@media(max-width:1359px){#gbmw{display:none}}
.gbmw-card{position:relative;max-height:calc(100dvh - 24px);overflow-y:auto;border-radius:18px;padding:22px;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);border:1px solid rgba(255,255,255,.8);box-shadow:0 26px 60px -22px rgba(10,35,66,.45),inset 0 1px 0 rgba(255,255,255,.9);transform-style:preserve-3d;will-change:transform;transition:transform .18s ease-out}
@supports not (backdrop-filter:blur(4px)){.gbmw-card{background:rgba(255,255,255,.96)}}
.gbmw-card h4{font-size:16.5px;color:var(--navy);margin-bottom:2px}
.gbmw-sub{font-size:12.5px;color:var(--ink-mute);margin-bottom:13px}
.gbmw-card .chips{margin:0 0 14px;gap:7px}
.gbmw-card .chip{font-size:12.5px;padding:6px 12px}
.wsteps{display:grid;grid-template-columns:1fr;gap:9px;margin-bottom:15px}
@media(min-height:760px){.wsteps{grid-template-columns:1fr 1fr}}
.wstep{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:11px;padding:7px 9px}
.wstep span{font-size:12.5px;font-weight:700;color:var(--ink-soft)}
.wstep .pm{display:flex;gap:5px}
.wstep button{position:relative;isolation:isolate;width:25px;height:40px;margin-block:-7.5px;border-radius:7px;border:0;background:none;cursor:pointer;font-size:14px;font-weight:800;color:var(--navy);line-height:1;padding:0}
.wstep button::before{content:"";position:absolute;inset:7.5px 0;border-radius:7px;border:1px solid var(--line);background:#fff;z-index:-1}
.wstep button:hover::before{background:var(--cloud)}
.gbmw-sumlabel{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--ink-mute)}
.gbmw-sum{font-size:30px;font-weight:900;white-space:nowrap;display:flex;align-items:baseline;gap:7px}
.gbmw-sum .num{background:linear-gradient(120deg,#0d2f57,#0066cc);-webkit-background-clip:text;background-clip:text;color:transparent}
.gbmw-sum .cur{font-size:14px;font-weight:700;color:var(--ink-mute)}
.gbmw-hint{display:inline-flex;width:16px;height:16px;border-radius:50%;background:rgba(0,51,102,.12);color:var(--ink-soft);font-size:10.5px;font-weight:800;align-items:center;justify-content:center;margin-left:6px;cursor:help;vertical-align:2px}
.gbmw-note{font-size:11.5px;color:var(--ink-mute);margin:3px 0 13px}
.gbmw-card .btn{width:100%;padding:13px;font-size:14px}
.gbmw-finder{display:block;min-height:40px;text-align:center;font-size:12.5px;font-weight:700;color:var(--royal);margin-top:.9375px;margin-bottom:-9.0625px;padding-block:9.0625px;text-decoration:none}
.gbmw-finder:hover{text-decoration:underline}
.wdocs{display:block;background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:11px;padding:7px 9px;margin-bottom:15px}
.wdocs>span:first-child{display:block;font-size:12.5px;font-weight:700;color:var(--ink-soft);margin-bottom:8px}
.wdocs .seg{display:flex;width:100%;background:#eef3f9;border:1px solid var(--line);border-radius:999px;padding:2px;gap:2px}
.wdocs .seg button{flex:1;min-width:0;font:inherit;font-size:12px;font-weight:700;color:var(--ink-mute);background:none;border:0;border-radius:999px;padding:7px 8px;cursor:pointer}
.wdocs .seg button.on{background:#fff;color:var(--navy);box-shadow:0 1px 4px rgba(10,31,61,.15)}
#wOv{position:absolute;inset:0;z-index:5;display:none;align-items:center;justify-content:center;padding:12px;border-radius:18px;background:rgba(244,248,252,.55);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
#wOv.on{display:flex}
.wov-box{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px -18px rgba(10,35,66,.4);padding:13px;width:100%;max-height:100%;overflow:auto}
.wov-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}
.wov-head b{font-size:14px;color:var(--navy)}
#wovX{border:0;background:none;font-size:15px;color:var(--ink-mute);cursor:pointer;padding:2px 6px}
#wovX:hover{color:var(--danger)}
.wov-save{width:100%;margin-top:9px;border:0;border-radius:9px;padding:10px;font:inherit;font-size:13px;font-weight:800;color:#fff;background:var(--success-deep);cursor:pointer}
.wov-save.err{animation:gbmc-shake .15s linear 2;background:var(--danger)}
#wOv .field{font-size:13.5px;padding:8px 10px;margin:8px 0}
#wOv .p-q{font-size:12px;padding:7px 9px;margin-bottom:7px}
#wOv .p-hint{font-size:12px;display:block;margin-top:4px}
#wOv .err-msg{color:var(--danger);font-size:12px;min-height:0;margin-top:6px}
#gbmw-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:12px;max-width:100%;background:rgba(10,31,61,.96);backdrop-filter:blur(10px);padding:11px var(--gbm-pad-x);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(110%);transition:transform .4s ease,opacity .3s ease,visibility 0s linear .4s}
#gbmw-bar.on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
@media(min-width:1360px){#gbmw-bar{display:none}}
#gbmw-bar .t{min-width:0;color:#fff;font-size:12.5px;line-height:1.35}
#gbmw-bar .t b{font-size:15.5px;white-space:nowrap}
#gbmw-bar .btn{width:100%;max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere}

.modal{position:fixed;inset:0;z-index:100001;display:none;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
.modal.on{display:flex}
.modal .back{position:absolute;inset:0;background:rgba(5,15,30,.62);backdrop-filter:blur(4px)}
.modal .box{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:18px;max-width:470px;width:100%;max-height:90vh;max-height:90dvh;overflow:hidden;box-shadow:0 40px 100px -20px rgba(0,0,0,.5)}
.modal .box.wide{max-width:960px}
.modal .modal-scroll{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:38px}
.modal .box.wide .modal-scroll{padding:24px}
.modal h3{font-size:22px;margin-bottom:8px}
.modal p{font-size:15px;color:var(--ink-soft)}
.modal .x{position:absolute;top:14px;right:14px;width:35px;height:35px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:16px;cursor:pointer;z-index:1;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}
.modal .x:hover{background:#e02424;border-color:#e02424;color:#fff;transform:rotate(90deg)}
button.x svg{display:block;margin:auto}
.modal input:not([type="checkbox"]){width:100%;border:1.5px solid var(--line);border-radius:10px;padding:14px 16px;font:inherit;font-size:15.5px;margin:14px 0 0;transition:border .15s,box-shadow .15s}
.modal input:not([type="checkbox"]):focus{outline:none;border-color:var(--royal);box-shadow:0 0 0 4px rgba(0,102,204,.1)}
.modal input:not([type="checkbox"]).err{border-color:var(--danger);box-shadow:0 0 0 4px rgba(224,36,36,.08);animation:gbmc-shake .15s linear 2}
@media(max-width:760px){
  .modal input:not([type="checkbox"]),.modal select,.modal textarea,
  #gbmw-bar input:not([type="checkbox"]),#gbmw-bar select,#gbmw-bar textarea{font-size:16px}
}
.modal .dsgvo{display:flex;gap:10px;align-items:flex-start;margin:18px auto 16px;max-width:420px;padding:11px 14px;background:var(--cloud);border:1px solid var(--line);border-radius:11px;font-size:12px;color:var(--ink-mute);line-height:1.5;cursor:pointer;text-align:left;transition:border .2s,background .2s}
.modal .dsgvo input{margin-top:2px;accent-color:var(--navy);flex:none;cursor:pointer}
.modal .dsgvo a{color:var(--ink-soft);text-decoration:underline}
.modal .dsgvo.err{border-color:var(--danger);background:#fdf1f1;animation:gbmc-shake .15s linear 2}
.modal .dsgvo.err,.modal .dsgvo.err a{color:var(--danger)}
.modal .btn{width:100%;margin-top:20px}
.modal .spinner{width:17px;height:17px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:gbmc-spin .7s linear infinite;flex:none}

html.js .rv{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
html.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html.js .rv{opacity:1;transform:none;transition:none}}
@media(max-width:639px){
  .hero-badges span,.mini-badges span,.map-stats span,.map-stats a{white-space:normal;text-align:center}
  .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .price-card,.fit-box,.usp{padding-left:22px;padding-right:22px}
  .price-rows div{display:grid;grid-template-columns:minmax(0,1fr) minmax(72px,auto)}
  .price-rows div span:last-child{white-space:normal;text-align:right}
  .modal .modal-scroll,.modal .box.wide .modal-scroll{padding:52px 20px 22px}
  #gbmw-bar .btn{padding:11px 12px!important;font-size:12px!important}
}
@media(max-height:480px){
  .modal{align-items:center}
  .modal .modal-scroll,.modal .box.wide .modal-scroll{padding-top:48px;padding-bottom:18px}
}
#mini{display:none!important}
