.flbf-page { --flbf-purple:#A6228E; --flbf-navy:#0A1738; --flbf-blue:#D1DFF3; --flbf-soft:#F3F7FF; --flbf-accent:#A6228E; color:var(--flbf-navy); font-family:Urbanist,sans-serif; }
.flbf-page *, .flbf-check * { box-sizing:border-box; }
.flbf-page .flbf-shell { --container-widget-width:100%; gap:0; padding:0; }
.flbf-page .flbf-shell p { margin:0 0 1rem; }
.flbf-page .flbf-shell h1, .flbf-page .flbf-shell h2, .flbf-page .flbf-shell h3 { color:var(--flbf-navy); letter-spacing:-.035em; }
.flbf-page .flbf-shell h2 { font-size:clamp(2rem,3.2vw,3.2rem); font-weight:750; line-height:1.12; }
.flbf-page .flbf-shell h3 { font-size:1.6rem; line-height:1.2; font-weight:700; }
.flbf-page .flbf-shell .elementor-widget { margin-bottom:0; }
.flbf-page .flbf-header { padding:1.1rem max(1.5rem,calc((100vw - 1160px)/2))!important; display:flex; flex-direction:row!important; align-items:center; justify-content:space-between; gap:1rem; background:white; }
.flbf-page .flbf-logo { width:9.5rem!important; flex:none; }
.flbf-page .flbf-header .flbf-logo a { display:block; }
.flbf-page .flbf-header .flbf-logo img { width:100%!important; }
.flbf-page .flbf-header-link { width:auto!important; }
.flbf-page .flbf-header-link .elementor-button { padding:.85rem 1.3rem; background:var(--flbf-purple); color:white; border-radius:.4rem; font-size:1rem; font-weight:650; }
.flbf-page .flbf-hero { background:linear-gradient(120deg,#f3f7ff,#e0e8f7 70%,#f5e7f2); padding:4rem 1.5rem 3.5rem!important; }
.flbf-page .flbf-hero-inner { max-width:1160px; margin:auto; display:grid!important; grid-template-columns:1.15fr 1fr; align-items:center; gap:3.8rem; padding:0!important; }
.flbf-page .flbf-hero-copy { padding:0!important; gap:1.4rem; }
.flbf-page .flbf-eyebrow { color:#77306e; font-size:.8rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; display:flex; gap:.65rem; align-items:center; }
.flbf-page .flbf-eyebrow::before { content:''; width:.55rem; height:.55rem; border-radius:50%; background:var(--flbf-purple); }
.flbf-page .flbf-hero h1 { font-size:clamp(2.8rem,4.6vw,4.6rem); line-height:1.03; font-weight:850; margin:0; }
.flbf-page .flbf-hero h1 span { color:var(--flbf-purple); }
.flbf-page .flbf-intro { font-size:1.2rem; line-height:1.5; max-width:33rem; letter-spacing:0; }
.flbf-page .flbf-actions { display:flex; flex-wrap:wrap; gap:.75rem 1rem; align-items:center; }
.flbf-page .flbf-small { font-size:.88rem; line-height:1.5; color:#43516d; letter-spacing:0; }
.flbf-page .flbf-hero-media { padding:0!important; gap:0; border-radius:1.1rem; overflow:hidden; background:var(--flbf-navy); box-shadow:0 1.5rem 3rem rgba(10,23,56,.13); }
.flbf-page .flbf-hero-image img { display:block; width:100%; aspect-ratio:1.8; object-fit:cover; }
.flbf-page .flbf-offer { padding:1.6rem 2rem 1.8rem; color:white; }
.flbf-page .flbf-offer p { color:#edf1fb; font-size:1rem; line-height:1.5; letter-spacing:0; }
.flbf-page .flbf-offer .flbf-offer-amount { display:block; font-size:clamp(3rem,5vw,4.7rem); font-weight:850; letter-spacing:-.045em; line-height:1.1; margin:.6rem 0; color:white; }
.flbf-page .flbf-offer .flbf-offer-amount small { font-size:1.6rem; font-weight:600; letter-spacing:0; }
.flbf-page .flbf-badge { color:var(--flbf-navy); background:var(--flbf-accent); padding:.4rem .6rem; display:inline-block; font-size:.73rem; font-weight:850; letter-spacing:.08em; border-radius:.2rem; }
.flbf-page .flbf-offer a { color:white; text-decoration:underline; text-underline-offset:.2rem; font-size:.85rem; }
.flbf-page .flbf-offer .flbf-offer-note { color:#c6cee1; font-size:.8rem; margin-bottom:.5rem; }
.flbf-page .flbf-trust { padding:1.3rem 1.5rem!important; background:white; border-bottom:1px solid #e4e8ef; }
.flbf-page .flbf-trust-items { display:flex; max-width:1160px; margin:auto; justify-content:space-between; gap:1.2rem; flex-wrap:wrap; font-size:1rem; font-weight:600; }
.flbf-page .flbf-trust-items span::before { content:'✓'; color:var(--flbf-purple); margin-right:.6rem; }
.flbf-page .flbf-section { padding:5.2rem 1.5rem!important; }
.flbf-page .flbf-contained { max-width:1160px; margin:auto; padding:0!important; }
.flbf-page .flbf-quiz-layout { display:grid!important; grid-template-columns:.75fr 1.25fr; gap:4rem; align-items:start; }
.flbf-page .flbf-quiz-intro { padding:0!important; gap:1.2rem; position:sticky; top:2rem; }
.flbf-page .flbf-section .flbf-quiz-intro p { font-size:1.08rem; line-height:1.55; letter-spacing:0; }
.flbf-page .flbf-step-list { margin:1rem 0 0; padding:0; list-style:none; display:grid; gap:1rem; }
.flbf-page .flbf-step-list li { display:flex; align-items:center; gap:.8rem; font-size:1rem; }
.flbf-page .flbf-step-list b { border:1px solid #d8dfee; border-radius:50%; width:2rem; height:2rem; display:grid; place-items:center; font-size:.85rem; color:var(--flbf-purple); flex-shrink:0; }
.flbf-page .flbf-soft-section { background:var(--flbf-soft); }
.flbf-page .flbf-section-heading { max-width:43rem; margin-bottom:2rem; }
.flbf-page .flbf-section-heading p { font-size:1.1rem; line-height:1.55; letter-spacing:0; }
.flbf-page .flbf-prices { display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; }
.flbf-page .flbf-price-card { border:1px solid #dbe2ef; border-radius:.8rem; background:white; padding:2rem; }
.flbf-page .flbf-price-card h3 { margin:1.1rem 0; }
.flbf-page .flbf-price-card p { font-size:1rem; line-height:1.6; letter-spacing:0; }
.flbf-page .flbf-price-card del { font-size:1rem; color:#606a80; display:block; }
.flbf-page .flbf-price-card .flbf-price { font-size:2.5rem; font-weight:800; line-height:1.2; display:block; margin:.35rem 0; letter-spacing:-.03em; color:var(--flbf-navy); }
.flbf-page .flbf-price-card .flbf-price small { font-size:1rem; font-weight:500; }
.flbf-page .flbf-price-card .flbf-price-total { color:var(--flbf-purple); font-weight:700; }
.flbf-page .flbf-price-card .flbf-badge { background:#f8e9f5; color:#81206e; }
.flbf-page .flbf-explainer { display:grid; grid-template-columns:1fr 1fr 1fr; gap:2rem; }
.flbf-page .flbf-explainer > div { padding-top:1.4rem; border-top:2px solid #d1dff3; }
.flbf-page .flbf-explainer span { font-size:.9rem; color:var(--flbf-purple); font-weight:800; }
.flbf-page .flbf-explainer h3 { margin:1rem 0 .8rem; font-size:1.45rem; }
.flbf-page .flbf-explainer p { font-size:1.05rem; line-height:1.6; letter-spacing:0; }
.flbf-page .flbf-faq { max-width:850px; margin:auto; }
.flbf-page .flbf-faq details { border-bottom:1px solid #d9dfeb; padding:1.2rem 0; }
.flbf-page .flbf-faq summary { cursor:pointer; font-size:1.15rem; font-weight:700; line-height:1.5; }
.flbf-page .flbf-faq details p { font-size:1.05rem; line-height:1.65; letter-spacing:0; margin-top:1rem; }
.flbf-page .flbf-faq a { color:#852174; text-decoration:underline; }
.flbf-page .flbf-final { text-align:center; background:var(--flbf-navy); padding:4rem 1.5rem!important; }
.flbf-page .flbf-final h2, .flbf-page .flbf-final p { color:white; }
.flbf-page .flbf-final p { font-size:1.15rem; letter-spacing:0; }
.flbf-page .flbf-final .flbf-actions { justify-content:center; margin:1.5rem 0 0; }
.flbf-page .flbf-footer { padding:1.7rem 1.5rem!important; }
.flbf-page .flbf-footer-inner { display:flex; max-width:1160px; margin:auto; gap:1rem; flex-wrap:wrap; align-items:center; justify-content:space-between; color:#536079; font-size:.85rem; }
.flbf-page .flbf-footer a { color:var(--flbf-navy); text-decoration:underline; margin-left:1rem; }
.flbf-page .flbf-offer-expired { display:none; }
.flbf-page.flbf-offer-ended .flbf-offer-expired { display:block; }
.flbf-page.flbf-offer-ended .flbf-offer-live { display:none!important; }
.flbf-page [hidden], .flbf-check [hidden] { display:none!important; }
.flbf-btn, .flbf-page .flbf-btn { display:inline-flex; justify-content:center; align-items:center; gap:.6rem; text-align:center; padding:1rem 1.4rem; min-height:3rem; border:1px solid #A6228E; border-radius:.4rem; background:#A6228E; color:white!important; font-family:inherit; font-size:1rem; font-weight:700; line-height:1.3; text-decoration:none; cursor:pointer; transition:background-color .18s; }
.flbf-btn:hover, .flbf-page .flbf-btn:hover { background:#811E6F; border-color:#811E6F; }
.flbf-page .flbf-btn-secondary { background:transparent; color:#0A1738!important; border-color:#64718a; }
.flbf-page .flbf-btn-secondary:hover { background:#ffffffa0; }
.flbf-text-link { font-size:.93rem; font-weight:650; color:#811E6F; text-decoration:underline; text-underline-offset:.2rem; }
.flbf-check { color:#0A1738; font-family:Urbanist,sans-serif; font-size:1rem; letter-spacing:0; background:white; border:1px solid #dbe2ef; border-radius:1rem; overflow:hidden; box-shadow:0 .7rem 2rem rgba(10,23,56,.055); }
.flbf-check-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem; padding:1.2rem 1.7rem; background:#F3F7FF; color:#465a7d; font-size:.72rem; font-weight:800; letter-spacing:.06em; }
.flbf-check-stage { padding:1.8rem; min-height:29rem; }
.flbf-check .flbf-progress-label { display:flex; justify-content:space-between; font-size:.85rem; font-weight:650; color:#4b5973; }
.flbf-check progress { display:block; width:100%; height:.35rem; border:0; border-radius:1rem; margin:.6rem 0 1.7rem; background:#e9edf5; accent-color:#A6228E; }
.flbf-check progress::-webkit-progress-bar { background:#e9edf5; border-radius:1rem; }
.flbf-check progress::-webkit-progress-value { background:#A6228E; border-radius:1rem; }
.flbf-check progress::-moz-progress-bar { background:#A6228E; border-radius:1rem; }
.flbf-check h3, .flbf-page .flbf-check h3 { font-size:1.75rem; font-weight:750; line-height:1.17; letter-spacing:-.025em; margin:0 0 .8rem; }
.flbf-check h3:focus { outline:none; }
.flbf-check h4 { font-size:1.15rem; margin:1.5rem 0 1rem; color:#0A1738; }
.flbf-check p { font-size:1rem; line-height:1.6; letter-spacing:0; margin:0 0 1rem; }
.flbf-check .flbf-question-hint { color:#56647e; font-size:.95rem; }
.flbf-options { display:grid; gap:.65rem; margin:1.4rem 0; }
.flbf-check .flbf-choice { display:flex; align-items:center; gap:.9rem; width:100%; border:1px solid #d3dceb; background:white; color:#0A1738; padding:1rem; border-radius:.5rem; text-align:left; cursor:pointer; font-family:inherit; min-height:3.6rem; transition:background-color .15s,border-color .15s; }
.flbf-check .flbf-choice:hover, .flbf-check .flbf-choice[aria-pressed="true"] { background:#FCF3FF; border-color:#A6228E; color:#0A1738; }
.flbf-check .flbf-choice-number { display:grid; place-items:center; width:1.8rem; height:1.8rem; flex-shrink:0; border:1px solid #d8dfee; border-radius:.3rem; font-size:.75rem; color:#69758b; }
.flbf-check .flbf-choice-words { flex:1; }
.flbf-check .flbf-choice strong { display:block; font-size:1rem; font-weight:650; line-height:1.35; }
.flbf-check .flbf-choice-words > span { display:block; margin-top:.25rem; font-size:.85rem; line-height:1.3; color:#53617b; }
.flbf-check .flbf-choice-arrow { font-size:1.2rem; color:#A6228E; }
.flbf-quiz-controls { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.8rem; align-items:center; font-size:.8rem; color:#5c6780; }
.flbf-check .flbf-text-button { background:none; border:0; padding:.5rem 0; font:inherit; font-size:.9rem; color:#811E6F; text-decoration:underline; text-underline-offset:.2rem; cursor:pointer; }
.flbf-check .flbf-text-button:hover { background:transparent; color:#0A1738; }
.flbf-check .flbf-privacy { border-top:1px solid #e4e8ef; margin:0; padding:1rem 1.7rem; font-size:.76rem; line-height:1.5; color:#52617a; }
.flbf-check .flbf-medical-note { background:#f3f7ff; padding:1rem; border-radius:.4rem; font-size:.85rem; }
.flbf-result-label { color:#852174; font-size:.73rem!important; letter-spacing:.1em!important; font-weight:800; }
.flbf-result-offer { background:#FCF3FF; border-left:3px solid #A6228E; padding:1rem; margin:1.5rem 0; }
.flbf-result-offer strong { display:block; font-size:1.2rem; }
.flbf-result-offer span { display:block; font-size:.85rem; line-height:1.5; margin-top:.5rem; }
.flbf-location-links { display:flex; flex-wrap:wrap; gap:.65rem; margin-bottom:1rem; }
.flbf-location-links .flbf-btn { flex:1 1 9rem; font-size:.9rem; padding:.9rem; }
.flbf-check .flbf-reset { display:block; margin-top:1.5rem; font-size:.8rem; }
.flbf-page a:focus-visible, .flbf-check a:focus-visible, .flbf-check button:focus-visible, .flbf-page summary:focus-visible { outline:3px solid #4357B1; outline-offset:4px; }
@media(max-width:900px) {
  .flbf-page .flbf-hero-inner { gap:2rem; grid-template-columns:1fr 1fr; }
  .flbf-page .flbf-quiz-layout { grid-template-columns:1fr; gap:2rem; }
  .flbf-page .flbf-quiz-intro { position:static; }
  .flbf-page .flbf-step-list { display:flex; flex-wrap:wrap; gap:1.3rem; }
}
@media(max-width:640px) {
  .flbf-page .flbf-header { padding:1rem 1.1rem!important; }
  .flbf-page .flbf-logo { width:7.8rem!important; }
  .flbf-page .flbf-header-link .elementor-button { font-size:.85rem; padding:.8rem; }
  .flbf-page .flbf-hero { padding:2rem 1.2rem 2.3rem!important; }
  .flbf-page .flbf-hero-inner { grid-template-columns:1fr; gap:2rem; }
  .flbf-page .flbf-hero h1 { font-size:3rem; }
  .flbf-page .flbf-hero-copy { gap:1.2rem; }
  .flbf-page .flbf-intro { font-size:1.08rem; }
  .flbf-page .flbf-actions { align-items:stretch; }
  .flbf-page .flbf-actions .flbf-btn { flex:1 1 100%; }
  .flbf-page .flbf-offer { padding:1.4rem; }
  .flbf-page .flbf-hero-image img { aspect-ratio:2.2; }
  .flbf-page .flbf-trust-items { gap:.7rem; font-size:.88rem; }
  .flbf-page .flbf-trust-items span { flex:1 1 100%; }
  .flbf-page .flbf-section { padding:3rem 1.2rem!important; }
  .flbf-page .flbf-prices, .flbf-page .flbf-explainer { grid-template-columns:1fr; }
  .flbf-page .flbf-price-card { padding:1.4rem; }
  .flbf-page .flbf-quiz-layout { gap:1.8rem; }
  .flbf-check-top { padding:1rem 1.1rem; }
  .flbf-check-stage { padding:1.25rem; min-height:31rem; }
  .flbf-check h3, .flbf-page .flbf-check h3 { font-size:1.5rem; }
  .flbf-check .flbf-choice { padding:.9rem .8rem; gap:.6rem; }
  .flbf-check .flbf-choice strong { font-size:.96rem; }
  .flbf-check .flbf-privacy { padding:1rem 1.1rem; }
  .flbf-location-links .flbf-btn { flex-basis:100%; }
  .flbf-page .flbf-footer a { margin:0 1rem 0 0; }
}
@media(prefers-reduced-motion:reduce) { .flbf-btn, .flbf-check .flbf-choice { transition:none; } }

/* Full-width campaign experience with a deliberate linear check. */
.flbf-page .flbf-header { padding-top:.8rem!important; padding-bottom:.8rem!important; }
.flbf-page .flbf-header-link .elementor-button { background:transparent; color:#0A1738; border:1px solid #bcc5d6; box-shadow:none; }
.flbf-page .flbf-experience { position:relative; isolation:isolate; background:#090d17; padding:0!important; gap:0; }
.flbf-page .flbf-experience::before { content:''; position:absolute; inset:0 0 auto; height:42rem; z-index:-1; opacity:1; pointer-events:none; background-image:linear-gradient(90deg,rgba(9,13,23,.95) 0%,rgba(9,13,23,.8) 38%,rgba(9,13,23,.12) 80%),linear-gradient(0deg,#090d17 0%,rgba(9,13,23,.15) 80%),url('winter-evening.jpg'); background-size:cover; background-position:center,center,right top; }
.flbf-page .flbf-campaign-strip { background:#A6228E; padding:.7rem 1.5rem; color:#101522; }
.flbf-page .flbf-campaign-strip-inner { max-width:1160px; margin:auto; display:flex; gap:1rem 2rem; justify-content:space-between; align-items:center; flex-wrap:wrap; font-size:.95rem; line-height:1.4; letter-spacing:0; }
.flbf-page .flbf-campaign-strip strong { font-weight:900; font-size:1.1rem; letter-spacing:.04em; }
.flbf-page .flbf-campaign-strip a { color:#101522; font-weight:700; text-decoration:underline; text-underline-offset:.2rem; }
.flbf-page:not(.flbf-offer-ended) .flbf-offer-expired { display:none!important; }
.flbf-page .flbf-experience-inner { max-width:1160px; width:calc(100% - 3rem)!important; margin:auto; padding:2.8rem 0 2rem!important; gap:1.8rem; min-width:0; }
.flbf-page .flbf-experience-intro { padding:0!important; gap:1rem; max-width:49rem; }
.flbf-page .flbf-experience .flbf-eyebrow { color:#A6228E; font-size:.72rem; }
.flbf-page .flbf-experience .flbf-eyebrow::before { background:#A6228E; }
.flbf-page .flbf-experience h1 { font-size:clamp(2.8rem,4.1vw,4.15rem); font-weight:800; line-height:1.05; margin:0; color:white; letter-spacing:-.035em; }
.flbf-page .flbf-experience h1 span { color:#A6228E; }
.flbf-page .flbf-experience-intro p { max-width:42rem; color:#e0e5ed; font-size:1.1rem; line-height:1.55; letter-spacing:0; margin:0; }
.flbf-page .flbf-experience[data-flow="active"] .flbf-experience-intro,
.flbf-page .flbf-experience[data-flow="result"] .flbf-experience-intro { display:none; }
.flbf-page .flbf-experience[data-flow="active"]::before,
.flbf-page .flbf-experience[data-flow="result"]::before { opacity:.3; }
.flbf-page #sehfreiheits-check { scroll-margin-top:1.25rem; }
.flbf-page .flbf-image-note { font-size:.65rem; color:#b5bfcd; text-align:right; letter-spacing:.02em; margin:0; }
.flbf-page .flbf-experience .flbf-check { background:rgba(12,17,29,.93); border:1px solid #3d4657; border-radius:1rem; box-shadow:0 1rem 3rem rgba(0,0,0,.2); color:white; }
.flbf-page .flbf-experience .flbf-check-top { background:rgba(255,255,255,.035); color:#c3ccda; padding:.85rem 2rem; letter-spacing:.06em; }
.flbf-page .flbf-experience .flbf-check-stage { padding:1.7rem 2rem 1.5rem; min-height:27rem; }
.flbf-page .flbf-experience .flbf-stepper { display:flex; list-style:none; padding:0; margin:0 0 1.6rem; gap:0; }
.flbf-stepper li { position:relative; flex:1; display:flex; align-items:center; gap:.55rem; color:#9eabba; font-size:.78rem; line-height:1.3; }
.flbf-stepper li:not(:last-child)::after { content:''; height:1px; flex:1; background:#3e4858; margin:0 .7rem; }
.flbf-step-dot { display:grid; place-items:center; flex-shrink:0; border:1px solid #687587; color:#c6cfdc; width:1.7rem; height:1.7rem; border-radius:50%; font-weight:750; font-size:.8rem; }
.flbf-stepper li.is-current { color:white; font-weight:700; }
.flbf-stepper li.is-current .flbf-step-dot { background:#A6228E; border-color:#A6228E; color:#101522; }
.flbf-stepper li.is-complete .flbf-step-dot { border-color:#A6228E; color:#A6228E; }
.flbf-page .flbf-experience .flbf-progress-label { color:#A6228E; font-size:.7rem; font-weight:750; letter-spacing:.07em; }
.flbf-page .flbf-experience progress { height:.2rem; margin:.6rem 0 1.2rem; background:#333e50; accent-color:#A6228E; }
.flbf-page .flbf-experience progress::-webkit-progress-bar { background:#333e50; }
.flbf-page .flbf-experience progress::-webkit-progress-value { background:#A6228E; }
.flbf-page .flbf-experience progress::-moz-progress-bar { background:#A6228E; }
.flbf-page .flbf-experience .flbf-check h2 { font-size:clamp(1.7rem,2.6vw,2.65rem); line-height:1.12; color:white; font-weight:750; letter-spacing:-.03em; margin:0 0 .7rem; }
.flbf-page .flbf-experience .flbf-check h2:focus { outline:none; }
.flbf-page .flbf-experience .flbf-check p { color:#d4dce8; font-size:1rem; letter-spacing:0; }
.flbf-page .flbf-experience .flbf-question-hint { font-size:.94rem; color:#c1cbd8; }
.flbf-page .flbf-experience .flbf-options { grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); gap:.85rem; margin:1.5rem 0; }
.flbf-page .flbf-experience .flbf-choice { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:1.2rem; padding:1.25rem; min-height:10rem; border:1px solid #4a5669; border-radius:.65rem; background:#172031; color:white; text-align:left; letter-spacing:0; box-shadow:none; }
.flbf-page .flbf-experience .flbf-choice:hover { background:#222d40; border-color:#d779c6; transform:translateY(-2px); }
.flbf-page .flbf-experience .flbf-choice[aria-pressed="true"] { background:#301d36; border:2px solid #A6228E; padding:calc(1.25rem - 1px); }
.flbf-page .flbf-experience .flbf-choice-number { border-color:#6a778b; color:#dce4ee; background:transparent; width:1.6rem; height:1.6rem; border-radius:50%; }
.flbf-page .flbf-experience .flbf-choice[aria-pressed="true"] .flbf-choice-number { background:#A6228E; border-color:#A6228E; color:#101522; }
.flbf-page .flbf-experience .flbf-choice strong { font-size:1.1rem; color:white; line-height:1.28; font-weight:700; }
.flbf-page .flbf-experience .flbf-choice-words > span { color:#bfccdd; font-size:.84rem; margin-top:.45rem; line-height:1.4; }
.flbf-page .flbf-experience .flbf-choice-arrow { position:absolute; top:1.2rem; right:1.2rem; color:#A6228E; font-size:1.1rem; }
.flbf-page .flbf-experience .flbf-quiz-controls { gap:1rem; min-height:3rem; }
.flbf-page .flbf-experience .flbf-selection-hint { color:#c3ccda; font-size:.85rem; }
.flbf-page .flbf-experience .flbf-text-button { color:#e0e5ef; font-family:inherit; letter-spacing:0; }
.flbf-page .flbf-experience .flbf-next { background:#A6228E; color:#101522!important; border-color:#A6228E; font-family:inherit; letter-spacing:0; padding:.95rem 2.4rem; min-width:11rem; font-weight:800; }
.flbf-page .flbf-experience .flbf-next:hover { background:#811E6F; }
.flbf-page .flbf-experience .flbf-next:disabled { background:#303949; color:#b0b9c8!important; border-color:#566174; cursor:not-allowed; }
.flbf-page .flbf-experience .flbf-privacy { background:rgba(255,255,255,.025); border-color:#3b4656; color:#c0cada; font-size:.73rem; padding:.85rem 2rem; }
.flbf-page .flbf-experience .flbf-result-label { color:#A6228E; }
.flbf-page .flbf-experience .flbf-medical-note { background:#1e2a3f; color:#d5deeb; }
.flbf-page .flbf-experience .flbf-result-offer { background:#301d36; border-color:#A6228E; color:white; }
.flbf-page .flbf-experience .flbf-result-offer strong { color:#A6228E; }
.flbf-page .flbf-experience .flbf-check h3 { color:white; }
.flbf-page .flbf-experience .flbf-text-link { color:#A6228E; }
.flbf-page .flbf-experience .flbf-location-links .flbf-btn { background:#A6228E; border-color:#A6228E; color:#101522!important; letter-spacing:0; }
.flbf-page .flbf-experience .flbf-location-links .flbf-btn:hover { background:#811E6F; }
.flbf-page .flbf-experience a:focus-visible, .flbf-page .flbf-experience button:focus-visible { outline-color:white; }
@media(max-width:1200px) { .flbf-page .flbf-experience-inner { margin:0 auto; } }
@media(max-width:800px) {
  .flbf-page .flbf-experience .flbf-options { grid-template-columns:1fr 1fr; }
  .flbf-step-name { display:none; }
  .flbf-stepper li:last-child { flex:0; }
  .flbf-stepper li:not(:last-child)::after { margin:0 .8rem; }
}
@media(max-width:640px) {
  .flbf-page .flbf-campaign-strip { padding:.7rem 1.2rem; }
  .flbf-page .flbf-campaign-strip-inner { gap:.25rem .8rem; font-size:.77rem; }
  .flbf-page .flbf-campaign-strip strong { font-size:.95rem; }
  .flbf-page .flbf-campaign-strip a { font-size:.74rem; }
  .flbf-page .flbf-experience-inner { width:calc(100% - 2.1rem)!important; margin:0 auto; padding:1.8rem 0 1.4rem!important; gap:1.5rem; }
  .flbf-page .flbf-experience-intro { padding-right:1rem!important; }
  .flbf-page .flbf-experience h1 { font-size:clamp(2.1rem,9vw,2.6rem); }
  .flbf-page .flbf-experience-intro p { font-size:1rem; max-width:21rem; }
  .flbf-page .flbf-experience::before { height:39rem; background-position:center,center,65% top; background-image:linear-gradient(90deg,rgba(9,13,23,.92),rgba(9,13,23,.36)),linear-gradient(0deg,#090d17 5%,rgba(9,13,23,0) 95%),url('winter-evening.jpg'); }
  .flbf-page .flbf-experience .flbf-check-top { padding:.8rem 1rem; font-size:.65rem; gap:.25rem; }
  .flbf-page .flbf-experience .flbf-check-stage { padding:1.2rem 1rem; min-height:31rem; }
  .flbf-page .flbf-experience .flbf-stepper { margin-bottom:1.1rem; }
  .flbf-page .flbf-experience .flbf-check h2 { font-size:1.65rem; }
  .flbf-page .flbf-experience .flbf-options { gap:.6rem; margin:1.1rem 0; }
  .flbf-page .flbf-experience .flbf-choice { padding:.9rem; gap:.8rem; min-height:10.5rem; }
  .flbf-page .flbf-experience .flbf-choice[aria-pressed="true"] { padding:calc(.9rem - 1px); }
  .flbf-page .flbf-experience .flbf-choice strong { font-size:.98rem; }
  .flbf-page .flbf-experience .flbf-choice-words > span { font-size:.77rem; }
  .flbf-page .flbf-experience .flbf-choice-arrow { top:.9rem; right:.9rem; }
  .flbf-page .flbf-experience .flbf-privacy { padding:.9rem 1rem; font-size:.7rem; }
  .flbf-page .flbf-experience .flbf-next { padding:.85rem 1.2rem; min-width:8rem; }
}
@media(prefers-reduced-motion:reduce) { .flbf-page .flbf-experience .flbf-choice:hover { transform:none; } }
.flbf-page .flbf-experience .flbf-check p.flbf-privacy { font-size:.73rem; line-height:1.5; }

/* Focus Laser purple: readable tints on dark surfaces, brand colour on CTAs. */
.flbf-page .flbf-campaign-strip, .flbf-page .flbf-campaign-strip a { color:white; }
.flbf-page .flbf-experience h1 span,
.flbf-page .flbf-experience .flbf-eyebrow,
.flbf-page .flbf-experience .flbf-progress-label,
.flbf-page .flbf-experience .flbf-result-label,
.flbf-page .flbf-experience .flbf-result-offer strong,
.flbf-page .flbf-experience .flbf-text-link { color:#E4A0D7; }
.flbf-stepper li.is-current .flbf-step-dot,
.flbf-page .flbf-experience .flbf-choice[aria-pressed="true"] .flbf-choice-number { color:white; }
.flbf-stepper li.is-complete .flbf-step-dot { color:#E4A0D7; border-color:#D779C6; }
.flbf-page .flbf-experience progress { accent-color:#D779C6; }
.flbf-page .flbf-experience progress::-webkit-progress-value { background:#D779C6; }
.flbf-page .flbf-experience progress::-moz-progress-bar { background:#D779C6; }
.flbf-page .flbf-experience .flbf-choice-arrow { color:#E4A0D7; }
.flbf-page .flbf-experience .flbf-choice[aria-pressed="true"] { border-color:#D779C6; }
.flbf-page .flbf-experience .flbf-next,
.flbf-page .flbf-experience .flbf-location-links .flbf-btn { color:white!important; }
.flbf-page .flbf-experience .flbf-choice--visual { padding:0; gap:0; overflow:hidden; min-height:0; }
.flbf-page .flbf-experience .flbf-choice--visual[aria-pressed="true"] { padding:0; }
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-image { display:block; width:100%; height:auto; aspect-ratio:1.5; object-fit:cover; pointer-events:none; }
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-words { padding:1.1rem; width:100%; min-width:0; align-self:stretch; white-space:normal; }
.flbf-page .flbf-experience .flbf-choice strong, .flbf-page .flbf-experience .flbf-choice-words > span { white-space:normal; overflow-wrap:break-word; }
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-number,
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-arrow { position:absolute; top:.8rem; display:grid; place-items:center; width:1.8rem; height:1.8rem; border-radius:50%; background:rgba(9,13,23,.8); border:1px solid #d3dbe8; color:white; }
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-number { left:.8rem; }
.flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-arrow { right:.8rem; }
.flbf-page .flbf-experience .flbf-choice--visual[aria-pressed="true"] .flbf-choice-arrow,
.flbf-page .flbf-experience .flbf-choice--visual[aria-pressed="true"] .flbf-choice-number { background:#A6228E; border-color:white; }
@media(max-width:640px) {
  .flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-words { padding:.85rem; }
  .flbf-page .flbf-experience .flbf-choice--visual .flbf-choice-image { aspect-ratio:1.2; }
}

.flbf-page .flbf-campaign-strip-inner { color:white; }
