/* =====================================================================
   CMD-Klinik Schweiz · Immersive Theme (Sand & Terrakotta · Clinical Sci-Fi)
   Shared stylesheet for all subpages — matches the homepage look & feel.
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap');

:root{
  --bg-0:#15110c;
  --bg-1:#1d1710;
  --bg-2:#251d14;
  --sand-100:#f2e6d2;
  --sand-200:#e3cfa9;
  --sand-300:#cbae7e;
  --sand-muted:#9a8a72;
  --terra:#c25a30;
  --terra-bright:#df7440;
  --terra-soft:#a64c2a;
  --glass:rgba(40,31,21,0.42);
  --glass-line:rgba(226,201,156,0.16);
  --glass-line-strong:rgba(226,201,156,0.30);
  --shadow:0 30px 80px rgba(0,0,0,0.55);
  --ease:cubic-bezier(0.16,1,0.3,1);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg-0);
  color:var(--sand-100);
  font-family:'Inter',system-ui,sans-serif;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}
body.loading{overflow:hidden;}
::selection{background:var(--terra);color:#fff;}
img{max-width:100%;display:block;}
a{color:inherit;}

/* ---------- Fixed background layers ---------- */
#bg-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:1;pointer-events:none;}
#ambience{position:fixed;inset:0;z-index:2;pointer-events:none;
  background:
    radial-gradient(120% 80% at 75% 8%, rgba(223,116,64,0.10), transparent 55%),
    radial-gradient(90% 70% at 8% 92%, rgba(203,174,126,0.07), transparent 60%),
    linear-gradient(180deg, rgba(21,17,12,0) 55%, rgba(21,17,12,0.85) 100%);}
#grain{position:fixed;inset:-50%;z-index:3;pointer-events:none;opacity:0.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 6s steps(6) infinite;}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(2%,3%)}40%{transform:translate(3%,-1%)}
  60%{transform:translate(1%,-3%)}80%{transform:translate(-1%,-2%)}100%{transform:translate(0,0)}}

/* ---------- HUD frame ---------- */
.hud-corner{position:fixed;z-index:30;width:26px;height:26px;pointer-events:none;border:1px solid var(--glass-line-strong);}
.c-tl{top:18px;left:18px;border-right:none;border-bottom:none;}
.c-tr{top:18px;right:18px;border-left:none;border-bottom:none;}
.c-bl{bottom:18px;left:18px;border-right:none;border-top:none;}
.c-br{bottom:18px;right:18px;border-left:none;border-top:none;}
#progress{position:fixed;top:0;left:0;height:2px;width:0%;z-index:50;
  background:linear-gradient(90deg,var(--sand-300),var(--terra-bright));box-shadow:0 0 12px var(--terra-bright);}

/* ---------- Navigation ---------- */
nav{position:fixed;top:0;left:0;width:100%;z-index:40;display:flex;justify-content:space-between;
  align-items:center;padding:14px 56px;gap:24px;
  background:#15110c;border-bottom:1px solid var(--glass-line);box-shadow:0 8px 30px rgba(0,0,0,0.45);}
nav .brand{font-family:'Space Grotesk';font-weight:600;letter-spacing:0.28em;font-size:14px;
  display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--sand-100);white-space:nowrap;}
nav .brand .mark{width:18px;height:18px;border:1.5px solid var(--terra-bright);transform:rotate(45deg);
  display:inline-block;position:relative;}
nav .brand .mark::after{content:'';position:absolute;inset:4px;background:var(--terra-bright);box-shadow:0 0 12px var(--terra-bright);}
.brand-logo{height:50px;width:auto;display:block;}
@media(max-width:720px){ .brand-logo{height:42px;} }

