/*!
Theme Name: Reiseveranstalter 2026 – Horizont
Theme URI: https://www.reiseveranstalter.com
Author: Triplemind GmbH
Author URI: https://www.triplemind.com
Description: Relaunch-Theme "Horizont" für reiseveranstalter.com – das unabhängige Bewertungsportal für Reiseveranstalter. Frisches Design (Ozean-Türkis + Koralle), erhält review-plugin, Veranstalter-Dashboard und Bewertungslogik vollständig.
Version: 2.0.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: reiseveranstaler
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* ============================================================
   HORIZONT — Design-System
   ============================================================ */
:root{
  --sea:#0a8ea0; --sea2:#076f7e; --sea-soft:#e0f5f7; --coral:#ff6b4a; --coral2:#e8502f;
  --sun:#ffb020; --ink:#122a2f; --ink2:#4a6870; --line:#e0ebed; --card:#fff; --bg:#f2fafb;
  --gold:#ffb020; --star-empty:#cfe3e6; --ok:#0f9d6b; --danger:#e8502f;
  --shadow-sm:0 10px 24px rgba(7,111,126,.10);
  --shadow-md:0 22px 44px rgba(7,111,126,.14);
  --radius:20px;
}

*{box-sizing:border-box}

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"Hanken Grotesk",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:17px;
  line-height:1.6;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,.disp{
  font-family:"Bricolage Grotesque",system-ui,sans-serif;
  font-weight:800;
  line-height:1.1;
  letter-spacing:-.02em;
  color:var(--ink);
}

a{color:var(--sea2);text-decoration:none}
a:hover{color:var(--sea)}
.primary-color{color:var(--sea2)!important}
.primary-color:hover{color:var(--coral)!important}
img{max-width:100%;height:auto;vertical-align:middle;border:0}
.mono{font-variant-numeric:tabular-nums}
hr{border:0;border-top:1px solid var(--line);margin:22px 0}

/* Container-Feinschliff (Bootstrap-Grid bleibt aktiv) */
.container{max-width:1180px}

/* ============================================================
   Sterne — CSS-Mask (Horizont) für eigene Komponenten
   ============================================================ */
.stars{
  display:inline-block;width:6.2em;height:1.15em;vertical-align:middle;
  background:linear-gradient(90deg,var(--gold) calc(var(--v)/5*100%),var(--star-empty) 0);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2l2.9 6.3 6.9.7-5.2 4.6 1.5 6.8L12 17.8 5.9 20.4l1.5-6.8L2.2 9l6.9-.7z'/></svg>") left/1.24em 100% repeat-x;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2l2.9 6.3 6.9.7-5.2 4.6 1.5 6.8L12 17.8 5.9 20.4l1.5-6.8L2.2 9l6.9-.7z'/></svg>") left/1.24em 100% repeat-x;
}

/* Bestehende PNG-Sterne (render_rating_star) – Größen bleiben nutzbar */
.rating_stars_display{display:inline-flex;gap:2px;line-height:0}
.rating_stars_display_large img{width:38px;height:auto}
.rating_stars_display_medium img{width:28px;height:auto}
.rating_stars_display_small img{width:18px;height:auto}
@media (max-width:991px){.rating_stars_display img{width:24px}}

/* ============================================================
   Header
   ============================================================ */
.primary-header{
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);
  padding:14px 0;
  border-bottom:1px solid var(--line);
}
.primary-header img.custom-logo{max-width:100%;height:auto}
.header_logo img{max-height:52px;width:auto}

.header_search_form .input-group{
  background:#fff;border:2px solid var(--sea-soft);border-radius:26px;overflow:hidden;
}
.header_search_form .form-control{
  border:0;box-shadow:none;padding:11px 18px;font-size:15px;background:transparent;
}
.header_search_form .form-control:focus{box-shadow:none;outline:none}
.header_search_form .btn,
.header_search_form .btn-pink{
  border-radius:0 24px 24px 0!important;background:var(--sea)!important;border:0!important;color:#fff!important;padding:0 18px;
}
.header_search_form .btn:hover{background:var(--sea2)!important}

