/* Desktop ergonomics — loaded by 22d-desktop-ergonomics.php.
   Phone lessons applied to ≥960px (the shared desktop breakpoint of the
   header banner and the sticky contact bar). Phones/tablets are untouched. */

.dw-header-contact-label{display:none}
.dw-desktop-entry,.dw-desktop-mapsearch{display:none}

/* ===== 10. Homepage: map search above the hero, map tile + entry below ===
   The interactive map ("Wo möchten Sie Urlaub machen?" → /interaktive-karte/
   ?q=, 5 nearest centres) is unique to us, so on desktop it gets a search bar
   above the hero and a map hero tile below it, beside the three choices from
   the phone landing page (42b). The header pill is dropped on the homepage.
   Primary actions are white on --dw-terracotta-cta. The Customizer forces
   h1–h7 to 38px teal !important, hence the !important on headings. */
@media(min-width:960px){
 body.home .dw-desktop-banner .dw-header-mapsearch{display:none!important}
 body.dueseweb-modern :is(.dw-desktop-mapsearch,.dw-desktop-entry) .screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 body.dueseweb-modern :is(.dw-desktop-mapsearch,.dw-desktop-entry),body.dueseweb-modern :is(.dw-desktop-mapsearch,.dw-desktop-entry) *{box-sizing:border-box}

 /* Search bar above the hero */
 body.dueseweb-modern .dw-desktop-mapsearch{display:flex;align-items:center;gap:18px;margin:12px 16px 14px;padding:16px 22px;border:1px solid rgba(255,220,184,.22);border-radius:18px;background:linear-gradient(100deg,#0f3a59 0%,#123f62 55%,#0b2a42 100%);box-shadow:0 8px 28px rgba(0,0,0,.25);color:#ffdcb8;font-family:var(--dw-font-sans),sans-serif}
 body.dueseweb-modern .dw-desktop-mapsearch__globe{flex:none;font-size:34px;line-height:1}
 body.dueseweb-modern .dw-desktop-mapsearch__lbl{flex:none;min-width:0}
 body.dueseweb-modern .dw-desktop-mapsearch__lbl h2{margin:0!important;font-family:var(--dw-font-serif),Georgia,serif!important;font-size:26px!important;line-height:1.15!important;font-weight:400!important;color:#ffdcb8!important;text-align:left!important}
 body.dueseweb-modern .dw-desktop-mapsearch__lbl p{margin:4px 0 0!important;font-size:15px!important;line-height:1.4!important;color:#e9d2ba!important}
 body.dueseweb-modern .dw-desktop-mapsearch .dw-desktop-mapform{flex:1;min-width:0}
 body.dueseweb-modern .dw-desktop-mapsearch__usp{flex:none;padding:6px 10px;border-radius:999px;background:#ffdcb8;color:#0e3558!important;-webkit-text-fill-color:#0e3558;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}

 /* Shared search form */
 body.dueseweb-modern .dw-desktop-mapform{display:flex;gap:10px;margin:0}
 body.dueseweb-modern .dw-desktop-mapform input[type=search]{flex:1;min-width:0;height:56px;margin:0;padding:0 18px;border:2px solid #ffdcb8;border-radius:12px;background:#fff;color:#0e3558!important;-webkit-text-fill-color:#0e3558;caret-color:#0e3558;font-family:inherit;font-size:19px;box-shadow:none}
 body.dueseweb-modern .dw-desktop-mapform input[type=search]::placeholder{color:#5c6f7e!important;-webkit-text-fill-color:#5c6f7e;opacity:1}
 body.dueseweb-modern .dw-desktop-mapform input[type=search]:focus-visible{outline:3px solid #ffdcb8;outline-offset:2px}
 body.dueseweb-modern .dw-desktop-mapform button{flex:none;height:56px;margin:0;padding:0 22px;border:0;border-radius:12px;background:var(--dw-terracotta-cta,#bf501c);color:#fff;-webkit-text-fill-color:#fff;font:600 18px/1 var(--dw-font-sans),sans-serif;cursor:pointer;white-space:nowrap}
 body.dueseweb-modern .dw-desktop-mapform button:is(:hover,:focus-visible){background:var(--dw-terracotta-cta-hover,#a3431a)}
 body.dueseweb-modern .dw-desktop-mapform button:focus-visible{outline:3px solid #ffdcb8;outline-offset:2px}

 /* Entry section below the hero */
 body.dueseweb-modern .dw-desktop-entry{display:block;margin:14px 16px 18px;padding:22px 24px 22px;border:1px solid rgba(255,220,184,.16);border-radius:18px;background:linear-gradient(160deg,#123855 0%,#0b2a42 100%);color:#ffdcb8;font-family:var(--dw-font-sans),sans-serif}
 body.dueseweb-modern .dw-desktop-entry__kicker{margin:0 0 4px!important;font-size:13px!important;line-height:1.3!important;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#e9b98d!important}
 body.dueseweb-modern .dw-desktop-entry .dw-desktop-entry__h{margin:0 0 14px!important;font-family:var(--dw-font-serif),Georgia,serif!important;font-size:30px!important;line-height:1.15!important;font-weight:400!important;letter-spacing:-.01em;color:#ffdcb8!important;text-align:left!important}
 body.dueseweb-modern .dw-desktop-entry__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px}

 /* Map hero tile */
 body.dueseweb-modern .dw-desktop-map{position:relative;overflow:hidden;border:1px solid #648095;border-radius:16px;background:#cfdde6}
 body.dueseweb-modern .dw-desktop-map__canvas{position:absolute;inset:0;display:block;overflow:hidden}
 body.dueseweb-modern .dw-desktop-map__canvas:focus-visible{outline:3px solid #ffdcb8;outline-offset:-3px}
 /* The tile has a fixed 2:1 ratio and the 2:1 map frame is 125% of its
    width, so the frame always covers it: ~13°E (52.6% across the frame) at
    the centre and ~38°N (38% down) at 37% of the tile height, above the
    search overlay. Markers are % of the frame. (Container-query height
    units resolved to 0 here, hence plain percentages.) */
 body.dueseweb-modern .dw-desktop-map{aspect-ratio:2/1}
 body.dueseweb-modern .dw-desktop-map__frame{position:absolute;left:50%;top:37%;width:125%;aspect-ratio:2/1;transform:translate(-52.6%,-38%)}
 body.dueseweb-modern .dw-desktop-map__frame img{display:block;width:100%;height:100%;max-width:none;object-fit:fill}
 body.dueseweb-modern .dw-desktop-map__dot{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#bf501c;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
 body.dueseweb-modern .dw-desktop-map__badge{position:absolute;top:14px;left:14px;padding:6px 10px;border-radius:999px;background:#ffdcb8;color:#0e3558!important;-webkit-text-fill-color:#0e3558;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
 body.dueseweb-modern .dw-desktop-map__over{position:absolute;left:0;right:0;bottom:0;padding:44px 20px 20px;background:linear-gradient(180deg,rgba(8,31,49,0) 0%,rgba(8,31,49,.9) 34%,#081f31 100%);color:#ffdcb8}
 body.dueseweb-modern .dw-desktop-map__over h3{margin:0!important;font-family:var(--dw-font-serif),Georgia,serif!important;font-size:24px!important;line-height:1.2!important;font-weight:400!important;color:#ffdcb8!important;text-align:left!important}
 body.dueseweb-modern .dw-desktop-map__over p{margin:4px 0 12px!important;font-size:16px!important;line-height:1.4!important;color:#f1dcc6!important}
 body.dueseweb-modern .dw-desktop-map__over .dw-desktop-mapform :is(input[type=search],button){height:52px}
 body.dueseweb-modern .dw-desktop-map__over .dw-desktop-mapform input[type=search]{font-size:18px}
 body.dueseweb-modern .dw-desktop-map__over .dw-desktop-mapform button{font-size:17px;padding:0 18px}
 body.dueseweb-modern .dw-desktop-map__attrib{position:absolute;top:6px;right:8px;padding:1px 5px;border-radius:4px;background:rgba(255,255,255,.75);color:#33475b;-webkit-text-fill-color:#33475b;font-size:11px;line-height:1.4;pointer-events:none}

 /* Three choices, stacked beside the map */
 body.dueseweb-modern .dw-desktop-entry__tiles{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px}
 body.dueseweb-modern .dw-desktop-entry__tile{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:linear-gradient(140deg,#174566,#0c2c44);border:1px solid #648095;border-radius:16px;color:#ffdcb8!important;font-size:20px;line-height:1.3;text-decoration:none!important}
 body.dueseweb-modern .dw-desktop-entry__tile>span:first-child{min-width:0}
 body.dueseweb-modern .dw-desktop-entry__tile small{display:block;margin-top:6px;font-size:16px;line-height:1.35;color:#e9d2ba}
 body.dueseweb-modern .dw-desktop-entry__tile:is(:hover,:focus-visible){border-color:#ffdcb8;background:linear-gradient(140deg,#1b5079,#0f3553)}
 body.dueseweb-modern .dw-desktop-entry__tile.is-primary{background:var(--dw-terracotta-cta,#bf501c);border-color:var(--dw-terracotta-cta,#bf501c);color:#fff!important}
 body.dueseweb-modern .dw-desktop-entry__tile.is-primary small{color:#fff}
 body.dueseweb-modern .dw-desktop-entry__tile.is-primary:is(:hover,:focus-visible){background:var(--dw-terracotta-cta-hover,#a3431a);border-color:var(--dw-terracotta-cta-hover,#a3431a)}
 body.dueseweb-modern .dw-desktop-entry :is(.dw-desktop-entry__tile,.dw-desktop-entry__help):focus-visible{outline:3px solid #ffdcb8;outline-offset:3px}
 body.dueseweb-modern .dw-desktop-entry__arrow{flex:none;font-size:26px;line-height:1}
 body.dueseweb-modern .dw-desktop-entry__foot{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-top:14px}
 body.dueseweb-modern .dw-desktop-entry__note{margin:0!important;font-size:16px!important;line-height:1.45!important;color:#e9d2ba!important}
 body.dueseweb-modern .dw-desktop-entry__help{flex:none;font-size:17px;line-height:1.4;color:#ffdcb8!important;text-decoration:underline!important;text-underline-offset:3px;white-space:nowrap}
}
@media(min-width:960px) and (max-width:1199px){
 body.dueseweb-modern .dw-desktop-mapsearch__lbl p,body.dueseweb-modern .dw-desktop-mapsearch__usp{display:none}
 body.dueseweb-modern .dw-desktop-mapsearch__lbl h2{font-size:22px!important}
 body.dueseweb-modern .dw-desktop-entry__grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
 body.dueseweb-modern .dw-desktop-entry__tile{font-size:18px;padding:14px 16px}
 body.dueseweb-modern .dw-desktop-entry__tile small{font-size:15px}
 body.dueseweb-modern .dw-desktop-map__over .dw-desktop-mapform button{padding:0 14px}
 /* Narrower tile: taller 4:3 ratio for the search overlay; frame 180% wide to cover it. */
 body.dueseweb-modern .dw-desktop-map{aspect-ratio:4/3}
 body.dueseweb-modern .dw-desktop-map__frame{width:180%}
}
@media(min-width:960px) and (prefers-reduced-motion:no-preference){
 body.dueseweb-modern :is(.dw-desktop-entry__tile,.dw-desktop-mapform button){transition:background-color .15s,border-color .15s}
}

/* ===== 1. Contact gate: the form first, explanations beside it ===========
   Phone lesson: online action first, explanations second. Desktop keeps the
   single-step form; the service notice, explainer and steps move into a
   right-hand column instead of pushing the fields below the fold. */
@media(min-width:960px){
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate){display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);column-gap:36px;row-gap:20px;align-items:start}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate)>*{grid-column:2;width:auto!important;max-width:none!important;min-width:0;margin-left:0!important;margin-right:0!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate)>.dw-res-gate{grid-column:1;grid-row:1 / span 8;margin-top:0!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate)>.dw-enquiry-more{display:none!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate) .dw-expl-inline__inner{grid-template-columns:1fr!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate) .dw-res-gate-inner{align-items:stretch!important;text-align:left!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate) :is(.dw-res-gate-heading,.dw-res-gate-sub){text-align:left!important}
 body.dw-phone-enquiry .dw-form-shell:has(>.dw-res-gate) .dw-res-gate-form{width:100%!important;max-width:none!important}
 body.dw-phone-enquiry .dw-res-gate :is(.dw-res-gate-sub,.dw-res-gate-field p,.dw-res-gate-helper,.dw-res-gate-text){font-size:16px!important;line-height:1.45!important}
 body.dw-phone-enquiry .dw-res-gate-channel-row{justify-content:flex-start!important;text-align:left!important}
 body.dw-phone-enquiry .dw-res-gate-channel-pill{min-height:44px;font-size:16px!important}
 body.dw-phone-enquiry .dw-res-gate [data-dw-res-gate-submit]{min-height:52px!important;font-size:18px!important}
}

/* ===== 3. One contact route on every desktop page ========================
   Phones have the bottom Kontakt bar; desktop had only a tel: icon. The icon
   now carries a visible label and opens the shared panel, WhatsApp first —
   every patient reaches us by WhatsApp or SMS, not all have e-mail. */
@media(min-width:960px){

 body.dueseweb-modern .dw-contact-dialog{width:min(460px,calc(100vw - 48px));padding:20px}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel{display:flex;flex-direction:column;color:#ffdcb8}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>h2{order:0}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>.dw-sticky-bar-wa-hours{order:1;margin:0 0 4px!important;font-size:16px!important;line-height:1.45}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>.dw-sticky-bar-wa{order:2}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>.dw-contact-action[href^="tel:"]{order:3}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>.dw-contact-hours{order:4}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel>.dw-contact-action:not([href^="tel:"]){order:5}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel :is(.dw-contact-action,.dw-sticky-bar-wa){display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;box-sizing:border-box;min-height:52px;padding:12px 14px;margin:8px 0;gap:4px;font-size:18px;line-height:1.35;border:1px solid #648095;border-radius:12px;text-decoration:none;color:#ffdcb8;background:#10354f}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel .dw-sticky-bar-wa{flex-direction:row;align-items:center;gap:10px;background:#bf501c;border-color:#bf501c;color:#fff}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel .dw-sticky-bar-wa:is(:hover,:focus-visible){background:#a3431a}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel .dw-contact-action:is(:hover,:focus-visible){border-color:#ffdcb8}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel .dw-contact-action span{font-size:16px}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel .dw-contact-hours{font-size:16px;line-height:1.4;margin:2px 0 6px}
 body.dueseweb-modern .dw-contact-dialog .dw-sticky-contact-panel :is(.dw-contact-action,.dw-sticky-bar-wa):focus-visible{outline:3px solid #ffdcb8;outline-offset:2px}
}

/* The visible "Kontakt" label only where the banner has room for it; below
   1360px the banner content already fills the row, so the icon stays compact
   (it still opens the panel, with an accessible name). */
@media(min-width:1360px){
 body.dueseweb-modern #dw-header-phone[data-dw-contact-selector]{width:auto!important;min-width:52px;padding:0 14px;gap:8px;font-family:var(--dw-font-sans),sans-serif;font-size:16px;font-weight:600}
 body.dueseweb-modern #dw-header-phone[data-dw-contact-selector] .dw-header-contact-label{display:inline;line-height:1}
 /* Room for the labelled Kontakt + Menü buttons (was 108px for two icons). */
 body.dueseweb-modern .dw-desktop-banner-inner{padding-right:calc(var(--dw-sp-5) + 260px)}
}
/* 960–1359px: logo + team strip + search + CTA + kiosk + labelled buttons
   need ~1300px; at 1024px the "Sprechen Sie mit uns" caption already ran
   into the search pill. The strip links to
   the same page as "Dialyseplatz anfragen"; drop it until there is room. */
@media(min-width:960px) and (max-width:1359px){
 body.dueseweb-modern .dw-desktop-banner-team{display:none}
}

/* Finder (coastal template): the shared banner is printed by
   22d-desktop-ergonomics.php for a logo/home link and the enquiry CTA. The
   page has its own destination search, so the header search is dropped, and
   the template's generic button/link styles are reset inside the banner. */
@media(min-width:960px){
 body.dw-coastal-preview .dw-desktop-banner .dw-header-mapsearch{display:none!important}
 body.dw-coastal-preview .dw-desktop-banner a{box-shadow:none}
 body.dw-coastal-preview .dw-desktop-banner img{max-width:none}
}

/* ===== 7. Heading scale ==================================================
   The Customizer "Additional CSS" forces every h1–h7 to 38px !important, so
   card headings in ~240–310px columns broke into 4–6 lines and mid-word
   ("Qualitätskriteri-en"). Phone lesson: ~25px question headings. */
@media(min-width:960px){
 body.dueseweb-modern .dw-process-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:32px!important;width:100%!important;max-width:none!important}
 body.dueseweb-modern .dw-process-step{width:auto!important;max-width:none!important;min-width:0}
 body.dueseweb-modern :is(.dw-process-step,.dw-quality-card) h3{font-size:25px!important;line-height:1.25!important;hyphens:manual;overflow-wrap:normal}
}

/* ===== 8. Header: named menu, back button clear of the logo ==============
   Phone lesson: navigation carries a visible "Menü" label. The back button
   (fixed top-left on inner pages) sat on top of the banner logo. */
@media(min-width:1360px){
 /* Grid keeps the three bars stacked in column 1, the label in column 2. */
 body.dueseweb-modern #dw-nav-toggle{display:grid!important;width:112px!important;padding:0 12px;grid-template-columns:24px auto;grid-template-rows:repeat(3,2px);row-gap:5px;column-gap:10px;align-content:center;justify-content:center}
 body.dueseweb-modern #dw-nav-toggle .dw-nav-bar{grid-column:1}
 body.dueseweb-modern #dw-header-phone{right:140px!important}
 body.dueseweb-modern #dw-nav-toggle .dw-nav-tooltip{grid-column:2;grid-row:1 / 4;align-self:center;display:inline!important;position:static!important;opacity:1!important;transform:none!important;animation:none!important;background:none!important;border:0!important;padding:0!important;font-family:var(--dw-font-sans),sans-serif;font-size:16px!important;font-weight:600;line-height:1;color:var(--dw-ink)!important;white-space:nowrap}
 body.dueseweb-modern #dw-nav-toggle .dw-nav-tooltip::before,body.dueseweb-modern #dw-nav-toggle .dw-nav-tooltip::after{display:none!important}
}
@media(min-width:960px){
 body.dueseweb-modern:has(#dw-back-btn) .dw-desktop-banner-inner{padding-left:calc(var(--dw-sp-5) + 64px)}
}
@media(min-width:960px) and (max-width:1359px){
 /* Pays for the back-button room so the 960px header still fits. */
 body.dueseweb-modern .dw-header-mapsearch{width:180px!important}
}

/* ===== 9. Reservation choice page: the online route as a real button ===== */
@media(min-width:960px){
 body.dueseweb-modern .dw-wahl-online-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;padding:12px 28px!important;font-size:18px!important;font-weight:600;color:#fff!important;-webkit-text-fill-color:#fff!important;background:var(--dw-terracotta-cta,#bf501c)!important;border:0!important;border-radius:12px!important;text-decoration:none!important}
 body.dueseweb-modern .dw-wahl-online-btn:is(:hover,:focus-visible){background:var(--dw-terracotta-cta-hover,#a3431a)!important}
}

/* ===== 5. Floating extras ================================================
   Phone lesson: no floating clutter over a form. On the enquiry pages the
   share/feedback/explainer floats are hidden at every width above phones
   (phones already hide them in phone-enquiry.css). */
@media(min-width:601px){
 body.dw-phone-enquiry :is(.dw-share-trigger-float,.dw-feedback,.dw-expl-pill-wrap,.dw-team-float,.dw-info-pill){display:none!important}
}
@media(min-width:960px){
 /* The explainer pill sat exactly on top of the info pill (i), hiding it. */
 .dw-expl-pill-wrap{left:78px!important;bottom:22px!important}
 /* On the finder it covered the first result's "Details ansehen"; the
    explainer is not part of that task. */
 body.dw-coastal-preview .dw-expl-pill-wrap{display:none!important}
 /* Smaller, edge-pinned share/feedback stack covers less of the content. */
 body.dueseweb-modern .dw-share-trigger-float{right:10px;width:46px;height:46px}
 body.dueseweb-modern .dw-feedback{right:10px;top:calc(50% + 38px)}
 body:has(dialog[open]) :is(.dw-share-trigger-float,.dw-feedback,.dw-expl-pill-wrap,.dw-info-pill){visibility:hidden}
}

/* ===== 6. Readable text for the 65+ cohort ===============================
   Phone lesson: body copy 16–18px, nothing below ~13px. */
@media(min-width:960px){
 /* Header search */
 body.dueseweb-modern .dw-header-mapsearch-input{font-size:15px!important;min-height:36px}
 body.dueseweb-modern .dw-header-mapsearch-btn{min-width:36px;min-height:36px}

 /* Homepage hero + mosaic tiles (were 9.75–14px) */
 body.dueseweb-modern .dw-home-intro__sub{font-size:17px!important;line-height:1.45!important}
 body.dueseweb-modern :is(.dw-home-intro__cta-primary,.dw-home-intro__cta-label){font-size:16px!important}
 body.dueseweb-modern .dw-mosaic-kicker{font-size:13px!important}
 body.dueseweb-modern .dw-mosaic-sub{font-size:14px!important;line-height:1.35!important}
 body.dueseweb-modern .dw-mosaic-weather{font-size:13px!important}
 body.dueseweb-modern .dw-occupancy-pill{font-size:13px!important}
 body.dueseweb-modern :is(.dw-wa-hours-line,.dw-social-follow-wa-num,.dw-social-follow-label){font-size:15px!important}

 /* Reservation choice page (was 11–14.5px) */
 body.dueseweb-modern :is(.dw-wahl-sub,.dw-wahl-online-sub,.dw-wahl-online-sub em){font-size:17px!important;line-height:1.45!important}
 body.dueseweb-modern :is(.dw-wahl-steps-text,.dw-wahl-team-strip-caption,.dw-wahl-team-strip-name,.dw-wahl-presence){font-size:16px!important;line-height:1.4!important}
 body.dueseweb-modern .dw-wahl-online-taub-kicker{font-size:13px!important}
 body.dueseweb-modern .dw-wahl-online-taub-name{font-size:16px!important}

 /* Visitor-gate modal (labels 12.75px, footer 11.25px at 55% opacity) */
 body .dw-vg-modal label{font-size:15px;opacity:.9}
 body .dw-vg-modal .dw-vg-anmelden{font-size:16px;opacity:.9}
 body .dw-vg-modal .dw-vg-footer{font-size:14px;opacity:.8}
 body .dw-vg-modal .dw-vg-error{font-size:16px}

 /* Finder (coastal template; 10–13px) */
 body.dw-coastal-preview .search label span{font-size:14px}
 body.dw-coastal-preview .chips button{font-size:15px}
 body.dw-coastal-preview :is(.resultsheader,.saved-count,.maphint,.dw-map-count,.dw-country-jump,.dw-map-filter-panel summary,.dw-map-service-help>summary,.dw-map-filters label){font-size:15px!important}
 body.dw-coastal-preview .tag{font-size:13px}
 body.dw-coastal-preview :is(.experience,.photolabel){font-size:14px}
 body.dw-coastal-preview .place{font-size:15px}
 body.dw-coastal-preview .description{font-size:16px}
 body.dw-coastal-preview .actions button{font-size:15px;min-height:44px}
 body.dw-coastal-preview :is(.dw-country-card summary,.dw-country-card p,.dw-country-card button){font-size:15px}
 body.dw-coastal-preview :is(.map-detail p,.map-detail button,.mapfloat){font-size:15px}
 body.dw-coastal-preview dialog p{font-size:17px}
 body.dw-coastal-preview dialog a{font-size:16px}
}