.nav-main{display:flex;align-items:center;gap:30px;}
.nav-menu{display:flex;align-items:center;gap:4px;list-style:none;}
.nav-menu > li{position:relative;}
.nav-menu a{color:var(--sand-100);text-decoration:none;font-family:'Space Grotesk';font-size:0.82rem;
  letter-spacing:0.08em;text-transform:uppercase;padding:10px 14px;border-radius:8px;transition:.3s var(--ease);
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.nav-menu a:hover,.nav-menu a.is-active{color:var(--terra-bright);background:rgba(226,201,156,0.06);}
.nav-menu .has-sub > a::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:0.7;transition:.3s;}
.submenu{position:absolute;top:calc(100% + 8px);left:0;min-width:280px;list-style:none;padding:10px;
  background:rgba(26,20,13,0.94);backdrop-filter:blur(18px);border:1px solid var(--glass-line);
  border-radius:14px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.35s var(--ease);}
.nav-menu .has-sub:hover .submenu,.nav-menu .has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0);}
.submenu a{display:flex;flex-direction:column;gap:2px;text-transform:none;letter-spacing:0;padding:11px 14px;font-size:0.9rem;align-items:flex-start;}
.submenu a span{font-size:0.74rem;color:var(--sand-muted);font-family:'Inter';letter-spacing:0;}
.submenu a:hover span{color:var(--sand-200);}

.nav-actions{display:flex;align-items:center;gap:14px;}
.nav-phone{display:inline-flex;align-items:center;gap:8px;color:var(--sand-100);text-decoration:none;
  font-family:'Space Grotesk';font-size:0.85rem;letter-spacing:0.04em;transition:.3s;white-space:nowrap;}
.nav-phone svg{width:16px;height:16px;color:var(--terra-bright);}
.nav-phone:hover{color:var(--terra-bright);}
.nav-cta{font-family:'Space Grotesk';font-size:12px;letter-spacing:0.16em;text-transform:uppercase;
  border:1px solid var(--glass-line-strong);padding:11px 20px;border-radius:40px;color:var(--sand-100);
  text-decoration:none;backdrop-filter:blur(10px);transition:.4s var(--ease);white-space:nowrap;}
