/* ============================================================
   Schmid Immobilien – Premium Design System (Editorial)
   Papier #F7F6F2 · Tinte #101d35 · Navy #011640 · Akzent #D0D70D
   Fraunces (Display) · Inter (Text)
   ============================================================ */
:root{
  --ink:#101d35; --navy:#011640; --paper:#F7F6F2; --white:#fff;
  --accent:#D0D70D; --hair:#DDD9CF; --hair2:#e8e5dd; --muted:#6b7280; --muted2:#8a8571;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased}
.serif,h1,h2{font-family:'Fraunces',serif;font-weight:300}
h1 em,h2 em{font-style:italic;font-weight:400}
img{max-width:100%;display:block}
a{color:var(--ink)}
.wrap{max-width:1240px;margin:0 auto;padding:0 5vw}
.eb{font-size:11.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted2);margin-bottom:24px;font-weight:600}
.btn{display:inline-block;background:var(--accent);color:var(--navy);font-weight:600;font-size:15px;padding:17px 38px;border-radius:2px;text-decoration:none;transition:.25s;border:none;cursor:pointer;font-family:'Inter',sans-serif}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(160,168,10,.3)}
.tlink{color:var(--ink);font-size:15px;text-decoration:underline;text-underline-offset:5px;margin-left:26px}
.tlink:hover{color:var(--muted)}
section{padding:96px 0}
.hairline{border-bottom:1px solid var(--hair)}

/* Reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}
.rv.on{opacity:1;transform:none}

/* Header */
header{position:sticky;top:0;z-index:100;background:var(--navy)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;max-width:1400px;margin:0 auto;padding:0 5vw}
.nav .logo img{height:36px}
.nav ul{display:flex;gap:30px;list-style:none;align-items:center}
.nav ul a{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.78);text-decoration:none;font-weight:500;padding:8px 0}
.nav ul a:hover,.nav ul a.active{color:#fff}
.nav .tel{color:#fff;font-size:14px;letter-spacing:0;text-transform:none;border:1px solid rgba(255,255,255,.35);padding:10px 20px;border-radius:2px}
.nav .tel:hover{border-color:#fff}
.nav li{position:relative}
.nav li.has-sub .sub{visibility:hidden;opacity:0;transform:translateY(8px);transition:.2s;position:absolute;top:100%;left:-22px;background:var(--navy);min-width:250px;padding:12px 0;border-top:2px solid var(--accent);box-shadow:0 20px 44px rgba(0,0,0,.35)}
.nav li.has-sub:hover .sub{visibility:visible;opacity:1;transform:translateY(0)}
.nav .sub a{display:block;padding:11px 24px;font-size:13px;letter-spacing:.05em;text-transform:none;color:rgba(255,255,255,.82)}
.nav .sub a:hover{background:rgba(255,255,255,.08);color:#fff}
.burger{display:none;font-size:24px;background:none;border:none;color:#fff;cursor:pointer}
.mobilenav{display:none;background:var(--navy);padding:8px 5vw 24px}
.mobilenav a{display:block;color:rgba(255,255,255,.85);font-size:15px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);text-decoration:none}
.mobilenav.open{display:block}

/* Hero Split (Startseite/Projekt) */
.hero{background:var(--paper);display:grid;grid-template-columns:1.05fr .95fr;min-height:min(88vh,860px)}
.hero .txt{display:flex;flex-direction:column;justify-content:center;padding:70px 5vw}
.hero h1{font-size:clamp(42px,4.6vw,72px);line-height:1.04;margin-bottom:30px;letter-spacing:-.01em}
.hero p.sub{font-size:17.5px;color:var(--muted);max-width:480px;margin-bottom:42px}
.hero .micro{display:flex;flex-wrap:wrap;gap:12px 28px;font-size:13px;color:var(--muted);border-top:1px solid var(--hair);padding-top:24px;max-width:480px;margin-top:44px}
.hero .img{position:relative;background-position:center;background-size:cover;min-height:60vh}
.hero .cap{position:absolute;bottom:0;left:0;background:var(--paper);padding:16px 26px 0 0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

/* Page-Hero (Unterseiten, editorial hell) */
.phero{padding:84px 0 68px;border-bottom:1px solid var(--hair)}
.phero h1{font-size:clamp(38px,4vw,62px);line-height:1.06;max-width:900px;margin-bottom:26px;letter-spacing:-.01em}
.phero p.sub{font-size:17.5px;color:var(--muted);max-width:560px;margin-bottom:40px}
.phero .micro{display:flex;flex-wrap:wrap;gap:12px 28px;font-size:13px;color:var(--muted);border-top:1px solid var(--hair);padding-top:22px;max-width:560px;margin-top:42px}

/* Statement */
.statement h2{font-size:clamp(30px,3.2vw,50px);line-height:1.18;max-width:900px}
.statement p{margin-top:28px;max-width:620px;color:var(--muted);font-size:17px}

/* Zahlen */
.numbers{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.numbers div{padding:36px 26px;border-right:1px solid var(--hair)}
.numbers div:last-child{border-right:none}
.numbers b{font-family:'Fraunces',serif;font-weight:300;font-size:44px;display:block;line-height:1;margin-bottom:10px}
.numbers span{font-size:13px;color:var(--muted);letter-spacing:.04em}
.ph{position:relative}
.ph::after{content:"belegbare Zahl einsetzen";position:absolute;top:10px;right:12px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#b3ac8f}

/* Sektionstitel */
.shead{margin-bottom:46px}
.shead h2{font-size:clamp(30px,3vw,46px);max-width:760px}
.shead p{margin-top:18px;color:var(--muted);max-width:600px;font-size:16.5px}

/* Hairline-Spalten (2er/3er) */
.cols{display:grid;border-top:1px solid var(--hair)}
.cols.c2{grid-template-columns:1fr 1fr}
.cols.c3{grid-template-columns:1fr 1fr 1fr}
.col{padding:44px 44px 44px 0;border-bottom:1px solid var(--hair)}
.cols.c2 .col:nth-child(2n){border-left:1px solid var(--hair);padding-left:48px;padding-right:0}
.cols.c3 .col{border-right:1px solid var(--hair);margin-right:40px;border-bottom:none;padding:40px 38px 0 0}
.cols.c3 .col:last-child{border-right:none;margin-right:0}
.col .no{font-size:12px;letter-spacing:.24em;color:var(--muted2);margin-bottom:20px;text-transform:uppercase}
.col h3{font-family:'Fraunces',serif;font-weight:400;font-size:27px;margin-bottom:14px}
.col p{color:var(--muted);font-size:15.5px;margin-bottom:20px;max-width:420px}
.col ul{list-style:none;margin-bottom:26px}
.col li{font-size:14.5px;padding:9px 0;border-bottom:1px solid var(--hair2);color:#3d4657}
.col a{font-size:14.5px;font-weight:600;text-decoration:underline;text-underline-offset:5px}

/* Nummerierte Hairline-Items */
.hitem{display:grid;grid-template-columns:64px 1fr;padding:22px 0;border-top:1px solid var(--hair)}
.hitem:last-of-type{border-bottom:1px solid var(--hair)}
.hitem .n{font-family:'Fraunces',serif;font-size:15px;color:var(--muted2)}
.hitem h4{font-size:16px;font-weight:600;margin-bottom:4px}
.hitem p{font-size:14.5px;color:var(--muted)}

/* Split */
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center}
.split.rev{grid-template-columns:1.1fr .9fr}
.split img{width:100%;object-fit:cover}
.split h2{font-size:clamp(30px,2.8vw,42px);margin-bottom:18px}
.split .lead{color:var(--muted);margin-bottom:40px;max-width:480px}
.bg-white{background:var(--white);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}

/* Navy Showcase */
.navyshow{background:var(--navy);color:#fff}
.navyshow .eb{color:rgba(255,255,255,.6)}
.navyshow h2{color:#fff;font-size:clamp(30px,3vw,46px);max-width:660px}
.navyshow .top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:54px;gap:30px;flex-wrap:wrap}
.navyshow .top a{color:#fff;font-size:14.5px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.navyshow img{width:100%;aspect-ratio:21/10;object-fit:cover}
.nfacts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18)}
.nfacts div{padding:26px 26px 26px 0;border-right:1px solid rgba(255,255,255,.18)}
.nfacts div:last-child{border-right:none}
.nfacts b{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:6px;font-weight:500}
.nfacts span{font-size:15.5px;color:#fff}

/* Stimmen */
.stimmen .big{font-family:'Fraunces',serif;font-weight:300;font-style:italic;font-size:clamp(24px,2.6vw,38px);line-height:1.35;margin-bottom:26px;max-width:860px}
.stimmen .who{font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.stimmen .row{display:grid;grid-template-columns:1fr 1fr;gap:5vw;margin-top:70px;padding-top:50px;border-top:1px solid var(--hair)}
.stimmen .row p{font-size:15.5px;font-style:italic;color:#3d4657;margin-bottom:14px}
.phq{outline:1.5px dashed #cfc9a8;outline-offset:8px}

/* Ablauf */
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hair)}
.steps .s{padding:44px 40px 0 0;border-right:1px solid var(--hair);margin-right:40px}
.steps .s:last-child{border-right:none;margin-right:0}
.steps .no{font-family:'Fraunces',serif;font-size:15px;color:var(--muted2);margin-bottom:16px}
.steps h3{font-size:19px;font-weight:600;margin-bottom:10px;font-family:'Inter',sans-serif}
.steps p{font-size:14.5px;color:var(--muted)}

/* Zusagen (Risk Reduction) */
.zusagen{margin-top:90px;background:var(--white);border:1px solid var(--hair);padding:44px 50px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.zusagen h4{font-size:14.5px;font-weight:600;margin-bottom:6px}
.zusagen p{font-size:13.5px;color:var(--muted)}
.zusagen .zt{grid-column:1/-1;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted2);border-bottom:1px solid var(--hair);padding-bottom:16px}

/* Team */
.tgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.member{background:var(--paper);padding-bottom:22px}
.member img{width:100%;aspect-ratio:1/1.08;object-fit:cover;object-position:top;filter:grayscale(100%) brightness(1.04) contrast(.96);transition:filter .35s}
.member:hover img{filter:grayscale(15%) saturate(.72) brightness(1.03) contrast(.97)}
/* Foto Markus (3. Karte) hat einen warmen Rotstich – zusätzlich korrigiert */
.member:nth-child(3):hover img{filter:grayscale(15%) saturate(.55) hue-rotate(-8deg) brightness(1.05) contrast(.96)}
.member h3{font-family:'Inter',sans-serif;font-size:15.5px;font-weight:600;margin:16px 20px 2px}
.member p{font-size:13px;color:var(--muted);margin:0 20px}
.member .lin{display:inline-flex;vertical-align:-2px;margin-left:6px;color:var(--muted2);transition:color .2s}
.member .lin svg{width:15px;height:15px}
.member .lin:hover{color:#0a66c2}

/* Listings */
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.listing{
  text-decoration:none;display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--hair2);border-radius:4px;overflow:hidden;
  transition:transform .5s cubic-bezier(.2,.7,.3,1),box-shadow .5s cubic-bezier(.2,.7,.3,1),border-color .5s
}
.listing:hover{transform:translateY(-6px);box-shadow:0 24px 52px rgba(1,22,64,.13);border-color:var(--hair)}
.listing:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.listing .imgwrap{position:relative;margin-bottom:0;overflow:hidden;background:var(--hair2)}
.listing img{aspect-ratio:16/11;object-fit:cover;width:100%;margin-bottom:0;transition:transform .7s cubic-bezier(.2,.7,.3,1)}
.listing:hover img{transform:scale(1.045)}
.listing .loc{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted2);margin-bottom:9px;padding:24px 26px 0}
.listing h3{font-family:'Fraunces',serif;font-weight:400;font-size:22px;line-height:1.28;margin-bottom:8px;padding:0 26px}
.listing .meta{font-size:14px;color:var(--muted);margin-bottom:18px;padding:0 26px}
.listing .price{
  font-size:15.5px;font-weight:600;margin-top:auto;padding:15px 26px 22px;
  border-top:1px solid var(--hair2);display:flex;align-items:baseline;justify-content:space-between;gap:14px
}
.listing .price .go{
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted2);font-weight:600;white-space:nowrap;
  opacity:0;transform:translateX(-8px);transition:opacity .4s,transform .4s
}
.listing .price .go::after{content:" →"}
.listing:hover .price .go{opacity:1;transform:none}

/* Listings-Filter */
.fbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:20px 0;margin-bottom:46px}
.chip{border:1px solid var(--hair);background:transparent;padding:9px 21px;font-size:13.5px;border-radius:999px;cursor:pointer;font-family:'Inter',sans-serif;color:var(--ink);transition:.25s}
.chip:hover{border-color:var(--navy);background:rgba(1,22,64,.04)}
.chip.on{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 8px 18px rgba(1,22,64,.18)}
.chip:focus-visible,.fbar select:focus-visible{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(1,22,64,.12)}
.fbar select{
  appearance:none;-webkit-appearance:none;
  padding:9px 40px 9px 17px;border:1px solid var(--hair);border-radius:999px;
  font-size:13.5px;font-family:'Inter',sans-serif;color:var(--ink);cursor:pointer;transition:.25s;
  background-color:#fff;background-repeat:no-repeat;background-position:right 15px center;background-size:11px 7px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7' viewBox='0 0 11 7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' fill='none' stroke='%236b7280' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
}
.fbar select:hover{border-color:var(--navy)}
.fbar .count{margin-left:auto;font-size:11.5px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.lbadge{position:absolute;top:14px;left:14px;background:rgba(1,22,64,.92);color:#fff;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:7px 14px;font-weight:600;border-radius:2px;backdrop-filter:blur(6px)}
.lbadge.sold{background:rgba(255,255,255,.94);color:var(--navy)}
.listing.sold img{filter:grayscale(60%)}
.noresults{padding:60px 0;color:var(--muted);font-size:15.5px}
@media(max-width:1080px){.lgrid{grid-template-columns:repeat(2,1fr);gap:24px}}

/* Live-Hinweis */
.livenote{display:inline-flex;align-items:center;gap:11px}
.livenote .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);position:relative;flex:none}
.livenote .dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--accent);animation:livepulse 2.6s ease-out infinite}
@keyframes livepulse{0%{transform:scale(1);opacity:.65}70%{transform:scale(3.2);opacity:0}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
  .livenote .dot::after{animation:none}
  .listing,.listing img,.listing .price .go{transition:none}
  .listing:hover{transform:none}
  .listing:hover img{transform:none}
}

/* Action / Stepper */
.action{background:var(--white);border-top:1px solid var(--hair);padding:80px 0 88px}
.action .grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}
.action h2{font-size:clamp(29px,2.9vw,42px);line-height:1.1;margin-bottom:14px}
.action .eb{color:var(--muted2);margin-bottom:16px}
.action .lead{color:var(--muted);font-size:16px;max-width:440px;margin-bottom:24px}
.action .alt{font-size:14.5px;color:var(--muted)}
.action .alt a{color:var(--ink)}
.calbox{display:flex;gap:20px;align-items:center;border:1px solid var(--hair2);background:var(--paper);padding:24px 26px;border-radius:6px;box-shadow:0 12px 34px rgba(1,22,64,.06);margin-bottom:16px;max-width:480px}
.calbox img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:top;flex:0 0 64px;border:2px solid var(--hair)}
.calbox h4{font-size:16px;font-weight:600;margin-bottom:4px;font-family:'Inter',sans-serif}
.calbox p{font-size:13.5px;color:var(--muted);margin-bottom:12px;line-height:1.5}
.calbox .btn{padding:13px 28px;font-size:14.5px}
.calbox .avail{display:block;font-size:12px;color:var(--muted2);margin-top:10px}
.calbox .avail i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#4ade80;margin-right:8px}
.walink{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--muted);text-decoration:none;margin-top:12px;border-top:1px solid var(--hair2);padding-top:12px}
.walink:hover{color:var(--ink)}
.wadot{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#25D366;color:#fff;flex:0 0 26px}
.wadot svg{width:14px;height:14px;display:block}
.sticky .a3{background:#25D366;color:#fff}
@media(max-width:940px){.calbox{padding:18px 18px;gap:16px;align-items:flex-start}.calbox img{width:52px;height:52px;flex:0 0 52px}.sticky a{padding:13px 6px;font-size:13.5px}}
.action.simple{text-align:left}
.stepper{background:var(--paper);color:var(--ink);padding:44px 46px;border-radius:3px}
.prog{display:flex;gap:8px;margin-bottom:30px}
.prog i{height:3px;flex:1;background:var(--hair);border-radius:2px}
.prog i.on{background:var(--navy)}
.stepper .st{display:none}
.stepper .st.on{display:block}
.stepper h3{font-family:'Fraunces',serif;font-weight:400;font-size:23px;margin-bottom:22px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:8px}
.opt{border:1px solid var(--hair);background:#fff;padding:16px 18px;font-size:14.5px;cursor:pointer;border-radius:2px;text-align:left;font-family:'Inter',sans-serif;transition:.15s;color:var(--ink)}
.opt:hover{border-color:var(--navy)}
.opt.sel{border-color:var(--navy);background:var(--navy);color:#fff}
.stepper label,.formmin label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.stepper input,.formmin input,.formmin select,.formmin textarea{width:100%;padding:14px 16px;border:1px solid var(--hair);border-radius:2px;font-size:15px;font-family:'Inter',sans-serif;background:#fff;margin-bottom:18px;color:var(--ink)}
.stepper input:focus,.formmin input:focus,.formmin select:focus,.formmin textarea:focus{outline:none;border-color:var(--navy)}
.snav{display:flex;justify-content:space-between;align-items:center;margin-top:22px}
.back{background:none;border:none;font-size:14px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:4px;font-family:'Inter',sans-serif}
.shint{font-size:12.5px;color:var(--muted);margin-top:18px}
.done{text-align:center;padding:30px 0}
.done .serif{font-size:26px;margin-bottom:12px}

/* Formular minimal (Suchprofil) */
.formmin{background:var(--white);border:1px solid var(--hair);padding:50px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.fgrid .full{grid-column:1/-1}

/* Ratgeber / Artikel */
.art{max-width:790px}
.art .leadp{font-size:18.5px;color:var(--muted);margin-bottom:38px;line-height:1.7}
.art h2{font-size:27px;margin:48px 0 16px}
.art h3{font-family:'Inter',sans-serif;font-weight:600;font-size:18px;margin:28px 0 8px;color:var(--ink)}
.art p{margin-bottom:18px;color:#3d4657;font-size:16px}
.art ul{margin:0 0 24px 22px;color:#3d4657;font-size:15.5px}
.art li{margin-bottom:9px}
.art a{text-decoration:underline;text-underline-offset:4px}
.art em{color:var(--muted)}
details{border-bottom:1px solid var(--hair)}
details:first-of-type{border-top:1px solid var(--hair)}
summary{cursor:pointer;padding:20px 44px 20px 0;font-family:'Inter',sans-serif;font-weight:600;font-size:16.5px;color:var(--ink);list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:6px;top:15px;font-size:22px;font-weight:400;color:var(--muted2)}
details[open] summary::after{content:"–"}
details .a{padding:0 34px 20px 0;color:var(--muted);font-size:15px}

/* Footer – architektonischer Abschluss */
footer{background:var(--navy);color:rgba(255,255,255,.55);font-size:14.5px}
.f-eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.38);font-weight:600;margin-bottom:20px}
.f-om{padding:76px 0 60px;border-bottom:1px solid rgba(255,255,255,.09)}
.f-om-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:6vw;align-items:end}
.f-statement{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(28px,3.4vw,46px);line-height:1.14;color:#fff;letter-spacing:-.01em}
.f-statement em{font-style:italic;font-weight:400}
.f-om-side p{max-width:340px;margin-bottom:24px;line-height:1.65}
.f-cta{color:#fff;text-decoration:none;font-weight:600;font-size:15px;border-bottom:1px solid var(--accent);padding-bottom:7px;transition:color .25s}
.f-cta span{display:inline-block;transition:transform .25s;color:var(--accent);margin-left:2px}
.f-cta:hover span{transform:translateX(6px)}
.f-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:5vw;padding:60px 0 68px}
.f-brand img{height:32px;margin-bottom:24px}
.f-brand p{line-height:1.7;max-width:300px}
.f-col a{display:block;color:rgba(255,255,255,.6);text-decoration:none;padding:6px 0;transition:color .2s,transform .2s}
.f-col a:hover{color:#fff;transform:translateX(3px)}
.f-contact a{color:rgba(255,255,255,.88)}
.f-contact a:hover{color:var(--accent);transform:none}
.f-contact p{margin-top:16px;line-height:1.7}
.f-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 26px;border-top:1px solid rgba(255,255,255,.09);padding:26px 0 32px;font-size:12.5px;color:rgba(255,255,255,.32)}
.f-links a{color:rgba(255,255,255,.45);text-decoration:none;margin-left:24px;transition:color .2s}
.f-links a:first-child{margin-left:0}
.f-links a:hover{color:#fff}
.f-links .f-lin{display:inline-block;vertical-align:-3px}
.f-links .f-lin svg{width:15px;height:15px;display:block;fill:currentColor}

/* Sticky mobile */
.sticky{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--navy);padding:10px 14px;gap:10px}
.sticky a{flex:1;text-align:center;padding:14px;font-size:14.5px;font-weight:600;text-decoration:none;border-radius:2px}
.sticky .a1{border:1px solid rgba(255,255,255,.4);color:#fff}
.sticky .a2{background:var(--accent);color:var(--navy)}

@media(max-width:940px){
  section{padding:64px 0}
  .action{padding:56px 0 64px}
  .action .grid{gap:26px}
  .shead{margin-bottom:32px}
  .hero{min-height:auto}
  .hero .txt{padding:44px 5vw 56px}
  .hero h1{font-size:clamp(34px,9vw,42px)}
  .hero p.sub{font-size:16px;margin-bottom:30px}
  .hero .micro{margin-top:30px;padding-top:18px;gap:8px 20px}
  .phero h1{font-size:clamp(31px,8.5vw,38px)}
  .phero p.sub{font-size:16px}
  .shead h2{font-size:clamp(26px,7vw,30px)}
  .statement h2{font-size:clamp(26px,7vw,32px)}
  .f-statement{font-size:clamp(25px,7vw,30px)}
  .hs-dots button{width:12px;height:12px}
  .hs-dots{gap:10px;bottom:16px;right:18px}
  .btn{padding:15px 30px;font-size:14.5px}
  .omr-step h2{font-size:24px}
  .ovl-nav{width:40px;height:40px}
  .hero .cap{padding:10px 16px 6px 5vw;font-size:10.5px;max-width:78%}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero .img{min-height:34vh;order:-1}
  .hero .txt{padding:52px 6vw 64px}
  .phero{padding:64px 0 56px}
  .numbers{grid-template-columns:1fr 1fr}
  .numbers div:nth-child(2){border-right:none}
  .cols.c2,.cols.c3{grid-template-columns:1fr}
  .cols.c2 .col:nth-child(2n){border-left:none;padding-left:0}
  .col,.cols.c3 .col{padding:40px 0;border-right:none;margin-right:0;border-bottom:1px solid var(--hair)}
  .split,.split.rev,.action .grid{grid-template-columns:1fr}
  .nfacts{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr}
  .steps .s{border-right:none;margin:0;padding:34px 0 0;border-top:1px solid var(--hair)}
  .steps .s:first-child{border-top:none}
  .zusagen{grid-template-columns:1fr 1fr;padding:30px 26px;gap:22px}
  .stimmen .row{grid-template-columns:1fr}
  .tgrid{grid-template-columns:1fr 1fr}
  .lgrid{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .formmin{padding:30px 24px}
  .nav ul{display:none}
  .burger{display:block}
  .f-om{padding:44px 0 38px}
  .f-om-grid{grid-template-columns:1fr;gap:18px;align-items:start}
  .f-statement{font-size:clamp(23px,6.4vw,27px)}
  .f-om-side p{font-size:14px;margin-bottom:16px;max-width:none}
  .f-eyebrow{margin-bottom:14px}
  .f-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding:38px 0 42px}
  .f-brand{grid-column:1/-1}
  .f-brand img{display:none}
  .f-brand p{font-size:13.5px;max-width:none}
  .f-col a{font-size:14px;padding:4px 0}
  .f-contact{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.09);padding-top:26px}
  .f-contact p{font-size:13px;margin-top:10px}
  .f-bottom{flex-direction:column;align-items:flex-start;gap:8px;padding:18px 0 24px;font-size:11.5px}
  .f-links a{margin-left:0;margin-right:18px}
  .sticky{display:flex}
  body{padding-bottom:66px}
  .stepper{padding:30px 24px}
  .opts{grid-template-columns:1fr}
}

/* ============================================================
   Off-Market-Zugang – Registrierungsmodul
   Ergänzt das bestehende Design-System (Papier/Navy/Akzent).
   ============================================================ */
.omr{--gap:14px;max-width:820px;margin:0 auto}
.omr *{box-sizing:border-box}

/* Kopf mit Fortschritt */
.omr-head{margin-bottom:38px}
.omr-bar{height:2px;background:var(--hair2);position:relative;overflow:hidden;border-radius:2px}
.omr-bar i{position:absolute;inset:0 auto 0 0;background:var(--navy);width:0;transition:width .55s cubic-bezier(.2,.7,.3,1)}
.omr-meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted2);font-weight:600}
.omr-meta .omr-skip{letter-spacing:.04em;text-transform:none;font-weight:500;color:var(--muted);background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:13.5px;text-decoration:underline;text-underline-offset:4px;padding:0}
.omr-meta .omr-skip:hover{color:var(--ink)}

/* Schritte */
.omr-step{display:none;animation:omrIn .45s cubic-bezier(.2,.7,.3,1)}
.omr-step.on{display:block}
@keyframes omrIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.omr-step h2{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(27px,3vw,40px);line-height:1.15;margin-bottom:12px}
.omr-step h2 em{font-style:italic;font-weight:400}
.omr-sub{color:var(--muted);font-size:16px;margin-bottom:30px;max-width:560px}

/* Auswahlkarten */
.omr-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.omr-grid.wide>.omr-card:last-child:nth-child(odd){grid-column:1/-1}
.omr-card{
  position:relative;text-align:left;background:var(--white);border:1px solid var(--hair);
  border-radius:4px;padding:20px 52px 20px 22px;cursor:pointer;font-family:'Inter',sans-serif;
  color:var(--ink);transition:border-color .25s,box-shadow .25s,transform .25s;min-height:76px
}
.omr-card:hover{border-color:var(--navy);transform:translateY(-2px);box-shadow:0 12px 26px rgba(1,22,64,.08)}
.omr-card:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.omr-card b{display:block;font-size:16px;font-weight:600;margin-bottom:3px}
.omr-card span{display:block;font-size:13.5px;color:var(--muted);line-height:1.45}
.omr-card.sel{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}
.omr-card .omr-tick{
  position:absolute;top:50%;right:20px;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;
  border:1px solid var(--hair);display:grid;place-items:center;transition:.25s
}
.omr-card.sel .omr-tick{background:var(--navy);border-color:var(--navy)}
.omr-card .omr-tick::after{
  content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;
  transform:rotate(45deg) translate(-1px,-1px) scale(.4);opacity:0;transition:.25s
}
.omr-card.sel .omr-tick::after{opacity:1;transform:rotate(45deg) translate(-1px,-1px) scale(1)}

/* Regionen */
.omr-all{width:100%;margin-bottom:18px}
.omr-region{border-top:1px solid var(--hair2);padding-top:20px;margin-top:20px}
.omr-region:first-of-type{border-top:none;padding-top:0;margin-top:0}
.omr-region>p{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted2);font-weight:600;margin-bottom:12px}
.omr-chips{display:flex;flex-wrap:wrap;gap:9px}
.omr-chip{
  border:1px solid var(--hair);background:var(--white);border-radius:999px;padding:11px 20px;
  font-size:14.5px;cursor:pointer;font-family:'Inter',sans-serif;color:var(--ink);transition:.2s
}
.omr-chip:hover{border-color:var(--navy);background:rgba(1,22,64,.04)}
.omr-chip.sel{background:var(--navy);border-color:var(--navy);color:#fff}
.omr-chip:focus-visible{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(1,22,64,.12)}
.omr-more{background:none;border:none;color:var(--muted);font-size:14px;font-family:'Inter',sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:16px 0 0}
.omr-more:hover{color:var(--ink)}

/* Untergruppe (Volumen / Strategie) */
.omr-set+.omr-set{margin-top:34px;border-top:1px solid var(--hair2);padding-top:30px}
.omr-set>h3{font-family:'Inter',sans-serif;font-size:15px;font-weight:600;margin-bottom:4px}
.omr-set>p{font-size:13.5px;color:var(--muted);margin-bottom:16px}
.omr-grid.three{grid-template-columns:1fr 1fr 1fr}
.omr-grid.three .omr-card{padding:16px 18px;min-height:0;text-align:center}
.omr-grid.three .omr-card b{font-size:15px;margin:0}

/* Kontaktfelder */
.omr-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.omr-fields .full{grid-column:1/-1}
.omr-fields label{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.omr-fields input{
  width:100%;padding:15px 17px;border:1px solid var(--hair);border-radius:3px;font-size:15.5px;
  font-family:'Inter',sans-serif;background:var(--white);color:var(--ink);transition:.2s
}
.omr-fields input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(1,22,64,.1)}
.omr-fields input:invalid:not(:placeholder-shown){border-color:#b4453c}
.omr-opt{font-size:11px;color:var(--muted2);text-transform:none;letter-spacing:0}

/* Zusammenfassung im letzten Schritt */
.omr-recap{background:var(--white);border:1px solid var(--hair2);border-radius:4px;padding:18px 22px;margin-bottom:26px}
.omr-recap dl{display:grid;grid-template-columns:auto 1fr;gap:7px 18px;font-size:14px;margin:0}
.omr-recap dt{color:var(--muted2);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding-top:2px}
.omr-recap dd{margin:0;color:var(--ink)}
.omr-recap .omr-edit{background:none;border:none;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;font-family:'Inter',sans-serif;padding:12px 0 0}

/* Einwilligung */
.omr-consent{display:flex;gap:13px;align-items:flex-start;margin:22px 0 4px;font-size:13.5px;color:var(--muted);line-height:1.55}
.omr-consent input{width:19px;height:19px;flex:none;margin-top:2px;accent-color:var(--navy)}
.omr-consent a{color:var(--ink)}

/* Navigation */
.omr-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:32px}
.omr-back{background:none;border:none;color:var(--muted);font-size:14.5px;cursor:pointer;font-family:'Inter',sans-serif;padding:10px 0}
.omr-back:hover{color:var(--ink)}
.omr-next{
  background:var(--accent);color:var(--navy);font-weight:600;font-size:15.5px;padding:17px 40px;
  border:none;border-radius:3px;cursor:pointer;font-family:'Inter',sans-serif;transition:.25s
}
.omr-next:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(160,168,10,.3)}
.omr-next:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
.omr-count{font-size:13px;color:var(--muted2)}

/* Vertrauen */
.omr-trust{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:26px;padding-top:22px;border-top:1px solid var(--hair2);font-size:13px;color:var(--muted2)}
.omr-trust span{display:inline-flex;align-items:center;gap:8px}
.omr-trust svg{width:13px;height:13px;flex:none}

/* Erfolg */
.omr-done{text-align:center;padding:20px 0 10px}
.omr-done .omr-seal{width:64px;height:64px;border-radius:50%;background:var(--navy);display:grid;place-items:center;margin:0 auto 26px}
.omr-done .omr-seal svg{width:26px;height:26px}
.omr-done h2{margin-bottom:14px}
.omr-done p{color:var(--muted);max-width:520px;margin:0 auto 10px;font-size:16px}
.omr-done .omr-profile{
  display:inline-block;text-align:left;background:var(--white);border:1px solid var(--hair2);
  border-radius:4px;padding:20px 26px;margin:28px auto 0
}

@media(max-width:720px){
  .omr-grid,.omr-fields{grid-template-columns:1fr}
  .omr-grid.three{grid-template-columns:1fr 1fr}
  .omr-card{min-height:0;padding:18px 50px 18px 20px}
  .omr-step h2{font-size:26px}
  .omr-sub{font-size:15px;margin-bottom:24px}
  .omr-nav{position:sticky;bottom:0;background:var(--paper);padding:14px 0 6px;margin-top:24px;
           border-top:1px solid var(--hair2);z-index:5}
  .omr-next{flex:1;padding:17px 20px}
  .omr-recap dl{grid-template-columns:1fr}
  .omr-recap dt{padding-top:8px}
}
@media(prefers-reduced-motion:reduce){
  .omr-step{animation:none}
  .omr-card:hover{transform:none}
  .omr-next:hover{transform:none}
  .omr-bar i{transition:none}
}

.omr-err{margin-top:18px;padding:14px 18px;border-radius:3px;background:#fdf3f2;border:1px solid #e6c9c5;color:#8d332b;font-size:14.5px}
.omr-profile dl{display:grid;grid-template-columns:auto 1fr;gap:7px 20px;font-size:14px;margin:0}
.omr-profile dt{color:var(--muted2);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding-top:2px}
.omr-profile dd{margin:0}

/* Muss nach allen display-Regeln stehen, sonst gewinnt .omr-nav{display:flex} */
.omr-hidden{display:none}

/* Galerie-Steuerung (Objektseite) */
.ovl-nav{
  position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;
  border:none;background:rgba(247,246,242,.92);color:var(--navy);font-size:26px;line-height:1;
  cursor:pointer;display:grid;place-items:center;transition:.2s
}
.ovl-nav:hover{background:#fff}
.ovl-nav.prev{left:16px}.ovl-nav.next{right:16px}
.ovl-count{position:absolute;bottom:14px;right:16px;background:rgba(1,22,64,.8);color:#fff;font-size:12px;padding:5px 12px;border-radius:999px;letter-spacing:.08em}
.ovl-thumbs{display:flex;gap:8px;overflow-x:auto}
.ovl-thumbs img{width:76px;height:54px;object-fit:cover;border-radius:3px;cursor:pointer;opacity:.55;transition:.2s;flex:none;border:2px solid transparent}
.ovl-thumbs img.on,.ovl-thumbs img:hover{opacity:1;border-color:var(--navy)}


/* Objekt-Detailseite */
.obj-back{font-size:14px;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--hair);padding-bottom:2px}
.obj-back:hover{color:var(--ink);border-color:var(--ink)}
.obj-gal{position:relative;border-radius:4px;overflow:hidden}
.obj-gal img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.obj-gal .lbadge{top:18px;left:18px}
.obj-thumbs{padding:12px 0 0}
.obj-cols{display:grid;grid-template-columns:1.6fr .9fr;gap:5vw;margin-top:48px;align-items:start}
.obj-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0 26px;border-top:1px solid var(--hair)}
.obj-tiles>div{padding:14px 0;border-bottom:1px solid var(--hair2)}
.obj-tiles dt{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted2);margin-bottom:3px}
.obj-tiles dd{margin:0;font-size:15.5px;font-weight:500}
.obj-chips{margin-top:36px}
.obj-chips h3,.obj-desc h3{font-family:'Fraunces',serif;font-weight:400;font-size:24px;margin-bottom:16px}
.obj-chips>div{display:flex;flex-wrap:wrap;gap:9px}
.obj-chip{border:1px solid var(--hair);background:var(--white);border-radius:999px;padding:9px 18px;font-size:13.5px}
.obj-desc{margin-top:40px;max-width:640px}
.obj-desc p,.obj-desc li{color:#3d4657;font-size:15.5px}
.obj-desc ul{margin:14px 0 14px 20px}
.obj-desc li{padding:3px 0}
.obj-desc b{color:var(--ink)}
.obj-side{position:sticky;top:96px}
.obj-card{background:var(--white);border:1px solid var(--hair2);border-radius:5px;padding:28px 26px}
.obj-price{font-family:'Fraunces',serif;font-weight:400;font-size:30px;margin-bottom:4px}
.obj-avail{font-size:13.5px;color:var(--muted);margin-bottom:20px}
.obj-actions{display:flex;flex-direction:column;gap:11px}
.obj-actions .btn{text-align:center;padding:16px 20px}
.obj-btn2{display:block;text-align:center;border:1px solid var(--navy);color:var(--navy);border-radius:3px;padding:14px 20px;font-size:14.5px;font-weight:600;text-decoration:none;transition:.2s}
.obj-btn2:hover{background:var(--navy);color:#fff}
.obj-tel{display:block;text-align:center;font-size:15px;margin-top:4px;text-decoration:underline;text-underline-offset:5px}
.obj-note{font-size:13px;color:var(--muted2);margin-top:6px}
.obj-agent{display:flex;gap:14px;align-items:center;border-top:1px solid var(--hair2);margin-top:24px;padding-top:22px}
.obj-agent img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:top}
.obj-agent b{display:block;font-size:15px}
.obj-agent span{display:block;font-size:12.5px;color:var(--muted)}
@media(max-width:940px){
  .obj-cols{grid-template-columns:1fr;gap:40px}
  .obj-side{position:static}
  .obj-gal img{aspect-ratio:4/3}
}

/* Anfrage-Panel Objektseite */
.inq{position:fixed;inset:0;z-index:210;display:none}
.inq.open{display:block}
.inq-back{position:absolute;inset:0;background:rgba(1,22,64,.55);backdrop-filter:blur(3px)}
.inq-panel{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,94vw);
  max-height:92vh;overflow-y:auto;background:var(--paper);border-radius:6px;
  box-shadow:0 30px 80px rgba(0,0,0,.4);animation:ovlFade .35s ease
}
@keyframes ovlFade{from{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}
.inq-x{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:none;background:var(--hair2);color:var(--ink);font-size:20px;cursor:pointer;z-index:2}
.inq-x:hover{background:var(--hair)}
.inq-body{padding:34px 32px 36px}
.inq-body>h3{font-family:'Fraunces',serif;font-weight:400;font-size:26px;margin-bottom:8px}
.inq-sub{font-size:14.5px;color:var(--muted);margin-bottom:18px}
.inq-wants{margin-bottom:22px}
.omr-fields textarea{
  width:100%;padding:14px 16px;border:1px solid var(--hair);border-radius:3px;font-size:15px;
  font-family:'Inter',sans-serif;background:var(--white);color:var(--ink);resize:vertical;transition:.2s
}
.omr-fields textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(1,22,64,.1)}
.inq-send{width:100%;margin-top:18px;text-align:center}
.inq-done{text-align:center;padding:12px 0 4px}
.inq-done h3{font-family:'Fraunces',serif;font-weight:400;font-size:24px;margin-bottom:10px}
.inq-done p{color:var(--muted);font-size:15px;margin-bottom:18px}
@media(max-width:560px){.inq-panel{width:100vw;max-height:100vh;border-radius:0;top:0;left:0;transform:none;height:100%}
@keyframes ovlFade{from{opacity:0}to{opacity:1}}
.inq-body{padding:60px 20px 40px}}

/* Verfuegbarkeits-Board + Knappheitshinweis */
.obj-scarce{
  display:block;background:rgba(208,215,13,.14);border:1px solid rgba(160,168,10,.45);
  color:#5a5f07;border-radius:3px;padding:10px 14px;font-size:13px;font-weight:600;
  letter-spacing:.04em;margin-bottom:4px
}
.avb{border-top:1px solid var(--hair)}
.avb-row{
  display:grid;grid-template-columns:110px 1fr auto auto;gap:10px 22px;align-items:center;
  padding:17px 6px;border-bottom:1px solid var(--hair2);text-decoration:none;color:var(--ink);
  transition:background .2s
}
a.avb-row:hover{background:rgba(1,22,64,.035)}
.avb-row.sold{color:var(--muted2)}
.avb-st{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;
  padding:6px 0;text-align:center;border-radius:2px}
.avb-st.published{background:var(--accent);color:var(--navy)}
.avb-st.reserved{background:var(--navy);color:#fff}
.avb-st.sold{background:var(--hair2);color:var(--muted2)}
.avb-t{font-size:15px}
.avb-t i{font-style:normal;color:#a06a00;font-weight:600;font-size:13px}
.avb-row.sold .avb-t{text-decoration:line-through;text-decoration-color:rgba(138,133,113,.5)}
.avb-p{font-size:15px;font-weight:600;white-space:nowrap}
.avb-go{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted2);font-weight:600;white-space:nowrap}
a.avb-row:hover .avb-go{color:var(--navy)}
@media(max-width:720px){
  .avb-row{grid-template-columns:86px 1fr;grid-template-areas:"st t" "st p"}
  .avb-st{grid-area:st}.avb-t{grid-area:t}.avb-p{grid-area:p;font-size:14px}
  .avb-go{display:none}
}

/* Hero-Karussell */
.hero-slides .hs{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.4s ease}
.hero-slides .hs.on{opacity:1}
.hero-slides .cap{z-index:2}
.hs-dots{position:absolute;bottom:20px;right:22px;display:flex;gap:8px;z-index:2}
.hs-dots button{width:9px;height:9px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:transparent;cursor:pointer;padding:0;transition:.25s;box-shadow:0 0 6px rgba(0,0,0,.35)}
.hs-dots button.on{background:#fff}
.hs-dots button:hover{background:rgba(255,255,255,.7)}
@media(prefers-reduced-motion:reduce){.hero-slides .hs{transition:none}}

/* Sofort-Bewertung: Ergebnis */
#bw-root .omr{max-width:none}
.bw-done{text-align:center;padding:26px 0 8px}
.bw-done h2{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(26px,3vw,38px);margin-bottom:12px}
.bw-done h2 em{font-style:italic;font-weight:400}
.bw-price{font-family:'Fraunces',serif;font-weight:300;font-size:clamp(40px,5vw,64px);line-height:1.05;margin:6px 0 10px}
.bw-range{font-size:14.5px;color:var(--muted);margin-bottom:20px}
.bw-note{font-size:14.5px;color:var(--muted);max-width:520px;margin:0 auto 22px}
.bw-cta{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px}
@media(max-width:560px){.bw-cta .btn{width:100%;text-align:center}.bw-cta .tlink{margin-left:0}}
