/*
Theme Name: Travelprincess Child
Theme URI: https://travelprincess.de/
Description: Child Theme für das Travelprincess Theme.
Author: Travelprincess
Template: travelprincess-theme
Version: 1.39.8
Text Domain: travelprincess-child
*/

.tp-redesign-home {
    --tp-dark: #654C52;
    --tp-ink: #654C52;
    --tp-rose: #B2979D;
    --tp-soft: #F1E7E2;
    --tp-soft-2: #F1E7E2;
    --tp-paper: #fffefd;
    --tp-white: #ffffff;
    margin: 0;
    background: var(--tp-paper);
    color: var(--tp-dark);
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size: 16px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}

.tp-redesign-home *, .tp-redesign-home *::before, .tp-redesign-home *::after { box-sizing: border-box; }
.tp-redesign-home img { display: block; max-width: 100%; }
.tp-redesign-home button, .tp-redesign-home input, .tp-redesign-home select { font: inherit; }
.tp-redesign-home a { color: inherit; }
.tp-redesign-home .screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.tp-redesign-home .tp-shell { width: min(1220px, calc(100% - 48px)); margin-inline: auto; }
.tp-redesign-home .tp-home-main { overflow: clip; }
.tp-redesign-home h1, .tp-redesign-home h2, .tp-redesign-home h3 { margin:0; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-weight:400; color:var(--tp-ink); letter-spacing:-.025em; }
.tp-redesign-home p { margin-top:0; }
.tp-redesign-home .tp-eyebrow { margin:0 0 8px; color:#9B7F86; font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
.tp-redesign-home .tp-button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:11px 23px; border:1px solid var(--tp-dark); background:var(--tp-dark); color:#fff; text-decoration:none; font-size:14px; line-height:1.2; transition:.2s ease; }
.tp-redesign-home .tp-button:hover, .tp-redesign-home .tp-button:focus { background:#725b62; border-color:#725b62; color:#fff; }
.tp-redesign-home .tp-button-small { min-height:42px; padding:10px 18px; }
.tp-redesign-home .tp-button-outline { background:transparent; color:var(--tp-dark); }
.tp-redesign-home .tp-button-outline:hover, .tp-redesign-home .tp-button-outline:focus { background:var(--tp-dark); color:#fff; }
.tp-redesign-home .tp-text-link { color:var(--tp-dark); text-decoration:none; font-size:14px; }
.tp-redesign-home .tp-text-link:hover, .tp-redesign-home .tp-text-link:focus { color:var(--tp-rose); }
.tp-redesign-home .tp-chevron-icon { display:block; width:16px; height:16px; overflow:visible; transform-origin:center; transition:transform .2s ease; }
.tp-redesign-home .tp-chevron-down, .tp-redesign-home .tp-chevron-up, .tp-redesign-home .tp-chevron-right, .tp-redesign-home .tp-chevron-left { transform:none; }

/* Header */
.tp-redesign-home .tp-home-header { position:relative; z-index:300; background:var(--tp-soft); }
.tp-redesign-home .tp-home-header::after { content:""; position:absolute; z-index:-1; left:0; right:0; bottom:-20px; height:20px; background:linear-gradient(to bottom, var(--tp-soft), rgba(241,231,226,0)); pointer-events:none; }
.tp-redesign-home .tp-home-header-inner { min-height:92px; display:flex; align-items:center; gap:28px; }
.tp-redesign-home .tp-home-logo { width:202px; flex:0 0 202px; align-self:center; }
.tp-redesign-home .tp-home-logo img { width:100%; height:auto; max-height:64px; object-fit:contain; }
.tp-redesign-home .tp-home-nav { margin-left:auto; }
.tp-redesign-home .tp-home-menu { display:flex; align-items:center; gap:clamp(12px,1.35vw,22px); margin:0; padding:0; list-style:none; }
.tp-redesign-home .tp-home-menu > li { position:relative; list-style:none; }
.tp-redesign-home .tp-home-menu > li > a, .tp-redesign-home .tp-nav-item-row > a { color:var(--tp-dark); text-decoration:none; font-size:16px; line-height:1.2; white-space:nowrap; }
.tp-redesign-home .tp-nav-item-row { display:flex; align-items:center; gap:4px; }
.tp-redesign-home .tp-nav-dropdown-toggle, .tp-redesign-home .tp-tree-toggle { display:inline-grid; place-items:center; margin:0; padding:0; border:0; background:transparent; color:#9b8589; cursor:pointer; }
.tp-redesign-home .tp-nav-dropdown-toggle { width:23px; height:28px; }
.tp-redesign-home .tp-nav-dropdown-toggle .tp-chevron-icon { width:16px; height:16px; }
.tp-redesign-home .tp-has-submenu.is-open > .tp-nav-item-row .tp-nav-dropdown-toggle .tp-chevron-down { transform:rotate(180deg); }
.tp-redesign-home .tp-home-menu a:hover, .tp-redesign-home .tp-home-menu a:focus { color:var(--tp-rose); }
.tp-redesign-home .tp-submenu { position:absolute; top:calc(100% + 16px); left:0; width:310px; max-height:min(68vh,570px); overflow:auto; padding:15px 16px 14px; background:var(--tp-paper); box-shadow:0 20px 50px rgba(79,58,64,.14); border:1px solid rgba(101,76,82,.08); opacity:0; visibility:hidden; transform:translateY(7px); transition:opacity .18s ease, transform .18s ease, visibility .18s; }
.tp-redesign-home .tp-has-submenu:hover > .tp-submenu, .tp-redesign-home .tp-has-submenu:focus-within > .tp-submenu, .tp-redesign-home .tp-has-submenu.is-open > .tp-submenu { opacity:1; visibility:visible; transform:none; }
.tp-redesign-home .tp-tree { margin:0; padding:0; list-style:none; }
.tp-redesign-home .tp-tree-item { margin:0; padding:0; list-style:none; }
.tp-redesign-home .tp-tree-row { display:grid; grid-template-columns:minmax(0,1fr) 30px; align-items:center; min-height:42px; }
.tp-redesign-home .tp-tree-row > a { min-width:0; padding:8px 4px; color:var(--tp-dark); text-decoration:none; font-size:14px; line-height:1.25; }
.tp-redesign-home .tp-tree-toggle { width:30px; height:34px; justify-self:end; }
.tp-redesign-home .tp-tree-toggle .tp-chevron-icon { width:15px; height:15px; }
.tp-redesign-home .tp-tree-item.is-open > .tp-tree-row .tp-tree-toggle .tp-chevron-right { transform:rotate(90deg); }
.tp-redesign-home .tp-tree-children { display:none; padding-left:16px; border-left:0; }
.tp-redesign-home .tp-tree-item.is-open > .tp-tree-children { display:block; }
.tp-redesign-home .tp-tree-depth-1 .tp-tree-row > a { font-size:13.5px; }
.tp-redesign-home .tp-tree-depth-2 .tp-tree-row > a, .tp-redesign-home .tp-tree-depth-3 .tp-tree-row > a { font-size:13px; color:#816c72; }
.tp-redesign-home .tp-menu-all-link { display:block; margin-top:8px; padding:13px 4px 4px; border-top:1px solid rgba(101,76,82,.09); color:#9B7F86; text-decoration:none; font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.tp-redesign-home .tp-header-tools { display:flex; align-items:center; gap:11px; flex:0 0 auto; }
.tp-redesign-home .tp-search-toggle { display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; background:transparent; color:var(--tp-dark); cursor:pointer; }
.tp-redesign-home .tp-search-toggle svg { width:19px; height:19px; }
.tp-redesign-home .tp-social-links { display:flex; align-items:center; gap:8px; }
.tp-redesign-home .tp-social-links a { display:grid; place-items:center; width:24px; height:24px; color:var(--tp-dark); text-decoration:none; }
.tp-redesign-home .tp-social-links svg { width:17px; height:17px; }
.tp-redesign-home .tp-header-search { position:absolute; left:0; right:0; top:100%; background:rgba(255,250,248,.98); box-shadow:0 14px 34px rgba(79,58,64,.09); }
.tp-redesign-home .tp-header-search[hidden] { display:none; }
.tp-redesign-home .tp-header-search-inner { min-height:74px; display:flex; align-items:center; gap:12px; }
.tp-redesign-home .tp-header-search form { flex:1; display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:12px; }
.tp-redesign-home .tp-header-search form > svg { width:20px; }
.tp-redesign-home .tp-header-search input { width:100%; min-height:44px; border:0; border-bottom:1px solid rgba(101,76,82,.18); background:transparent; outline:0; color:var(--tp-dark); }
.tp-redesign-home .tp-header-search form button { min-height:42px; padding:0 18px; border:1px solid var(--tp-dark); background:var(--tp-dark); color:#fff; cursor:pointer; }
.tp-redesign-home .tp-search-close { width:36px; height:36px; border:0; background:transparent; color:var(--tp-dark); font-size:25px; cursor:pointer; }

/* Mobile menu */
.tp-redesign-home .tp-mobile-menu { display:none; position:relative; margin:0; }
.tp-redesign-home .tp-mobile-menu > summary { list-style:none; width:42px; height:42px; display:grid; align-content:center; gap:5px; padding:10px; border:1px solid rgba(101,76,82,.13); border-radius:50%; cursor:pointer; }
.tp-redesign-home .tp-mobile-menu > summary::-webkit-details-marker, .tp-redesign-home .tp-mobile-submenu > summary::-webkit-details-marker { display:none; }
.tp-redesign-home .tp-mobile-menu > summary span { display:block; height:1.5px; background:var(--tp-dark); border-radius:2px; }
.tp-redesign-home .tp-mobile-menu nav { position:absolute; right:0; top:50px; width:min(365px,calc(100vw - 20px)); max-height:calc(100vh - 86px); overflow:auto; padding:16px 20px 18px; background:var(--tp-paper); box-shadow:0 24px 55px rgba(79,58,64,.16); border:1px solid rgba(101,76,82,.08); }
.tp-redesign-home .tp-mobile-submenu { margin:0; }
.tp-redesign-home .tp-mobile-submenu > summary { list-style:none; display:grid; grid-template-columns:1fr 28px; align-items:center; min-height:50px; color:var(--tp-dark); font-size:16px; cursor:pointer; }
.tp-redesign-home .tp-mobile-submenu > summary .tp-chevron-icon { width:16px; height:16px; justify-self:end; }
.tp-redesign-home .tp-mobile-submenu[open] > summary .tp-chevron-down { transform:rotate(-135deg); }
.tp-redesign-home .tp-mobile-submenu-content { padding:0 0 8px 14px; }
.tp-redesign-home .tp-mobile-main-link { display:flex; align-items:center; min-height:50px; color:var(--tp-dark); text-decoration:none; font-size:16px; }
.tp-redesign-home .tp-tree-mobile .tp-tree-row { min-height:42px; }
.tp-redesign-home .tp-tree-mobile .tp-tree-row > a { font-size:14.5px; }
.tp-redesign-home .tp-tree-mobile .tp-tree-children { padding-left:14px; }
.tp-redesign-home .tp-mobile-socials { margin-top:10px; padding-top:12px; border:0; }
.tp-redesign-home .tp-mobile-socials .tp-social-links { justify-content:flex-start; gap:16px; }
.tp-redesign-home .tp-mobile-socials .tp-social-links a { width:30px; height:30px; }
.tp-redesign-home .tp-mobile-socials .tp-social-links svg { width:20px; height:20px; }

/* Hero */
.tp-redesign-home .tp-hero { position:relative; min-height:570px; display:flex; align-items:center; isolation:isolate; background:#ddd0cb; }
.tp-redesign-home .tp-hero-media, .tp-redesign-home .tp-hero-shade { position:absolute; inset:0; }
.tp-redesign-home .tp-hero-media { z-index:-3; overflow:hidden; }
.tp-redesign-home .tp-hero-image { width:100%; height:100%; object-fit:cover; object-position:center; }
.tp-redesign-home .tp-hero-shade { z-index:-2; background:linear-gradient(90deg,rgba(255,250,248,.94) 0%,rgba(255,250,248,.80) 39%,rgba(255,250,248,.25) 67%,rgba(255,250,248,.02) 100%); }
.tp-redesign-home .tp-hero-content { width:100%; padding-block:72px 62px; }
.tp-redesign-home .tp-hero h1 { max-width:590px; font-size:clamp(48px,5.3vw,76px); line-height:.97; }
.tp-redesign-home .tp-hero-copy { max-width:520px; margin:20px 0 18px; font-size:16px; line-height:1.6; }
.tp-redesign-home .tp-hero-trust { display:flex; flex-wrap:wrap; gap:13px 30px; margin-top:28px; font-size:12px; }
.tp-redesign-home .tp-hero-trust span { display:flex; align-items:center; gap:8px; }
.tp-redesign-home .tp-hero-trust span::before { content:"♡"; color:var(--tp-rose); font-size:20px; line-height:1; }
.tp-redesign-home .tp-hero-actions { width:100%; display:flex; align-items:center; gap:20px; margin-top:4px; }

/* Desktop search */
.tp-redesign-home .tp-search-band { position:relative; z-index:6; padding:28px 0 30px; background:var(--tp-soft); }
.tp-redesign-home .tp-search-inner { display:grid; grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr); gap:34px; align-items:end; }
.tp-redesign-home .tp-search-band h2 { font-size:clamp(30px,3vw,43px); line-height:1.04; }
.tp-redesign-home .tp-home-search { display:grid; grid-template-columns:minmax(0,1fr) 230px; }
.tp-redesign-home .tp-home-search input, .tp-redesign-home .tp-home-search button { height:58px; }
.tp-redesign-home .tp-home-search input { width:100%; padding:0 20px; border:1px solid rgba(101,76,82,.14); background:#fff; color:var(--tp-dark); outline:0; font-size:16px; }
.tp-redesign-home .tp-home-search button { border:0; background:var(--tp-dark); color:#fff; cursor:pointer; font-size:16px; }

/* Shared section layout */
.tp-redesign-home .tp-section { padding:48px 0; }
.tp-redesign-home .tp-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:26px; margin-bottom:22px; }
.tp-redesign-home .tp-section h2, .tp-redesign-home .tp-newsletter h2, .tp-redesign-home .tp-hotels-intro h2 { font-size:clamp(36px,3.5vw,50px); line-height:1.02; }
.tp-redesign-home .tp-section-actions { display:flex; align-items:center; gap:20px; flex:0 0 auto; }
.tp-redesign-home .tp-slider-controls { display:flex; align-items:center; gap:6px; }
.tp-redesign-home .tp-slider-button { display:grid; place-items:center; width:35px; height:35px; padding:0; border:0; background:transparent; color:var(--tp-dark); cursor:pointer; transition:.18s ease; }
.tp-redesign-home .tp-slider-button:hover, .tp-redesign-home .tp-slider-button:focus { color:var(--tp-rose); transform:translateY(-1px); }
.tp-redesign-home .tp-slider-button .tp-chevron-icon { width:17px; height:17px; }
.tp-redesign-home .tp-slider-track { scrollbar-width:none; -ms-overflow-style:none; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; }
.tp-redesign-home .tp-slider-track::-webkit-scrollbar { display:none; }

/* Destinations */
.tp-redesign-home .tp-destinations { background:var(--tp-soft); }
.tp-redesign-home .tp-destination-slider { display:flex; gap:16px; overflow-x:auto; padding-bottom:2px; }
.tp-redesign-home .tp-destination-card { flex:0 0 calc((100% - 64px)/5); min-width:0; text-decoration:none; scroll-snap-align:start; }
.tp-redesign-home .tp-card-image { position:relative; aspect-ratio:1.12/1; overflow:hidden; background:var(--tp-soft); }
.tp-redesign-home .tp-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.tp-redesign-home .tp-destination-card:hover img { transform:scale(1.025); }
.tp-redesign-home .tp-destination-shade { position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent,rgba(31,21,24,.58)); }
.tp-redesign-home .tp-destination-name { position:absolute; left:16px; right:16px; bottom:14px; color:#fff; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:clamp(19px,1.7vw,27px); line-height:1.02; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* Latest plus About */
.tp-redesign-home .tp-latest { background:var(--tp-paper); }
.tp-redesign-home .tp-latest-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; align-items:start; }
.tp-redesign-home .tp-latest-main { min-width:0; }
.tp-redesign-home .tp-article-slider { display:flex; gap:16px; overflow-x:auto; }
.tp-redesign-home .tp-article-card { flex:0 0 calc((100% - 32px)/3); min-width:0; background:var(--tp-paper); border:1px solid rgba(101,76,82,.08); scroll-snap-align:start; }
.tp-redesign-home .tp-article-image { display:block; aspect-ratio:4/3; overflow:hidden; background:var(--tp-soft); }
.tp-redesign-home .tp-article-image img { width:100%; height:100%; object-fit:cover; }
.tp-redesign-home .tp-article-copy { padding:16px 16px 18px; }
.tp-redesign-home .tp-article-date { margin:0 0 7px; color:#9B7F86; font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.tp-redesign-home .tp-article-card h3 { font-size:22px; line-height:1.08; }
.tp-redesign-home .tp-article-card h3 a { color:var(--tp-ink); text-decoration:none; }
.tp-redesign-home .tp-article-excerpt { margin:10px 0 0; font-size:12px; line-height:1.48; }
.tp-redesign-home .tp-about-note { margin-top:76px; background:var(--tp-soft-2); border:1px solid rgba(101,76,82,.06); overflow:hidden; }
.tp-redesign-home .tp-about-note-image { display:block; height:210px; overflow:hidden; }
.tp-redesign-home .tp-about-note-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.tp-redesign-home .tp-about-note-copy { padding:21px 21px 23px; }
.tp-redesign-home .tp-about-note-copy h2 { font-size:31px; line-height:1.01; }
.tp-redesign-home .tp-about-note-copy > p:not(.tp-eyebrow) { margin:10px 0 0; font-size:13px; line-height:1.5; }
.tp-redesign-home .tp-about-note-links { display:flex; gap:9px; margin-top:17px; }
.tp-redesign-home .tp-about-note-links .tp-button { flex:1; min-width:0; padding-inline:10px; font-size:11px; }

/* Hotels */
.tp-redesign-home .tp-hotels-band { padding:48px 0 56px; background:var(--tp-soft); }
.tp-redesign-home .tp-hotels-band-inner { display:grid; grid-template-columns:330px minmax(0,1fr); gap:28px; align-items:stretch; }
.tp-redesign-home .tp-hotels-intro { min-height:430px; display:flex; flex-direction:column; justify-content:center; padding:34px; background:var(--tp-paper); }
.tp-redesign-home .tp-hotels-intro > p:not(.tp-eyebrow) { margin:18px 0 24px; font-size:15px; line-height:1.6; }
.tp-redesign-home .tp-hotels-slider-wrap { min-width:0; position:relative; padding-bottom:0; }
.tp-redesign-home .tp-hotels-showcase { display:flex; gap:18px; overflow-x:auto; height:430px; }
.tp-redesign-home .tp-hotel-showcase-card { flex:0 0 calc((100% - 18px)/2); min-width:0; height:430px; scroll-snap-align:start; }
.tp-redesign-home .tp-hotel-showcase-image { position:relative; display:block; width:100%; height:100%; overflow:hidden; background:var(--tp-soft-2); text-decoration:none; }
.tp-redesign-home .tp-hotel-showcase-image img { width:100%; height:100%; object-fit:cover; }
.tp-redesign-home .tp-hotel-showcase-shade { position:absolute; inset:18% 0 0; background:linear-gradient(180deg,transparent,rgba(28,20,22,.66)); }
.tp-redesign-home .tp-hotel-showcase-copy { position:absolute; left:26px; right:26px; bottom:25px; color:#fff; }
.tp-redesign-home .tp-hotel-showcase-copy > span { display:block; margin-bottom:8px; font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.tp-redesign-home .tp-hotel-showcase-copy strong { display:block; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:clamp(24px,2.1vw,31px); font-weight:400; line-height:1.02; }
.tp-redesign-home .tp-hotels-controls { position:absolute; inset:0; display:block; pointer-events:none; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button { position:absolute; top:50%; width:38px; height:38px; margin-top:-19px; border:1px solid rgba(101,76,82,.22); border-radius:50%; background:rgba(255,250,248,.92); color:var(--tp-dark); box-shadow:0 8px 24px rgba(101,76,82,.12); backdrop-filter:blur(6px); pointer-events:auto; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:first-child { left:12px; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:last-child { right:12px; }
.tp-redesign-home .tp-hotel-mobile-cta { display:none; }

/* Newsletter */
.tp-redesign-home .tp-newsletter { padding:48px 0; background:var(--tp-paper); }
.tp-redesign-home .tp-newsletter-inner { display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center; }
.tp-redesign-home .tp-newsletter-intro > p:last-child { max-width:540px; margin:15px 0 0; font-size:17px; line-height:1.58; }
.tp-redesign-home .tp-newsletter-form .widget, .tp-redesign-home .tp-newsletter-form aside { margin:0; padding:0; }
.tp-redesign-home .tp-newsletter-form .widget-title, .tp-redesign-home .tp-newsletter-form h3 { display:none; }
.tp-redesign-home .tp-newsletter-form #sib-form, .tp-redesign-home .tp-newsletter-form .sib-form { padding:0!important; }
.tp-redesign-home .tp-newsletter-form #sib-container { max-width:none!important; padding:22px!important; background:var(--tp-dark)!important; border:0!important; }
.tp-redesign-home .tp-newsletter-form .sib-form-block { padding:5px 0!important; }
.tp-redesign-home .tp-newsletter-form p, .tp-redesign-home .tp-newsletter-form label { font-size:13px!important; line-height:1.45!important; }
.tp-redesign-home .tp-newsletter-form input[type=email], .tp-redesign-home .tp-newsletter-form input[type=text], .tp-redesign-home .tp-newsletter-form .entry__field { min-height:46px!important; }
.tp-redesign-home .tp-newsletter-form .sib-form-block__button, .tp-redesign-home .tp-newsletter-form button { min-height:44px!important; }

/* Footer */
.tp-redesign-home .tp-footer { background:var(--tp-paper); color:var(--tp-dark); border-top:1px solid rgba(101,76,82,.07); }
.tp-redesign-home .tp-footer-main { min-height:132px; display:grid; grid-template-columns:200px minmax(0,1fr) 200px; gap:32px; align-items:center; padding-block:27px; }
.tp-redesign-home .tp-footer-brand { width:175px; }
.tp-redesign-home .tp-footer-brand img { width:100%; height:auto; }
.tp-redesign-home .tp-footer-nav { display:grid; gap:10px; justify-items:center; }
.tp-redesign-home .tp-footer-nav-row { display:flex; align-items:center; justify-content:center; gap:16px; }
.tp-redesign-home .tp-footer-nav a { color:var(--tp-dark); text-decoration:none; font-size:14px; }
.tp-redesign-home .tp-footer-separator { display:none; }
.tp-redesign-home .tp-footer-social { justify-self:end; }
.tp-redesign-home .tp-footer-copy { background:var(--tp-dark); color:var(--tp-soft); text-align:center; }
.tp-redesign-home .tp-footer-copy p { margin:0; padding:13px 0; font-size:12px; }

/* Tablet */
@media (max-width: 1280px) {
    .tp-redesign-home .tp-shell { width:min(100% - 40px,1180px); }
    .tp-redesign-home .tp-home-nav { display:none; }
    .tp-redesign-home .tp-mobile-menu { display:block; }
    .tp-redesign-home .tp-header-tools { margin-left:auto; }
    .tp-redesign-home .tp-home-header-inner { min-height:76px; }
    .tp-redesign-home .tp-home-logo { width:168px; flex-basis:168px; }
    .tp-redesign-home .tp-hero { min-height:520px; }
    .tp-redesign-home .tp-hero h1 { font-size:clamp(45px,7vw,66px); max-width:530px; }
    .tp-redesign-home .tp-search-inner { grid-template-columns:1fr; gap:16px; }
    .tp-redesign-home .tp-home-search { grid-template-columns:minmax(0,1fr) 210px; }
    .tp-redesign-home .tp-destination-card { flex-basis:220px; }
    .tp-redesign-home .tp-destination-name { font-size:22px; left:13px; right:13px; bottom:12px; }
    .tp-redesign-home .tp-latest-layout { grid-template-columns:1fr; gap:22px; }
    .tp-redesign-home .tp-article-card { flex-basis:calc((100% - 32px)/3); }
    .tp-redesign-home .tp-article-card h3 { font-size:20px; }
    .tp-redesign-home .tp-about-note { margin-top:0; display:grid; grid-template-columns:280px minmax(0,1fr); min-height:210px; }
    .tp-redesign-home .tp-about-note-image { height:100%; min-height:210px; }
    .tp-redesign-home .tp-about-note-copy { align-self:center; }
    .tp-redesign-home .tp-about-note-links { max-width:360px; }
    .tp-redesign-home .tp-hotels-band-inner { grid-template-columns:270px minmax(0,1fr); gap:20px; }
    .tp-redesign-home .tp-hotels-intro, .tp-redesign-home .tp-hotels-showcase, .tp-redesign-home .tp-hotel-showcase-card { min-height:390px; height:390px; }
    .tp-redesign-home .tp-hotels-intro { padding:26px; }
    .tp-redesign-home .tp-hotel-showcase-copy { left:20px; right:20px; bottom:20px; }
    .tp-redesign-home .tp-hotel-showcase-copy strong { font-size:25px; }
    .tp-redesign-home .tp-newsletter-inner { grid-template-columns:1fr 1fr; gap:28px; }
    .tp-redesign-home .tp-footer-main { grid-template-columns:170px 1fr 170px; gap:24px; }
}

/* Narrow tablet */
@media (max-width: 900px) {
    .tp-redesign-home .tp-shell { width:min(100% - 34px,860px); }
    .tp-redesign-home .tp-header-socials { display:none; }
    .tp-redesign-home .tp-hero { min-height:490px; }
    .tp-redesign-home .tp-hero-shade { background:linear-gradient(90deg,rgba(255,250,248,.94),rgba(255,250,248,.73) 55%,rgba(255,250,248,.14)); }
    .tp-redesign-home .tp-hero-content { padding-block:58px 48px; }
    .tp-redesign-home .tp-destination-card { flex-basis:205px; }
    .tp-redesign-home .tp-article-card { flex-basis:calc((100% - 16px)/2); }
    .tp-redesign-home .tp-hotels-band-inner { grid-template-columns:1fr; }
    .tp-redesign-home .tp-hotels-intro { min-height:auto; height:auto; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px 24px; align-items:end; padding:25px 28px; }
    .tp-redesign-home .tp-hotels-intro .tp-eyebrow, .tp-redesign-home .tp-hotels-intro h2, .tp-redesign-home .tp-hotels-intro > p { grid-column:1; }
    .tp-redesign-home .tp-hotel-desktop-cta { grid-column:2; grid-row:1 / span 3; align-self:center; }
    .tp-redesign-home .tp-hotels-showcase, .tp-redesign-home .tp-hotel-showcase-card { height:360px; }
    .tp-redesign-home .tp-newsletter-inner { grid-template-columns:1fr; gap:22px; }
    .tp-redesign-home .tp-footer-main { grid-template-columns:1fr; justify-items:center; text-align:center; }
    .tp-redesign-home .tp-footer-social { justify-self:center; }
}

/* Mobile */
@media (max-width: 767px) {
    .tp-redesign-home .tp-shell { width:min(100% - 28px,720px); }
    .tp-redesign-home .tp-home-header::after { bottom:-14px; height:14px; }
    .tp-redesign-home .tp-home-header-inner { min-height:62px; gap:12px; }
    .tp-redesign-home .tp-home-logo { width:132px; flex-basis:132px; }
    .tp-redesign-home .tp-mobile-menu > summary { width:38px; height:38px; }
    .tp-redesign-home .tp-mobile-menu nav { top:44px; width:min(360px,calc(100vw - 14px)); padding:14px 18px 18px; }
    .tp-redesign-home .tp-mobile-submenu > summary, .tp-redesign-home .tp-mobile-main-link { min-height:48px; font-size:16px; }
    .tp-redesign-home .tp-mobile-submenu-content { padding-left:10px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row { min-height:40px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row > a { font-size:14px; }
    .tp-redesign-home .tp-mobile-socials { margin-top:8px; padding-top:10px; }
    .tp-redesign-home .tp-mobile-socials .tp-social-links { justify-content:space-between; gap:12px; }

    .tp-redesign-home .tp-hero { min-height:430px; align-items:flex-end; }
    .tp-redesign-home .tp-hero-shade { background:linear-gradient(180deg,rgba(255,250,248,.03) 0%,rgba(255,250,248,.12) 30%,rgba(255,250,248,.78) 66%,rgba(255,250,248,.98) 86%,var(--tp-paper) 100%); }
    .tp-redesign-home .tp-hero-content { padding-block:178px 25px; }
    .tp-redesign-home .tp-hero h1 { max-width:360px; font-size:clamp(34px,9vw,42px); line-height:.98; }
    .tp-redesign-home .tp-hero-copy { max-width:350px; margin:13px 0 15px; font-size:13px; line-height:1.46; }
    .tp-redesign-home .tp-hero .tp-button { min-height:40px; padding:9px 15px; font-size:12px; }
    .tp-redesign-home .tp-hero-trust { display:none; }
    .tp-redesign-home .tp-hero-actions { gap:10px; }
    .tp-redesign-home .tp-desktop-search-band { display:none; }

    .tp-redesign-home .tp-section { padding:24px 0; }
    .tp-redesign-home .tp-section-head { align-items:flex-start; margin-bottom:15px; gap:14px; }
    .tp-redesign-home .tp-section h2, .tp-redesign-home .tp-newsletter h2, .tp-redesign-home .tp-hotels-intro h2 { font-size:32px; }
    .tp-redesign-home .tp-section-actions { align-self:flex-end; gap:8px; }
    .tp-redesign-home .tp-section-actions .tp-slider-controls { display:none; }
    .tp-redesign-home .tp-text-link { font-size:12px; }
    .tp-redesign-home .tp-eyebrow { font-size:10px; margin-bottom:6px; }

    .tp-redesign-home .tp-destination-slider { gap:10px; margin-right:-14px; padding-right:14px; }
    .tp-redesign-home .tp-destination-card { flex-basis:72vw; max-width:260px; }
    .tp-redesign-home .tp-destination-name { font-size:22px; left:14px; right:14px; bottom:13px; }

    .tp-redesign-home .tp-latest-layout { gap:12px; }
    .tp-redesign-home .tp-article-slider { gap:11px; margin-right:-14px; padding-right:14px; }
    .tp-redesign-home .tp-article-card { flex-basis:78vw; max-width:305px; }
    .tp-redesign-home .tp-article-copy { padding:14px 14px 16px; }
    .tp-redesign-home .tp-article-card h3 { font-size:21px; }
    .tp-redesign-home .tp-article-excerpt { display:none; }
    .tp-redesign-home .tp-about-note { display:grid; grid-template-columns:42% minmax(0,1fr); min-height:185px; margin-top:0; }
    .tp-redesign-home .tp-about-note-image { height:100%; min-height:185px; }
    .tp-redesign-home .tp-about-note-copy { padding:18px 15px; align-self:center; }
    .tp-redesign-home .tp-about-note-copy .tp-eyebrow { display:none; }
    .tp-redesign-home .tp-about-note-copy h2 { font-size:27px; }
    .tp-redesign-home .tp-about-note-copy > p:not(.tp-eyebrow) { display:block; margin:8px 0 0; font-size:12.5px; line-height:1.45; }
    .tp-redesign-home .tp-about-note-links { display:grid; grid-template-columns:1fr; gap:7px; margin-top:11px; }
    .tp-redesign-home .tp-about-note-links .tp-button { min-height:44px; font-size:13px; }

    .tp-redesign-home .tp-hotels-band { padding:26px 0 32px; }
    .tp-redesign-home .tp-hotels-band-inner { display:block; }
    .tp-redesign-home .tp-hotels-intro { display:block; min-height:0; height:auto; padding:0; background:transparent; }
    .tp-redesign-home .tp-hotels-intro .tp-eyebrow, .tp-redesign-home .tp-hotels-intro > p:not(.tp-eyebrow), .tp-redesign-home .tp-hotel-desktop-cta { display:none; }
    .tp-redesign-home .tp-hotels-intro h2 { margin-bottom:16px; }
    .tp-redesign-home .tp-hotels-slider-wrap { padding-bottom:0; }
    .tp-redesign-home .tp-hotels-showcase { height:350px; gap:11px; margin-right:-14px; padding-right:14px; }
    .tp-redesign-home .tp-hotel-showcase-card { flex-basis:78vw; max-width:300px; height:350px; min-height:350px; }
    .tp-redesign-home .tp-hotel-showcase-copy { left:18px; right:18px; bottom:18px; }
    .tp-redesign-home .tp-hotel-showcase-copy strong { font-size:27px; }
    .tp-redesign-home .tp-hotels-controls { display:none; }
    .tp-redesign-home .tp-hotel-mobile-cta { display:inline-flex; margin-top:14px; min-height:46px; padding-inline:20px; font-size:14px; }

    .tp-redesign-home .tp-newsletter { padding:32px 0; }
    .tp-redesign-home .tp-newsletter-inner { gap:16px; }
    .tp-redesign-home .tp-newsletter-intro > p:last-child { margin-top:9px; font-size:15px; line-height:1.5; }
    .tp-redesign-home .tp-newsletter-form #sib-container { padding:16px!important; }
    .tp-redesign-home .tp-newsletter-form p, .tp-redesign-home .tp-newsletter-form label { font-size:12px!important; }

    .tp-redesign-home .tp-footer-main { min-height:0; display:flex; flex-direction:column; gap:19px; padding:28px 0 26px; }
    .tp-redesign-home .tp-footer-brand { width:170px; }
    .tp-redesign-home .tp-footer-nav { gap:11px; width:100%; }
    .tp-redesign-home .tp-footer-nav-row { gap:12px; white-space:nowrap; }
    .tp-redesign-home .tp-footer-nav a { font-size:13.5px; }
    .tp-redesign-home .tp-footer-social .tp-social-links { justify-content:center; gap:17px; }
    .tp-redesign-home .tp-footer-copy p { font-size:12px; padding:12px 0; }
}

@media (max-width: 420px) {
    .tp-redesign-home .tp-shell { width:calc(100% - 24px); }
    .tp-redesign-home .tp-home-logo { width:124px; flex-basis:124px; }
    .tp-redesign-home .tp-hero { min-height:400px; }
    .tp-redesign-home .tp-hero-content { padding-top:160px; }
    .tp-redesign-home .tp-hero h1 { font-size:34px; }
    .tp-redesign-home .tp-hero-copy { font-size:12px; }
    .tp-redesign-home .tp-section h2, .tp-redesign-home .tp-newsletter h2, .tp-redesign-home .tp-hotels-intro h2 { font-size:29px; }
    .tp-redesign-home .tp-destination-card { flex-basis:76vw; }
    .tp-redesign-home .tp-about-note { grid-template-columns:39% minmax(0,1fr); }
    .tp-redesign-home .tp-about-note-copy { padding:15px 12px; }
    .tp-redesign-home .tp-about-note-copy h2 { font-size:24px; }
    .tp-redesign-home .tp-about-note-links .tp-button { font-size:11px; padding-inline:8px; }
    .tp-redesign-home .tp-footer-nav-row { gap:9px; }
    .tp-redesign-home .tp-footer-nav a { font-size:12.5px; }
}


/* Version 1.9 Feinschliff */
.tp-redesign-home .tp-home-header .tp-shell { width:min(1420px,calc(100% - 64px)); }
.tp-redesign-home .tp-home-header { background:var(--tp-soft); }
.tp-redesign-home .tp-home-header::after { bottom:-24px; height:24px; background:linear-gradient(to bottom, rgba(241,231,226,.98), rgba(241,231,226,0)); }
.tp-redesign-home .tp-submenu { border-color:rgba(101,76,82,.08); }
.tp-redesign-home .tp-tree-row > a { padding-right:8px; }
.tp-redesign-home .tp-tree-depth-1, .tp-redesign-home .tp-tree-depth-2, .tp-redesign-home .tp-tree-depth-3, .tp-redesign-home .tp-tree-depth-4 { border-left:0; }
.tp-redesign-home .tp-tree-depth-1 .tp-tree-row > a { color:#765f66; }
.tp-redesign-home .tp-tree-depth-2 .tp-tree-row > a, .tp-redesign-home .tp-tree-depth-3 .tp-tree-row > a, .tp-redesign-home .tp-tree-depth-4 .tp-tree-row > a { color:#876f76; }
.tp-redesign-home .tp-mobile-socials, .tp-redesign-home .tp-mobile-socials::before, .tp-redesign-home .tp-mobile-socials::after { border:0!important; background-image:none!important; }
.tp-redesign-home .tp-mobile-socials .tp-social-links a::before, .tp-redesign-home .tp-mobile-socials .tp-social-links a::after { display:none!important; content:none!important; }
.tp-redesign-home .tp-destinations { padding-bottom:36px; }
.tp-redesign-home .tp-latest { padding-top:42px; }

/* Real Cookie Banner Sticky Legal Links möglichst unaufdringlich unten rechts halten. */
body.tp-redesign-home [class*="rcb"][class*="sticky"],
body.tp-redesign-home [class*="sticky"][class*="legal"],
body.tp-redesign-home [id*="rcb"][class*="sticky"] { top:auto!important; left:auto!important; right:18px!important; bottom:18px!important; transform:none!important; z-index:260!important; }

@media (min-width: 1600px) {
    .tp-redesign-home .tp-shell { width:min(1320px,calc(100% - 80px)); }
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1500px,calc(100% - 96px)); }
    .tp-redesign-home .tp-home-logo { width:216px; flex-basis:216px; }
    .tp-redesign-home .tp-home-menu > li > a, .tp-redesign-home .tp-nav-item-row > a { font-size:16.5px; }
    .tp-redesign-home .tp-home-menu { gap:24px; }
    .tp-redesign-home .tp-header-tools { gap:13px; }
    .tp-redesign-home .tp-hero { min-height:590px; }
}

@media (max-width: 1280px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(100% - 40px,1180px); }
}

@media (max-width: 900px) {
    .tp-redesign-home .tp-destinations { padding-bottom:28px; }
    .tp-redesign-home .tp-latest { padding-top:30px; }
    .tp-redesign-home .tp-destination-name { font-size:20px; }
}

@media (max-width: 767px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(100% - 28px,720px); }
    .tp-redesign-home .tp-home-header::after { bottom:-12px; height:12px; }
    .tp-redesign-home .tp-mobile-menu nav { padding:16px 20px 18px; }
    .tp-redesign-home .tp-mobile-submenu > summary, .tp-redesign-home .tp-mobile-main-link { min-height:46px; }
    .tp-redesign-home .tp-mobile-submenu-content { padding:0 0 6px 10px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row { min-height:39px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-children { padding-left:12px; border-left:0; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row > a { font-size:14px; }
    .tp-redesign-home .tp-mobile-socials { margin-top:13px; padding-top:8px; }
    .tp-redesign-home .tp-destinations { padding-top:25px; padding-bottom:20px; }
    .tp-redesign-home .tp-latest { padding-top:22px; padding-bottom:24px; }
    .tp-redesign-home .tp-section-head { margin-bottom:13px; }
    .tp-redesign-home .tp-about-note { margin-top:2px; }
    .tp-redesign-home .tp-hotels-band { background:var(--tp-soft); }
    .tp-redesign-home .tp-newsletter { background:var(--tp-paper); }
    .tp-redesign-home .tp-hotels-controls { display:none; }
    body.tp-redesign-home [class*="rcb"][class*="sticky"],
    body.tp-redesign-home [class*="sticky"][class*="legal"],
    body.tp-redesign-home [id*="rcb"][class*="sticky"] { right:12px!important; bottom:12px!important; }
}


/* Version 1.9.0 Layoutkorrekturen */
.tp-redesign-home .tp-home-header { background:var(--tp-soft); border:0; box-shadow:none; }
.tp-redesign-home .tp-home-header::after { z-index:0; bottom:-30px; height:30px; background:linear-gradient(to bottom, rgba(241,231,226,1) 0%, rgba(241,231,226,.72) 42%, rgba(241,231,226,0) 100%); }
.tp-redesign-home .tp-home-header-inner { position:relative; z-index:1; min-height:96px; }
.tp-redesign-home .tp-home-header .tp-shell { width:min(1540px,calc(100% - 64px)); }
.tp-redesign-home .tp-home-logo { width:212px; flex-basis:212px; }
.tp-redesign-home .tp-home-menu { gap:clamp(13px,1.25vw,24px); }
.tp-redesign-home .tp-home-menu > li > a, .tp-redesign-home .tp-nav-item-row > a { font-size:16.5px; }
.tp-redesign-home .tp-nav-item-row { gap:6px; }
.tp-redesign-home .tp-nav-dropdown-toggle { width:25px; height:30px; color:var(--tp-rose); }
.tp-redesign-home .tp-submenu { top:calc(100% + 13px); left:0; width:330px; padding:16px 18px 15px; }
.tp-redesign-home .tp-tree-row { grid-template-columns:minmax(0,1fr) 34px; min-height:43px; }
.tp-redesign-home .tp-tree-row > a { font-size:14.5px; }
.tp-redesign-home .tp-tree-toggle { width:34px; height:36px; color:var(--tp-rose); }
.tp-redesign-home .tp-mobile-submenu[open] > summary .tp-chevron-down { transform:rotate(180deg); }
.tp-redesign-home .tp-tree-item.is-open > .tp-tree-row .tp-chevron-right { transform:rotate(90deg); }

.tp-redesign-home .tp-hero-actions { align-items:center; }
.tp-redesign-home .tp-hero-actions .tp-button { min-height:46px; }
.tp-redesign-home .tp-search-band { background:var(--tp-paper); }
.tp-redesign-home .tp-destinations { background:var(--tp-soft); }
.tp-redesign-home .tp-latest { background:var(--tp-paper); }
.tp-redesign-home .tp-about-note { background:var(--tp-soft); }
.tp-redesign-home .tp-hotels-band { background:var(--tp-soft); }
.tp-redesign-home .tp-hotels-intro { background:var(--tp-paper); }
.tp-redesign-home .tp-newsletter { background:var(--tp-paper); }
.tp-redesign-home .tp-footer { background:var(--tp-paper); }

.tp-redesign-home .tp-hotels-slider-wrap { position:relative; overflow:visible; }
.tp-redesign-home .tp-hotels-controls { position:absolute; inset:0; z-index:5; pointer-events:none; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button { position:absolute; top:50%; width:42px; height:42px; margin-top:-21px; border:1px solid rgba(101,76,82,.18); border-radius:50%; background:rgba(255,254,253,.94); color:var(--tp-dark); box-shadow:0 8px 22px rgba(101,76,82,.13); backdrop-filter:blur(7px); pointer-events:auto; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:first-child { left:10px; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:last-child { right:10px; }
.tp-redesign-home .tp-newsletter-intro > p:last-child { font-size:18px; }

/* Das Sticky Widget von Real Cookie Banner soll nicht am Logo kleben. */
body.tp-redesign-home [data-tp-cookie-sticky="true"] { top:auto!important; left:auto!important; right:16px!important; bottom:16px!important; transform:none!important; }

@media (min-width: 1600px) {
    .tp-redesign-home .tp-shell { width:min(1680px,calc(100% - 96px)); }
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1760px,calc(100% - 96px)); }
    .tp-redesign-home .tp-home-header-inner { min-height:104px; }
    .tp-redesign-home .tp-home-logo { width:228px; flex-basis:228px; }
    .tp-redesign-home .tp-home-menu { gap:clamp(18px,1.15vw,30px); }
    .tp-redesign-home .tp-home-menu > li > a, .tp-redesign-home .tp-nav-item-row > a { font-size:17px; }
    .tp-redesign-home .tp-header-tools { gap:14px; }
    .tp-redesign-home .tp-header-socials .tp-social-links { gap:10px; }
    .tp-redesign-home .tp-hero { min-height:610px; }
}

@media (min-width: 1281px) and (max-width: 1499px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1360px,calc(100% - 40px)); }
    .tp-redesign-home .tp-home-logo { width:182px; flex-basis:182px; }
    .tp-redesign-home .tp-home-menu { gap:11px; }
    .tp-redesign-home .tp-home-menu > li > a, .tp-redesign-home .tp-nav-item-row > a { font-size:14.5px; }
    .tp-redesign-home .tp-header-tools { gap:8px; }
    .tp-redesign-home .tp-header-socials .tp-social-links { gap:5px; }
}

@media (max-width: 1280px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(100% - 38px,1180px); }
    .tp-redesign-home .tp-home-header::after { bottom:-22px; height:22px; }
    .tp-redesign-home .tp-home-header-inner { min-height:78px; }
}

@media (max-width: 900px) {
    .tp-redesign-home .tp-section { padding:30px 0; }
    .tp-redesign-home .tp-destinations { padding-top:28px; padding-bottom:26px; }
    .tp-redesign-home .tp-latest { padding-top:29px; padding-bottom:27px; }
    .tp-redesign-home .tp-destination-name { font-size:clamp(17px,2.7vw,20px); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
}

@media (max-width: 767px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:calc(100% - 28px); }
    .tp-redesign-home .tp-home-header::after { bottom:-16px; height:16px; }
    .tp-redesign-home .tp-home-header-inner { min-height:64px; }
    .tp-redesign-home .tp-mobile-menu nav { top:45px; padding:14px 18px 17px; }
    .tp-redesign-home .tp-mobile-submenu > summary, .tp-redesign-home .tp-mobile-main-link { min-height:46px; }
    .tp-redesign-home .tp-mobile-submenu > summary .tp-chevron-icon { width:18px; height:18px; color:var(--tp-rose); }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row { min-height:41px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-row > a { font-size:14px; }
    .tp-redesign-home .tp-tree-mobile .tp-tree-toggle .tp-chevron-icon { width:17px; height:17px; color:var(--tp-rose); }
    .tp-redesign-home .tp-mobile-socials { margin-top:10px!important; padding:13px 2px 2px!important; border:0!important; box-shadow:none!important; background:transparent!important; }
    .tp-redesign-home .tp-mobile-socials::before, .tp-redesign-home .tp-mobile-socials::after { display:none!important; content:none!important; }
    .tp-redesign-home .tp-mobile-socials .tp-social-links { justify-content:flex-start; gap:20px; border:0!important; }

    .tp-redesign-home .tp-hero { min-height:405px; }
    .tp-redesign-home .tp-hero-content { padding-top:150px; padding-bottom:22px; }
    .tp-redesign-home .tp-hero h1 { font-size:clamp(32px,8.6vw,39px); }
    .tp-redesign-home .tp-hero-copy { margin:11px 0 13px; }
    .tp-redesign-home .tp-hero-actions { width:100%; gap:10px; }
    .tp-redesign-home .tp-hero-actions .tp-button { min-height:42px; padding-inline:16px; }

    .tp-redesign-home .tp-section { padding:23px 0; }
    .tp-redesign-home .tp-section-head { display:block; margin-bottom:12px; }
    .tp-redesign-home .tp-section-actions { display:flex; justify-content:flex-start; margin-top:7px; }
    .tp-redesign-home .tp-destinations { padding-top:24px; padding-bottom:21px; }
    .tp-redesign-home .tp-latest { padding-top:22px; padding-bottom:22px; }
    .tp-redesign-home .tp-destination-name { font-size:19px; }
    .tp-redesign-home .tp-latest-layout { gap:11px; }
    .tp-redesign-home .tp-about-note { min-height:190px; }
    .tp-redesign-home .tp-about-note-copy > p:not(.tp-eyebrow) { font-size:12.5px; line-height:1.42; }
    .tp-redesign-home .tp-about-note-links .tp-button { min-height:46px; font-size:13px; }
    .tp-redesign-home .tp-hotels-band { padding:25px 0 30px; }
    .tp-redesign-home .tp-newsletter { padding:31px 0; }
    .tp-redesign-home .tp-newsletter-intro > p:last-child { font-size:15.5px; line-height:1.5; }
    .tp-redesign-home .tp-hotels-controls { display:none; }
    body.tp-redesign-home [data-tp-cookie-sticky="true"] { right:12px!important; bottom:14px!important; }
}

/* Version 1.10.0 Feinschliff */

/* Header kompakter, damit mehr vom Hero sichtbar bleibt */
.tp-redesign-home .tp-home-header-inner { min-height:82px; }
.tp-redesign-home .tp-home-logo { width:190px; flex-basis:190px; }
.tp-redesign-home .tp-home-logo img { max-height:56px; }
.tp-redesign-home .tp-home-header::after { bottom:-20px; height:20px; }

/* Hero Details */
.tp-redesign-home .tp-hero-trust { gap:14px 32px; margin-top:24px; font-size:14px; }
.tp-redesign-home .tp-hero-trust span { gap:9px; }
.tp-redesign-home .tp-hero-trust span::before { font-size:24px; }

/* Über mich endet auf derselben Höhe wie die Artikelkarten */
@media (min-width:1281px) {
    .tp-redesign-home .tp-latest-layout { align-items:stretch; }
    .tp-redesign-home .tp-about-note {
        align-self:stretch;
        height:calc(100% - 76px);
        min-height:0;
        display:flex;
        flex-direction:column;
    }
    .tp-redesign-home .tp-about-note-image { flex:0 0 49%; height:auto; min-height:0; }
    .tp-redesign-home .tp-about-note-copy { flex:1; display:flex; flex-direction:column; }
    .tp-redesign-home .tp-about-note-links { margin-top:auto; padding-top:15px; }
}

/* Hotelbereich konsequent in einem Rosé */
.tp-redesign-home .tp-hotels-band { background:#F1E7E2; }
.tp-redesign-home .tp-hotels-intro { background:transparent; }
.tp-redesign-home .tp-hotels-intro h2 { background:transparent!important; }

/* Die ursprünglichen, schwebenden Hotel Buttons bleiben bewusst erhalten */
.tp-redesign-home .tp-hotels-controls .tp-slider-button {
    width:42px;
    height:42px;
    margin-top:-21px;
    background:rgba(255,254,253,.95);
    border:1px solid rgba(101,76,82,.14);
    box-shadow:0 8px 24px rgba(101,76,82,.12);
}
.tp-redesign-home .tp-hotels-controls .tp-slider-button:first-child { left:12px; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:last-child { right:12px; }

/* Footer einheitlich Rosé und auf breiten Ansichten kompakter in einer Zeile */
.tp-redesign-home .tp-footer { background:#F1E7E2; border-top:0; }
.tp-redesign-home .tp-footer-main { background:#F1E7E2; }
@media (min-width:901px) {
    .tp-redesign-home .tp-footer-main {
        min-height:104px;
        display:flex;
        align-items:center;
        justify-content:flex-start;
        gap:28px;
        padding-block:19px;
    }
    .tp-redesign-home .tp-footer-brand { width:145px; flex:0 0 145px; }
    .tp-redesign-home .tp-footer-nav { display:flex; align-items:center; justify-content:flex-start; gap:15px; }
    .tp-redesign-home .tp-footer-nav-row { justify-content:flex-start; gap:14px; }
    .tp-redesign-home .tp-footer-social { margin-left:auto; justify-self:auto; }
}

@media (min-width:1600px) {
    .tp-redesign-home .tp-home-header-inner { min-height:88px; }
    .tp-redesign-home .tp-home-logo { width:200px; flex-basis:200px; }
    .tp-redesign-home .tp-home-logo img { max-height:60px; }
}

@media (min-width:1281px) and (max-width:1499px) {
    .tp-redesign-home .tp-home-header-inner { min-height:78px; }
    .tp-redesign-home .tp-home-logo { width:176px; flex-basis:176px; }
}

@media (max-width:1280px) {
    .tp-redesign-home .tp-home-header-inner { min-height:70px; }
    .tp-redesign-home .tp-home-logo { width:154px; flex-basis:154px; }
    .tp-redesign-home .tp-home-logo img { max-height:50px; }
    .tp-redesign-home .tp-hotels-intro { background:transparent; }
}

@media (max-width:900px) {
    .tp-redesign-home .tp-footer-main {
        background:#F1E7E2;
        gap:14px;
        padding:22px 0 20px;
    }
    .tp-redesign-home .tp-footer-brand { width:138px; }
    .tp-redesign-home .tp-footer-nav { gap:8px; }
}

@media (max-width:767px) {
    .tp-redesign-home .tp-home-header-inner { min-height:58px; }
    .tp-redesign-home .tp-home-logo { width:122px; flex-basis:122px; }
    .tp-redesign-home .tp-home-header::after { bottom:-10px; height:10px; }
    .tp-redesign-home .tp-hotels-intro h2 { background:transparent!important; }
    .tp-redesign-home .tp-footer-main { gap:12px; padding:20px 0 18px; }
    .tp-redesign-home .tp-footer-brand { width:120px; }
    .tp-redesign-home .tp-footer-nav { gap:7px; }
    .tp-redesign-home .tp-footer-nav-row { gap:10px; }
    .tp-redesign-home .tp-footer-social .tp-social-links { gap:15px; }
}



/* Version 1.11.0 Feinschliff vor dem Zwischenstand */

/* Desktop Suche: wieder kompakt und leicht über dem Hero schwebend */
.tp-redesign-home .tp-search-band {
    z-index:8;
    margin-top:-34px;
    padding:0 0 18px;
    background:transparent;
}
.tp-redesign-home .tp-search-inner {
    padding:24px 28px 26px;
    background:linear-gradient(180deg, rgba(255,254,253,.94) 0%, var(--tp-paper) 42%, var(--tp-paper) 100%);
    border:1px solid rgba(101,76,82,.06);
    box-shadow:0 16px 34px rgba(101,76,82,.07);
}

/* Neu auf dem Blog: Kopfzeile separat, damit Über mich exakt mit den Karten beginnt */
.tp-redesign-home .tp-latest-layout {
    align-items:stretch;
}
.tp-redesign-home .tp-latest-main,
.tp-redesign-home .tp-article-slider {
    height:100%;
}
.tp-redesign-home .tp-article-slider {
    align-items:stretch;
}
.tp-redesign-home .tp-article-card {
    height:auto;
    align-self:stretch;
    display:flex;
    flex-direction:column;
}
.tp-redesign-home .tp-article-copy {
    flex:1;
}
.tp-redesign-home .tp-about-note {
    margin-top:0;
    height:auto;
    align-self:stretch;
}

/* Hotel Navigation wie in der früheren, kantigen Variante */
.tp-redesign-home .tp-hotels-controls .tp-slider-button {
    width:54px;
    height:72px;
    margin-top:-36px;
    border:0;
    border-radius:0;
    background:rgba(255,254,253,.95);
    color:var(--tp-dark);
    box-shadow:0 8px 22px rgba(101,76,82,.10);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}
.tp-redesign-home .tp-hotels-controls .tp-slider-button .tp-chevron-icon {
    width:20px;
    height:20px;
}
.tp-redesign-home .tp-hotels-controls .tp-slider-button:first-child { left:-12px; }
.tp-redesign-home .tp-hotels-controls .tp-slider-button:last-child { right:-12px; }

@media (min-width:1281px) {
    .tp-redesign-home .tp-about-note {
        min-height:0;
        display:flex;
        flex-direction:column;
    }
    .tp-redesign-home .tp-about-note-image {
        flex:0 0 49%;
        height:auto;
        min-height:0;
    }
    .tp-redesign-home .tp-about-note-copy {
        flex:1;
        display:flex;
        flex-direction:column;
    }
    .tp-redesign-home .tp-about-note-links {
        margin-top:auto;
        padding-top:15px;
    }
}

@media (min-width:768px) and (max-width:1280px) {
    .tp-redesign-home .tp-search-band { margin-top:-20px; }
    .tp-redesign-home .tp-search-inner { padding:21px 24px 23px; }
}

@media (max-width:767px) {
    .tp-redesign-home .tp-search-band { margin-top:0; padding:0; }
}


/* Laptop Feinschliff: Hero Text nie direkt am Bildschirmrand */
@media (min-width:901px) and (max-width:1599px) {
    .tp-redesign-home .tp-hero-content { width:min(1320px,calc(100% - 80px)); margin-inline:auto; }
}
@media (min-width:1600px) {
    .tp-redesign-home .tp-hero-content { width:min(1680px,calc(100% - 96px)); margin-inline:auto; }
}

/* ========================================================================== */
/* Travelprincess Beitragsseiten 1.14                                         */
/* ========================================================================== */
.tp-redesign-article {
    --tpa-dark:#654C52;
    --tpa-rose:#B2979D;
    --tpa-soft:#F1E7E2;
    --tpa-paper:#fffefd;
    --tpa-cream:#fbf7f4;
    --tpa-border:rgba(101,76,82,.13);
    background:var(--tpa-paper);
    color:var(--tpa-dark);
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:16px;
    line-height:1.68;
    -webkit-font-smoothing:antialiased;
}
.tp-redesign-article *, .tp-redesign-article *::before, .tp-redesign-article *::after { box-sizing:border-box; }
.tp-redesign-article img { max-width:100%; height:auto; }
.tp-redesign-article h1,.tp-redesign-article h2,.tp-redesign-article h3,.tp-redesign-article h4 {
    font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif;
    font-weight:400;
    color:var(--tpa-dark);
    letter-spacing:-.02em;
}
.tp-article-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }

/* Auf Artikeln exakt dieselbe Navigation wie auf der Startseite */
.tp-redesign-article .tp-article-shared-header { position:relative; z-index:80; }
.tp-redesign-article .tp-home-menu a,
.tp-redesign-article .tp-menu-all-link,
.tp-redesign-article .tp-tree-row a,
.tp-redesign-article .tp-mobile-main-link { text-decoration:none; }

.tp-article-main { padding:28px 0 54px; }
.tp-article-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-bottom:18px; color:#9c858b; font-size:12px; }
.tp-article-breadcrumbs a { color:#8f737a; text-decoration:none; font-weight:500; }
.tp-article-breadcrumbs a:hover { color:var(--tpa-dark); }

.tp-article-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:48px; align-items:center; margin-bottom:36px; }
.tp-article-bubble { position:relative; min-width:0; }
.tp-article-bubble img { display:block; width:100%; max-height:475px; object-fit:contain; object-position:left center; }
.tp-article-hero-copy { max-width:540px; }
.tp-article-label-row { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-bottom:10px; }
.tp-article-category { display:inline-block; color:#9b7f86; text-decoration:none; font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.tp-ad-label { display:inline-flex; align-items:center; min-height:28px; padding:4px 10px; border:1px solid rgba(101,76,82,.15); background:var(--tpa-soft); color:var(--tpa-dark); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.tp-article-meta .tp-ad-label-meta { min-height:auto; padding:2px 7px; margin-top:-2px; border-color:rgba(101,76,82,.12); background:rgba(241,231,226,.86); color:var(--tpa-dark); font-size:9px; line-height:1.45; }
.tp-article-meta .tp-ad-label-meta::before { content:none!important; }
.tp-article-hero h1 { margin:0; font-size:clamp(38px,4vw,58px); line-height:.99; }
.tp-article-meta { margin-top:16px; display:flex; flex-wrap:wrap; gap:8px 18px; color:#9a8389; font-size:11px; }
.tp-article-meta span { position:relative; }
.tp-article-meta span + span::before { content:"·"; position:absolute; left:-11px; }

/* Inhaltsverzeichnis direkt im Artikelkopf */
.tp-native-toc { margin:20px 0 0; border:1px solid rgba(101,76,82,.08); background:linear-gradient(100deg,var(--tpa-soft),#faf4f1); }
.tp-native-toc summary { min-height:54px; padding:12px 16px; display:flex; align-items:center; justify-content:space-between; gap:15px; list-style:none; cursor:pointer; font-size:14px; font-weight:600; }
.tp-native-toc summary::-webkit-details-marker { display:none; }
.tp-native-toc summary > span { display:flex; align-items:center; gap:10px; }
.tp-native-toc summary svg:first-child { width:19px; height:19px; }
.tp-native-toc .tp-chevron-icon { width:17px; transition:transform .2s ease; }
.tp-native-toc[open] .tp-chevron-icon { transform:rotate(180deg); }
.tp-native-toc ol { margin:0; padding:2px 18px 16px 20px; list-style:none; counter-reset:tp-h2; }
.tp-native-toc li { margin:6px 0; line-height:1.42; }
.tp-native-toc li.level-2 { counter-increment:tp-h2; counter-reset:tp-h3; }
.tp-native-toc li.level-3 { counter-increment:tp-h3; padding-left:22px; font-size:12.5px; }
.tp-native-toc li.level-2 > a::before { content:counter(tp-h2) ". "; color:#a98b93; font-weight:700; }
.tp-native-toc li.level-3 > a::before { content:counter(tp-h2) "." counter(tp-h3) " "; color:#a98b93; font-weight:700; }
.tp-native-toc a { color:#705f64; text-decoration:none; }
.tp-native-toc a:hover { color:var(--tpa-rose); }

/* Desktop: Inhaltsverzeichnis schwebt über dem Artikel statt den Kopf aufzuziehen. */
@media (min-width:901px) {
    .tp-native-toc-hero { position:relative; z-index:25; overflow:visible; }
    .tp-native-toc-hero > ol {
        position:absolute;
        z-index:35;
        top:calc(100% + 7px);
        left:0;
        right:0;
        max-height:min(430px,60vh);
        margin:0;
        padding:13px 18px 16px 20px;
        overflow:auto;
        border:1px solid rgba(101,76,82,.11);
        background:rgba(255,254,253,.98);
        box-shadow:0 18px 42px rgba(101,76,82,.13);
        backdrop-filter:blur(7px);
        -webkit-backdrop-filter:blur(7px);
    }
    .tp-native-toc-hero:not([open]) > ol { display:none; }
    .tp-native-toc-hero[open] > ol { display:block; }
}


/* Hauptlayout. Sidebar scrollt nicht als riesiger Block mit. */
.tp-article-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:0 44px; align-items:start; }
.tp-article-content { grid-column:1; grid-row:1; min-width:0; max-width:850px; }
.tp-article-sidebar { grid-column:2; grid-row:1; position:relative; align-self:stretch; min-width:0; }
.tp-article-sidebar-sticky { display:grid; gap:16px; position:sticky; top:18px; max-height:calc(100vh - 36px); overflow-y:auto; overscroll-behavior:contain; padding-right:4px; scrollbar-width:thin; scrollbar-color:rgba(101,76,82,.2) transparent; }
.tp-article-sidebar-sticky::-webkit-scrollbar { width:5px; }
.tp-article-sidebar-sticky::-webkit-scrollbar-thumb { background:rgba(101,76,82,.18); border-radius:10px; }
.tp-related-posts,.tp-post-navigation,.tp-article-comments { grid-column:1; min-width:0; max-width:850px; }

.tp-article-prose { color:#65575b; font-size:16px; overflow-wrap:break-word; word-break:normal; }
.tp-article-prose > :first-child { margin-top:0; }
.tp-article-prose p { margin:0 0 1.05em; }
.tp-article-prose h2 { margin:43px 0 14px; font-size:34px; line-height:1.08; scroll-margin-top:30px; }
.tp-article-prose h3 { margin:31px 0 10px; font-size:25px; line-height:1.12; scroll-margin-top:30px; }
.tp-article-prose h4 { margin:25px 0 8px; font-size:20px; }
.tp-article-prose ul,.tp-article-prose ol { margin:0 0 1.2em 1.2em; padding:0; }
.tp-article-prose li { margin-bottom:.45em; }
/* Keine typischen Unterstreichungen: Links erhalten Farbe und Gewicht, erst beim Hover eine feine Linie. */
.tp-article-prose a { color:#936d77; text-decoration:none; font-weight:600; border-bottom:1px solid transparent; transition:color .16s ease,border-color .16s ease; }
.tp-article-prose a:hover,.tp-article-prose a:focus { color:var(--tpa-dark); border-bottom-color:rgba(101,76,82,.28); }
.tp-article-prose figure,.tp-article-prose .wp-block-image,.tp-article-prose .wp-block-gallery { margin:27px 0; }
.tp-article-prose figure img,.tp-article-prose .wp-block-image img { display:block; width:100%; }
.tp-article-prose figcaption { margin-top:7px; color:#9b858b; font-size:11px; }
.tp-article-prose blockquote { position:relative; margin:34px 0; padding:23px 28px 23px 56px; border:0; background:linear-gradient(100deg,#fbf6f3,var(--tpa-soft)); color:#7a5962; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:24px; line-height:1.35; }
.tp-article-prose blockquote::before { content:"“"; position:absolute; left:18px; top:4px; color:var(--tpa-rose); font-size:58px; line-height:1; }
.tp-article-prose .wp-block-button__link { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:10px 20px; background:var(--tpa-dark); color:#fff; border:0; border-radius:0; text-decoration:none; }
.tp-article-prose table { width:100%; border-collapse:collapse; margin:25px 0; }
.tp-article-prose th,.tp-article-prose td { padding:10px; border-bottom:1px solid var(--tpa-border); text-align:left; }
.tp-article-prose .wp-block-separator { border:0; border-top:1px solid var(--tpa-border); margin:38px 0; }

/* Bestehende Sidebar-Inhalte, aber deutlich kompakter und ruhiger */
.tp-sidebar-widgets { display:grid; gap:16px; }
.tp-sidebar-widgets .widget,.tp-coffee-card { margin:0; padding:18px; overflow:hidden; border:1px solid rgba(101,76,82,.07); background:var(--tpa-cream); }
.tp-sidebar-widgets .widget:nth-child(even) { background:var(--tpa-soft); }
.tp-sidebar-widgets .widget-title,.tp-sidebar-widgets h2,.tp-sidebar-widgets h3,.tp-coffee-card h3 { margin:0 0 10px; font-size:21px; line-height:1.1; }
.tp-sidebar-widgets p,.tp-sidebar-widgets li,.tp-coffee-card p { color:#746267; font-size:13px; line-height:1.5; }
.tp-sidebar-widgets ul { margin:0; padding:0; list-style:none; }
.tp-sidebar-widgets li + li { margin-top:6px; }
.tp-sidebar-widgets a { color:#765f65; text-decoration:none; }
.tp-sidebar-widgets a:hover { color:var(--tpa-rose); }
.tp-sidebar-widgets .wp-block-image { margin:0 0 12px; }
.tp-sidebar-widgets img { display:block; max-width:100%; }
.tp-sidebar-widgets input[type="email"],.tp-sidebar-widgets input[type="text"],.tp-sidebar-widgets input[type="search"] { width:100%; min-height:40px; padding:8px 10px; border:1px solid var(--tpa-border); background:#fff; }
.tp-sidebar-widgets .wp-block-button,.tp-sidebar-widgets .wp-block-button__link { width:100%; }
.tp-sidebar-widgets .wp-block-button__link,.tp-sidebar-widgets button,.tp-sidebar-widgets input[type="submit"] { min-height:40px; border-radius:0; border:1px solid var(--tpa-dark); background:var(--tpa-dark); color:#fff; }
.tp-coffee-card { background:var(--tpa-soft); }
.tp-coffee-icon { display:block; margin-bottom:4px; color:var(--tpa-rose); font-size:25px; line-height:1; }
.tp-article-button { display:flex; min-height:42px; align-items:center; justify-content:center; margin-top:13px; padding:9px 14px; background:var(--tpa-dark); color:#fff!important; text-decoration:none; font-size:11px; letter-spacing:.05em; text-transform:uppercase; }
.tp-coffee-legacy .widget { margin:0!important; padding:0!important; border:0!important; background:transparent!important; }
.tp-coffee-legacy .tiny_coffee { margin:0!important; }


/* Native Kaffeekasse ohne Plugin */
.tp-coffee-native{background:linear-gradient(180deg,#F1E7E2 0%,#f8f1ee 100%);}
.tp-coffee-native .tp-coffee-icon{width:34px;height:34px;color:#9b7f86;margin-bottom:8px;}
.tp-coffee-native .tp-coffee-icon svg{display:block;width:100%;height:100%;}
.tp-coffee-native h3{font-size:23px;}
.tp-coffee-choice{margin-top:16px;padding-top:14px;border-top:1px solid rgba(101,76,82,.12);}
.tp-coffee-choice-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px;color:#654C52;}
.tp-coffee-choice-head strong{font-size:16px;font-weight:650;}
.tp-coffee-choice-head span{font-family:"TP DM Serif Display","DM Serif Display",Georgia,serif;font-size:22px;}
.tp-coffee-form input[type="range"]{width:100%;height:5px;margin:4px 0 0;appearance:none;-webkit-appearance:none;border-radius:999px;background:linear-gradient(to right,#654C52 0%,#654C52 0%,rgba(101,76,82,.16) 0%,rgba(101,76,82,.16) 100%);outline:0;}
.tp-coffee-form input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border:3px solid #F1E7E2;border-radius:50%;background:#654C52;box-shadow:0 1px 5px rgba(101,76,82,.24);cursor:pointer;}
.tp-coffee-form input[type="range"]::-moz-range-thumb{width:16px;height:16px;border:3px solid #F1E7E2;border-radius:50%;background:#654C52;box-shadow:0 1px 5px rgba(101,76,82,.24);cursor:pointer;}
.tp-coffee-range-labels{display:flex;justify-content:space-between;gap:14px;margin-top:10px;color:#8c737a;font-size:12.5px;line-height:1.2;letter-spacing:0;}
.tp-coffee-range-label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.tp-coffee-range-label:last-child{justify-content:flex-end;text-align:right;}
.tp-coffee-mini-icon{display:block;width:16px;height:16px;flex:0 0 16px;color:#9b7f86;}
.tp-coffee-submit{width:100%;border:0;cursor:pointer;font-family:inherit;}
.tp-coffee-form small{display:block;margin-top:8px;color:#948287;font-size:9px;line-height:1.35;text-align:center;}
@media(max-width:700px){.tp-coffee-native{padding:22px!important}.tp-coffee-native h3{font-size:25px}.tp-coffee-native p{font-size:14px!important}.tp-coffee-choice-head strong{font-size:17px}.tp-coffee-choice-head span{font-size:24px}.tp-coffee-range-labels{font-size:13px}.tp-coffee-mini-icon{width:17px;height:17px;flex-basis:17px}}

/* Native Share Buttons, ganz ohne externes Share Plugin */
.tp-share-row { margin-top:38px; padding:18px 0; border-top:1px solid var(--tpa-border); border-bottom:1px solid var(--tpa-border); display:flex; align-items:center; justify-content:space-between; gap:16px; }
.tp-share-row > span { font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:20px; }
.tp-share-buttons { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.tp-share-buttons a { min-height:34px; display:inline-flex; align-items:center; padding:6px 10px; border:1px solid rgba(101,76,82,.15); background:#fff; color:#745f65; text-decoration:none; font-size:10px; letter-spacing:.04em; }
.tp-share-buttons a:hover { background:var(--tpa-soft); color:var(--tpa-dark); }

.tp-related-posts { margin-top:48px; padding-top:26px; border-top:1px solid var(--tpa-border); }
.tp-article-eyebrow { display:block; margin-bottom:4px; color:#9b7f86; font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.tp-related-head h2 { margin:0 0 17px; font-size:30px; }
.tp-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.tp-related-card { display:block; border:1px solid rgba(101,76,82,.08); background:#fff; color:inherit; text-decoration:none; }
.tp-related-image { aspect-ratio:4/3; overflow:hidden; background:var(--tpa-soft); }
.tp-related-image img { width:100%; height:100%; object-fit:cover; }
.tp-related-copy { padding:11px 12px 14px; }
.tp-related-copy > span { color:#a18b91; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.tp-related-copy h3 { margin:5px 0 0; font-size:18px; line-height:1.08; }
.tp-post-navigation { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:18px; }
.tp-post-nav-card { display:flex; min-height:92px; flex-direction:column; justify-content:center; padding:14px 16px; border:1px solid var(--tpa-border); color:inherit; text-decoration:none; background:var(--tpa-cream); }
.tp-post-nav-card:hover { background:var(--tpa-soft); }
.tp-post-nav-card span { color:#a18a90; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.tp-post-nav-card strong { margin-top:5px; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:17px; font-weight:400; line-height:1.14; }
.tp-post-nav-next { text-align:right; }

/* Kommentare komplett neu gestylt, ohne den alten Twenty-Twelve-Look */
.tp-article-comments { margin-top:46px; padding-top:26px; border-top:1px solid var(--tpa-border); }
.tp-article-comments .comments-area { margin:0; }
.tp-article-comments .comments-title,.tp-article-comments .comment-reply-title { margin:0 0 18px; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:30px; font-weight:400; color:var(--tpa-dark); }
.tp-article-comments .commentlist,.tp-article-comments .children { margin:0; padding:0; list-style:none; }
.tp-article-comments .children { margin-left:34px; }
.tp-comment-card { display:grid; grid-template-columns:48px 1fr; gap:13px; margin:0 0 12px; padding:16px 18px; background:var(--tpa-cream); border:1px solid rgba(101,76,82,.07); }
.tp-comment-avatar img { display:block; border-radius:50%; }
.tp-comment-head { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; align-items:baseline; }
.tp-comment-head strong { font-size:13px; }
.tp-comment-head time { color:#a28b91; font-size:10px; }
.tp-comment-text { margin-top:5px; color:#6c5c61; font-size:14px; }
.tp-comment-text p:last-child { margin-bottom:0; }
.tp-comment-reply { margin-top:8px; }
.tp-comment-reply a { color:#956f79; text-decoration:none; font-size:11px; font-weight:600; }
.tp-article-comments .comment-respond { margin-top:25px; padding:22px; background:var(--tpa-soft); }
.tp-article-comments .comment-notes,.tp-article-comments .logged-in-as { color:#806d72; font-size:12px; }
.tp-article-comments label { display:block; margin-bottom:4px; color:#745f65; font-size:11px; font-weight:600; }
.tp-article-comments textarea,.tp-article-comments input[type="text"],.tp-article-comments input[type="email"],.tp-article-comments input[type="url"] { width:100%; border:1px solid rgba(101,76,82,.14); background:#fff; padding:10px 12px; color:var(--tpa-dark); }
.tp-article-comments textarea { min-height:130px; resize:vertical; }
.tp-article-comments .form-submit { margin-bottom:0; }
.tp-article-comments input[type="submit"] { min-height:44px; padding:10px 20px; border:0; background:var(--tpa-dark); color:#fff; cursor:pointer; }
.tp-article-comments a { text-decoration:none; }

/* Mobile-only Zurueck-nach-oben Button */
.tp-back-to-top { display:none; }

@media (max-width:1280px) {
    .tp-article-shell { width:min(100% - 52px,1120px); }
    .tp-article-hero { gap:34px; grid-template-columns:1.03fr .97fr; }
    .tp-article-hero h1 { font-size:clamp(35px,4vw,46px); }
    .tp-article-layout { grid-template-columns:minmax(0,1fr) 270px; gap:0 28px; }
}

@media (max-width:900px) {
    .tp-article-shell { width:min(100% - 38px,850px); }
    .tp-article-hero { gap:25px; }
    .tp-article-bubble img { max-height:350px; }
    .tp-article-hero h1 { font-size:34px; }
    .tp-native-toc { margin-top:16px; }
    .tp-article-layout { grid-template-columns:1fr; gap:0; }
    .tp-article-content,.tp-article-sidebar,.tp-related-posts,.tp-post-navigation,.tp-article-comments { grid-column:1; max-width:none; }
    .tp-article-sidebar { grid-row:auto; margin-top:30px; }
    .tp-article-sidebar-sticky { position:static; max-height:none; overflow:visible; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding-right:0; }
    .tp-sidebar-widgets { display:contents; }
    .tp-coffee-card { height:100%; }
    .tp-related-posts { margin-top:36px; }
}

@media (max-width:640px) {
    .tp-article-shell { width:calc(100% - 28px); }
    .tp-article-main { padding-top:20px; padding-bottom:40px; }
    .tp-article-breadcrumbs { display:none; }
    .tp-article-hero { display:flex; flex-direction:column; gap:17px; margin-bottom:25px; }
    .tp-article-bubble { width:100%; }
    .tp-article-bubble img { max-height:300px; object-position:center; }
    .tp-article-hero-copy { max-width:none; width:100%; }
    .tp-article-hero h1 { font-size:35px; line-height:1; }
    .tp-article-category { font-size:9.5px; }
    .tp-ad-label { min-height:25px; padding:3px 8px; font-size:9px; }
    .tp-article-meta { margin-top:11px; font-size:10px; }
    .tp-native-toc { margin-top:15px; }
    .tp-native-toc summary { min-height:50px; padding:10px 13px; font-size:13.5px; }
    .tp-native-toc ol { padding:2px 12px 14px 16px; }
    .tp-native-toc li.level-3 { padding-left:16px; }
    .tp-article-prose { font-size:15.5px; line-height:1.7; }
    .tp-article-prose h2 { margin-top:34px; font-size:30px; }
    .tp-article-prose h3 { margin-top:27px; font-size:23px; }
    .tp-article-prose figure,.tp-article-prose .wp-block-image,.tp-article-prose .wp-block-gallery { margin:22px 0; }
    .tp-article-prose blockquote { margin:26px 0; padding:20px 17px 20px 44px; font-size:21px; }
    .tp-share-row { display:block; margin-top:32px; padding:15px 0; }
    .tp-share-row > span { display:block; margin-bottom:9px; font-size:19px; }
    .tp-share-buttons { justify-content:flex-start; gap:6px; }
    .tp-share-buttons a { font-size:9.5px; }

    /* Sidebar-Inhalte mobil komplett ausblenden. Nur die Kaffeekasse bleibt an dieser Stelle. */
    .tp-article-sidebar { margin-top:28px; display:block; }
    .tp-article-sidebar-sticky { display:block; position:static; max-height:none; overflow:visible; padding:0; }
    .tp-sidebar-widgets { display:none!important; }
    .tp-coffee-card { height:auto; padding:18px; }
    .tp-coffee-card h3 { font-size:24px; }
    .tp-coffee-card p { font-size:13.5px; }

    .tp-related-posts { margin-top:28px; padding-top:24px; }
    .tp-related-grid { display:flex; overflow-x:auto; gap:11px; scroll-snap-type:x mandatory; padding-bottom:4px; scrollbar-width:none; }
    .tp-related-grid::-webkit-scrollbar { display:none; }
    .tp-related-card { flex:0 0 78%; max-width:280px; scroll-snap-align:start; }
    .tp-post-navigation { grid-template-columns:1fr; }
    .tp-post-nav-next { text-align:left; }
    .tp-article-comments { margin-top:36px; }
    .tp-article-comments .comments-title,.tp-article-comments .comment-reply-title { font-size:27px; }
    .tp-comment-card { grid-template-columns:38px 1fr; gap:10px; padding:14px; }
    .tp-comment-avatar img { width:38px; height:38px; }
    .tp-article-comments .children { margin-left:16px; }
    .tp-article-comments .comment-respond { padding:17px; }

    .tp-back-to-top { position:fixed; z-index:65; left:14px; bottom:16px; width:42px; height:42px; display:grid; place-items:center; border:0; border-radius:50%; background:rgba(101,76,82,.92); color:#fff; box-shadow:0 8px 24px rgba(101,76,82,.20); opacity:0; visibility:hidden; transform:translateY(8px); transition:opacity .2s ease,transform .2s ease,visibility .2s; cursor:pointer; }
    .tp-back-to-top.is-visible { opacity:1; visibility:visible; transform:none; }
    .tp-back-to-top .tp-chevron-icon { width:18px; height:18px; }
}

/* Travelprincess article refinements v1.15.0 */
.tp-article-layout{
    display:block;
}
.tp-article-content{
    max-width:none;
    min-width:0;
}
.tp-article-sidebar{
    float:right;
    width:300px;
    margin:0 0 34px 44px;
    position:relative;
    z-index:2;
}
.tp-article-sidebar-inner{
    display:grid;
    gap:16px;
}
.tp-article-sidebar-sticky{
    position:static!important;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
}
.tp-article-prose{
    min-width:0;
}
.tp-share-row{
    clear:both;
    border-bottom:0;
    margin-top:40px;
    padding:20px 0 8px;
}
.tp-related-posts,.tp-post-navigation,.tp-article-comments{
    clear:both;
    max-width:850px;
}
.tp-share-buttons{
    gap:9px;
}
.tp-share-buttons a{
    min-height:40px;
    padding:8px 12px;
    gap:7px;
    border:1px solid rgba(101,76,82,.20);
    background:var(--tpa-soft);
    color:var(--tpa-dark);
    font-size:10.5px;
    font-weight:700;
    letter-spacing:.025em;
    transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.tp-share-buttons a:hover{
    transform:translateY(-1px);
    background:#fff;
    border-color:rgba(101,76,82,.35);
}
.tp-share-buttons svg{
    width:17px;
    height:17px;
    flex:0 0 17px;
    fill:currentColor;
}
.tp-article-meta span:first-child::before{
    content:none!important;
}

/* Modern comments: form first, comments afterwards */
.tp-article-comments{
    margin-top:48px;
    padding-top:0;
    border-top:0;
}
.tp-comment-form-card{
    margin-bottom:34px;
    padding:26px;
    background:var(--tpa-soft);
    border:1px solid rgba(101,76,82,.08);
}
.tp-comment-form-card .comment-respond{
    margin:0;
    padding:0;
    background:transparent;
}
.tp-article-comments .comment-reply-title{
    margin:0 0 7px;
    font-size:29px;
}
.tp-article-comments .comment-notes{
    margin:0 0 20px;
    color:#7f6c72;
    font-size:12px;
}
.tp-article-comments .comment-form{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px 16px;
}
.tp-article-comments .comment-form-comment,
.tp-article-comments .comment-form-url,
.tp-article-comments .comment-form-cookies-consent,
.tp-article-comments .form-submit,
.tp-article-comments .logged-in-as{
    grid-column:1 / -1;
}
.tp-article-comments .comment-form p{
    margin:0;
}
.tp-article-comments label{
    margin-bottom:6px;
    font-size:10px;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.tp-article-comments textarea,
.tp-article-comments input[type="text"],
.tp-article-comments input[type="email"],
.tp-article-comments input[type="url"]{
    border:1px solid rgba(101,76,82,.14);
    background:rgba(255,255,255,.86);
    padding:11px 12px;
    border-radius:0;
}
.tp-article-comments textarea{
    min-height:118px;
}
.tp-article-comments input[type="submit"]{
    min-height:42px;
    padding:9px 18px;
    background:var(--tpa-dark);
    font-size:11px;
    font-weight:700;
    letter-spacing:.04em;
}
.tp-comments-list-section{
    padding-top:28px;
    border-top:1px solid var(--tpa-border);
}
.tp-comments-heading-row{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:20px;
}
.tp-comments-heading-row .comments-title{
    margin:0;
    font-size:30px;
}
.tp-comments-heading-row .comments-title span{
    display:inline-grid;
    place-items:center;
    min-width:28px;
    height:28px;
    margin-left:6px;
    padding:0 7px;
    border-radius:50%;
    background:var(--tpa-soft);
    font-family:"TP Inter",Inter,Arial,sans-serif;
    font-size:10px;
}
.tp-comments-heading-row p{
    max-width:330px;
    margin:0;
    color:#8c777d;
    font-size:11px;
    text-align:right;
}
.tp-article-comments .commentlist{
    display:grid;
    gap:12px;
}
.tp-comment-card{
    grid-template-columns:44px minmax(0,1fr);
    gap:14px;
    margin:0;
    padding:17px 18px;
    background:#fff;
    border:1px solid rgba(101,76,82,.09);
    box-shadow:0 8px 24px rgba(101,76,82,.035);
}
.tp-comment-avatar img{
    width:44px;
    height:44px;
    object-fit:cover;
}
.tp-comment-head strong{
    color:var(--tpa-dark);
    font-size:13px;
}
.tp-comment-head time{
    font-size:9.5px;
    letter-spacing:.03em;
}
.tp-comment-text{
    margin-top:7px;
    color:#625459;
    font-size:13.5px;
    line-height:1.65;
}
.tp-comment-reply a{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:4px 9px;
    border:1px solid rgba(101,76,82,.13);
    background:var(--tpa-cream);
    color:var(--tpa-dark);
    font-size:9.5px;
    letter-spacing:.03em;
}
.tp-article-comments .children{
    margin:10px 0 0 28px;
    padding-left:13px;
    border-left:2px solid var(--tpa-soft);
}
.tp-back-to-top{
    right:14px!important;
    left:auto!important;
}

@media (max-width:1050px){
    .tp-article-sidebar{
        float:none;
        width:auto;
        margin:30px 0 0;
    }
    .tp-article-sidebar-inner{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tp-related-posts,.tp-post-navigation,.tp-article-comments{
        max-width:none;
    }
}

@media (max-width:700px){
    .tp-article-sidebar{
        display:none!important;
    }
    .tp-share-row{
        padding-bottom:6px;
    }
    .tp-share-buttons{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tp-share-buttons a{
        justify-content:center;
        min-height:42px;
        font-size:10px;
    }
    .tp-comment-form-card{
        padding:18px 16px;
        margin-bottom:26px;
    }
    .tp-article-comments .comment-form{
        grid-template-columns:1fr;
    }
    .tp-article-comments .comment-form-author,
    .tp-article-comments .comment-form-email{
        grid-column:1;
    }
    .tp-comments-heading-row{
        display:block;
    }
    .tp-comments-heading-row p{
        margin-top:6px;
        text-align:left;
    }
    .tp-comment-card{
        grid-template-columns:38px minmax(0,1fr);
        padding:14px;
    }
    .tp-comment-avatar img{
        width:38px;
        height:38px;
    }
    .tp-article-comments .children{
        margin-left:12px;
        padding-left:9px;
    }
}


/* Travelprincess article refinements v1.16.0 */
.tp-article-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:0 44px!important;
    align-items:start;
}
.tp-article-content{
    grid-column:1!important;
    grid-row:1!important;
    max-width:850px!important;
    min-width:0;
}
.tp-article-sidebar{
    grid-column:2!important;
    grid-row:1!important;
    float:none!important;
    width:auto!important;
    margin:0!important;
    min-width:0;
    align-self:stretch;
    position:relative;
}
.tp-article-sidebar-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px;
    position:sticky!important;
    top:18px;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
}
.tp-article-sidebar-sticky{
    position:static!important;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
}
.tp-related-posts,.tp-post-navigation,.tp-article-comments{
    grid-column:1!important;
    max-width:850px!important;
}

/* Meta und Hero bewusst ruhiger. */
.tp-article-label-row{display:none!important;}

/* Share Buttons verwenden dieselbe Icon-Sprache wie der Header. */
.tp-share-buttons{
    gap:8px;
}
.tp-share-buttons a{
    min-height:42px;
    padding:8px 13px;
    gap:8px;
    border:1px solid rgba(101,76,82,.18);
    background:#fff;
    color:var(--tpa-dark);
    font-size:10.5px;
    font-weight:700;
}
.tp-share-buttons a:hover{
    background:var(--tpa-soft);
    border-color:rgba(101,76,82,.30);
}
.tp-share-buttons svg{
    width:20px;
    height:20px;
    flex:0 0 20px;
    fill:none;
}
.tp-share-buttons svg path[fill="currentColor"],
.tp-share-buttons svg circle[fill="currentColor"]{
    fill:currentColor;
}

/* Kommentar Threads klarer gliedern. */
.tp-comments-heading-row{
    display:block!important;
    margin-bottom:18px;
}
.tp-comments-heading-row p{display:none!important;}
.tp-article-comments .commentlist{
    display:block!important;
}
.tp-article-comments .commentlist > .comment{
    margin:0 0 18px;
}
.tp-comment-card-root{
    padding:18px 20px;
    background:#fff!important;
    border:1px solid rgba(101,76,82,.10)!important;
    box-shadow:0 8px 24px rgba(101,76,82,.035);
}
.tp-comment-card-reply{
    padding:14px 16px!important;
    background:var(--tpa-soft)!important;
    border:0!important;
    box-shadow:none!important;
}
.tp-comment-context{
    margin:0 0 5px;
    color:#9b7f86;
    font-size:9px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.tp-article-comments .children{
    margin:10px 0 0 24px!important;
    padding:4px 0 2px 20px!important;
    border-left:2px solid rgba(178,151,157,.34)!important;
}
.tp-article-comments .children > .comment{
    margin-bottom:9px;
}
.tp-article-comments .children .children{
    margin-left:12px!important;
    padding-left:14px!important;
}
.tp-comment-reply a{
    border:0!important;
    background:transparent!important;
    padding:0!important;
    min-height:0!important;
    color:#956f79!important;
    font-size:10px!important;
    font-weight:700;
}

/* Der Sprung nach oben ist auf allen Geraeten verfuegbar. */
.tp-back-to-top{
    position:fixed!important;
    z-index:65;
    right:16px!important;
    left:auto!important;
    bottom:76px!important;
    width:44px;
    height:44px;
    display:grid!important;
    place-items:center;
    border:0;
    border-radius:50%;
    background:rgba(101,76,82,.94);
    color:#fff;
    box-shadow:0 8px 24px rgba(101,76,82,.20);
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s;
    cursor:pointer;
}
.tp-back-to-top.is-visible{
    opacity:1;
    visibility:visible;
    transform:none;
}
.tp-back-to-top .tp-chevron-icon{width:18px;height:18px;}

@media (max-width:1050px){
    .tp-article-layout{
        grid-template-columns:1fr!important;
        gap:0!important;
    }
    .tp-article-content,.tp-article-sidebar,.tp-related-posts,.tp-post-navigation,.tp-article-comments{
        grid-column:1!important;
        grid-row:auto!important;
        max-width:none!important;
    }
    .tp-article-sidebar{
        margin-top:30px!important;
    }
    .tp-article-sidebar-inner{
        position:static!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media (max-width:700px){
    /* Mobil verschwindet die eigentliche Sidebar. Die Kaffeekasse bleibt vor Weiterlesen sichtbar. */
    .tp-article-sidebar{
        display:block!important;
        margin-top:26px!important;
    }
    .tp-article-sidebar-inner{
        display:block!important;
    }
    .tp-sidebar-widgets{
        display:none!important;
    }
    .tp-coffee-card{
        display:block!important;
        height:auto!important;
    }
    .tp-share-buttons{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .tp-share-buttons a{
        padding:8px 6px;
        font-size:9px;
    }
    .tp-share-buttons svg{
        width:18px;
        height:18px;
        flex-basis:18px;
    }
    .tp-article-comments .children{
        margin-left:8px!important;
        padding-left:12px!important;
    }
    .tp-comment-card-root{
        padding:15px!important;
    }
    .tp-comment-card-reply{
        padding:12px!important;
    }
    .tp-back-to-top{
        right:14px!important;
        bottom:72px!important;
        width:42px;
        height:42px;
    }
}


/* Travelprincess focused refinements v1.17.0 */
.tp-redesign-article .tp-article-breadcrumbs{
    display:none!important;
}

/* Tablet: Sidebar nicht als zwei nebeneinanderliegende Kaesten, sondern ruhig untereinander. */
@media (min-width:701px) and (max-width:1050px){
    .tp-redesign-article .tp-article-sidebar{
        width:min(100%,680px)!important;
        margin:34px auto 0!important;
    }
    .tp-redesign-article .tp-article-sidebar-inner{
        grid-template-columns:1fr!important;
        gap:16px!important;
    }
    .tp-redesign-article .tp-sidebar-widgets{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:16px!important;
    }
}

/* Kategorie Seiten v1.19.0 */
.tp-redesign-category .tp-category-main { overflow:clip; background:var(--tp-paper); }
.tp-redesign-category .tp-category-hero { position:relative; padding:64px 0 58px; background:linear-gradient(180deg,#fffefd 0%,#fffefd 74%,rgba(241,231,226,.32) 100%); }
.tp-redesign-category .tp-category-hero::after { content:""; position:absolute; z-index:0; right:-80px; top:105px; width:390px; height:390px; border-radius:50%; background:radial-gradient(circle,rgba(241,231,226,.64) 0%,rgba(241,231,226,.16) 55%,rgba(241,231,226,0) 72%); pointer-events:none; }
.tp-redesign-category .tp-category-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(360px,47%) minmax(0,1fr); grid-template-areas:"image copy" "image info"; column-gap:clamp(42px,6vw,84px); row-gap:0; align-items:center; }
.tp-redesign-category .tp-category-hero-grid.tp-category-no-image { grid-template-columns:minmax(0,900px); grid-template-areas:"copy" "info"; justify-content:center; }
.tp-redesign-category .tp-category-bubble-wrap { grid-area:image; min-width:0; }
.tp-redesign-category .tp-category-bubble { position:relative; width:min(100%,600px); aspect-ratio:1.08/1; overflow:hidden; border-radius:55% 45% 51% 49% / 47% 55% 45% 53%; background:var(--tp-soft); box-shadow:0 20px 55px rgba(101,76,82,.08); }
.tp-redesign-category .tp-category-bubble::after { content:""; position:absolute; inset:0; border:1px solid rgba(101,76,82,.09); border-radius:inherit; pointer-events:none; }
.tp-redesign-category .tp-category-bubble img { width:100%; height:100%; object-fit:cover; }
.tp-redesign-category .tp-category-copy { grid-area:copy; min-width:0; }
.tp-redesign-category .tp-category-copy > h1 { font-size:clamp(48px,5vw,72px); line-height:.98; }
.tp-redesign-category .tp-category-scriptline { margin:9px 0 16px; color:#B2979D; font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive; font-size:clamp(25px,2.5vw,39px); line-height:1.05; transform:rotate(-1deg); }
.tp-redesign-category .tp-category-description { max-width:740px; color:#715d63; font-size:16px; line-height:1.7; }
.tp-redesign-category .tp-category-description p:last-child { margin-bottom:0; }
.tp-redesign-category .tp-category-description img { display:none!important; }

.tp-redesign-category .tp-category-info-grid { grid-area:info; display:grid; grid-template-columns:1fr 1fr; gap:34px; margin-top:38px; padding-top:30px; border-top:1px solid rgba(101,76,82,.09); }
.tp-redesign-category .tp-category-info-grid.tp-category-info-single { grid-template-columns:minmax(0,1fr); max-width:610px; }
.tp-redesign-category .tp-category-info-group h2 { margin-bottom:17px; font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; font-weight:700; letter-spacing:0; }
.tp-redesign-category .tp-category-info-list { display:grid; gap:11px; }
.tp-redesign-category .tp-category-info-row { display:grid; grid-template-columns:44px minmax(0,1fr); gap:11px; align-items:center; min-height:42px; color:#9B858B; font-size:14px; line-height:1.4; }
.tp-redesign-category .tp-category-info-row img { width:40px; height:40px; object-fit:contain; }
.tp-redesign-category .tp-category-info-row strong { color:#846c72; font-weight:600; }
.tp-redesign-category .tp-category-info-row a { color:#846c72; text-decoration:none; font-weight:600; }
.tp-redesign-category .tp-category-info-row a:hover,.tp-redesign-category .tp-category-info-row a:focus { color:var(--tp-dark); box-shadow:inset 0 -1px 0 rgba(101,76,82,.35); }

.tp-redesign-category .tp-category-posts { padding:54px 0 72px; background:#fff; }
.tp-redesign-category .tp-category-posts-head { display:flex; justify-content:flex-start; align-items:end; gap:28px; margin-bottom:25px; }
.tp-redesign-category .tp-category-posts-head h2 { font-size:clamp(34px,3.4vw,48px); line-height:1.02; }
.tp-redesign-category .tp-category-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 20px; }
.tp-redesign-category .tp-category-card { min-width:0; background:#fff; border:1px solid rgba(101,76,82,.08); }
.tp-redesign-category .tp-category-card-image { display:block; aspect-ratio:1.38/1; overflow:hidden; background:var(--tp-soft); }
.tp-redesign-category .tp-category-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .28s ease; }
.tp-redesign-category .tp-category-card:hover .tp-category-card-image img { transform:scale(1.025); }
.tp-redesign-category .tp-category-card-copy { padding:17px 18px 21px; }
.tp-redesign-category .tp-category-card-date { margin:0 0 8px; color:#9B7F86; font-size:10px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.tp-redesign-category .tp-category-card h3 { font-size:clamp(22px,2vw,29px); line-height:1.12; }
.tp-redesign-category .tp-category-card h3 a { color:var(--tp-dark); text-decoration:none; }
.tp-redesign-category .tp-category-card h3 a:hover,.tp-redesign-category .tp-category-card h3 a:focus { color:#8d737a; }
.tp-redesign-category .tp-category-pagination { display:flex; justify-content:flex-start; align-items:center; flex-wrap:wrap; gap:7px; margin-top:28px; }

/* Kategorie-Pagination: alte Plugin-Ausgabe ausblenden, native Theme-Pagination verwenden */
.tp-redesign-category .pgntn-page-pagination { display:none !important; }
.tp-redesign-category .tp-category-pagination .page-numbers { display:grid; place-items:center; min-width:38px; height:36px; padding:0 12px; border:1px solid transparent; border-radius:11px; background:var(--tp-soft); color:var(--tp-dark); text-decoration:none; font-size:13px; line-height:1; transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease; }
.tp-redesign-category .tp-category-pagination .page-numbers.current { background:var(--tp-dark); color:#fff; }
.tp-redesign-category .tp-category-pagination .page-numbers.dots { min-width:auto; padding-inline:6px; background:transparent; border-color:transparent; }
.tp-redesign-category .tp-category-pagination .page-numbers.prev,
.tp-redesign-category .tp-category-pagination .page-numbers.next { min-width:36px; padding-inline:9px; font-size:18px; }
.tp-redesign-category .tp-category-pagination a:hover,.tp-redesign-category .tp-category-pagination a:focus { background:#e6d7d3; border-color:rgba(101,76,82,.08); transform:translateY(-1px); }

/* Die beiden kleinen mobilen Startseiten Labels bleiben sichtbar. */
@media (max-width:767px) {
    .tp-redesign-home .tp-about-note-copy .tp-eyebrow { display:block!important; margin-bottom:5px!important; }
    .tp-redesign-home .tp-hotels-intro .tp-eyebrow { display:block!important; margin-bottom:6px!important; }
}

@media (max-width:1100px) {
    .tp-redesign-category .tp-category-hero { padding:50px 0 46px; }
    .tp-redesign-category .tp-category-hero-grid { grid-template-columns:minmax(300px,43%) minmax(0,1fr); gap:38px; }
    .tp-redesign-category .tp-category-copy > h1 { font-size:clamp(43px,5vw,61px); }
    .tp-redesign-category .tp-category-description { font-size:15px; line-height:1.62; }
    .tp-redesign-category .tp-category-info-grid { gap:24px; margin-top:28px; padding-top:24px; }
    .tp-redesign-category .tp-category-info-row { grid-template-columns:40px minmax(0,1fr); gap:9px; font-size:13px; }
    .tp-redesign-category .tp-category-info-row img { width:36px; height:36px; }
    .tp-redesign-category .tp-category-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:767px) {
    .tp-redesign-category .tp-category-hero { padding:28px 0 34px; }
    .tp-redesign-category .tp-category-hero::after { width:240px; height:240px; top:280px; right:-90px; }
    .tp-redesign-category .tp-category-hero-grid { grid-template-columns:1fr; grid-template-areas:"image" "copy" "info"; gap:0; }
    .tp-redesign-category .tp-category-hero-grid.tp-category-no-image { grid-template-areas:"copy" "info"; }
    .tp-redesign-category .tp-category-copy { margin-top:22px; }
    .tp-redesign-category .tp-category-no-image .tp-category-copy { margin-top:0; }
    .tp-redesign-category .tp-category-bubble { width:100%; max-width:none; aspect-ratio:1.42/1; border-radius:56% 44% 53% 47% / 45% 55% 45% 55%; }
    .tp-redesign-category .tp-category-copy > h1 { font-size:42px; }
    .tp-redesign-category .tp-category-scriptline { margin:5px 0 13px; font-size:27px; }
    .tp-redesign-category .tp-category-description { font-size:14.5px; line-height:1.62; }
    .tp-redesign-category .tp-category-info-grid { grid-template-columns:1fr; gap:24px; margin-top:26px; padding-top:23px; }
    .tp-redesign-category .tp-category-info-group h2 { margin-bottom:13px; font-size:15px; }
    .tp-redesign-category .tp-category-info-list { gap:9px; }
    .tp-redesign-category .tp-category-info-row { grid-template-columns:40px minmax(0,1fr); gap:9px; min-height:38px; font-size:13px; }
    .tp-redesign-category .tp-category-info-row img { width:36px; height:36px; }
    .tp-redesign-category .tp-category-posts { padding:38px 0 55px; }
    .tp-redesign-category .tp-category-posts-head { align-items:flex-start; flex-direction:column; gap:15px; margin-bottom:20px; }
    .tp-redesign-category .tp-category-posts-head h2 { font-size:32px; }
    .tp-redesign-category .tp-category-card-grid { grid-template-columns:1fr; gap:16px; }
    .tp-redesign-category .tp-category-card-image { aspect-ratio:1.45/1; }
    .tp-redesign-category .tp-category-card-copy { padding:14px 15px 18px; }
    .tp-redesign-category .tp-category-card h3 { font-size:25px; }
}


/* Einheitliche statische Seiten v1.21.0 */
.tp-redesign-page .tp-page-main { background:var(--tp-paper); }
.tp-redesign-page .tp-page-hero { position:relative; overflow:hidden; padding:72px 0 64px; background:linear-gradient(135deg,#fffefd 0%,#fffefd 54%,rgba(241,231,226,.78) 100%); border-bottom:1px solid rgba(101,76,82,.06); }
.tp-redesign-page .tp-page-hero::after { content:""; position:absolute; width:360px; height:360px; right:-120px; top:-145px; border-radius:50%; background:rgba(241,231,226,.52); pointer-events:none; }
.tp-redesign-page .tp-page-hero-inner { position:relative; z-index:1; max-width:900px; }
.tp-redesign-page .tp-page-hero .tp-eyebrow { margin:0 0 12px; color:#9a7f86; font-size:11px; font-weight:700; letter-spacing:.23em; text-transform:uppercase; }
.tp-redesign-page .tp-page-hero h1 { max-width:900px; font-size:clamp(48px,5.6vw,76px); line-height:.98; }
.tp-redesign-page .tp-page-hero-copy { max-width:720px; margin:20px 0 0; color:#715d63; font-size:17px; line-height:1.65; }
.tp-redesign-page .tp-page-hero-cta { margin-top:26px; }
.tp-redesign-page .tp-page-content-section { padding:58px 0 78px; }
.tp-redesign-page .tp-gutenberg-content { width:min(100%,980px); margin:0 auto; color:#654C52; font-size:16px; line-height:1.72; }
.tp-redesign-page .tp-gutenberg-content > *:first-child { margin-top:0; }
.tp-redesign-page .tp-gutenberg-content h2 { margin:54px 0 17px; font-size:clamp(34px,4vw,50px); line-height:1.04; }
.tp-redesign-page .tp-gutenberg-content h3 { margin:34px 0 12px; font-size:clamp(25px,2.7vw,34px); line-height:1.1; }
.tp-redesign-page .tp-gutenberg-content h4 { margin:27px 0 10px; color:#7d646b; font-size:17px; font-weight:700; }
.tp-redesign-page .tp-gutenberg-content p { margin:0 0 18px; }
.tp-redesign-page .tp-gutenberg-content a:not(.wp-block-button__link):not(.tp-button) { color:#8f7179; text-decoration:none; box-shadow:inset 0 -1px 0 rgba(143,113,121,.28); transition:color .18s ease,box-shadow .18s ease; }
.tp-redesign-page .tp-gutenberg-content a:not(.wp-block-button__link):not(.tp-button):hover { color:var(--tp-dark); box-shadow:inset 0 -1px 0 var(--tp-dark); }
.tp-redesign-page .tp-gutenberg-content figure { margin:34px 0; }
.tp-redesign-page .tp-gutenberg-content img { height:auto; }
.tp-redesign-page .tp-gutenberg-content .wp-block-image img { border-radius:2px; }
.tp-redesign-page .tp-gutenberg-content .wp-block-columns { gap:28px; }
.tp-redesign-page .tp-gutenberg-content .wp-block-button__link { border-radius:0; background:var(--tp-dark); color:#fff; padding:13px 24px; text-decoration:none; }
.tp-redesign-page .tp-gutenberg-content hr { margin:48px 0; border:0; border-top:1px solid rgba(101,76,82,.10); }

/* Über mich: ruhiger Editorial Look, bestehender Gutenberg Inhalt bleibt erhalten. */
.tp-page-about .tp-page-hero { background:linear-gradient(135deg,#fffefd 0%,#fffefd 44%,#F1E7E2 100%); }
.tp-page-about .tp-page-about-content { width:min(100%,1040px); }
.tp-page-about .tp-page-about-content > h2:first-of-type { margin-top:0; }
.tp-page-about .tp-page-about-content > p:first-of-type { font-size:18px; line-height:1.72; }
.tp-page-about .tp-page-about-content .wp-block-image { overflow:hidden; }
.tp-page-about .tp-page-about-content .wp-block-image img { border-radius:46% 54% 48% 52% / 52% 44% 56% 48%; }
.tp-page-about .tp-page-about-content .wp-block-gallery { gap:12px; }
.tp-page-about .tp-page-about-content .wp-block-gallery img { border-radius:0; aspect-ratio:1/1; object-fit:cover; }

/* Kooperationen: Zahlen, Listen und Gutenberg-Spalten moderner und klarer. */
.tp-page-coop .tp-page-hero { background:linear-gradient(135deg,#fffefd 0%,#fffefd 48%,rgba(241,231,226,.92) 100%); }
.tp-page-coop .tp-page-coop-content { width:min(100%,1080px); }
.tp-page-coop .tp-page-coop-content > p:first-of-type { font-size:18px; line-height:1.72; }
.tp-page-coop .tp-page-coop-content .wp-block-columns { align-items:stretch; margin:28px 0; }
.tp-page-coop .tp-page-coop-content .wp-block-column { padding:24px; background:#fff; border:1px solid rgba(101,76,82,.08); }
.tp-page-coop .tp-page-coop-content ul { margin:14px 0 24px; padding:0; list-style:none; }
.tp-page-coop .tp-page-coop-content li { position:relative; margin:8px 0; padding-left:22px; }
.tp-page-coop .tp-page-coop-content li::before { content:""; position:absolute; left:0; top:.68em; width:7px; height:7px; border-radius:50%; background:#B2979D; }
.tp-page-coop .tp-page-coop-content blockquote { margin:36px 0; padding:26px 28px; background:var(--tp-soft); border:0; }
.tp-page-coop .tp-page-coop-cta { padding:56px 0; background:var(--tp-soft); text-align:center; }
.tp-page-coop .tp-page-coop-cta-inner { width:min(760px,calc(100% - 48px)); }
.tp-page-coop .tp-page-coop-cta .tp-eyebrow { margin:0 0 9px; color:#957980; font-size:10px; font-weight:700; letter-spacing:.22em; }
.tp-page-coop .tp-page-coop-cta h2 { font-size:clamp(36px,4.2vw,54px); }
.tp-page-coop .tp-page-coop-cta p { margin:12px 0 23px; }

/* Impressum und Datenschutz bewusst zurückhaltend lassen. */
.tp-page-legal .tp-page-content-section { padding:48px 0 76px; }
.tp-page-legal .tp-page-legal-content { width:min(100%,960px); }
.tp-page-legal .tp-legal-title { margin:0 0 34px; font-size:clamp(40px,4.5vw,58px); }
.tp-page-legal .tp-page-legal-content h2 { margin-top:38px; font-size:30px; }
.tp-page-legal .tp-page-legal-content h3 { font-size:23px; }

@media (max-width:767px) {
    .tp-redesign-page .tp-page-hero { padding:42px 0 38px; }
    .tp-redesign-page .tp-page-hero::after { width:220px; height:220px; right:-95px; top:-70px; }
    .tp-redesign-page .tp-page-hero h1 { font-size:42px; }
    .tp-redesign-page .tp-page-hero-copy { margin-top:14px; font-size:15px; }
    .tp-redesign-page .tp-page-content-section { padding:36px 0 54px; }
    .tp-redesign-page .tp-gutenberg-content { font-size:15px; line-height:1.68; }
    .tp-redesign-page .tp-gutenberg-content h2 { margin-top:38px; font-size:32px; }
    .tp-redesign-page .tp-gutenberg-content h3 { margin-top:28px; font-size:25px; }
    .tp-redesign-page .tp-gutenberg-content .wp-block-columns { gap:16px; }
    .tp-page-coop .tp-page-coop-content .wp-block-column { padding:18px; }
    .tp-page-coop .tp-page-coop-cta { padding:42px 0; }
    .tp-page-legal .tp-page-content-section { padding-top:34px; }
}

/* Feinschliff statische Seiten v1.22.0 */

/* Über mich: Bildserien nicht mehr als einzelne Bubble-Bilder untereinander.
   Aufeinanderfolgende Gutenberg-Bilder werden als ruhige eckige Galerie dargestellt. */
.tp-page-about .tp-page-about-content > .wp-block-image:has(+ .wp-block-image),
.tp-page-about .tp-page-about-content > .wp-block-image + .wp-block-image {
    display:inline-block;
    width:calc(33.333% - 10px);
    margin:8px 10px 8px 0;
    vertical-align:top;
    overflow:hidden;
}
.tp-page-about .tp-page-about-content > .wp-block-image:has(+ .wp-block-image) img,
.tp-page-about .tp-page-about-content > .wp-block-image + .wp-block-image img {
    width:100%;
    aspect-ratio:1 / 1;
    object-fit:cover;
    border-radius:0!important;
}

/* Footer: Navigation auf breiten Ansichten wieder optisch mittig statt linksbündig. */
@media (min-width:901px) {
    .tp-redesign-home .tp-footer-main {
        display:grid;
        grid-template-columns:145px minmax(0,1fr) 145px;
        gap:28px;
        align-items:center;
    }
    .tp-redesign-home .tp-footer-brand {
        width:145px;
        justify-self:start;
    }
    .tp-redesign-home .tp-footer-nav {
        display:grid;
        justify-items:center;
        justify-self:center;
        gap:9px;
    }
    .tp-redesign-home .tp-footer-nav-row {
        justify-content:center;
    }
    .tp-redesign-home .tp-footer-social {
        margin-left:0;
        justify-self:end;
    }
}

/* Kooperationen: CTA optisch vom gleichfarbigen Footer lösen. */
.tp-page-coop .tp-page-coop-cta {
    margin-bottom:38px;
}

@media (max-width:767px) {
    .tp-page-about .tp-page-about-content > .wp-block-image:has(+ .wp-block-image),
    .tp-page-about .tp-page-about-content > .wp-block-image + .wp-block-image {
        width:calc(50% - 7px);
        margin:6px 7px 6px 0;
    }
    .tp-page-coop .tp-page-coop-cta {
        margin-bottom:28px;
    }
}



/* Kontaktseite + einheitliche Seiten-Navigation v1.23.0 */
.tp-page-contact .tp-page-hero { padding-bottom:54px; }
.tp-page-contact .tp-page-content-section { padding-top:46px; }
.tp-page-contact .tp-page-contact-content { width:min(100%,900px); }
.tp-page-contact .tp-contact-card { padding:42px 46px; background:#fff; border:1px solid rgba(101,76,82,.09); box-shadow:0 16px 38px rgba(101,76,82,.05); }
.tp-page-contact .tp-contact-card .tp-eyebrow { margin:0 0 10px; color:#9a7f86; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
.tp-page-contact .tp-contact-card h2 { margin:0; font-size:clamp(34px,4vw,50px); }
.tp-page-contact .tp-contact-card > p:not(.tp-eyebrow) { max-width:680px; margin:15px 0 22px; }
.tp-page-contact .tp-contact-mail { display:inline-flex; align-items:center; min-height:48px; padding:0 20px; background:var(--tp-dark); color:#fff!important; text-decoration:none!important; font-weight:600; }
.tp-page-contact .tp-contact-socials { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.tp-page-contact .tp-contact-socials a { display:inline-flex; align-items:center; gap:9px; min-height:44px; padding:0 15px; border:1px solid rgba(101,76,82,.15); background:var(--tp-soft); color:var(--tp-dark)!important; text-decoration:none!important; font-weight:600; }
.tp-page-contact .tp-contact-socials a:hover { background:#eadbd7; }
.tp-page-contact .tp-contact-social-icon { display:inline-flex; width:19px; height:19px; }
.tp-page-contact .tp-contact-social-icon svg { width:100%; height:100%; }

@media (max-width:767px) {
    .tp-page-contact .tp-page-hero { padding-bottom:36px; }
    .tp-page-contact .tp-page-content-section { padding-top:28px; }
    .tp-page-contact .tp-contact-card { padding:27px 22px; }
    .tp-page-contact .tp-contact-socials { display:grid; grid-template-columns:1fr 1fr; }
    .tp-page-contact .tp-contact-socials a { justify-content:center; padding-inline:10px; }
}


/* Hotels, Kontakt und Suche Feinschliff v1.24.0 */

/* Hotelübersicht: bestehende Gutenberg-Beitragsblöcke kompakter und magazinartiger. */
.tp-page-hotels .tp-page-content-section { padding-top:46px; }
.tp-page-hotels .tp-page-hotels-content { width:min(100%,1120px); }
.tp-page-hotels .tp-page-hotels-content > h2:first-of-type { margin-top:0; font-size:clamp(34px,3.2vw,44px); }
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text {
    grid-template-columns:minmax(210px,29%) minmax(0,1fr)!important;
    gap:34px;
    min-height:0;
    margin:34px 0!important;
    align-items:center;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text__media { margin:0; }
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text__media img {
    width:100%;
    aspect-ratio:4 / 3;
    object-fit:cover;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text__content { padding:0!important; }
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text__content h2,
.tp-page-hotels .tp-page-hotels-content h2:has(a) {
    margin:0;
    font-size:clamp(27px,2.45vw,37px);
    line-height:1.08;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-media-text__content p { margin-top:10px; }

/* Falls die Hotelbeiträge als Gutenberg Latest Posts / Query Loop gepflegt sind. */
.tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__list,
.tp-page-hotels .tp-page-hotels-content .wp-block-query .wp-block-post-template {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 24px;
    padding:0;
    list-style:none;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__list > li,
.tp-page-hotels .tp-page-hotels-content .wp-block-query .wp-block-post {
    margin:0!important;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__featured-image { margin:0 0 13px; }
.tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__featured-image img,
.tp-page-hotels .tp-page-hotels-content .wp-block-query .wp-block-post-featured-image img {
    width:100%;
    aspect-ratio:16 / 10;
    object-fit:cover;
}
.tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__post-title,
.tp-page-hotels .tp-page-hotels-content .wp-block-query .wp-block-post-title {
    font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif;
    font-size:clamp(25px,2.2vw,33px);
    line-height:1.08;
}

/* Kontakt: Hero bewusst kompakter, die dekorative Bubble nimmt weniger Leerraum ein. */
.tp-page-contact .tp-page-hero { padding:44px 0 36px; }
.tp-page-contact .tp-page-hero::after { width:250px; height:250px; right:-92px; top:-112px; }
.tp-page-contact .tp-page-hero h1 { font-size:clamp(50px,4.9vw,68px); }
.tp-page-contact .tp-page-content-section { padding-top:34px; }

/* Suche: gleiche Design-Sprache wie der Rest der Seite, inklusive zentralem Header und Footer. */
.tp-redesign-search .tp-search-results-main { background:var(--tp-paper); }
.tp-redesign-search .tp-search-results-hero {
    padding:54px 0 46px;
    background:linear-gradient(135deg,#fffefd 0%,#fffefd 55%,rgba(241,231,226,.72) 100%);
    border-bottom:1px solid rgba(101,76,82,.06);
}
.tp-redesign-search .tp-search-results-hero .tp-eyebrow { margin:0 0 10px; color:#9a7f86; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
.tp-redesign-search .tp-search-results-hero h1 { max-width:980px; margin:0; font-size:clamp(42px,4.7vw,66px); line-height:1.02; }
.tp-redesign-search .tp-search-results-section { padding:52px 0 72px; }
.tp-redesign-search .tp-search-results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 22px; }
.tp-redesign-search .tp-search-card { min-width:0; background:#fff; border:1px solid rgba(101,76,82,.08); }
.tp-redesign-search .tp-search-card > a { display:block; color:inherit; text-decoration:none; }
.tp-redesign-search .tp-search-card-image { display:block; overflow:hidden; aspect-ratio:4 / 3; background:var(--tp-soft); }
.tp-redesign-search .tp-search-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.tp-redesign-search .tp-search-card:hover .tp-search-card-image img { transform:scale(1.025); }
.tp-redesign-search .tp-search-card-copy { display:block; padding:18px 18px 21px; }
.tp-redesign-search .tp-search-card-type { display:block; margin-bottom:8px; color:#9a7f86; font-size:10px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.tp-redesign-search .tp-search-card-title { display:block; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:27px; line-height:1.08; }
.tp-redesign-search .tp-search-empty { width:min(720px,100%); padding:34px; background:var(--tp-soft); }
.tp-redesign-search .tp-search-empty h2 { margin:0 0 10px; font-size:34px; }
.tp-redesign-search .tp-search-empty p { margin:0; }
.tp-redesign-search .tp-search-pagination { margin-top:38px; }

@media (max-width:900px) {
    .tp-page-hotels .tp-page-hotels-content .wp-block-media-text {
        grid-template-columns:minmax(180px,34%) minmax(0,1fr)!important;
        gap:24px;
        margin:28px 0!important;
    }
    .tp-page-hotels .tp-page-hotels-content .wp-block-media-text__content h2,
    .tp-page-hotels .tp-page-hotels-content h2:has(a) { font-size:29px; }
    .tp-redesign-search .tp-search-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:767px) {
    .tp-page-hotels .tp-page-content-section { padding-top:30px; }
    .tp-page-hotels .tp-page-hotels-content .wp-block-media-text {
        display:grid;
        grid-template-columns:1fr!important;
        gap:14px;
        margin:28px 0!important;
    }
    .tp-page-hotels .tp-page-hotels-content .wp-block-media-text__content h2,
    .tp-page-hotels .tp-page-hotels-content h2:has(a) { font-size:27px; }
    .tp-page-hotels .tp-page-hotels-content .wp-block-latest-posts__list,
    .tp-page-hotels .tp-page-hotels-content .wp-block-query .wp-block-post-template { grid-template-columns:1fr; gap:26px; }
    .tp-page-contact .tp-page-hero { padding:30px 0 27px; }
    .tp-page-contact .tp-page-hero::after { width:170px; height:170px; right:-72px; top:-77px; }
    .tp-page-contact .tp-page-hero h1 { font-size:42px; }
    .tp-page-contact .tp-page-content-section { padding-top:24px; }
    .tp-redesign-search .tp-search-results-hero { padding:36px 0 32px; }
    .tp-redesign-search .tp-search-results-hero h1 { font-size:38px; }
    .tp-redesign-search .tp-search-results-section { padding:34px 0 52px; }
    .tp-redesign-search .tp-search-results-grid { grid-template-columns:1fr; gap:24px; }
    .tp-redesign-search .tp-search-card-title { font-size:26px; }
}


/* Version 1.25.1: Suche, Kontakt und zentrale Navigation */
.tp-redesign-search .pgntn-page-pagination { display:none !important; }
.tp-redesign-search .tp-search-pagination { display:flex; justify-content:flex-start; align-items:center; flex-wrap:wrap; gap:7px; margin-top:32px; }
.tp-redesign-search .tp-search-pagination ul.page-numbers { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin:0; padding:0; list-style:none; }
.tp-redesign-search .tp-search-pagination li { margin:0; padding:0; list-style:none; }
.tp-redesign-search .tp-search-pagination .page-numbers { display:grid; place-items:center; min-width:38px; height:36px; padding:0 12px; border:1px solid transparent; border-radius:11px; background:var(--tp-soft); color:var(--tp-dark); text-decoration:none; font-size:13px; line-height:1; transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease; }
.tp-redesign-search .tp-search-pagination .page-numbers.current { background:var(--tp-dark); color:#fff; }
.tp-redesign-search .tp-search-pagination .page-numbers.dots { min-width:auto; padding-inline:6px; background:transparent; border-color:transparent; }
.tp-redesign-search .tp-search-pagination .page-numbers.prev,
.tp-redesign-search .tp-search-pagination .page-numbers.next { min-width:36px; padding-inline:9px; font-size:18px; }
.tp-redesign-search .tp-search-pagination a:hover,
.tp-redesign-search .tp-search-pagination a:focus { background:#e6d7d3; border-color:rgba(101,76,82,.08); transform:translateY(-1px); }
.tp-page-contact .tp-page-hero::after { display:none !important; }


/* Version 1.26.0: einheitlicher Header/Footer und ruhige Pagination */

/* Die komplette Seiten-Chrome folgt überall denselben Regeln wie auf der Startseite. */
.tp-redesign-home .tp-home-header,
.tp-redesign-home .tp-footer { width:100%; }
.tp-redesign-home .tp-home-header-inner,
.tp-redesign-home .tp-footer-main { margin-inline:auto; }

/* Such-Pagination: ul darf selbst niemals wie eine große Kapsel aussehen. */
.tp-redesign-search .tp-search-pagination ul.page-numbers {
    display:flex!important;
    align-items:center;
    flex-wrap:wrap;
    gap:9px!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    list-style:none!important;
}
.tp-redesign-search .tp-search-pagination ul.page-numbers > li {
    display:block;
    width:auto;
    height:auto;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    list-style:none!important;
}
.tp-redesign-search .tp-search-pagination ul.page-numbers > li > a.page-numbers,
.tp-redesign-search .tp-search-pagination ul.page-numbers > li > span.page-numbers {
    display:grid;
    place-items:center;
    min-width:38px;
    height:36px;
    padding:0 12px;
    border:1px solid transparent;
    border-radius:11px;
    background:var(--tp-soft);
    color:var(--tp-dark);
    text-decoration:none;
    font-size:13px;
    line-height:1;
}
.tp-redesign-search .tp-search-pagination ul.page-numbers > li > span.current {
    background:var(--tp-dark);
    color:#fff;
}
.tp-redesign-search .tp-search-pagination ul.page-numbers > li > span.dots {
    min-width:auto;
    padding-inline:6px;
    background:transparent;
}

/* Kategorie-Pagination bekommt denselben sichtbaren Weißraum zwischen den Kapseln. */
.tp-redesign-category .tp-category-pagination { gap:9px; }

/* Sicherheitsnetz: auch nach Parent-/Plugin-CSS bleibt die gemeinsame Chrome identisch. */
@media (min-width:1600px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1760px,calc(100% - 96px)); }
}
@media (min-width:1500px) and (max-width:1599px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1540px,calc(100% - 64px)); }
}
@media (min-width:1281px) and (max-width:1499px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(1360px,calc(100% - 40px)); }
}
@media (max-width:1280px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:min(100% - 38px,1180px); }
}
@media (max-width:767px) {
    .tp-redesign-home .tp-home-header .tp-shell { width:calc(100% - 28px); }
}

/* =========================================================
   Version 1.27.0 – Blogarchiv, sonstige Archive und 404
   ========================================================= */
.tp-redesign-archive .pgntn-page-pagination,
.tp-redesign-404 .pgntn-page-pagination { display:none !important; }

.tp-redesign-archive .tp-archive-main,
.tp-redesign-404 .tp-404-main { color:var(--tp-dark); background:var(--tp-paper); }

.tp-redesign-archive .tp-archive-hero {
    padding:76px 0 58px;
    background:linear-gradient(115deg,#fffefd 0%,#fffefd 68%,rgba(241,231,226,.72) 100%);
    border-bottom:1px solid rgba(101,76,82,.06);
}
.tp-redesign-archive .tp-archive-hero-compact { padding:62px 0 46px; }
.tp-redesign-archive .tp-archive-hero-inner { max-width:900px; }
.tp-redesign-archive .tp-archive-hero h1 {
    margin:4px 0 16px;
    font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif;
    font-size:clamp(48px,6vw,82px);
    line-height:.98;
    font-weight:400;
    letter-spacing:-.025em;
}
.tp-redesign-archive .tp-archive-intro { max-width:720px; margin:0; font-size:18px; line-height:1.65; color:#6f5d61; }
.tp-redesign-archive .tp-archive-intro p { margin:0; }
.tp-redesign-archive .tp-archive-posts { padding:58px 0 78px; }

.tp-redesign-archive .tp-archive-card-grid,
.tp-redesign-404 .tp-archive-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 20px; }
.tp-redesign-archive .tp-archive-card,
.tp-redesign-404 .tp-archive-card { min-width:0; background:#fff; border:1px solid rgba(101,76,82,.08); }
.tp-redesign-archive .tp-archive-card-image,
.tp-redesign-404 .tp-archive-card-image { display:block; aspect-ratio:1.38/1; overflow:hidden; background:var(--tp-soft); }
.tp-redesign-archive .tp-archive-card-image img,
.tp-redesign-404 .tp-archive-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .28s ease; }
.tp-redesign-archive .tp-archive-card:hover .tp-archive-card-image img,
.tp-redesign-404 .tp-archive-card:hover .tp-archive-card-image img { transform:scale(1.025); }
.tp-redesign-archive .tp-archive-card-copy,
.tp-redesign-404 .tp-archive-card-copy { padding:17px 18px 21px; }
.tp-redesign-archive .tp-archive-card-date,
.tp-redesign-404 .tp-archive-card-date { margin:0 0 8px; color:#9B7F86; font-size:10px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.tp-redesign-archive .tp-archive-card h2,
.tp-redesign-404 .tp-archive-card h2 { margin:0; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:clamp(22px,2vw,29px); line-height:1.12; font-weight:400; }
.tp-redesign-archive .tp-archive-card h2 a,
.tp-redesign-404 .tp-archive-card h2 a { color:var(--tp-dark); text-decoration:none; }
.tp-redesign-archive .tp-archive-card h2 a:hover,
.tp-redesign-archive .tp-archive-card h2 a:focus,
.tp-redesign-404 .tp-archive-card h2 a:hover,
.tp-redesign-404 .tp-archive-card h2 a:focus { color:#8d737a; }

.tp-redesign-archive .tp-archive-pagination { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-top:30px; }
.tp-redesign-archive .tp-archive-pagination .page-numbers { display:grid; place-items:center; min-width:38px; height:36px; padding:0 12px; border:1px solid transparent; border-radius:11px; background:var(--tp-soft); color:var(--tp-dark); text-decoration:none; font-size:13px; line-height:1; }
.tp-redesign-archive .tp-archive-pagination .page-numbers.current { background:var(--tp-dark); color:#fff; }
.tp-redesign-archive .tp-archive-pagination .page-numbers.dots { min-width:auto; padding-inline:5px; background:transparent; }
.tp-redesign-archive .tp-archive-pagination a:hover,.tp-redesign-archive .tp-archive-pagination a:focus { background:#e6d7d3; }

.tp-redesign-404 .tp-404-hero { padding:74px 0 70px; text-align:center; background:linear-gradient(135deg,#fffefd 0%,#fffefd 62%,#F1E7E2 100%); }
.tp-redesign-404 .tp-404-inner { max-width:760px; }
.tp-redesign-404 .tp-404-number { margin:0; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:clamp(92px,14vw,180px); line-height:.8; color:rgba(101,76,82,.11); }
.tp-redesign-404 .tp-404-hero h1 { margin:12px 0 16px; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-size:clamp(42px,5vw,68px); line-height:1; font-weight:400; }
.tp-redesign-404 .tp-404-hero > .tp-shell > p:not(.tp-eyebrow):not(.tp-404-number) { max-width:620px; margin:0 auto 25px; font-size:17px; line-height:1.65; }
.tp-redesign-404 .tp-404-search { display:grid; grid-template-columns:minmax(0,1fr) auto; max-width:590px; margin:0 auto 18px; background:#fff; border:1px solid rgba(101,76,82,.12); }
.tp-redesign-404 .tp-404-search input { min-width:0; border:0; background:transparent; padding:15px 17px; color:var(--tp-dark); font:inherit; outline:none; }
.tp-redesign-404 .tp-404-search button { border:0; padding:0 25px; background:var(--tp-dark); color:#fff; font:inherit; cursor:pointer; }
.tp-redesign-404 .tp-404-latest { padding:58px 0 78px; }

@media (max-width: 980px) {
    .tp-redesign-archive .tp-archive-card-grid,
    .tp-redesign-404 .tp-archive-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .tp-redesign-archive .tp-archive-hero { padding:60px 0 48px; }
}
@media (max-width: 700px) {
    .tp-redesign-archive .tp-archive-hero { padding:42px 0 34px; }
    .tp-redesign-archive .tp-archive-hero h1 { font-size:44px; }
    .tp-redesign-archive .tp-archive-intro { font-size:16px; line-height:1.55; }
    .tp-redesign-archive .tp-archive-posts { padding:34px 0 52px; }
    .tp-redesign-archive .tp-archive-card-grid,
    .tp-redesign-404 .tp-archive-card-grid { grid-template-columns:1fr; gap:16px; }
    .tp-redesign-archive .tp-archive-card-image,
    .tp-redesign-404 .tp-archive-card-image { aspect-ratio:1.45/1; }
    .tp-redesign-archive .tp-archive-card-copy,
    .tp-redesign-404 .tp-archive-card-copy { padding:14px 15px 18px; }
    .tp-redesign-archive .tp-archive-card h2,
    .tp-redesign-404 .tp-archive-card h2 { font-size:25px; }
    .tp-redesign-404 .tp-404-hero { padding:48px 0 50px; }
    .tp-redesign-404 .tp-404-search { grid-template-columns:1fr; }
    .tp-redesign-404 .tp-404-search button { min-height:48px; }
}


/* =========================================================
   Version 1.28.1 – feinere Typografie für Beitragskarten
   Große Editorial-Titel bleiben DM Serif, kleine Karten nutzen
   wieder die leichtere systembasierte Serifenschrift.
   ========================================================= */
.tp-redesign-home .tp-article-card h3 {
    font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Palatino,Georgia,serif;
    font-weight:400;
    line-height:1.13;
    letter-spacing:-.018em;
}
.tp-redesign-home .tp-article-excerpt {
    font-size:13.5px;
    line-height:1.52;
    color:#6f5d61;
}
@media (min-width:768px) and (max-width:1280px) {
    .tp-redesign-home .tp-article-excerpt { font-size:13px; }
}


/* v1.31: Kategorien im Artikelkopf */
.tp-article-meta .tp-article-categories{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--tpa-dark);}
.tp-article-meta .tp-article-categories a{color:inherit;text-decoration:none;}
.tp-article-meta .tp-article-categories a:hover,.tp-article-meta .tp-article-categories a:focus{text-decoration:underline;text-underline-offset:3px;}
.tp-article-meta .tp-article-categories i{font-style:normal;color:#bca8ad;font-weight:400;}

/* v1.31: eigener datenschutzfreundlicher YouTube Player */
.tp-article-prose .tp-youtube,.tp-youtube{margin:30px 0 34px;max-width:100%;}
.tp-youtube-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#f1e7e2,#d9c9cd);border-radius:2px;box-shadow:0 12px 34px rgba(101,76,82,.09);}
.tp-youtube-media>img{width:100%;height:100%;object-fit:cover;display:block;}
.tp-youtube-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,26,31,.04),rgba(44,26,31,.26));pointer-events:none;}
.tp-youtube-play{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:0;background:transparent;color:#fff;cursor:pointer;font-family:"TP Inter",Inter,ui-sans-serif,sans-serif;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.35);}
.tp-youtube-play-icon{display:block;width:68px;height:68px;color:#654c52;filter:drop-shadow(0 6px 16px rgba(40,22,27,.22));transition:transform .2s ease,color .2s ease;}
.tp-youtube-play-icon svg{display:block;width:100%;height:100%;}
.tp-youtube-play:hover .tp-youtube-play-icon,.tp-youtube-play:focus-visible .tp-youtube-play-icon{transform:scale(1.06);color:#725b62;}
.tp-youtube-play:focus-visible{outline:3px solid #fff;outline-offset:-7px;}
.tp-youtube-privacy{margin:9px 2px 0!important;color:#9a8389!important;font-size:10.5px!important;line-height:1.45!important;text-align:center;}
.tp-youtube-frame{width:100%;height:100%;border:0;display:block;background:#000;}
.tp-youtube.is-loaded .tp-youtube-media{background:#000;}
@media (max-width:767px){.tp-youtube{margin:24px 0 28px}.tp-youtube-play-icon{width:58px;height:58px}.tp-youtube-play{font-size:10.5px}.tp-youtube-privacy{font-size:9.5px!important;padding:0 5px}}


/* =========================================================
   Version 1.31.1 – kleine Artikelkorrekturen
   ========================================================= */
.tp-article-meta .tp-guest-label{background:#fff;border-color:rgba(101,76,82,.20);}

/* Gutenberg legt bei YouTube-Blöcken selbst ein 16:9-Pseudo-Element an.
   Unser Player hat bereits ein eigenes aspect-ratio, sonst entsteht ein leerer Doppelraum. */
.tp-article-prose .wp-block-embed-youtube{margin:30px 0 34px!important;}
.tp-article-prose .wp-block-embed-youtube .wp-block-embed__wrapper{position:static!important;min-height:0!important;height:auto!important;padding:0!important;}
.tp-article-prose .wp-block-embed-youtube .wp-block-embed__wrapper::before,
.tp-article-prose .wp-block-embed-youtube.wp-has-aspect-ratio .wp-block-embed__wrapper::before{content:none!important;display:none!important;padding-top:0!important;}
.tp-article-prose .wp-block-embed-youtube .tp-youtube{margin:0!important;}
.tp-article-prose .wp-block-embed-youtube iframe{position:static!important;width:100%!important;height:auto!important;aspect-ratio:16/9;}
@media (max-width:767px){.tp-article-prose .wp-block-embed-youtube{margin:24px 0 28px!important;}}

/* =========================================================
   Kooperationen v1.35.0
   Editoriale Referenzseite mit abwechselnd creme/weiß Bereichen
   ========================================================= */
.tp-page-coop .tp-coop-showcase {
    --tp-coop-white:#fffefd;
    --tp-coop-soft:#F1E7E2;
    --tp-coop-dark:#654C52;
    --tp-coop-rose:#B2979D;
    color:var(--tp-coop-dark);
    background:var(--tp-coop-white);
}
.tp-page-coop .tp-coop-section { position:relative; padding:70px 0; overflow:hidden; }
.tp-page-coop .tp-coop-white { background:var(--tp-coop-white); }
.tp-page-coop .tp-coop-soft { background:var(--tp-coop-soft); }
.tp-page-coop .tp-coop-section .tp-eyebrow { margin:0 0 10px; color:#9a7f86; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
.tp-page-coop .tp-coop-section h1,
.tp-page-coop .tp-coop-section h2,
.tp-page-coop .tp-coop-section h3 { color:var(--tp-coop-dark); }
.tp-page-coop .tp-coop-section h1,
.tp-page-coop .tp-coop-section h2 { font-family:"TP DM Serif Display",Georgia,serif; font-weight:400; }
.tp-page-coop .tp-coop-section-heading { width:min(100%,760px); margin:0 auto 34px; text-align:center; }
.tp-page-coop .tp-coop-section-heading.is-left { margin-left:0; text-align:left; }
.tp-page-coop .tp-coop-section-heading h2 { margin:0; font-size:clamp(37px,4vw,54px); line-height:1.02; }
.tp-page-coop .tp-coop-section-heading > p:last-child { margin:13px 0 0; color:#79666b; font-size:15px; line-height:1.65; }

/* Hero */
.tp-page-coop .tp-coop-hero { padding:0; }
.tp-page-coop .tp-coop-hero-grid { display:grid; grid-template-columns:minmax(0,46%) minmax(0,54%); width:100%; max-width:none; min-height:540px; margin:0; padding-inline:0; }
.tp-page-coop .tp-coop-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:62px clamp(36px,3.8vw,58px) 62px max(52px,calc((100vw - 1500px)/2 + 52px)); }
.tp-page-coop .tp-coop-hero-copy h1 { max-width:600px; margin:0; font-size:clamp(48px,3.8vw,62px); line-height:1; text-wrap:balance; }
.tp-page-coop .tp-coop-hero-copy > p:not(.tp-eyebrow) { max-width:540px; margin:24px 0 30px; color:#6e5b60; font-size:16px; line-height:1.72; }
.tp-page-coop .tp-coop-hero-copy .tp-button { align-self:flex-start; }
.tp-page-coop .tp-coop-hero-visual { position:relative; min-height:540px; overflow:hidden; background:linear-gradient(145deg,#ddc9c1,#b99da4); }
.tp-page-coop .tp-coop-hero-visual img { width:100%; height:100%; object-fit:cover; object-position:center; }
.tp-page-coop .tp-coop-hero-visual::after { content:""; position:absolute; inset:auto 0 0; height:42%; background:linear-gradient(to top,rgba(47,31,35,.22),transparent); pointer-events:none; }
.tp-page-coop .tp-coop-script-note { position:absolute; z-index:2; right:8%; top:10%; max-width:220px; transform:rotate(-4deg); color:#fff; font-family:"Bradley Hand","Segoe Print","Comic Sans MS",cursive; font-size:32px; line-height:1.08; text-shadow:0 2px 10px rgba(52,37,40,.18); }
.tp-page-coop .tp-coop-hero-placeholder { display:flex; flex-direction:column; justify-content:center; width:100%; height:100%; padding:60px; color:#fff; }
.tp-page-coop .tp-coop-hero-placeholder span { margin-bottom:12px; font-size:12px; font-weight:700; letter-spacing:.23em; text-transform:uppercase; }
.tp-page-coop .tp-coop-hero-placeholder strong { font-family:"TP DM Serif Display",Georgia,serif; font-size:clamp(42px,5vw,68px); font-weight:400; line-height:1; }

/* Reichweite */
.tp-page-coop .tp-coop-stats-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.tp-page-coop .tp-coop-stat-card { min-width:0; padding:26px 17px 24px; background:rgba(255,254,253,.82); border:1px solid rgba(101,76,82,.06); text-align:center; }
.tp-page-coop .tp-coop-stat-icon { display:inline-flex; width:30px; height:30px; margin-bottom:13px; color:var(--tp-coop-dark); }
.tp-page-coop .tp-coop-stat-icon svg { width:100%; height:100%; }
.tp-page-coop .tp-coop-stat-card h3 { margin:0 0 11px; font-size:14px; font-weight:700; }
.tp-page-coop .tp-coop-stat-card strong { display:block; margin-bottom:5px; font-size:14px; line-height:1.35; }
.tp-page-coop .tp-coop-stat-card > span:last-child { display:block; color:#816d72; font-size:11px; line-height:1.45; }

/* Früher CTA */
.tp-page-coop .tp-coop-early-cta { padding-block:58px; }
.tp-page-coop .tp-coop-early-cta::after { content:""; position:absolute; width:320px; height:320px; right:-110px; bottom:-160px; border-radius:50%; background:radial-gradient(circle,rgba(241,231,226,.9),rgba(241,231,226,0) 70%); }
.tp-page-coop .tp-coop-early-cta-inner { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.72fr); gap:70px; align-items:center; }
.tp-page-coop .tp-coop-early-cta h2 { max-width:650px; margin:0; font-size:clamp(38px,4vw,56px); line-height:1.02; }
.tp-page-coop .tp-coop-early-cta-inner > div:last-child > p { margin:0 0 22px; color:#756267; line-height:1.68; }

/* Zielgruppe */
.tp-page-coop .tp-coop-target-layout { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.45fr); gap:58px; align-items:stretch; }
.tp-page-coop .tp-coop-target-intro { display:flex; flex-direction:column; justify-content:center; }
.tp-page-coop .tp-coop-target-intro h2 { margin:0; font-size:clamp(39px,4vw,56px); line-height:1.02; }
.tp-page-coop .tp-coop-target-intro > p:last-child { margin:18px 0 0; color:#756267; line-height:1.72; }
.tp-page-coop .tp-coop-target-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tp-page-coop .tp-coop-target-card { padding:27px 25px; background:rgba(255,254,253,.84); border:1px solid rgba(101,76,82,.06); }
.tp-page-coop .tp-coop-line-icon { display:inline-flex; width:34px; height:34px; margin-bottom:15px; color:#745a61; }
.tp-page-coop .tp-coop-line-icon svg { width:100%; height:100%; }
.tp-page-coop .tp-coop-line-icon.is-large { width:39px; height:39px; }
.tp-page-coop .tp-coop-target-card h3 { margin:0 0 8px; font-family:"TP DM Serif Display",Georgia,serif; font-size:23px; font-weight:400; }
.tp-page-coop .tp-coop-target-card p { margin:0; color:#7b686d; font-size:13px; line-height:1.58; }

/* Slider Grundgerüst */
.tp-page-coop .tp-coop-slider { position:relative; padding:0 46px; }
.tp-page-coop .tp-coop-slider-viewport { overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; }
.tp-page-coop .tp-coop-slider-viewport::-webkit-scrollbar { display:none; }
.tp-page-coop .tp-coop-slider-btn { position:absolute; z-index:4; top:50%; width:36px; height:52px; border:1px solid rgba(101,76,82,.11); border-radius:18px; background:#fff; color:var(--tp-coop-dark); font-size:30px; line-height:1; cursor:pointer; transform:translateY(-50%); box-shadow:0 8px 24px rgba(101,76,82,.07); transition:opacity .18s ease,transform .18s ease,background .18s ease; }
.tp-page-coop .tp-coop-slider-btn:hover:not(:disabled) { background:#f7f0ed; transform:translateY(-50%) scale(1.03); }
.tp-page-coop .tp-coop-slider-btn:disabled { opacity:.22; cursor:default; }
.tp-page-coop .tp-coop-slider-btn.is-prev { left:0; }
.tp-page-coop .tp-coop-slider-btn.is-next { right:0; }

/* Partner Logos */
.tp-page-coop .tp-coop-logo-track { display:flex; gap:14px; width:max-content; padding:4px 1px 7px; }
.tp-page-coop .tp-coop-logo-card { display:grid; place-items:center; flex:0 0 180px; height:112px; padding:18px; background:#fff; border:1px solid rgba(101,76,82,.07); scroll-snap-align:start; }
.tp-page-coop .tp-coop-logo-card img { display:block; max-width:100%; max-height:72px; width:auto; height:auto; object-fit:contain; }

/* Kooperationsmöglichkeiten */
.tp-page-coop .tp-coop-opportunities-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:13px; }
.tp-page-coop .tp-coop-opportunity-card { min-width:0; padding:31px 22px 28px; background:rgba(255,254,253,.88); border:1px solid rgba(101,76,82,.06); text-align:center; }
.tp-page-coop .tp-coop-opportunity-card h3 { margin:0 0 10px; font-family:"TP DM Serif Display",Georgia,serif; font-size:23px; font-weight:400; line-height:1.08; }
.tp-page-coop .tp-coop-opportunity-card p { margin:0; color:#7d696f; font-size:12.5px; line-height:1.58; }

/* Projekt Slider */
.tp-page-coop .tp-coop-project-track { display:flex; gap:18px; width:max-content; padding:3px 2px 8px; }
.tp-page-coop .tp-coop-project-card { flex:0 0 clamp(260px,27vw,350px); background:#fff; border:1px solid rgba(101,76,82,.08); scroll-snap-align:start; box-shadow:0 10px 28px rgba(101,76,82,.045); }
.tp-page-coop .tp-coop-project-image { display:block; aspect-ratio:1.45/1; overflow:hidden; background:#eee3df; }
.tp-page-coop .tp-coop-project-image img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.tp-page-coop .tp-coop-project-card:hover .tp-coop-project-image img { transform:scale(1.025); }
.tp-page-coop .tp-coop-project-copy { padding:18px 20px 21px; }
.tp-page-coop .tp-coop-project-copy > p { margin:0 0 7px; color:#9a7f86; font-size:9.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.tp-page-coop .tp-coop-project-copy h3 { margin:0; font-family:"TP DM Serif Display",Georgia,serif; font-size:25px; font-weight:400; line-height:1.12; }
.tp-page-coop .tp-coop-project-copy h3 a { color:var(--tp-coop-dark); text-decoration:none; }
.tp-page-coop .tp-coop-project-link { display:inline-flex; gap:7px; margin-top:14px; color:#81676e; font-size:11px; font-weight:700; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.tp-page-coop .tp-coop-project-link:hover { color:var(--tp-coop-dark); }

/* Abschluss */
.tp-page-coop .tp-coop-final-cta { margin-bottom:38px; text-align:center; }
.tp-page-coop .tp-coop-final-cta-inner { width:min(760px,calc(100% - 48px)); }
.tp-page-coop .tp-coop-final-cta h2 { margin:0; font-size:clamp(38px,4vw,56px); line-height:1.02; }
.tp-page-coop .tp-coop-final-cta p:not(.tp-eyebrow) { margin:15px 0 24px; color:#756267; }

@media (max-width:1180px) {
    .tp-page-coop .tp-coop-hero-copy { padding-inline:42px; }
    .tp-page-coop .tp-coop-hero-copy h1 { font-size:56px; }
    .tp-page-coop .tp-coop-stats-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .tp-page-coop .tp-coop-opportunities-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:1080px) {
    .tp-page-coop .tp-coop-hero-grid { grid-template-columns:1fr; min-height:0; }
    .tp-page-coop .tp-coop-hero-copy { padding:58px 40px 50px; }
    .tp-page-coop .tp-coop-hero-copy h1 { max-width:700px; font-size:clamp(52px,7vw,68px); }
    .tp-page-coop .tp-coop-hero-copy > p:not(.tp-eyebrow) { max-width:650px; }
    .tp-page-coop .tp-coop-hero-visual { min-height:470px; }
}

@media (max-width:900px) {
    .tp-page-coop .tp-coop-section { padding-block:58px; }
    .tp-page-coop .tp-coop-hero-copy { padding:54px 28px 46px; }
    .tp-page-coop .tp-coop-early-cta-inner,
    .tp-page-coop .tp-coop-target-layout { grid-template-columns:1fr; gap:30px; }
    .tp-page-coop .tp-coop-target-intro { max-width:650px; }
}

@media (max-width:680px) {
    .tp-page-coop .tp-coop-section { padding-block:44px; }
    .tp-page-coop .tp-coop-hero-copy { padding:44px 22px 38px; }
    .tp-page-coop .tp-coop-hero-copy h1 { font-size:48px; }
    .tp-page-coop .tp-coop-hero-copy > p:not(.tp-eyebrow) { margin-top:19px; font-size:15px; }
    .tp-page-coop .tp-coop-hero-visual { min-height:390px; }
    .tp-page-coop .tp-coop-script-note { right:6%; top:8%; max-width:155px; font-size:24px; }
    .tp-page-coop .tp-coop-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
    .tp-page-coop .tp-coop-stat-card { padding:22px 13px; }
    .tp-page-coop .tp-coop-target-grid { grid-template-columns:1fr; }
    .tp-page-coop .tp-coop-opportunities-grid { grid-template-columns:1fr 1fr; gap:9px; }
    .tp-page-coop .tp-coop-opportunity-card { padding:25px 16px 23px; }
    .tp-page-coop .tp-coop-slider { padding-inline:34px; }
    .tp-page-coop .tp-coop-slider-btn { width:29px; height:46px; font-size:26px; border-radius:15px; }
    .tp-page-coop .tp-coop-logo-card { flex-basis:145px; height:95px; padding:14px; }
    .tp-page-coop .tp-coop-project-card { flex-basis:min(78vw,310px); }
    .tp-page-coop .tp-coop-final-cta { margin-bottom:28px; }
}

@media (max-width:430px) {
    .tp-page-coop .tp-coop-opportunities-grid { grid-template-columns:1fr; }
    .tp-page-coop .tp-coop-section-heading h2,
    .tp-page-coop .tp-coop-target-intro h2,
    .tp-page-coop .tp-coop-early-cta h2,
    .tp-page-coop .tp-coop-final-cta h2 { font-size:36px; }
}


/* =========================================================
   Über mich v1.35.0
   Magazinartig, persönlich und direkt an Koop-Zahlen gekoppelt
   ========================================================= */
.tp-page-about .tp-about-showcase {
    --tp-about-dark:#654C52;
    --tp-about-soft:#F1E7E2;
    --tp-about-rose:#B2979D;
    --tp-about-paper:#fffefd;
    color:var(--tp-about-dark);
    background:var(--tp-about-paper);
}
.tp-page-about .tp-about-showcase * { box-sizing:border-box; }
.tp-page-about .tp-about-showcase .tp-eyebrow { margin:0 0 11px; color:#9a7f86; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
.tp-page-about .tp-about-showcase h1,
.tp-page-about .tp-about-showcase h2,
.tp-page-about .tp-about-showcase h3 { color:var(--tp-about-dark); }
.tp-page-about .tp-about-showcase h1,
.tp-page-about .tp-about-showcase h2 { font-family:"TP DM Serif Display",Georgia,serif; font-weight:400; }

/* Hero */
.tp-page-about .tp-about-hero { display:grid; grid-template-columns:minmax(340px,41%) minmax(0,59%); min-height:560px; background:linear-gradient(135deg,#fffefd 0%,#fbf4f1 54%,#F1E7E2 100%); overflow:hidden; }
.tp-page-about .tp-about-hero-copy { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; padding:68px clamp(36px,4vw,66px) 64px max(52px,calc((100vw - 1500px)/2 + 52px)); }
.tp-page-about .tp-about-hero-copy h1 { max-width:600px; margin:0; font-size:clamp(52px,4.7vw,78px); line-height:.94; }
.tp-page-about .tp-about-hero-text { max-width:560px; margin:24px 0 30px; color:#6f5c61; font-size:16px; line-height:1.72; }
.tp-page-about .tp-about-hero-copy .tp-button { align-self:flex-start; }
.tp-page-about .tp-about-script-note { margin-top:36px; max-width:290px; color:#876d74; font-family:"Bradley Hand","Segoe Print","Comic Sans MS",cursive; font-size:28px; line-height:1.08; transform:rotate(-3deg); }
.tp-page-about .tp-about-hero-image { position:relative; min-height:560px; background:linear-gradient(145deg,#decac3,#b99da4); overflow:hidden; }
.tp-page-about .tp-about-hero-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.tp-page-about .tp-about-hero-image::after { content:""; position:absolute; inset:auto 0 0; height:30%; background:linear-gradient(to top,rgba(61,42,47,.14),transparent); pointer-events:none; }
.tp-page-about .tp-about-quote-card { position:absolute; z-index:2; right:6%; top:11%; width:min(250px,34%); padding:28px 24px; background:rgba(255,254,253,.9); color:#715a60; font-family:"TP DM Serif Display",Georgia,serif; font-size:20px; line-height:1.35; text-align:center; box-shadow:0 14px 38px rgba(68,45,51,.1); backdrop-filter:blur(4px); }

/* Allgemein */
.tp-page-about .tp-about-section { padding:72px 0; }
.tp-page-about .tp-about-heading { width:min(780px,100%); margin:0 auto 38px; text-align:center; }
.tp-page-about .tp-about-heading h2 { margin:0; font-size:clamp(40px,4vw,58px); line-height:1.02; }
.tp-page-about .tp-about-heading > p:last-child { margin:14px auto 0; color:#756267; font-size:15px; line-height:1.65; }

/* Reisephilosophie */
.tp-page-about .tp-about-philosophy { background:var(--tp-about-paper); }
.tp-page-about .tp-about-philosophy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tp-page-about .tp-about-philosophy-card { overflow:hidden; background:#fff; border:1px solid rgba(101,76,82,.07); box-shadow:0 12px 34px rgba(101,76,82,.045); }
.tp-page-about .tp-about-card-image { aspect-ratio:1.35/1; overflow:hidden; background:#eee4df; }
.tp-page-about .tp-about-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.tp-page-about .tp-about-philosophy-card:hover .tp-about-card-image img { transform:scale(1.025); }
.tp-page-about .tp-about-card-copy { padding:24px 24px 28px; }
.tp-page-about .tp-about-card-copy h3 { margin:0 0 10px; font-family:"TP DM Serif Display",Georgia,serif; font-size:27px; font-weight:400; line-height:1.08; }
.tp-page-about .tp-about-card-copy p { margin:0; color:#756267; font-size:14px; line-height:1.68; }

/* Zahlen */
.tp-page-about .tp-about-stats { background:var(--tp-about-soft); }
.tp-page-about .tp-about-stats-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin-top:8px; }
.tp-page-about .tp-about-stat { position:relative; min-width:0; padding:8px 24px 18px; text-align:center; }
.tp-page-about .tp-about-stat + .tp-about-stat::before { content:""; position:absolute; left:0; top:16px; bottom:18px; width:1px; background:rgba(101,76,82,.16); }
.tp-page-about .tp-about-stat-icon { display:inline-flex; width:32px; height:32px; margin-bottom:12px; color:#725961; }
.tp-page-about .tp-about-stat-icon svg { width:100%; height:100%; }
.tp-page-about .tp-about-stat strong { display:block; color:var(--tp-about-dark); font-family:"TP DM Serif Display",Georgia,serif; font-size:clamp(22px,2.1vw,34px); font-weight:400; line-height:1.05; }
.tp-page-about .tp-about-stat > span:not(.tp-about-stat-icon) { display:block; margin-top:8px; color:#735f64; font-size:12px; font-weight:700; }
.tp-page-about .tp-about-stat small { display:block; margin-top:5px; color:#9a8389; font-size:10px; line-height:1.35; }
.tp-page-about .tp-about-stats-button { margin-top:28px; text-align:center; }

/* Zusammenarbeit */
.tp-page-about .tp-about-collab { background:linear-gradient(135deg,#ead8d2 0%,#F1E7E2 48%,#dcc5bf 100%); }
.tp-page-about .tp-about-collab-grid { display:grid; grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr); gap:64px; align-items:center; }
.tp-page-about .tp-about-collab-copy h2 { margin:0; font-family:"TP DM Serif Display",Georgia,serif; font-size:clamp(42px,4vw,60px); font-weight:400; line-height:1.02; }
.tp-page-about .tp-about-collab-copy > p:not(.tp-eyebrow) { max-width:560px; margin:20px 0 28px; color:#725e63; line-height:1.7; }
.tp-page-about .tp-about-polaroids { position:relative; min-height:370px; }
.tp-page-about .tp-about-polaroid { position:absolute; top:50%; width:34%; aspect-ratio:.82/1; padding:8px 8px 30px; background:#fff; box-shadow:0 16px 38px rgba(64,43,49,.12); transform-origin:center; overflow:hidden; }
.tp-page-about .tp-about-polaroid img { width:100%; height:100%; object-fit:cover; }
.tp-page-about .tp-about-polaroid.is-1 { left:7%; transform:translateY(-48%) rotate(-6deg); }
.tp-page-about .tp-about-polaroid.is-2 { left:34%; z-index:2; transform:translateY(-52%) rotate(2deg); }
.tp-page-about .tp-about-polaroid.is-3 { right:4%; transform:translateY(-46%) rotate(7deg); }

@media (max-width:1100px) {
    .tp-page-about .tp-about-hero { grid-template-columns:1fr; }
    .tp-page-about .tp-about-hero-copy { padding:58px 40px 48px; }
    .tp-page-about .tp-about-hero-copy h1 { max-width:760px; }
    .tp-page-about .tp-about-hero-image { min-height:520px; }
    .tp-page-about .tp-about-philosophy-grid { grid-template-columns:1fr 1fr; }
    .tp-page-about .tp-about-philosophy-card:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; }
    .tp-page-about .tp-about-philosophy-card:last-child .tp-about-card-image { aspect-ratio:auto; min-height:280px; }
    .tp-page-about .tp-about-stats-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 0; }
    .tp-page-about .tp-about-stat:nth-child(4)::before { display:none; }
    .tp-page-about .tp-about-collab-grid { grid-template-columns:1fr; gap:34px; }
    .tp-page-about .tp-about-polaroids { min-height:430px; }
}
@media (max-width:767px) {
    .tp-page-about .tp-about-hero-copy { padding:46px 22px 40px; }
    .tp-page-about .tp-about-hero-copy h1 { font-size:50px; }
    .tp-page-about .tp-about-hero-text { margin-top:18px; font-size:15px; }
    .tp-page-about .tp-about-script-note { margin-top:26px; font-size:23px; }
    .tp-page-about .tp-about-hero-image { min-height:400px; }
    .tp-page-about .tp-about-quote-card { right:5%; top:7%; width:min(230px,62%); padding:20px; font-size:17px; }
    .tp-page-about .tp-about-section { padding:50px 0; }
    .tp-page-about .tp-about-heading { margin-bottom:28px; }
    .tp-page-about .tp-about-heading h2 { font-size:39px; }
    .tp-page-about .tp-about-philosophy-grid { grid-template-columns:1fr; gap:14px; }
    .tp-page-about .tp-about-philosophy-card:last-child { display:block; grid-column:auto; }
    .tp-page-about .tp-about-philosophy-card:last-child .tp-about-card-image { min-height:0; aspect-ratio:1.35/1; }
    .tp-page-about .tp-about-stats-grid { grid-template-columns:1fr 1fr; gap:0; }
    .tp-page-about .tp-about-stat { padding:18px 12px 22px; }
    .tp-page-about .tp-about-stat:nth-child(odd)::before { display:none; }
    .tp-page-about .tp-about-stat:nth-child(even)::before { display:block; }
    .tp-page-about .tp-about-stat strong { font-size:25px; }
    .tp-page-about .tp-about-collab-grid { gap:24px; }
    .tp-page-about .tp-about-collab-copy h2 { font-size:40px; }
    .tp-page-about .tp-about-polaroids { min-height:330px; margin-top:4px; }
    .tp-page-about .tp-about-polaroid { width:43%; padding:6px 6px 23px; }
    .tp-page-about .tp-about-polaroid.is-1 { left:0; }
    .tp-page-about .tp-about-polaroid.is-2 { left:29%; }
    .tp-page-about .tp-about-polaroid.is-3 { right:0; }
}
@media (max-width:430px) {
    .tp-page-about .tp-about-hero-copy h1 { font-size:44px; }
    .tp-page-about .tp-about-hero-image { min-height:350px; }
    .tp-page-about .tp-about-stats-grid { grid-template-columns:1fr; }
    .tp-page-about .tp-about-stat::before { display:none!important; }
    .tp-page-about .tp-about-polaroids { min-height:280px; }
}


/* ==========================================================================
   Travelprincess refinements v1.35.1
   ========================================================================== */

/* Desktop-Menü: Kooperationen und Shop optisch bewusst als eigene Abschlussgruppe. */
@media (min-width:1101px) {
    .tp-redesign-home .tp-home-menu > .tp-nav-coop {
        margin-left:6px;
        padding-left:20px;
        border-left:1px solid rgba(101,76,82,.18);
    }
    .tp-redesign-home .tp-home-menu > .tp-nav-coop > a { font-weight:700; }
    .tp-redesign-home .tp-home-menu > .tp-nav-shop {
        margin-left:8px;
        padding-left:20px;
        border-left:1px solid rgba(101,76,82,.18);
    }
}

/* Über mich: wieder konsequent weiß / beige / weiß / beige. */
.tp-page-about .tp-about-hero { background:var(--tp-about-paper); }
.tp-page-about .tp-about-philosophy { background:var(--tp-about-soft); }
.tp-page-about .tp-about-philosophy-card { background:#fffefd; }
.tp-page-about .tp-about-stats { background:var(--tp-about-paper); }
.tp-page-about .tp-about-collab { background:var(--tp-about-soft); }

/* Sidebar insgesamt kleiner und ruhiger. */
.tp-redesign-article .tp-article-sidebar-inner { gap:12px!important; }
.tp-redesign-article .tp-sidebar-widgets { gap:12px; }
.tp-redesign-article .tp-sidebar-widgets .widget,
.tp-redesign-article .tp-coffee-card,
.tp-redesign-article .tp-sidebar-planning {
    padding:14px;
    border:1px solid rgba(101,76,82,.07);
}
/* Farbfolge bewusst wie auf den Seiten: Kaffeekasse weiß, Reiseplanung beige, dann Widgets weiß / beige. */
.tp-redesign-article .tp-coffee-card { background:#fffefd; }
.tp-redesign-article .tp-sidebar-planning { background:#f8f2ef!important; }
.tp-redesign-article .tp-sidebar-widgets .widget { background:#fffefd; }
.tp-redesign-article .tp-sidebar-widgets .widget:nth-child(even) { background:#f8f2ef; }
.tp-redesign-article .tp-sidebar-widgets .widget-title,
.tp-redesign-article .tp-sidebar-widgets h2,
.tp-redesign-article .tp-sidebar-widgets h3 { margin-bottom:8px; font-size:18px; line-height:1.12; }
.tp-redesign-article .tp-sidebar-widgets p,
.tp-redesign-article .tp-sidebar-widgets li { font-size:12.5px; line-height:1.45; }
.tp-redesign-article .tp-sidebar-widgets .widget_media_image img,
.tp-redesign-article .tp-sidebar-widgets .wp-block-image img {
    display:block;
    width:auto;
    max-width:100%;
    max-height:220px;
    margin-inline:auto;
    object-fit:contain;
}

/* Brevo in der Sidebar bewusst kompakt, ohne die Startseiten-Anmeldung zu verändern. */
.tp-redesign-article .tp-sidebar-widgets .sib-form { padding:0!important; background:transparent!important; }
.tp-redesign-article .tp-sidebar-widgets #sib-container { max-width:none!important; padding:0!important; border:0!important; background:transparent!important; }
.tp-redesign-article .tp-sidebar-widgets .sib-form-block { padding:4px 0!important; }
.tp-redesign-article .tp-sidebar-widgets .sib-form-block p,
.tp-redesign-article .tp-sidebar-widgets .sib-form-block label { font-size:11.5px!important; line-height:1.35!important; }
.tp-redesign-article .tp-sidebar-widgets .entry__field,
.tp-redesign-article .tp-sidebar-widgets input[type=email],
.tp-redesign-article .tp-sidebar-widgets input[type=text] { min-height:36px!important; }
.tp-redesign-article .tp-sidebar-widgets .sib-form-block__button,
.tp-redesign-article .tp-sidebar-widgets input[type=submit],
.tp-redesign-article .tp-sidebar-widgets button { min-height:36px!important; font-size:11px!important; }

/* Fallback, falls ein altes Widget seine URL nicht in der gespeicherten Widget-Instanz ablegt. */
@supports selector(.widget:has(a)) {
    .tp-redesign-article .tp-sidebar-widgets .widget:has(a[href*="instagram.com"]),
    .tp-redesign-article .tp-sidebar-widgets .widget:has([class*="instagram" i]),
    .tp-redesign-article .tp-sidebar-widgets .widget:has([id*="instagram" i]),
    .tp-redesign-article .tp-sidebar-widgets .widget:has(script[src*="instagram"]),
    .tp-redesign-article .tp-sidebar-widgets .widget:has(iframe[src*="instagram"]),
    .tp-redesign-article .tp-sidebar-widgets .widget:has(a[href*="booking.com"] img) { display:none!important; }
}
.tp-redesign-article .tp-sidebar-widgets .widget[class*="instagram" i],
.tp-redesign-article .tp-sidebar-widgets .widget[id*="instagram" i] { display:none!important; }

/* Native kompakte Reiseplanungsbox statt großem Booking-Banner. */
.tp-sidebar-planning-head .tp-eyebrow { margin:0 0 4px; font-size:9px; }
.tp-sidebar-planning-head h3 { margin:0 0 12px; font-family:"TP DM Serif Display",Georgia,serif; font-size:20px; font-weight:400; line-height:1.08; }
.tp-sidebar-planning-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.tp-sidebar-planning-grid a {
    min-height:72px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:8px 5px;
    border:1px solid rgba(101,76,82,.08);
    background:#fffefd;
    color:#765f65;
    text-decoration:none;
    font-size:11px;
    font-weight:650;
    text-align:center;
    transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
.tp-sidebar-planning-grid a:last-child:nth-child(odd) { grid-column:1/-1; min-height:62px; flex-direction:row; }
.tp-sidebar-planning-grid a:hover { transform:translateY(-1px); border-color:rgba(101,76,82,.18); background:#fff; }
.tp-sidebar-planning-icon { width:30px; height:30px; display:grid; place-items:center; color:#8f7179; }
.tp-sidebar-planning-icon img,
.tp-sidebar-planning-icon svg { display:block; width:100%; height:100%; object-fit:contain; }
.tp-sidebar-planning small { display:block; margin-top:8px; color:#a08c91; font-size:8.5px; line-height:1.35; text-align:center; }

@media (max-width:1100px) {
    .tp-redesign-home .tp-home-menu > .tp-nav-coop { margin-left:0; padding-left:0; border-left:0; }
}


/* ==========================================================================
   Travelprincess Newsletter v1.36.4
   ========================================================================== */
.tp-page-newsletter .tp-newsletter-page {
    --tp-newsletter-ink:#654C52;
    --tp-newsletter-rose:#B2979D;
    --tp-newsletter-soft:#F1E7E2;
    --tp-newsletter-paper:#fffefd;
    overflow:hidden;
    color:var(--tp-newsletter-ink);
    background:var(--tp-newsletter-paper);
}
.tp-page-newsletter .tp-newsletter-hero {
    background:linear-gradient(90deg,#f8f3f0 0%,#f8f3f0 52%,#f1e7e2 52%,#f1e7e2 100%);
}
.tp-page-newsletter .tp-newsletter-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    min-height:520px;
    align-items:stretch;
}
.tp-page-newsletter .tp-newsletter-hero-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:72px 64px 72px 12px;
}
.tp-page-newsletter .tp-newsletter-hero .tp-eyebrow {
    margin:0 0 16px;
    color:#9b7f86;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
}
.tp-page-newsletter .tp-newsletter-hero h1 {
    margin:0;
    color:#4e363d;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-size:clamp(48px,5vw,70px);
    font-weight:400;
    line-height:.98;
    letter-spacing:-.03em;
}
.tp-page-newsletter .tp-newsletter-hero-copy > p:last-child {
    max-width:520px;
    margin:24px 0 0;
    color:#654C52;
    font-size:17px;
    line-height:1.6;
}
.tp-page-newsletter .tp-newsletter-hero-image {
    position:relative;
    min-height:520px;
    overflow:hidden;
}
.tp-page-newsletter .tp-newsletter-hero-image::before {
    content:"";
    position:absolute;
    z-index:1;
    inset:0 auto 0 0;
    width:26%;
    background:linear-gradient(90deg,#f8f3f0 0%,rgba(248,243,240,.7) 35%,rgba(248,243,240,0) 100%);
    pointer-events:none;
}
.tp-page-newsletter .tp-newsletter-hero-image img {
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
}
.tp-page-newsletter .tp-newsletter-signup-section {
    padding:0 0 50px;
    background:var(--tp-newsletter-soft);
}
.tp-page-newsletter .tp-newsletter-signup-inner {
    position:relative;
    max-width:1040px;
    padding-top:42px;
}
.tp-page-newsletter .tp-newsletter-welcome-note {
    position:absolute;
    left:18px;
    top:116px;
    width:200px;
    padding:22px 18px;
    color:#876c73;
    background:rgba(255,255,255,.35);
    font-family:"Segoe Script","Bradley Hand","Brush Script MT",cursive;
    font-size:25px;
    line-height:1.25;
    text-align:center;
    transform:rotate(-4deg);
}
.tp-page-newsletter .tp-newsletter-signup-card {
    width:min(100%,720px);
    margin:0 18px 0 auto;
    padding:34px 42px 26px;
    border:1px solid rgba(101,76,82,.12);
    border-radius:18px;
    background:#fffefd;
    box-shadow:0 12px 34px rgba(73,47,55,.05);
}
.tp-page-newsletter .tp-newsletter-form-intro h2 {
    margin:0;
    color:#4e363d;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-size:34px;
    font-weight:400;
    line-height:1.08;
}
.tp-page-newsletter .tp-newsletter-form-intro p {
    max-width:560px;
    margin:10px 0 18px;
    color:#65555a;
    font-size:14px;
    line-height:1.55;
}
.tp-page-newsletter .tp-newsletter-original-content {
    width:100%;
    transition:opacity .18s ease;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating {
    min-height:220px;
    opacity:0;
    overflow:hidden;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-form-ready {
    min-height:0;
    opacity:1;
}
.tp-page-newsletter .tp-newsletter-legacy-hidden { display:none!important; }
.tp-page-newsletter .tp-newsletter-original-content .sib-form,
.tp-page-newsletter .tp-newsletter-original-content .sib-form-container,
.tp-page-newsletter .tp-newsletter-original-content #sib-container,
.tp-page-newsletter .tp-newsletter-original-content #sib-form {
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block {
    padding:5px 0!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__label,
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block p,
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block label {
    color:#654C52!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:13px!important;
    line-height:1.45!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__label {
    margin-bottom:7px!important;
    font-weight:600!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__field {
    min-height:52px!important;
    border:1px solid #cfbec3!important;
    border-radius:6px!important;
    background:#fff!important;
    box-shadow:none!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__field:focus-within {
    border-color:#654C52!important;
    box-shadow:0 0 0 2px rgba(101,76,82,.08)!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__field input,
.tp-page-newsletter .tp-newsletter-original-content input[type="email"],
.tp-page-newsletter .tp-newsletter-original-content input[type="text"] {
    display:block!important;
    width:100%!important;
    min-height:50px!important;
    padding:0 14px!important;
    border:1px solid #cfbec3!important;
    border-radius:6px!important;
    outline:0!important;
    color:#654C52!important;
    background:#fff!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:14px!important;
    box-shadow:none!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__field input {
    border:0!important;
    border-radius:5px!important;
}
.tp-page-newsletter .tp-newsletter-original-content input::placeholder {
    color:#9b858b!important;
    opacity:1!important;
}
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block__button,
.tp-page-newsletter .tp-newsletter-original-content button[type="submit"] {
    width:100%!important;
    min-height:50px!important;
    margin-top:6px!important;
    padding:12px 22px!important;
    border:1px solid #8f6d76!important;
    border-radius:5px!important;
    background:#8f6d76!important;
    color:#fff!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:14px!important;
    font-weight:600!important;
    letter-spacing:0!important;
    text-transform:none!important;
    box-shadow:none!important;
    transition:background .18s ease!important;
}
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block__button:hover,
.tp-page-newsletter .tp-newsletter-original-content button[type="submit"]:hover {
    background:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__choice,
.tp-page-newsletter .tp-newsletter-original-content .sib-checkbox-group {
    color:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-original-content input[type="checkbox"] {
    accent-color:#8f6d76;
}
.tp-page-newsletter .tp-newsletter-original-content .sib-checkbox-group a,
.tp-page-newsletter .tp-newsletter-original-content .sib-form-block a {
    color:#654C52!important;
    text-decoration:underline!important;
    text-underline-offset:2px;
}
.tp-page-newsletter .tp-newsletter-original-content .entry__error,
.tp-page-newsletter .tp-newsletter-original-content .entry__specification {
    color:#8f6d76!important;
    font-size:11px!important;
}
.tp-page-newsletter .tp-newsletter-form-note {
    max-width:520px;
    margin:12px auto 0;
    color:#8f7d82;
    font-size:10.5px;
    line-height:1.45;
    text-align:center;
}
.tp-page-newsletter .tp-newsletter-benefits-panel {
    width:100%;
    margin:0;
    padding:44px 0 30px;
    background:#fffefd;
    color:#654C52;
}
.tp-page-newsletter .tp-newsletter-benefits-shell { max-width:1040px; }
.tp-page-newsletter .tp-newsletter-benefits-panel h2 {
    margin:0 0 28px;
    color:#8f6d76;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-size:36px;
    font-weight:400;
    line-height:1.08;
    text-align:center;
}
.tp-page-newsletter .tp-newsletter-benefits {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:28px;
}
.tp-page-newsletter .tp-newsletter-benefit {
    min-width:0;
    padding:0 10px;
    text-align:center;
}
.tp-page-newsletter .tp-newsletter-benefit-icon {
    width:92px;
    height:92px;
    display:grid;
    place-items:center;
    margin:0 auto 13px;
    border:0;
    border-radius:50%;
    background:#f3e8e3;
    color:#76565f;
}
.tp-page-newsletter .tp-newsletter-benefit-icon svg {
    width:43px;
    height:43px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.55;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.tp-page-newsletter .tp-newsletter-benefit h3 {
    margin:0 0 6px;
    color:#4e363d;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-size:20px;
    font-weight:400;
    line-height:1.2;
}
.tp-page-newsletter .tp-newsletter-benefit p {
    max-width:190px;
    margin:0 auto;
    color:#65555a;
    font-size:12.5px;
    line-height:1.45;
}
.tp-page-newsletter .tp-newsletter-gallery-section {
    padding:26px 0 58px;
    background:#fffefd;
}
.tp-page-newsletter .tp-newsletter-gallery-shell { max-width:1040px; }
.tp-page-newsletter .tp-newsletter-gallery {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}
.tp-page-newsletter .tp-newsletter-gallery-item {
    margin:0;
    overflow:hidden;
    aspect-ratio:1 / 1;
    background:#eee5e1;
}
.tp-page-newsletter .tp-newsletter-gallery-item img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.tp-page-newsletter .tp-newsletter-gallery-note {
    margin:28px 0 0;
    color:#987b83;
    font-family:"Segoe Script","Bradley Hand","Brush Script MT",cursive;
    font-size:27px;
    line-height:1.2;
    text-align:center;
}
@media (max-width:900px) {
    .tp-page-newsletter .tp-newsletter-hero-grid { min-height:460px; }
    .tp-page-newsletter .tp-newsletter-hero-copy { padding:56px 38px 56px 0; }
    .tp-page-newsletter .tp-newsletter-hero-image, .tp-page-newsletter .tp-newsletter-hero-image img { min-height:460px; }
    .tp-page-newsletter .tp-newsletter-welcome-note { display:none; }
    .tp-page-newsletter .tp-newsletter-signup-card { margin:0 auto; }
    .tp-page-newsletter .tp-newsletter-benefits { gap:18px; }
    .tp-page-newsletter .tp-newsletter-benefit-icon { width:78px; height:78px; }
}
@media (max-width:767px) {
    .tp-page-newsletter .tp-newsletter-hero { background:#f8f3f0; }
    .tp-page-newsletter .tp-newsletter-hero-grid { grid-template-columns:1fr; min-height:0; }
    .tp-page-newsletter .tp-newsletter-hero-copy { padding:42px 0 32px; text-align:center; }
    .tp-page-newsletter .tp-newsletter-hero h1 { font-size:46px; }
    .tp-page-newsletter .tp-newsletter-hero-copy > p:last-child { margin:18px auto 0; font-size:15px; }
    .tp-page-newsletter .tp-newsletter-hero-image { min-height:300px; }
    .tp-page-newsletter .tp-newsletter-hero-image img { min-height:300px; }
    .tp-page-newsletter .tp-newsletter-hero-image::before { inset:0 0 auto 0; width:100%; height:20%; background:linear-gradient(180deg,#f8f3f0 0%,rgba(248,243,240,0) 100%); }
    .tp-page-newsletter .tp-newsletter-signup-section { padding-bottom:38px; }
    .tp-page-newsletter .tp-newsletter-signup-inner { padding-top:26px; }
    .tp-page-newsletter .tp-newsletter-signup-card { padding:26px 20px 20px; border-radius:14px; }
    .tp-page-newsletter .tp-newsletter-form-intro h2 { font-size:30px; }
    .tp-page-newsletter .tp-newsletter-form-intro p { font-size:13px; }
    .tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating { min-height:210px; }
    .tp-page-newsletter .tp-newsletter-benefits-panel { padding:36px 0 26px; }
    .tp-page-newsletter .tp-newsletter-benefits-panel h2 { margin-bottom:24px; font-size:31px; }
    .tp-page-newsletter .tp-newsletter-benefits { grid-template-columns:1fr 1fr; gap:28px 12px; }
    .tp-page-newsletter .tp-newsletter-benefit-icon { width:72px; height:72px; }
    .tp-page-newsletter .tp-newsletter-benefit-icon svg { width:34px; height:34px; }
    .tp-page-newsletter .tp-newsletter-gallery-section { padding:22px 0 42px; }
    .tp-page-newsletter .tp-newsletter-gallery { grid-template-columns:1fr; gap:10px; }
    .tp-page-newsletter .tp-newsletter-gallery-item { aspect-ratio:4 / 3; }
    .tp-page-newsletter .tp-newsletter-gallery-note { margin-top:20px; font-size:24px; }
}
@media (max-width:430px) {
    .tp-page-newsletter .tp-newsletter-hero h1 { font-size:40px; }
    .tp-page-newsletter .tp-newsletter-signup-card { padding:22px 16px 18px; }
    .tp-page-newsletter .tp-newsletter-form-intro h2 { font-size:27px; }
    .tp-page-newsletter .tp-newsletter-benefits { gap:24px 8px; }
    .tp-page-newsletter .tp-newsletter-benefit { padding:0 4px; }
    .tp-page-newsletter .tp-newsletter-benefit h3 { font-size:18px; }
    .tp-page-newsletter .tp-newsletter-benefit p { font-size:11.5px; }
}


/* ========================================================================== 
   Version 1.36.5 – Newsletter: schwebendes Formular + schneller Ladezustand
   ========================================================================== */
.tp-page-newsletter .tp-newsletter-signup-section {
    position:relative;
    z-index:4;
    padding:0 0 42px;
    background:var(--tp-newsletter-soft);
    overflow:visible;
}
.tp-page-newsletter .tp-newsletter-signup-inner {
    position:relative;
    z-index:5;
    max-width:1040px;
    margin-top:-74px;
    padding-top:0;
}
.tp-page-newsletter .tp-newsletter-signup-card {
    width:min(100%,760px);
    margin:0 auto;
    padding:34px 42px 28px;
    border:1px solid rgba(101,76,82,.10);
    border-radius:18px;
    background:#f8f1ed;
    box-shadow:0 18px 46px rgba(73,47,55,.11);
}
.tp-page-newsletter .tp-newsletter-welcome-note {
    left:4px;
    top:112px;
    background:rgba(248,241,237,.88);
    box-shadow:0 10px 25px rgba(73,47,55,.05);
}
.tp-page-newsletter .tp-newsletter-original-content {
    background:transparent;
}
/* Der Ladezustand ist absichtlich sichtbar. So entsteht auch bei verzögertem
   Brevo oder WP-Rocket-Script kein leerer weißer Kasten mehr. */
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating {
    position:relative;
    min-height:156px;
    opacity:1;
    overflow:hidden;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating > * {
    visibility:hidden!important;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating::before {
    content:"E Mail Adresse";
    position:absolute;
    z-index:2;
    left:0;
    top:2px;
    color:#654C52;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:12px;
    font-weight:600;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating::after {
    content:"";
    position:absolute;
    z-index:1;
    inset:25px 0 auto;
    height:125px;
    border-radius:6px;
    background:
        linear-gradient(#fff,#fff) 0 0 / 100% 52px no-repeat,
        linear-gradient(90deg,#fff 0 18px,transparent 18px) 0 66px / 100% 18px no-repeat,
        linear-gradient(#8f6d76,#8f6d76) 0 92px / 100% 50px no-repeat;
    box-shadow:inset 0 0 0 1px rgba(101,76,82,.18);
    opacity:.72;
}
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-form-ready {
    min-height:0;
    opacity:1;
}
.tp-page-newsletter .tp-newsletter-form-intro p { margin-bottom:16px; }
.tp-page-newsletter .tp-newsletter-original-content .entry__field,
.tp-page-newsletter .tp-newsletter-original-content .entry__field input,
.tp-page-newsletter .tp-newsletter-original-content input[type="email"],
.tp-page-newsletter .tp-newsletter-original-content input[type="text"] {
    background:#fffefd!important;
}
@media (max-width:900px) {
    .tp-page-newsletter .tp-newsletter-signup-inner { margin-top:-54px; }
    .tp-page-newsletter .tp-newsletter-signup-card { width:min(100%,700px); }
}
@media (max-width:767px) {
    .tp-page-newsletter .tp-newsletter-signup-section { padding-bottom:34px; }
    .tp-page-newsletter .tp-newsletter-signup-inner { margin-top:-34px; padding-top:0; }
    .tp-page-newsletter .tp-newsletter-signup-card { padding:26px 20px 22px; border-radius:14px; }
    .tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-isolating { min-height:150px; }
}


/* ========================================================================== 
   Version 1.36.6: echte Hero Ueberlagerung und sofort sichtbares Brevo Formular
   ========================================================================== */
.tp-page-newsletter .tp-newsletter-signup-section {
    position:relative;
    z-index:6;
    padding:0 0 44px;
    background:var(--tp-newsletter-soft);
    overflow:visible;
}
.tp-page-newsletter .tp-newsletter-signup-inner {
    position:relative;
    z-index:7;
    max-width:1040px;
    margin-top:0;
    padding-top:0;
    transform:translateY(-112px);
    margin-bottom:-112px;
}
.tp-page-newsletter .tp-newsletter-signup-card {
    width:min(100%,760px);
    margin:0 auto;
    padding:34px 42px 28px;
    border:1px solid rgba(101,76,82,.10);
    border-radius:18px;
    background:#f8f1ed;
    box-shadow:0 22px 54px rgba(73,47,55,.13);
}
.tp-page-newsletter .tp-newsletter-welcome-note {
    left:16px;
    top:205px;
    width:170px;
    padding:18px 14px;
    font-size:22px;
    line-height:1.22;
    background:rgba(255,254,253,.78);
    box-shadow:0 10px 24px rgba(73,47,55,.05);
    transform:rotate(-4deg);
}
/* Kein kuenstlicher Ladezustand mehr. Das serverseitig vorhandene Brevo Formular
   bleibt vom ersten Render an sichtbar. */
.tp-page-newsletter .tp-newsletter-original-content,
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-form-ready,
.tp-page-newsletter .tp-newsletter-original-content.tp-newsletter-form-fallback {
    min-height:0;
    opacity:1;
    overflow:visible;
    background:transparent;
}
.tp-page-newsletter .tp-newsletter-original-content::before,
.tp-page-newsletter .tp-newsletter-original-content::after {
    content:none!important;
    display:none!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content > * {
    visibility:visible!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content img {
    display:none!important;
}
/* Falls Brevo seinen Loader im Markup ausliefert, darf er das Formular nicht verdecken. */
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-form-message-panel,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-form-block__button {
    visibility:visible!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-loader,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content [class*="loader"],
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content [id*="loader"] {
    display:none!important;
}
@media (max-width:900px) {
    .tp-page-newsletter .tp-newsletter-signup-inner {
        transform:translateY(-82px);
        margin-bottom:-82px;
    }
    .tp-page-newsletter .tp-newsletter-welcome-note { display:none; }
}
@media (max-width:767px) {
    .tp-page-newsletter .tp-newsletter-signup-inner {
        transform:translateY(-46px);
        margin-bottom:-46px;
    }
    .tp-page-newsletter .tp-newsletter-signup-card {
        padding:26px 20px 22px;
        border-radius:14px;
    }
}


/* ========================================================================== 
   Version 1.37.0: Einheitlicher Newsletter Flow
   ========================================================================== */
.tp-page-newsletter .tp-newsletter-flow-content {
    color:#65555a;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:14px;
    line-height:1.62;
}
.tp-page-newsletter .tp-newsletter-flow-content > :first-child { margin-top:0; }
.tp-page-newsletter .tp-newsletter-flow-content > :last-child { margin-bottom:0; }
.tp-page-newsletter .tp-newsletter-flow-content h1,
.tp-page-newsletter .tp-newsletter-flow-content h2,
.tp-page-newsletter .tp-newsletter-flow-content h3,
.tp-page-newsletter .tp-newsletter-flow-content h4 {
    margin:22px 0 10px;
    color:#4e363d;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-weight:400;
    line-height:1.16;
}
.tp-page-newsletter .tp-newsletter-flow-content h2 { font-size:27px; }
.tp-page-newsletter .tp-newsletter-flow-content h3 { font-size:22px; }
.tp-page-newsletter .tp-newsletter-flow-content p { margin:0 0 14px; }
.tp-page-newsletter .tp-newsletter-flow-content ul,
.tp-page-newsletter .tp-newsletter-flow-content ol {
    margin:18px 0 20px;
    padding-left:22px;
}
.tp-page-newsletter .tp-newsletter-flow-content li { margin:0 0 10px; }
.tp-page-newsletter .tp-newsletter-flow-content a:not(.sib-form-block__button) {
    color:#76565f;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
}
.tp-page-newsletter .tp-newsletter-flow-content .wp-block-button,
.tp-page-newsletter .tp-newsletter-flow-content > p:has(> a:only-child) {
    margin-top:20px;
}
.tp-page-newsletter .tp-newsletter-flow-content .wp-block-button__link,
.tp-page-newsletter .tp-newsletter-flow-content > p > a:only-child {
    display:inline-flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:11px 22px;
    border:1px solid #8f6d76;
    border-radius:5px;
    background:#8f6d76;
    color:#fff!important;
    text-decoration:none!important;
    font-size:13px;
    font-weight:600;
}
.tp-page-newsletter .tp-newsletter-flow-content .wp-block-button__link:hover,
.tp-page-newsletter .tp-newsletter-flow-content > p > a:only-child:hover {
    background:#654C52;
    border-color:#654C52;
}
.tp-page-newsletter .tp-newsletter-flow-content input[type="email"],
.tp-page-newsletter .tp-newsletter-flow-content input[type="text"] {
    width:100%!important;
    min-height:52px!important;
    padding:0 14px!important;
    border:1px solid #cfbec3!important;
    border-radius:6px!important;
    background:#fffefd!important;
    color:#654C52!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:14px!important;
    box-shadow:none!important;
}
.tp-page-newsletter .tp-newsletter-flow-content input[type="submit"],
.tp-page-newsletter .tp-newsletter-flow-content button[type="submit"] {
    width:100%!important;
    min-height:50px!important;
    margin-top:10px!important;
    padding:12px 22px!important;
    border:1px solid #8f6d76!important;
    border-radius:5px!important;
    background:#8f6d76!important;
    color:#fff!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:14px!important;
    font-weight:600!important;
    text-transform:none!important;
    box-shadow:none!important;
}
.tp-page-newsletter .tp-newsletter-flow-content input[type="submit"]:hover,
.tp-page-newsletter .tp-newsletter-flow-content button[type="submit"]:hover {
    background:#654C52!important;
    border-color:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-flow-content label {
    color:#654C52!important;
    font-size:13px!important;
    line-height:1.45!important;
}
.tp-page-newsletter .tp-newsletter-flow-content .sib-form-message-panel {
    margin:10px 0!important;
    border-radius:6px!important;
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.tp-page-newsletter .tp-newsletter-return-panel {
    padding:48px 0 42px;
    background:#fffefd;
    text-align:center;
}
.tp-page-newsletter .tp-newsletter-return-inner { max-width:760px; }
.tp-page-newsletter .tp-newsletter-return-panel .tp-eyebrow {
    margin:0 0 10px;
    color:#9b7f86;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
}
.tp-page-newsletter .tp-newsletter-return-panel h2 {
    margin:0;
    color:#8f6d76;
    font-family:"TP DM Serif Display",Georgia,serif;
    font-size:36px;
    font-weight:400;
    line-height:1.1;
}
.tp-page-newsletter .tp-newsletter-return-panel p:not(.tp-eyebrow) {
    max-width:600px;
    margin:14px auto 0;
    color:#65555a;
    font-size:14px;
    line-height:1.6;
}
.tp-page-newsletter .tp-newsletter-return-button {
    display:inline-flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    margin-top:20px;
    padding:11px 22px;
    border:1px solid #8f6d76;
    border-radius:5px;
    background:#8f6d76;
    color:#fff!important;
    text-decoration:none!important;
    font-size:13px;
    font-weight:600;
}
.tp-page-newsletter .tp-newsletter-return-button:hover { background:#654C52; border-color:#654C52; }
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-card,
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-card,
.tp-page-newsletter .tp-newsletter-confirm-page .tp-newsletter-flow-card,
.tp-page-newsletter .tp-newsletter-success-page .tp-newsletter-flow-card {
    min-height:0;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-legacy-hidden,
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-content .tp-newsletter-legacy-hidden,
.tp-page-newsletter .tp-newsletter-confirm-page .tp-newsletter-flow-content .tp-newsletter-legacy-hidden,
.tp-page-newsletter .tp-newsletter-success-page .tp-newsletter-flow-content .tp-newsletter-legacy-hidden {
    display:none!important;
}
@media (max-width:767px) {
    .tp-page-newsletter .tp-newsletter-flow-content { font-size:13px; }
    .tp-page-newsletter .tp-newsletter-flow-content h2 { font-size:24px; }
    .tp-page-newsletter .tp-newsletter-return-panel { padding:38px 0 34px; }
    .tp-page-newsletter .tp-newsletter-return-panel h2 { font-size:31px; }
}


/* ========================================================================== 
   Version 1.37.1: dekorative Notizzettel auf Statusseiten feinjustiert
   ========================================================================== */
@media (min-width:901px) {
    .tp-page-newsletter .tp-newsletter-confirm-page .tp-newsletter-welcome-note,
    .tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-welcome-note {
        left:-34px;
        width:158px;
        padding:16px 12px;
        font-size:20px;
        line-height:1.2;
        box-shadow:0 10px 22px rgba(73,47,55,.045);
    }

    /* Der kleine Hinweis sitzt zwischen Karte und Benefit Bereich, ohne in die
       Ueberschrift darunter zu laufen. */
    .tp-page-newsletter .tp-newsletter-confirm-page .tp-newsletter-welcome-note {
        top:186px;
        transform:rotate(-3deg);
    }

    /* Auf der Abmelde Bestaetigung bleibt der Zettel seitlich neben der
       groesseren Textkarte und beruehrt deren Kante nur noch optisch. */
    .tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-welcome-note {
        top:238px;
        transform:rotate(-4deg);
    }
}


/* ========================================================================== 
   Version 1.37.2: Fast da Notizzettel auf Hoehe der Bestaetigungskarte
   ========================================================================== */
@media (min-width:901px) {
    .tp-page-newsletter .tp-newsletter-confirm-page .tp-newsletter-welcome-note {
        top:42px;
        left:-38px;
        transform:rotate(-3deg);
    }
}


/* =========================================================
   Hotels und Unterkuenfte v1.38.0
   ========================================================= */
.tp-page-hotels .tp-hotels-page-showcase {
    --tp-hotel-ink:#654C52;
    --tp-hotel-rose:#B2979D;
    --tp-hotel-soft:#F1E7E2;
    --tp-hotel-paper:#fffefd;
    margin:0;
    overflow:hidden;
    color:var(--tp-hotel-ink);
    background:var(--tp-hotel-paper);
    font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.tp-page-hotels .tp-hotels-page-showcase * { box-sizing:border-box; }
.tp-page-hotels .tp-hotels-page-showcase .tp-shell { width:min(1220px,calc(100% - 48px)); margin-inline:auto; }
.tp-page-hotels .tp-hotels-page-showcase h1,
.tp-page-hotels .tp-hotels-page-showcase h2,
.tp-page-hotels .tp-hotels-page-showcase h3 { margin:0; color:var(--tp-hotel-ink); font-family:"TP DM Serif Display","DM Serif Display",Georgia,serif; font-weight:400; letter-spacing:-.025em; }
.tp-page-hotels .tp-hotels-page-showcase p { margin-top:0; }
.tp-page-hotels .tp-hotels-page-showcase .tp-eyebrow { margin:0 0 10px; color:#9B7F86; font-size:11px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }

.tp-page-hotels .tp-hotels-hero { padding:72px 0 88px; background:#fffefd; }
.tp-page-hotels .tp-hotels-hero-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:68px; align-items:center; }
.tp-page-hotels .tp-hotels-hero-copy { max-width:560px; }
.tp-page-hotels .tp-hotels-hero h1 { max-width:610px; font-size:clamp(54px,5.5vw,82px); line-height:.98; }
.tp-page-hotels .tp-hotels-hero-copy > p:last-child { max-width:560px; margin:24px 0 0; font-size:18px; line-height:1.65; color:#6f6064; }
.tp-page-hotels .tp-hotels-hero-image { position:relative; min-height:520px; overflow:hidden; border-radius:32px; background:var(--tp-hotel-soft); }
.tp-page-hotels .tp-hotels-hero-image::before { content:""; position:absolute; z-index:1; inset:0 auto 0 0; width:22%; background:linear-gradient(90deg,#fffefd 0%,rgba(255,254,253,.74) 35%,rgba(255,254,253,0) 100%); }
.tp-page-hotels .tp-hotels-hero-image img { width:100%; height:100%; min-height:520px; object-fit:cover; display:block; }
.tp-page-hotels .tp-hotels-script-note { position:absolute; z-index:2; right:34px; bottom:28px; max-width:220px; padding:13px 18px; background:rgba(255,254,253,.9); color:#72585f; font-family:cursive; font-size:20px; line-height:1.15; transform:rotate(-3deg); box-shadow:0 12px 32px rgba(101,76,82,.13); }

.tp-page-hotels .tp-hotels-search-section { position:relative; z-index:3; padding:0 0 72px; background:var(--tp-hotel-soft); }
.tp-page-hotels .tp-hotels-search-card { transform:translateY(-46px); padding:34px 38px 38px; border:1px solid rgba(101,76,82,.1); border-radius:28px; background:#fffefd; box-shadow:0 22px 50px rgba(101,76,82,.13); }
.tp-page-hotels .tp-hotels-search-copy { max-width:760px; margin:0 0 24px; }
.tp-page-hotels .tp-hotels-search-copy h2 { font-size:clamp(36px,3.8vw,52px); line-height:1.03; }
.tp-page-hotels .tp-hotels-search-copy p:last-child { margin:12px 0 0; font-size:16px; line-height:1.55; color:#746469; }
.tp-page-hotels .tp-hotels-stay22 { overflow:hidden; min-height:475px; border:1px solid rgba(101,76,82,.12); border-radius:18px; background:#f8f3f0; }
.tp-page-hotels .tp-hotels-stay22 iframe { display:block!important; width:100%!important; max-width:none!important; height:500px!important; min-height:500px!important; margin:0!important; border:0!important; }

.tp-page-hotels .tp-hotels-section { padding:78px 0; }
.tp-page-hotels .tp-hotels-heading { max-width:780px; margin:0 auto 42px; text-align:center; }
.tp-page-hotels .tp-hotels-heading.is-left { margin-left:0; text-align:left; }
.tp-page-hotels .tp-hotels-heading h2 { font-size:clamp(38px,4.2vw,58px); line-height:1.02; }
.tp-page-hotels .tp-hotels-heading > p:last-child { max-width:700px; margin:15px auto 0; color:#75666a; font-size:16px; line-height:1.6; }
.tp-page-hotels .tp-hotels-heading.is-left > p:last-child { margin-left:0; }

.tp-page-hotels .tp-hotels-categories-section { background:#fff; }
.tp-page-hotels .tp-hotels-category-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.tp-page-hotels .tp-hotels-category-card { min-height:250px; padding:30px 24px; border:1px solid #eadeda; background:#fffefd; text-align:center; }
.tp-page-hotels .tp-hotels-category-icon { display:grid; place-items:center; width:72px; height:72px; margin:0 auto 20px; border-radius:50%; background:var(--tp-hotel-soft); color:#8d6e76; }
.tp-page-hotels .tp-hotels-category-icon svg { width:34px; height:34px; }
.tp-page-hotels .tp-hotels-category-card h3 { font-size:25px; line-height:1.08; }
.tp-page-hotels .tp-hotels-category-card p { margin:10px 0 0; color:#75666a; font-size:14px; line-height:1.55; }

.tp-page-hotels .tp-hotels-latest-section { background:var(--tp-hotel-soft); }
.tp-page-hotels .tp-hotels-feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.tp-page-hotels .tp-hotels-feature-card { background:#fffefd; box-shadow:0 13px 34px rgba(101,76,82,.08); }
.tp-page-hotels .tp-hotels-card-image { display:block; aspect-ratio:4/3; overflow:hidden; background:#eadeda; }
.tp-page-hotels .tp-hotels-card-image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.tp-page-hotels .tp-hotels-feature-card:hover .tp-hotels-card-image img { transform:scale(1.025); }
.tp-page-hotels .tp-hotels-card-copy { padding:22px 22px 24px; }
.tp-page-hotels .tp-hotels-card-copy > span,
.tp-page-hotels .tp-hotels-guide-card > div > span { display:block; margin-bottom:8px; color:#9B7F86; font-size:10px; font-weight:700; letter-spacing:.18em; }
.tp-page-hotels .tp-hotels-card-copy h3 { font-size:26px; line-height:1.12; }
.tp-page-hotels .tp-hotels-card-copy h3 a,
.tp-page-hotels .tp-hotels-guide-card h3 a { color:inherit; text-decoration:none; }
.tp-page-hotels .tp-hotels-text-link { display:inline-flex; align-items:center; gap:7px; margin-top:18px; color:#7e6068; font-size:13px; font-weight:700; text-decoration:none; }

.tp-page-hotels .tp-hotels-favorites-section { background:#fff; }
.tp-page-hotels .tp-hotels-favorites-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.tp-page-hotels .tp-hotels-favorite-card { position:relative; aspect-ratio:1.2/1; overflow:hidden; background:#eadeda; color:#fff; text-decoration:none; }
.tp-page-hotels .tp-hotels-favorite-image,
.tp-page-hotels .tp-hotels-favorite-image img { display:block; width:100%; height:100%; }
.tp-page-hotels .tp-hotels-favorite-image img { object-fit:cover; transition:transform .35s ease; }
.tp-page-hotels .tp-hotels-favorite-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(39,28,31,0) 35%,rgba(39,28,31,.78) 100%); }
.tp-page-hotels .tp-hotels-favorite-card:hover .tp-hotels-favorite-image img { transform:scale(1.03); }
.tp-page-hotels .tp-hotels-favorite-overlay { position:absolute; z-index:2; left:22px; right:22px; bottom:21px; }
.tp-page-hotels .tp-hotels-favorite-overlay small { display:block; margin-bottom:7px; font-size:10px; font-weight:700; letter-spacing:.18em; }
.tp-page-hotels .tp-hotels-favorite-overlay strong { display:block; color:#fff; font-family:"TP DM Serif Display","DM Serif Display",Georgia,serif; font-size:27px; font-weight:400; line-height:1.05; }

.tp-page-hotels .tp-hotels-guides-section { background:#f7efeb; }
.tp-page-hotels .tp-hotels-guides-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.tp-page-hotels .tp-hotels-guide-card { display:grid; grid-template-columns:180px 1fr; gap:22px; align-items:center; min-height:165px; padding:16px; background:#fffefd; }
.tp-page-hotels .tp-hotels-guide-image { display:block; height:135px; overflow:hidden; background:#eadeda; }
.tp-page-hotels .tp-hotels-guide-image img { display:block; width:100%; height:100%; object-fit:cover; }
.tp-page-hotels .tp-hotels-guide-card h3 { font-size:24px; line-height:1.12; }

.tp-page-hotels .tp-hotels-closing-section { padding:82px 0; background:#654C52; color:#fff; }
.tp-page-hotels .tp-hotels-closing-inner { max-width:900px; text-align:center; }
.tp-page-hotels .tp-hotels-closing-section .tp-eyebrow { color:#ddc7cc; }
.tp-page-hotels .tp-hotels-closing-section h2 { color:#fff; font-size:clamp(40px,5vw,64px); line-height:1.02; }
.tp-page-hotels .tp-hotels-closing-section p:last-child { max-width:720px; margin:18px auto 0; color:#f5ecee; font-size:17px; line-height:1.6; }

@media (max-width:1020px) {
    .tp-page-hotels .tp-hotels-hero { padding:54px 0 72px; }
    .tp-page-hotels .tp-hotels-hero-grid { gap:36px; }
    .tp-page-hotels .tp-hotels-hero-image,
    .tp-page-hotels .tp-hotels-hero-image img { min-height:430px; }
    .tp-page-hotels .tp-hotels-category-grid { grid-template-columns:repeat(2,1fr); }
    .tp-page-hotels .tp-hotels-feature-grid { gap:20px; }
    .tp-page-hotels .tp-hotels-favorites-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:760px) {
    .tp-page-hotels .tp-hotels-page-showcase .tp-shell { width:min(100% - 28px,1220px); }
    .tp-page-hotels .tp-hotels-hero { padding:40px 0 56px; }
    .tp-page-hotels .tp-hotels-hero-grid { grid-template-columns:1fr; gap:28px; }
    .tp-page-hotels .tp-hotels-hero h1 { font-size:45px; }
    .tp-page-hotels .tp-hotels-hero-copy > p:last-child { margin-top:18px; font-size:16px; }
    .tp-page-hotels .tp-hotels-hero-image { min-height:330px; border-radius:24px; }
    .tp-page-hotels .tp-hotels-hero-image img { min-height:330px; }
    .tp-page-hotels .tp-hotels-script-note { right:15px; bottom:15px; font-size:17px; }
    .tp-page-hotels .tp-hotels-search-section { padding-bottom:46px; }
    .tp-page-hotels .tp-hotels-search-card { transform:translateY(-28px); padding:25px 16px 18px; border-radius:20px; }
    .tp-page-hotels .tp-hotels-search-copy h2 { font-size:35px; }
    .tp-page-hotels .tp-hotels-stay22 { min-height:540px; border-radius:13px; }
    .tp-page-hotels .tp-hotels-stay22 iframe { height:560px!important; min-height:560px!important; }
    .tp-page-hotels .tp-hotels-section { padding:56px 0; }
    .tp-page-hotels .tp-hotels-heading { margin-bottom:30px; }
    .tp-page-hotels .tp-hotels-heading h2 { font-size:37px; }
    .tp-page-hotels .tp-hotels-category-grid,
    .tp-page-hotels .tp-hotels-feature-grid,
    .tp-page-hotels .tp-hotels-favorites-grid,
    .tp-page-hotels .tp-hotels-guides-grid { grid-template-columns:1fr; }
    .tp-page-hotels .tp-hotels-category-card { min-height:0; padding:25px 22px; }
    .tp-page-hotels .tp-hotels-feature-card { max-width:560px; margin-inline:auto; }
    .tp-page-hotels .tp-hotels-favorite-card { aspect-ratio:1.3/1; }
    .tp-page-hotels .tp-hotels-guide-card { grid-template-columns:120px 1fr; gap:16px; min-height:130px; padding:12px; }
    .tp-page-hotels .tp-hotels-guide-image { height:106px; }
    .tp-page-hotels .tp-hotels-guide-card h3 { font-size:20px; }
    .tp-page-hotels .tp-hotels-closing-section { padding:60px 0; }
}
@media (max-width:430px) {
    .tp-page-hotels .tp-hotels-hero h1 { font-size:39px; }
    .tp-page-hotels .tp-hotels-category-grid { gap:14px; }
    .tp-page-hotels .tp-hotels-guide-card { grid-template-columns:1fr; }
    .tp-page-hotels .tp-hotels-guide-image { height:190px; }
}

/* ========================================================================== 
   Version 1.38.1: Hotels page wrapper isolated from homepage hotel slider
   ========================================================================== */
.tp-page-hotels .tp-hotels-page-showcase {
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    overflow:hidden;
}
.tp-page-hotels .tp-hotels-page-showcase > section {
    display:block;
    width:100%;
}

/* Version 1.38.2: Hotel landing page hero switched to Puradies Leogang Badeteich portrait. */

/* Version 1.38.3: Hotel hero image uses standard rounded rectangle and German note text. */


/* ========================================================================== 
   Version 1.38.4: compact About hero + hotel hero aligned with cooperation page
   ========================================================================== */

/* Über Travelprincess: Hero insgesamt kompakter, damit die Reisephilosophie früher sichtbar wird. */
@media (min-width:1101px) {
    .tp-page-about .tp-about-hero {
        grid-template-columns:minmax(340px,43%) minmax(0,57%);
        min-height:470px;
    }
    .tp-page-about .tp-about-hero-copy {
        padding-top:48px;
        padding-bottom:46px;
    }
    .tp-page-about .tp-about-hero-copy h1 {
        max-width:570px;
        font-size:clamp(48px,4.1vw,66px);
        line-height:.96;
    }
    .tp-page-about .tp-about-hero-text {
        margin:19px 0 23px;
        font-size:15px;
        line-height:1.62;
    }
    .tp-page-about .tp-about-script-note {
        margin-top:25px;
        font-size:24px;
    }
    .tp-page-about .tp-about-hero-image {
        min-height:470px;
    }
    .tp-page-about .tp-about-quote-card {
        width:min(225px,32%);
        padding:22px 20px;
        font-size:18px;
    }
}
@media (min-width:768px) and (max-width:1100px) {
    .tp-page-about .tp-about-hero-copy { padding:46px 40px 40px; }
    .tp-page-about .tp-about-hero-copy h1 { font-size:clamp(48px,6vw,62px); }
    .tp-page-about .tp-about-hero-image { min-height:430px; }
}
@media (max-width:767px) {
    .tp-page-about .tp-about-hero-copy { padding-top:38px; padding-bottom:34px; }
    .tp-page-about .tp-about-hero-copy h1 { font-size:44px; }
    .tp-page-about .tp-about-hero-image { min-height:330px; }
}
@media (max-width:430px) {
    .tp-page-about .tp-about-hero-copy h1 { font-size:40px; }
    .tp-page-about .tp-about-hero-image { min-height:300px; }
}

/* Hotels und Unterkünfte: Hero übernimmt die klarere Split-Logik der Kooperationsseite. */
.tp-page-hotels .tp-hotels-hero {
    padding:0;
    background:#fffefd;
}
.tp-page-hotels .tp-hotels-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,46%) minmax(0,54%);
    gap:0;
    width:100%;
    max-width:none;
    min-height:510px;
    margin:0;
    padding:0;
    align-items:stretch;
}
.tp-page-hotels .tp-hotels-hero-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    max-width:none;
    padding:58px clamp(36px,3.8vw,58px) 58px max(52px,calc((100vw - 1500px)/2 + 52px));
}
.tp-page-hotels .tp-hotels-hero h1 {
    max-width:600px;
    font-size:clamp(48px,3.9vw,64px);
    line-height:1;
    text-wrap:balance;
}
.tp-page-hotels .tp-hotels-hero-copy > p:last-child {
    max-width:545px;
    margin:23px 0 0;
    color:#6e5b60;
    font-size:16px;
    line-height:1.7;
}
.tp-page-hotels .tp-hotels-hero-image {
    position:relative;
    min-height:510px;
    overflow:hidden;
    border-radius:0;
    background:linear-gradient(145deg,#ddc9c1,#b99da4);
}
.tp-page-hotels .tp-hotels-hero-image::before {
    content:none;
    display:none;
}
.tp-page-hotels .tp-hotels-hero-image::after {
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:38%;
    background:linear-gradient(to top,rgba(47,31,35,.18),transparent);
    pointer-events:none;
}
.tp-page-hotels .tp-hotels-hero-image img {
    width:100%;
    height:100%;
    min-height:510px;
    object-fit:cover;
    object-position:center;
    display:block;
}
.tp-page-hotels .tp-hotels-script-note {
    position:absolute;
    z-index:2;
    right:7%;
    top:10%;
    bottom:auto;
    max-width:225px;
    padding:0;
    background:transparent;
    color:#fff;
    font-family:"Bradley Hand","Segoe Print","Comic Sans MS",cursive;
    font-size:28px;
    line-height:1.08;
    transform:rotate(-4deg);
    box-shadow:none;
    text-shadow:0 2px 10px rgba(52,37,40,.22);
}

/* Suche bleibt direkt unter dem Hero, aber etwas kompakter eingebettet. */
.tp-page-hotels .tp-hotels-search-section {
    padding-bottom:66px;
}
.tp-page-hotels .tp-hotels-search-card {
    transform:translateY(-34px);
}

@media (max-width:1100px) and (min-width:761px) {
    .tp-page-hotels .tp-hotels-hero-grid {
        grid-template-columns:1fr;
        min-height:0;
    }
    .tp-page-hotels .tp-hotels-hero-copy {
        padding:50px 40px 44px;
    }
    .tp-page-hotels .tp-hotels-hero h1 {
        max-width:760px;
        font-size:clamp(48px,7vw,64px);
    }
    .tp-page-hotels .tp-hotels-hero-image,
    .tp-page-hotels .tp-hotels-hero-image img {
        min-height:430px;
    }
}

/* Mobil: kein Hero-Bild. Nach dem kompakten Intro folgt sofort die Hotelsuche. */
@media (max-width:760px) {
    .tp-page-hotels .tp-hotels-hero {
        padding:0;
    }
    .tp-page-hotels .tp-hotels-hero-grid {
        display:block;
        min-height:0;
    }
    .tp-page-hotels .tp-hotels-hero-copy {
        padding:36px 22px 42px;
    }
    .tp-page-hotels .tp-hotels-hero h1 {
        max-width:500px;
        font-size:42px;
        line-height:.98;
    }
    .tp-page-hotels .tp-hotels-hero-copy > p:last-child {
        margin-top:17px;
        font-size:14px;
        line-height:1.58;
    }
    .tp-page-hotels .tp-hotels-hero-image {
        display:none!important;
    }
    .tp-page-hotels .tp-hotels-search-section {
        padding:0 0 44px;
    }
    .tp-page-hotels .tp-hotels-search-card {
        transform:none;
        margin-top:0;
        border-radius:0;
        border-left:0;
        border-right:0;
        padding-top:28px;
    }
    .tp-page-hotels .tp-hotels-search-copy {
        margin-bottom:20px;
    }
}
@media (max-width:430px) {
    .tp-page-hotels .tp-hotels-hero-copy { padding:31px 18px 35px; }
    .tp-page-hotels .tp-hotels-hero h1 { font-size:38px; }
}


/* ========================================================================== 
   Version 1.38.5: Hotel-Hero bis Außenkante, Handverlesene Hotels,
   ruhiger Farbabschluss + kompakterer Über-mich-Einstieg
   ========================================================================== */

/* Hotel-Hero exakt wie der Koop-Hero über die volle Viewportbreite führen.
   Die allgemeinere .tp-shell-Regel der Hotelseite darf hier nicht begrenzen. */
.tp-page-hotels .tp-hotels-page-showcase .tp-hotels-hero .tp-shell.tp-hotels-hero-grid {
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
}
.tp-page-hotels .tp-hotels-hero-grid {
    grid-template-columns:minmax(0,46%) minmax(0,54%);
    min-height:540px;
}
.tp-page-hotels .tp-hotels-hero-copy {
    padding:62px clamp(36px,3.8vw,58px) 62px max(52px,calc((100vw - 1500px)/2 + 52px));
}
.tp-page-hotels .tp-hotels-hero-image,
.tp-page-hotels .tp-hotels-hero-image img {
    min-height:540px;
    border-radius:0!important;
}
.tp-page-hotels .tp-hotels-hero-image {
    margin:0;
}

/* Farbfolge: Weiß > Beige > Weiß > Beige > Weiß > Beige.
   Vor dem beigen Footer trennt ein schmaler weißer Abschluss die Bereiche. */
.tp-page-hotels .tp-hotels-search-section { background:#F1E7E2; }
.tp-page-hotels .tp-hotels-categories-section { background:#fffefd; }
.tp-page-hotels .tp-hotels-latest-section { background:#F1E7E2; }
.tp-page-hotels .tp-hotels-favorites-section { background:#fffefd; }
.tp-page-hotels .tp-hotels-guides-section {
    background:#F1E7E2;
    border-bottom:30px solid #fffefd;
}

/* Über Travelprincess: der obere Hero wird sichtbar kompakter.
   Zusätzlich wird auch die Überschrift an #meine-reisephilosophie etwas kleiner. */
@media (min-width:1101px) {
    .tp-page-about .tp-about-showcase .tp-about-hero {
        grid-template-columns:minmax(340px,43%) minmax(0,57%);
        height:430px;
        min-height:430px;
    }
    .tp-page-about .tp-about-showcase .tp-about-hero-copy {
        padding:36px clamp(32px,3.6vw,56px) 34px max(48px,calc((100vw - 1500px)/2 + 48px));
    }
    .tp-page-about .tp-about-showcase .tp-about-hero-copy h1 {
        max-width:540px;
        font-size:clamp(46px,3.7vw,58px);
        line-height:.97;
    }
    .tp-page-about .tp-about-showcase .tp-about-hero-text {
        max-width:520px;
        margin:16px 0 20px;
        font-size:14px;
        line-height:1.58;
    }
    .tp-page-about .tp-about-showcase .tp-about-script-note {
        margin-top:18px;
        font-size:21px;
    }
    .tp-page-about .tp-about-showcase .tp-about-hero-image {
        height:430px;
        min-height:430px;
    }
    .tp-page-about .tp-about-showcase .tp-about-quote-card {
        width:min(210px,30%);
        padding:18px 18px;
        font-size:16px;
    }
    .tp-page-about #meine-reisephilosophie {
        padding-top:58px;
    }
    .tp-page-about #meine-reisephilosophie .tp-about-heading h2 {
        font-size:clamp(34px,3.1vw,48px);
    }
}

@media (max-width:1100px) and (min-width:761px) {
    .tp-page-hotels .tp-hotels-page-showcase .tp-hotels-hero .tp-shell.tp-hotels-hero-grid {
        width:100%;
        max-width:none;
    }
    .tp-page-hotels .tp-hotels-hero-image,
    .tp-page-hotels .tp-hotels-hero-image img { border-radius:0!important; }
}

@media (max-width:760px) {
    .tp-page-hotels .tp-hotels-page-showcase .tp-hotels-hero .tp-shell.tp-hotels-hero-grid {
        width:100%;
        max-width:none;
        margin:0;
    }
    .tp-page-hotels .tp-hotels-hero-image { display:none!important; }
    .tp-page-hotels .tp-hotels-guides-section { border-bottom-width:18px; }
}


/* ========================================================================== 
   Version 1.38.6: Hotel-Guides entfernt, Marina Azzurra in Handverlesene Hotels,
   klarer Farbübergang vor dem Footer auf Über Travelprincess
   ========================================================================== */

/* Nach dem letzten beigen Über-mich-Bereich sorgt eine weiße Ruhezone dafür,
   dass der ebenfalls beige Footer wieder klar als eigener Bereich lesbar ist. */
.tp-page-about .tp-about-showcase::after {
    content:"";
    display:block;
    height:42px;
    background:#fffefd;
}

@media (max-width:760px) {
    .tp-page-about .tp-about-showcase::after { height:24px; }
}

/* ========================================================================== 
   Version 1.38.9: Newsletter Popup + kontextueller Amex Hinweis
   ========================================================================== */
body.tp-promo-open { overflow:hidden; }
.tp-reader-promo[hidden] { display:none!important; }
.tp-reader-promo { position:fixed; z-index:99990; font-family:"TP Inter",Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.tp-reader-promo-backdrop { position:fixed; inset:0; z-index:0; border:0; background:rgba(67,48,53,.28); opacity:0; transition:opacity .24s ease; cursor:default; }
.tp-reader-promo-card { position:relative; z-index:1; color:#654C52; background:#fffefd; box-shadow:0 24px 70px rgba(68,47,52,.22); }
.tp-reader-promo-close { position:absolute; z-index:3; top:12px; right:14px; width:34px; height:34px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.9); color:#654C52; font-size:26px; font-weight:300; line-height:31px; cursor:pointer; box-shadow:0 2px 12px rgba(67,48,53,.09); }
.tp-reader-promo-eyebrow { display:block; margin:0 0 10px; font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#9A7E85; }
.tp-reader-promo-copy h2 { margin:0; font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif; font-weight:400; letter-spacing:-.025em; color:#654C52; }
.tp-reader-promo-copy p { margin:14px 0 20px; color:#715d62; }
.tp-reader-promo-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:11px 20px; border-radius:999px; background:#654C52; color:#fff!important; font-weight:700; font-size:13px; line-height:1.2; text-decoration:none!important; transition:transform .18s ease,background .18s ease; }
.tp-reader-promo-button:hover { transform:translateY(-1px); background:#573f45; }

/* Newsletter: ruhiger Dialog, Desktop mit Bild, mobil kompakte Bottom Sheet Variante. */
.tp-reader-promo-newsletter { inset:0; display:flex; align-items:center; justify-content:center; padding:24px; pointer-events:none; }
.tp-reader-promo-newsletter .tp-reader-promo-backdrop { pointer-events:auto; }
.tp-reader-promo-newsletter .tp-reader-promo-card { display:grid; grid-template-columns:minmax(0,41%) minmax(0,59%); width:min(760px,calc(100vw - 48px)); min-height:360px; border-radius:22px; overflow:hidden; opacity:0; transform:translateY(18px) scale(.985); transition:opacity .25s ease,transform .25s ease; pointer-events:auto; }
.tp-reader-promo-newsletter.is-visible .tp-reader-promo-backdrop { opacity:1; }
.tp-reader-promo-newsletter.is-visible .tp-reader-promo-card { opacity:1; transform:none; }
.tp-reader-promo-newsletter .tp-reader-promo-image { min-height:360px; overflow:hidden; background:#F1E7E2; }
.tp-reader-promo-newsletter .tp-reader-promo-image img { width:100%; height:100%; min-height:360px; object-fit:cover; display:block; }
.tp-reader-promo-newsletter .tp-reader-promo-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:48px 44px 42px; }
.tp-reader-promo-newsletter .tp-reader-promo-copy h2 { max-width:360px; font-size:37px; line-height:1.02; }
.tp-reader-promo-newsletter .tp-reader-promo-copy p { max-width:390px; font-size:14px; line-height:1.62; }
.tp-reader-promo-later { margin:13px 0 0; padding:0; border:0; background:transparent; color:#9A7E85; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }

/* Amex: kein Popup vor dem Inhalt, sondern kleiner Hinweis am unteren Rand. */
.tp-reader-promo-amex { right:22px; bottom:22px; width:min(390px,calc(100vw - 44px)); pointer-events:none; }
.tp-reader-promo-amex .tp-reader-promo-card { width:100%; padding:28px 28px 24px; border:1px solid rgba(101,76,82,.12); border-radius:18px; opacity:0; transform:translateY(26px); transition:opacity .28s ease,transform .28s ease; pointer-events:auto; }
.tp-reader-promo-amex.is-visible .tp-reader-promo-card { opacity:1; transform:none; }
.tp-reader-promo-amex .tp-reader-promo-copy h2 { max-width:305px; padding-right:18px; font-size:27px; line-height:1.04; }
.tp-reader-promo-amex .tp-reader-promo-copy p { margin:12px 0 17px; font-size:13px; line-height:1.55; }
.tp-reader-promo-amex .tp-reader-promo-button { min-height:40px; padding:10px 17px; font-size:12px; }
.tp-reader-promo-amex small { display:block; margin-top:9px; font-size:10px; color:#9A7E85; }

@media (max-width:760px) {
    .tp-reader-promo-newsletter { align-items:flex-end; padding:12px; }
    .tp-reader-promo-newsletter .tp-reader-promo-card { display:block; width:100%; min-height:0; max-height:calc(100vh - 24px); border-radius:18px; overflow:auto; transform:translateY(24px); }
    .tp-reader-promo-newsletter .tp-reader-promo-image { display:none; }
    .tp-reader-promo-newsletter .tp-reader-promo-copy { min-height:0; padding:31px 27px 25px; }
    .tp-reader-promo-newsletter .tp-reader-promo-copy h2 { font-size:31px; line-height:1.02; padding-right:18px; }
    .tp-reader-promo-newsletter .tp-reader-promo-copy p { margin:11px 0 17px; font-size:13px; line-height:1.55; }
    .tp-reader-promo-newsletter .tp-reader-promo-button { min-height:42px; }
    .tp-reader-promo-newsletter .tp-reader-promo-close { top:10px; right:10px; }

    .tp-reader-promo-amex { right:12px; bottom:12px; width:calc(100vw - 24px); }
    .tp-reader-promo-amex .tp-reader-promo-card { padding:24px 22px 20px; border-radius:16px; }
    .tp-reader-promo-amex .tp-reader-promo-copy h2 { font-size:25px; }
    .tp-reader-promo-amex .tp-reader-promo-copy p { font-size:12.5px; }
}

@media (prefers-reduced-motion:reduce) {
    .tp-reader-promo-backdrop,.tp-reader-promo-card,.tp-reader-promo-button { transition:none!important; }
}

/* ========================================================================== 
   Version 1.38.9: Amex Hinweis beige + Promo Script Fix
   ========================================================================== */
.tp-reader-promo-amex .tp-reader-promo-card {
    background:#F1E7E2;
    border-color:rgba(101,76,82,.16);
    box-shadow:0 20px 55px rgba(68,47,52,.18);
}
.tp-reader-promo-amex .tp-reader-promo-close {
    background:rgba(255,254,253,.92);
}


/* ==========================================================================
   Version 1.39.1: Promo Rotation + Newsletter beige
   ========================================================================== */
.tp-reader-promo-newsletter .tp-reader-promo-card {
    background:#F1E7E2;
}
.tp-reader-promo-newsletter .tp-reader-promo-close {
    background:rgba(255,254,253,.92);
}

/* ==========================================================================
   Version 1.39.3: Mobile Link Hub + QR Business Card
   ========================================================================== */

/* Beide Landingpages sind bewusst eigenstaendig und verzichten auf den grossen Site Header/Footer. */
.tp-page-linkhub,
.tp-page-businesscard {
    min-height:100vh;
    min-height:100svh;
    background:#f7f1ee;
}

/* Instagram Link Hub ------------------------------------------------------- */
.tp-page-linkhub .tp-linkhub-main {
    min-height:100vh;
    min-height:100svh;
    display:grid;
    place-items:center;
    padding:14px;
    background:
        radial-gradient(circle at 14% 8%, rgba(178,151,157,.18), transparent 30%),
        linear-gradient(180deg,#fbf8f6 0%,#f1e7e2 100%);
}
.tp-page-linkhub .tp-linkhub-card {
    width:min(100%,520px);
    padding:20px 20px 14px;
    border:1px solid rgba(101,76,82,.10);
    border-radius:24px;
    background:rgba(255,254,253,.94);
    box-shadow:0 20px 55px rgba(72,49,55,.10);
    text-align:center;
}
.tp-page-linkhub .tp-linkhub-intro {
    display:flex;
    flex-direction:column;
    align-items:center;
    margin-bottom:13px;
}
.tp-page-linkhub .tp-linkhub-avatar {
    width:62px;
    height:62px;
    margin-bottom:7px;
    overflow:hidden;
    border:3px solid #fff;
    border-radius:50%;
    box-shadow:0 5px 18px rgba(101,76,82,.13);
    background:#f1e7e2;
}
.tp-page-linkhub .tp-linkhub-avatar img {
    width:100%;
    height:100%;
    object-fit:cover;
}
.tp-page-linkhub .tp-linkhub-logo {
    display:block;
    width:min(190px,58vw);
    margin:0 auto 3px;
}
.tp-page-linkhub .tp-linkhub-logo img {
    width:100%;
    height:auto;
}
.tp-page-linkhub .tp-linkhub-intro p {
    margin:0;
    color:#8f747b;
    font-size:11.5px;
    line-height:1.25;
    letter-spacing:.015em;
}
.tp-page-linkhub .tp-linkhub-links {
    display:grid;
    gap:7px;
}
.tp-page-linkhub .tp-linkhub-button {
    display:flex;
    min-height:43px;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:9px 15px 9px 17px;
    border:1px solid rgba(101,76,82,.16);
    border-radius:13px;
    background:#f7f1ee;
    color:#654c52;
    font-size:13px;
    font-weight:650;
    line-height:1.15;
    text-align:left;
    text-decoration:none;
    transition:transform .16s ease,background .16s ease,border-color .16s ease;
}
.tp-page-linkhub .tp-linkhub-button:hover,
.tp-page-linkhub .tp-linkhub-button:focus-visible {
    transform:translateY(-1px);
    border-color:rgba(101,76,82,.30);
    background:#f1e7e2;
}
.tp-page-linkhub .tp-linkhub-button.is-primary {
    border-color:#654c52;
    background:#654c52;
    color:#fff;
}
.tp-page-linkhub .tp-linkhub-button.is-primary:hover,
.tp-page-linkhub .tp-linkhub-button.is-primary:focus-visible { background:#725b62; }
.tp-page-linkhub .tp-linkhub-arrow {
    flex:0 0 auto;
    font-size:15px;
    font-weight:400;
}
.tp-page-linkhub .tp-linkhub-affiliate {
    max-width:430px;
    margin:9px auto 5px;
    color:#9a858a;
    font-size:9px;
    line-height:1.28;
}
.tp-page-linkhub .tp-linkhub-footer {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:15px;
    color:#8d777d;
    font-size:9.5px;
    line-height:1.2;
}
.tp-page-linkhub .tp-linkhub-footer a { text-decoration:none; }
.tp-page-linkhub .tp-linkhub-footer a[href*="impressum"] {
    color:#654c52;
    font-weight:750;
}
.tp-page-linkhub .tp-linkhub-footer a:hover { text-decoration:underline; text-underline-offset:2px; }

/* QR Business Card --------------------------------------------------------- */
.tp-page-businesscard .tp-businesscard-main {
    min-height:100vh;
    min-height:100svh;
    display:grid;
    place-items:center;
    padding:28px;
    background:
        radial-gradient(circle at 86% 12%, rgba(178,151,157,.20), transparent 32%),
        linear-gradient(145deg,#fffefd 0%,#f1e7e2 100%);
}
.tp-page-businesscard .tp-businesscard-card {
    display:grid;
    grid-template-columns:minmax(0,42%) minmax(0,58%);
    width:min(100%,930px);
    min-height:560px;
    overflow:hidden;
    border:1px solid rgba(101,76,82,.10);
    border-radius:28px;
    background:#fffefd;
    box-shadow:0 28px 80px rgba(67,48,53,.14);
}
.tp-page-businesscard .tp-businesscard-visual {
    position:relative;
    min-height:560px;
    overflow:hidden;
    background:#b2979d;
}
.tp-page-businesscard .tp-businesscard-image {
    width:100%;
    height:100%;
    min-height:560px;
    object-fit:cover;
}
.tp-page-businesscard .tp-businesscard-image-placeholder {
    display:grid;
    place-items:center;
    height:100%;
    min-height:560px;
    padding:30px;
    color:#fff;
    font-family:"TP DM Serif Display","DM Serif Display",Georgia,serif;
    font-size:34px;
}
.tp-page-businesscard .tp-businesscard-visual::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(48,32,36,.02) 45%,rgba(48,32,36,.30) 100%);
    pointer-events:none;
}
.tp-page-businesscard .tp-businesscard-logo {
    position:absolute;
    z-index:2;
    left:24px;
    bottom:24px;
    display:block;
    width:190px;
    padding:0;
    background:transparent;
    box-shadow:none;
}
.tp-page-businesscard .tp-businesscard-logo img {
    width:100%;
    height:auto;
    filter:drop-shadow(0 1px 7px rgba(255,255,255,.92));
}
.tp-page-businesscard .tp-businesscard-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:56px 58px 44px;
}
.tp-page-businesscard .tp-businesscard-copy .tp-eyebrow {
    margin-bottom:10px;
    color:#9a7e85;
}
.tp-page-businesscard .tp-businesscard-copy h1 {
    margin:0;
    color:#654c52;
    font-family:"TP DM Serif Display","DM Serif Display","Iowan Old Style",Baskerville,Georgia,serif;
    font-size:46px;
    font-weight:400;
    line-height:.98;
    letter-spacing:-.035em;
}
.tp-page-businesscard .tp-businesscard-lead {
    max-width:480px;
    margin:18px 0 25px;
    color:#756167;
    font-size:14px;
    line-height:1.65;
}
.tp-page-businesscard .tp-businesscard-actions {
    display:grid;
    gap:9px;
}
.tp-page-businesscard .tp-businesscard-action {
    display:flex;
    min-height:49px;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:11px 17px 11px 19px;
    border:1px solid rgba(101,76,82,.18);
    border-radius:14px;
    background:#f7f1ee;
    color:#654c52;
    font-size:13px;
    font-weight:700;
    line-height:1.2;
    text-decoration:none;
    transition:transform .16s ease,background .16s ease;
}
.tp-page-businesscard .tp-businesscard-action:hover,
.tp-page-businesscard .tp-businesscard-action:focus-visible { transform:translateY(-1px); background:#f1e7e2; }
.tp-page-businesscard .tp-businesscard-action.is-primary {
    border-color:#654c52;
    background:#654c52;
    color:#fff;
}
.tp-page-businesscard .tp-businesscard-action.is-primary:hover,
.tp-page-businesscard .tp-businesscard-action.is-primary:focus-visible { background:#725b62; }
.tp-page-businesscard .tp-businesscard-reference-link {
    align-self:flex-start;
    margin:17px 0 19px;
    color:#80686e;
    font-size:11.5px;
    font-weight:700;
    text-decoration:none;
}
.tp-page-businesscard .tp-businesscard-reference-link:hover { text-decoration:underline; text-underline-offset:3px; }
.tp-page-businesscard .tp-businesscard-socials {
    display:flex;
    align-items:center;
    gap:8px;
}
.tp-page-businesscard .tp-businesscard-socials a {
    display:grid;
    width:35px;
    height:35px;
    place-items:center;
    border:1px solid rgba(101,76,82,.13);
    border-radius:50%;
    background:#f7f1ee;
    color:#654c52;
    transition:transform .16s ease,background .16s ease;
}
.tp-page-businesscard .tp-businesscard-socials a:hover { transform:translateY(-1px); background:#f1e7e2; }
.tp-page-businesscard .tp-businesscard-socials svg { width:17px; height:17px; }
.tp-page-businesscard .tp-businesscard-legal {
    display:flex;
    gap:7px;
    margin-top:20px;
    color:#9a858a;
    font-size:9.5px;
}
.tp-page-businesscard .tp-businesscard-legal a { text-decoration:none; }
.tp-page-businesscard .tp-businesscard-legal a:hover { text-decoration:underline; }

@media (max-width:760px) {
    .tp-page-linkhub .tp-linkhub-main { padding:10px; }
    .tp-page-linkhub .tp-linkhub-card { padding:15px 14px 11px; border-radius:20px; }
    .tp-page-linkhub .tp-linkhub-intro { margin-bottom:10px; }
    .tp-page-linkhub .tp-linkhub-avatar { width:56px; height:56px; margin-bottom:5px; }
    .tp-page-linkhub .tp-linkhub-logo { width:min(175px,55vw); }
    .tp-page-linkhub .tp-linkhub-links { gap:6px; }
    .tp-page-linkhub .tp-linkhub-button { min-height:41px; padding:8px 13px 8px 15px; border-radius:12px; font-size:12.5px; }
    .tp-page-linkhub .tp-linkhub-affiliate { margin-top:7px; font-size:8.5px; }

    .tp-page-businesscard .tp-businesscard-main { display:block; padding:12px; }
    .tp-page-businesscard .tp-businesscard-card {
        display:block;
        width:min(100%,560px);
        min-height:0;
        margin:0 auto;
        border-radius:22px;
    }
    .tp-page-businesscard .tp-businesscard-visual { min-height:190px; max-height:230px; }
    .tp-page-businesscard .tp-businesscard-image { min-height:190px; height:230px; object-position:center 40%; }
    .tp-page-businesscard .tp-businesscard-image-placeholder { min-height:190px; }
    .tp-page-businesscard .tp-businesscard-logo { left:17px; bottom:15px; width:164px; padding:0; }
    .tp-page-businesscard .tp-businesscard-copy { padding:30px 25px 22px; }
    .tp-page-businesscard .tp-businesscard-copy h1 { font-size:37px; }
    .tp-page-businesscard .tp-businesscard-lead { margin:13px 0 19px; font-size:12.5px; line-height:1.55; }
    .tp-page-businesscard .tp-businesscard-actions { gap:7px; }
    .tp-page-businesscard .tp-businesscard-action { min-height:45px; border-radius:12px; font-size:12.5px; }
    .tp-page-businesscard .tp-businesscard-reference-link { margin:14px 0 15px; font-size:11px; }
    .tp-page-businesscard .tp-businesscard-legal { margin-top:15px; }
}

@media (max-height:690px) and (max-width:760px) {
    .tp-page-linkhub .tp-linkhub-main { padding:6px 9px; }
    .tp-page-linkhub .tp-linkhub-card { padding:10px 12px 8px; border-radius:18px; }
    .tp-page-linkhub .tp-linkhub-avatar { width:45px; height:45px; margin-bottom:2px; border-width:2px; }
    .tp-page-linkhub .tp-linkhub-logo { width:150px; margin-bottom:1px; }
    .tp-page-linkhub .tp-linkhub-intro { margin-bottom:7px; }
    .tp-page-linkhub .tp-linkhub-intro p { font-size:10.5px; }
    .tp-page-linkhub .tp-linkhub-links { gap:4px; }
    .tp-page-linkhub .tp-linkhub-button { min-height:37px; padding:7px 11px 7px 13px; border-radius:10px; font-size:11.5px; }
    .tp-page-linkhub .tp-linkhub-affiliate { margin:5px auto 3px; font-size:7.8px; line-height:1.2; }
    .tp-page-linkhub .tp-linkhub-footer { font-size:8.5px; }
}

@media (prefers-reduced-motion:reduce) {
    .tp-page-linkhub .tp-linkhub-button,
    .tp-page-businesscard .tp-businesscard-action,
    .tp-page-businesscard .tp-businesscard-socials a { transition:none!important; }
}


/* Version 1.39.4: legal visibility + transparent business card logo */


/* ========================================================================== 
   Version 1.39.5: September Final Feinschliff
   Tablet overflow + Sidebar, Newsletter Formulare, Startseitenkarten,
   Real Cookie Banner Attribution und weisses Logo auf der QR Kooperationsseite
   ========================================================================== */

/* Auf Tablet darf keine Seite minimal breiter als der Viewport werden. */
@media (min-width:701px) and (max-width:1100px) {
    html,
    body {
        max-width:100%;
        overflow-x:hidden;
    }
    @supports (overflow:clip) {
        html,
        body { overflow-x:clip; }
    }
}

/* Die Real Cookie Banner Attribution bleibt erreichbar, sitzt aber nicht mehr
   als lose Textzeile unter dem Footer. */
a[href*="devowl.io/de/wordpress-real-cookie-banner"] {
    position:fixed!important;
    z-index:240!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
    max-width:190px!important;
    min-height:0!important;
    margin:0!important;
    padding:4px 7px!important;
    border:1px solid rgba(101,76,82,.10)!important;
    border-radius:999px!important;
    background:rgba(255,254,253,.92)!important;
    color:#8d777d!important;
    box-shadow:0 3px 12px rgba(67,48,53,.08)!important;
    font-size:8px!important;
    font-weight:500!important;
    line-height:1.15!important;
    text-decoration:none!important;
    white-space:normal!important;
}

/* Tablet Sidebar: die vier kompakten Bereiche wieder als ruhiges Raster,
   statt als sehr lange, breite Einzelkarten untereinander. */
@media (min-width:701px) and (max-width:1050px) {
    .tp-redesign-article .tp-article-sidebar {
        width:min(100%,860px)!important;
        margin:34px auto 0!important;
    }
    .tp-redesign-article .tp-article-sidebar-inner {
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:14px!important;
        align-items:start!important;
    }
    .tp-redesign-article .tp-coffee-card,
    .tp-redesign-article .tp-sidebar-planning {
        height:auto!important;
        align-self:start!important;
    }
    .tp-redesign-article .tp-sidebar-widgets {
        grid-column:1/-1;
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:14px!important;
        align-items:start!important;
    }
    .tp-redesign-article .tp-sidebar-widgets .widget {
        min-width:0!important;
        height:auto!important;
        align-self:start!important;
    }
}

/* Newsletter Anmeldung: Kontrast im Brevo Formular explizit festlegen, damit
   Label, Checkboxtext und Eingabefeld auf Desktop, Tablet und Mobil klar bleiben. */
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container {
    padding:20px!important;
    border-radius:6px!important;
    background:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .entry__label,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-form-block p,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-form-block label,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .entry__choice,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-checkbox-group,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-checkbox-group span {
    color:#fff!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-checkbox-group a,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .sib-form-block a {
    color:#f4e6ea!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .entry__field,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content .entry__field input,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content input[type="email"],
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content input[type="text"] {
    background:#fffefd!important;
    color:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content input::placeholder,
.tp-redesign-home .tp-newsletter-form input::placeholder,
.tp-redesign-article .tp-sidebar-widgets input::placeholder {
    color:#846e74!important;
    opacity:1!important;
}

/* Auf beiden Abmeldeseiten bleibt das eigentliche Eingabefeld sichtbar und
   wird optisch eindeutig vom Button getrennt. Die Reihenfolge wird zusätzlich
   im Newsletter Script korrigiert, falls Brevo altes Markup anders ausliefert. */
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input[type="email"],
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input[type="text"],
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-content input[type="email"],
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-content input[type="text"] {
    display:block!important;
    margin:0 0 10px!important;
    background:#fffefd!important;
    color:#654C52!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input[type="submit"],
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content button[type="submit"],
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-content input[type="submit"],
.tp-page-newsletter .tp-newsletter-unsubscribe-success-page .tp-newsletter-flow-content button[type="submit"] {
    margin-top:0!important;
}

/* Desktop Startseite: Artikel und Über mich Karten nur so hoch wie ihr Inhalt. */
@media (min-width:1281px) {
    .tp-redesign-home .tp-latest-layout {
        align-items:start!important;
    }
    .tp-redesign-home .tp-latest-main,
    .tp-redesign-home .tp-article-slider {
        height:auto!important;
    }
    .tp-redesign-home .tp-article-slider {
        align-items:flex-start!important;
    }
    .tp-redesign-home .tp-article-card {
        height:auto!important;
        align-self:flex-start!important;
    }
    .tp-redesign-home .tp-article-copy {
        flex:0 0 auto!important;
    }
    .tp-redesign-home .tp-about-note {
        height:auto!important;
        min-height:0!important;
        align-self:flex-start!important;
    }
    .tp-redesign-home .tp-about-note-image {
        flex:none!important;
        height:210px!important;
    }
    .tp-redesign-home .tp-about-note-copy {
        display:block!important;
        flex:none!important;
    }
    .tp-redesign-home .tp-about-note-links {
        margin-top:17px!important;
        padding-top:0!important;
    }
}

/* QR Kooperationsseite: Logo direkt auf dem Foto als klare weisse Variante. */
.tp-page-businesscard .tp-businesscard-logo img {
    filter:brightness(0) invert(1) drop-shadow(0 2px 8px rgba(45,30,34,.28));
}

/* ========================================================================== 
   Version 1.39.6: September Final Final Feinschliff
   Newsletter Kontrast + Abmeldeformular, gleich hohe Startseitenkarten,
   Real Cookie Banner Attribution auf allen Layouts als Mini Button
   ========================================================================== */

/* Newsletter Anmeldung: Der Zustimmungsblock von Brevo kann eigene Inline
   Farben mitbringen. Diese Regeln sind die CSS Rueckfalle; das Newsletter
   Script setzt den Kontrast zusaetzlich direkt am geladenen Formular. */
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container label,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container label span,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .entry__choice,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .entry__choice span,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .sib-checkbox-group,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .sib-checkbox-group span {
    color:#fff!important;
}
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container label a,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .entry__choice a,
.tp-page-newsletter .tp-newsletter-signup-page .tp-newsletter-original-content #sib-container .sib-checkbox-group a {
    color:#f8edf0!important;
    text-decoration:underline!important;
    text-underline-offset:2px!important;
}

/* Abmeldung: E Mail Feld eindeutig kennzeichnen und vor dem Button halten. */
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input[type="email"],
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input[type="text"] {
    margin-top:0!important;
    margin-bottom:10px!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content input::placeholder {
    color:#927b82!important;
    opacity:1!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-email-label {
    display:block!important;
    margin:0 0 7px!important;
    color:#654C52!important;
    font-size:13px!important;
    font-weight:600!important;
    line-height:1.4!important;
}

/* Desktop Startseite: kompakt wie in 1.39.5, aber die drei sichtbaren
   Artikelkarten und die Ueber mich Karte enden wieder auf einer Linie. */
@media (min-width:1281px) {
    .tp-redesign-home .tp-latest-layout {
        align-items:stretch!important;
    }
    .tp-redesign-home .tp-latest-main {
        display:flex!important;
        min-height:0!important;
        height:auto!important;
    }
    .tp-redesign-home .tp-article-slider {
        flex:1 1 auto!important;
        height:auto!important;
        align-items:stretch!important;
    }
    .tp-redesign-home .tp-article-card {
        height:auto!important;
        align-self:stretch!important;
    }
    .tp-redesign-home .tp-article-copy {
        flex:1 1 auto!important;
    }
    .tp-redesign-home .tp-about-note {
        height:auto!important;
        min-height:0!important;
        align-self:stretch!important;
        display:flex!important;
        flex-direction:column!important;
    }
    .tp-redesign-home .tp-about-note-image {
        flex:0 0 210px!important;
        height:210px!important;
        min-height:0!important;
    }
    .tp-redesign-home .tp-about-note-copy {
        display:flex!important;
        flex:1 1 auto!important;
        flex-direction:column!important;
    }
    .tp-redesign-home .tp-about-note-links {
        margin-top:auto!important;
        padding-top:17px!important;
    }
}

/* Real Cookie Banner Credit: wird vom global geladenen UI Script erkannt und
   auf allen Seiten identisch als dezenter Mini Button positioniert. */
a[data-tp-cookie-credit="true"] {
    position:fixed!important;
    z-index:240!important;
    top:auto!important;
    left:auto!important;
    right:10px!important;
    bottom:10px!important;
    display:inline-flex!important;
    width:auto!important;
    max-width:190px!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:4px 7px!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(101,76,82,.12)!important;
    border-radius:999px!important;
    background:rgba(255,254,253,.94)!important;
    color:#8d777d!important;
    box-shadow:0 3px 12px rgba(67,48,53,.08)!important;
    font-size:8px!important;
    font-weight:500!important;
    line-height:1.15!important;
    text-align:center!important;
    text-decoration:none!important;
    white-space:normal!important;
}
@media (max-width:767px) {
    a[data-tp-cookie-credit="true"] {
        right:8px!important;
        bottom:8px!important;
        max-width:170px!important;
        font-size:7.5px!important;
    }
}



/* ========================================================================== 
   Version 1.39.7: Newsletter Abmeldung + Kategorie Tablet Feinschliff
   ========================================================================== */

/* Abmeldeformular: Brevo liefert je nach Formularstand unterschiedliche
   Wrapper. Die JS Logik markiert die relevanten Einheiten; diese Regeln
   stellen sicher, dass das E Mail Feld immer vor dem Button steht. */
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-reorder-root {
    display:flex!important;
    flex-direction:column!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-email-unit {
    order:1!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-submit-unit {
    order:2!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-email-unit input:not([type="hidden"]) {
    margin:0!important;
}
.tp-page-newsletter .tp-newsletter-unsubscribe-form-page .tp-newsletter-flow-content .tp-newsletter-email-unit input::placeholder {
    color:#927b82!important;
    opacity:1!important;
}

/* Tablet Kategorie: Bild und Einleitung bleiben zweispaltig. Die beiden
   Infobloecke darunter nutzen bewusst die komplette Inhaltsbreite. */
@media (min-width:768px) and (max-width:1100px) {
    .tp-redesign-category .tp-category-hero-grid {
        grid-template-areas:
            "image copy"
            "info info";
        align-items:start!important;
    }
    .tp-redesign-category .tp-category-hero-grid.tp-category-no-image {
        grid-template-columns:minmax(0,900px);
        grid-template-areas:"copy" "info";
    }
    .tp-redesign-category .tp-category-bubble-wrap {
        align-self:start!important;
        padding-top:4px;
    }
    .tp-redesign-category .tp-category-info-grid {
        width:100%;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:clamp(34px,6vw,64px);
        margin-top:32px;
        padding-top:28px;
    }
    .tp-redesign-category .tp-category-info-grid.tp-category-info-single {
        grid-template-columns:minmax(0,1fr);
        max-width:none;
    }
}
