/* ============ Die HoerakustikSchmiede – zentrales Designsystem fuer Elementor-Unterseiten ============ */
:root{
  --olive:#384613;--olive-deep:#2D380F;--olive-soft:#4F5F25;
  --lime:#AFCA0A;--lime-bright:#C2D451;
  --cream:#F7F5EE;--sand:#EAE6D8;--ink:#1F2412;--muted:#6B6F5E;--white:#FFFFFF;--star:#E8B530;
  --r:14px;
}
/* Grundschriften auf Elementor-Seiten */
body.elementor-page,.elementor-page .elementor-widget-text-editor,
.elementor-page .elementor-widget-icon-list,.elementor-page .elementor-icon-box-description{
  font-family:'Mulish',system-ui,-apple-system,sans-serif;color:var(--ink);
}
.elementor-page .elementor-heading-title{font-family:'Fraunces',Georgia,serif;letter-spacing:-0.01em;line-height:1.12;font-weight:600}

/* Eyebrow (kleine Uebertitel) */
.hk-eyebrow .elementor-heading-title{font-family:'Mulish',sans-serif!important;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--olive-soft)}
.hk-lime .elementor-heading-title{color:var(--lime-bright)}

/* Buttons als Pill */
.elementor-page .elementor-button{border-radius:999px;font-family:'Mulish',sans-serif;font-weight:700;font-size:16.5px;padding:15px 26px;transition:.16s;border:2px solid transparent;line-height:1.1}
.hk-primary .elementor-button{background:var(--lime);color:var(--olive-deep)}
.hk-primary .elementor-button:hover{background:var(--lime-bright);color:var(--olive-deep);transform:translateY(-2px)}
.hk-ghost .elementor-button{background:transparent;color:var(--cream);border-color:rgba(255,255,255,.35)}
.hk-ghost .elementor-button:hover{border-color:var(--lime-bright);color:var(--lime-bright);background:transparent}
.hk-ghost-dark .elementor-button{background:transparent;color:var(--olive);border-color:var(--olive-soft)}
.hk-ghost-dark .elementor-button:hover{border-color:var(--lime);color:var(--olive-deep);background:transparent}

/* Hero */
.hk-hero{position:relative;overflow:hidden}
.hk-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(900px 500px at 80% 15%,rgba(175,202,10,.16),transparent 60%);pointer-events:none;z-index:0}
.hk-hero>.elementor-container{position:relative;z-index:2}
.hk-hero .elementor-heading-title em{font-style:normal;color:var(--lime-bright)}

/* Review-Badge und NF-Tag (dekorative HTML-Widgets) */
.hk-badge{display:inline-block;background:#fff;color:var(--ink);border-radius:16px;padding:16px 22px;box-shadow:0 20px 44px rgba(0,0,0,.22)}
.hk-badge .st{color:var(--star);font-size:20px;letter-spacing:2px;line-height:1}
.hk-badge .sc{font-family:'Fraunces',serif;font-size:28px;font-weight:700;color:var(--olive);line-height:1;margin-top:4px}
.hk-badge .sc small{font-size:13px;color:var(--muted);font-weight:600;font-family:'Mulish'}
.hk-badge .sr{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);margin-top:6px;font-weight:600}
.hk-badge .gm{width:15px;height:15px;border-radius:50%;background:conic-gradient(#EA4335 0 25%,#FBBC05 0 50%,#34A853 0 75%,#4285F4 0 100%);display:inline-block}

/* Servicekarten (icon-box) */
.hk-card .elementor-icon-box-wrapper{background:var(--white);border-radius:var(--r);border:1px solid #E7E4D6;padding:30px 26px;transition:.18s;height:100%;text-align:left}
.hk-card .elementor-icon-box-wrapper:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(56,70,19,.12);border-color:var(--lime)}
.hk-card .elementor-icon-box-icon{margin-bottom:18px}
.hk-card .elementor-icon{width:50px;height:50px;border-radius:12px;background:var(--sand);display:flex;align-items:center;justify-content:center}
.hk-card .elementor-icon svg,.hk-card .elementor-icon i{width:26px;height:26px;font-size:24px;color:var(--olive);fill:var(--olive)}
.hk-card .elementor-icon-box-title{font-family:'Fraunces',serif;font-size:21px;color:var(--olive);margin-bottom:9px}
.hk-card .elementor-icon-box-description{font-size:15.5px;color:var(--muted);line-height:1.55}

/* Sektions-Kopf Standard */
.hk-h2 .elementor-heading-title{font-size:42px;color:var(--olive)}
.hk-h2 .elementor-heading-title b{color:var(--olive-soft)}
.hk-lead .elementor-widget-container{font-size:18.5px;color:var(--muted)}

/* Trust-Streifen Zahlen */
.hk-num .elementor-heading-title{font-family:'Fraunces',serif;font-size:32px;font-weight:700;color:var(--lime-bright)}
.hk-numlbl .elementor-heading-title{font-family:'Mulish',sans-serif;font-size:14px;font-weight:500;color:#C7CDB6}

/* Natural Fitting */
.hk-nf .elementor-heading-title{color:var(--white)}
.hk-nf .elementor-widget-text-editor{color:#DCE1CE}
.hk-check .elementor-icon-list-item{align-items:flex-start}
.hk-check .elementor-icon-list-icon svg,.hk-check .elementor-icon-list-icon i{color:var(--lime-bright);fill:var(--lime-bright)}
.hk-check .elementor-icon-list-text{color:#EAEEDD;font-size:16.5px}
.hk-tag{background:rgba(31,36,18,.82);border-radius:12px;padding:14px 18px;color:#fff;font-size:14.5px}
.hk-tag b{color:var(--lime-bright)}

/* Bild-Banner und gerundete Bilder */
.hk-round img{border-radius:20px}
.hk-banner img{border-radius:20px;width:100%;object-fit:cover}

/* Standort-Karten */
.hk-loc{background:var(--white);border:1px solid #E7E4D6;border-radius:var(--r);overflow:hidden;height:100%}
.hk-loc .hk-loc-top{background:var(--sand);border-bottom:3px solid var(--lime);padding:18px 22px}
.hk-loc .hk-loc-top h3{font-family:'Fraunces',serif;font-size:22px;color:var(--olive);margin:0}
.hk-loc .hk-loc-top .since{font-size:12.5px;color:var(--olive-soft);font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-top:4px;display:block}
.hk-loc .hk-loc-body{padding:18px 22px;font-size:15.5px;color:var(--ink);line-height:1.5}
.hk-loc .hk-loc-body strong{color:var(--olive-soft)}
.hk-loc-primary{border-color:var(--lime);box-shadow:0 14px 34px rgba(56,70,19,.10)}

/* Accordion / FAQ */
.hk-faq .elementor-accordion-item{border:1px solid #E7E4D6;border-radius:10px;margin-bottom:10px;overflow:hidden;background:#fff}
.hk-faq .elementor-tab-title{font-family:'Fraunces',serif;font-weight:600;font-size:17.5px;color:var(--olive)}
.hk-faq .elementor-tab-title.elementor-active{color:var(--olive-soft)}
.hk-faq .elementor-tab-content{font-size:16px;color:var(--muted);line-height:1.6}

/* Final CTA */
.hk-final .elementor-heading-title{color:#fff}