.nav-cta:hover{background:var(--terra);border-color:var(--terra);color:#fff;}
.nav-toggle{display:none;background:none;border:1px solid var(--glass-line-strong);border-radius:8px;
  width:42px;height:42px;color:var(--sand-100);cursor:pointer;align-items:center;justify-content:center;}
.nav-toggle svg{width:22px;height:22px;}

/* ---------- Buttons ---------- */
.btn-primary,.btn-ghost,.btn-gold{display:inline-flex;align-items:center;gap:10px;font-family:'Space Grotesk';
  font-size:0.9rem;letter-spacing:0.1em;text-transform:uppercase;padding:16px 32px;border-radius:46px;
  text-decoration:none;transition:.45s var(--ease);cursor:pointer;border:1px solid transparent;}
.btn-primary{background:var(--terra);color:#fff;border-color:var(--terra);box-shadow:0 16px 44px rgba(194,90,48,0.32);}
.btn-primary:hover{background:var(--terra-bright);transform:translateY(-3px);box-shadow:0 22px 56px rgba(223,116,64,0.5);}
.btn-ghost{border-color:var(--glass-line-strong);color:var(--sand-100);background:var(--glass);backdrop-filter:blur(10px);}
.btn-ghost:hover{border-color:var(--terra);color:var(--terra-bright);transform:translateY(-3px);}
.btn-gold{background:linear-gradient(120deg,var(--sand-300),var(--terra-bright));color:#1a120c;font-weight:600;
  box-shadow:0 16px 44px rgba(203,174,126,0.3);}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 22px 56px rgba(223,116,64,0.45);}
.site-footer .fcol a.btn-gold,.site-footer a.btn-gold{background:var(--terra) !important;color:#fff !important;box-shadow:0 12px 30px rgba(194,90,48,0.32);}
.site-footer .fcol a.btn-gold:hover,.site-footer a.btn-gold:hover{background:var(--terra-bright) !important;color:#fff !important;}
.btn-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px;align-items:center;}
.page-hero__actions{align-items:center;}
.center .btn-row{justify-content:center;}

/* ---------- Layout ---------- */
main{position:relative;z-index:10;}
section{position:relative;padding:90px 56px;}
.container{max-width:1180px;margin:0 auto;}
.container--text{max-width:820px;}
.center{text-align:center;}

/* ---------- Typography ---------- */
.eyebrow{font-family:'Space Grotesk';font-size:12px;letter-spacing:0.4em;text-transform:uppercase;
  color:var(--terra-bright);margin-bottom:20px;display:flex;align-items:center;gap:12px;}
.eyebrow::before{content:'';width:34px;height:1px;background:var(--terra-bright);display:inline-block;}
.center .eyebrow,.eyebrow.center{justify-content:center;}
h1,h2,h3,h4{font-family:'Space Grotesk';font-weight:500;line-height:1.05;letter-spacing:-0.02em;}
h2{font-size:clamp(2rem,4.5vw,3.4rem);margin-bottom:22px;}
h2 .word,h1 .word{display:inline-block;}
h3{font-size:1.25rem;}
.accent,em.accent{color:var(--terra-bright);}
.lead{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.55;color:var(--sand-200);font-weight:300;}
.sec-lead{font-size:clamp(1.02rem,1.4vw,1.25rem);line-height:1.55;color:var(--sand-200);font-weight:300;margin-top:14px;}

/* ---------- Page hero ---------- */
.page-hero{padding-top:170px;padding-bottom:60px;}
.page-hero .container{max-width:980px;}
.breadcrumb{display:flex;align-items:center;gap:10px;font-family:'Space Grotesk';font-size:0.78rem;
  letter-spacing:0.12em;text-transform:uppercase;color:var(--sand-muted);margin-bottom:26px;flex-wrap:wrap;}
.breadcrumb a{color:var(--sand-muted);text-decoration:none;transition:.3s;}
.breadcrumb a:hover{color:var(--terra-bright);}
.page-hero h1{font-size:clamp(2.4rem,6vw,4.6rem);margin:8px 0 0;}
.page-hero h1 em,.italic-display{font-style:italic;color:var(--terra-bright);font-weight:400;}
.page-hero__lead{margin-top:26px;max-width:760px;font-size:clamp(1.05rem,1.6vw,1.35rem);
  line-height:1.6;color:var(--sand-200);font-weight:300;}
.page-hero__actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px;}

/* ---------- Section heads ---------- */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px;flex-wrap:wrap;}
.section-head--center{flex-direction:column;align-items:center;text-align:center;max-width:780px;margin-left:auto;margin-right:auto;}
.section-head__lead{max-width:460px;font-size:1.05rem;color:var(--sand-200);font-weight:300;line-height:1.6;}
.section-head--center .section-head__lead{max-width:680px;}

/* ---------- Glass / panels ---------- */
.glass{background:var(--glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--glass-line);border-radius:18px;box-shadow:var(--shadow);position:relative;overflow:hidden;}
.glass::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--glass-line-strong),transparent);}
.bg-panel{position:relative;}
.bg-panel::after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(30,23,15,0.55);
  backdrop-filter:blur(2px);border-top:1px solid var(--glass-line);border-bottom:1px solid var(--glass-line);}

/* ---------- Prose ---------- */
.prose h2{margin-bottom:18px;}
.prose h3{margin:28px 0 12px;font-size:1.15rem;color:var(--sand-100);}
.prose p{color:var(--sand-200);font-weight:300;line-height:1.75;margin-bottom:16px;font-size:1.02rem;}
.prose strong{color:var(--sand-100);font-weight:500;}
.prose ul{list-style:none;margin:18px 0;display:flex;flex-direction:column;gap:12px;}
.prose ul li{position:relative;padding-left:28px;color:var(--sand-200);font-weight:300;line-height:1.55;}
.prose ul li::before{content:'';position:absolute;left:4px;top:9px;width:8px;height:8px;border-radius:50%;
  background:var(--terra-bright);box-shadow:0 0 8px var(--terra-bright);}
