.buchungsportal{--ink:#18373a;--sub:#51625e;--muted:#eef2ee;--line:#d9e1dd;background:#fff;color:var(--ink);font:400 15px/1.48 Inter,Arial,sans-serif}
.bp-width{width:min(1180px,91%);margin-inline:auto}.buchungsportal :is(h2,h3,p){margin:0}.buchungsportal h2,.buchungsportal h3{color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.1;letter-spacing:-.045em}.buchungsportal h2{font-size:clamp(25px,2.8vw,40px);font-weight:720}.buchungsportal h3{font-size:clamp(17px,1.5vw,22px);font-weight:650}.buchungsportal a{color:inherit;text-decoration:none}.buchungsportal :is(a,button,summary,select):focus-visible{outline:3px solid #ae4236;outline-offset:2px}
.buchungsportal [id],#urlaub-entdecken{scroll-margin-top:72px}.bp-rail{border-block:1px solid var(--line);background:#f5f7f4}.bp-rail>.bp-width,.bp-rail>.bp-width>div{display:flex;align-items:center;gap:clamp(10px,2vw,28px)}.bp-rail>.bp-width{justify-content:space-between}.bp-rail a{display:inline-flex;align-items:center;min-height:48px;font-size:14px;font-weight:600}.bp-rail a:hover,.bp-service a:hover,.bp-other a:hover{text-decoration:underline}
.bp-block{padding-block:clamp(26px,3.5vw,48px)}.bp-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.bp-heading p,.bp-service p{color:var(--sub);margin-top:5px}.bp-all{display:inline-flex;gap:10px;align-items:center;min-height:44px;padding-inline:16px;border:1px solid #b8c7c0;border-radius:8px;font-weight:650;white-space:nowrap}.bp-all:hover{background:var(--muted)}
.bp-filters{padding:10px 12px;background:#f1f4f0;border:1px solid var(--line);border-radius:10px;display:grid;align-items:end;grid-template-columns:1fr 1fr 1fr auto;gap:10px}
.bp-filters label{display:grid;gap:3px;color:#304b46;font-size:12px;font-weight:650}.bp-filters select{width:100%;min-width:0;height:42px;padding:0 8px;font:500 14px Inter,Arial,sans-serif;color:var(--ink);background:#fff;border:1px solid #bac7be;border-radius:6px}.bp-view{background:#ad392e;color:white;padding:0 18px;min-height:42px;border:0;border-radius:6px;font-weight:650}.bp-view:hover{background:#8f3028}
.buchungsportal .bp-count{color:var(--sub);font-size:13px;margin:14px 0 9px}.bp-rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.bp-room{display:flex;flex-direction:column;overflow:hidden;border-radius:11px;border:1px solid #d4ded8;background:white;transition:border-color .15s}.bp-room:hover{border-color:#6e877a}.bp-picture{aspect-ratio:1.96;display:grid;place-items:center;overflow:hidden;background:#e5ece6}.bp-room img{width:100%;height:100%;object-fit:cover}.bp-room-copy{display:flex;flex:1;flex-direction:column;padding:14px 16px}.bp-room-copy small{color:#586961;font-weight:550;font-size:13px}.bp-room h3{margin:4px 0 6px;overflow-wrap:anywhere}.bp-room p{margin-bottom:12px;font-size:13px;color:#435750}.bp-rate{margin-top:auto;border-top:1px solid #e1e8e2;padding-top:9px;font-size:13px}.bp-rate strong{font-size:23px;line-height:1;font-weight:720;letter-spacing:-.045em}.bp-rate>span{float:right;font-size:19px;color:#a43c31}.buchungsportal .bp-pricenote{color:#596c65;font-size:12px;margin:12px 0 0}.bp-reset{border:0;color:#99372d;text-decoration:underline;background:transparent;min-height:44px}
.bp-places{background:#eef3ef}.bp-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bp-locations>a{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;display:flex;align-items:center;gap:14px;padding-right:12px}.bp-locations img{width:30%;height:90px;object-fit:cover}.bp-locations p{color:var(--sub);font-size:13px;margin-top:3px}.bp-locations span{margin-left:auto;color:#8d392d}.bp-other{margin-top:12px}.bp-other summary{cursor:pointer;min-height:44px;align-content:center;font-size:14px;font-weight:650}.bp-other nav{display:flex;flex-wrap:wrap;gap:4px 18px}.bp-other a{padding:8px 0;text-decoration:underline}
.bp-service>.bp-width,.bp-service>.bp-width>div{display:flex;align-items:center;gap:18px}.bp-service>.bp-width{justify-content:space-between}.bp-service img{width:76px;height:76px;border-radius:50%;object-fit:cover}.bp-service h2{font-size:clamp(21px,2.1vw,29px)}.bp-service p{font-size:14px;margin-bottom:5px}.bp-service a{font-weight:600;font-size:14px;color:#304f48}.bp-service nav{display:grid;min-width:200px}.bp-service nav a{padding:8px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px}
@media(max-width:760px){.bp-filters{grid-template-columns:1fr 1fr}.bp-rooms{grid-template-columns:1fr;gap:9px}.bp-room{display:grid;grid-template-columns:34% minmax(0,1fr)}.bp-picture{aspect-ratio:auto;position:relative}.bp-picture img{position:absolute;inset:0}.bp-room-copy{padding:12px}.bp-room p{margin-bottom:7px}.bp-rate{padding-top:7px}.bp-locations{grid-template-columns:1fr}.bp-locations img{width:94px;height:65px}.bp-service>.bp-width{align-items:start;flex-direction:column}.bp-service nav{width:100%}.bp-heading{align-items:start}.bp-all{font-size:13px;min-height:38px;padding-inline:10px}}
@media(max-width:550px){.bp-rail>.bp-width{align-items:start;gap:0;flex-direction:column}.bp-rail>.bp-width>div{width:100%;justify-content:space-between}.bp-rail [data-assistance]{border-top:1px solid var(--line);width:100%}.bp-heading{display:block}.bp-heading .bp-all{margin-top:6px;border:0;padding:0;color:#9a342c}.bp-view{font-size:13px;padding:0 6px}.bp-service>.bp-width>div{gap:11px}.bp-service img{width:55px;height:55px}.bp-room-copy small,.bp-room p{font-size:12px}.bp-rate strong{font-size:20px}}
/* Secondary pages share the booking portal typography and tighter spacing. */
.sb-inner,.sb-restkopf{background:white}.strandbuch.sb-inner h1,.sb-restkopf h1{font-size:clamp(34px,4.4vw,64px)}.strandbuch.sb-inner h2{font-size:clamp(26px,2.9vw,40px)}.sb-inner :is(h1,h2) em,.sb-restkopf h1 em{display:inline;color:inherit;font:inherit;letter-spacing:inherit}.sb-inner .sb-cover,.sb-inner .sb-portrait,.sb-restkopf .sb-cover{padding-block:clamp(22px,3vw,44px)}.sb-inner .sb-cover>img,.sb-restkopf .sb-cover>img{max-height:225px;border-radius:9px}.sb-inner .sb-portrait img{max-height:300px;border-radius:9px}.sb-directory,.sb-offers,.sb-log{padding-block:clamp(24px,3vw,42px)}.sb-inner .sb-directory>a{font-size:clamp(16px,1.65vw,23px);min-height:48px}
body[data-page="home"] #hdr.solid{background-color:white!important;backdrop-filter:none}
.pk-service{background:#fff}main .pk-cover{padding-block:clamp(20px,3.3vw,44px)}main .pk-service h1{font-size:clamp(33px,4.2vw,60px)}.pk-cover figure{border-radius:9px}.pk-cover figure img{height:clamp(165px,21vw,270px)}main .pk-ledger,main .pk-end{padding-block:clamp(22px,3vw,40px)}.pk-service .pk-ledger{background:#f0f4f0}.pk-owner .pk-actions a,.pk-contact .pk-actions a{min-height:44px}
body[data-page="service-kontakt"] #kontaktformular .inquiry-card,body[data-page="service-kontakt"] #kontaktformular .inquiry-aside{border-radius:10px;box-shadow:none;border:1px solid #d5e1d9}body[data-page="service-kontakt"] #kontaktformular .inquiry-aside{background:#f1f5f1}
/* The mascot owns the lower right corner. Keep the booking controls out of its column. */
:root{--fox-size:76px;--fox-edge:max(9px,env(safe-area-inset-right));--fox-lane:calc(var(--fox-size) + var(--fox-edge) + 9px)}
body.fewo-connected #chatLaunch,body.fewo-connected #chatLaunch.hidden{position:fixed!important;display:flex!important;right:var(--fox-edge)!important;bottom:max(9px,env(safe-area-inset-bottom))!important;left:auto!important;top:auto!important;width:var(--fox-size);height:var(--fox-size);z-index:65;align-items:center;justify-content:center;cursor:pointer}
body.fewo-connected #chatLaunch #wfBubble{display:none!important}
body.fewo-connected #chatLaunch .wf-bob{position:relative;display:block!important;width:100%!important;height:100%!important}
body.fewo-connected #chatLaunch .wf-bob picture,body.fewo-connected #chatLaunch .wf-bob img{display:block!important;width:100%!important;height:100%!important;object-fit:contain}
body.fewo-connected #chatLaunch .wf-bob>span{display:grid!important;position:absolute!important;inset:0 0 auto auto!important;width:22px!important;height:22px!important;place-items:center}
body.fewo-connected #chatLaunch .wf-bob>span .ico{width:13px!important;height:13px!important}
body.fewo-connected #chatPanel{bottom:calc(var(--fox-size) + max(9px,env(safe-area-inset-bottom)) + 8px)!important;right:var(--fox-edge)!important;max-height:calc(100dvh - var(--fox-size) - 30px)}
@media(max-width:1400px){
 .is-home .coast-inner>.coast-finder{margin-right:max(0px,calc(var(--fox-lane) - (100vw - 100%) / 2))}
 .is-home .coast-feature,.is-home .buchungsportal .bp-width{width:min(1180px,calc(100% - var(--fox-lane) - 4vw));margin-left:max(4vw,calc((100% - 1180px)/2));margin-right:auto}
 body.is-inner>main{margin-right:var(--fox-lane)}
}
@media(max-width:760px){:root{--fox-size:52px;--fox-edge:max(4px,env(safe-area-inset-right))}
 .is-home .coast-inner>.coast-finder{margin-right:calc(var(--fox-lane) - 4vw)}
 body.fewo-connected #chatLaunch .wf-bob>span{width:17px!important;height:17px!important}
 .is-home .bp-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
}
body[data-page="listenseiten-buchungsluecken"] main>#freie-zeitraeume{background:white!important;color:#17363a!important;isolation:auto;width:100%;padding:0 0 36px!important;margin:0;max-width:none}
body[data-page="listenseiten-buchungsluecken"] main>#freie-zeitraeume::before{content:none!important}
body[data-page="listenseiten-buchungsluecken"] main>#freie-zeitraeume [hidden]{display:none!important}
body[data-page="listenseiten-buchungsluecken"] main>#freie-zeitraeume :is(p,span,a,label,h2){color:#29433f}
#freie-zeitraeume [data-rest-link]{background:#e6eeea!important;color:#1b4237!important}
.sb-restkopf .rz-intro{padding:clamp(20px,3vw,40px) 0 20px}.rz-intro h1{margin:6px 0 8px}.rz-intro>p:last-child{max-width:68ch;color:#455e57}.rz-wrap{width:min(1180px,90%);margin:auto;color:#193b3c;font:400 15px/1.4 Inter,Arial,sans-serif}
.rz-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;background:#edf2ed;padding:14px;border:1px solid #cddbd2;border-radius:9px}.rz-filters label{flex:1 1 165px;display:grid;gap:4px;font:650 12px Inter,sans-serif}.rz-filters select{min-height:44px;min-width:0;width:100%;padding:0 10px;background:white;border:1px solid #acbeb3;border-radius:6px;color:#193b3c;font:500 14px Inter,sans-serif}.rz-reset{background:none;min-height:44px;text-decoration:underline;color:#87352d}.rz-wrap .rz-count{font-weight:650;margin:14px 0 8px}.rz-results{display:grid;gap:8px}
.rz-results .rz-offer{display:grid;grid-template-columns:104px minmax(140px,1.5fr) minmax(158px,1fr) minmax(110px,.65fr) auto;align-items:center;gap:clamp(10px,2vw,23px);padding:10px;border-radius:9px;border:1px solid #cfdbd2;color:#193b3c;text-decoration:none;background:white}.rz-offer:hover{border-color:#708c7b}.rz-offer:focus-visible{outline:3px solid #a23c30}
.rz-offer>img{width:104px;height:78px;object-fit:cover;border-radius:5px}.rz-unit,.rz-period,.rz-money{min-width:0;display:grid;gap:3px}.rz-unit small,.rz-money small,.rz-offer .rz-period span,.rz-offer .rz-unit span{color:#475e55;font-size:12px}.rz-offer .rz-unit h3{color:#17363a;font:650 clamp(16px,1.4vw,21px)/1.15 Inter,sans-serif;margin:0;overflow-wrap:anywhere;letter-spacing:-.035em}.rz-period b{font-size:15px}.rz-money strong{font-size:23px;letter-spacing:-.04em}.rz-offer .rz-go{font-size:13px;font-weight:650;background:#e7efe8;color:#204b3b!important;padding:10px;border-radius:6px;white-space:nowrap}
@media(max-width:1060px){.rz-results .rz-offer{grid-template-columns:76px minmax(115px,1fr) minmax(130px,1fr) minmax(90px,.6fr)}.rz-offer>img{width:76px;height:70px}.rz-offer .rz-go{display:none}}
@media(max-width:720px){.rz-filters{padding:10px;gap:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rz-filters label{min-width:0}.rz-filters label:nth-child(3){grid-column:1/-1}.rz-results .rz-offer{grid-template-columns:66px minmax(0,1fr);gap:10px;padding:11px}.rz-offer>img{width:66px;height:60px}.rz-period{grid-column:1/-1;border-top:1px solid #e1e8e1;padding-top:7px}.rz-money{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.rz-period b{font-size:14px}.rz-money strong{font-size:21px}}
@media(max-width:720px){.rz-offer .rz-go{display:inline-flex;grid-column:1/-1;align-items:center;justify-content:center;padding:7px}.sb-restkopf .sb-crumb{padding-block:12px}.sb-restkopf .rz-intro{padding:15px 0}.sb-restkopf .rz-intro .sb-label{display:none}}
@media(max-width:400px){:root{--fox-size:46px;--fox-edge:max(3px,env(safe-area-inset-right));--fox-lane:calc(var(--fox-size) + var(--fox-edge) + 6px)}}
