:root{
  /* Marke */
  --brand:#aec90c;
  --brand-dark:#7a9500;
  --brand-ink:#1f2d00;
  --brand-text:#5c7000; /* Fließtext-Links/Eyebrows (Kontrast >= 4.5:1); #7a9500 nur für Kanten/Icons */
  --forest:linear-gradient(160deg,#1a2b0e 0%,#233212 100%);
  --ink:#192410;
  --ink-soft:#3d4d2e;
  --muted:#5f6f57; /* 23.10.2026: war #687860 (4,4:1 auf getönten Flächen) – jetzt ≥ 4,5:1 */

  /* Hintergründe */
  --surface:#f4f8ed;
  --surface-card:#ffffff;
  --surface-warm:#eef4e0;
  --soft:#f4f8e4;
  --soft-2:#f8faf3;
  --bg:#f5f7fa;
  --navy:#eef3f7;
  --white:#fff;

  /* Rahmen & Trennlinien */
  --border:#dde7c8;
  --border-soft:#eaf0d8;
  --line:#dde7c8;

  /* Sonstiges */
  --radius:22px;
  --radius-sm:14px;
  --shadow:0 4px 16px rgba(26,36,16,.07);

  /* Schriften */
  --font-display:'Lexend',system-ui,-apple-system,sans-serif;
  --font-body:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  /* Typ-Scale */
  --text-xs:0.75rem;
  --text-sm:0.875rem;
  --text-base:1rem;
  --text-lg:1.125rem;
  --text-xl:1.25rem;
  --text-2xl:1.5rem;
  --text-3xl:1.875rem;
  --text-4xl:clamp(2rem,4vw,2.75rem);
  --text-hero:clamp(2.25rem,5vw,3.5rem);

  /* Abstände */
  --leading-body:1.7;
  --tracking-wide:0.04em;
}

body{
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--surface);
  padding-top:var(--site-header-offset,160px);
  line-height:var(--leading-body);
}
h1,h2,h3,h4,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6,.eyebrow{
  font-family:var(--font-display);
}

a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto}
.lead{font-size:1.1rem;line-height:1.75;color:var(--ink-soft)}
.py-6{padding:6rem 0}
.text-muted{color:var(--muted)!important}

