
:root{--green:#39a83c;--green2:#55b94f;--ink:#101518;--anth:#0b1216;--anth2:#252e33;--soft:#f4f5f4;--line:#dfe3df;--white:#fff;--muted:#5e676b;--radius:16px;--shadow:0 12px 32px rgba(9,18,13,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.narrow{max-width:930px}.site-header{position:sticky;top:0;z-index:50;background:rgba(8,15,19,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.nav{min-height:82px;display:flex;align-items:center;gap:26px}.brand-link{display:flex;align-items:center}.logo{display:block;width:175px;height:auto;object-fit:contain}.nav-links{display:flex;align-items:center;gap:27px;margin-left:auto}.nav-links>a,.nav-drop>button{color:#fff;text-decoration:none;font-size:.91rem;font-weight:750;background:none;border:0;cursor:pointer}.nav-links>a:hover,.nav-drop>button:hover{color:var(--green2)}.cta{background:var(--green);color:#fff!important;padding:12px 18px;border-radius:8px}.nav-drop{position:relative}.drop-menu{position:absolute;top:34px;left:-18px;display:none;min-width:315px;background:#182126;border:1px solid rgba(255,255,255,.12);border-radius:11px;padding:10px;box-shadow:var(--shadow)}.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{display:block}.drop-menu span,.drop-menu small{display:block;color:#fff;padding:9px 11px;border-radius:7px;font-size:.9rem}.drop-menu span:hover{background:#223027}.drop-menu small{color:#9fb0a5;font-size:.78rem;border-top:1px solid #2b373c;margin-top:5px}.menu-btn{display:none;margin-left:auto;color:#fff;background:none;border:1px solid #4d595f;border-radius:8px;width:43px;height:39px;font-size:1.25rem;line-height:1}
.hero{color:#fff;min-height:565px;padding:96px 0 78px;background:radial-gradient(circle at 80% 42%,rgba(112,119,123,.20),transparent 34%),linear-gradient(115deg,#071014 0%,#11191e 58%,#30383d 100%)}.hero-grid{display:grid;grid-template-columns:1fr .76fr;gap:55px;align-items:center}.eyebrow{color:var(--green2);font-size:.78rem;letter-spacing:.12em;font-weight:850;text-transform:uppercase}.hero h1{font-size:clamp(2.8rem,5.5vw,4.8rem);line-height:.98;margin:15px 0 27px;letter-spacing:-.04em}.hero h1 span{color:var(--green)}.hero p{font-size:1.07rem;color:#e6e9e8;max-width:620px}.hero-actions{display:flex;gap:14px;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:13px 19px;text-decoration:none;font-weight:800;border:1px solid transparent;cursor:pointer;font:inherit}.btn.primary{background:var(--green);color:#fff}.btn.secondary{border-color:#7d898f;color:#fff;background:transparent}.hero-brand img{width:100%;max-width:500px;display:block;margin:auto}
.section{padding:70px 0}.section.light{background:#fff}.section-heading.centered{text-align:center;margin-bottom:28px}.section h2{font-size:clamp(1.9rem,3.7vw,2.75rem);line-height:1.08;margin:6px 0 12px;letter-spacing:-.03em}.process{background:#f6f7f6}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.step{background:#fff;border:1px solid #e1e5e2;border-radius:14px;padding:22px;box-shadow:0 7px 20px rgba(0,0,0,.045)}.step-num{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-weight:850}.step h3{margin:13px 0 7px;font-size:1.02rem}.step p{color:#596064;font-size:.92rem;margin:0}.compact-info{padding-top:28px;padding-bottom:58px}.info-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr 1fr;gap:15px}.info-card{background:#fff;border:1px solid #e1e4e2;border-radius:14px;padding:21px;box-shadow:0 8px 23px rgba(0,0,0,.05)}.info-card h3{font-size:1rem;margin:0 0 12px}.info-card a{text-decoration:none}.map-card{position:relative;overflow:hidden;min-height:245px}.map-card:before{content:"";position:absolute;inset:0;background:url('assets/ulm-radius.svg') center/cover no-repeat;opacity:.47}.map-card>*{position:relative}.check{padding:0;list-style:none}.check li{margin:8px 0}.check li:before{content:"✓";color:var(--green);font-weight:900;margin-right:9px}.about-section{border-top:1px solid #ecefec}.about-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}.about-grid p{color:#4f585c}.about-card{background:linear-gradient(145deg,#11191d,#293338);color:#fff;border-radius:var(--radius);padding:31px;box-shadow:var(--shadow)}.about-card p{color:#e3e7e5}.faq{background:#f8f9f8}.faq details{border-bottom:1px solid #dfe3df;padding:17px 0}.faq summary{cursor:pointer;font-weight:800}.faq p{color:var(--muted);max-width:900px}.contact{background:linear-gradient(145deg,#11191d,#30383d);color:#fff}.contact-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:36px;align-items:start}.contact-list a{color:#fff;text-decoration:none}.contact-list div{margin:11px 0}.contact-form{background:#fff;color:var(--ink);border-radius:15px;padding:27px}.contact-form h3{margin-top:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field input,.field textarea{font:inherit;border:1px solid #cfd5d1;border-radius:8px;padding:11px 12px;background:#fff;width:100%}.field textarea{min-height:124px;resize:vertical}.form-note{font-size:.79rem;color:#68706c}.status{margin-top:12px;padding:11px;border-radius:8px;display:none}.status.show{display:block;background:#edf8ed;color:#1d5c23}.footer{background:#071014;color:#fff;padding:42px 0 20px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:32px}.footer a{color:#d6dada;text-decoration:none;display:block;margin:5px 0}.footer small{color:#aab2ae}.footer-logo{width:190px;height:auto}.footer-bottom{text-align:center;border-top:1px solid #263037;margin-top:30px;padding-top:17px;color:#aab2ae;font-size:.86rem}
.contact-page{min-height:100vh;background:linear-gradient(160deg,#0d1418,#293238);color:#fff;padding:52px 0}.contact-card{max-width:680px;margin:auto;background:#fff;color:var(--ink);border-radius:22px;padding:30px;box-shadow:var(--shadow)}.contact-card .logo-dark{width:280px;display:block;margin:0 auto 24px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-grid a{padding:14px;border-radius:10px;text-decoration:none;font-weight:800;text-align:center;background:#f1f4f1}.quick-grid a.green{background:var(--green);color:#fff}.legal{background:#fff;min-height:100vh;padding:58px 0}.legal article{max-width:850px;margin:auto}.legal h1{font-size:clamp(2.2rem,5vw,3rem)}.legal h2{margin-top:32px;font-size:1.35rem}.legal p,.legal li{color:#333c40}.legal a{color:#226e2b}
@media(max-width:980px){.nav-links{display:none;position:absolute;top:82px;left:0;right:0;background:#0d1519;padding:18px max(20px,4vw) 22px;flex-direction:column;align-items:stretch;gap:5px;border-bottom:1px solid #263137;max-height:calc(100vh - 82px);overflow:auto}.nav-links.open{display:flex}.nav-links>a,.nav-drop>button{padding:11px 4px;text-align:left}.nav-links .cta{text-align:center;margin-top:8px}.drop-menu{position:static;display:block;background:#121c20;border:0;box-shadow:none;padding:7px;margin:0 0 6px}.nav-drop:hover .drop-menu{display:block}.menu-btn{display:block}.hero-grid{grid-template-columns:1fr}.hero-brand{display:none}.steps{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:620px){html{scroll-padding-top:68px}.wrap{width:min(100% - 28px,1180px)}.nav{min-height:68px}.logo{width:138px}.nav-links{top:68px;max-height:calc(100vh - 68px)}.hero{min-height:auto;padding:57px 0 54px;background:radial-gradient(circle at 80% 18%,rgba(104,112,116,.13),transparent 35%),linear-gradient(145deg,#071014 0%,#121b20 70%,#252d32 100%)}.hero h1{font-size:clamp(2.15rem,11.5vw,3rem);line-height:1.02;margin:12px 0 20px}.hero p{font-size:.98rem;line-height:1.6;margin:0}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:27px}.hero-actions .btn{width:100%}.section{padding:50px 0}.section-heading.centered{text-align:left;margin-bottom:20px}.section h2{font-size:1.85rem}.steps{grid-template-columns:1fr;gap:10px}.step{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:17px}.step-num{margin-top:2px}.step h3{margin:0 0 5px}.step p{font-size:.9rem}.compact-info{padding-top:20px;padding-bottom:45px}.info-grid{grid-template-columns:1fr;gap:10px}.info-card{padding:18px}.map-card{min-height:225px}.about-grid{gap:22px}.about-card{padding:23px}.faq details{padding:15px 0}.faq summary{font-size:.96rem}.contact{padding-top:52px}.contact-grid{gap:24px}.contact-form{padding:20px}.contact-form .btn{width:100%}.footer{padding-top:34px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-logo{width:170px}.footer-bottom{text-align:left}.quick-grid{grid-template-columns:1fr}.contact-card{margin:0 14px;padding:22px}.contact-card .logo-dark{width:min(250px,90%)}}
/* V3 responsive corrections */
.compact-info{background:#171a1b;color:#fff}.info-grid{grid-template-columns:repeat(4,1fr)}.info-card{background:#202324;color:#fff;border-color:#424748;box-shadow:none}.info-card p,.info-card a{color:#e9ecea}.map-card{display:flex;flex-direction:column;min-height:245px;background:#202324}.map-card:before{opacity:.20}.radius-mark{position:relative;margin:auto;display:grid;place-items:center;width:150px;height:150px;border:2px dashed var(--green);border-radius:50%;background:rgba(57,168,60,.05)}.radius-mark:before{content:"";position:absolute;width:58px;height:58px;border-radius:50%;background:var(--green)}.radius-mark strong,.radius-mark span{position:relative;z-index:2}.radius-mark strong{color:#fff;font-size:1.05rem}.radius-mark span{position:absolute;top:165px;color:var(--green2);font-weight:850;white-space:nowrap}.dark-page{min-height:70vh;background:linear-gradient(145deg,#071014,#171f23);color:#fff}.dark-page h1,.contact-page-section h1{font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05}.dark-page p{color:#e0e5e2;max-width:760px}.dark-page .about-card{margin-top:35px;max-width:760px}
@media(max-width:620px){body{overflow-x:hidden}.wrap{width:calc(100% - 40px)}.nav{min-height:76px}.logo{width:150px}.nav-links{top:76px;max-height:calc(100vh - 76px);padding:20px}.hero{padding:58px 0 52px}.hero-copy{min-width:0}.hero h1{font-size:clamp(2rem,9.5vw,2.7rem);overflow-wrap:normal;word-break:normal;letter-spacing:-.045em}.hero h1 br{display:block}.hero p{font-size:1rem;max-width:100%}.hero-actions{margin-top:25px}.section{padding:44px 0}.process .section-heading h2{font-size:1.75rem}.step{grid-template-columns:32px minmax(0,1fr);padding:16px}.step p{line-height:1.5}.compact-info{padding:28px 0 48px}.info-grid{grid-template-columns:1fr}.map-card{min-height:290px}.radius-mark{width:145px;height:145px}.footer-grid{grid-template-columns:1fr}.contact-page-section{padding-top:48px}.contact-grid{grid-template-columns:1fr}.contact-form{padding:19px}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}}

/* V4 structural refinements */
.brand-link,.footer-brand-link{border:1px solid transparent;border-radius:10px;padding:6px 8px;transition:background .18s ease,border-color .18s ease,transform .18s ease;text-decoration:none}.brand-link:hover,.brand-link:focus-visible,.footer-brand-link:hover,.footer-brand-link:focus-visible{background:rgba(255,255,255,.055);border-color:rgba(85,185,79,.5);transform:translateY(-1px);outline:none}.footer-brand-link{display:inline-flex;align-items:center}
.drop-menu a{display:block;color:#fff;padding:9px 11px;border-radius:7px;font-size:.9rem;text-decoration:none}.drop-menu a:hover,.drop-menu a:focus-visible{background:#223027;color:#fff;outline:none}.legal-menu{min-width:190px}
.hero-single{display:block}.hero-single .hero-copy{max-width:760px}.hero-single .hero-copy p{max-width:660px}
#anfrage,.contact-form{scroll-margin-top:118px}.contact-page-section{padding-top:76px}.contact-page-section .contact-form{align-self:start}
.footer-grid{grid-template-columns:1.05fr .9fr 1.15fr 1fr;align-items:start}.footer-brand-block p{margin:10px 0 0}.footer-map,.footer-payments{min-width:0}.footer-map>strong,.footer-payments>strong,.footer-grid>div>strong{display:block;margin-bottom:10px}.footer-radius{width:112px;height:112px;border:2px dashed var(--green);border-radius:50%;display:grid;place-items:center;position:relative;margin:8px 0 10px;background:rgba(57,168,60,.035)}.footer-radius:before{content:"";position:absolute;width:48px;height:48px;border-radius:50%;background:var(--green)}.footer-radius span{position:relative;z-index:2;color:#fff;font-weight:850}.footer-map b{color:var(--green2);font-size:.92rem}.footer-payments .check{margin:0}.footer-payments .check li{color:#d6dada;font-size:.9rem;margin:6px 0}.footer-grid>div:last-child a{margin:7px 0}.footer-logo{display:block}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr}.legal-menu{min-width:0}}
@media(max-width:620px){.brand-link{padding:4px 5px}.footer-grid{grid-template-columns:1fr;gap:26px}.footer-radius{width:104px;height:104px}.contact-page-section{padding-top:50px}#anfrage,.contact-form{scroll-margin-top:96px}}


/* V6 requested navigation/footer fixes */
.nav-links>a,.nav-drop>button{
  border:1px solid transparent;
  border-radius:8px;
  padding:8px 10px;
  transition:color .16s ease,border-color .16s ease,background .16s ease;
}
.nav-links>a:hover,.nav-links>a:focus-visible,.nav-drop>button:hover,.nav-drop>button:focus-visible{
  color:var(--green2);
  border-color:rgba(85,185,79,.62);
  background:rgba(85,185,79,.035);
  outline:none;
}
.nav-links .cta{border-color:transparent}
.nav-links .cta:hover,.nav-links .cta:focus-visible{color:#fff!important;border-color:#70cf68;background:#319734}
.nav-drop{position:relative;display:flex;align-items:center}
.drop-menu{top:calc(100% - 1px);left:0;margin-top:0}
.nav-drop::after{content:"";position:absolute;left:0;right:0;top:100%;height:8px}
.footer .footer-grid{width:min(1040px,calc(100% - 40px));grid-template-columns:1fr .72fr 1.15fr .9fr;gap:42px;justify-items:start;align-items:start}
.footer-brand-block,.footer-map,.footer-payments,.footer-contact{min-width:0}
.footer-brand-link{width:max-content;max-width:100%;padding:5px 6px}
.footer-logo{width:168px;max-width:100%}
.footer-radius{width:86px;height:86px;margin:7px auto 8px}
.footer-radius:before{width:39px;height:39px}
.footer-map{text-align:center;min-width:138px}
.footer-map>strong{margin-bottom:5px}.footer-map b{display:block;font-size:.84rem}
.footer-payments .check li{font-size:.88rem}
.footer-contact a{white-space:normal;overflow-wrap:anywhere}
#anfrage{scroll-margin-top:125px}.contact-form[data-anchor="anfrage"]{scroll-margin-top:125px}
@media(max-width:980px){
  .nav-drop{display:block}
  .nav-links>a,.nav-drop>button{width:100%;padding:10px 9px}
  .drop-menu{top:auto}
  .nav-drop::after{display:none}
  .footer .footer-grid{width:min(100% - 40px,1040px);grid-template-columns:1fr 1fr;gap:28px 34px}
  .footer-map{text-align:left}.footer-radius{margin:7px 0 8px}
}
@media(max-width:620px){
  .footer .footer-grid{grid-template-columns:1fr;width:calc(100% - 40px)}
  .footer-map{text-align:left}.footer-radius{margin-left:0}
}


/* FINAL V7: stable rendering and clear contact actions */
.site-header{
  background:#081013;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.dark-page{
  background:#151e23;
  background-image:none;
}
.dark-page .about-card{
  background:#222c31;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.footer-contact a,
.contact-list a[data-email],
.contact-list a[data-whatsapp],
.contact-list a[data-instagram]{
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:100%;
  min-height:34px;
  padding:5px 9px;
  margin:2px 0 2px -9px;
  border:1px solid transparent;
  border-radius:8px;
  color:#fff;
  text-decoration:none;
  transition:color .16s ease,border-color .16s ease,background .16s ease;
}
.footer-contact a{color:#d6dada}
.footer-contact a:hover,.footer-contact a:focus-visible,
.contact-list a[data-email]:hover,.contact-list a[data-email]:focus-visible,
.contact-list a[data-whatsapp]:hover,.contact-list a[data-whatsapp]:focus-visible,
.contact-list a[data-instagram]:hover,.contact-list a[data-instagram]:focus-visible{
  color:var(--green2);
  border-color:rgba(85,185,79,.62);
  background:rgba(85,185,79,.035);
  outline:none;
}
@media(max-width:620px){
  .footer-contact a,
  .contact-list a[data-email],
  .contact-list a[data-whatsapp],
  .contact-list a[data-instagram]{margin-left:-7px}
}


/* Anfrageformular: Bildupload & Status */
.upload-field input[type="file"]{
  width:100%;
  margin-top:.45rem;
  padding:.75rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  background:rgba(255,255,255,.04);
  color:inherit;
}
.upload-field small{display:block;margin-top:.45rem;opacity:.78;line-height:1.4}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.status.success{border-color:rgba(55,190,105,.45);background:rgba(55,190,105,.10)}
.status.error{border-color:rgba(220,70,70,.48);background:rgba(220,70,70,.10)}
#submitRequest:disabled{opacity:.65;cursor:wait}


/* FINAL V9: Bildauswahl sichtbar und einzeln entfernbar */
.image-preview{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:10px;
  margin-top:12px;
}
.preview-item{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:9px;
  align-items:center;
  padding:8px;
  border:1px solid #d7dcd9;
  border-radius:10px;
  background:#f7f8f7;
}
.preview-item img{
  width:58px;height:58px;object-fit:cover;border-radius:7px;background:#e6e9e7;
}
.preview-meta{min-width:0;display:flex;flex-direction:column;gap:2px}
.preview-meta span{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.preview-meta small{font-size:.7rem;color:#68706c}
.preview-remove{
  grid-column:1/-1;
  border:1px solid #c8cfcb;
  border-radius:7px;
  background:#fff;
  padding:6px 8px;
  cursor:pointer;
  font:inherit;
  font-size:.76rem;
}
.preview-remove:hover,.preview-remove:focus-visible{
  color:#248c2c;border-color:#55b94f;outline:none;
}

/* Footer-Kontakt: E-Mail, WhatsApp und Instagram wieder exakt untereinander */
.footer-contact{display:flex;flex-direction:column;align-items:flex-start}
.footer-contact>strong{display:block;margin-bottom:8px}
.footer-contact a{
  display:flex !important;
  width:max-content;
  max-width:100%;
  margin:2px 0 !important;
}

/* Mobile Kontaktdatei */
.contact-save{touch-action:manipulation}


/* FINAL V10: Kontaktaktionen – Symbol + Text gemeinsam als klarer Hover-Bereich */
.contact-list{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.contact-list>div{
  display:flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:42px;
  padding:5px 10px;
  margin:0 !important;
  border:1px solid transparent;
  border-radius:9px;
  color:#fff;
  transition:color .16s ease,border-color .16s ease,background .16s ease;
}
.contact-list>div a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0;
  margin-left:7px;
  border:0 !important;
  background:transparent !important;
  color:inherit;
  text-decoration:none;
}
.contact-list>div:has(a:hover),
.contact-list>div:has(a:focus-visible){
  color:var(--green2);
  border-color:rgba(85,185,79,.72);
  background:rgba(85,185,79,.04);
}
.contact-list>div a:hover,
.contact-list>div a:focus-visible{
  color:inherit !important;
  outline:none;
}

/* Telefonnummer erhält exakt denselben Hover-Zustand */
.contact-list a[data-phone]{color:inherit}

/* Kontakt speichern: gleicher grüner Hover wie Header/Kontaktlinks */
.contact-save{
  border:1px solid rgba(225,235,230,.72) !important;
  color:#fff !important;
  background:transparent !important;
  transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.contact-save:hover,
.contact-save:focus-visible{
  color:var(--green2) !important;
  border-color:rgba(85,185,79,.78) !important;
  background:rgba(85,185,79,.045) !important;
  box-shadow:0 0 0 1px rgba(85,185,79,.08);
  outline:none;
}

/* FINAL V10: Footer-Spalten typografisch und vertikal angleichen */
.footer .footer-grid{
  align-items:start;
}
.footer-payments,
.footer-contact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.footer-payments>strong,
.footer-contact>strong{
  font-size:.94rem;
  line-height:1.35;
  margin:0 0 10px;
}
.footer-payments .check{
  margin:0;
  padding:0;
}
.footer-payments .check li,
.footer-contact a{
  box-sizing:border-box;
  min-height:34px;
  font-size:.88rem !important;
  line-height:1.35;
}
.footer-payments .check li{
  display:flex;
  align-items:center;
  margin:2px 0 !important;
}
.footer-payments .check li:before{
  flex:0 0 auto;
  margin-right:9px;
}
.footer-contact a{
  display:flex !important;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:2px 0 !important;
  padding:5px 9px !important;
  border:1px solid transparent;
  border-radius:8px;
}
.footer-contact a:hover,
.footer-contact a:focus-visible{
  color:var(--green2) !important;
  border-color:rgba(85,185,79,.68);
  background:rgba(85,185,79,.035);
  outline:none;
}

@media(max-width:620px){
  .contact-list>div{
    width:100%;
  }
}


/* FINAL V11: strukturierte Anfrage */
.contact-form select{
  width:100%;
  min-height:48px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:#2a2a2a;
  color:#fff;
  font:inherit;
}
.contact-form select:focus{
  outline:none;
  border-color:#55b94f;
  box-shadow:0 0 0 2px rgba(85,185,79,.10);
}
.contact-form .field small{
  display:block;
  margin-top:7px;
  line-height:1.4;
  opacity:.76;
}


/* FINAL V12: Header an den bereits finalen Footer ausrichten – Footer unverändert */
.site-header .nav{
  width:min(1040px,calc(100% - 40px));
  min-height:82px;
  gap:18px;
}
.site-header .logo{
  width:168px;
}
.site-header .nav-links{
  margin-left:auto;
  gap:14px;
}
.site-header .nav-links>a,
.site-header .nav-drop>button{
  padding:8px 10px;
}

/* Ein einziger, dauerhaft sichtbarer Kontakt-/Anfrage-Button ganz rechts */
.header-contact-cta{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  margin-left:6px;
  padding:8px 15px;
  border:1px solid rgba(85,185,79,.72);
  border-radius:8px;
  background:rgba(85,185,79,.035);
  color:#fff;
  text-decoration:none;
  font-size:.91rem;
  font-weight:800;
  white-space:nowrap;
  transition:color .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.header-contact-cta:hover,
.header-contact-cta:focus-visible{
  color:#d6dada; /* bewusst hellgrau – die normalen Menüpunkte werden weiterhin grün */
  border-color:#70cf68;
  background:rgba(85,185,79,.10);
  box-shadow:0 0 0 1px rgba(85,185,79,.08);
  outline:none;
}

/* Normale Headerpunkte: bisheriger grüner Hover bleibt bestehen */
.site-header .nav-links>a:hover,
.site-header .nav-links>a:focus-visible,
.site-header .nav-drop>button:hover,
.site-header .nav-drop>button:focus-visible{
  color:var(--green2);
}

/* Mobile: Kontakt bleibt auch außerhalb des Menüs sichtbar */
@media(max-width:980px){
  .site-header .nav{
    width:calc(100% - 40px);
    gap:10px;
  }
  .site-header .nav-links{
    margin-left:0;
  }
  .header-contact-cta{
    margin-left:auto;
    min-height:39px;
    padding:7px 12px;
  }
  .site-header .menu-btn{
    margin-left:0;
    flex:0 0 auto;
  }
}
@media(max-width:620px){
  .site-header .nav{
    width:calc(100% - 28px);
    min-height:76px;
    gap:8px;
  }
  .site-header .logo{
    width:142px;
  }
  .header-contact-cta{
    font-size:.82rem;
    padding:7px 10px;
  }
}


/* FINAL V13
   Gemeinsamer DARE-Seitenhintergrund: gleicher Glow/Fade wie auf der Startseite.
   Bewusst ohne background-attachment:fixed, Filter oder animierte Hintergründe,
   damit es insbesondere beim Scrollen auf Mobilgeräten nicht flimmert. */
:root{
  --green-dark:#1d5c23;
  --green-border:rgba(85,185,79,.62);
  --green-soft-bg:rgba(85,185,79,.035);
  --page-glow:
    radial-gradient(circle at 80% 42%,rgba(112,119,123,.20),transparent 34%),
    linear-gradient(115deg,#071014 0%,#11191e 58%,#30383d 100%);
}

/* Gleicher Hintergrund auf den eigenständigen Seiten.
   Startseiten-Sonderbereiche und eigenständige Karten/Boxen bleiben unangetastet. */
.contact,
.dark-page,
.legal{
  background:var(--page-glow);
  background-repeat:no-repeat;
  background-size:100% 100%;
  color:#fff;
}

/* Über-uns-Karte ausdrücklich unverändert lassen. */
.dark-page .about-card{
  background:#222c31;
}

/* Rechtliche Seiten jetzt lesbar auf dem gleichen dunklen Seitenhintergrund. */
.legal article{color:#fff}
.legal h1,.legal h2,.legal h3,.legal strong{color:#fff}
.legal p,.legal li{color:#e3e7e5}
.legal a{color:var(--green2)}
.legal a:hover,.legal a:focus-visible{color:var(--green2)}

/* Kontaktformular bleibt als eigenständige helle Box bestehen. */
.contact-form{
  background:#fff;
  color:var(--ink);
}

/* Kontakt im Header: exakt gleiche Hover-Sprache wie die anderen Menüpunkte.
   Der feine grüne Rand bleibt als einzige dauerhafte Hervorhebung bestehen. */
.header-contact-cta{
  border-color:var(--green-border);
}
.header-contact-cta:hover,
.header-contact-cta:focus-visible{
  color:var(--green2);
  border-color:var(--green2);
  background:var(--green-soft-bg);
  box-shadow:none;
  outline:none;
}

/* Grün-Audit: interaktive Elemente verwenden nur die etablierte Haupt-/Hoverpalette. */
.site-header .nav-links>a:hover,
.site-header .nav-links>a:focus-visible,
.site-header .nav-drop>button:hover,
.site-header .nav-drop>button:focus-visible,
.footer-contact a:hover,
.footer-contact a:focus-visible,
.contact-list a[data-email]:hover,
.contact-list a[data-email]:focus-visible,
.contact-list a[data-whatsapp]:hover,
.contact-list a[data-whatsapp]:focus-visible,
.contact-list a[data-instagram]:hover,
.contact-list a[data-instagram]:focus-visible{
  color:var(--green2);
  border-color:var(--green-border);
}

.preview-remove:hover,.preview-remove:focus-visible{
  color:var(--green);
  border-color:var(--green2);
}
.contact-form select:focus{
  border-color:var(--green2);
}
.status.show{
  color:var(--green-dark);
}


/* FINAL V15 – Header exakt an Footer-Farbton angeglichen */
.site-header{
  background:#071014;
}


/* FINAL V16 – Mobile Feinschliff Rechtstexte */
@media(max-width:620px){
  .legal article{
    min-width:0;
  }
  .legal h1{
    font-size:clamp(1.85rem,8.6vw,2.45rem);
    line-height:1.04;
    letter-spacing:-.035em;
    margin:0 0 22px;
    overflow-wrap:anywhere;
    word-break:break-word;
    hyphens:auto;
    max-width:100%;
  }
}


/* V18 – Hero für sehr schmale Smartphones (z. B. iPhone 13 mini, 375 px) */
@media (max-width:430px){
  .hero h1{
    font-size:clamp(1.70rem,8.35vw,2.15rem);
    line-height:1.03;
    letter-spacing:-.05em;
    max-width:100%;
  }
}