.prose blockquote,blockquote.quote{margin:26px 0;padding:20px 26px;border-left:2px solid var(--terra);
  font-family:'Space Grotesk';font-size:1.2rem;font-weight:300;font-style:italic;line-height:1.45;color:var(--sand-100);
  background:rgba(194,90,48,0.05);border-radius:0 12px 12px 0;}
.prose blockquote cite{display:block;margin-top:12px;font-size:0.85rem;font-style:normal;color:var(--terra-bright);letter-spacing:0.04em;}
.callout{margin:28px 0;padding:24px 28px;border-radius:14px;background:rgba(203,174,126,0.08);
  border:1px solid var(--glass-line);color:var(--sand-200);font-weight:300;line-height:1.65;}
.callout strong{color:var(--terra-bright);}

/* ---------- Symptom detail (two-col) ---------- */
.symptom-detail{display:grid;grid-template-columns:1.15fr 0.85fr;gap:56px;align-items:start;}
.symptom-detail__media,.split__media{border-radius:20px;overflow:hidden;border:1px solid var(--glass-line);
  background:linear-gradient(160deg,#241b12,#181209);padding:24px;position:relative;}
.split__media-tag{position:absolute;bottom:14px;left:18px;font-family:'Space Grotesk';font-size:0.72rem;
  letter-spacing:0.18em;text-transform:uppercase;color:var(--sand-muted);}
.symptom-detail__media img,.split__media img{filter:saturate(0.85) hue-rotate(-8deg) brightness(1.05);opacity:0.92;}

/* ---------- Split layout ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.split--reverse .split__media{order:2;}

/* ---------- Cards ---------- */
.cards{display:grid;gap:18px;}
.cards--2{grid-template-columns:repeat(2,1fr);}
.cards--3{grid-template-columns:repeat(3,1fr);}
.cards--4{grid-template-columns:repeat(4,1fr);}
.card{padding:26px;border-radius:16px;background:var(--glass);backdrop-filter:blur(14px);
  border:1px solid var(--glass-line);transition:.4s var(--ease);}
.card:hover{transform:translateY(-4px);border-color:var(--terra);}
.card__num,.card .card__num{font-family:'Space Grotesk';font-size:0.74rem;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--terra-bright);margin-bottom:12px;display:block;}
.card h3{font-size:1.18rem;font-weight:500;margin-bottom:10px;}
.card p{font-size:0.92rem;line-height:1.6;color:var(--sand-200);font-weight:300;}
.cards__closing{text-align:center;margin-top:36px;font-size:1.15rem;color:var(--sand-100);}
.cards__closing strong{color:var(--terra-bright);}

/* ---------- Features list ---------- */
.features{list-style:none;display:flex;flex-direction:column;gap:18px;margin-top:24px;}
.features li{display:flex;gap:18px;align-items:flex-start;}
.features__num{font-family:'Space Grotesk';font-size:0.85rem;color:var(--terra-bright);min-width:54px;padding-top:3px;letter-spacing:0.05em;}
.features strong{display:block;font-family:'Space Grotesk';font-size:1.05rem;font-weight:500;margin-bottom:3px;}
.features span{font-size:0.9rem;color:var(--sand-muted);line-height:1.5;}

/* ---------- Process ---------- */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.process__step{padding:24px;border-radius:14px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(14px);}
.process__num{font-family:'Space Grotesk';font-size:0.8rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--terra-bright);margin-bottom:14px;}
.process__step h3{font-size:1.05rem;font-weight:500;margin-bottom:8px;}
.process__step p{font-size:0.88rem;color:var(--sand-200);line-height:1.55;font-weight:300;}
.process__closing{text-align:center;margin-top:34px;font-size:1.1rem;color:var(--sand-200);}
.process__closing strong{color:var(--terra-bright);}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:46px;}
.stat{padding:24px;border-radius:16px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(14px);}
.stat__num,.stat .num{font-family:'Space Grotesk';font-size:2.2rem;font-weight:600;color:var(--terra-bright);line-height:1;}
.stat__num small{font-size:1.1rem;}
.stat__label,.stat .lbl{font-size:0.82rem;color:var(--sand-muted);margin-top:10px;line-height:1.4;}