.header_action{
  background:var(--coral)!important;border:0!important;color:#fff!important;
  border-radius:24px!important;font-weight:700;padding:12px 20px;
  box-shadow:0 8px 20px rgba(255,107,74,.32);
}
.header_action:hover{background:var(--coral2)!important;color:#fff!important}

/* Secondary nav bar */
.secondary-header{
  background:var(--ink);
  background:linear-gradient(90deg,var(--sea2),var(--sea));
}
.main-navigation{margin:0;padding:0;list-style:none;width:100%;text-align:center}
.main-navigation ul.primary-menu{margin:0;padding:0;list-style:none;text-align:left;display:flex;flex-wrap:wrap;gap:2px}
.main-navigation ul.primary-menu li{margin:0;list-style:none}
.main-navigation ul li a{
  color:#eafafb;font-weight:600;font-size:15px;line-height:1.2;text-decoration:none;
  white-space:nowrap;position:relative;display:flex;align-items:center;padding:15px 16px;transition:.15s;
}
.main-navigation ul.primary-menu>li:hover{background:rgba(255,255,255,.12)}
.main-navigation ul li a:hover{color:#fff}
.main-navigation ul.sub-menu{margin:0;padding:6px 0;list-style:none;position:absolute;display:none;z-index:100;min-width:210px;box-shadow:var(--shadow-md);border-radius:0 0 14px 14px}
.main-navigation ul.primary-menu li ul.sub-menu{right:auto;left:0;top:100%;background:var(--sea2)}
.main-navigation ul.primary-menu li ul.sub-menu li ul.sub-menu{right:100%;top:0;background:var(--sea2)}
.main-navigation ul.primary-menu li ul.sub-menu li>a{font-size:14px;font-weight:500;padding:8px 16px}
.main-navigation ul.primary-menu li ul.sub-menu li{padding:0}
.main-navigation ul.primary-menu li ul.sub-menu li:hover{background:rgba(255,255,255,.12)}
.main-navigation li{display:inline-block;position:relative;text-align:left}
.main-navigation li:hover>ul.sub-menu{display:block}
.main-navigation li li{display:block}
i.fas.fa-sort-down.sub-menu-icon{margin-left:5px}
i.fas.fa-sort-up.sub-menu-icon{display:none}

#show-menu{
  display:none;background:var(--coral);color:#fff;border:0;border-radius:22px;
  font-weight:700;padding:9px 20px;margin:8px 0;
}
#mobile-menu{background:var(--sea2)}
#mobile-menu a{color:#eafafb}

/* ============================================================
   Buttons
   ============================================================ */
.btn{border-radius:24px;font-weight:700;font-family:"Hanken Grotesk",sans-serif}
.btn-pink,.btn-warning{
  background-color:var(--coral);color:#fff;border-color:var(--coral);
  box-shadow:0 8px 20px rgba(255,107,74,.28);
}
.btn-pink:hover,.btn-warning:hover{background-color:var(--coral2);border-color:var(--coral2);color:#fff}
.btn-secondary{background-color:#fff;color:var(--sea2);border:2px solid var(--sea-soft)}
.btn-secondary:hover{background-color:var(--sea-soft);color:var(--sea2);border-color:var(--sea-soft)}
.btn-primary{background-color:var(--sea);border-color:var(--sea)}
.btn-primary:hover{background-color:var(--sea2);border-color:var(--sea2)}
.btn.btn-arrow:after{content:"\2192";display:inline-block;padding-left:8px;font-weight:400}
.form-check-input:checked{background-color:var(--sea);border-color:var(--sea)}

/* ============================================================
   Blocks / Cards
   ============================================================ */
section{margin-bottom:22px}
.block-common{
  padding:26px;border-radius:var(--radius);border:1px solid var(--line);
  background:var(--card);box-shadow:var(--shadow-sm);
}
h2.block_title,.operator_review_detail p.block_title{
  background:transparent;color:var(--ink);padding:0 0 14px;margin:0 0 20px;
  border-bottom:2px solid var(--sea-soft);border-radius:0;
  font-size:22px;font-weight:800;letter-spacing:-.02em;
  position:relative;
}
h2.block_title:after{
  content:"";position:absolute;left:0;bottom:-2px;width:56px;height:2px;background:var(--coral);
}
@media(min-width:992px){h2.block_title{margin:0 0 20px}}

.category_block a{margin:5px 6px 0 0}
.ads{text-align:center;margin:8px 0}
.honeypot_block{display:none!important}

/* ============================================================
   Home – Hero
   ============================================================ */
.rv-hero{
  background:radial-gradient(1200px 500px at 80% -10%,#0aa6b8,transparent),linear-gradient(160deg,var(--sea),var(--sea2));
  color:#fff;padding:60px 0 118px;position:relative;overflow:hidden;border-radius:0 0 6px 6px;margin-bottom:26px;
}
.rv-hero .sun{position:absolute;right:8%;top:44px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,#ffd27a,var(--sun));box-shadow:0 0 90px rgba(255,176,32,.55)}
.rv-hero .wave{position:absolute;left:0;right:0;bottom:-1px;height:70px;background:var(--bg);clip-path:ellipse(75% 100% at 50% 100%)}
.rv-hero .eyebrow{display:inline-flex;gap:8px;align-items:center;background:rgba(255,255,255,.15);padding:7px 15px;border-radius:20px;font-size:13px;font-weight:700;letter-spacing:.04em;color:#fff}
.rv-hero .eyebrow svg{width:15px;height:15px;color:var(--sun)}
.rv-hero h1{color:#fff;font-size:clamp(34px,5.4vw,60px);margin:18px 0 14px;max-width:16ch}
.rv-hero p.lead{font-size:20px;color:#d6f2f5;max-width:56ch;margin:0 0 26px}
.rv-hero .rv-search{background:#fff;border-radius:20px;padding:8px;display:flex;gap:8px;max-width:620px;box-shadow:0 24px 50px rgba(7,111,126,.35)}
.rv-hero .rv-search input{flex:1;border:0;padding:15px 18px;font-size:17px;font-family:inherit;color:var(--ink);background:transparent}
.rv-hero .rv-search input:focus{outline:none}
.rv-hero .rv-search .btn{background:var(--coral);color:#fff;border:0;white-space:nowrap;box-shadow:none}
.rv-hero .rv-search .btn:hover{background:var(--coral2)}
.rv-hero .facts{display:flex;gap:34px;flex-wrap:wrap;margin-top:26px;color:#d6f2f5}
.rv-hero .facts b{font-family:"Bricolage Grotesque";font-size:28px;display:block;color:#fff}
.rv-hero .facts span{font-size:14px}

.kicker{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin:0 0 6px}

/* Home – Dankeschön / Value */
.our_thanks_block ul li{padding:0 0 10px 0;list-style:none;display:flex;gap:10px;align-items:flex-start}
.our_thanks_block ul li i{color:var(--coral)}
.our_thanks_block .list-unstyled li:before{content:none}

/* Notice / Willkommen */
.notice_block h1.notice_block__title,
.notice_block .notice_block__title{font-size:clamp(26px,3vw,34px);margin:0 0 14px}
.notice_block.block-common p{color:var(--ink2)}
.notice_block h2{font-size:22px;margin:22px 0 10px}

/* ============================================================
   Operator-Listen-Card (block-tour-operator.php)
   ============================================================ */
.operator_block{
  padding:20px;border:1px solid var(--line);border-bottom:1px solid var(--line);
  border-radius:16px;margin-bottom:14px;background:#fff;transition:.16s;align-items:center;
}
.operator_block:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.operator_block:last-child{border-bottom:1px solid var(--line)}
.operator_logo img{min-height:44px;max-height:96px;width:auto;max-width:100%;object-fit:contain}
.operator_name h2.h6,.operator_name .h6{font-size:19px;margin:6px 0 0}
.operator_name h2.h6 a{color:var(--ink)}
.operator_name h2.h6 a:hover{color:var(--coral)}
.operator_rating p{margin:4px 0 0;font-size:14px;color:var(--ink2)}
.operator_rating .rv-score{font-family:"Bricolage Grotesque";font-size:30px;color:var(--sea2);line-height:1}

/* ============================================================
   Veranstalter-Profil (single-tour_operator.php)
   ============================================================ */
.operator_overall_rating.block-common{padding:0;overflow:hidden;border-radius:26px}
.operator_overall_rating .pf-top{
  padding:30px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
  background:linear-gradient(120deg,var(--sea-soft),#fff);
}
.operator_overall_rating .pf-top h1{font-size:clamp(28px,4vw,40px);margin:0 0 8px}
.operator_overall_rating .verf{display:inline-flex;gap:6px;align-items:center;background:#dff5ec;color:var(--ok);font-weight:700;font-size:13px;padding:5px 12px;border-radius:20px;margin-bottom:10px}
.operator_overall_rating .verf svg{width:14px;height:14px}
.operator_overall_rating .pf-meta{color:var(--ink2);font-size:15px;margin:0}
.bigscore{background:var(--sea);color:#fff;border-radius:20px;padding:20px 30px;text-align:center;min-width:160px}
.bigscore b{font-family:"Bricolage Grotesque";font-size:52px;line-height:.95;display:block}
.bigscore .of{opacity:.85;font-size:14px}
.bigscore .stars{--star-empty:rgba(255,255,255,.32);margin-top:8px}
.bigscore .cnt{display:block;margin-top:8px;font-size:13px;opacity:.9}

/* Teilnoten-Ringe */
.pf-sub{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;padding:26px 30px;background:#fff}
.pf-sub .c{text-align:center}
.pf-sub .ring{width:66px;height:66px;border-radius:50%;margin:0 auto 8px;background:conic-gradient(var(--sea) calc(var(--p)*1%),var(--sea-soft) 0);display:grid;place-items:center}
.pf-sub .ring i{width:50px;height:50px;background:#fff;border-radius:50%;display:grid;place-items:center;font-family:"Bricolage Grotesque";font-style:normal;font-weight:800;color:var(--sea2);font-size:17px}
.pf-sub span{font-size:12.5px;color:var(--ink2);line-height:1.25;display:block}

/* Bewertungs-Verteilung */
.operator_rating_detail.custom_progress{max-width:100%}
.custom_progress .test_rating{display:block;text-decoration:none;margin-bottom:10px}
.custom_progress .progress{
  height:26px;background:var(--sea-soft);border-radius:8px;overflow:hidden;position:relative;margin-bottom:0;
}
.operator_rating_detail .progress{background:var(--sea-soft)}
.custom_progress .progress-bar,
.custom_progress .progress-bar.bg-warning{
  background:linear-gradient(90deg,var(--sea),var(--coral))!important;
}
.progress_bar_text{font-size:13px;font-weight:600;color:var(--ink);line-height:26px}
.custom_progress .progress_bar_text small{color:var(--ink2);font-weight:500}

.operator_about_block h2,.operator_contact_block h2,
.operator_news_block h2,.operator_reviews_block h2{font-size:24px;margin-bottom:14px}
.operator_active img{max-height:30px;width:auto}

/* Kontaktblock */
.operator_contact_block b{color:var(--ink)}
.operator_contact_block iframe{border-radius:14px;min-height:220px}

/* ============================================================
   Review-Card (block-to-review.php / comments.php)
   ============================================================ */
.operator_review{margin:0 auto!important}
.operator_review_detail{
  border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:16px;background:#fff;
}
.operator_review_detail.border-success{border-color:var(--ok);box-shadow:0 0 0 1px var(--ok) inset}
.operator_review_detail:last-of-type{margin-bottom:0}
.operator_review_detail p.block_title.operator_review_detail_date{
  background:transparent;color:var(--ink2);padding:0 0 6px;margin:0 0 12px;border:0;font-size:14px;font-weight:600;
}
.operator_review_detail p.block_title.operator_review_detail_date:after{content:none}
.operator_review_detail p.block_title b{color:var(--ink);font-weight:800}
.operator_review_detail_date .text-success{color:var(--ok)!important}
.operator_review_detail_comment{font-size:16px;color:var(--ink);margin:0 0 14px}

/* Steckbrief-Chips statt disabled inputs */
.operator_review_detail_selection_grid{margin:0 0 6px}
.operator_review_detail_selection_grid .form-group{margin-bottom:12px}
.operator_review_detail_selection_grid label{
  font-size:11px!important;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink2);margin-bottom:3px;display:block;
}
.operator_review_detail_selection_grid input.form-control{
  font-size:14px!important;border:0;background:var(--sea-soft);color:var(--sea2);
  border-radius:16px;padding:6px 12px;font-weight:600;height:auto;opacity:1;width:auto;min-width:100%;
}
.operator_review_detail_selection_grid input.form-control:disabled{background:var(--sea-soft);color:var(--sea2)}
.operator_review_detail_selection_grid input.form-control-success{background:#dff5ec;color:var(--ok)}
.operator_review_detail_selection_grid input.form-control-danger{background:#ffe6df;color:var(--coral2)}
.operator_review_detail .label_equal_height{display:block;min-height:2.6em;font-size:12px;color:var(--ink2)}
.operator_review_detail h5{font-size:16px;margin:16px 0 8px}
.operator_review_detail b{font-size:15px}

/* Veranstalter-Antwort (Stellungnahme) */
.block_reply_review{
  background:var(--bg);border-left:4px solid var(--sun);border-radius:0 14px 14px 0;
  padding:16px 20px;margin-top:18px;
}
.block_reply_review .operator_logo{flex-direction:row!important;align-items:center;gap:12px}
.block_reply_review .operator_logo img{max-height:40px;width:auto}
.block_reply_review b{color:var(--sea2);font-size:14px}
.block_reply_review__content{color:var(--ink);font-style:italic;margin-top:8px!important}

/* Kommentarformular */
.comment-form label,.form-group label{font-weight:700;color:var(--ink)}
.comment-form .information_block .row{margin-top:10px}
#write_review .block_title{font-size:22px}

/* ============================================================
   News
   ============================================================ */
.news_block{
  padding:18px;border:1px solid var(--line);border-radius:16px;margin-bottom:14px;background:#fff;
  align-items:center;transition:.16s;
}
.news_block:hover{box-shadow:var(--shadow-sm)}
.news_block:last-of-type{border-bottom:1px solid var(--line)}
.news_block__img img{border-radius:12px;width:100%;object-fit:cover}
.news_block .news_list_title{font-size:19px;font-weight:800;margin:0 0 4px}
.news_block .news_list_title a{color:var(--ink)}
.news_block .news_list_title a:hover{color:var(--coral)}
.news__block_date{font-size:13px;color:var(--ink2);margin:0 0 6px}
.news_block p{color:var(--ink2);font-size:15px}
.post-header{color:var(--ink)}

/* ============================================================
   Pauschalreiserecht-Teaser (Home)
   ============================================================ */
.rv-law{
  background:linear-gradient(135deg,var(--sea2),var(--sea));color:#eafafb;border-radius:26px;
  padding:44px;display:grid;grid-template-columns:1.1fr 1fr;gap:38px;align-items:center;overflow:hidden;
}
.rv-law h2{color:#fff;font-size:30px;margin:6px 0 12px}
.rv-law p{color:#c4ebef;margin:0 0 6px}
.rv-law .kicker{color:var(--sun)}
.rv-law .list{display:grid;gap:12px}
.rv-law .list a{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.1);padding:15px 16px;border-radius:14px;color:#fff;text-decoration:none;font-weight:600}
.rv-law .list a:hover{background:rgba(255,255,255,.18);color:#fff}
.rv-law .list svg{width:20px;height:20px;color:var(--sun);flex:none}
.rv-trust{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:26px}
.rv-trust .t{display:flex;gap:9px;align-items:center;background:#fff;border:1px solid var(--line);padding:12px 18px;border-radius:16px;font-weight:600;font-size:14px;color:var(--ink2)}
.rv-trust .t svg{width:20px;height:20px;color:var(--sea)}

/* ============================================================
   Breadcrumbs
   ============================================================ */
.breadcumbs .container{
  padding:10px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;
  margin-top:14px;margin-bottom:6px;box-shadow:none;filter:none;
}
.breadcumbs .breadcrumb{margin-bottom:0;font-size:14px}
.breadcumbs a{color:var(--sea2)}

/* ============================================================
   Dashboard (page-rv-dashboard.php)
   ============================================================ */
.to_dashboard_block h2{font-size:28px;margin-bottom:20px}
.to_dashboard_block__detail .nav{padding-left:0}
.to_dashboard_block__detail .nav-tabs{border-bottom:2px solid var(--sea-soft);gap:4px}
.to_dashboard_block__detail .nav-tabs .nav-link{
  border:0;border-radius:14px 14px 0 0;color:var(--ink2);font-weight:700;padding:12px 20px;
}
.to_dashboard_block__detail .nav-tabs .nav-link.active{background:var(--sea);color:#fff}
.to_dashboard_block__detail .tab-content .fade{opacity:1}
ul.dashboard_block__filter{margin:0;gap:6px;flex-wrap:wrap}
ul.dashboard_block__filter li{padding:6px 10px;border:1px solid var(--line);border-radius:20px}
ul.dashboard_block__filter li a{font-size:13px}
.dashboard_block__filter>.active{background:var(--sea);border-color:var(--sea)}
.dashboard_block__filter>.active>a.primary-color{color:#fff!important}
.to_review_item .accordion-header,.to_review_item .accordion-collapse{border:1px solid var(--line);border-radius:12px}

/* ============================================================
   Footer
   ============================================================ */
.site-footer{background:#0b2a2f;color:#a9cdd2;margin-top:40px;padding:0}
.site-footer .footer_inner{padding:34px 10px;font-size:15px;text-align:center;border-radius:0}
.site-footer a{color:#eafafb}
.footer-menu{margin:14px 0 0;padding:0;list-style:none;width:100%}
.footer-menu ul{margin:0;padding:0;list-style:none}
.footer-menu ul li{margin:0;padding:0 10px;list-style:none;display:inline;border-right:1px solid #2b565c}
.footer-menu ul li:last-child{border-right:0}
.footer-menu ul li a{color:#eafafb;text-decoration:none;white-space:nowrap}
.footer-menu ul li a:hover{color:var(--sun)}

/* ============================================================
   Seal-Code-Blöcke
   ============================================================ */
div.code,div.to-code{border:1px solid var(--line);padding:14px;margin:20px 0;background:#f6fbfc;border-radius:12px;font-size:.95em;word-break:break-all}

/* ============================================================
   404
   ============================================================ */
.error-template{padding:48px 15px;text-align:center}
.error-actions{margin:16px 0}
.error-actions .btn{margin-right:10px}

/* Caption / Alignments */
.alignnone,a img.alignnone{margin:0 0 20px 0}
.aligncenter,a img.aligncenter{display:block;margin:0 auto 20px}
.alignright,a img.alignright{float:right;margin:0 0 20px 20px}
.alignleft,a img.alignleft{float:left;margin:0 20px 20px 0}
.wp-caption{background:#fff;border:1px solid var(--line);border-radius:12px;max-width:96%;padding:6px 4px 10px;text-align:center}
.wp-caption img{border-radius:8px}

/* ============================================================
   Responsive
   ============================================================ */
.mobile{overflow:auto;-webkit-overflow-scrolling:touch}
@media (max-width:840px){
  .operator_overall_rating .pf-top{grid-template-columns:1fr}
  .pf-sub{grid-template-columns:repeat(3,1fr)}
  .rv-law{grid-template-columns:1fr;padding:28px}
}
@media (max-width:768px){
  #desktop-site-navigation{display:none}
  #show-menu{display:inline-block}
  .block-common{padding:18px}
  .rv-hero{padding:44px 0 90px}
}
@media (max-width:575px){
  .current_ratting_block{margin-bottom:15px}
  .pf-sub{grid-template-columns:repeat(2,1fr)}
  .rv-hero .facts{gap:22px}
  .search_result_block{text-align:center}
}
@media (min-width:576px) and (max-width:767px){
  #desktop-site-navigation{display:none}
  .current_ratting_block{margin-bottom:15px}
}

/* ---- Autosuggest Freitextsuche (Veranstalter) ---- */
.rv-ac-wrap{position:relative}
.rv-ac-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1050;background:#fff;border:1px solid #e6dde3;border-radius:10px;box-shadow:0 14px 34px rgba(30,20,30,.18);overflow:hidden;max-height:360px;overflow-y:auto;text-align:left}
.rv-ac-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px;text-decoration:none;color:#2a2330;border-bottom:1px solid #f3eef1}
.rv-ac-item:last-child{border-bottom:0}
.rv-ac-item:hover,.rv-ac-item[aria-selected=true]{background:#fdeef4}
.rv-ac-name{font-weight:600;font-size:16px;line-height:1.3}
.rv-ac-rate{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:#7d7480;white-space:nowrap}
.rv-ac-star{width:15px;height:15px;fill:#f2a30a;flex:none}
.rv-ac-new{font-size:13px;color:#a99fb0;white-space:nowrap}
.rv-ac-empty{padding:12px 15px;color:#7d7480;font-size:15px}

/* Betreiber-Login-Hinweis auf Veranstalter-Steckbrief */
.rv-owner-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff6f9;border:1px solid #f3d4e0;border-radius:14px;padding:15px 20px;margin:14px auto}
.rv-owner-cta span{font-size:16px;color:#33272c;line-height:1.5}
.rv-owner-cta .btn{white-space:nowrap;flex:none}
/* ===== Veranstalter-Eintrag übernehmen (Claim) ===== */
.rv-claim{max-width:720px;margin:10px 0}
.rv-claim-field{margin:0 0 18px;position:relative}
.rv-claim label{display:block;font-weight:700;margin-bottom:6px;color:#1a1520}
.rv-claim input[type=text],.rv-claim input[type=email]{width:100%;padding:13px 14px;font-size:16px;border:2px solid #e6dde3;border-radius:11px;background:#fff;font-family:inherit}
.rv-claim input:focus{outline:3px solid #ee6aa0;outline-offset:1px;border-color:#ee6aa0}
.rv-claim-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 20px}
.rv-claim .req{color:#c0392b;font-weight:800}
.rv-claim .rv-hint{display:block;font-size:13px;color:#7d7480;margin-top:5px;font-weight:400;line-height:1.5}
.rv-claim-op{display:flex;gap:12px;align-items:center;justify-content:space-between;background:#f7f2f5;border:1px solid #e6dde3;border-radius:11px;padding:12px 15px;font-size:17px}
.rv-claim-op a{font-size:14px}
.rv-consent{margin:0 0 14px}
.rv-consent label{font-weight:400;display:flex;gap:9px;align-items:flex-start;font-size:15px;line-height:1.5;color:#33272c}
.rv-consent input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:#1f8a70}
.rv-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rv-claim-ac{position:absolute;top:100%;left:0;right:0;z-index:50;background:#fff;border:1px solid #e0d6dd;border-radius:10px;box-shadow:0 12px 30px rgba(20,15,25,.16);max-height:300px;overflow:auto}
.rv-claim-ac a{display:block;padding:11px 15px;text-decoration:none;color:#2a2330;border-bottom:1px solid #f2edf0;font-weight:600}
.rv-claim-ac a:last-child{border-bottom:0}.rv-claim-ac a:hover{background:#fdeef4}
.rv-note{border-radius:12px;padding:16px 20px;margin:0 0 18px;font-size:16px;line-height:1.55}
.rv-note h3{margin:0 0 8px;font-size:19px}
.rv-note-ok{background:#eaf6ee;border-left:5px solid #2e9e5b;color:#22502f}
.rv-note-warn{background:#fff6e6;border-left:5px solid #e0a028;color:#6b4e12}
.rv-note-err{background:#fdecec;border-left:5px solid #c0392b;color:#7a231b}
.rv-note-err ul{margin:8px 0 0 20px}
/* CTA auf Steckbrief: zwei Buttons */
.rv-owner-cta-btns{display:flex;gap:10px;flex-wrap:wrap;flex:none}
