:root {
  --rn-red: #e30613;
  --rn-ink: #17212b;
  --rn-muted: #66717c;
  --rn-line: #dfe4e8;
  --rn-mist: #f4f6f7;
  --rn-white: #fff;
  --rn-green: #178344;
  --rn-amber: #b76a00;
  --rn-radius: 18px;
}

.rn-directory,
.rn-status-form,
.rn-profile-details { box-sizing: border-box; color: var(--rn-ink); }
.rn-directory *, .rn-status-form *, .rn-profile-details * { box-sizing: border-box; }
.rn-directory { width: min(1280px, calc(100% - 32px)); margin: 40px auto 80px; }
.rn-directory__intro { max-width: 780px; margin-bottom: 28px; }
.rn-directory__intro h2 { margin: 4px 0 10px; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.04; }
.rn-directory__eyebrow { color: var(--rn-red); font-weight: 750; letter-spacing: .08em; text-transform: uppercase; font-size: .8rem; }

.rn-search { padding: 22px; background: var(--rn-ink); color: #fff; border-radius: var(--rn-radius); box-shadow: 0 18px 50px rgba(23,33,43,.14); }
.rn-search label { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.rn-search label > span { font-size: .82rem; font-weight: 700; }
.rn-search input[type="search"], .rn-search input[type="date"], .rn-search input[type="number"], .rn-search select, .rn-status-form select, .rn-status-form textarea { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.32); border-radius: 9px; background: #fff; color: var(--rn-ink); font: inherit; }
.rn-search__primary { display: grid; grid-template-columns: minmax(220px, 1.5fr) minmax(180px, 1fr) minmax(150px, .7fr) auto auto; gap: 14px; align-items: end; }
.rn-search button, .rn-status-form button, .rn-pagination button, .rn-button { min-height: 48px; padding: 12px 20px; border: 1px solid var(--rn-red); border-radius: 9px; background: var(--rn-red); color: #fff; font: inherit; font-weight: 750; cursor: pointer; text-decoration: none; display: inline-flex; justify-content: center; align-items: center; }
.rn-search button:hover, .rn-status-form button:hover, .rn-button:hover { background: #b9000b; color: #fff; }
.rn-search .rn-button--reset { border-color: rgba(255,255,255,.55); background: transparent; color: #fff; }
.rn-search .rn-button--reset:hover { background: rgba(255,255,255,.12); }
.rn-search select:disabled { opacity: .6; cursor: not-allowed; }
.rn-search label small { color: rgba(255,255,255,.76); line-height: 1.35; }
.rn-search__filters { margin-top: 18px; border-top: 1px solid rgba(255,255,255,.2); padding-top: 13px; }
.rn-search__filters summary { cursor: pointer; font-weight: 700; }
.rn-search__filter-grid { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)); gap: 14px; margin-top: 14px; align-items: end; }
.rn-search__context { margin-top: 20px; padding: 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.07); }
.rn-search__context[hidden] { display: none !important; }
.rn-search__context-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.rn-search__context-head h3 { margin: 0 0 4px; color: #fff; font-size: 1.05rem; }
.rn-search__context-head p { margin: 0; color: rgba(255,255,255,.8); font-size: .86rem; line-height: 1.45; }
.rn-search__assurance { flex: 0 0 auto; max-width: 250px; padding: 5px 9px; border-radius: 999px; background: rgba(255,255,255,.12); color: rgba(255,255,255,.88); font-size: .7rem; line-height: 1.35; text-align: center; }
.rn-search__filter-grid--context { grid-template-columns: repeat(4, minmax(150px, 1fr)); }
.rn-search__filter-grid--context label[hidden] { display: none !important; }
.rn-search__check { flex-direction: row !important; align-items: center; min-height: 48px; }
.rn-search__check input { width: 20px; height: 20px; accent-color: var(--rn-red); }
.rn-directory__live { min-height: 24px; margin: 18px 0 4px; color: var(--rn-muted); font-size: .9rem; }
.rn-directory.is-loading .rn-directory__results { opacity: .48; pointer-events: none; }
.rn-directory__results { transition: opacity .15s; }
.rn-results-head { display: flex; justify-content: space-between; gap: 16px; align-items: baseline; margin: 0 0 18px; }
.rn-results-head p { margin: 0; }
.rn-results-head__location { color: var(--rn-muted); font-size: .9rem; }
.rn-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.rn-provider-card { display: flex; flex-direction: column; min-height: 100%; padding: 22px; border: 1px solid var(--rn-line); border-radius: var(--rn-radius); background: var(--rn-white); box-shadow: 0 10px 30px rgba(23,33,43,.06); }
.rn-provider-card__top { display: grid; grid-template-columns: 62px 1fr; gap: 14px; align-items: start; }
.rn-provider-card__logo { width: 62px; height: 62px; border-radius: 14px; object-fit: contain; border: 1px solid var(--rn-line); background: #fff; }
.rn-provider-card__logo--fallback { object-fit: cover; object-position: center; padding: 3px; background: var(--rn-mist); }
.rn-provider-card h3 { margin: 4px 0; font-size: 1.22rem; line-height: 1.2; }
.rn-provider-card h3 a { color: var(--rn-ink); text-decoration: none; }
.rn-provider-card h3 a:hover { color: var(--rn-red); }
.rn-provider-card__location { margin: 0; color: var(--rn-muted); font-size: .88rem; }
.rn-provider-card__markers { display: flex; flex-wrap: wrap; gap: 5px; }
.rn-chip { display: inline-flex; padding: 3px 7px; border-radius: 999px; font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.rn-chip--featured { background: #fff0f1; color: #b9000b; }
.rn-chip--verified { background: #e8f6ed; color: #126b38; }
.rn-chip--unverified { background: #edf0f2; color: #59636c; }
.rn-chip--qualification { background: #e8f1ff; color: #174d8f; }
.rn-chip--declared { background: #fff4d9; color: #795600; }
.rn-provider-card__categories { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 18px; }
.rn-provider-card__categories span { padding: 5px 9px; border-radius: 999px; background: var(--rn-mist); font-size: .76rem; }
.rn-provider-card__specialties { margin: 10px 0 0; color: var(--rn-muted); font-size: .8rem; }
.rn-provider-card__holding { margin: 14px 0 0; padding: 11px 12px; border-left: 3px solid var(--rn-red); border-radius: 0 9px 9px 0; background: var(--rn-mist); font-size: .8rem; }
.rn-provider-card__holding ul { margin: 6px 0 0; padding-left: 18px; }
.rn-provider-card__holding li + li { margin-top: 3px; }
.rn-provider-card__excerpt { color: #3f4a54; flex: 1; }
.rn-provider-card__availability, .rn-profile-details__status { display: grid; grid-template-columns: auto 1fr; gap: 2px 8px; align-items: center; margin-top: 12px; padding: 12px; border-radius: 10px; background: var(--rn-mist); font-size: .86rem; }
.rn-provider-card__availability small { grid-column: 2; color: var(--rn-muted); }
.rn-status-dot { width: 10px; height: 10px; border-radius: 50%; background: #7c8790; }
.rn-availability--open .rn-status-dot { background: var(--rn-green); }
.rn-availability--limited .rn-status-dot, .rn-availability--waitlist .rn-status-dot { background: var(--rn-amber); }
.rn-availability--full .rn-status-dot { background: var(--rn-red); }
.rn-provider-card__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.rn-provider-card__claim { width: 100%; margin-top: 4px; color: var(--rn-muted); font-size: .78rem; }
.rn-button { min-height: 42px; padding: 9px 15px; font-size: .9rem; }
.rn-button--ghost { background: transparent; color: var(--rn-red); }
.rn-button--ghost:hover { background: #fff0f1; color: #b9000b; }
.rn-pagination { display: flex; justify-content: center; align-items: center; gap: 16px; margin: 32px 0 0; }
.rn-pagination button { background: transparent; color: var(--rn-red); min-height: 42px; }
.rn-empty { padding: 40px; border-radius: var(--rn-radius); background: var(--rn-mist); text-align: center; }

.rn-profile-details { max-width: 1000px; margin: 32px auto; }
.rn-profile-image { width: min(100%, 720px); min-height: 220px; margin: 0 0 22px; padding: 18px; display: grid; place-items: center; border: 1px solid var(--rn-line); border-radius: var(--rn-radius); background: #fff; overflow: hidden; }
.rn-profile-image img { display: block; width: 100%; max-height: 420px; object-fit: contain; }
.rn-profile-image--fallback img { width: min(100%, 360px); }
.rn-profile-details__status { max-width: 680px; }
.rn-profile-details__status span:last-child { grid-column: 2; color: var(--rn-muted); }
.rn-profile-details__grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; margin: 22px 0; }
.rn-profile-details__grid > div, .rn-profile-contact { padding: 20px; background: var(--rn-mist); border-radius: 14px; }
.rn-profile-details__grid h2, .rn-profile-contact h2 { margin: 0 0 8px; font-size: 1.05rem; }
.rn-profile-details__grid p { margin: 0; }
.rn-profile-qualifications { margin: 22px 0; padding: 20px; border: 1px solid var(--rn-line); border-radius: 14px; background: #fff; }
.rn-profile-qualifications h2 { margin-top: 0; }
.rn-profile-qualifications ul { display: grid; gap: 10px; padding-left: 20px; }
.rn-profile-qualifications__note { color: var(--rn-muted); font-size: .86rem; }
.rn-profile-holding-offers { margin: 26px 0; }
.rn-profile-holding-offers > h2 { margin: 0 0 14px; font-size: 1.35rem; }
.rn-holding-offer { margin: 0 0 16px; padding: 20px; border: 1px solid var(--rn-line); border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(23,33,43,.05); }
.rn-holding-offer h3 { margin: 0 0 10px; font-size: 1.1rem; }
.rn-holding-offer p { margin: 8px 0; line-height: 1.5; }
.rn-holding-offer__type { color: var(--rn-red); font-weight: 750; }
.rn-holding-offer__review { padding: 8px 10px; border-radius: 8px; background: #fff4d9; color: #795600; }
.rn-holding-offer__respiratory { padding: 10px 12px; border-radius: 9px; background: #e8f6ed; color: #126b38; }
.rn-holding-offer__status { padding-top: 9px; border-top: 1px solid var(--rn-line); color: var(--rn-muted); }
.rn-profile-contact__buttons { display: flex; gap: 9px; flex-wrap: wrap; }
.rn-profile-updated { color: var(--rn-muted); font-size: .82rem; }
.rn-status-form { width: min(680px, calc(100% - 32px)); margin: 60px auto; padding: 28px; border: 1px solid var(--rn-line); border-radius: var(--rn-radius); background: #fff; }
.rn-status-form form, .rn-status-form label { display: grid; gap: 8px; }
.rn-status-form form { gap: 18px; }
.rn-status-form__success { padding: 12px; margin: 16px 0; border-radius: 9px; background: #e8f6ed; color: #126b38; }

.rn-provider-forms { width: min(1120px, calc(100% - 32px)); margin: 72px auto 96px; color: var(--rn-ink); box-sizing: border-box; }
.rn-provider-forms *, .rn-provider-forms *::before, .rn-provider-forms *::after { box-sizing: border-box; }
.rn-provider-forms__intro { max-width: 760px; margin-bottom: 24px; }
.rn-provider-forms__intro h2 { margin: 4px 0 10px; font-size: clamp(1.8rem, 3.5vw, 2.8rem); line-height: 1.08; }
.rn-provider-forms__choices { display: grid; gap: 14px; }
.rn-provider-forms details { border: 1px solid var(--rn-line); border-radius: var(--rn-radius); background: #fff; box-shadow: 0 10px 30px rgba(23,33,43,.05); overflow: clip; }
.rn-provider-forms summary { padding: 20px 24px; cursor: pointer; color: var(--rn-ink); font-size: 1.05rem; font-weight: 800; background: var(--rn-mist); }
.rn-provider-forms details[open] summary { border-bottom: 1px solid var(--rn-line); }
.rn-provider-forms details > p { margin: 20px 24px 0; }
.rn-provider-form { padding: 24px; }
.rn-provider-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.rn-provider-form label, .rn-provider-form fieldset { min-width: 0; }
.rn-provider-form label:not(.rn-check-field), .rn-provider-form fieldset { display: flex; flex-direction: column; gap: 7px; }
.rn-provider-form label > span, .rn-provider-form legend { font-size: .86rem; font-weight: 750; }
.rn-provider-form input:not([type="checkbox"]), .rn-provider-form textarea, .rn-provider-form select { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #cbd2d8; border-radius: 9px; background: #fff; color: var(--rn-ink); font: inherit; }
.rn-provider-form textarea { min-height: 130px; resize: vertical; }
.rn-provider-form input:focus, .rn-provider-form textarea:focus, .rn-provider-form select:focus { outline: 3px solid rgba(227,6,19,.12); border-color: var(--rn-red); }
.rn-provider-form fieldset { margin: 0; padding: 15px; border: 1px solid var(--rn-line); border-radius: 12px; }
.rn-provider-form fieldset > label { display: flex; flex-direction: row; align-items: flex-start; gap: 8px; margin: 4px 0; font-weight: 500; }
.rn-provider-form input[type="checkbox"] { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--rn-red); flex: 0 0 auto; }
.rn-provider-form .rn-field--wide { grid-column: 1 / -1; }
.rn-image-field { padding: 15px; border: 1px solid var(--rn-line); border-radius: 12px; background: var(--rn-mist); }
.rn-image-field label { display: flex; flex-direction: column; gap: 7px; }
.rn-image-field small { color: var(--rn-muted); }
.rn-image-field__preview { display: block; width: 180px; height: 120px; margin-bottom: 12px; object-fit: contain; border: 1px solid var(--rn-line); border-radius: 10px; background: #fff; }
.rn-category-checklist { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.rn-category-checklist > div { padding: 12px; border-radius: 9px; background: var(--rn-mist); }
.rn-category-checklist label { display: flex !important; flex-direction: row !important; align-items: flex-start; gap: 8px; margin: 5px 0; }
.rn-category-guidance { margin: 8px 0 0; color: var(--rn-muted); font-size: .75rem; line-height: 1.35; }
.rn-qualification-fields { display: grid; gap: 12px; }
.rn-qualification-row { display: grid; grid-template-columns: 1.2fr 1fr 90px 1fr 1fr; gap: 10px; }
.rn-qualification-help { padding: 14px; border: 1px solid var(--rn-line); border-radius: 10px; background: var(--rn-mist); }
.rn-qualification-help summary { cursor: pointer; font-weight: 750; }
.rn-qualification-help dl { display: grid; gap: 10px; }
.rn-qualification-help dt { font-weight: 750; }
.rn-qualification-help dd { margin: 2px 0 0; color: var(--rn-muted); }
.rn-check-field { display: flex; flex-direction: row; align-items: flex-start; gap: 10px; margin: 18px 0; }
.rn-provider-form > button { min-height: 50px; padding: 12px 22px; border: 1px solid var(--rn-red); border-radius: 9px; background: var(--rn-red); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.rn-provider-form > button:hover { background: #b9000b; }
.rn-form-message { margin: 0 0 20px; padding: 14px 16px; border-radius: 10px; font-weight: 650; }
.rn-form-message--success { background: #e8f6ed; color: #126b38; }
.rn-form-message--error { background: #fff0f1; color: #9c0811; }
.rn-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

@media (max-width: 960px) {
  .rn-search__primary { grid-template-columns: 1fr 1fr; }
  .rn-search__filter-grid { grid-template-columns: 1fr 1fr; }
  .rn-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .rn-qualification-row { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .rn-directory { width: min(100% - 20px, 1280px); margin-top: 24px; }
  .rn-search { padding: 16px; border-radius: 14px; }
  .rn-search__primary, .rn-search__filter-grid, .rn-card-grid, .rn-profile-details__grid { grid-template-columns: 1fr; }
	.rn-search__context { padding: 14px; }
	.rn-search__context-head { display: block; }
	.rn-search__assurance { display: inline-flex; max-width: none; margin-top: 10px; text-align: left; }
	.rn-search__filter-grid--context { grid-template-columns: 1fr; }
  .rn-results-head { display: block; }
  .rn-provider-card { padding: 17px; }
	.rn-holding-offer { padding: 16px; }
  .rn-provider-card__actions .rn-button { width: 100%; }
  .rn-provider-forms { width: min(100% - 20px, 1120px); margin: 48px auto 70px; }
  .rn-provider-form { padding: 17px; }
  .rn-provider-form__grid, .rn-category-checklist { grid-template-columns: 1fr; }
  .rn-qualification-row { grid-template-columns: 1fr; }
  .rn-provider-forms summary { padding: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .rn-directory__results, .rn-import-progress span { transition: none !important; }
}
.rn-profile-reviews{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #d9e2dc}.rn-review{padding:1rem 0;border-bottom:1px solid #e1e7e3}.rn-review blockquote{margin:1rem 0 0;padding:1rem;background:#f4f6f4;border-left:3px solid #c49a52}.rn-review-summary{font-size:1.1rem}

.rn-provider-form--wizard > :not(.rn-entry-wizard):not(input[type="hidden"]){display:none!important}.rn-entry-wizard{padding:clamp(18px,4vw,34px);background:#fffdf7;border:1px solid rgba(23,61,53,.18);border-radius:16px}.rn-entry-wizard h3{font:500 clamp(28px,4vw,42px)/1.1 Georgia,serif;margin:7px 0 10px;color:#173d35}.rn-entry-wizard h4{font:700 17px Arial,sans-serif;margin:22px 0 10px;color:#173d35}.rn-entry-wizard p{color:#5f706a}.rn-wizard-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:#6d851a!important}.rn-wizard-progress{display:grid;gap:8px;margin-bottom:28px;font-size:12px;font-weight:700}.rn-wizard-progress i{display:block;height:7px;background:#e8eadf;border-radius:999px;overflow:hidden}.rn-wizard-progress i b{display:block;width:20%;height:100%;background:#77931d;transition:width .25s ease}.rn-entry-wizard label:not(.rn-choice){display:grid;gap:7px;font-weight:700;font-size:13px;margin-top:16px}.rn-entry-wizard input:not([type="checkbox"]):not([type="radio"]),.rn-entry-wizard textarea,.rn-entry-wizard select{box-sizing:border-box;width:100%;padding:12px;border:1px solid rgba(23,61,53,.24);border-radius:8px;background:#fff;color:#173d35;font:inherit}.rn-entry-wizard textarea{resize:vertical}.rn-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0}.rn-choice-grid--compact{grid-template-columns:repeat(2,minmax(100px,180px))}.rn-choice{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid rgba(23,61,53,.18);border-radius:9px;background:#fff;cursor:pointer;font-weight:650}.rn-choice:has(input:checked){background:#edf5c7;border-color:#8ca42b}.rn-choice input{margin-top:2px}.rn-wizard-step fieldset{border:0;padding:0;margin:22px 0}.rn-wizard-step fieldset>legend{font-weight:800;font-size:16px;color:#173d35}.rn-wizard-followup{margin:18px 0;padding:17px;border-left:4px solid #d7ef58;background:#f6f3e9;border-radius:0 10px 10px 0}.rn-wizard-question{padding-top:13px!important;border-top:1px solid rgba(23,61,53,.14)!important}.rn-wizard-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rn-wizard-fields .wide{grid-column:1/-1}.rn-wizard-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:26px;padding-top:18px;border-top:1px solid rgba(23,61,53,.16)}.rn-wizard-error{padding:12px;border-left:4px solid #a61f45;background:#f8e2e6;color:#762039!important;font-weight:700}.rn-entry-wizard [hidden]{display:none!important}.rn-detail-progress{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:-6px 0 23px;padding:12px 15px;background:#173d35;color:#fff;border-radius:9px;font-size:12px}.rn-detail-progress strong{color:#d7ef58;text-align:right}.rn-detail-panel>.rn-wizard-followup{margin-top:14px}.rn-detail-panel .rn-wizard-followup>.rn-wizard-question:first-of-type{border-top:0!important}.rn-detail-panel input:invalid,.rn-detail-panel select:invalid,.rn-detail-panel textarea:invalid{box-shadow:none}.rn-detail-panel input:invalid:focus,.rn-detail-panel select:invalid:focus,.rn-detail-panel textarea:invalid:focus{outline:3px solid rgba(166,31,69,.2);border-color:#a61f45}.rn-entry-wizard small{font-weight:400;color:#65736e}
@media(max-width:680px){.rn-choice-grid,.rn-wizard-fields{grid-template-columns:1fr}.rn-wizard-fields .wide{grid-column:auto}.rn-wizard-actions{align-items:stretch;flex-direction:column-reverse}.rn-wizard-actions button{width:100%}.rn-detail-progress{align-items:flex-start;flex-direction:column}.rn-detail-progress strong{text-align:left}}

/* V3: thematische Angebots-Akkordeons */
.rn-theme-list{display:grid;gap:12px;margin-top:22px}.rn-offer-section{margin:0!important;padding:0!important;overflow:hidden;border:1px solid rgba(23,61,53,.16)!important;border-radius:16px;background:#fbfaf5}.rn-offer-section>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:14px 17px;cursor:pointer;list-style:none}.rn-offer-section>summary::-webkit-details-marker{display:none}.rn-offer-section>summary>span{display:grid;gap:3px}.rn-offer-section>summary strong{color:#173d35;font-size:17px}.rn-offer-section>summary small{color:#65736e;font-size:12px;line-height:1.35}.rn-offer-section>summary>b{flex:0 0 auto;padding:5px 9px;border-radius:999px;background:#edf2dc;color:#4d6420;font-size:11px}.rn-offer-section[open]>summary{border-bottom:1px solid rgba(23,61,53,.12);background:#f1f4e6}.rn-offer-section>.rn-offer-subgroup,.rn-offer-section>.rn-choice-grid{margin:0;padding:15px 17px}.rn-offer-section>.rn-offer-subgroup+.rn-offer-subgroup{padding-top:0}.rn-offer-subgroup>h4{margin:0 0 8px!important;color:#65736e!important;font-size:11px!important;letter-spacing:.1em;text-transform:uppercase}.rn-offer-subgroup .rn-choice-grid{margin:0}.rn-entry-wizard :where(button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(23,107,135,.3);outline-offset:3px}@media(max-width:680px){.rn-offer-section>summary{align-items:flex-start;min-height:64px}.rn-offer-section>summary>b{margin-top:2px}.rn-offer-section>.rn-offer-subgroup,.rn-offer-section>.rn-choice-grid{padding:13px}}


/* 1.7.0 – RossNetz Editorial + Swiss Outdoor; vorhandene Bilder bleiben unverändert. */
.rn-directory,.rn-provider-form,.rn-profile-details,.rn-status-form,.rn-public-form{
  --rn-ink:#173d35;--rn-ink-deep:#0f2d27;--rn-paper:#f7f3e9;--rn-surface:#fffefa;
  --rn-action:#176b87;--rn-action-dark:#0f5268;--rn-brand-red:#a61f45;--rn-meadow:#dce7a8;
  --rn-muted:#63736d;--rn-line:rgba(23,61,53,.14);--rn-shadow:0 8px 26px rgba(18,54,47,.08);
  --rn-shadow-hover:0 18px 44px rgba(18,54,47,.14);
  --rn-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --rn-serif:"Iowan Old Style","Palatino Linotype",Georgia,serif;
  font-family:var(--rn-sans);color:var(--rn-ink)
}
.rn-directory :where(h1,h2),.rn-profile-details :where(h1,h2),.rn-status-form :where(h1,h2),.rn-public-form :where(h1,h2){font-family:var(--rn-serif);font-weight:500;letter-spacing:-.025em;text-wrap:balance}
.rn-directory__intro,.rn-search,.rn-provider-card,.rn-provider-form,.rn-profile-details,.rn-status-form,.rn-public-form{border-color:var(--rn-line);border-radius:22px;background:var(--rn-surface);box-shadow:var(--rn-shadow)}
.rn-directory__intro{position:relative;overflow:hidden;padding:clamp(26px,5vw,54px);background:linear-gradient(140deg,var(--rn-ink-deep),var(--rn-ink));color:#fff}
.rn-directory__intro:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--rn-brand-red) 0 14%,var(--rn-meadow) 14% 42%,var(--rn-action) 42%)}
.rn-directory__intro :where(h1,h2,p){position:relative;z-index:1;color:inherit}
.rn-search{padding:clamp(20px,3.5vw,34px)}
.rn-search :where(input,select,textarea,button){font-family:var(--rn-sans)}
.rn-search :where(input,select,textarea){min-height:46px;border-radius:11px;border-color:var(--rn-line);background:#fff}
.rn-search button,.rn-directory .rn-button,.rn-provider-form button,.rn-status-form button,.rn-public-form button{min-height:44px;border-radius:11px;background:var(--rn-ink);font-weight:800;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.rn-search button:hover,.rn-directory .rn-button:hover,.rn-provider-form button:hover,.rn-status-form button:hover,.rn-public-form button:hover{background:var(--rn-action-dark);box-shadow:0 10px 24px rgba(18,54,47,.14);transform:translateY(-1px)}
.rn-card-grid{gap:18px}
.rn-provider-card{padding:22px;border:1px solid var(--rn-line);border-radius:20px;background:var(--rn-surface);box-shadow:0 4px 18px rgba(18,54,47,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.rn-provider-card:hover{transform:translateY(-3px);border-color:rgba(23,107,135,.28);box-shadow:var(--rn-shadow-hover)}
.rn-provider-card__logo{overflow:hidden;border-radius:15px;border:1px solid var(--rn-line);background:#fff;object-fit:contain}
.rn-provider-card h3{font-family:var(--rn-serif);font-size:clamp(21px,2.2vw,27px);font-weight:600;letter-spacing:-.02em}
.rn-provider-card__categories span,.rn-chip{border-radius:999px}
.rn-provider-card__actions{gap:10px}
.rn-provider-card__claim{font-weight:700;text-underline-offset:3px}
.rn-review-card-summary{display:flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin:12px 0 14px;padding:7px 11px;border:1px solid rgba(23,107,135,.18);border-radius:999px;background:#eef6f7;color:#284f59;font-size:13px;line-height:1.2}
.rn-review-card-summary__stars{color:#a36d00;font-size:17px}
.rn-review-card-summary__empty{color:var(--rn-muted);font-weight:700}
.rn-review-card-summary--profile{margin:18px 0 22px;padding:10px 14px;font-size:15px}
.rn-profile-details{overflow:hidden;padding:clamp(22px,4vw,44px)}
.rn-profile-image{overflow:hidden;border-radius:20px;background:#fff}
.rn-profile-image img{object-fit:contain}
.rn-profile-details__grid>div,.rn-profile-qualifications,.rn-profile-contact,.rn-profile-reviews{border-radius:17px;border-color:var(--rn-line);background:var(--rn-surface)}
.rn-profile-reviews{scroll-margin-top:120px;margin-top:28px;padding:clamp(20px,3vw,30px);border:1px solid var(--rn-line);box-shadow:0 4px 18px rgba(18,54,47,.045)}
.rn-review-explainer,.rn-review-empty-state{padding:14px 16px;border-left:4px solid var(--rn-action);border-radius:0 12px 12px 0;background:#eef6f7;color:#395e65}
.rn-review-summary{font-size:1.15rem}
.rn-review{padding:18px 0}
.rn-review>p:first-child{margin-top:0}
.rn-review-report{margin-top:12px}
.rn-review-report summary{width:max-content;cursor:pointer;color:var(--rn-action-dark);font-size:13px;font-weight:800}
.rn-review-report form{display:grid;gap:11px;margin-top:12px;padding:14px;border-radius:13px;background:var(--rn-paper)}
.rn-review-report label{display:grid;gap:5px;font-size:12px;font-weight:800}
.rn-review-report :where(select,textarea){width:100%;box-sizing:border-box;border:1px solid var(--rn-line);border-radius:10px;background:#fff;padding:10px;font:inherit}
.rn-entry-wizard,.rn-wizard-step,.rn-wizard-followup{border-color:var(--rn-line)}
.rn-entry-wizard{border-radius:24px;background:var(--rn-surface);box-shadow:var(--rn-shadow)}
.rn-choice{min-height:46px;border-radius:13px;border-color:var(--rn-line);background:#fff;transition:border-color .15s ease,background .15s ease,transform .15s ease}
.rn-choice:hover{transform:translateY(-1px);border-color:rgba(23,107,135,.32)}
.rn-choice:has(input:checked){background:#eef3dc;border-color:#9fb45b;box-shadow:inset 3px 0 var(--rn-brand-red)}
.rn-wizard-progress,.rn-detail-progress{border-radius:999px}
.rn-wizard-followup{border-radius:16px;background:#fbfaf5}
.rn-topic-card__hint{display:block;margin-top:5px;color:var(--rn-muted);font-size:12px;font-weight:500;line-height:1.35}
.rn-offer-section{margin:0 0 18px;padding:16px;border:1px solid var(--rn-line);border-radius:16px;background:#fbfaf5}
.rn-offer-section>legend{padding:0 7px;font-family:var(--rn-serif);font-size:19px;font-weight:600;color:var(--rn-ink)}
.rn-offer-subgroup{margin-top:14px}
.rn-offer-subgroup>h4{margin:0 0 9px;color:var(--rn-muted);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.rn-directory :where(a,button,input,select,textarea,summary):focus-visible,.rn-profile-details :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(23,107,135,.3);outline-offset:3px}
@media(max-width:680px){.rn-directory__intro,.rn-entry-wizard,.rn-profile-details{border-radius:18px}.rn-provider-card{border-radius:17px}.rn-provider-card__actions .rn-button{width:100%;text-align:center}.rn-review-card-summary{white-space:normal}}
@media(prefers-reduced-motion:reduce){.rn-provider-card,.rn-choice,.rn-search button,.rn-directory .rn-button{transition:none}}