/* ---------- FAQ ---------- */
.faqs{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.faq{border:1px solid var(--glass-line);border-radius:14px;background:var(--glass);overflow:hidden;backdrop-filter:blur(14px);}
.faq summary{cursor:pointer;padding:20px 24px;font-family:'Space Grotesk';font-size:1.05rem;font-weight:500;
  list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';font-size:1.4rem;color:var(--terra-bright);transition:.3s;flex-shrink:0;}
.faq[open] summary::after{transform:rotate(45deg);}
.faq__body{padding:0 24px 22px;}
.faq__body p{color:var(--sand-200);line-height:1.7;font-weight:300;font-size:0.95rem;}
.faq__body a{color:var(--terra-bright);text-decoration:none;border-bottom:1px solid var(--glass-line-strong);}

/* ---------- CTA band ---------- */
.cta{padding:54px;border-radius:24px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(18px);position:relative;overflow:hidden;}
.cta::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--terra-bright),transparent);}
.cta__grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:40px;align-items:center;}
.cta__grid h2{margin-bottom:16px;}
.cta__grid p{color:var(--sand-200);font-weight:300;line-height:1.6;}
.cta__actions{display:flex;flex-direction:column;gap:14px;}

/* ---------- Founder ---------- */
.founder__grid{display:grid;grid-template-columns:0.8fr 1.2fr;gap:56px;align-items:center;}
.founder__visual{aspect-ratio:4/5;border-radius:20px;overflow:hidden;position:relative;
  background:linear-gradient(160deg,#2a2016,#1a130c);border:1px solid var(--glass-line);}
.founder__visual img{width:100%;height:100%;object-fit:cover;}
.founder__visual.noimg::after{content:'BvG';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:'Space Grotesk';font-size:4rem;font-weight:600;color:var(--terra);opacity:0.5;}
.founder__quote{margin:24px 0;padding-left:24px;border-left:2px solid var(--terra);
  font-family:'Space Grotesk';font-size:1.2rem;font-weight:300;font-style:italic;line-height:1.4;color:var(--sand-100);}
.founder__creds{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:30px;}
.founder__cred strong{display:block;font-family:'Space Grotesk';font-size:1.9rem;font-weight:600;color:var(--terra-bright);line-height:1;}
.founder__cred small{font-size:1.05rem;}
.founder__cred span{display:block;margin-top:8px;font-size:0.85rem;color:var(--sand-muted);line-height:1.4;}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:40px;align-items:start;}
.form{padding:34px;border-radius:18px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(16px);}
.form h3{margin-bottom:22px;font-size:1.25rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-field{margin-bottom:16px;display:flex;flex-direction:column;gap:7px;}
.form-field label{font-size:0.82rem;color:var(--sand-200);font-family:'Space Grotesk';letter-spacing:0.04em;}
.req{color:var(--terra-bright);}
.form input,.form select,.form textarea{background:rgba(0,0,0,0.25);border:1px solid var(--glass-line);
  border-radius:10px;padding:13px 15px;color:var(--sand-100);font-family:'Inter';font-size:0.95rem;transition:.3s;}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--terra-bright);
  box-shadow:0 0 0 3px rgba(223,116,64,0.12);}