.site-header{position:fixed;top:0;left:0;right:0;z-index:1100;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(26,36,48,.06)}
.topbar{background:#fff;border-bottom:1px solid var(--border-soft)}
.topbar a{color:var(--ink-soft)}
.topbar a:hover,.topbar a:focus-visible{color:var(--brand-text)}
.topbar .container-xxl{min-height:42px}
.topbar-social a{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border-soft)}
.topbar-social a:hover,.topbar-social a:focus-visible{border-color:var(--brand);color:var(--brand-text)}
.brandbar{background:#fff}
.brand-link{color:var(--ink)}
.brand-logo-image{display:block;height:48px;width:auto}
.brand-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-left:auto}
.nav-shell{background:#fff;border-top:1px solid var(--border-soft)}
.main-navbar{position:relative}
.condensed-brand-link{flex:0 0 auto;align-items:center;justify-content:center;width:0;overflow:hidden;opacity:0;pointer-events:none;transform:translateX(-10px);transition:width .24s ease,margin-right .24s ease,opacity .18s ease,transform .24s ease}
.condensed-brand-logo{display:block;height:24px;width:auto}
.navbar-nav .nav-link{padding:.95rem .9rem;font-weight:600;color:var(--ink-soft);position:relative}
.navbar-nav .nav-link::after{content:'';position:absolute;bottom:.55rem;left:.9rem;right:.9rem;height:2px;background:var(--brand);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.navbar-nav .nav-link:hover,.navbar-nav .nav-link:focus-visible{color:var(--brand-text)}
.navbar-nav .nav-link.active{color:var(--brand-text)}
.navbar-nav .nav-link.active::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.navbar-nav .nav-link::after{transition:none}}
.nav-toggle{border:1px solid rgba(26,36,48,.1);padding:.45rem .65rem;border-radius:12px;background:#fff}
.nav-toggle .navbar-toggler-icon{display:block;width:1.45rem;height:1.45rem;background-image:none;position:relative}
.nav-toggle .navbar-toggler-icon::before,.nav-toggle .navbar-toggler-icon::after,.nav-toggle .navbar-toggler-icon{background-repeat:no-repeat}
.nav-toggle .navbar-toggler-icon::before,.nav-toggle .navbar-toggler-icon::after{content:'';position:absolute;left:0;right:0;height:2px;background:#273645;border-radius:2px}
.nav-toggle .navbar-toggler-icon::before{top:.25rem;box-shadow:0 .42rem 0 #273645}
.nav-toggle .navbar-toggler-icon::after{bottom:.25rem}
.navbar-toggler:focus{box-shadow:none}

.btn{border-radius:12px;font-weight:600;padding:.5rem .95rem;font-size:1rem;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}
.btn-sm{padding:.4rem .75rem;font-size:.92rem}
.btn-brand{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.btn-brand:hover,.btn-brand:focus-visible{background:var(--brand-text);border-color:var(--brand-text);color:#fff}
.btn-brand:active,.btn-soft:active{transform:scale(0.967)}
.btn-soft{background:var(--soft);border:1px solid rgba(174,201,12,.28);color:#4f6100}
.btn-soft:hover{background:#eaf1cd;color:#374200;border-color:rgba(141,167,0,.35)}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}
.btn.is-loading{pointer-events:none;color:transparent!important;position:relative}
.btn.is-loading::after{content:'';position:absolute;top:50%;left:50%;width:1em;height:1em;margin:-.5em 0 0 -.5em;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spinBtn .55s linear infinite}
.btn-soft.is-loading::after{border-color:rgba(79,97,0,.25);border-top-color:#4f6100}
.btn-ghost{background:transparent;border:none;color:var(--brand-text);padding-left:0;padding-right:0;font-weight:600}
.btn-ghost:hover{color:var(--brand-ink);text-decoration:none}
.btn-ghost:hover i,.btn-ghost:hover .fa-solid{transform:translateX(4px)}
.btn-ghost i,.btn-ghost .fa-solid{transition:transform .18s ease;display:inline-block}
@keyframes spinBtn{to{transform:rotate(360deg)}}

.bg-soft{background:#fff;border-top:1px solid var(--border-soft)}
.section-rule{display:block;width:72px;height:3px;background:var(--brand);border-radius:2px;margin-bottom:1rem}

.content-card,.auth-card{background:var(--surface-card);border:1px solid var(--border-soft);border-radius:var(--radius);box-shadow:var(--shadow)}
/* Signatur-Karte: 3px Markenkante links, rechts gerundet, ohne Schatten */
.content-card{padding:1.35rem;height:100%;border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:none}
.large-card{padding:1.5rem}
.content-card h3{display:block;margin-bottom:.35rem}
.icon-wrap{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:rgba(174,201,12,.14);color:var(--brand-text);margin-bottom:1rem}
.badge-soft{background:rgba(174,201,12,.12);color:var(--brand-text)}
.hero-panel{overflow:hidden}
.location-slide{min-height:250px;display:flex;flex-direction:column;justify-content:center}

.section-head{display:flex;flex-direction:column;gap:.5rem}
.section-head h2{letter-spacing:-.03em}
.section-heading{max-width:820px;margin-bottom:1.6rem}
.section-heading h2{letter-spacing:-.035em}
.section-heading p{color:var(--muted);font-size:1.05rem;line-height:1.75;margin-bottom:0}
.section-block{padding:5rem 0}
.section-block-sm{padding:3.5rem 0}
.section-block-lg{padding:7rem 0}
.seo-copy-section .content-card{min-height:100%}
.keywords-list{display:flex;flex-wrap:wrap;gap:.6rem}
.keyword-chip{display:inline-flex;align-items:center;padding:.5rem .8rem;border-radius:999px;background:#fff;border:1px solid rgba(26,36,48,.1);font-weight:500;color:#4b5563}
.location-grid .content-card{transition:transform .2s ease, box-shadow .2s ease}
.location-grid .content-card:hover{transform:translateY(-2px)}
.info-card{border-radius:18px}
.info-list li{display:flex;gap:.85rem;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid rgba(26,36,48,.08)}
.info-list li:last-child{border-bottom:0;padding-bottom:0}
.info-list i{width:18px;margin-top:.2rem;color:var(--brand-dark)}
.opening-hours{line-height:1.7}
.media-placeholder{min-height:220px;display:flex;flex-direction:column;justify-content:center}
.contact-grid .content-card{min-height:100%}

.form-label{font-weight:600;color:#334455;margin-bottom:.35rem}
.form-control,.form-select{border-radius:12px;border:1px solid rgba(26,36,48,.12);padding:.55rem .8rem;min-height:42px;background:#fff;font-size:1rem}
.form-control:focus,.form-select:focus{border-color:rgba(174,201,12,.8);box-shadow:0 0 0 .2rem rgba(174,201,12,.15)}
textarea.form-control{min-height:auto}

.auth-card{max-width:520px;padding:1.75rem}
.auth-card-wide{max-width:760px}

.service-menu{width:min(760px,calc(100vw - 2rem));border-radius:18px;overflow:hidden;margin-top:.15rem}
.service-menu-grid{background:#fff}
.service-menu-browser{display:grid;grid-template-columns:240px 1fr;min-width:0}
.service-group-list{padding:.65rem;border-right:1px solid rgba(26,36,48,.08);background:#fbfcf8}
.service-group-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.68rem .78rem;border-radius:12px;border:0;background:transparent;color:#2d3f4e;font-weight:800;text-align:left;transition:background .18s ease,color .18s ease}
.service-group-trigger:hover,.service-group-trigger:focus,.service-group-trigger.is-active{background:#f4f7fb;color:#5f7700;outline:0}
.service-panels{position:relative;padding:.85rem 1rem;background:#fff}
.service-panel{display:none;animation:fadeIn .18s ease}
.service-panel.is-active{display:block}
.service-panel-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:0 0 .65rem;border-bottom:1px solid rgba(26,36,48,.08);margin-bottom:.45rem}
.service-panel-head strong{font-size:1.05rem;color:var(--ink)}
.service-panel-head a{font-weight:700;color:#647c00}
.service-panel-links{display:grid;grid-template-columns:1fr 1fr;gap:.1rem .75rem}
.service-submenu-link{position:relative;display:flex;align-items:center;gap:.55rem;padding:.5rem .2rem;color:#2d3f4e;border-bottom:1px solid rgba(26,36,48,.06)}
.service-submenu-link::before{content:'\f105';font-family:'Font Awesome 6 Free';font-weight:900;color:#7b9400;font-size:.78rem}
.service-submenu-link:hover,.service-submenu-link:focus-visible{color:var(--brand-text);background:transparent;text-decoration:none}
.service-submenu-link strong{display:block;margin:0;font-size:.95rem}
.service-section{scroll-margin-top:160px}

.location-menu{width:min(430px,calc(100vw - 2rem));border-radius:18px;padding:.45rem}
.location-menu-header{display:flex;justify-content:space-between;align-items:center;padding:.8rem .9rem;border-bottom:1px solid rgba(26,36,48,.08);margin-bottom:.25rem}
.location-menu-header a{font-size:.92rem;font-weight:700;color:#647c00}
.location-menu-list{max-height:min(74vh,560px);overflow:auto;padding:.25rem}
.location-menu-link{position:relative;display:flex;align-items:baseline;gap:.5rem;padding:.6rem .7rem .6rem 1.35rem;border-radius:12px}
.location-menu-link::before{content:'\f105';font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;left:.5rem;top:50%;transform:translateY(-50%);color:#7b9400;font-size:.74rem}
.location-menu-link:hover,.location-menu-link:focus-visible{background:#f4f8ea}
.location-menu-link strong{display:inline;color:#233241;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700}
.location-menu-link span{display:inline;font-size:.82rem;color:#8a94a0;white-space:nowrap;flex:0 0 auto}

.mobile-menu-section{display:none}
.mobile-section-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;background:transparent;border:0;padding:.8rem 0;font-weight:700;color:#304150}
.mobile-section-toggle.active{color:var(--brand-text)}
.mobile-subnav{padding-bottom:.35rem}
.mobile-subnav-inner{padding:.25rem 0 .75rem .85rem;border-left:2px solid rgba(174,201,12,.25)}
.mobile-overview-link{display:block;font-weight:700;color:#647c00;margin-bottom:.75rem}
.mobile-subnav-group + .mobile-subnav-group{margin-top:.85rem}
.mobile-subnav-title{font-size:.95rem;font-weight:800;margin-bottom:.45rem;color:#233241}
.mobile-subnav-inner a{display:block;padding:.5rem 0;color:#556474}
.mobile-subnav-inner a span{display:block;font-size:.88rem;color:#7a8792}

.site-footer{background:var(--forest);color:#fff;border-top:3px solid var(--brand)}
.site-footer h5,.site-footer .footer-heading{color:#fff;font-weight:800;letter-spacing:-.03em;font-size:1.1rem;margin-bottom:1rem}
.site-footer p,.site-footer span{color:rgba(255,255,255,.86)}
.site-footer a{color:#fff}
.site-footer a:hover,.site-footer a:focus-visible{color:var(--brand)}
.site-footer .section-rule{background:var(--brand)}
.footer-links li+li{margin-top:0}
.footer-links a,.footer-text-button{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;background:none;border:0;padding:0;font:inherit;text-align:left}
.footer-links a:hover,.footer-links a:focus-visible,.footer-text-button:hover,.footer-text-button:focus-visible{color:var(--brand);text-decoration:none}
.footer-note{color:rgba(255,255,255,.72)!important;font-size:.92rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14)}
.footer-bottom span{color:rgba(255,255,255,.72)}
.sticky-side{position:sticky;top:160px}

.cookie-consent{position:fixed;left:1rem;right:1rem;bottom:max(1rem,calc(.75rem + env(safe-area-inset-bottom)));z-index:1080;display:flex;justify-content:center;pointer-events:none}
.cookie-card{pointer-events:auto;max-width:1080px;width:100%;margin:0 auto;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:0 2px 10px rgba(26,36,16,.05),0 0 0 1px rgba(26,36,16,.04);padding:1.25rem 1.35rem;display:grid;grid-template-columns:minmax(0,1.45fr) auto;gap:1rem 1.5rem;align-items:end}
.cookie-copy{display:grid;gap:.35rem}
.cookie-copy-head{display:grid;gap:.35rem}
.cookie-card .cookie-title,.cookie-card h6{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.03em;line-height:1.2;color:var(--ink)}
.cookie-card p{margin:0;color:var(--ink-soft);line-height:1.6}
.cookie-kicker{margin-bottom:.25rem;justify-self:start}
.cookie-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;justify-content:flex-end}
.cookie-modal[hidden],.cookie-consent[hidden]{display:none!important}
.cookie-modal{position:fixed;inset:0;z-index:1090;padding:1rem;display:grid;place-items:center}
.cookie-modal-backdrop{position:absolute;inset:0;background:rgba(17,26,9,.55)}
.cookie-modal-dialog{position:relative;z-index:1;width:min(760px,100%);max-height:min(calc(100vh - 2rem),820px);overflow:auto;background:#fff;border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1.5rem;box-shadow:0 2px 10px rgba(26,36,16,.05)}
.cookie-modal-dialog h2{color:var(--ink);font-weight:800;letter-spacing:-.035em}
.cookie-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.cookie-modal-intro{padding:.25rem 0 1rem;border-bottom:1px solid var(--border-soft);margin-bottom:1rem}
.cookie-modal-intro strong{display:block;color:var(--ink);margin-bottom:.25rem}
.cookie-settings-list{display:grid;gap:0}
.cookie-option-card{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border-soft);background:#fff}
.cookie-option-card.selectable{cursor:pointer}
.cookie-option-card.selectable:hover .cookie-option-copy strong,.cookie-option-card.selectable:focus-within .cookie-option-copy strong{color:var(--brand-text)}
.cookie-option-copy{min-width:0}
.cookie-option-copy strong{display:block;color:var(--ink);margin-bottom:.2rem;font-size:1.02rem}
.cookie-option-copy p{line-height:1.6}
.cookie-option-state{display:flex;flex-direction:column;align-items:flex-end;gap:.6rem}
.cookie-state-badge{display:inline-flex;align-items:center;gap:.4rem;color:var(--brand-text);font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.cookie-switch{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:56px;min-height:44px}
.cookie-switch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.cookie-switch-ui{position:relative;display:inline-flex;width:56px;height:32px;border-radius:999px;background:#d3dbc8;border:1px solid rgba(26,36,16,.14);transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.cookie-switch-ui::after{content:'';position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(26,36,16,.25);transition:transform .18s ease}
.cookie-switch input:checked + .cookie-switch-ui{background:var(--brand-text);border-color:var(--brand-text)}
.cookie-switch input:checked + .cookie-switch-ui::after{transform:translateX(24px)}
.cookie-switch input:focus-visible + .cookie-switch-ui{outline:3px solid rgba(174,201,12,.95);outline-offset:2px}
.cookie-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.2rem}
.cookie-modal-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-soft);color:var(--muted)}

@keyframes fadeIn{from{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}

@media (min-width:992px){
  /* Klick-gesteuert (senioren-freundlich): Menü öffnet nur mit .is-open, nicht per Hover */
  .nav-item.mega-parent.is-open>.dropdown-menu{display:block}
}

@media (max-width:991.98px){
  .topbar{display:none}
  .brandbar .container-xxl{padding-block:1rem}
  .brand-logo-image{height:48px}
  .nav-shell{border-top:0}
  #mainNav{
    padding:0 0 1rem;
    max-height:calc(100vh - 104px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .nav-primary{padding-top:.25rem}
  .navbar-nav .nav-link{padding:.78rem 0}
  .nav-item.dropdown.d-none.d-lg-block{display:none!important}
  .mobile-menu-section{display:block}
  .mobile-subnav.show{max-height:none}
  .mobile-subnav-inner{
    max-height:calc(100vh - 220px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding-right:.5rem;
  }
  .sticky-side{position:static}
  .cookie-card{grid-template-columns:1fr;padding:1.05rem 1.1rem}
}

@media (max-width:767.98px){
  .py-6{padding:4rem 0}
  .hero-section .display-5{font-size:2rem}
  .content-card,.large-card{padding:1.15rem}
  .brand-logo-image{height:42px}
  .cookie-consent{left:.75rem;right:.75rem;bottom:max(.75rem,calc(.5rem + env(safe-area-inset-bottom)))}
  .cookie-card{padding:1rem}
  .cookie-actions{width:100%;justify-content:stretch}
  .cookie-actions .btn{flex:1 1 100%}
  .cookie-modal{padding:.75rem}
  .cookie-modal-dialog{padding:1.05rem 1rem}
  .cookie-modal-header,.cookie-option-card{flex-direction:column}
  .cookie-option-state{width:100%;align-items:flex-start}
  .cookie-modal-actions .btn{width:100%}
  .service-panel-links{grid-template-columns:minmax(0,1fr)}
}


.faq-section .accordion-item{border:1px solid rgba(26,36,48,.08);border-radius:18px!important;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(30,45,62,.05)}
.faq-section .accordion-item + .accordion-item{margin-top:.85rem}
.faq-section .accordion-button{font-weight:700;color:#223140;padding:1.1rem 1.2rem;background:#fff;box-shadow:none}
.faq-section .accordion-button:not(.collapsed){background:#f7faef;color:#5f7700}
.faq-section .accordion-button:focus{box-shadow:none;border-color:rgba(174,201,12,.28)}
.faq-section .accordion-body{color:#556474;line-height:1.7}

/* Accessibility, header behavior, mobile nav and scroll-to-top enhancements */
html{scroll-behavior:smooth}
body{overflow-x:hidden}
.skip-link{position:fixed;left:1rem;top:.75rem;z-index:2000;padding:.75rem 1rem;border-radius:12px;background:#1a2b0e;color:#fff;transform:translateY(-150%);transition:transform .2s ease}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid rgba(174,201,12,.95);outline-offset:3px}
a,button,input,select,textarea,[role="button"]{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
a,button,.btn,.choice-list__item,[role="button"]{touch-action:manipulation}
h1,h2,h3,h4{text-wrap:balance}
.site-header{transition:box-shadow .2s ease,background-color .2s ease}
.site-header.is-measuring,.site-header.is-measuring *{transition:none!important}

.header-icon-btn{position:relative;width:42px;height:42px;border-radius:14px;border:1px solid rgba(26,36,48,.08);background:#fff;color:#263442;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 24px rgba(30,45,62,.06);transition:transform .15s ease,border-color .15s ease,background .15s ease,color .15s ease}
.header-icon-btn:hover{transform:translateY(-1px);border-color:rgba(174,201,12,.35);color:#5a7000;background:#f8fbef}
.header-icon-btn:active{transform:scale(0.92)}
.header-icon-btn.is-brand{background:var(--brand);border-color:var(--brand);color:#233100}
.header-icon-btn.is-brand:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}
.shop-cart-badge{position:absolute;top:-6px;right:-6px;display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;padding:0 .28rem;border-radius:999px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:800;box-shadow:none}
.shop-hero{background:radial-gradient(circle at top right,rgba(174,201,12,.18),transparent 28%),linear-gradient(180deg,#fff 0%,#f2f7e7 100%)}
.shop-hero-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.1rem;align-items:end;background:linear-gradient(145deg,rgba(255,255,255,.96) 0%,rgba(247,250,241,.94) 100%);border:1px solid rgba(26,36,48,.07);border-radius:32px;padding:1.6rem 1.7rem;box-shadow:0 24px 60px rgba(30,45,62,.08)}
.shop-hero-card h1{letter-spacing:-.04em;max-width:16ch;margin-bottom:.55rem}
.shop-hero-card .lead{max-width:62ch}
.shop-hero-aside,.shop-stepper{display:grid;gap:.85rem}
.shop-hero-stat{background:#fff;border:1px solid rgba(26,36,48,.08);border-radius:20px;padding:1rem}
.shop-hero-stat strong{display:block;font-size:1.6rem;line-height:1;margin-bottom:.35rem}
.shop-stepper div{font-weight:700;color:#5e6d79}
.shop-stepper .is-done{background:#f6f9ee;color:var(--brand-text)}
.shop-stepper .is-active{background:#1a2b0e;color:#fff}
.shop-stepper-inline{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:.55rem}
.shop-stepper-inline div{display:inline-flex;align-items:center;gap:.5rem;padding:.48rem .72rem;border-radius:999px;background:#fff;border:1px solid rgba(26,36,48,.07)}
.shop-stepper-inline span{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;background:#eef3e2;font-size:.82rem;font-weight:800;color:#536700}
.shop-stepper-inline small{font-size:.8rem;font-weight:800;letter-spacing:.01em;color:#556472}
.shop-stepper-inline .is-active{background:#1a2b0e;border-color:#1a2b0e}
.shop-stepper-inline .is-active small{color:#fff}
.shop-stepper-inline .is-active span{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.18)}
.shop-home-layout{align-items:start}
.shop-home-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:1.25rem;align-items:end;background:radial-gradient(circle at top right,rgba(174,201,12,.18),transparent 26%),linear-gradient(145deg,#ffffff 0%,#f4f8ea 100%);border-radius:32px}
.shop-home-hero h1{letter-spacing:-.04em;max-width:15ch;margin-bottom:.7rem}
.shop-home-hero-copy p{max-width:64ch}
.shop-home-hero-metrics{display:grid;gap:.8rem}
.shop-home-metric{padding:1rem 1.05rem;border-radius:22px;background:rgba(255,255,255,.88);border:1px solid rgba(26,36,48,.06)}
.shop-home-metric strong{display:block;font-size:1.65rem;line-height:1;margin-bottom:.25rem;color:#213100}
.shop-home-metric span{display:block;color:#556472;font-weight:600;line-height:1.45}
.shop-bonus-chip{display:inline-flex;align-items:center;gap:.65rem;padding:.82rem .95rem;border-radius:18px;background:#fff;border:1px solid rgba(26,36,48,.08);font-weight:700;color:#304150}
.shop-bonus-chip i{color:#6a8100}
.shop-bonus-chip.is-success{background:#f4f8ea;color:#516700}
.shop-layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;align-items:start}
.shop-main,.shop-aside{min-width:0}
.shop-main > .content-card,.shop-aside > .content-card{border-radius:30px}
.shop-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}
.shop-section-head-stack{align-items:flex-start}
.shop-section-head-stack p{max-width:62ch}
.shop-category-grid,.shop-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}
.shop-category-card,.shop-product-card{border:1px solid rgba(26,36,48,.07);border-radius:28px;background:rgba(255,255,255,.96);padding:1.2rem;box-shadow:0 14px 38px rgba(30,45,62,.05)}
.shop-category-card h3,.shop-product-card h3{margin-bottom:.45rem;letter-spacing:-.02em}
.shop-category-tag,.shop-product-media-badge{display:inline-flex;align-items:center;padding:.36rem .68rem;border-radius:999px;background:#edf5d5;color:#5c7300;font-size:.78rem;font-weight:800;margin-bottom:.85rem}
.shop-home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.shop-home-category-card{display:grid;gap:.95rem;align-content:start;padding:1.35rem;background:linear-gradient(180deg,#fff 0%,#fbfcf8 100%)}
.shop-home-category-card.is-preview{background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%)}
.shop-home-category-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.shop-home-category-icon{width:50px;height:50px;border-radius:18px;background:#f2f7e3;color:#5f7700;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem}
.shop-home-category-copy{color:#4a5967;line-height:1.7;margin:0}
.shop-home-category-actions{display:grid;gap:.7rem;align-items:start}
.shop-inline-note{display:block;color:#697682;font-size:.92rem;line-height:1.5}
.shop-category-meta,.shop-price-row,.shop-cart-meta,.shop-mini-lines div,.shop-aside-summary div{display:flex;justify-content:space-between;gap:1rem;align-items:center}
.shop-category-meta span,.shop-cart-meta span,.shop-mini-lines span,.shop-aside-summary span{color:var(--muted)}
.shop-product-card{display:flex;flex-direction:column;gap:.95rem;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.shop-product-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(30,45,62,.08);border-color:rgba(174,201,12,.22)}
.shop-product-media{display:block;position:relative;background:linear-gradient(180deg,#fbfdf7,#eff4e4);border-radius:22px;padding:1.1rem;min-height:250px;border:1px solid rgba(26,36,48,.05)}
.shop-product-media img,.shop-product-gallery-card img{width:100%;height:100%;max-height:220px;object-fit:contain}
.shop-product-body{display:grid;gap:.8rem}
.shop-price-row{align-items:flex-start}
.shop-price-row strong{font-size:1.2rem;color:#203100;letter-spacing:-.02em}
.shop-price-row small,.shop-price-row-lg small{display:block;margin-top:.15rem;color:var(--muted);font-size:.8rem}
.shop-price-row-lg strong{font-size:2rem}
.shop-price-compare{display:block;font-size:.92rem;color:#8894a0;text-decoration:line-through}
.shop-price-row strong,.shop-price-row-lg strong,.shop-price-compare,.shop-cart-badge,.stat-number,.order-number{font-variant-numeric:tabular-nums}
.shop-discount-pill{display:inline-flex;align-items:center;padding:.42rem .72rem;border-radius:999px;background:#203100;color:#fff;font-size:.8rem;font-weight:800}
.shop-inline-form{display:block}
.shop-product-actions{display:grid;gap:.65rem}
.shop-aside-stack{position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem)}
.shop-home-aside-card,.shop-cart-aside{background:rgba(255,255,255,.97);box-shadow:0 18px 46px rgba(30,45,62,.08)}
.shop-aside-summary{display:grid;gap:.75rem}
.shop-aside-summary .is-total{padding-top:.85rem;border-top:1px solid rgba(26,36,48,.08)}
.shop-trust-list{display:grid;gap:.75rem}
.shop-trust-list div{display:flex;align-items:center;gap:.65rem;color:#51606d}
.shop-trust-list i{color:#6c8500}
.shop-payment-teaser-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.shop-payment-teaser{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1rem 1.05rem;border-radius:22px;background:#fff;border:1px solid rgba(26,36,48,.07);box-shadow:0 12px 28px rgba(30,45,62,.04)}
.shop-product-stage{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:1.5rem;align-items:start}
.shop-product-gallery-card{position:relative;background:linear-gradient(180deg,#fff,#eef4e3);border:1px solid rgba(26,36,48,.07);border-radius:32px;padding:1.55rem;min-height:540px;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 46px rgba(30,45,62,.06)}
.shop-product-info{display:grid;gap:1rem}
.shop-product-meta{display:flex;flex-wrap:wrap;gap:.7rem}
.shop-product-meta span{padding:.52rem .76rem;border-radius:999px;background:#f5f8fb;border:1px solid rgba(26,36,48,.06);font-size:.9rem}
.shop-buy-box{display:grid;grid-template-columns:120px 1fr 1fr;gap:.8rem;align-items:end}
.shop-copy{line-height:1.78}
.shop-cart-items{display:grid;gap:1rem}
.shop-cart-item{display:grid;grid-template-columns:116px minmax(0,1fr) 120px 144px;gap:1rem;align-items:center;padding:1rem 0;border-top:1px solid rgba(26,36,48,.08)}
.shop-cart-item:first-child{border-top:0;padding-top:0}
.shop-cart-thumb{width:116px;height:116px;object-fit:contain;background:#f7fbef;border-radius:20px;padding:.75rem;border:1px solid rgba(26,36,48,.05)}
.shop-cart-copy h3{margin-bottom:.35rem;letter-spacing:-.02em}
.shop-cart-qty .form-control{text-align:center}
.shop-cart-price{text-align:right}
.shop-coupon-form{display:grid;gap:.7rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.shop-checkout-form{display:grid;gap:1.45rem}
.shop-form-section + .shop-form-section{padding-top:1.3rem;border-top:1px solid rgba(26,36,48,.08)}
.shop-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.shop-payment-stack{display:grid;gap:.8rem}
.shop-payment-card{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1rem 1.05rem;border:1px solid rgba(26,36,48,.08);border-radius:22px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.shop-payment-card:hover,.shop-payment-card:focus-within{border-color:rgba(174,201,12,.36);box-shadow:0 16px 36px rgba(30,45,62,.06);transform:translateY(-1px)}
.shop-payment-card input{margin:0}
.shop-payment-card span{font-weight:800}
.shop-payment-icon{width:46px;height:46px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;background:#f2f8e4;color:#607700;font-size:1.08rem}
.shop-payment-copy{display:grid;gap:.16rem}
.shop-payment-copy small{color:var(--muted);font-weight:500}
.shop-payment-badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .68rem;border-radius:999px;background:#eef3f7;color:#425362;font-size:.78rem;font-weight:800}
.shop-billing-panel{display:none;margin-top:1rem;padding:1rem 1.05rem;border-radius:24px;background:#f8fbf1;border:1px solid rgba(174,201,12,.18)}
.shop-billing-panel.is-visible{display:block}
.shop-checkbox{display:flex;gap:.75rem;align-items:flex-start}
.shop-checkbox input{margin-top:.25rem}
.shop-checkbox.is-error{padding:.95rem 1rem;border:1px solid rgba(188,48,48,.28);border-radius:18px;background:#fff6f6}
.shop-confirm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}
.shop-confirm-grid div{padding:1rem;border-radius:20px;background:#f8fafc;border:1px solid rgba(26,36,48,.06)}
.shop-mini-lines{display:grid;gap:.8rem}
.shop-mini-line-with-image{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto;justify-content:stretch!important}
.shop-mini-line-with-image img,.order-history-preview img,.order-line-product img,.aid-order-thumb{width:46px;height:46px;object-fit:contain;background:#f7fbef;border:1px solid rgba(26,36,48,.06);border-radius:14px;padding:.35rem}
.order-history-preview{display:flex;align-items:center;gap:.7rem;min-width:130px}
.order-history-preview span{color:#697682;font-size:.88rem}
.order-tracking-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .68rem;border-radius:999px;background:#eef7d9;color:var(--brand-text);font-weight:800;font-size:.82rem;white-space:nowrap}
.portal-status-hero,.portal-overview-status{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid rgba(174,201,12,.28);border-radius:26px;background:linear-gradient(135deg,#fbfff0,#fff);padding:1.25rem}
.portal-status-count{display:grid;place-items:center;min-width:118px;min-height:96px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:3px solid var(--brand);background:var(--forest);color:#fff;text-align:center}
.portal-status-count strong{font-size:2.25rem;line-height:1}
.portal-status-count span{font-size:.78rem;color:rgba(255,255,255,.82);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.portal-empty-state{border:1px dashed rgba(26,36,48,.18);border-radius:28px;background:#fbfcf8;padding:2rem;display:grid;gap:.75rem}
.portal-empty-state i{width:54px;height:54px;border-radius:18px;background:#eef7d9;color:#607700;display:grid;place-items:center;font-size:1.35rem}
.portal-status-list{display:grid;gap:1rem}
.portal-status-card{border:1px solid rgba(26,36,48,.08);border-radius:28px;background:#fff;box-shadow:0 14px 34px rgba(30,45,62,.06);padding:1.15rem}
.portal-status-card-head{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:.95rem}
.portal-status-icon{width:48px;height:48px;border-radius:18px;background:#eef7d9;color:#607700;display:grid;place-items:center;font-size:1.1rem}
.portal-status-type{display:block;color:var(--brand-text);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:.12rem}
.portal-status-card h4{margin:0;font-size:1.12rem}
.portal-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:.42rem .72rem;border-radius:999px;background:#1a2b0e;color:#fff;font-weight:900;font-size:.78rem;white-space:nowrap}
.portal-status-description{color:#53616e;margin:1rem 0}
.portal-process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.7rem;margin:.95rem 0}
.portal-process-step{position:relative;display:flex;align-items:center;gap:.55rem;padding:.72rem .78rem;border-radius:18px;background:#f5f7f9;color:#6a7783;font-weight:800;font-size:.86rem}
.portal-process-dot{width:13px;height:13px;border-radius:999px;background:#cfd7de;box-shadow:0 0 0 4px rgba(207,215,222,.18);flex:0 0 auto}
.portal-process-step.done{background:var(--surface);color:var(--brand-text)}
.portal-process-step.done .portal-process-dot{background:var(--brand);box-shadow:0 0 0 4px rgba(174,201,12,.2)}
.portal-process-step.current{background:#fff;color:var(--ink);box-shadow:inset 3px 0 0 var(--brand-dark);border-radius:0 18px 18px 0}
.portal-process-step.current .portal-process-dot{background:var(--brand-dark);box-shadow:0 0 0 4px rgba(122,149,0,.22)}
.portal-status-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem}
.order-line-product{display:flex;align-items:center;gap:.8rem}
.js-lightbox-image{cursor:zoom-in;transition:transform .18s ease,box-shadow .18s ease}
.js-lightbox-image:hover,.js-lightbox-image:focus-visible{transform:scale(1.04);box-shadow:0 12px 26px rgba(30,45,62,.12);outline:3px solid rgba(174,201,12,.35);outline-offset:3px}
.image-lightbox[hidden]{display:none!important}
.image-lightbox{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:1rem}
.image-lightbox-backdrop{position:absolute;inset:0;border:0;background:rgba(12,22,33,.72);backdrop-filter:blur(8px);cursor:zoom-out}
.image-lightbox-dialog{position:relative;z-index:1;width:min(1120px,100%);max-height:calc(100vh - 2rem);display:grid;grid-template-rows:auto minmax(0,1fr);gap:1rem;padding:1.1rem;border-radius:28px;background:linear-gradient(180deg,#ffffff 0%,#f8fbef 100%);box-shadow:0 34px 80px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.28)}
.image-lightbox-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.image-lightbox-head h2{margin:.15rem 0 0;font-size:1.25rem;color:#223140}
.image-lightbox-stage{min-height:0;display:grid;place-items:center;background:#fff;border-radius:22px;border:1px solid rgba(26,36,48,.06);overflow:hidden}
.image-lightbox-stage img{display:block;max-width:100%;max-height:calc(100vh - 180px);object-fit:contain;padding:1rem}

@media (max-width:1199.98px){
  .shop-layout-grid{grid-template-columns:minmax(0,1fr) 300px}
  .shop-home-category-grid,.shop-payment-teaser-grid{grid-template-columns:minmax(0,1fr)}
}

@media (max-width:991.98px){
  .shop-hero-card,.shop-layout-grid,.shop-product-stage,.shop-buy-box,.shop-home-hero{grid-template-columns:minmax(0,1fr)}
  .shop-aside-stack,.shop-cart-aside,.shop-home-aside-card,.shop-account-aside{position:static}
  .shop-category-grid,.shop-product-grid,.shop-payment-grid,.shop-confirm-grid,.shop-payment-teaser-grid{grid-template-columns:minmax(0,1fr)}
  .shop-cart-item{grid-template-columns:90px minmax(0,1fr);align-items:start}
  .shop-cart-qty,.shop-cart-price{grid-column:2}
  .shop-product-gallery-card{min-height:360px}
  .shop-payment-card{grid-template-columns:auto auto minmax(0,1fr)}
  .shop-payment-badge{grid-column:3}
}

@media (max-width:767.98px){
  .shop-hero-card{padding:1.2rem}
  .shop-hero-card h1{max-width:none;font-size:2rem}
  .shop-home-hero{padding:1.2rem}
  .shop-home-hero h1{font-size:2rem;max-width:none}
  .shop-cart-item{grid-template-columns:minmax(0,1fr)}
  .shop-cart-thumb{width:100%;height:180px}
  .shop-cart-qty,.shop-cart-price{grid-column:auto}
  .shop-payment-card{grid-template-columns:auto 1fr}
  .shop-payment-badge{grid-column:auto}
  .image-lightbox{padding:.6rem}
  .image-lightbox-dialog{border-radius:22px;padding:.85rem}
  .image-lightbox-stage img{max-height:calc(100vh - 150px);padding:.6rem}
}
.topbar{overflow:hidden;max-height:56px;opacity:1;transition:max-height .25s ease,opacity .25s ease,padding .25s ease,margin .25s ease,border-color .25s ease}
.brandbar{overflow:hidden;max-height:92px;opacity:1;transition:max-height .28s ease,opacity .28s ease,padding .28s ease,margin .28s ease,border-color .28s ease}
.site-header.is-condensed .topbar{max-height:0;opacity:0;padding-top:0;padding-bottom:0;border-bottom-color:transparent}
.site-header.is-condensed .brandbar{max-height:0;opacity:0;border-bottom-color:transparent}
.site-header.is-condensed .brandbar .container-xxl{padding-top:0!important;padding-bottom:0!important;min-height:0}
.brand-logo-image{transition:height .28s ease,opacity .28s ease}
.site-header.is-condensed .brand-logo-image{height:0;opacity:0}
.site-header.is-condensed .condensed-brand-link{width:84px;margin-right:.5rem;opacity:1;pointer-events:auto;transform:translateX(0)}
.site-header .brandbar,.site-header .nav-shell{background:#fff}
.nav-shell{position:relative;z-index:20}
.navbar-toggler-icon{background-image:none;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem}
.navbar-toggler-icon::before{content:"\f0c9";font-family:"Font Awesome 6 Free";font-weight:900;color:#263442;font-size:1.2rem}
#maincontent:focus{outline:none}
.scroll-top-btn{position:fixed;right:1rem;bottom:1rem;z-index:1060;width:48px;height:48px;border:0;border-radius:999px;background:#aec90c;color:#223140;box-shadow:0 14px 30px rgba(30,45,62,.18);display:inline-flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.scroll-top-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.scroll-top-btn:hover{background:#98b400}
.scroll-top-btn:focus-visible{outline:3px solid rgba(174,201,12,.4);outline-offset:4px}
.footer-links a,.site-footer p,.site-footer span{line-height:1.65}

@media (min-width:992px){
  .nav-item.dropdown:hover>.dropdown-menu,
  .nav-item.dropdown:focus-within>.dropdown-menu{display:block}
}

@media (max-width:991.98px){
  .condensed-brand-link{display:none!important}
  #mainNav{
    padding:0 0 1rem;
    max-height:calc(100vh - 88px);
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    background:#fff;
  }
  .nav-shell .container-xxl{padding-inline:0}
  .main-navbar{align-items:stretch}
  .navbar-collapse{border-top:1px solid rgba(26,36,48,.08)}
  .nav-primary{padding-inline:1rem}
  .mobile-menu-section{display:block}
  .mobile-subnav{overflow:visible}
  .mobile-subnav-inner{
    max-height:none;
    overflow:visible;
    padding-right:0;
    border-left:2px solid rgba(174,201,12,.25);
  }
  .mobile-subnav-group:last-child{padding-bottom:.25rem}
  .brand-actions{display:none!important}
  .scroll-top-btn{right:.85rem;bottom:.85rem}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

.service-card{padding:0;overflow:hidden}
.service-card-media-link{display:block}
.service-card-media-wrap{aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#f8fbef 0%,#eef4df 100%);border-bottom:1px solid rgba(26,36,48,.06)}
.service-card-media{width:100%;height:100%;object-fit:cover;display:block;transition:transform .28s ease}
.service-card:hover .service-card-media{transform:scale(1.035)}
.service-card-body{padding:1.25rem 1.35rem 1.35rem}
.footer-legal-links li+li{margin-top:0}

body.modal-open{overflow:hidden}
.cookie-actions .btn{white-space:nowrap}
.cta-box{border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1.6rem 1.65rem}
.cta-actions{display:flex;flex-wrap:wrap;gap:.85rem;justify-content:flex-start}
.service-card-media-link:focus-visible .service-card-media-wrap{outline:3px solid rgba(174,201,12,.7);outline-offset:-3px}

@media (max-width: 767.98px){
  .cta-box{padding:1.25rem}
  .cta-actions .btn{width:100%}
}


/* Restored accessibility widget styles */
.accessibility-btn,.scroll-top-btn{position:fixed;right:1rem;z-index:1060;width:48px;height:48px;border:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 14px 30px rgba(30,45,62,.18);transition:opacity .18s ease,transform .18s ease,visibility .18s ease,background-color .18s ease}
.accessibility-btn{bottom:4.5rem;background:#1a2b0e;color:#fff}
.accessibility-btn:hover{background:#2c4317}
.accessibility-btn:focus-visible{outline:3px solid rgba(174,201,12,.95);outline-offset:4px}
.scroll-top-btn{bottom:1rem}
.accessibility-modal[hidden]{display:none!important}
.accessibility-modal{position:fixed;inset:0;z-index:1095}
.accessibility-backdrop{position:absolute;inset:0;background:rgba(17,26,9,.55)}
.accessibility-dialog{position:relative;z-index:1;max-width:720px;margin:6vh auto;background:#fff;border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1.5rem;box-shadow:0 2px 10px rgba(26,36,16,.05)}
.accessibility-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}
.accessibility-head h2{margin:.2rem 0 0;font-size:1.45rem;font-weight:800;letter-spacing:-.035em;color:var(--ink)}
.accessibility-intro{color:var(--ink-soft);line-height:1.65;margin-bottom:1rem}
.accessibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.a11y-option{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;min-height:56px;padding:1rem 1.05rem;border:1px solid var(--border-soft);border-left:3px solid var(--border-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#fff;cursor:pointer}
.a11y-option:hover,.a11y-option:focus-within{border-left-color:var(--brand)}
.a11y-option:has(input:checked){border-left-color:var(--brand);background:var(--surface)}
.a11y-option strong{display:block;margin-bottom:.2rem;color:var(--ink)}
.a11y-option small{display:block;color:var(--ink-soft);line-height:1.45}
.a11y-option input{width:22px;height:22px;margin-top:.15rem;accent-color:var(--brand-text);flex:0 0 auto}
.accessibility-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.15rem}
.icon-btn{width:44px;height:44px;border:1px solid var(--border-soft);border-radius:999px;background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}
.icon-btn:hover,.icon-btn:focus-visible{border-color:var(--brand);color:var(--brand-text)}
body.a11y-font{font-size:112%}
body.a11y-font .btn,body.a11y-font .form-control,body.a11y-font .form-select{font-size:1rem}
body.a11y-contrast{background:#fff;color:#111}
body.a11y-contrast .site-header .brandbar,body.a11y-contrast .site-header .nav-shell,body.a11y-contrast .content-card,body.a11y-contrast .large-card,body.a11y-contrast .keywords-box,body.a11y-contrast .accordion-item,body.a11y-contrast .accessibility-dialog{background:#fff!important;border-color:#111!important;box-shadow:none!important}
body.a11y-contrast a,body.a11y-contrast .nav-link,body.a11y-contrast h1,body.a11y-contrast h2,body.a11y-contrast h3,body.a11y-contrast h4,body.a11y-contrast h5,body.a11y-contrast h6{color:#111!important}
body.a11y-contrast .btn-brand{background:#111!important;border-color:#111!important;color:#fff!important}
body.a11y-links a:not(.btn):not(.nav-link){text-decoration:underline!important;text-underline-offset:3px}
body.a11y-motion *,body.a11y-motion *::before,body.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media (max-width:991.98px){
  .accessibility-btn{right:.85rem;bottom:4.25rem}
  .scroll-top-btn{right:.85rem;bottom:.85rem}
  .accessibility-dialog{max-width:calc(100% - 1rem);margin:2.5vh auto;padding:1.1rem}
}
@media (max-width:767.98px){
  .accessibility-grid{grid-template-columns:minmax(0,1fr)}
  .accessibility-actions{flex-direction:column-reverse}
  .accessibility-actions .btn{width:100%}
  .a11y-option{padding:.9rem}
}

/* Hilfsmittelbestellung */
.aid-layout,.aid-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.5rem;align-items:start}
.aid-shell,.aid-side-card{border-radius:32px}
.aid-shell-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.aid-step-indicator{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}
.aid-step-indicator button{display:inline-flex;align-items:center;gap:.55rem;padding:.45rem .72rem;border-radius:999px;border:1px solid rgba(26,36,48,.08);background:#fff;color:#51606d;font-weight:700}
.aid-step-indicator button span{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;background:#eef4df;color:#5f7700;font-size:.82rem}
.aid-step-indicator button.is-active{background:#1a2b0e;color:#fff;border-color:#1a2b0e}
.aid-step-indicator button.is-active span,.aid-step-indicator button.is-complete span{background:rgba(255,255,255,.16);color:#fff}
.aid-step-indicator button.is-complete{background:var(--brand-text);color:#fff;border-color:var(--brand-text)}
.aid-step{display:none}
.aid-step.is-active{display:block;animation:fadeIn .18s ease}
.aid-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.aid-field-span{grid-column:1 / -1}
.aid-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.aid-choice-card{display:flex;align-items:center;gap:.7rem;padding:1rem 1.05rem;border-radius:22px;border:1px solid rgba(26,36,48,.08);background:#fff;cursor:pointer;font-weight:700;color:#2a3a48}
.aid-choice-card input{margin:0}
.aid-stage-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1rem;align-items:start}
.aid-product-list,.aid-order-history,.aid-order-cards,.aid-side-points{display:grid;gap:.8rem}
.aid-product-card,.aid-history-card,.aid-order-card,.aid-cart-panel{border:1px solid rgba(26,36,48,.07);border-radius:24px;background:#fff}
.aid-product-card{padding:.85rem}
.aid-product-card.is-disabled{opacity:.48;background:#f6f8f2}
.aid-product-card.is-disabled .aid-product-image{filter:grayscale(.35)}
.aid-product-card.is-disabled .btn{pointer-events:none}
.aid-product-card-head{display:grid;grid-template-columns:74px minmax(0,1fr);gap:.85rem;align-items:start}
.aid-product-image{width:74px;height:74px;border-radius:16px;object-fit:cover;background:#f4f7fb;border:1px solid rgba(26,36,48,.06)}
.aid-product-card h3{font-size:1rem;margin-bottom:.22rem;line-height:1.25}
.aid-product-card p{margin:0;color:#5c6a77;line-height:1.4;font-size:.94rem}
.aid-product-card-meta,.aid-product-card-actions,.aid-history-head,.aid-history-meta,.aid-plan-summary,.aid-cart-item,.aid-cart-item-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.aid-product-card-meta{margin-top:.7rem;font-size:.95rem}
.aid-product-card-actions{margin-top:.7rem;flex-wrap:wrap;gap:.55rem}
.aid-product-card-actions .form-control{max-width:92px}
.aid-product-card-actions .form-select{max-width:150px}
.aid-product-card-actions .btn{margin-left:auto}
.aid-cart-panel{padding:.9rem;position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem);box-shadow:0 18px 44px rgba(30,45,62,.08);min-width:0}
.aid-cart-head{display:flex;justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.8rem}
.aid-cart-head h3{font-size:1.35rem;line-height:1.15}
.aid-cart-list{display:grid;gap:.75rem}
.aid-cart-item{padding:.72rem .78rem;align-items:flex-start;flex-wrap:wrap;border-radius:16px;background:#fbfcf7}
.aid-cart-item-copy{display:grid;gap:.15rem}
.aid-cart-item-copy strong{line-height:1.25}
.aid-cart-item-copy span{color:#6a7783;font-size:.92rem}
.aid-cart-item-meta{gap:.55rem;flex-wrap:wrap}
.aid-remove-btn{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px}
.aid-progress-wrap{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.aid-signature-stage{display:grid;gap:1rem}
.aid-signature-box{padding:.5rem;border-radius:28px;background:#f7fbef;border:1px solid rgba(174,201,12,.28)}
.aid-signature-box canvas{display:block;width:100%;min-height:180px;border-radius:22px}
.aid-consent-box{padding:1rem 1.05rem;border-radius:22px;background:#f8fafc;border:1px solid rgba(26,36,48,.07)}
.aid-consent-box.is-error{border-color:rgba(188,48,48,.38);background:#fff5f5}
.aid-form-actions{display:flex;justify-content:space-between;gap:.85rem;margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid rgba(26,36,48,.08)}
.aid-side-card{position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem)}
.aid-side-points div,.aid-feature-list div{display:flex;gap:.7rem;align-items:flex-start;color:#51606d}
.aid-side-points i,.aid-feature-list i{color:#6c8500;margin-top:.15rem}
.aid-feature-list{display:grid;gap:1rem}
.aid-plan-summary{padding:.9rem 1rem;border-radius:22px;background:#f7fbef;border:1px solid rgba(174,201,12,.2)}
.aid-plan-summary span{color:#63717d}
.aid-plan-summary strong{font-size:1.2rem;color:#213100}
.aid-history-card{padding:1rem 1.05rem}
.aid-history-toggle{width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit}
.aid-history-head{margin:0}
.aid-history-head > div:first-child{display:grid;gap:.12rem}
.aid-history-head small{color:#6a7783;font-size:.92rem}
.aid-history-shipping{display:inline-flex!important;align-items:center;gap:.45rem;color:#536400!important}
.aid-history-tracking-link{display:inline-flex;align-items:center;margin-top:.75rem;color:#5f7700;font-weight:800;text-decoration:none}
.aid-history-tracking-link:hover,.aid-history-tracking-link:focus-visible{color:var(--brand-ink)}
.aid-history-toggle .fa-chevron-down{transition:transform .18s ease;color:#6a7783}
.aid-history-toggle[aria-expanded="true"] .fa-chevron-down{transform:rotate(180deg)}
.aid-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:.38rem .72rem;border-radius:999px;background:#eef4df;color:#5d7400;font-size:.82rem;font-weight:800}
.aid-order-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.85rem .9rem}
.aid-order-card-copy{display:grid;gap:.15rem}
.aid-order-card-copy span{color:#697682;font-size:.92rem}
.aid-shipping-note{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;padding:.8rem .9rem;border-radius:18px;background:#f7fbef;color:#4d5f00}
.aid-account-inline{padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.aid-account-inline h4{margin:.2rem 0 .45rem;font-size:1.05rem}
.aid-switch{display:flex;align-items:center;gap:.8rem;margin-top:1rem;font-weight:700}
.aid-switch input{width:46px;height:24px}
.aid-cycle-info,.aid-cycle-note{display:block;padding:.85rem 1rem;border-radius:18px;background:#f7fbef;border:1px solid rgba(174,201,12,.24);color:#51606d}
.aid-cycle-info{display:grid;gap:.25rem;margin:1rem 0}
.aid-cycle-info strong{color:var(--brand-ink)}
.aid-cycle-note{font-weight:700}
.aid-phone-note{color:#53616e;font-weight:700}
.aid-phone-note a{color:var(--brand-text);font-weight:800;text-decoration:none}
.aid-phone-note a:hover,.aid-phone-note a:focus-visible{color:var(--brand-ink)}

.aid-claim-seo-section{background:linear-gradient(180deg,#fff,#f8faf1)}
.aid-claim-hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1rem;align-items:stretch}
.aid-claim-hero > div,.aid-claim-hero aside,.aid-claim-card,.aid-claim-checkrow,.aid-claim-seo-copy{border:1px solid rgba(26,36,48,.08);background:#fff;border-radius:30px;box-shadow:0 18px 44px rgba(30,45,62,.06)}
.aid-claim-hero > div{padding:1.4rem}
.aid-claim-hero h2{font-size:clamp(2rem,3.8vw,4rem);line-height:1;letter-spacing:-.055em;max-width:980px}
.aid-claim-hero p,.aid-claim-card p,.aid-claim-checkrow p,.aid-claim-seo-copy p{color:#5f6d79;line-height:1.72}
.aid-claim-hero aside{padding:1.35rem;background:linear-gradient(160deg,#1a2b0e 0%,#233212 100%);color:#fff;display:flex;flex-direction:column;justify-content:center}
.aid-claim-hero aside strong{font-size:2.2rem;line-height:1;letter-spacing:-.04em}
.aid-claim-hero aside span{color:#e2ebf1;line-height:1.6;margin-top:.75rem}
.aid-claim-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.aid-claim-card{padding:1.15rem}
.aid-claim-card i{width:46px;height:46px;border-radius:16px;background:#eef7d9;color:#607700;display:grid;place-items:center;margin-bottom:1rem}
.aid-claim-card h3{font-size:1.08rem;margin-bottom:.45rem}
.aid-claim-checkrow{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1.2rem;padding:1.25rem;align-items:center}
.aid-claim-checkrow ul{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}
.aid-claim-checkrow li{display:flex;gap:.65rem;align-items:flex-start;padding:.8rem .9rem;border-radius:18px;background:#f7fbef;color:#4d5f00;font-weight:800}
.aid-claim-checkrow li i{margin-top:.2rem}
.aid-claim-seo-copy{padding:1.25rem}
.aid-claim-seo-copy strong{color:#364400}

.aid-info-hero{background:radial-gradient(circle at top right,rgba(174,201,12,.28),transparent 34%),linear-gradient(180deg,#fff,#f5f8ef)}
.aid-info-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) 380px;gap:1.5rem;align-items:center}
.aid-info-hero h1{font-size:clamp(2.2rem,4.3vw,4.8rem);line-height:.98;letter-spacing:-.06em;max-width:940px}
.aid-info-hero .lead{max-width:820px;line-height:1.75}
.aid-info-cta-row{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:1.4rem 0 1rem}
.aid-info-claim-card,.aid-info-final-cta{border:1px solid rgba(26,36,48,.08);background:#fff;border-radius:32px;box-shadow:var(--shadow)}
.aid-info-claim-card{padding:1.4rem}
.aid-info-claim-card span{display:block;color:var(--brand-text);font-weight:800;margin-bottom:.5rem}
.aid-info-claim-card strong{display:block;font-size:2rem;line-height:1.05;letter-spacing:-.04em;margin-bottom:.8rem}
.aid-info-claim-card ul{display:grid;gap:.55rem;margin:1rem 0 0;padding-left:1.1rem;color:#53616e}
.aid-info-benefit-grid,.aid-info-step-grid,.aid-info-service-grid,.aid-info-product-grid{display:grid;gap:1rem}
.aid-info-benefit-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.aid-info-benefit{display:flex;gap:.65rem;align-items:flex-start;padding:1rem;border:1px solid rgba(26,36,48,.07);border-radius:20px;background:#fff}
.aid-info-benefit i{color:#607700;margin-top:.2rem}
.aid-info-callout{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem;border-radius:26px;background:#1a2b0e;color:#fff}
.aid-info-callout p{color:#d9e1e8;margin-bottom:0}
.aid-info-step-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.aid-info-step,.aid-info-service-grid article,.aid-info-product-card{background:#fff;border:1px solid rgba(26,36,48,.07);border-radius:24px}
.aid-info-step{position:relative;padding:1.2rem;overflow:hidden}
.aid-info-step-number{position:absolute;top:.8rem;right:.9rem;font-weight:900;font-size:2.4rem;color:rgba(174,201,12,.24);line-height:1}
.aid-info-step i{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:15px;background:#f4f8e4;color:#607700;margin-bottom:1rem}
.aid-info-step h3,.aid-info-service-grid h3{font-size:1.05rem}
.aid-info-step p,.aid-info-service-grid p,.aid-info-product-card p{color:#5f6d79;line-height:1.65;margin-bottom:0}
.aid-info-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.aid-info-service-grid article{padding:1.1rem}
.aid-info-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.aid-info-product-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:1rem;padding:1rem;align-items:start}
.aid-info-product-card img{width:92px;height:92px;object-fit:cover;border-radius:18px;background:#f4f7fb;border:1px solid rgba(26,36,48,.06)}
.aid-info-product-card h3{font-size:1.05rem;margin-bottom:.35rem}
.aid-info-product-card span{display:inline-flex;margin-top:.7rem;padding:.35rem .65rem;border-radius:999px;background:#f4f8e4;color:#536400;font-weight:800}
.aid-testimonial-carousel{margin-top:1.5rem;padding-bottom:1.25rem}
.aid-testimonial-carousel .owl-stage{display:flex}
.aid-testimonial-carousel .owl-item{display:flex}
.aid-testimonial-card{height:100%;display:flex;flex-direction:column;gap:1rem;margin:0;padding:1.25rem;border-radius:28px;background:linear-gradient(180deg,#fff,#fbfcf7);border:1px solid rgba(26,36,48,.07);box-shadow:0 18px 40px rgba(30,45,62,.07)}
.aid-testimonial-top{display:flex;align-items:center;gap:.8rem}
.aid-testimonial-avatar{width:46px;height:46px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#1a2b0e;color:#fff;font-weight:900}
.aid-testimonial-card figcaption{color:#203040;font-weight:900;line-height:1.2}
.aid-testimonial-card small{color:var(--brand-text);font-weight:800}
.aid-testimonial-stars{display:flex;gap:.18rem;color:#aec90c;font-size:.95rem}
.aid-testimonial-card blockquote{font-size:1.05rem;line-height:1.75;margin:0;color:#44525f}
.aid-testimonial-carousel .owl-dots{margin-top:1.1rem!important}
.aid-testimonial-carousel .owl-dot span{background:#dbe5bd!important}
.aid-testimonial-carousel .owl-dot.active span{background:var(--brand-text)!important;width:26px!important}
.aid-info-final-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem}
.aid-assistant-section{background:linear-gradient(180deg,#f7faef,#fff)}
.aid-assistant-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.4rem;align-items:start}
.aid-assistant-intro,.aid-assistant-card{border:1px solid rgba(26,36,48,.08);border-radius:34px;background:#fff;box-shadow:var(--shadow)}
.aid-assistant-intro{padding:1.5rem;position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem)}
.aid-assistant-intro h2{font-size:clamp(1.9rem,3vw,3.2rem);line-height:1.02;letter-spacing:-.045em}
.aid-assistant-intro p{color:#5f6d79;line-height:1.72}
.aid-assistant-badges{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.25rem}
.aid-assistant-badges span{display:inline-flex;align-items:center;gap:.42rem;padding:.48rem .72rem;border-radius:999px;background:#f2f8df;color:#536900;font-weight:800;font-size:.86rem}
.aid-assistant-card{padding:1.25rem}
.aid-assistant-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin-bottom:1rem}
.aid-assistant-progress span{height:42px;border-radius:16px;background:#f2f5f7;color:#56626d;display:grid;place-items:center;font-weight:900}
.aid-assistant-progress span.is-active{background:#1a2b0e;color:#fff}
.aid-assistant-progress span.is-done{background:#aec90c;color:var(--brand-ink)}
.aid-assistant-steps{position:relative;min-height:380px}
.aid-assistant-step{display:none;animation:fadeIn .22s ease both}
.aid-assistant-step.is-active{display:block}
.aid-assistant-step small{display:block;color:var(--brand-text);font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem}
.aid-assistant-step h3{font-size:1.65rem;margin-bottom:.5rem}
.aid-assistant-step p{color:#5f6d79;line-height:1.65}
.aid-assistant-options{display:grid;gap:.7rem;margin-top:1.1rem}
.aid-assistant-options button{width:100%;border:1px solid rgba(26,36,48,.09);border-radius:20px;background:#fbfcf8;color:#223140;text-align:left;padding:1rem 1.05rem;font-weight:900;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.aid-assistant-options button:hover,.aid-assistant-options button:focus-visible{transform:translateY(-1px);border-color:rgba(174,201,12,.58);box-shadow:0 12px 28px rgba(30,45,62,.08);outline:none}
.aid-assistant-options button.is-selected{background:#f2f8df;border-color:#aec90c;color:#536900}
.aid-assistant-result-list{display:grid;gap:.6rem;margin:1rem 0}
.aid-assistant-result-list div{display:flex;gap:.6rem;align-items:flex-start;padding:.72rem .85rem;border-radius:18px;background:#f7fbef;color:#4d5f00;font-weight:800}
.aid-assistant-result-list i{margin-top:.2rem}
.aid-assistant-actions,.aid-assistant-nav{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}
.aid-assistant-actions{margin:1.15rem 0}
.aid-assistant-nav{justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.aid-assistant-nav .btn[hidden]{display:none}

.recipe-hero{background:radial-gradient(circle at top right,rgba(174,201,12,.28),transparent 34%),linear-gradient(180deg,#fff,#f6f9ec)}
.recipe-hero-grid,.recipe-upload-grid{display:grid;grid-template-columns:minmax(0,1.05fr) 390px;gap:1.5rem;align-items:start}
.recipe-hero-grid{align-items:center}
.recipe-hero h1{font-size:clamp(2.2rem,4.3vw,4.8rem);line-height:.98;letter-spacing:-.06em;max-width:920px}
.recipe-hero .lead{max-width:820px;line-height:1.75}
.recipe-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.4rem 0 1rem}
.recipe-security-card,.recipe-form-card,.recipe-card,.recipe-trust-grid article{background:#fff;border:1px solid rgba(26,36,48,.08);border-radius:32px;box-shadow:var(--shadow)}
.recipe-security-card{padding:1.35rem}
.recipe-security-icon{width:58px;height:58px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:#1a2b0e;color:#fff;font-size:1.35rem;margin-bottom:1rem}
.recipe-security-card ul{display:grid;gap:.65rem;margin:1rem 0 0;padding-left:1.15rem;color:#53616e}
.recipe-form-card{padding:1.4rem}
.recipe-form-head{margin-bottom:1.25rem}
.recipe-form-head p{color:#5f6d79;margin-bottom:0}
.recipe-dropzone{display:grid;place-items:center;text-align:center;gap:.35rem;padding:1.35rem;border-radius:24px;border:1.5px dashed rgba(96,119,0,.35);background:linear-gradient(180deg,#fbfdf5,#f5f8e7);cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease}
.recipe-dropzone:hover{border-color:var(--brand-text);transform:translateY(-1px);background:#f7fbef}
.recipe-dropzone-icon{width:54px;height:54px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#607700;font-size:1.35rem;box-shadow:0 12px 28px rgba(30,45,62,.08)}
.recipe-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.recipe-consent{align-items:flex-start;padding:1rem;border-radius:20px;background:#f8fafc;border:1px solid rgba(26,36,48,.07)}
.recipe-side-stack{display:grid;gap:1rem;position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem)}
.recipe-card{padding:1.25rem}
.recipe-card.dark{background:#1a2b0e;color:#fff}
.recipe-card.dark .eyebrow{background:rgba(174,201,12,.18);color:#d9ed6d}
.recipe-step-list{display:grid;gap:1rem;margin-top:1.2rem}
.recipe-step-list > div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:start}
.recipe-step-list > div > span{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#aec90c;color:var(--brand-ink);font-weight:900}
.recipe-step-list strong{display:block;margin-bottom:.2rem}
.recipe-step-list p{color:#dbe4ea;margin:0;line-height:1.55}
.recipe-card:not(.dark) p{color:#5f6d79}
.recipe-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.recipe-trust-grid article{padding:1.2rem}
.recipe-trust-grid i{width:46px;height:46px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#f4f8e4;color:#607700;margin-bottom:1rem}
.recipe-trust-grid p{color:#5f6d79;line-height:1.65;margin-bottom:0}
.recipe-success-card,.recipe-status-card,.recipe-reference-card,.recipe-status-panel,.admin-recipe-card{background:#fff;border:1px solid rgba(26,36,48,.08);border-radius:30px;box-shadow:var(--shadow)}
.recipe-success-card{padding:1.2rem;margin-bottom:1.25rem;background:linear-gradient(180deg,#fbfdf5,#fff)}
.recipe-success-card h2{font-size:1.4rem;margin:.4rem 0 .8rem}
.recipe-success-card p{color:#5f6d79;line-height:1.65}
.recipe-success-reference,.recipe-reference-card{display:grid;gap:.2rem;padding:1rem;border-radius:22px;background:#f2f8df;border:1px solid rgba(174,201,12,.24);margin:.8rem 0}
.recipe-success-reference span,.recipe-reference-card span{color:var(--brand-text);font-weight:900}
.recipe-success-reference strong,.recipe-reference-card strong{font-size:1.35rem;letter-spacing:.03em;color:var(--brand-ink)}
.recipe-status-hero{background:radial-gradient(circle at top right,rgba(174,201,12,.25),transparent 34%),linear-gradient(180deg,#f7fbef,#fff)}
.recipe-status-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:1.5rem;align-items:center}
.recipe-status-grid h1{font-size:clamp(2.2rem,4.2vw,4.8rem);line-height:.98;letter-spacing:-.06em}
.recipe-status-grid .lead{max-width:780px;line-height:1.72}
.recipe-status-card{padding:1.35rem}
.recipe-status-card > span{display:block;color:var(--brand-text);font-weight:900;margin-bottom:.4rem}
.recipe-status-card strong{display:block;font-size:2rem;letter-spacing:-.04em;margin-bottom:.6rem}
.recipe-status-card p{color:#5f6d79;line-height:1.65}
.recipe-process-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;margin-bottom:1.2rem}
.recipe-process-bar div{padding:.8rem;border-radius:20px;background:#f4f7fb;border:1px solid rgba(26,36,48,.06);display:grid;gap:.4rem;color:#697682}
.recipe-process-bar span{width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:#fff;color:#697682;font-weight:900}
.recipe-process-bar strong{font-size:.92rem}
.recipe-process-bar .is-done,.recipe-process-bar .is-current{background:#f2f8df;border-color:rgba(174,201,12,.34);color:var(--brand-ink)}
.recipe-process-bar .is-current{box-shadow:0 14px 34px rgba(118,140,10,.13)}
.recipe-process-bar .is-done span,.recipe-process-bar .is-current span{background:#aec90c;color:var(--brand-ink)}
.recipe-status-content{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:1.25rem;align-items:start}
.recipe-status-panel{padding:1.25rem}
.recipe-status-panel h2{font-size:1.5rem;margin:.35rem 0 1rem}
.recipe-status-panel p{color:#5f6d79;line-height:1.65}
.recipe-status-timeline{display:grid;gap:.8rem}
.recipe-status-timeline article{padding:1rem;border-radius:20px;background:#f8fbf1;border:1px solid rgba(174,201,12,.16)}
.recipe-status-timeline time{display:block;color:var(--brand-text);font-weight:900;font-size:.86rem;margin-bottom:.35rem}
.recipe-status-timeline strong{display:block;color:var(--ink)}
.recipe-status-timeline p{margin:.25rem 0 0}
.recipe-question-list{display:grid;gap:.65rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.recipe-question-list > strong{color:var(--ink)}
.recipe-question-list div{padding:.8rem;border-radius:18px;background:#f8fafc}
.recipe-question-list small{color:var(--brand-text);font-weight:900}
.recipe-question-list p{margin:.25rem 0 0}
.admin-recipe-list{display:grid;gap:1rem}
.admin-recipe-card{padding:1.2rem}
.admin-recipe-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}
.admin-recipe-head h2{margin:.25rem 0;font-size:1.45rem}
.admin-recipe-head p,.admin-recipe-grid p{color:#5f6d79;line-height:1.6;margin-bottom:.8rem}
.admin-recipe-meta{display:grid;gap:.3rem;text-align:right}
.admin-recipe-meta span{color:#697682}
.admin-recipe-meta strong{color:var(--brand-text)}
.admin-recipe-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) 360px;gap:1rem;align-items:start}
.admin-recipe-grid strong{display:block;color:var(--ink);margin-bottom:.25rem}
.admin-recipe-form{padding:1rem;border-radius:22px;background:#f8fbf1;border:1px solid rgba(174,201,12,.16)}
.admin-recipe-questions{display:grid;gap:.65rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(26,36,48,.08)}
.admin-recipe-questions > strong{color:var(--ink)}
.admin-recipe-questions div{padding:.8rem;border-radius:18px;background:#f8fafc}
.admin-recipe-questions small{color:var(--brand-text);font-weight:900}
.admin-recipe-questions p{margin:.25rem 0 0;color:#44525f}

.app-hero{padding:5rem 0 3rem;background:radial-gradient(circle at top right,rgba(174,201,12,.28),transparent 32%),linear-gradient(180deg,#f8fbef 0%,#fff 78%)}
.app-hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) 430px;gap:2rem;align-items:center}
.app-hero h1{font-size:clamp(2.35rem,4.8vw,5rem);line-height:.96;letter-spacing:-.065em;max-width:940px}
.app-hero .lead{max-width:840px;line-height:1.75}
.app-hero-actions,.app-store-row,.app-cta-row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}
.app-hero-actions{margin:1.45rem 0 1.15rem}
.app-store-row{margin-top:1rem}
.app-store-row.large{margin-top:0}
.app-store-button{display:inline-flex;align-items:center;gap:.8rem;min-width:190px;padding:.78rem 1rem;border-radius:20px;background:#1a2b0e;color:#fff;text-decoration:none;box-shadow:0 16px 34px rgba(30,45,62,.16);transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.app-store-button:hover{transform:translateY(-2px);box-shadow:0 22px 44px rgba(30,45,62,.2);color:#fff}
.app-store-button.is-disabled{opacity:.74;cursor:default;pointer-events:none}
.app-store-button i{font-size:1.65rem}
.app-store-button small,.app-store-button strong{display:block;line-height:1.08}
.app-store-button small{font-size:.73rem;color:#dce6ed}
.app-store-button strong{font-size:1.08rem;letter-spacing:-.02em}
.app-store-note,.app-contact-note{color:#687680;font-size:.94rem;margin:.75rem 0 0}
.app-phone-stage{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center}
.app-orbit{position:absolute;border-radius:999px;filter:blur(.2px);opacity:.68}
.app-orbit.one{width:320px;height:320px;background:#e7f2b8;right:0;top:28px}
.app-orbit.two{width:220px;height:220px;background:#dfe8f1;left:8px;bottom:46px}
.app-phone{position:relative;z-index:2;width:min(330px,100%);min-height:590px;padding:1.05rem;border-radius:44px;background:linear-gradient(180deg,#1f2933,#111820);box-shadow:0 34px 82px rgba(30,45,62,.28);color:#fff;border:8px solid #111820}
.app-phone::before{content:"";position:absolute;top:12px;left:50%;width:86px;height:22px;transform:translateX(-50%);border-radius:999px;background:#0c1117}
.app-phone-top{display:flex;justify-content:space-between;align-items:center;padding:2.1rem .35rem .85rem;color:#dce6ed}
.app-phone-top span{width:42px;height:10px;border-radius:999px;background:#aec90c;box-shadow:0 0 18px rgba(174,201,12,.5)}
.app-phone-card,.app-phone-list div,.app-phone-status{border-radius:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}
.app-phone-card{padding:1.1rem;background:linear-gradient(180deg,#aec90c,#d8ed61);color:#202b00}
.app-phone-card small,.app-phone-card span{display:block;font-weight:800}
.app-phone-card strong{display:block;font-size:2rem;letter-spacing:-.04em;margin:.2rem 0}
.app-phone-card span{color:#4d5e00}
.app-phone-list{display:grid;gap:.8rem;margin:1rem 0}
.app-phone-list div{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;align-items:center;padding:.85rem}
.app-phone-list i{width:42px;height:42px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;background:rgba(174,201,12,.16);color:#d9ed6d}
.app-phone-list span{font-weight:800;color:#edf3f8}
.app-phone-status{padding:1rem;background:#fff;color:var(--ink)}
.app-phone-status span{display:block;color:#687680;font-weight:800}
.app-phone-status strong{font-size:1.25rem}
.app-floating-card{position:absolute;right:0;bottom:72px;z-index:3;display:flex;align-items:center;gap:.7rem;max-width:260px;padding:.95rem 1rem;border-radius:22px;background:#fff;color:#263442;box-shadow:0 24px 55px rgba(30,45,62,.16);font-weight:900}
.app-floating-card i{width:42px;height:42px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#f2f8df;color:#607700}
.app-difference-section{background:#fff}
.app-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.app-feature-card{padding:1.2rem;border-radius:30px;background:linear-gradient(180deg,#fff,#fbfcf7);border:1px solid rgba(26,36,48,.08);box-shadow:0 18px 44px rgba(30,45,62,.07)}
.app-feature-card i{width:48px;height:48px;border-radius:17px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem;background:#f2f8df;color:#607700;font-size:1.15rem}
.app-feature-card h3{font-size:1.18rem;margin-bottom:.45rem}
.app-feature-card p{color:#5f6d79;line-height:1.65;margin:0}
.app-process-card,.app-store-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.4rem;align-items:center;padding:1.5rem;border-radius:34px;background:#1a2b0e;color:#fff;box-shadow:0 24px 64px rgba(30,45,62,.16)}
.app-process-card .eyebrow,.app-store-panel .eyebrow{background:rgba(174,201,12,.18);color:#d9ed6d}
.app-process-card p,.app-store-panel p{color:#dce6ed;line-height:1.7}
.app-step-stack{display:grid;gap:.85rem}
.app-step-stack article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:.85rem;padding:1rem;border-radius:24px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}
.app-step-stack article > span{width:48px;height:48px;border-radius:17px;display:inline-flex;align-items:center;justify-content:center;background:#aec90c;color:var(--brand-ink);font-weight:900}
.app-step-stack h3{font-size:1.08rem;margin-bottom:.25rem}
.app-step-stack p{margin:0}
.app-store-section{background:linear-gradient(180deg,#fff,#f7fbef)}
.app-store-panel{background:linear-gradient(135deg,#f8fbef,#fff);color:var(--ink);border:1px solid rgba(26,36,48,.08)}
.app-store-panel .eyebrow{background:#eef5d8;color:var(--brand-text)}
.app-store-panel p{color:#5f6d79}
.app-contact-note a{color:var(--brand-text);font-weight:900}

@media (max-width:1199.98px){
  .aid-layout,.aid-overview-grid,.aid-stage-grid{grid-template-columns:minmax(0,1fr)}
  .aid-cart-panel,.aid-side-card{position:static}
  .aid-info-hero-grid,.aid-info-benefit-grid,.aid-info-step-grid,.aid-info-service-grid,.aid-assistant-shell,.aid-claim-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aid-info-hero-grid > div:first-child{grid-column:1 / -1}
  .recipe-hero-grid,.recipe-upload-grid{grid-template-columns:minmax(0,1fr)}
  .recipe-side-stack{position:static}
  .recipe-status-grid,.recipe-status-content,.admin-recipe-grid{grid-template-columns:minmax(0,1fr)}
  .admin-recipe-meta{text-align:left}
  .app-hero-grid{grid-template-columns:minmax(0,1fr)}
  .app-phone-stage{min-height:560px}
}

@media (max-width:991.98px){
  .aid-form-grid,.aid-choice-grid{grid-template-columns:minmax(0,1fr)}
  .aid-shell-head{flex-direction:column}
  .aid-step-indicator{justify-content:flex-start}
  .aid-claim-hero,.aid-claim-checkrow{grid-template-columns:minmax(0,1fr)}
  .aid-info-product-grid,.aid-assistant-shell{grid-template-columns:minmax(0,1fr)}
  .aid-assistant-intro{position:static}
  .aid-info-final-cta,.aid-info-callout{align-items:flex-start;flex-direction:column}
  .recipe-trust-grid{grid-template-columns:minmax(0,1fr)}
  .recipe-process-bar{grid-template-columns:minmax(0,1fr)}
  .app-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-process-card,.app-store-panel{grid-template-columns:minmax(0,1fr)}
}

@media (max-width:767.98px){
  .portal-status-hero,.portal-overview-status,.portal-status-card-head{display:grid;grid-template-columns:minmax(0,1fr)}
  .portal-status-count{place-items:start;min-width:0;min-height:0;padding:1rem;text-align:left}
  .portal-process-steps{grid-template-columns:minmax(0,1fr)}
  .aid-product-card-head{grid-template-columns:minmax(0,1fr)}
  .aid-product-image{width:100%;height:180px}
  .aid-product-card-actions,.aid-form-actions,.aid-history-head,.aid-history-meta{flex-direction:column;align-items:stretch}
  .aid-product-card-actions .form-control,.aid-product-card-actions .form-select{max-width:none}
  .aid-product-card-actions .btn{margin-left:0}
  .aid-step-indicator button{flex:1 1 calc(50% - .5rem);justify-content:center}
  .aid-cart-item,.aid-cart-item-meta{display:grid;grid-template-columns:1fr;justify-items:start}
  .aid-info-hero-grid,.aid-info-benefit-grid,.aid-info-step-grid,.aid-info-service-grid,.aid-claim-grid{grid-template-columns:minmax(0,1fr)}
  .aid-claim-hero > div,.aid-claim-hero aside,.aid-claim-checkrow,.aid-claim-seo-copy{border-radius:24px;padding:1rem}
  .aid-info-product-card{grid-template-columns:minmax(0,1fr)}
  .aid-info-product-card img{width:100%;height:180px}
  .aid-assistant-card,.aid-assistant-intro{border-radius:26px;padding:1.1rem}
  .aid-assistant-progress span{height:36px;border-radius:13px}
  .aid-assistant-steps{min-height:430px}
  .aid-assistant-actions .btn,.aid-assistant-nav .btn{width:100%}
  .recipe-status-card,.recipe-status-panel,.admin-recipe-card{border-radius:24px;padding:1rem}
  .admin-recipe-head{display:grid}
  .app-hero{padding-top:3.5rem}
  .app-hero-actions .btn,.app-cta-row .btn,.app-store-button{width:100%;justify-content:center}
  .app-store-row.large{width:100%}
  .app-feature-grid{grid-template-columns:minmax(0,1fr)}
  .app-phone-stage{min-height:auto;padding:1rem 0 2rem}
  .app-phone{min-height:0}
  .app-floating-card{position:relative;right:auto;bottom:auto;margin-top:1rem}
  .app-process-card,.app-store-panel{border-radius:26px;padding:1.1rem}
  .app-step-stack article{grid-template-columns:minmax(0,1fr)}
}

.jobs-hero{padding:4.5rem 0 2.5rem;background:
radial-gradient(circle at top right, rgba(174,201,12,.24), transparent 32%),
linear-gradient(180deg, #f5f9eb 0%, #fff 72%)}
.jobs-hero-grid,.jobs-application-grid{display:grid;grid-template-columns:minmax(0,1.1fr) 420px;gap:1.5rem;align-items:start}
.jobs-hero-panel,.jobs-form-card,.jobs-card,.jobs-feature-card{border:1px solid rgba(26,36,48,.08);background:#fff;border-radius:32px;box-shadow:0 20px 55px rgba(30,45,62,.08)}
.jobs-hero-panel{padding:1.2rem;display:grid;gap:1rem}
.jobs-metric{padding:1rem 1.05rem;border-radius:24px;background:#f8fbf1;border:1px solid rgba(174,201,12,.16);display:grid;gap:.15rem}
.jobs-metric strong{font-size:1.35rem;color:#213100}
.jobs-metric span{color:#5b6975}
.jobs-hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}
.jobs-section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}
.jobs-grid{display:grid;gap:1.25rem}
.jobs-card{padding:1.35rem}
.jobs-card.is-active{border-color:rgba(174,201,12,.45);box-shadow:0 22px 58px rgba(118,140,10,.16)}
.jobs-card-top,.jobs-meta,.jobs-card-actions,.jobs-selected-source{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem}
.jobs-pill,.jobs-team{display:inline-flex;align-items:center;justify-content:center;padding:.38rem .78rem;border-radius:999px;font-size:.82rem;font-weight:800}
.jobs-pill{background:#eef4df;color:var(--brand-text)}
.jobs-team{background:#f4f7fb;color:#51606d}
.jobs-card h3{margin:.95rem 0 .6rem}
.jobs-card p{color:#5c6a77;line-height:1.65}
.jobs-meta{margin:.95rem 0 1rem;color:#4c5966}
.jobs-meta span{display:inline-flex;align-items:center;gap:.45rem}
.jobs-points,.jobs-feature-stack{display:grid;gap:.75rem}
.jobs-points div{display:flex;gap:.6rem;align-items:flex-start;padding:.85rem .95rem;border-radius:20px;background:#fbfcfd;border:1px solid rgba(26,36,48,.06)}
.jobs-points i,.jobs-feature-card strong{color:var(--brand-text)}
.jobs-card-actions{margin:1.1rem 0 1.15rem}
.jobs-detail-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.jobs-detail-columns h4{font-size:1rem;margin-bottom:.55rem}
.jobs-detail-columns ul{padding-left:1.1rem;margin:0;color:#5b6874;display:grid;gap:.45rem}
.jobs-application-section{background:linear-gradient(180deg,#fff 0%,#f7fbef 100%)}
.jobs-application-copy{display:grid;gap:1rem;position:sticky;top:calc(var(--site-header-offset,180px) + 1.25rem)}
.jobs-feature-card{padding:1rem 1.05rem;display:grid;gap:.25rem}
.jobs-feature-card span,.jobs-selected-source span{color:#60707c}
.jobs-selected-source{padding:1rem 1.05rem;border-radius:22px;background:#1a2b0e;color:#fff}
.jobs-selected-source a{color:#fff;word-break:break-all}
.jobs-form-card{padding:1.35rem}

@media (max-width: 991.98px){
  .jobs-hero-grid,.jobs-application-grid,.jobs-detail-columns{grid-template-columns:minmax(0,1fr)}
  .jobs-application-copy{position:static}
}

@media (max-width: 767.98px){
  .jobs-hero{padding-top:3.5rem}
.jobs-card-actions,.jobs-meta,.jobs-section-head{flex-direction:column;align-items:stretch}
}

.downloads-hero{padding:4.5rem 0 2.5rem;background:
radial-gradient(circle at top right, rgba(174,201,12,.25), transparent 34%),
linear-gradient(180deg,#f7fbef 0%,#fff 76%)}
.downloads-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) 400px;gap:1.5rem;align-items:start}
.downloads-hero-actions,.downloads-card-actions,.downloads-support-actions{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}
.downloads-hero-actions{margin-top:1.5rem}
.downloads-hero-panel,.downloads-card{border:1px solid rgba(26,36,48,.08);background:#fff;border-radius:32px;box-shadow:0 20px 55px rgba(30,45,62,.08)}
.downloads-hero-panel{padding:1.2rem;display:grid;gap:1rem}
.downloads-metric{padding:1rem 1.05rem;border-radius:24px;background:#f8fbf1;border:1px solid rgba(174,201,12,.16);display:grid;gap:.15rem}
.downloads-metric strong{font-size:1.35rem;color:#213100}
.downloads-metric span{color:#5b6975}
.downloads-section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin:0 0 1.25rem}
.downloads-section-head:not(:first-child){margin-top:2.5rem}
.downloads-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.downloads-card{overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.downloads-cover{display:flex;align-items:center;justify-content:center;min-height:300px;background:linear-gradient(180deg,#f8fafc,#edf4d8);padding:1.1rem}
.downloads-cover img{max-width:100%;width:auto;max-height:285px;border-radius:18px;object-fit:contain;box-shadow:0 18px 38px rgba(30,45,62,.16)}
.downloads-cover-placeholder{width:100%;min-height:260px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:#f7fbef;color:var(--brand-text);font-size:3rem}
.downloads-card-body{padding:1.25rem;display:grid;gap:.8rem}
.downloads-pill{display:inline-flex;width:max-content;align-items:center;justify-content:center;padding:.38rem .78rem;border-radius:999px;background:#eef4df;color:var(--brand-text);font-size:.82rem;font-weight:800}
.downloads-card h3{margin:0;font-size:1.18rem}
.downloads-card p{margin:0;color:#5c6a77;line-height:1.65}
.downloads-source{display:inline-flex;align-items:center;gap:.45rem;color:#667480;font-weight:700;font-size:.9rem}
.downloads-support{background:linear-gradient(180deg,#fff 0%,#f7fbef 100%)}
.downloads-support-card{display:flex;justify-content:space-between;align-items:center;gap:1rem}

@media (max-width: 1199.98px){
  .downloads-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width: 991.98px){
  .downloads-hero-grid{grid-template-columns:minmax(0,1fr)}
}

@media (max-width: 767.98px){
  .downloads-hero{padding-top:3.5rem}
  .downloads-grid{grid-template-columns:minmax(0,1fr)}
  .downloads-cover{min-height:230px}
  .downloads-support-card,.downloads-section-head{flex-direction:column;align-items:stretch}
  .downloads-support-actions .btn,.downloads-card-actions .btn{width:100%;justify-content:center}
}

/* Service detail pages */
.service-detail-media{border-radius:24px}
.service-detail-image{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;background:linear-gradient(135deg,#eef5d1,#f8fafc)}
.service-detail-copy h2{margin-top:0;margin-bottom:1rem;font-size:1.6rem;letter-spacing:-.02em}
.service-detail-copy h2 + p{margin-top:0}
.service-detail-copy h3{margin-top:1.5rem}
.service-detail-copy p{line-height:1.8;color:#445260}
.service-detail-copy ul{padding-left:1.15rem;margin-bottom:1.25rem}
.service-detail-copy li{margin-bottom:.55rem;line-height:1.7;color:#445260}
.service-side-card .btn{justify-content:center}
@media (max-width:767.98px){
  .service-detail-image{aspect-ratio:4/3}
}

/* Service page enhancements */
.service-detail-copy .seo-intro{font-size:1.08rem;color:#334455}
.service-contact-list{display:flex;flex-direction:column;gap:.65rem;margin-top:1rem}
.service-contact-list a{display:flex;align-items:center;gap:.65rem;font-weight:800;color:var(--brand-ink)}
.service-contact-list i{width:2rem;height:2rem;border-radius:999px;background:var(--surface);display:inline-flex;align-items:center;justify-content:center;color:var(--brand-text)}
.service-contact-list span{font-weight:600;color:var(--muted)}
.service-side-card .keywords-list{gap:.5rem}
.service-side-card .keyword-chip{font-size:.88rem;padding:.42rem .62rem}

.service-hub-strip{background:linear-gradient(180deg,#fff,#f7fbef)}
.service-hub-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.service-hub-card{display:flex;flex-direction:column;gap:.55rem;min-height:164px;padding:1.05rem;border-radius:24px;background:var(--surface-card);border:1px solid var(--border-soft);box-shadow:0 14px 34px rgba(26,36,16,.06);text-decoration:none;color:var(--ink);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.service-hub-card:hover,.service-hub-card:focus-visible{transform:translateY(-2px);box-shadow:0 12px 28px rgba(26,36,16,.09);border-color:var(--border);color:var(--ink);outline:none}
.service-hub-card strong{font-size:1.18rem;letter-spacing:-.02em}
.service-hub-card span{color:#5f6d79;line-height:1.55}
.service-hub-card em{margin-top:auto;color:var(--brand-text);font-style:normal;font-weight:900}
.service-group-title-link{color:var(--ink);text-decoration:none}
.service-group-title-link:hover{color:var(--brand-text)}
.service-landing-hero{background:radial-gradient(circle at top right,rgba(174,201,12,.28),transparent 34%),linear-gradient(180deg,#f8fbef,#fff)}
.service-landing-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:1.5rem;align-items:center}
.service-landing-hero h1{font-size:clamp(2.35rem,4.8vw,5.1rem);line-height:.96;letter-spacing:-.065em;max-width:980px}
.service-landing-hero .lead{max-width:860px;line-height:1.76}
.service-landing-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:1.35rem 0 1rem}
.service-landing-summary,.service-landing-problem-grid article,.service-landing-card,.service-landing-process,.service-landing-seo-card,.service-landing-topic-card{border:1px solid rgba(26,36,48,.08);background:#fff;border-radius:28px;box-shadow:0 16px 42px rgba(30,45,62,.07)}
.service-landing-summary{padding:1.35rem;background:linear-gradient(160deg,#1a2b0e 0%,#233212 100%);color:#fff}
.service-landing-summary span{display:block;color:#d9ed6d;font-weight:900;margin-bottom:.45rem}
.service-landing-summary strong{display:block;font-size:2rem;letter-spacing:-.045em;line-height:1.04;margin-bottom:.75rem}
.service-landing-summary p{color:#dce6ed;line-height:1.7}
.service-landing-problem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.service-landing-problem-grid article{padding:1.35rem}
.service-landing-problem-grid h2{font-size:clamp(1.7rem,2.8vw,3rem);line-height:1.04;letter-spacing:-.045em}
.service-landing-problem-grid p{color:#5f6d79;line-height:1.75}
.service-landing-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.service-landing-benefits div{display:flex;gap:.65rem;align-items:flex-start;padding:1rem;border-radius:22px;background:#f7fbef;border:1px solid rgba(174,201,12,.18);color:#445260;font-weight:800}
.service-landing-benefits i{color:#607700;margin-top:.2rem}
.service-landing-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.service-landing-card{overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.service-landing-card img{width:100%;height:168px;object-fit:cover;background:#eef5d8}
.service-landing-card div{padding:1.15rem}
.service-landing-card h3{font-size:1.18rem;margin-bottom:.5rem}
.service-landing-card p{color:#5f6d79;line-height:1.62}
.service-landing-process{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1.25rem;align-items:center;padding:1.35rem;background:linear-gradient(135deg,#f8fbef,#fff);color:var(--ink)}
.service-landing-process .eyebrow{background:#eef5d8;color:var(--brand-text)}
.service-landing-process h2{font-size:clamp(1.9rem,3vw,3.3rem);line-height:1.02;letter-spacing:-.05em}
.service-landing-process p{color:#5f6d79;line-height:1.7}
.service-landing-step-list{display:grid;gap:.8rem}
.service-landing-step-list article{display:grid;grid-template-columns:46px minmax(0,1fr);gap:.8rem;padding:.95rem;border-radius:22px;background:#fff;border:1px solid rgba(26,36,48,.08);box-shadow:0 10px 24px rgba(30,45,62,.045)}
.service-landing-step-list article > span{width:46px;height:46px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#aec90c;color:var(--brand-ink);font-weight:900}
.service-landing-step-list strong{display:block;color:var(--ink);margin-bottom:.2rem}
.service-landing-step-list p{margin:0}
.service-landing-seo-card,.service-landing-topic-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1rem;align-items:center;padding:1.25rem}
.service-landing-seo-card p,.service-landing-topic-card p{color:#5f6d79;line-height:1.68}
@media (max-width:1199.98px){
  .service-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .service-landing-hero-grid,.service-landing-process,.service-landing-seo-card,.service-landing-topic-card{grid-template-columns:minmax(0,1fr)}
  .service-landing-benefits,.service-landing-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767.98px){
  .service-hub-grid,.service-landing-problem-grid,.service-landing-benefits,.service-landing-card-grid{grid-template-columns:minmax(0,1fr)}
  .service-landing-summary,.service-landing-problem-grid article,.service-landing-process,.service-landing-seo-card,.service-landing-topic-card{border-radius:24px;padding:1rem}
  .service-landing-actions .btn{width:100%;justify-content:center}
  .service-landing-step-list article{grid-template-columns:minmax(0,1fr)}
}



/* ── Phase B Quick Wins ─────────────────────────────────── */

/* Anchor-Link-Offset: Inhalte scrollen nicht hinter den Sticky-Header */
html{scroll-padding-top:var(--site-header-offset,80px)}

/* Portal-Tabs: horizontal scrollbar auf mobil statt umbrechen */
.portal-tab-row{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
.portal-tab-row::-webkit-scrollbar{display:none}
.portal-tab-row .btn{white-space:nowrap;flex-shrink:0}

/* Footer Social Icons — mind. 44px Tap-Target, auf Wald-Band sichtbar */
.footer-social{display:flex;align-items:center;gap:.6rem;margin-top:1.1rem}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.45);color:#fff;font-size:1.05rem;transition:background .18s ease,color .18s ease,border-color .18s ease}
.footer-social a:hover,.footer-social a:focus-visible{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}

/* =========================================================
   SHOP REDESIGN — Phase 3
   ========================================================= */

/* Breadcrumb */
.sf-breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--muted);flex-wrap:wrap}
.sf-breadcrumb a{color:var(--muted);text-decoration:none;font-weight:600}
.sf-breadcrumb a:hover{color:var(--brand-text)}
.sf-breadcrumb span[aria-hidden]{color:rgba(26,36,48,.3)}

/* Badge pill */
.sf-badge-pill{display:inline-flex;align-items:center;padding:.4rem .9rem;border-radius:999px;background:#eef3e2;color:#536700;font-size:.82rem;font-weight:800}

/* ---- HOME PAGE ---- */
.shop-page-hero{background:radial-gradient(ellipse at 70% 0%,rgba(174,201,12,.14),transparent 55%),linear-gradient(180deg,#f9fdf0 0%,#fff 100%);padding:3.5rem 0 2.5rem}
.shop-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center}
.shop-hero-text h1{font-size:clamp(1.7rem,4vw,2.6rem);letter-spacing:-.04em;max-width:16ch;margin-bottom:.75rem}
.shop-hero-text p{max-width:56ch;color:var(--muted);font-size:1.05rem}
.shop-hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.shop-hero-trust{display:flex;flex-direction:column;gap:.6rem;min-width:220px}
.shop-trust-pill{display:flex;align-items:center;gap:.6rem;padding:.7rem .95rem;border-radius:999px;background:#fff;border:1px solid rgba(26,36,48,.08);font-size:.85rem;font-weight:700;color:#304150;white-space:nowrap}
.shop-trust-pill i{color:var(--brand-dark,#617700);font-size:.95rem}
.shop-welcome-banner{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;border-radius:20px;background:linear-gradient(90deg,#f4f8ea,#edf5d5);border:1px solid rgba(174,201,12,.3);margin-top:1.5rem;flex-wrap:wrap}
.shop-welcome-banner i{font-size:1.3rem;color:#617700;flex-shrink:0}
.shop-welcome-banner strong{display:block;font-size:.98rem}
.shop-welcome-banner span{color:var(--muted);font-size:.87rem}
.shop-welcome-banner .btn{margin-left:auto}

/* Section label */
.shop-section-label{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}
.shop-section-label h2{margin-bottom:.35rem;letter-spacing:-.03em}

/* Category cards on home */
.shop-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}
.shop-cat-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border-radius:28px;background:#fff;border:1px solid rgba(26,36,48,.07);box-shadow:0 12px 32px rgba(30,45,62,.05);transition:box-shadow .2s ease,transform .2s ease}
.shop-cat-card:hover{box-shadow:0 20px 50px rgba(30,45,62,.1);transform:translateY(-2px)}
.shop-cat-card.is-preview{opacity:.72}
.shop-cat-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#eef3e2;color:#617700;font-size:1.35rem;flex-shrink:0}
.shop-cat-body{flex:1}
.shop-cat-badge{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:999px;font-size:.75rem;font-weight:800;margin-bottom:.6rem;background:#f0f2f5;color:#5e6d79}
.shop-cat-badge.is-active{background:#eef3e2;color:#536700}
.shop-cat-badge.is-preview{background:#fff8e6;color:#9a6500}
.shop-cat-body h3{margin-bottom:.4rem;font-size:1.05rem;letter-spacing:-.02em}
.shop-cat-body p{color:var(--muted);font-size:.88rem;margin-bottom:0;line-height:1.55}
.shop-cat-link{display:flex;align-items:center;gap:.5rem;justify-content:center}

/* Trust bar */
.shop-trust-bar{padding:2rem 0;background:#f9fdf0}
.shop-trust-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.shop-trust-item{display:flex;align-items:flex-start;gap:.85rem}
.shop-trust-item i{font-size:1.4rem;color:#617700;flex-shrink:0;margin-top:.1rem}
.shop-trust-item strong{display:block;font-size:.9rem;margin-bottom:.15rem}
.shop-trust-item span{font-size:.82rem;color:var(--muted)}

/* ---- PRODUCT GRID ---- */
.shop-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}

/* Product card */
.sf-prod-card{display:flex;flex-direction:column;border-radius:24px;background:#fff;border:1px solid rgba(26,36,48,.07);box-shadow:0 8px 24px rgba(30,45,62,.05);overflow:hidden;transition:box-shadow .2s,transform .2s}
.sf-prod-card:hover{box-shadow:0 18px 44px rgba(30,45,62,.1);transform:translateY(-2px)}
.sf-prod-card__img{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#f7fbef}
.sf-prod-card__img img{width:100%;height:100%;object-fit:contain;padding:.75rem;transition:transform .25s ease}
.sf-prod-card:hover .sf-prod-card__img img{transform:scale(1.04)}
.sf-prod-card__discount-pill{position:absolute;top:.65rem;left:.65rem;background:#e53935;color:#fff;border-radius:999px;font-size:.75rem;font-weight:800;padding:.28rem .62rem;z-index:1}
.sf-prod-card__out-of-stock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.7);font-weight:700;font-size:.85rem;color:#8c3a00}
.sf-prod-card__body{flex:1;display:flex;flex-direction:column;padding:1rem 1.1rem 1.1rem}
.sf-prod-card__cat{font-size:.75rem;font-weight:700;color:var(--muted);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.04em}
.sf-prod-card__body h3{font-size:.95rem;margin-bottom:.4rem;letter-spacing:-.02em;flex:1}
.sf-prod-card__body h3 a{color:inherit;text-decoration:none}
.sf-prod-card__body h3 a:hover{color:var(--brand)}
.sf-prod-card__desc{font-size:.82rem;color:var(--muted);margin-bottom:.6rem;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.sf-prod-card__price{display:flex;align-items:baseline;gap:.45rem;margin-bottom:.85rem;flex-wrap:wrap}
.sf-prod-card__compare{font-size:.82rem;color:var(--muted);text-decoration:line-through}
.sf-prod-card__price strong{font-size:1.1rem;color:var(--ink)}
.sf-prod-card__price small{font-size:.75rem;color:var(--muted)}
.sf-prod-card__actions{display:grid;gap:.5rem;margin-top:auto}

/* ---- CATEGORY PAGE ---- */
.sf-cat-header{padding:2rem 0 1.25rem;background:linear-gradient(180deg,#f9fdf0 0%,#fff 100%)}
.sf-cat-header__inner{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:.75rem;flex-wrap:wrap}
.sf-cat-header__inner h1{margin-bottom:.4rem;letter-spacing:-.03em}
.sf-cat-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:.75rem}
.sf-sort-label{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.88rem;font-weight:600}
.sf-empty-state .sf-empty-icon{font-size:3.5rem;color:rgba(26,36,48,.12);margin-bottom:1rem}

/* ---- PRODUCT DETAIL PAGE ---- */
.sf-pdp{padding:1.5rem 0 3rem}
.sf-pdp__layout{display:grid;grid-template-columns:1fr 440px;gap:2rem;align-items:start}
.sf-pdp__main-img{position:relative;border-radius:24px;overflow:hidden;background:#f7fbef;border:1px solid rgba(26,36,48,.06);aspect-ratio:1}
.sf-pdp__main-img img{width:100%;height:100%;object-fit:contain;padding:1.5rem;cursor:zoom-in}
.sf-pdp__zoom-btn{position:absolute;bottom:.75rem;right:.75rem;background:#fff;border:1px solid rgba(26,36,48,.1);border-radius:10px;padding:.4rem .55rem;cursor:pointer;color:var(--muted);transition:color .15s,border-color .15s}
.sf-pdp__zoom-btn:hover{color:var(--ink);border-color:rgba(26,36,48,.25)}
.sf-pdp__img-hint{color:var(--muted)}
.sf-pdp__buy-box{display:flex;flex-direction:column;gap:.85rem}
.sf-pdp__cat{font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.sf-pdp__buy-box h1{font-size:1.55rem;letter-spacing:-.03em;margin:0}
.sf-pdp__desc{color:var(--muted);font-size:1rem;margin:0}
.sf-pdp__price{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.sf-pdp__compare{font-size:1rem;color:var(--muted);text-decoration:line-through}
.sf-pdp__final{font-size:2rem;font-weight:800;color:var(--ink);letter-spacing:-.03em}
.sf-pdp__stock{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;padding:.6rem .85rem;border-radius:12px}
.sf-pdp__stock.is-instock{background:#f0f8e6;color:#3d6500}
.sf-pdp__stock.is-outofstock{background:#fff0f0;color:#b53a00}
.sf-pdp__meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.85rem;color:var(--muted)}
.sf-pdp__buy-form{display:grid;gap:.75rem}
.sf-pdp__trust{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding-top:.5rem;border-top:1px solid rgba(26,36,48,.06)}
.sf-pdp__trust div{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--muted);font-weight:600}
.sf-pdp__trust i{color:#617700}

/* Qty stepper */
.sf-qty-stepper{display:flex;align-items:center;gap:.4rem;max-width:140px}
.sf-qty-stepper--sm{max-width:120px}
.sf-qty-btn{width:34px;height:34px;border:1px solid rgba(26,36,48,.15);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.15rem;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s;line-height:1;color:var(--ink);flex-shrink:0}
.sf-qty-btn:hover{background:#f2f8e4;border-color:rgba(174,201,12,.4)}
.sf-qty-input{text-align:center;max-width:56px;font-weight:700}

/* Product detail tabs */
.sf-pdp__tabs{padding:1.5rem}
.sf-tab-nav{display:flex;gap:.25rem;border-bottom:2px solid rgba(26,36,48,.06);margin-bottom:1.25rem;flex-wrap:wrap}
.sf-tab-btn{padding:.6rem 1rem;border:none;background:none;font-weight:700;color:var(--muted);border-radius:10px 10px 0 0;cursor:pointer;font-size:.9rem;transition:color .15s,background .15s}
.sf-tab-btn:hover{color:var(--ink);background:rgba(174,201,12,.07)}
.sf-tab-btn.is-active{color:var(--ink);border-bottom:3px solid var(--brand);margin-bottom:-2px}
.sf-tab-panel{display:none}
.sf-tab-panel.is-active{display:block}
.sf-spec-table td,.sf-spec-table th{padding:.6rem .75rem;vertical-align:top}
.sf-spec-table th{font-weight:700;color:var(--muted);width:40%;white-space:nowrap}

/* ---- CART PAGE ---- */
.sf-cart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}
.sf-cart-list{display:flex;flex-direction:column;gap:0}
.sf-cart-row{display:grid;grid-template-columns:80px minmax(0,1fr) auto 110px;gap:1rem;align-items:start;padding:1.25rem 0;border-bottom:1px solid rgba(26,36,48,.06)}
.sf-cart-row:last-child{border-bottom:none}
.sf-cart-row__img{display:block;width:80px;height:80px;border-radius:14px;overflow:hidden;background:#f7fbef;border:1px solid rgba(26,36,48,.06);flex-shrink:0}
.sf-cart-row__img img{width:100%;height:100%;object-fit:contain;padding:.4rem}
.sf-cart-row__name{font-weight:700;color:var(--ink);text-decoration:none;display:block;margin-bottom:.3rem}
.sf-cart-row__name:hover{color:var(--brand)}
.sf-cart-row__desc{font-size:.82rem;color:var(--muted);margin-bottom:.3rem;-webkit-line-clamp:1;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.sf-cart-row__sku{display:block}
.sf-cart-row__remove{background:none;border:none;padding:0;cursor:pointer;color:var(--muted);font-size:.8rem;display:flex;align-items:center;gap:.3rem;transition:color .15s}
.sf-cart-row__remove:hover{color:#c0392b}
.sf-cart-row__price{text-align:right;padding-top:.1rem}
.sf-cart-row__price strong{display:block;font-size:1.05rem;font-weight:800}
.sf-cart-row__price small{color:var(--muted)}
.sf-cart-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid rgba(26,36,48,.06);margin-top:.5rem;flex-wrap:wrap;gap:.75rem}

/* Coupon form */
.sf-coupon-form{margin-top:1rem}

/* ---- ORDER SUMMARY ---- */
.sf-order-summary{padding:1.4rem 1.5rem}
.sf-order-summary__title{font-size:1.05rem;font-weight:800;margin-bottom:1rem;letter-spacing:-.02em}
.shop-aside-summary .is-discount strong{color:#3d6500}

/* ---- CHECKOUT ---- */
.sf-checkout-progress{background:#fff;border-bottom:1px solid rgba(26,36,48,.07);padding:.85rem 0}
.sf-checkout-stepper{display:flex;align-items:center;gap:.5rem;justify-content:center;flex-wrap:wrap}
.sf-checkout-stepper div{display:flex;align-items:center;gap:.45rem;font-size:.85rem;font-weight:700;color:var(--muted)}
.sf-checkout-stepper .is-done{color:#3d6500}
.sf-checkout-stepper .is-done span:first-child{background:#eef3e2;color:#3d6500}
.sf-checkout-stepper .is-active{color:var(--ink)}
.sf-checkout-stepper .is-active span:first-child{background:#1a2b0e;color:#fff}
.sf-checkout-stepper div span:first-child{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#f0f2f5;font-size:.78rem}
.sf-stepper-line{width:32px;height:2px;background:rgba(26,36,48,.1);border-radius:2px;flex-shrink:0}
.sf-stepper-line.is-done{background:#aec90c}
.sf-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1.75rem;align-items:start}
.sf-checkout-form-col{display:flex;flex-direction:column;gap:0}
.sf-checkout-section{padding:1.5rem}
.sf-checkout-section__head{display:flex;align-items:flex-start;gap:.9rem}
.sf-checkout-section__head h2{margin-bottom:.2rem;font-size:1.15rem;letter-spacing:-.02em}
.sf-section-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#eef3e2;color:#536700;font-weight:800;font-size:.9rem;flex-shrink:0;margin-top:.1rem}
.sf-checkout-toggle{display:flex;align-items:center;gap:.65rem}
.sf-toggle-label{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;font-size:.9rem;line-height:1.5}
.sf-toggle-label input{margin-top:.2rem;flex-shrink:0}
.sf-checkout-terms{padding:.8rem 1rem;border-radius:14px;border:1px solid rgba(26,36,48,.08);background:#f9fbff}
.sf-checkout-terms.is-error{border-color:rgba(188,48,48,.3);background:#fff6f6}
.sf-checkout-summary-col{position:sticky;top:90px}
.sf-order-items{display:flex;flex-direction:column;gap:.75rem}
.sf-order-item{display:grid;grid-template-columns:54px 1fr;gap:.75rem;align-items:center}
.sf-order-item__img{position:relative;width:54px;height:54px;border-radius:10px;overflow:hidden;background:#f7fbef;border:1px solid rgba(26,36,48,.06);flex-shrink:0}
.sf-order-item__img img{width:100%;height:100%;object-fit:contain;padding:.3rem}
.sf-order-item__qty{position:absolute;top:-6px;right:-6px;background:#1a2b0e;color:#fff;border-radius:50%;width:18px;height:18px;font-size:.66rem;font-weight:800;display:flex;align-items:center;justify-content:center}
.sf-order-item__info{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.88rem}
.sf-order-item__info span{color:#304150;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-order-item__info strong{flex-shrink:0;font-size:.9rem}
.sf-checkout-summary-trust{display:grid;gap:.4rem;font-size:.82rem}
.sf-checkout-summary-trust div{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-weight:600}
.sf-checkout-summary-trust i{color:#617700}

/* ---- CONFIRMATION PAGE ---- */
.sf-confirm-hero{padding:3rem 0 2rem;background:linear-gradient(180deg,#f4f8ea 0%,#fff 100%)}
.sf-confirm-hero__inner{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:start}
.sf-confirm-icon{font-size:3.5rem;color:#5a9c00;line-height:1;margin-top:.15rem}
.sf-confirm-hero h1{font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.04em;margin-bottom:.5rem}
.sf-confirm-order-num{display:flex;align-items:center;gap:.75rem;font-size:1.05rem;margin-top:.75rem;flex-wrap:wrap}
.sf-confirm-order-num strong{font-size:1.15rem}
.sf-confirm-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;align-items:start}
.sf-next-steps h2{margin-bottom:1.25rem;font-size:1.15rem;letter-spacing:-.02em}
.sf-steps-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}
.sf-steps-list li{display:grid;grid-template-columns:40px 1fr;gap:.9rem;align-items:start;padding:.85rem 0;border-bottom:1px solid rgba(26,36,48,.06)}
.sf-steps-list li:last-child{border-bottom:none}
.sf-step-num{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.88rem;flex-shrink:0;background:#f0f2f5;color:var(--muted)}
.sf-steps-list .is-done .sf-step-num{background:#eef3e2;color:#3d6500}
.sf-steps-list strong{display:block;font-size:.92rem;margin-bottom:.2rem}
.sf-confirm-summary{padding:1.4rem}
.sf-confirm-detail-rows{display:flex;flex-direction:column;gap:.75rem;font-size:.88rem}
.sf-confirm-detail-rows div{display:flex;justify-content:space-between;align-items:flex-start;gap.5rem}
.sf-confirm-detail-rows span:first-child{color:var(--muted);font-weight:600;flex-shrink:0;margin-right:.5rem}
.sf-confirm-contact p a{color:var(--brand)}

/* ---- BADGE COLOR VARIANTS ---- */
.badge-success{background:#eef3e2;color:#3d6500}
.badge-brand{background:#eef3e2;color:#536700}
.badge-info{background:#e8f4fd;color:#1565c0}
.badge-warning{background:#fff8e1;color:#9a6500}
.badge-danger{background:#fdecea;color:#c0392b}

/* ---- RESPONSIVE ---- */
@media(max-width:1100px){
    .sf-pdp__layout{grid-template-columns:minmax(0,1fr)}
    .sf-checkout-layout{grid-template-columns:minmax(0,1fr)}
    .sf-checkout-summary-col{position:static}
    .sf-confirm-layout{grid-template-columns:minmax(0,1fr)}
    .shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:860px){
    .shop-hero-inner{grid-template-columns:minmax(0,1fr)}
    .shop-hero-trust{flex-direction:row;flex-wrap:wrap;min-width:0}
    .shop-trust-row{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sf-cat-header__inner{flex-direction:column;align-items:flex-start}
    .shop-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sf-confirm-hero__inner{grid-template-columns:minmax(0,1fr)}
    .sf-confirm-icon{font-size:2.5rem}
}
@media(max-width:600px){
    .shop-product-grid{grid-template-columns:minmax(0,1fr)}
    .sf-cart-row{grid-template-columns:64px minmax(0,1fr);row-gap:.5rem}
    .sf-cart-row__qty,.sf-cart-row__price{grid-column:2}
    .sf-cart-row__img{width:64px;height:64px}
    .shop-trust-row{grid-template-columns:minmax(0,1fr)}
    .shop-cat-grid{grid-template-columns:minmax(0,1fr)}
    .sf-checkout-stepper{justify-content:flex-start;gap:.3rem}
    .sf-stepper-line{width:16px}
}

/* =============================================================
   SHOP LAYOUT — dedicated header/footer/landing CSS
   ============================================================= */

/* ---- Shop Header ---- */
.shop-header{position:sticky;top:0;z-index:200;box-shadow:0 2px 12px rgba(26,36,48,.08)}
.shop-header-topbar{background:#1a2b0e;color:rgba(255,255,255,.75);padding:.4rem 0;font-size:.8rem}
.shop-header-topbar a{color:rgba(255,255,255,.75);text-decoration:none;font-weight:600}
.shop-header-topbar a:hover{color:#fff}
.shop-header-main{background:#fff;border-bottom:1px solid rgba(26,36,48,.09);padding:.8rem 0}

.shop-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex-shrink:0}
.shop-logo img{height:32px}
.shop-logo-badge{font-size:.65rem;font-weight:800;background:#aec90c;color:var(--ink);padding:.15rem .45rem;border-radius:5px;text-transform:uppercase;letter-spacing:.05em;line-height:1}

.shop-search-form{flex:1;max-width:580px;position:relative}
.shop-search-input{width:100%;border-radius:50px;padding:.6rem 3rem .6rem 1.1rem;border:2px solid rgba(26,36,48,.12);font-size:.88rem;transition:border-color .18s,box-shadow .18s;background:#f8fafc}
.shop-search-input:focus{border-color:#aec90c;outline:none;box-shadow:0 0 0 3px rgba(174,201,12,.15);background:#fff}
.shop-search-btn{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);cursor:pointer;font-size:.95rem;padding:0}

.shop-header-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto;flex-shrink:0}
.shop-header-action{display:flex;flex-direction:column;align-items:center;gap:.12rem;padding:.45rem .7rem;border-radius:12px;text-decoration:none;color:#304150;font-size:.7rem;font-weight:700;transition:background .15s;position:relative;white-space:nowrap;line-height:1.2}
.shop-header-action i{font-size:1.15rem;color:var(--ink)}
.shop-header-action:hover{background:#f2f8e4;color:var(--ink)}
.shop-header-action .shop-cart-badge{position:absolute;top:.15rem;right:.15rem}

/* Category nav */
.shop-nav{background:#f9fdf0;border-bottom:2px solid rgba(174,201,12,.2)}
.shop-nav-inner{display:flex;align-items:center;gap:.15rem;overflow-x:auto;scrollbar-width:none;padding:.3rem 0}
.shop-nav-inner::-webkit-scrollbar{display:none}
.shop-nav-item{white-space:nowrap;padding:.52rem .9rem;text-decoration:none;font-size:.86rem;font-weight:700;color:#304150;border-radius:8px;transition:background .15s,color .15s;display:block}
.shop-nav-item:hover{background:rgba(174,201,12,.18);color:#3d6500}
.shop-nav-item.is-active{background:rgba(174,201,12,.22);color:#3d6500}
.shop-nav-item.is-home{margin-right:.5rem}
.shop-nav-sep{flex:1}

/* Mobile nav */
.shop-mobile-nav-btn{background:none;border:1px solid rgba(26,36,48,.15);border-radius:10px;padding:.45rem .6rem;display:none;cursor:pointer;color:var(--ink);font-size:1.05rem}
.shop-mobile-drawer{padding:1rem;border-top:1px solid rgba(26,36,48,.08);background:#fff}
.shop-mobile-drawer a{display:block;padding:.6rem 0;border-bottom:1px solid rgba(26,36,48,.06);font-size:.9rem;font-weight:600;color:var(--ink);text-decoration:none}
.shop-mobile-drawer a:hover{color:var(--brand)}

/* ---- Shop Footer ---- */
.shop-footer{background:#fff;border-top:2px solid rgba(174,201,12,.2);margin-top:4rem}
.shop-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;padding:3rem 0 2rem}
.shop-footer-brand img{height:28px;margin-bottom:.75rem}
.shop-footer-brand p{color:var(--muted);font-size:.85rem;line-height:1.6}
.shop-footer h6{font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.85rem}
.shop-footer-nav{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}
.shop-footer-nav a{color:#304150;text-decoration:none;font-size:.88rem;font-weight:600}
.shop-footer-nav a:hover{color:var(--brand)}
.shop-footer-bottom{border-top:1px solid rgba(26,36,48,.07);padding:1.1rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;font-size:.82rem;color:var(--muted)}
.shop-footer-legal{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.shop-footer-legal a,.shop-footer-legal button{color:var(--muted);text-decoration:none;font-weight:600;background:none;border:none;padding:0;cursor:pointer;font-size:.82rem}
.shop-footer-legal a:hover,.shop-footer-legal button:hover{color:var(--ink)}
.shop-footer-payments{display:flex;align-items:center;gap:.6rem;font-size:.78rem;font-weight:700;color:var(--muted)}
.shop-footer-payments i{font-size:1.2rem}
.shop-footer-social{display:flex;gap:.5rem;margin-top:.75rem}
.shop-footer-social a{width:32px;height:32px;border-radius:50%;background:#f0f2f5;display:flex;align-items:center;justify-content:center;color:#304150;text-decoration:none;font-size:.85rem;transition:background .15s,color .15s}
.shop-footer-social a:hover{background:#aec90c;color:var(--ink)}

/* ---- Landing Page — Category tiles ---- */
.shop-lp-cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.shop-lp-cat-tile{position:relative;border-radius:28px;overflow:hidden;background:linear-gradient(145deg,#f4f8ea,#edf5d5);border:1px solid rgba(174,201,12,.2);padding:2rem;display:flex;flex-direction:column;gap:1rem;transition:box-shadow .2s,transform .2s}
.shop-lp-cat-tile:hover{box-shadow:0 20px 50px rgba(30,45,62,.1);transform:translateY(-2px)}
.shop-lp-cat-tile.is-preview{background:#f8fafc;border-color:rgba(26,36,48,.07);opacity:.7}
.shop-lp-cat-tile__icon{width:60px;height:60px;border-radius:18px;background:rgba(174,201,12,.2);color:#536700;font-size:1.5rem;display:flex;align-items:center;justify-content:center}
.shop-lp-cat-tile__badge{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:999px;font-size:.75rem;font-weight:800;background:rgba(174,201,12,.25);color:#3d6500;width:fit-content}
.shop-lp-cat-tile.is-preview .shop-lp-cat-tile__badge{background:#f0f2f5;color:#8a9aaa}
.shop-lp-cat-tile h3{font-size:1.2rem;letter-spacing:-.03em;margin:0}
.shop-lp-cat-tile p{color:var(--muted);font-size:.88rem;margin:0;line-height:1.6}
.shop-lp-cat-tile .btn{align-self:flex-start;margin-top:auto}

/* ---- Landing Page — Consultation banner ---- */
.shop-lp-consult{background:linear-gradient(135deg,#aec90c 0%,#c8e817 100%);padding:3.5rem 0;text-align:center}
.shop-lp-consult h2{color:#1a2510;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.04em;margin-bottom:.6rem}
.shop-lp-consult p{color:rgba(26,37,16,.75);max-width:52ch;margin:0 auto 1.75rem;font-size:1rem}
.shop-lp-consult-ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:.85rem}
.shop-lp-consult .btn-dark{background:#1a2b0e;border-color:#1a2b0e;color:#fff}
.shop-lp-consult .btn-dark:hover{background:#253240}
.shop-lp-consult .btn-outline-dark{border-color:rgba(26,36,48,.4);color:#1a2510}

/* ---- Responsive ---- */
@media(max-width:992px){
    .shop-mobile-nav-btn{display:flex;align-items:center;justify-content:center}
    .shop-header-main .container-xxl{flex-wrap:wrap;gap:.75rem}
    .shop-search-form{order:3;max-width:100%;flex:0 0 100%}
    .shop-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
    .shop-lp-cat-grid{grid-template-columns:minmax(0,1fr)}
    .shop-footer-grid{grid-template-columns:minmax(0,1fr)}
    .shop-footer-bottom{flex-direction:column;align-items:flex-start}
}

/* ============================================================
   Homepage (hm-*) — UX Rebuild
   ============================================================ */

/* --- Hero Entrance Animation --- */
/* Einziges dezentes Einblenden der Seite (keine gestaffelten Hero-Animationen) */
@keyframes pageIn{from{opacity:0}to{opacity:1}}
main{animation:pageIn 200ms ease-out both}
@media(prefers-reduced-motion:reduce){main{animation:none}}


/* --- Hero pills --- */
.hm-hero-pills{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.hm-hero-pills span{display:inline-flex;align-items:center;gap:.45rem;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.hm-hero-pills span i{color:var(--brand-dark);font-size:.9rem}


/* --- Section head (title + optional right CTA) --- */
.hm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.hm-section-head h2{font-size:clamp(1.35rem,2.5vw,1.75rem);letter-spacing:-.04em;margin-bottom:.2rem}

/* --- Service cards --- */
.hm-service-card{height:100%;padding:1.25rem;border-radius:1rem;border:1px solid var(--border-soft);background:var(--surface-card);display:flex;flex-direction:column;gap:.55rem;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}
.hm-service-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(26,36,16,.09);border-color:var(--border)}
.hm-service-card h3{font-size:1rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin:0}
.hm-service-card p{font-size:.95rem;color:var(--ink-soft);margin:0;flex:1;line-height:1.6}
.hm-service-card .link-brand{font-size:.83rem;font-weight:700;color:var(--brand-text);text-decoration:none;margin-top:.25rem;display:inline-flex;align-items:center;gap:.35rem}
.hm-service-card .link-brand:hover{color:var(--brand-ink);text-decoration:none}


/* --- CTA strip --- */
/* Product-Nav Section */
.hm-product-nav{background:var(--surface-card);border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}
.hm-product-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.hm-product-tag{display:inline-flex;align-items:center;gap:.4rem;padding:.375rem .875rem;background:var(--surface);border:1px solid var(--border-soft);border-radius:2rem;color:var(--ink);text-decoration:none;font-size:.875rem;font-weight:500;line-height:1.4;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .1s ease}
.hm-product-tag i{font-size:.8rem;opacity:.7}
.hm-product-tag:hover{background:var(--brand);border-color:var(--brand);color:#fff;transform:translateY(-1px)}
.hm-product-tag:hover i{opacity:1}
@media(prefers-reduced-motion:reduce){.hm-product-tag{transition:none}}

/* Editorial Text Sections */
.hm-editorial-grid{display:grid;grid-template-columns:1fr;gap:3rem}
@media(min-width:992px){.hm-editorial-grid{grid-template-columns:3fr 1.1fr;gap:4rem;align-items:start}}
.hm-editorial-body{max-width:72ch}
.hm-editorial-body h2{font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.04em;margin-bottom:1.25rem;color:var(--ink)}
.hm-editorial-body p{color:var(--ink-soft);line-height:1.8;margin-bottom:1rem;font-size:.97rem}
.hm-editorial-body p:last-child{margin-bottom:0}
.hm-editorial-links{background:var(--surface-card);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:1.5rem}
.hm-editorial-links .eyebrow{display:block;margin-bottom:.75rem}
.hm-editorial-linklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.125rem}
.hm-editorial-linklist li a{display:flex;align-items:center;gap:.5rem;padding:.45rem .5rem;border-radius:.5rem;color:var(--ink-soft);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .14s,color .14s}
.hm-editorial-linklist li a i{font-size:.75rem;color:var(--brand-dark);width:1rem;text-align:center;flex-shrink:0}
.hm-editorial-linklist li a:hover{background:var(--surface-warm);color:var(--brand-text)}

/* Hilfsmittelbestellung Section */
.hm-aid-order{background:#fff;border-top:1px solid var(--border-soft)}
.hm-aid-order-inner{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center}
@media(min-width:768px){.hm-aid-order-inner{grid-template-columns:1fr auto}}
.hm-aid-order-body{max-width:66ch}
.hm-aid-order-body h2{font-size:clamp(1.3rem,2.5vw,1.7rem);letter-spacing:-.04em;margin-bottom:1.1rem;color:var(--ink)}
.hm-aid-order-body p{color:var(--ink-soft);line-height:1.8;font-size:.97rem;margin-bottom:.9rem}
.hm-aid-order-body p:last-of-type{margin-bottom:0}
/* Große Zahl statt Lime-Kasten */
.hm-aid-order-badge{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.35rem;background:none;border-left:3px solid var(--brand);border-radius:0;padding:.35rem 0 .35rem 1.35rem;min-width:200px;color:var(--ink);flex-shrink:0}
.hm-aid-order-badge i{display:none}
.hm-aid-order-badge strong{font-size:clamp(2.6rem,5vw,3.6rem);font-family:var(--font-display);font-weight:800;letter-spacing:-.05em;line-height:1;color:var(--ink)}
.hm-aid-order-badge span{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-text);max-width:20ch;line-height:1.35}
@media(max-width:767px){.hm-aid-order-badge{min-width:0}}

/* CTA Strip */
.hm-cta-strip{background:var(--forest);padding:3.5rem 0}
.hm-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.hm-cta-inner h2{font-size:clamp(1.2rem,2.5vw,1.6rem);color:#fff;letter-spacing:-.04em;margin-bottom:.5rem}
.hm-cta-inner p{color:rgba(255,255,255,.8);margin:0;max-width:52ch;font-size:1rem}
.hm-cta-actions{display:flex;flex-wrap:wrap;gap:.75rem;flex-shrink:0}
.hm-cta-strip .btn-soft{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);color:#fff}
.hm-cta-strip .btn-soft:hover,.hm-cta-strip .btn-soft:focus-visible{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.6);color:#fff}
.hm-cta-strip .btn-brand:hover,.hm-cta-strip .btn-brand:focus-visible{background:#fff;border-color:#fff;color:var(--brand-ink)}

/* --- Homepage responsive --- */
@media(max-width:992px){
    .hm-cta-inner{flex-direction:column;text-align:center}
    .hm-cta-actions{justify-content:center}
    .hm-section-head{flex-direction:column;align-items:flex-start}
}
@media(max-width:576px){
    .hm-cta-actions{flex-direction:column;width:100%}
    .hm-cta-actions .btn{width:100%;justify-content:center}
}

/* ============================================================
   Shop integrated layout extras
   ============================================================ */

/* Welcome coupon strip */
.shop-welcome-strip{background:linear-gradient(90deg,rgba(174,201,12,.12) 0%,rgba(174,201,12,.06) 100%);border-bottom:1px solid rgba(174,201,12,.25);padding:.6rem 0}
.shop-welcome-strip__inner{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}
.shop-welcome-strip__inner>i{color:var(--brand-dark);font-size:1rem;flex-shrink:0}
.shop-welcome-strip__inner>span{font-size:.85rem;color:#3a3a3a;flex:1;min-width:0}
.shop-welcome-strip__inner strong{color:#3d6500}

/* Category nav strip */
.shop-cat-strip{border-bottom:1px solid rgba(26,36,48,.08);background:#fff;position:sticky;top:0;z-index:100}
.shop-cat-strip__inner{display:flex;align-items:center;gap:.25rem;overflow-x:auto;padding:.5rem 0;scrollbar-width:none}
.shop-cat-strip__inner::-webkit-scrollbar{display:none}
.shop-cat-strip__link{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:999px;font-size:.82rem;font-weight:600;color:#4a5568;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s;flex-shrink:0}
.shop-cat-strip__link:hover{background:rgba(174,201,12,.12);color:#3d6500}
.shop-cat-strip__link.is-active{background:rgba(174,201,12,.2);color:#3d6500}

/* ============================================================
   Portal — E-Mail-Verifikations-Banner
   ============================================================ */
.portal-verify-banner{background:#fff8e1;border-bottom:2px solid #f59e0b;padding:.85rem 0}
.portal-verify-banner__inner{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.portal-verify-banner__icon{width:38px;height:38px;border-radius:50%;background:#fef3c7;color:#d97706;font-size:1.1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.portal-verify-banner strong{font-size:.9rem;color:#92400e;display:block;margin-bottom:.2rem}
.portal-verify-banner p{font-size:.82rem;color:#78350f}
@media(max-width:600px){
    .portal-verify-banner__inner{flex-direction:column;align-items:flex-start}
    .portal-verify-banner__inner form{align-self:stretch}
    .portal-verify-banner__inner .btn{width:100%}
}

/* ============================================================
   Homepage — Hero Background Image Mode
   ============================================================ */
.hm-hero--bg{position:relative;background-color:var(--ink)}
.hm-hero--bg::before{content:'';position:absolute;inset:0;background:var(--hero-bg) center center / cover no-repeat;opacity:.35;z-index:0}
.hm-hero--bg>.container-xxl{position:relative;z-index:1}
.hm-hero--bg .eyebrow,.hm-hero--bg .eyebrow-strong{background:none;color:#d4f55c;border-bottom-color:rgba(174,201,12,.6)}
.hm-hero--bg h1{color:#fff}
.hm-hero--bg .lead{color:rgba(255,255,255,.8)}
.hm-hero--bg .hm-hero-pills span{background:none;color:rgba(255,255,255,.85)}
.hm-hero--bg .hm-hero-pills span i{color:var(--brand)}
.hm-hero--bg .btn-soft{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.3)}
.hm-hero--bg .btn-soft:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.5)}

/* ============================================================
   Homepage — Hero Filialbild + Quickbar
   ============================================================ */
.hm-hero-img-wrap{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 24px 56px rgba(26,36,48,.13)}
.hm-hero-img{display:block;width:100%;height:auto;object-fit:cover}

.hm-quickbar{background:#fff;border-bottom:1px solid rgba(26,36,48,.07);padding:.25rem 0}
.hm-quickbar-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.hm-qb-tile{display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.25rem;text-decoration:none;color:inherit;border-right:1px solid rgba(26,36,48,.07);transition:background-color .18s ease,color .18s ease}
.hm-qb-tile:last-child{border-right:none}
.hm-qb-tile:hover{background:var(--surface);color:inherit}
.hm-qb-tile:hover strong{color:var(--brand-text)}
.hm-qb-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;background:rgba(174,201,12,.15);color:#4d6700;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.hm-qb-tile--brand .hm-qb-icon{background:var(--brand);color:var(--brand-ink)}
.hm-qb-text{min-width:0}
.hm-qb-text strong{display:block;font-size:.88rem;font-weight:700;color:var(--ink);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-qb-text span{display:block;font-size:.82rem;color:var(--muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:991px){
  .hm-quickbar-grid{grid-template-columns:repeat(2,1fr)}
  .hm-qb-tile:nth-child(2){border-right:none}
  .hm-qb-tile{border-bottom:1px solid rgba(26,36,48,.07)}
  .hm-qb-tile:nth-child(3),.hm-qb-tile:nth-child(4){border-bottom:none}
}
@media(max-width:479px){
  .hm-quickbar-grid{grid-template-columns:minmax(0,1fr)}
  .hm-qb-tile{border-right:none;border-bottom:1px solid rgba(26,36,48,.07)}
  .hm-qb-tile:last-child{border-bottom:none}
}

/* ============================================================
   Homepage — Trust Strip
   ============================================================ */
.hm-trust-strip{background:var(--surface-warm);padding:2.75rem 0}
.hm-trust-badges{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0}
.hm-trust-badge{display:flex;align-items:center;gap:.9rem;padding:1rem 2rem;flex:1;min-width:180px;justify-content:center}
.hm-trust-badge>i{font-size:1.65rem;color:var(--brand);flex-shrink:0}
.hm-trust-badge strong{display:block;font-size:1rem;font-weight:700;color:var(--ink);line-height:1.2}
.hm-trust-badge span{display:block;font-size:.82rem;color:var(--muted);margin-top:.15rem}
.hm-trust-divider{width:1px;height:3rem;background:var(--border);flex-shrink:0;align-self:center}
@media(max-width:767px){
    .hm-trust-divider{display:none}
    .hm-trust-badge{flex:0 0 50%;justify-content:flex-start;padding:.75rem 1.25rem}
}
@media(max-width:400px){
    .hm-trust-badge{flex:0 0 100%}
}


/* ============================================================
   Homepage — App Teaser
   ============================================================ */

.hm-app-benefits{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}
.hm-app-benefits li{display:flex;align-items:flex-start;gap:.9rem}
.hm-app-benefits li>i{width:2.2rem;height:2.2rem;border-radius:.6rem;background:rgba(174,201,12,.18);color:#5a7800;font-size:.9rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.1rem}
.hm-app-benefits li strong{display:block;font-size:.9rem;font-weight:700;color:var(--ink);margin-bottom:.1rem}
.hm-app-benefits li span{font-size:.82rem;color:#6b7280}

/* ============================================================
   Homepage — FAQ
   ============================================================ */
.hm-faq-accordion{border-radius:.75rem;overflow:hidden;border:1px solid rgba(26,36,48,.08)}
.hm-faq-item{border:none;border-bottom:1px solid rgba(26,36,48,.07)}
.hm-faq-item:last-child{border-bottom:none}
.hm-faq-btn{font-size:.95rem;font-weight:600;color:var(--ink);background:#fff;padding:1.1rem 1.25rem;box-shadow:none !important}
.hm-faq-btn:not(.collapsed){color:var(--brand-text);background:transparent}
.hm-faq-btn::after{filter:none}
.hm-faq-btn:not(.collapsed)::after{filter:none}
.hm-faq-body{font-size:.95rem;color:var(--ink-soft);line-height:1.7;padding:0 1.25rem 1.1rem;background:transparent}

/* ============================================================
   Homepage — Location Slider
   ============================================================ */
.hm-location-slider-section{overflow:hidden}

/* Owl nav buttons */
.hm-location-slider-section .owl-nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;left:0;pointer-events:none;display:flex;justify-content:space-between;padding:0 .5rem}
.hm-location-slider-section .owl-nav button{pointer-events:all;width:44px;height:44px;border-radius:50%;background:#fff !important;border:1px solid rgba(26,36,48,.12) !important;color:var(--ink) !important;display:flex;align-items:center;justify-content:center;font-size:.85rem;box-shadow:0 2px 8px rgba(26,36,48,.1);transition:background .15s,box-shadow .15s}
.hm-location-slider-section .owl-nav button:hover{background:var(--brand) !important;color:var(--brand-ink) !important;border-color:var(--brand) !important}
.hm-location-slider-section .owl-dots{margin-top:1.25rem;text-align:center}
.hm-location-slider-section .owl-dot span{width:8px;height:8px;background:rgba(26,36,48,.2);border-radius:50%;display:block;transition:background .2s,width .2s}
.hm-location-slider-section .owl-dot.active span{background:#aec90c;width:22px;border-radius:4px}

/* Slide wrapper */
.loc-slide-item{padding:0 2px}
.loc-slide-card{display:flex;flex-direction:column;background:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) 0;overflow:hidden;border:1px solid var(--border-soft);border-left:3px solid var(--brand);text-decoration:none;color:inherit;transition:border-color .2s;height:100%}
.loc-slide-card:hover,.loc-slide-card:focus-visible{border-left-color:var(--brand-dark);color:inherit}
.loc-slide-card:hover .loc-slide-name{color:var(--brand-text)}

/* Image area */
.loc-slide-img{position:relative;width:100%;padding-top:56.25%;overflow:hidden;background:var(--surface)}
.loc-slide-img.is-empty{border-bottom:1px solid var(--border-soft)}
.loc-slide-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.loc-slide-card:hover .loc-slide-img img{transform:scale(1.04)}

/* Placeholder */
.loc-slide-placeholder{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-start;padding:1.1rem 1.25rem}
.loc-slide-city{font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--ink)}

/* Card body */
.loc-slide-body{padding:1.1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.loc-slide-name{font-size:.95rem;font-weight:700;color:var(--ink);line-height:1.3;display:block}
.loc-slide-addr{font-size:.88rem;color:var(--ink-soft);margin:0;display:flex;align-items:flex-start;gap:.4rem}
.loc-slide-addr i{color:var(--brand-dark);flex-shrink:0;margin-top:.15rem}
.loc-slide-phone{font-size:.88rem;color:var(--ink-soft);margin:0;display:flex;align-items:center;gap:.4rem}
.loc-slide-phone i{color:var(--brand-dark);flex-shrink:0}
.loc-slide-teaser{font-size:.88rem;color:var(--ink-soft);margin:0;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.loc-slide-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:700;color:var(--brand-text);margin-top:auto;padding-top:.5rem}
.loc-slide-link i{font-size:.7rem;transition:transform .15s}
.loc-slide-card:hover .loc-slide-link i{transform:translateX(3px)}


/* ============================================================
   No-Image Placeholders (CSS-only, kein externer Dienst)
   ============================================================ */
.sf-prod-card__no-img{display:flex;align-items:center;justify-content:center;width:100%;padding-top:75%;position:relative;background:#f0f5e0}
.sf-prod-card__no-img i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.5rem;color:#aec90c}
.sf-pdp__no-img{display:flex;align-items:center;justify-content:center;min-height:300px;border-radius:1rem;background:#f0f5e0}
.sf-pdp__no-img i{font-size:4rem;color:#aec90c}
.sf-thumb-no-img{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:.5rem;background:#f0f5e0;flex-shrink:0}
.sf-thumb-no-img i{font-size:1.3rem;color:#aec90c}
.media-placeholder__icon{width:3rem;height:3rem;border-radius:.75rem;background:rgba(174,201,12,.15);color:#5a7800;font-size:1.35rem;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}
.media-placeholder__list{list-style:none;padding:0;margin:.75rem 0 0;display:grid;gap:.4rem}
.media-placeholder__list li{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4b5563}
.media-placeholder__list li i{color:#aec90c;font-size:.8rem;flex-shrink:0}

/* ============================================================
   Homepage — App-Teaser Feature List (ersetzt CSS-Mockup)
   ============================================================ */
.hm-app-feature-list{display:grid;gap:1.25rem}
.hm-app-feature{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.hm-app-feature>i{width:2.25rem;height:2.25rem;border-radius:.65rem;background:rgba(174,201,12,.15);color:#5a7800;font-size:.95rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.1rem}
.hm-app-feature strong{display:block;color:var(--ink);font-size:.92rem;font-weight:700;margin-bottom:.2rem}
.hm-app-feature span{font-size:.84rem;color:#6b7280;line-height:1.5}

/* ============================================================
   Subhero — kompaktere Version
   ============================================================ */
.subhero.py-5{padding-top:3rem!important;padding-bottom:3rem!important}

/* ============================================================
   Section Head — saubereres Spacing
   ============================================================ */
.hm-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2rem}
.hm-section-head h2{font-size:1.6rem;letter-spacing:-.02em;margin-bottom:.35rem}
.py-5{padding-top:4rem!important;padding-bottom:4rem!important}

/* ============================================================
   Filial-Video (Standort-Detailseite, rechte Spalte)
   ============================================================ */
.branch-video__frame{position:relative;aspect-ratio:16/9;margin-top:.75rem;border-radius:14px;overflow:hidden;background:#0f1a06}
.branch-video__media{display:block;width:100%;height:100%;object-fit:cover}
.branch-video__frame{position:relative;display:block;width:100%;border:0;padding:0}


/* ============================================================
   Filial-Bildergalerie — Slider + Lightbox
   ============================================================ */
.loc-gallery-section{background:#fff;border-top:1px solid var(--border-soft)}
.loc-gallery-head{max-width:640px;margin:0 0 1.75rem}
.loc-gallery-head h2{font-size:clamp(1.4rem,3vw,1.85rem);margin:.6rem 0 .45rem;color:var(--ink)}

/* Slider */
.loc-gallery-wrap{position:relative}
.loc-gallery-slider{position:relative;overflow:hidden}
.loc-gallery-track{display:flex;gap:12px;transition:transform .35s cubic-bezier(.4,0,.2,1)}
.loc-gallery-slide{flex:0 0 calc(33.333% - 8px);aspect-ratio:4/3;border:0;padding:0;background:#e8eddf;border-radius:14px;overflow:hidden;cursor:pointer;position:relative;outline:none}
.loc-gallery-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.loc-gallery-slide:hover img{transform:scale(1.04)}
.loc-gallery-slide::after{content:'';position:absolute;inset:0;background:rgba(15,26,6,0);transition:background .2s ease;border-radius:14px}
.loc-gallery-slide:hover::after{background:rgba(15,26,6,.12)}
.loc-gallery-slide:focus-visible{outline:3px solid rgba(174,201,12,.6);outline-offset:3px}

/* Slider-Arrows */
.loc-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:44px;height:44px;border-radius:50%;border:0;background:#fff;box-shadow:0 4px 14px rgba(30,45,62,.16);color:#374200;font-size:1rem;cursor:pointer;display:grid;place-items:center;transition:background .15s,transform .15s,opacity .2s}
.loc-gallery-arrow:hover{background:#aec90c;color:#1f2d00;transform:translateY(-50%) scale(1.06)}
.loc-gallery-arrow.is-prev{left:-20px}
.loc-gallery-arrow.is-next{right:-20px}
.loc-gallery-arrow.is-hidden{opacity:0;pointer-events:none}

/* Lightbox */
.loc-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(12,20,8,.92);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .22s ease;backdrop-filter:blur(4px)}
.loc-lightbox.is-open{opacity:1;pointer-events:all}
.loc-lightbox__stage{max-width:min(92vw,1100px);max-height:86vh;display:flex;align-items:center;justify-content:center}
.loc-lightbox__img{max-width:100%;max-height:86vh;border-radius:10px;object-fit:contain;box-shadow:0 24px 72px rgba(0,0,0,.55);transition:opacity .18s ease}
.loc-lightbox__close{position:fixed;top:20px;right:24px;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:1.3rem;cursor:pointer;display:grid;place-items:center;transition:background .15s;backdrop-filter:blur(4px);z-index:2001}
.loc-lightbox__close:hover{background:rgba(255,255,255,.28)}
.loc-lightbox__nav{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:1.2rem;cursor:pointer;display:grid;place-items:center;transition:background .15s,transform .15s;backdrop-filter:blur(4px);z-index:2001}
.loc-lightbox__nav:hover{background:rgba(255,255,255,.28);transform:translateY(-50%) scale(1.06)}
.loc-lightbox__nav.is-prev{left:20px}
.loc-lightbox__nav.is-next{right:20px}
.loc-lightbox__counter{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.75);font-size:.9rem;font-weight:600;letter-spacing:.04em;z-index:2001;pointer-events:none}


@media (max-width:991px){
  .loc-gallery-slide{flex:0 0 calc(50% - 6px)}
}
@media (max-width:600px){
  .loc-gallery-slide{flex:0 0 calc(80% - 6px)}
  .loc-gallery-arrow.is-prev{left:4px}
  .loc-gallery-arrow.is-next{right:4px}
  .loc-lightbox__nav{width:44px;height:44px;font-size:1rem}
  .loc-lightbox__nav.is-prev{left:8px}
  .loc-lightbox__nav.is-next{right:8px}
}
@media (prefers-reduced-motion:reduce){.loc-gallery-track,.loc-gallery-slide img,.loc-lightbox,.loc-lightbox__nav{transition:none}}

/* ============================================================
   B9: Mobile-Optimierungen (60+ optimiert)
   ============================================================ */
@media(max-width:767px){
  body{font-size:17px}
  .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
  .btn-sm{min-height:40px}
  .form-control,.form-select{font-size:16px!important;min-height:48px}
  .nav-link{min-height:48px;display:flex;align-items:center}
  .hm-qb-tile{min-height:64px}
  .accordion-button{min-height:52px}
}

/* ============================================================
   B6: Mobile Nav — Slide-in Drawer
   ============================================================ */
@media(max-width:991.98px){
  #mainNav,#mainNav.collapsing{
    position:fixed!important;top:0!important;left:0!important;
    height:100dvh!important;width:min(310px,84vw)!important;max-height:none!important;
    background:var(--surface-card)!important;
    box-shadow:8px 0 40px rgba(25,36,16,.18)!important;
    z-index:1055!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
    padding:0 0 3rem!important;
    transform:translateX(-110%)!important;
    transition:transform .28s cubic-bezier(.4,0,.2,1)!important;
  }
  #mainNav.show{transform:translateX(0)!important}
  .nav-drawer-backdrop{
    position:fixed;inset:0;
    background:rgba(25,36,16,.42);
    z-index:1054;
    opacity:0;pointer-events:none;
    transition:opacity .28s ease;
  }
  .nav-drawer-backdrop.is-visible{opacity:1;pointer-events:auto}
  .nav-drawer-close{
    display:flex;align-items:center;justify-content:flex-end;
    width:100%;background:transparent;border:0;
    padding:1.1rem 1.1rem .5rem;
    font-size:1.4rem;color:var(--muted);cursor:pointer;flex-shrink:0;
  }
  .nav-drawer-close:hover{color:var(--ink)}
  .nav-primary{padding-inline:1rem}
}
@media(min-width:992px){.nav-drawer-close{display:none!important}.nav-drawer-backdrop{display:none!important}}
@media(max-width:991.98px) and (prefers-reduced-motion:reduce){
  #mainNav,#mainNav.collapsing{transition:none!important}
  .nav-drawer-backdrop{transition:none}
}

/* ============================================================
   Redesign — Distinctive visual identity
   ============================================================ */

/* 1. White base — removes the green body tint */
body{background:#fff}
.bg-light-subtle{background:#f7faf2!important}

/* 2. Eyebrow — editorial small-caps, no pill */
.eyebrow{
  background:none;
  border-radius:0;
  padding:0 0 .18rem;
  border-bottom:2px solid var(--brand);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--brand-text);
  margin-bottom:.75rem;
  display:inline-block;
}
/* eyebrow-strong: keine Badge-Form mehr — gleiche Optik wie .eyebrow */
.eyebrow-strong{
  font-family:var(--font-display);
  background:none;
  border-radius:0;
  padding:0 0 .18rem;
  border-bottom:2px solid var(--brand);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--brand-text);
  margin-bottom:.75rem;
  display:inline-block;
}

/* 3. Hero — dark forest entrance */
.hm-hero{background:linear-gradient(160deg,#1a2b0e 0%,#233212 100%)}
.hm-hero h1{color:#fff}
.hm-hero .lead,.hm-hero .lead.text-muted,.hm-hero .text-muted{color:rgba(255,255,255,.78)!important}
.hm-hero .eyebrow,.hm-hero .eyebrow-strong{border-bottom-color:rgba(174,201,12,.6);color:#c8e417}
.hm-hero .hm-hero-pills span{color:rgba(255,255,255,.82)}
.hm-hero .hm-hero-pills span i{color:var(--brand)}
.hm-hero .btn-soft{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#fff}
.hm-hero .btn-soft:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.45)}
.hm-hero-accent{color:var(--brand)}

/* Hero headline: more dramatic scale */
.hm-hero h1.display-5{
  font-size:clamp(2.4rem,5.5vw,3.8rem);
  letter-spacing:-.05em;
  line-height:1.05;
  font-weight:800;
}

/* 4. Quickbar: slight elevation */
.hm-quickbar{box-shadow:none;border-bottom:1px solid var(--border-soft)}

/* 5. Section heads: bolder typography */
.hm-section-head h2{
  font-size:clamp(1.55rem,2.8vw,2.1rem);
  letter-spacing:-.05em;
  font-weight:800;
  line-height:1.1;
}
.section-rule{width:44px;height:4px;background:var(--brand);border-radius:2px;margin-bottom:.9rem}

/* 6. Service cards: left-border identity */
.hm-service-card{
  border-left:3px solid var(--brand);
  border-top:1px solid var(--border-soft);
  border-right:1px solid var(--border-soft);
  border-bottom:1px solid var(--border-soft);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  background:#fff;
  padding:1.25rem 1.35rem 1.35rem 1.5rem;
}
.hm-service-card:hover{border-left-color:var(--brand-dark)}
.hm-service-card h3{font-size:1rem;font-weight:800;letter-spacing:-.025em}

/* 7. Trust strip: clean white */
.hm-trust-strip{
  background:#fff;
  border-top:1px solid var(--border-soft);
  border-bottom:1px solid var(--border-soft);
}
.hm-trust-badge strong{font-size:1.05rem;font-weight:800;letter-spacing:-.02em}
.hm-trust-badge>i{color:var(--brand-dark)}

/* 8. App teaser: dark section */
.hm-app-teaser{background:linear-gradient(160deg,#1a2b0e 0%,#233212 100%)}
.hm-app-teaser>.container-xxl h2{color:#fff}
.hm-app-teaser .text-muted,.hm-app-teaser .lead.text-muted{color:rgba(255,255,255,.66)!important}
.hm-app-teaser .hm-app-feature{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);border-left-color:var(--brand)}
.hm-app-teaser .hm-app-feature strong{color:#fff}
.hm-app-teaser .hm-app-feature span{color:rgba(255,255,255,.6)}
.hm-app-teaser .hm-app-feature>i{background:rgba(174,201,12,.2);color:#aec90c}
.hm-app-teaser .section-rule{background:var(--brand)}
.hm-app-teaser .hm-app-benefits li strong{color:#fff}
.hm-app-teaser .hm-app-benefits li span{color:rgba(255,255,255,.62)}
.hm-app-teaser .hm-app-benefits li>i{background:rgba(174,201,12,.2);color:#aec90c}

/* 9. FAQ: clean editorial accordion */
.hm-faq-accordion{border:none;overflow:visible;border-radius:0}
.hm-faq-item{border:none!important;border-bottom:1px solid var(--border-soft)!important}
.hm-faq-btn{background:transparent;padding:1.25rem 0;padding-right:2rem;font-size:.98rem;font-weight:700;border-radius:0}
.hm-faq-btn:not(.collapsed){background:transparent;color:var(--brand-text)}
.hm-faq-body{background:transparent;padding:0 2.5rem 1.25rem 0;color:var(--ink-soft);font-size:.9rem}

/* 10. Product tags: rounded-rect */
.hm-product-tag{background:#fff;border-color:var(--border-soft);border-radius:.5rem;font-weight:600;min-height:44px;padding:.45rem .95rem}
.hm-product-tag:hover,.hm-product-tag:focus-visible{background:#fff;border-color:var(--brand);color:var(--brand-text);transform:none}

/* 11. Editorial headings: bolder */
.hm-editorial-body h2{font-size:clamp(1.45rem,2.8vw,1.9rem);letter-spacing:-.05em;font-weight:800}
.hm-aid-order-body h2{font-size:clamp(1.35rem,2.5vw,1.7rem);letter-spacing:-.05em;font-weight:800}
.hm-cta-inner h2{font-size:clamp(1.3rem,2.8vw,1.8rem);letter-spacing:-.05em;font-weight:800}

/* ============================================================
   Shared components — site-wide consistency (all sub-pages)
   ============================================================ */

/* Subhero — dark forest band, matches homepage hero */
.subhero{background:linear-gradient(160deg,#1a2b0e 0%,#233212 100%);padding:3.5rem 0 3rem}
.subhero.py-5,.subhero.section-block-sm{padding-top:3.5rem;padding-bottom:3rem}
.subhero .eyebrow{border-bottom-color:rgba(174,201,12,.6);color:#c8e417}
.subhero h1{color:#fff;letter-spacing:-.045em;font-weight:800;font-size:clamp(2.1rem,4.5vw,3.1rem);line-height:1.08}
.subhero .lead,.subhero .lead.text-muted,.subhero .text-muted,.subhero p{color:rgba(255,255,255,.78)!important}

/* Section headings site-wide: tighter, bolder */
.section-head h2,.section-heading h2{letter-spacing:-.045em;font-weight:800}

/* Service hub cards — cleaner, left-border identity */
.service-hub-card{
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  border-left:3px solid var(--brand);
  box-shadow:none;
  padding:1.25rem 1.3rem 1.3rem 1.4rem;
}
.service-hub-card:hover,.service-hub-card:focus-visible{
  border-left-color:var(--brand-dark);
  box-shadow:0 2px 10px rgba(26,36,16,.05);
}
.service-hub-card strong{font-size:1.1rem;font-weight:800;letter-spacing:-.025em}

/* CTA — dark strip like homepage */
.cta-section{background:#fff}
.cta-box{
  background:var(--forest);
  border:none;
  border-left:3px solid var(--brand);
  box-shadow:0 2px 10px rgba(26,36,16,.05);
}
.cta-box h2{color:#fff;letter-spacing:-.045em;font-weight:800}
.cta-box p{color:rgba(255,255,255,.72)}
.cta-box .btn-soft{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:#fff}
.cta-box .btn-soft:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.45)}

/* FAQ — editorial accordion (borderless, rule separators) */
.faq-section .accordion-item{border:none;border-bottom:1px solid var(--border-soft);border-radius:0!important;overflow:visible;box-shadow:none}
.faq-section .accordion-item + .accordion-item{margin-top:0}
.faq-section .accordion-button{padding:1.25rem 2rem 1.25rem 0;font-weight:700;border-radius:0}
.faq-section .accordion-button:not(.collapsed){background:transparent;color:var(--brand-text)}
.faq-section .accordion-body{padding:0 2rem 1.25rem 0}

/* Keyword chips — squared editorial */
.keyword-chip{border-radius:.5rem;background:#fff;border-color:var(--border-soft);font-weight:600;color:var(--ink-soft)}

/* ============================================================
   No hover-underlines — use a colour accent shift instead
   (a11y "underline links" toggle stays intact — it uses !important)
   ============================================================ */
.link-brand,.aid-phone-note a{text-decoration:none}
.service-submenu-link:hover,.service-submenu-link:focus-visible,
.location-menu-link:hover,.location-menu-link:focus-visible,
.footer-links a:hover,.footer-links a:focus-visible,
.footer-text-button:hover,.footer-text-button:focus-visible,
.aid-history-tracking-link:hover,.aid-history-tracking-link:focus-visible,
.hm-service-card .link-brand:hover,
.link-brand:hover,.link-brand:focus-visible,
.mobile-subnav-inner a:hover,.mobile-overview-link:hover,
.loc-slide-link,.hm-editorial-linklist li a:hover,
a:hover{text-decoration:none}

/* Colour-accent hovers where the old rule relied on the underline */
.service-submenu-link:hover,.service-submenu-link:focus-visible{color:var(--brand-text)}
.location-menu-link:hover,.location-menu-link:focus-visible{background:#f4f8ea;color:var(--brand-text)}
.location-menu-link:hover strong,.location-menu-link:focus-visible strong{color:var(--brand-text)}
.footer-links a:hover,.footer-links a:focus-visible,.footer-text-button:hover,.footer-text-button:focus-visible{color:var(--brand)}
.aid-history-tracking-link:hover,.aid-history-tracking-link:focus-visible{color:var(--brand-text)}
.link-brand{color:var(--brand-text);font-weight:700;transition:color .15s ease}
.link-brand:hover,.link-brand:focus-visible{color:var(--brand-ink)}

/* ============================================================
   Senioren-freundliches Klick-Mega-Menü (Desktop ≥992px)
   ============================================================ */
@media (min-width:992px){
  .mega-toggle{
    background:none;border:0;cursor:pointer;font:inherit;
    display:inline-flex;align-items:center;gap:.5rem;
  }
  .mega-toggle.dropdown-toggle::after{display:none}
  .mega-toggle__caret{font-size:.7rem;transition:transform .2s ease;color:var(--brand-text)}
  .mega-parent.is-open .mega-toggle__caret{transform:rotate(180deg)}
  .mega-parent.is-open>.mega-toggle{color:var(--brand-text)}
  .mega-parent.is-open>.mega-toggle::after,
  .mega-parent.is-open .nav-link.mega-toggle::after{transform:scaleX(1)}

  /* Panel-Grundlayout */
  .mega-menu{
    margin-top:.5rem;padding:0;border-radius:18px;
    border:1px solid var(--border);
    box-shadow:0 24px 60px rgba(25,36,16,.16);
    animation:megaIn .16s ease-out;
  }
  @keyframes megaIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  @media(prefers-reduced-motion:reduce){.mega-menu{animation:none}}

  /* Leistungen: bündige Vollbreiten-Mega-Leiste (kein Abstand nach oben) */
  .nav-item-services{position:static}
  .nav-item-services .mega-menu{
    position:absolute;top:100%;left:0;right:0;width:auto;max-width:none;
    margin-top:0;border-radius:0 0 18px 18px;border-top:0;
  }
  .mega-menu__inner{padding:1.25rem 1.5rem 1.4rem}
  .mega-menu__head{
    display:flex;align-items:center;justify-content:space-between;gap:1rem;
    padding-bottom:1rem;margin-bottom:1.1rem;border-bottom:2px solid var(--border-soft);
  }
  .mega-menu__head>strong{font-family:var(--font-display);font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
  .mega-menu__all{
    display:inline-flex;align-items:center;gap:.5rem;
    font-weight:800;font-size:1rem;color:var(--brand-text);
    padding:.55rem .9rem;border-radius:12px;background:var(--surface);
    white-space:nowrap;
  }
  .mega-menu__all:hover,.mega-menu__all:focus-visible{background:var(--surface-warm);color:var(--brand-ink)}
  .mega-menu__all i{transition:transform .18s ease}
  .mega-menu__all:hover i{transform:translateX(3px)}

  /* Alle Unterpunkte, dicht gepackt per Mehrspalten-Fluss (passt auf 1 Screen) */
  .mega-menu__inner{max-height:calc(100vh - var(--site-header-offset,160px) - 1rem);overflow-y:auto}
  .mega-menu__cols{column-count:5;column-gap:2.25rem}
  .mega-col{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;display:inline-block;width:100%;margin-bottom:1rem}
  .mega-col__title{
    display:block;font-family:var(--font-display);
    font-size:.98rem;font-weight:800;letter-spacing:-.01em;color:var(--ink);
    padding-bottom:.28rem;margin-bottom:.3rem;border-bottom:2px solid var(--brand);
  }
  .mega-col__title:hover,.mega-col__title:focus-visible{color:var(--brand-text)}
  .mega-col__links{list-style:none;margin:0;padding:0}
  .mega-col__links li{margin:0}
  .mega-col__links a{
    display:block;padding:.34rem .5rem;border-radius:8px;
    font-size:.92rem;line-height:1.25;color:var(--ink-soft);font-weight:600;
  }
  .mega-col__links a:hover,.mega-col__links a:focus-visible{background:var(--surface);color:var(--brand-text)}

  /* Standorte + Hilfsmittel: größere, klar klickbare Einträge */
  .location-menu-link{min-height:48px;font-size:1rem}
  .location-menu-header strong{font-size:1.05rem}
  .location-menu-header a{font-size:1rem}
}

/* Enger: Spaltenzahl reduzieren (Vollbreite bleibt) */
@media (min-width:992px) and (max-width:1400px){ .mega-menu__cols{column-count:4} }
@media (min-width:992px) and (max-width:1100px){ .mega-menu__cols{column-count:3} }

/* ============================================================
   Hero-Hintergrundvideo (optional) — Poster/Fallback = dunkler Verlauf
   ============================================================ */
.hm-hero--video{position:relative;overflow:hidden}
.hm-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;border:0}
.hm-hero__overlay{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(20,33,10,.9) 0%,rgba(22,36,12,.66) 55%,rgba(26,43,14,.48) 100%)}
.hm-hero--video>.container-xxl{position:relative;z-index:1}
/* Barrierefreiheit: bei "reduzierte Bewegung" Video aus (dunkler Hero bleibt) */
@media(prefers-reduced-motion:reduce){.hm-hero__video{display:none}}
/* Mobil: Video aus (spart Daten/Akku) — dunkler Verlauf + Text bleiben */
@media(max-width:767.98px){.hm-hero__video{display:none}}

/* ============================================================
   "KI-generiertes Bild"-Badge auf Leistungsbildern (dezent, oben rechts)
   ============================================================ */
.service-card-media-wrap,.service-detail-media,.service-landing-media{position:relative}
.service-landing-media{display:block;line-height:0}
.ai-image-badge{
  position:absolute;top:.5rem;right:.5rem;z-index:2;pointer-events:none;
  padding:.22rem .5rem;border-radius:7px;
  background:rgba(15,26,6,.5);color:#fff;
  font-family:var(--font-body);font-size:.68rem;font-weight:600;letter-spacing:.02em;line-height:1.2;
  opacity:.6;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);
  text-transform:none;
}
@media(max-width:575.98px){.ai-image-badge{font-size:.62rem;padding:.18rem .42rem}}

/* Startseiten-Highlight-Kacheln mit Kategoriebild */
.hm-service-card--media{padding:0;overflow:hidden;gap:0}
.hm-service-card__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#f8fbef,#eef4df);border-bottom:1px solid var(--border-soft)}
.hm-service-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.hm-service-card--media:hover .hm-service-card__media img{transform:scale(1.04)}
.hm-service-card__body{padding:1.15rem 1.25rem 1.3rem 1.35rem;display:flex;flex-direction:column;gap:.5rem;flex:1}
.hm-service-card__body p{flex:1;margin:0}

/* ============================================================
   Redesign 2 — Feinschliff (Überschriften, Karten, Alerts,
   Artikel-/Rechtsseiten, Komponenten). Steht bewusst am Ende,
   damit es ältere Definitionen gleicher Spezifität ablöst.
   ============================================================ */

/* H1 — Überschriften: fett und eng (Farbe bleibt geerbt, damit
   Wald-Bänder weiße Überschriften behalten) */
h1,h2,.h1,.h2,.display-5{font-weight:800;letter-spacing:-.045em;line-height:1.1}
h3,.h3{font-weight:800;letter-spacing:-.035em;line-height:1.15}
.display-5{font-weight:800}

/* H13 — Bootstrap-Alerts global: 3px-Linkskante, ruhige Flächen */
.alert{border:1px solid var(--border-soft);border-left:3px solid var(--brand-dark);border-radius:0 12px 12px 0;color:var(--ink);font-weight:500}
.alert-success{border-left-color:var(--brand-dark);background:#f4f8ea;color:#2f4a12}
.alert-danger{border-color:#f1d0cc;border-left-color:#b3261e;background:#fdf1ef;color:#7d1f17}
.alert-warning{border-color:#f3e2b8;border-left-color:#b07800;background:#fff8e6;color:#6a4a00}
.alert-info{border-color:#d6e3ee;border-left-color:#2f6db0;background:#f1f6fb;color:#22466a}
.alert .alert-link{color:inherit;font-weight:700}

/* N6 — Accordion-Pfeil in Markenfarbe statt Bootstrap-Navy */
.accordion{
  --bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23192410' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%235c7000' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
  --bs-accordion-active-color:var(--brand-text);
  --bs-accordion-active-bg:transparent;
  --bs-accordion-btn-focus-box-shadow:0 0 0 .2rem rgba(174,201,12,.35);
}

/* M5 — Ausnahmen der globalen Signatur-Karte */
.content-card.service-detail-media{border-left:1px solid var(--border-soft);border-radius:var(--radius-sm)}
.content-card.p-0{border-left-width:1px}

/* M4 — Ruhige Bänder: weiß mit Linie; höchstens ein --surface-Band */
.hm-band{background:#fff;border-top:1px solid var(--border-soft)}
.hm-band--surface{background:var(--surface);border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}

/* H11 — Startseiten-Hero: Standortliste statt Bild-Platzhalter */
.hm-hero-places{width:100%;max-width:440px;border-left:3px solid var(--brand);padding:.25rem 0 .25rem 1.5rem}
.hm-hero-places__label{display:block;font-family:var(--font-display);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#c8e417;margin-bottom:.6rem}
.hm-hero-places ul{list-style:none;margin:0;padding:0}
.hm-hero-places li+li{border-top:1px solid rgba(255,255,255,.14)}
.hm-hero-places a{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:52px;padding:.35rem 0;font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:800;letter-spacing:-.04em;line-height:1.1;color:#fff}
.hm-hero-places a i{font-size:.9rem;color:var(--brand);transition:transform .18s ease}
.hm-hero-places a:hover,.hm-hero-places a:focus-visible{color:#c8e417}
.hm-hero-places a:hover i{transform:translateX(3px)}
@media(max-width:991.98px){.hm-hero-places{max-width:none}}

/* ------------------------------------------------------------
   H2 / M9 — Artikel-/Rechtsseiten (page/default.php, .lst-detail)
   und Inhaltsblöcke aus content_html (DB)
   ------------------------------------------------------------ */
.lst-detail .service-detail-media{border-radius:var(--radius-sm)}
.lst-detail .service-detail-image{aspect-ratio:16/8}
.lst-detail .service-detail-copy{border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:0 2px 10px rgba(26,36,16,.05)}
.lst-detail .service-detail-copy > *{max-width:66ch}
.lst-detail .service-detail-copy > .benefit-grid,
.lst-detail .service-detail-copy > .seo-callout,
.lst-detail .service-detail-copy > .service-inline-cta,
.lst-detail .service-detail-copy > .legal-page,
.lst-detail .service-detail-copy > .row{max-width:none}
.lst-detail .service-detail-copy h2{letter-spacing:-.035em;font-weight:800;font-size:1.55rem}
.lst-detail .service-detail-copy h3{font-weight:800;letter-spacing:-.02em}
.lst-detail .service-detail-copy p,
.lst-detail .service-detail-copy li{color:var(--ink-soft)}
.lst-detail .service-side-card{border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.lst-detail .service-side-card h3{font-weight:800;letter-spacing:-.02em}
.lst-detail .service-side-card .btn{justify-content:center}
@media (max-width:991.98px){.lst-detail .service-detail-copy > *{max-width:none}}

.service-detail-copy a:not(.btn){color:var(--brand-text);font-weight:600}
.service-detail-copy a:not(.btn):hover,.service-detail-copy a:not(.btn):focus-visible{color:var(--brand-ink)}

/* Vorteile — Signatur-Karten im Raster */
.service-detail-copy .benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1.35rem 0 1.75rem;padding:0;list-style:none}
.service-detail-copy .benefit-grid li{margin:0;padding:1rem 1.1rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.service-detail-copy .benefit-grid strong{display:block;color:var(--ink);font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;margin-bottom:.3rem}

/* Hinweis-Kasten — Signatur-Karte auf --surface */
.service-detail-copy .seo-callout{padding:1.15rem 1.25rem;margin:1.5rem 0;background:var(--surface);border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.service-detail-copy .seo-callout h2,.service-detail-copy .seo-callout h3{margin-top:0}
.service-detail-copy .seo-callout > :last-child{margin-bottom:0}

/* Weiterführende Links — Trennlinien-Liste statt Pillen */
.service-detail-copy .internal-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;margin:1rem 0 0;padding:0;border-top:1px solid var(--border-soft)}
.service-detail-copy .internal-links a{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:48px;padding:.6rem 0;border-bottom:1px solid var(--border-soft);font-weight:700;color:var(--ink)}
.service-detail-copy .internal-links a::after{content:'\f061';font-family:'Font Awesome 6 Free';font-weight:900;font-size:.8rem;color:var(--brand-dark);transition:transform .18s ease}
.service-detail-copy .internal-links a:hover,.service-detail-copy .internal-links a:focus-visible{color:var(--brand-text)}
.service-detail-copy .internal-links a:hover::after{transform:translateX(3px)}

/* Handlungsaufforderung im Text — Wald-Band */
.service-detail-copy .service-inline-cta{padding:1.5rem 1.6rem;margin:1.75rem 0 0;background:var(--forest);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:#fff}
.service-detail-copy .service-inline-cta h2,.service-detail-copy .service-inline-cta h3{margin-top:0;color:#fff}
.service-detail-copy .service-inline-cta p,.service-detail-copy .service-inline-cta li{color:rgba(255,255,255,.84)}
.service-detail-copy .service-inline-cta p:last-child{margin-bottom:0}
.service-detail-copy .service-inline-cta a:not(.btn){color:#c8e417}
.service-detail-copy .service-inline-cta a:not(.btn):hover{color:#fff}
.service-detail-copy .service-inline-cta .btn-soft{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);color:#fff}
.service-detail-copy .service-inline-cta .btn-soft:hover,.service-detail-copy .service-inline-cta .btn-soft:focus-visible{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.6);color:#fff}
.service-detail-copy .service-inline-cta .btn-brand:hover,.service-detail-copy .service-inline-cta .btn-brand:focus-visible{background:#fff;border-color:#fff;color:var(--brand-ink)}
/* helle Variante (in DB genutzt) — Signatur-Karte statt Band */
.service-detail-copy .service-inline-cta.service-inline-cta-light{background:var(--surface);border:1px solid var(--border-soft);border-left:3px solid var(--brand);color:var(--ink)}
.service-detail-copy .service-inline-cta.service-inline-cta-light h2,.service-detail-copy .service-inline-cta.service-inline-cta-light h3{color:var(--ink)}
.service-detail-copy .service-inline-cta.service-inline-cta-light p,.service-detail-copy .service-inline-cta.service-inline-cta-light li{color:var(--ink-soft)}
.service-detail-copy .service-inline-cta.service-inline-cta-light a:not(.btn){color:var(--brand-text)}
.service-detail-copy .service-inline-cta.service-inline-cta-light .btn-soft{background:#fff;border-color:var(--border-soft);color:var(--brand-text)}

/* Ablauf-Schritte — nummerierte Zeilen mit Trennlinie */
.service-detail-copy .care-steps,.service-detail-copy .process-list{counter-reset:carestep;display:grid;gap:0;margin:1.25rem 0 1.75rem;padding:0;list-style:none;border-top:1px solid var(--border-soft)}
.service-detail-copy .care-steps li,.service-detail-copy .process-list li{counter-increment:carestep;position:relative;margin:0;padding:1rem 0 1rem 3.25rem;border-bottom:1px solid var(--border-soft)}
.service-detail-copy .care-steps li::before,.service-detail-copy .process-list li::before{content:counter(carestep);position:absolute;left:0;top:1rem;width:2.1rem;height:2.1rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:var(--brand-ink);font-family:var(--font-display);font-weight:800;font-size:.95rem}
.service-detail-copy .care-steps strong,.service-detail-copy .process-list strong{display:block;color:var(--ink);margin-bottom:.2rem}

/* Hinweise — Signatur-Karten untereinander */
.service-detail-copy .notice-list{display:grid;gap:.6rem;margin:1rem 0 1.5rem;padding:0;list-style:none}
.service-detail-copy .notice-list li{margin:0;padding:.9rem 1.05rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.service-detail-copy .notice-list strong{color:var(--ink)}

/* Prüflisten + Merkmalslisten */
.service-detail-copy .check-list{list-style:none;padding:0;margin:1rem 0 1.5rem;display:grid;gap:.15rem}
.service-detail-copy .check-list li{position:relative;padding:.35rem 0 .35rem 1.75rem;margin:0}
.service-detail-copy .check-list li::before{content:'\f00c';font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;left:0;top:.42rem;font-size:.85rem;color:var(--brand-dark)}
.service-detail-copy .service-feature-list{list-style:none;padding:0;margin:1rem 0 1.5rem;border-top:1px solid var(--border-soft)}
.service-detail-copy .service-feature-list li{margin:0;padding:.85rem 0;border-bottom:1px solid var(--border-soft)}
.service-detail-copy .service-feature-list strong{display:block;color:var(--ink)}

/* Verschachtelte Karten (z. B. Impressum) — flach statt Karte-in-Karte */
.service-detail-copy .content-card{background:none;border:0;border-left:3px solid var(--brand);border-radius:0;box-shadow:none;padding:.15rem 0 .15rem 1.1rem;height:auto}
.service-detail-copy .legal-page h2{margin-bottom:1.25rem}

@media (max-width:767.98px){
  .service-detail-copy .benefit-grid,.service-detail-copy .internal-links{grid-template-columns:minmax(0,1fr)}
  .service-detail-copy .service-inline-cta{padding:1.25rem}
}

/* ------------------------------------------------------------
   H8 — Auswahl-Liste (components/conversion-choices.php)
   ------------------------------------------------------------ */
.choice-section__head{max-width:760px;margin:0 0 1.5rem}
.choice-section__head h2{font-size:clamp(1.5rem,3.2vw,1.95rem);margin:.6rem 0 .55rem;color:var(--ink)}
.choice-section__head p{margin:0;color:var(--ink-soft);font-size:1.04rem;line-height:1.6}
.choice-section__head .aid-phone-note{margin-top:.85rem!important}
.choice-list{display:flex;flex-direction:column;border-top:1px solid var(--border-soft)}
.choice-list__item{display:flex;align-items:center;gap:1rem;min-height:72px;padding:1rem .25rem 1rem .9rem;border-bottom:1px solid var(--border-soft);border-left:3px solid transparent;color:inherit;text-decoration:none;transition:background-color .15s ease,border-color .15s ease}
.choice-list__item.is-primary{border-left-color:var(--brand)}
.choice-list__item:hover,.choice-list__item:focus-visible{background:var(--surface);border-left-color:var(--brand-dark)}
.choice-list__icon{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--surface);color:var(--brand-text);font-size:1.15rem}
.choice-list__item.is-primary .choice-list__icon{background:var(--brand);color:var(--brand-ink)}
.choice-list__body{flex:1;min-width:0}
.choice-list__title{display:block;font-family:var(--font-display);font-size:1.08rem;font-weight:800;letter-spacing:-.025em;color:var(--ink);line-height:1.25}
.choice-list__text{display:block;margin-top:3px;font-size:.96rem;line-height:1.5;color:var(--ink-soft)}
.choice-list__action{flex:none;display:inline-flex;align-items:center;gap:8px;color:var(--brand-text);font-weight:700;font-size:.96rem;white-space:nowrap}
.choice-list__action i{transition:transform .15s ease}
.choice-list__item:hover .choice-list__action i{transform:translateX(3px)}
@media (max-width:600px){.choice-list__item{padding:.9rem .25rem .9rem .75rem;gap:.8rem}.choice-list__action-label{display:none}.choice-list__icon{width:42px;height:42px}}

/* ------------------------------------------------------------
   H7 — Vertrauens-Block (components/trust-proof.php)
   ------------------------------------------------------------ */
.trust-proof-section{background:#fff}
.trust-proof-section.embedded{background:transparent}
.trust-proof-head{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:1.25rem 2rem;align-items:end;padding:2rem 2.1rem;background:var(--forest);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:#fff}
.trust-proof-head .eyebrow{border-bottom-color:rgba(174,201,12,.6);color:#c8e417}
.trust-proof-head h2{font-size:clamp(1.55rem,2.8vw,2.3rem);margin:.4rem 0 .7rem;color:#fff}
.trust-proof-head p{color:rgba(255,255,255,.82);line-height:1.7;margin:0;max-width:62ch}
.trust-proof-actions{display:flex;flex-direction:column;gap:.65rem;min-width:240px}
.trust-proof-actions .btn{justify-content:center;min-height:48px;display:inline-flex;align-items:center;gap:.5rem}
.trust-proof-head .btn-soft{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);color:#fff}
.trust-proof-head .btn-soft:hover,.trust-proof-head .btn-soft:focus-visible{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.6);color:#fff}
.trust-proof-head .btn-brand:hover,.trust-proof-head .btn-brand:focus-visible{background:#fff;border-color:#fff;color:var(--brand-ink)}
.trust-proof-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:1rem}
.trust-proof-facts article{display:grid;align-content:start;gap:.4rem;padding:1.1rem 1.15rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.trust-proof-facts i{font-size:1.15rem;color:var(--brand-dark);margin-bottom:.2rem}
.trust-proof-facts strong{font-family:var(--font-display);font-size:1.05rem;font-weight:800;letter-spacing:-.025em;color:var(--ink);line-height:1.25}
.trust-proof-facts span{color:var(--ink-soft);line-height:1.55;font-size:.95rem}
.trust-proof-process{margin-top:1.75rem}
.trust-proof-process h3{font-size:1.2rem;margin:0 0 .75rem;color:var(--ink)}
.trust-proof-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1.5rem;border-top:1px solid var(--border-soft)}
.trust-proof-steps li{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:.85rem;padding:1rem 0;border-bottom:1px solid var(--border-soft)}
.trust-proof-steps li > span{width:2.25rem;height:2.25rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:var(--brand-ink);font-family:var(--font-display);font-weight:800}
.trust-proof-steps strong{display:block;color:var(--ink);margin-bottom:.15rem}
.trust-proof-steps p{color:var(--ink-soft);line-height:1.55;margin:0}
@media (max-width:1199.98px){.trust-proof-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:991.98px){
  .trust-proof-head{grid-template-columns:1fr;padding:1.5rem 1.35rem}
  .trust-proof-actions{min-width:0}
  .trust-proof-steps{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:575.98px){.trust-proof-facts{grid-template-columns:minmax(0,1fr)}}

/* ------------------------------------------------------------
   H3 — Hilfsmittelbestellung: Login-Karte
   ------------------------------------------------------------ */
.aid-login-card{border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:none}

/* ------------------------------------------------------------
   H4 — Werkstatt-Status (/werkstatt/status/…)
   ------------------------------------------------------------ */
.workshop-status-hero .lead{max-width:62ch}
.workshop-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:0 0 2rem}
.workshop-status-summary article{padding:1rem 1.15rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.workshop-status-summary span{display:block;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-text);margin-bottom:.25rem}
.workshop-status-summary strong{display:block;font-family:var(--font-display);font-size:1.3rem;font-weight:800;letter-spacing:-.03em;line-height:1.2;color:var(--ink);word-break:break-word}
.workshop-status-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;align-items:start}
.workshop-status-panel,.workshop-status-help{padding:1.5rem;background:#fff;border:1px solid var(--border-soft);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.workshop-status-panel h2,.workshop-status-help h2{font-size:1.45rem;margin:.2rem 0 1rem;color:var(--ink)}
.workshop-status-help{position:sticky;top:calc(var(--site-header-offset,110px) + 1rem)}
.workshop-status-help p{color:var(--ink-soft);line-height:1.65}
.workshop-status-help .btn{display:inline-flex;align-items:center;gap:.5rem;min-height:48px}
.workshop-status-timeline{display:grid;gap:0;border-top:1px solid var(--border-soft)}
.workshop-status-timeline article{position:relative;padding:1rem 0 1rem 1.75rem;border-bottom:1px solid var(--border-soft)}
.workshop-status-timeline article::before{content:"";position:absolute;left:0;top:1.35rem;width:.75rem;height:.75rem;border-radius:999px;background:var(--brand)}
.workshop-status-timeline article:first-child::before{background:var(--brand-dark);box-shadow:0 0 0 4px rgba(122,149,0,.18)}
.workshop-status-timeline strong{display:block;color:var(--ink);margin-bottom:.2rem}
.workshop-status-timeline p{margin:0;color:var(--ink-soft);line-height:1.6}
.workshop-status-timeline span{display:block;margin-top:.4rem;color:var(--muted);font-size:.9rem;font-weight:700}
.workshop-status-empty{padding:1rem 0;margin:0;color:var(--ink-soft)}
@media(max-width:991.98px){
  .workshop-status-summary,.workshop-status-layout{grid-template-columns:minmax(0,1fr)}
  .workshop-status-help{position:static}
}

/* ------------------------------------------------------------
   N1 — 404-Seite
   ------------------------------------------------------------ */
.subhero .lead a{color:#fff;font-weight:700}
.subhero .lead a:hover{color:#c8e417}
.error-404__card{display:flex;flex-direction:column;gap:.4rem;min-height:100%;color:inherit;text-decoration:none;transition:border-color .18s ease}
.error-404__card > i{font-size:1.3rem;color:var(--brand-dark);margin-bottom:.35rem}
.error-404__card strong{font-family:var(--font-display);font-size:1.2rem;font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.error-404__card span{color:var(--ink-soft);line-height:1.55}
.error-404__card em{margin-top:auto;padding-top:.5rem;font-style:normal;font-weight:700;color:var(--brand-text);display:inline-flex;align-items:center;gap:.45rem}
.error-404__card:hover,.error-404__card:focus-visible{border-left-color:var(--brand-dark);color:inherit}
.error-404__card:hover strong{color:var(--brand-text)}
.error-404__debug{max-width:780px}

/* Filialseite: Kopf mit Text links und Startbild der Filiale rechts (ganzes Bild, Hoch- und Querformat) */
.subhero--photo{padding:3.25rem 0 3.25rem!important}
.subhero-photo__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2.75rem;align-items:center}
.subhero-photo__text h1,.subhero-photo__text .lead{max-width:40rem}
.subhero-photo__figure{margin:0;position:relative;border-radius:22px;overflow:hidden;height:440px;box-shadow:0 24px 60px rgba(0,0,0,.35);outline:1px solid rgba(255,255,255,.12)}
.subhero-photo__figure img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block}
@media (max-width:991.98px){.subhero-photo__grid{grid-template-columns:1fr;gap:1.75rem}.subhero-photo__figure{order:-1;height:300px}}
@media (max-width:575.98px){.subhero-photo__figure{height:240px;border-radius:16px}}
/* Galerie-Pfeile: liegen im Slider (overflow:hidden) – darum innen statt halb außerhalb, größer und gut sichtbar */
.loc-gallery-arrow{width:52px;height:52px;font-size:1.15rem;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(20,32,10,.28)}
.loc-gallery-arrow.is-prev{left:14px}
.loc-gallery-arrow.is-next{right:14px}
.loc-gallery-arrow:focus-visible{outline:3px solid #aec90c;outline-offset:3px}
.loc-gallery-slider{overflow:hidden;overflow:clip}

/* ------------------------------------------------------------
   Website-Check 19.10.: Mobil-Feinschliff (kein Seitwärts-Scrollen, Tippziele ≥ 44 px)
   ------------------------------------------------------------ */
/* g-5-Reihe (Leistungs-/Rechtsseiten): 3rem-Rinne ragte 12 px über den Container hinaus (Seitwärts-Scrollen).
   Unter lg stehen die Spalten untereinander – dort ist die Rinne unsichtbar; darüber schneidet clip den Überstand ab (sticky bleibt intakt). */
@media (max-width:991.98px){.row.g-5{--bs-gutter-x:1.5rem}}
.service-detail-section{overflow-x:clip}
/* Menü-Knopf, Slider-Pfeile, Linklisten und kleine Buttons: Tippfläche mindestens 44 px */
.nav-toggle{min-height:44px;min-width:44px}
.hm-editorial-linklist li a{min-height:44px}
/* Buttons auf Touch-Breiten: etwas mehr Innenabstand oben/unten, damit sie ≥ 44 px hoch sind */
@media (max-width:991.98px){.btn{padding-top:.65rem;padding-bottom:.65rem}.btn-sm{padding-top:.65rem;padding-bottom:.65rem}}
/* Lange deutsche Wörter in Überschriften (z. B. „Hilfsmittelbedarfsermittlung“) sprengten auf Telefonen die Breite */
@media (max-width:575.98px){h1,h2,h3,.h1,.h2,.h3{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:12 5 5}}
/* Tabellen aus Inhaltstexten (z. B. Cookie-Tabelle Datenschutz) seitlich scrollbar statt Seite zu verbreitern */
@media (max-width:767.98px){.content-card table:not(.table-responsive table){display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}

/* Unsichtbares Spam-Fangfeld der Formulare (Honeypot) – als Klasse statt Inline-Style (CSP ohne 'unsafe-inline') */
.sf-hp { position: absolute !important; left: -9999px !important; top: -9999px !important; width: 1px; height: 1px; overflow: hidden; opacity: 0; }

/* Tippziele ≥ 44 px (Website-Endprüfung 23.10.2026, Zielgruppe 60+): Logo, Listen-Links, Kontaktwerte, Karten-Links,
   Slider-Punkte, Checkboxen in Formularen. Nur Mindestmaße – Optik bleibt gleich. */
.brand-link{min-height:44px}
.media-placeholder__list li > a,
.info-list li > a,
.kontakt-method__value,
.std-loc-link,
.service-group-title-link{display:inline-flex;align-items:center;min-height:44px}
.footer-links a{min-width:44px}
.hm-location-slider-section .owl-dot,
.aid-testimonial-carousel .owl-dot{min-width:44px;min-height:44px;display:inline-flex!important;align-items:center;justify-content:center;background:none;border:0}
.shop-checkbox input[type=checkbox]{width:1.5rem;height:1.5rem;flex:0 0 auto;margin-top:.1rem;accent-color:var(--brand-text)}
.jobs-list h3 > a,.job-card h3 > a,.jobs-card h3 > a{display:inline-flex;align-items:center;min-height:44px}
/* Sehr schmale Handys (320 px): lange Wörter wie „Orthopädietechnik“ in Überschriften umbrechen statt seitlich zu scrollen */
h1,h2{overflow-wrap:break-word;hyphens:auto}
.lead{overflow-wrap:break-word}
/* Ersatz für frühere style-Attribute (CSP ohne 'unsafe-inline') */
.sf-icon-sm{font-size:.75rem}
.aid-progress-start{width:0}

/* Sichtbarer Tastatur-Fokus überall (WCAG 2.4.7/1.4.11): Bootstraps .btn:focus-visible{outline:0} und einzelne
   outline:none-Regeln überschrieben den Fokusring bisher. Dunkles Grün (≥ 3:1 auf Hell), auf dunklen Flächen helles Grün. */
a:focus-visible,button:focus-visible,.btn:focus-visible,[role=button]:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid var(--brand-text)!important;outline-offset:2px}
.site-footer :focus-visible,.hm-hero--bg :focus-visible,.hm-cta-strip :focus-visible,.recipe-card.dark :focus-visible,.topbar :focus-visible{outline-color:#d4f55c!important}