.form textarea{min-height:120px;resize:vertical;}
.form .hint{font-size:0.78rem;color:var(--sand-muted);}
.form-check{flex-direction:row;align-items:flex-start;gap:10px;font-size:0.85rem;color:var(--sand-muted);line-height:1.5;}
.form-check input{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--terra);}
.form-check a{color:var(--terra-bright);}
.form-status{margin-top:14px;font-size:0.9rem;color:var(--terra-bright);}
.contact-info{display:flex;flex-direction:column;gap:18px;}
.contact-info__item{display:flex;gap:16px;padding:20px;border-radius:14px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(12px);}
.contact-info__item svg{width:22px;height:22px;color:var(--terra-bright);flex-shrink:0;margin-top:3px;}
.contact-info__item strong{display:block;font-family:'Space Grotesk';font-size:0.95rem;margin-bottom:4px;}
.contact-info__item a{color:var(--terra-bright);text-decoration:none;display:block;font-size:0.95rem;}
.contact-info__item p{font-size:0.85rem;color:var(--sand-muted);margin-top:3px;line-height:1.5;}
.map{margin-top:38px;border-radius:18px;overflow:hidden;border:1px solid var(--glass-line);height:380px;}
.map iframe{width:100%;height:100%;border:0;filter:grayscale(0.3) sepia(0.15) brightness(0.9);}

/* ---------- Typeform / embed ---------- */
.typeform-wrapper{border-radius:20px;overflow:hidden;border:1px solid var(--glass-line);background:var(--glass);
  height:640px;max-width:820px;margin:0 auto;}
.typeform-embed{width:100%;height:100%;border:0;}

/* ---------- Footer ---------- */
.site-footer{position:relative;z-index:10;background:linear-gradient(180deg,transparent,rgba(10,8,5,0.9));
  border-top:1px solid var(--glass-line);padding:70px 56px 40px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;max-width:1200px;margin:0 auto;}
.foot-brand h4{font-family:'Space Grotesk';font-size:1.3rem;margin-bottom:6px;display:flex;flex-direction:column;}
.foot-brand h4 small{font-size:0.8rem;color:var(--sand-muted);font-weight:300;letter-spacing:0.05em;margin-top:4px;}
.foot-brand p{color:var(--sand-muted);font-size:0.9rem;line-height:1.6;margin:14px 0;max-width:340px;font-weight:300;}
.foot-brand address{font-style:normal;color:var(--sand-200);font-size:0.9rem;line-height:1.6;}
.foot-contact{display:flex;flex-direction:column;gap:6px;margin-top:14px;}
.foot-contact a{color:var(--terra-bright);text-decoration:none;font-size:0.9rem;}
.foot-hours{display:grid;grid-template-columns:auto 1fr;column-gap:16px;row-gap:5px;font-size:0.88rem;color:var(--sand-200);max-width:210px;}
.foot-hours span:nth-child(odd){color:var(--sand-muted);}
.site-footer h5{font-family:'Space Grotesk';font-size:0.78rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--sand-100);margin-bottom:16px;}
.fcol a{display:block;color:var(--sand-muted);text-decoration:none;font-size:0.9rem;padding:5px 0;transition:.3s;}
.fcol a:hover{color:var(--terra-bright);}
.foot-bottom{max-width:1200px;margin:46px auto 0;padding-top:24px;border-top:1px solid var(--glass-line);
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:0.8rem;color:var(--sand-muted);}
.foot-bottom a{color:var(--sand-muted);text-decoration:none;margin-left:18px;}
.foot-bottom a:hover{color:var(--terra-bright);}
.foot-disclaimer{max-width:1200px;margin:24px auto 0;font-size:0.75rem;color:var(--sand-muted);opacity:0.7;line-height:1.6;}

/* ---------- Loader ---------- */
#loader{position:fixed;inset:0;z-index:200;background:var(--bg-0);display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:26px;transition:opacity 0.9s var(--ease);}
#loader .ldr-mark{width:50px;height:50px;border:1px solid var(--glass-line-strong);transform:rotate(45deg);position:relative;animation:spin 3s linear infinite;}
#loader .ldr-mark::after{content:'';position:absolute;inset:13px;background:var(--terra-bright);box-shadow:0 0 22px var(--terra-bright);}
@keyframes spin{to{transform:rotate(405deg)}}
#loader .ldr-txt{font-family:'Space Grotesk';letter-spacing:0.4em;text-transform:uppercase;font-size:12px;color:var(--sand-muted);}

/* ---------- Reveal base (IntersectionObserver + CSS) ---------- */
.reveal{will-change:transform,opacity;}
.reveal-init{opacity:0;transform:translateY(26px);
  transition:opacity .85s var(--ease), transform .85s var(--ease);will-change:opacity,transform;}
.reveal-init.in{opacity:1;transform:none;}
.split-host .split-word{display:inline-block;opacity:0;transform:translateY(0.55em);
  transition:opacity .7s var(--ease), transform .7s var(--ease);}
.split-host.in .split-word{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){
  .reveal-init,.split-host .split-word{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* ---------- Responsive ---------- */
@media(max-width:980px){
  .cards--3,.cards--4,.process{grid-template-columns:repeat(2,1fr);}
  .split,.symptom-detail,.cta__grid,.founder__grid,.contact-grid,.stats{grid-template-columns:1fr;gap:32px;}
  .split--reverse .split__media{order:0;}
  .stats{grid-template-columns:repeat(2,1fr);}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .section-head{align-items:flex-start;}
}
@media(max-width:720px){
  section{padding:64px 20px;}
  nav{padding:12px 18px;}
  .brand-logo{height:38px;}
  .nav-cta{display:none;}              /* Aktionen liegen im Hamburger-Menü */
  .page-hero{padding-top:118px;}
  .page-hero h1{font-size:clamp(2rem,8vw,2.6rem);}
  h2{font-size:clamp(1.7rem,6.5vw,2.3rem);}
  .nav-main{display:none;position:fixed;inset:58px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
    padding:16px;background:rgba(21,17,12,0.99);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-line);
    max-height:84vh;overflow:auto;-webkit-overflow-scrolling:touch;}
  .nav-main.open{display:flex;}
  .nav-menu{flex-direction:column;align-items:stretch;gap:2px;}
  .nav-menu a{padding:14px 12px;font-size:1rem;}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
    background:rgba(255,255,255,0.02);margin:4px 0 8px 12px;min-width:auto;}
  .nav-toggle{display:flex;}
  .nav-actions .nav-phone{display:none;}
  .cards--2,.cards--3,.cards--4,.process,.stats{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;gap:28px;}
  .founder__creds{grid-template-columns:1fr 1fr;}
  .form-row{grid-template-columns:1fr;}
  .cta{padding:28px 20px;}
  .site-footer{padding:46px 20px 28px;}
  /* Buttons gut tippbar: volle Breite + grössere Fläche */
  .page-hero__actions{flex-direction:column;align-items:stretch;}
  .page-hero__actions .btn-primary,.page-hero__actions .btn-ghost,.page-hero__actions .btn-gold,
  .cta__actions .btn-primary,.cta__actions .btn-ghost,.cta__actions .btn-gold,
  .btn-row .btn-primary,.btn-row .btn-ghost,.btn-row .btn-gold{width:100%;justify-content:center;}
  .btn-primary,.btn-ghost,.btn-gold{padding:16px 24px;}
  .btn-row{flex-direction:column;}
  /* Lesbare Fliesstexte & Abstände */
  .prose p,.prose ul li{font-size:1rem;}
  .symptom-detail{gap:24px;}
  .section-head{gap:14px;margin-bottom:32px;}
  /* Einbettungen */
  .typeform-wrapper{height:auto;min-height:78vh;}
  .typeform-embed{height:78vh;min-height:600px;}
  .map{height:300px;}
  .foot-bottom{flex-direction:column;gap:10px;}
  .foot-bottom a{margin-left:0;margin-right:18px;}
}
@media(max-width:400px){
  .page-hero h1{font-size:clamp(1.7rem,8.5vw,2.1rem);}
  .founder__creds{grid-template-columns:1fr;}
  .nav-actions{gap:8px;}
}
