:root{
  --pink:#ec0b78;
  --navy:#10166f;
  --cyan:#16b6df;
  --green:#35b866;
  --orange:#ff9d00;
  --ink:#101828;
  --muted:#667085;
  --line:rgba(16,24,40,.10);
  --line-soft:rgba(16,24,40,.065);
  --white:#fff;
  --soft:#f5f8fc;
  --glass:rgba(255,255,255,.84);
  --shadow:0 26px 72px rgba(16,24,40,.14);
  --shadow-soft:0 16px 42px rgba(16,24,40,.08);
  --radius:28px;
  --max:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 12% 3%,rgba(236,11,120,.10),transparent 26%),
    radial-gradient(circle at 90% 5%,rgba(22,182,223,.12),transparent 30%),
    linear-gradient(180deg,#fbfdff 0%,#eef4fa 100%);
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea{font:inherit}
.container{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.ui-svg{width:100%;height:100%;display:block}.ui-icon,.btn-icon,.contact-card-icon,.badge-icon,.eyebrow-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.ui-icon{width:18px;height:18px}.btn-icon{width:22px;height:22px}.eyebrow-icon{width:18px;height:18px;color:var(--pink)}

/* Header */
.site-top-wrap{position:relative;z-index:100}.topline{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0 10px;color:var(--muted);font-size:13px}.topline>div{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.86);box-shadow:0 8px 22px rgba(16,24,40,.045);backdrop-filter:blur(10px)}.map-link-pill:hover{color:var(--navy)}.top-status{color:var(--navy)}
.site-header{position:sticky;top:12px;z-index:100}.header-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center;padding:14px 18px;border-radius:28px;background:var(--glass);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;min-width:0}.brand img{width:184px;height:auto;filter:drop-shadow(0 10px 22px rgba(16,22,111,.13))}.nav-zone{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}nav{display:flex;align-items:center;gap:6px;padding:7px;border-radius:999px;background:rgba(255,255,255,.70);border:1px solid rgba(16,24,40,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.nav-link,.drop-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 15px;border-radius:999px;border:0;background:transparent;color:var(--ink);font-weight:820;font-size:14px;white-space:nowrap;cursor:pointer;transition:.22s ease}.nav-link:hover,.drop:hover .drop-btn,.drop:focus-within .drop-btn{background:linear-gradient(135deg,rgba(236,11,120,.08),rgba(22,182,223,.08));color:var(--navy)}.drop{position:relative}.drop-btn::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px}.mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(10px);width:760px;max-width:min(92vw,760px);padding:14px;border-radius:26px;background:rgba(255,255,255,.98);border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:.18s ease}.drop:hover .mega,.drop:focus-within .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.mega-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.mega-card{display:flex;gap:12px;align-items:center;padding:10px;border-radius:18px;transition:.2s ease}.mega-card:hover{background:#f8fafc}.mega-card img{width:62px;height:62px;object-fit:contain;flex:0 0 62px;filter:drop-shadow(0 8px 16px rgba(16,24,40,.08))}.mega-card strong{display:block;font-size:14px;color:var(--ink)}.mega-card span span{display:block;font-size:12px;color:var(--muted);line-height:1.45}.actions{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:13px 17px;border-radius:999px;font-weight:860;font-size:14px;white-space:nowrap;border:0;transition:.22s ease}.btn:hover{transform:translateY(-2px)}.btn-main{color:#fff;background:linear-gradient(135deg,var(--pink),var(--navy));box-shadow:0 16px 30px rgba(16,22,111,.23)}.btn-light{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);color:var(--navy)}.header-action{position:relative;isolation:isolate;overflow:hidden;width:52px;height:52px;padding:0;border:0;box-shadow:0 16px 30px rgba(16,22,111,.12)}.header-phone,.header-email{background:linear-gradient(180deg,#fff,#f7fbff);color:var(--navy)}.header-whatsapp{background:linear-gradient(135deg,#25d366,#0d9d62);color:#fff}.header-action::before{content:"";position:absolute;inset:0;padding:2px;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink));background-size:280% 100%;animation:headerBorderFlow 4.8s linear infinite;pointer-events:none;z-index:1;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}.header-action>*{position:relative;z-index:2}@keyframes headerBorderFlow{0%{background-position:0% 50%}100%{background-position:280% 50%}}
#menu{display:none}.burger{display:none;width:50px;height:50px;border-radius:16px;background:#fff;border:1px solid var(--line);align-items:center;justify-content:center;cursor:pointer}.burger span,.burger span::before,.burger span::after{content:"";display:block;width:22px;height:2px;border-radius:99px;background:var(--ink);position:relative;transition:.25s}.burger span::before{position:absolute;top:-7px}.burger span::after{position:absolute;top:7px}

/* Generic Layout */
main{overflow:hidden}.hero{padding:60px 0 42px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}.detail-hero{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--navy);font-weight:850;font-size:13px;margin-bottom:22px;box-shadow:0 8px 20px rgba(16,24,40,.04)}h1{font-size:clamp(40px,5.8vw,74px);line-height:1.08;letter-spacing:-.052em;margin:0 0 22px;max-width:820px;overflow:visible}h2{letter-spacing:-.035em}.grad{display:inline-block;background:linear-gradient(135deg,var(--pink),var(--navy),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.12;padding:.02em .02em .10em}.lead{font-size:clamp(17px,2vw,21px);line-height:1.72;color:#475467;margin:0 0 28px;max-width:720px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.info-card{padding:20px;border-radius:24px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-soft);display:grid;gap:8px;max-width:680px}.info-card p{margin:0;color:var(--muted);line-height:1.6}.visual{position:relative;min-height:470px;display:grid;place-items:center}.orb{position:absolute;border-radius:999px;opacity:.9}.orb.one{width:310px;height:310px;background:linear-gradient(135deg,rgba(236,11,120,.18),rgba(22,182,223,.22));top:18px;right:60px}.orb.two{width:210px;height:210px;background:linear-gradient(135deg,rgba(255,157,0,.23),rgba(53,184,102,.19));bottom:34px;left:35px}.practice-room-tile{position:relative;width:min(92%,540px);min-height:430px;overflow:hidden;border-radius:38px;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.86);box-shadow:var(--shadow);backdrop-filter:blur(14px)}.practice-room-image{width:100%;height:100%;min-height:430px;object-fit:cover}.practice-room-badge{position:absolute;left:18px;bottom:18px;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--navy);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-soft);font-weight:850;font-size:14px}.stats{position:absolute;right:0;bottom:12px;display:grid;gap:10px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow-soft);min-width:210px}.stat b{display:block;font-size:22px;color:var(--navy)}.stat span{font-size:13px;color:var(--muted)}section{padding:52px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.section-head h2{font-size:clamp(30px,4vw,48px);line-height:1.06;margin:0;max-width:780px}.section-head p{margin:0;color:var(--muted);line-height:1.65;max-width:530px}

/* Cards & Panels */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;overflow:hidden;padding:25px;border-radius:28px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-soft);min-height:210px;transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card::after{content:"";position:absolute;right:-70px;bottom:-90px;width:190px;height:190px;border-radius:50%;background:linear-gradient(135deg,rgba(236,11,120,.08),rgba(22,182,223,.12));pointer-events:none}.card>*{position:relative;z-index:1}.card h3{font-size:21px;margin:0 0 10px;letter-spacing:-.02em;text-align:center;color:var(--ink)}.card p{margin:0;color:var(--muted);line-height:1.65}.treatment-icon{width:210px;height:152px;margin:0 auto 18px;display:grid;place-items:center}.treatment-icon img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 13px 24px rgba(16,24,40,.13))}.service-pill{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--navy);font-weight:850;font-size:13px;box-shadow:0 12px 28px rgba(16,24,40,.07);transition:.24s}.service-pill::before,.contact-premium-card::before,.footer-minimal-link::before{content:"";position:absolute;inset:0;padding:2px;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink));background-size:280% 100%;opacity:0;transition:opacity .24s ease;pointer-events:none;z-index:1;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}.service-pill:hover::before,.contact-premium-card:hover::before,.footer-minimal-link:hover::before{opacity:1;animation:headerBorderFlow 4.8s linear infinite}.service-pill:hover,.footer-minimal-link:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(16,22,111,.12);border-color:transparent}.service-pill>*{position:relative;z-index:2}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:start}.panel{padding:30px;border-radius:30px;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-soft)}.panel h2{font-size:clamp(30px,4vw,46px);line-height:1.07;margin:0 0 16px}.panel p{color:var(--muted);line-height:1.7;margin:0 0 16px}.list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.list span{padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 24px rgba(16,24,40,.055);font-weight:780}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.8)}

/* Detail / legal / FAQ */
.detail-hero>img:not(.service-hero-icon){width:100%;height:430px;object-fit:cover;border-radius:34px;box-shadow:var(--shadow)}.service-hero-icon{width:min(360px,86%);max-height:360px;object-fit:contain;justify-self:center;filter:drop-shadow(0 24px 38px rgba(16,24,40,.12))}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detail-box{padding:24px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.detail-box h3{margin:0 0 14px;color:var(--navy)}.detail-box ul{margin:0;padding-left:20px;color:var(--muted);line-height:1.7}.legal,.faq-wrap,.treatment-detail{display:grid;gap:18px}.faq-item,.legal>*,.legal-hero-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-soft);padding:20px}.faq-item h3,.legal h2,.legal h3{margin:0 0 8px;color:var(--navy)}.faq-item p,.legal p,.legal li{margin-top:0;color:var(--muted);line-height:1.65}.legal ul{margin-top:0}.about-hero{padding-top:58px}

/* Contact */
.contact-premium-section{padding:72px 0 62px}.contact-premium-shell{display:grid;grid-template-columns:.95fr 1.05fr;gap:22px;align-items:start;padding:14px;border-radius:36px;background:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.76);box-shadow:0 28px 80px rgba(16,24,40,.10)}.contact-premium-copy,.contact-form-premium{padding:30px;border-radius:30px;background:linear-gradient(180deg,#fff,rgba(255,255,255,.86));border:1px solid rgba(255,255,255,.96);box-shadow:0 24px 62px rgba(17,24,39,.10)}.contact-premium-copy h2{font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.05em;margin:0 0 16px}.contact-lead{font-size:17px;line-height:1.75;color:#536175;margin:0 0 22px}.contact-premium-badges{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.contact-premium-badges span{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:999px;background:#fff;border:1px solid rgba(16,22,111,.08);box-shadow:0 10px 28px rgba(17,24,39,.06);font-size:13px;font-weight:900;color:var(--navy)}.badge-icon{width:24px;height:24px;color:var(--pink)}.contact-premium-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-premium-card{position:relative;isolation:isolate;overflow:hidden;display:grid;gap:7px;align-content:start;min-height:142px;padding:18px;border-radius:24px;background:#fff;border:1px solid rgba(16,24,40,.08);box-shadow:0 14px 30px rgba(16,24,40,.06);transition:.24s}.contact-premium-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(16,22,111,.12);border-color:transparent}.contact-premium-card>*{position:relative;z-index:2}.contact-card-icon{width:48px;height:48px;border-radius:18px;background:linear-gradient(135deg,rgba(236,11,120,.12),rgba(22,182,223,.16));box-shadow:inset 0 0 0 1px rgba(255,255,255,.78);font-size:25px;color:var(--navy)}.contact-premium-card strong{font-size:16px;color:var(--navy)}.contact-premium-card span{font-size:14px;color:#5d6877;line-height:1.55;word-break:break-word}.contact-form-head{display:grid;gap:6px;margin-bottom:18px;padding:16px;border-radius:20px;color:#fff;background:linear-gradient(135deg,var(--navy),var(--pink));box-shadow:0 18px 38px rgba(16,22,111,.18)}.contact-form-head span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.75);font-weight:900}.field{display:grid;gap:7px;margin-bottom:13px}.field label{font-weight:800;font-size:14px;color:var(--navy)}.field input,.field textarea{width:100%;border-radius:18px;background:#f8fbff;border:1px solid rgba(16,24,40,.1);padding:13px 14px;color:var(--ink);outline:none}.field textarea{min-height:134px;resize:vertical}.field input:focus,.field textarea:focus{border-color:rgba(22,182,223,.5);box-shadow:0 0 0 4px rgba(22,182,223,.1)}.consent-field label{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.55;color:#5f6b7a}.consent-field input{width:auto;margin-top:3px}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.form-status{display:none;margin:12px 0 0;padding:13px 15px;border-radius:18px;font-weight:800;font-size:14px;line-height:1.45;border:1px solid rgba(16,24,40,.08);background:rgba(255,255,255,.72);box-shadow:0 12px 28px rgba(16,24,40,.08)}.form-status.is-visible{display:block}.form-status.is-loading{color:var(--navy);background:linear-gradient(135deg,rgba(22,182,223,.12),rgba(236,11,120,.08));border-color:rgba(22,182,223,.24)}.form-status.is-success{color:#087443;background:linear-gradient(135deg,rgba(53,184,102,.14),rgba(255,255,255,.8));border-color:rgba(53,184,102,.35)}.form-status.is-error{color:#a5123d;background:linear-gradient(135deg,rgba(236,11,120,.12),rgba(255,255,255,.82));border-color:rgba(236,11,120,.28)}.contact-fast-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.contact-fast-actions .btn{width:100%;font-size:13px;background:#fff;border:1px solid var(--line);color:var(--navy);box-shadow:var(--shadow-soft)}.contact-fast-actions a[href*="wa.me"]{background:linear-gradient(135deg,#25d366,#0d9d62);color:#fff;border:0}.form-note{font-size:12px;color:var(--muted);line-height:1.5;margin:14px 0 0}

/* Footer */
.site-footer.footer-minimal{margin-top:26px;padding:10px 0 30px;background:transparent;color:var(--ink)}.footer-minimal-shell{background:#fff;border:1px solid rgba(16,24,40,.08);border-radius:18px;box-shadow:0 10px 28px rgba(16,24,40,.05);padding:16px 18px 14px}.footer-minimal-logo-wrap{display:flex;justify-content:center;align-items:center;text-align:center;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(16,24,40,.07)}.footer-minimal-logo{display:inline-flex;align-items:center;justify-content:center;margin-inline:auto}.footer-minimal-logo img{width:190px;height:auto}.footer-minimal-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}.footer-minimal-link{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 16px;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border:1px solid rgba(16,24,40,.08);box-shadow:0 8px 20px rgba(16,24,40,.05);color:var(--navy);font-size:13px;font-weight:820;transition:.24s}.footer-minimal-link:nth-child(2){color:#b00e64}.footer-minimal-link:nth-child(3){color:#0d8d57}.footer-minimal-link:nth-child(4){color:#0d7392}.footer-minimal-bottom{margin-top:12px;padding-top:12px;border-top:1px solid rgba(16,24,40,.07);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#7b8794;font-size:12px}.footer-minimal-bottom a,.footer-cookie-link{color:var(--navy);font-weight:700}.footer-cookie-link{appearance:none;background:transparent;border:0;padding:0;cursor:pointer;font:inherit}

/* Cookies */
.cookie-banner{position:fixed;left:50%;bottom:20px;z-index:9999;width:min(calc(100% - 32px),790px);transform:translate(-50%,18px);opacity:0;pointer-events:none;transition:opacity .28s ease,transform .28s ease}.cookie-banner.is-visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.cookie-card{display:grid;grid-template-columns:1.1fr 1fr auto;gap:16px;align-items:center;padding:16px;border-radius:24px;border:1px solid rgba(255,255,255,.24);background:linear-gradient(135deg,rgba(6,11,48,.96),rgba(16,22,93,.94));color:rgba(255,255,255,.82);box-shadow:0 24px 70px rgba(6,11,48,.30);backdrop-filter:blur(18px)}.cookie-card strong{display:block;color:#fff;font-size:16px;margin-bottom:4px}.cookie-card p,.cookie-card small{margin:0;font-size:13px;line-height:1.55;color:rgba(255,255,255,.70)}.cookie-choice{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.cookie-choice-input{width:18px;height:18px;accent-color:var(--cyan);margin-top:3px}.cookie-choice-text{display:grid;gap:2px}.cookie-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.cookie-actions a,.cookie-actions button{min-height:40px;border-radius:999px;padding:10px 13px;font-size:13px;font-weight:900;cursor:pointer}.cookie-actions a{color:#fff;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14)}.cookie-accept{color:var(--navy);border:0;background:#fff;box-shadow:0 10px 22px rgba(0,0,0,.16)}

/* Responsive */
@media(max-width:1180px){.header-card{gap:18px}.brand img{width:166px}.nav-link,.drop-btn{padding:12px 12px;font-size:13px}.header-action{width:48px;height:48px}.actions{gap:8px}}
@media(max-width:980px){.topline{display:none}.site-header{top:10px}.header-card{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px 13px;border-radius:24px}.brand img{width:174px}.burger{display:flex;justify-self:end}.nav-zone{grid-column:1/-1;display:none;width:100%;align-items:stretch;justify-content:stretch}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}.header-action{width:100%;height:48px}.header-phone{display:flex!important}#menu:checked~.nav-zone{display:grid;gap:12px}nav{display:grid;gap:8px;width:100%;padding:10px;border-radius:22px;background:#fff}.nav-link,.drop-btn{width:100%;justify-content:flex-start;padding:13px 14px;border-radius:16px;background:#f8fbff}.drop{display:grid}.drop-btn::after{margin-left:auto}.mega{position:static;transform:none!important;width:100%;max-width:none;margin-top:8px;padding:10px;border-radius:18px;box-shadow:none;border:1px solid rgba(16,24,40,.08);opacity:1;visibility:visible;background:#fff}.mega-grid{grid-template-columns:1fr}.mega-card{padding:8px;border-radius:14px}.mega-card img{width:52px;height:52px;flex-basis:52px}.hero{padding:38px 0 28px}.hero-grid,.detail-hero,.split,.contact-premium-shell{grid-template-columns:1fr}.detail-hero>img:not(.service-hero-icon){height:320px}.service-hero-icon{max-height:260px}.cards{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.section-head{display:grid;align-items:start}.contact-fast-actions{grid-template-columns:1fr}.footer-minimal-actions{max-width:640px;margin-inline:auto}.cookie-card{grid-template-columns:1fr}}
@media(max-width:650px){.container{width:min(calc(100% - 24px),var(--max))}.brand img{width:170px}h1{font-size:clamp(34px,11vw,46px);line-height:1.12;letter-spacing:-.045em}.lead{font-size:16px;line-height:1.62}.hero-actions{display:grid;grid-template-columns:1fr}.btn{width:100%;min-height:46px}.visual{min-height:360px}.practice-room-tile{width:100%;min-height:330px;border-radius:28px}.practice-room-image{min-height:330px}.stats{position:relative;right:auto;bottom:auto;margin-top:12px;width:100%}.stat{min-width:0}.cards{grid-template-columns:1fr}.card{padding:20px;border-radius:22px}.treatment-icon{width:180px;height:132px}.panel,.contact-premium-copy,.contact-form-premium{padding:20px;border-radius:24px}.list,.contact-premium-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery img{height:210px}.detail-hero>img:not(.service-hero-icon){height:260px;border-radius:26px}.footer-minimal-shell{padding:14px;border-radius:16px}.footer-minimal-logo img{width:172px}.footer-minimal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.footer-minimal-link{min-height:40px;padding:10px 12px;border-radius:12px;font-size:12.5px}.footer-minimal-bottom{display:grid;gap:6px}.cookie-banner{bottom:12px;width:min(calc(100% - 24px),790px)}.cookie-card{padding:14px;border-radius:20px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.cookie-actions a,.cookie-actions button{text-align:center;width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* === Index/layout fix: no overlaps + gallery 3/3 === */
html, body{overflow-x:hidden !important;}

/* Header darf nicht in Inhalte/Icons reinlaufen */
.header-card{grid-template-columns:auto minmax(0,1fr) !important;}
.nav-zone{min-width:0 !important;}
nav{min-width:0 !important;}
.actions{flex-shrink:0 !important;}
.brand{flex-shrink:0 !important;}

/* Hero-Headline: Gradient-Wort sauber, kein abgeschnittenes 'e' */
h1{
  line-height:1.13 !important;
  overflow:visible !important;
  padding-bottom:.04em !important;
}
.grad{
  display:inline-block !important;
  line-height:1.2 !important;
  padding:.02em .08em .16em .02em !important;
  margin-bottom:-.08em !important;
  overflow:visible !important;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}

/* Service-Karten: Dekoration liegt sicher hinten und verdeckt keine Icons/Texte */
.card{isolation:isolate !important;overflow:hidden !important;}
.card::after{
  z-index:0 !important;
  opacity:.72 !important;
}
.card > *,
.treatment-icon,
.treatment-icon img,
.card h3,
.card p,
.service-pill{
  position:relative !important;
  z-index:2 !important;
}
.treatment-icon{
  pointer-events:none !important;
}

/* Galerie auf der Startseite: 3 oben / 3 unten statt 4 / 2 */
.gallery{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.gallery img{
  height:240px !important;
}

/* Tablet/kleinere Desktops: früher ins saubere mobile Header-Layout, damit nichts überlappt */
@media(max-width:1120px){
  .topline{display:none !important;}
  .site-header{top:10px !important;}
  .header-card{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:12px !important;
    padding:12px 13px !important;
    border-radius:24px !important;
  }
  .brand img{width:174px !important;}
  .burger{display:flex !important;justify-self:end !important;}
  .nav-zone{
    grid-column:1/-1 !important;
    display:none !important;
    width:100% !important;
    align-items:stretch !important;
    justify-content:stretch !important;
  }
  #menu:checked ~ .nav-zone{display:grid !important;gap:12px !important;}
  nav{
    display:grid !important;
    gap:8px !important;
    width:100% !important;
    padding:10px !important;
    border-radius:22px !important;
    background:#fff !important;
  }
  .nav-link,.drop-btn{
    width:100% !important;
    justify-content:flex-start !important;
    padding:13px 14px !important;
    border-radius:16px !important;
    background:#f8fbff !important;
  }
  .drop{display:grid !important;}
  .drop-btn::after{margin-left:auto !important;}
  .mega{
    position:static !important;
    transform:none !important;
    width:100% !important;
    max-width:none !important;
    margin-top:8px !important;
    padding:10px !important;
    border-radius:18px !important;
    box-shadow:none !important;
    border:1px solid rgba(16,24,40,.08) !important;
    opacity:1 !important;
    visibility:visible !important;
    background:#fff !important;
  }
  .mega-grid{grid-template-columns:1fr !important;}
  .mega-card{padding:8px !important;border-radius:14px !important;}
  .mega-card img{width:52px !important;height:52px !important;flex-basis:52px !important;}
  .actions{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
  }
  .header-action{width:100% !important;height:48px !important;}
  .header-phone{display:flex !important;}
}

@media(max-width:980px){
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .gallery img{height:220px !important;}
}
@media(max-width:650px){
  .gallery{grid-template-columns:1fr !important;}
  .gallery img{height:210px !important;}
  h1{line-height:1.15 !important;}
  .grad{padding-right:.10em !important;padding-bottom:.18em !important;}
}

/* === Feinabstimmung nach Screenshot-Feedback === */

/* 1) Header-Kontakticons: Hover wie ein hochwertiger CTA */
.actions .header-action{
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease !important;
}
.actions .header-action:hover,
.actions .header-action:focus-visible{
  background:linear-gradient(135deg,var(--pink),var(--navy)) !important;
  color:#fff !important;
  box-shadow:0 18px 34px rgba(16,22,111,.22) !important;
}
.actions .header-action:hover::before,
.actions .header-action:focus-visible::before{
  opacity:.95 !important;
  animation:headerBorderFlow 2.8s linear infinite !important;
}
.actions .header-action.header-whatsapp:hover,
.actions .header-action.header-whatsapp:focus-visible{
  background:linear-gradient(135deg,#25d366 0%, #13b86a 55%, #078654 100%) !important;
  color:#fff !important;
}

/* 2) Leistungskarten wie die gute Referenz: sauber, zentriert, keine Überlagerung */
.cards{
  align-items:stretch !important;
}
.cards .card{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  min-height:328px !important;
  padding:20px 20px 18px !important;
}
.cards .card::after{
  right:-58px !important;
  bottom:-68px !important;
  width:158px !important;
  height:158px !important;
  opacity:.52 !important;
}
.cards .treatment-icon{
  width:146px !important;
  height:146px !important;
  margin:0 auto 14px !important;
  flex:0 0 auto !important;
}
.cards .treatment-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
.cards .card h3{
  margin:0 0 10px !important;
  min-height:56px !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  text-align:center !important;
  font-size:18px !important;
  line-height:1.18 !important;
}
.cards .card p{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.7 !important;
  color:#5d6877 !important;
}
.cards .service-pill{
  margin-top:auto !important;
  align-self:flex-start !important;
}

/* 3) Kontakt-Kacheln: Icon-Hintergrund entfernen */
.contact-card-icon{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  color:#7b8396 !important;
  font-size:28px !important;
}
.contact-premium-card:hover .contact-card-icon{
  transform:none !important;
  box-shadow:none !important;
}

/* Mobile feinjustieren */
@media(max-width:980px){
  .cards .card{
    min-height:310px !important;
  }
  .cards .treatment-icon{
    width:138px !important;
    height:138px !important;
  }
}
@media(max-width:650px){
  .cards .card{
    min-height:0 !important;
    padding:18px 18px 16px !important;
  }
  .cards .treatment-icon{
    width:132px !important;
    height:132px !important;
    margin-bottom:12px !important;
  }
  .cards .card h3{
    min-height:0 !important;
    font-size:17px !important;
    margin-bottom:8px !important;
  }
  .contact-premium-card{
    min-height:128px !important;
  }
}

/* === Finaler Screenshot-Fix: Header-Hover, Leistungskarten, Kontakticons === */

/* Header-Icons: Hover wie hochwertiger Gradient-Button, nicht flach */
.header-action,
.actions .header-action{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  min-height:52px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease !important;
}
.actions .header-phone,
.actions .header-email{
  background:linear-gradient(180deg,#fff 0%,#f7fbff 100%) !important;
  color:var(--navy) !important;
}
.actions .header-whatsapp{
  background:linear-gradient(135deg,#25d366 0%,#13b86a 55%,#078654 100%) !important;
  color:#fff !important;
}
.actions .header-action:hover,
.actions .header-action:focus-visible{
  background:linear-gradient(135deg,var(--pink) 0%,var(--navy) 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 34px rgba(16,22,111,.22) !important;
}
.actions .header-whatsapp:hover,
.actions .header-whatsapp:focus-visible{
  background:linear-gradient(135deg,#25d366 0%,#13b86a 55%,#078654 100%) !important;
}
.actions .header-action:hover::before,
.actions .header-action:focus-visible::before{
  opacity:1 !important;
  animation:headerBorderFlow 3.6s linear infinite !important;
}

/* Leistungskarten: stabiler Premium-Aufbau wie Referenz, Überschrift mittig unter Icon */
.cards{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.card.treatment-card,
.cards .card{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  min-height:316px !important;
  padding:22px 22px 18px !important;
  border-radius:26px !important;
  overflow:hidden !important;
  isolation:isolate !important;
}
.card.treatment-card::after,
.cards .card::after{
  z-index:0 !important;
  right:-60px !important;
  bottom:-72px !important;
  width:160px !important;
  height:160px !important;
  opacity:.48 !important;
  pointer-events:none !important;
}
.card.treatment-card > *,
.cards .card > *{
  position:relative !important;
  z-index:2 !important;
}
.card.treatment-card .treatment-icon,
.cards .treatment-icon{
  width:142px !important;
  height:142px !important;
  margin:0 auto 16px !important;
  flex:0 0 auto !important;
  display:grid !important;
  place-items:center !important;
  pointer-events:none !important;
}
.card.treatment-card .treatment-icon img,
.cards .treatment-icon img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  filter:drop-shadow(0 12px 22px rgba(16,24,40,.12)) !important;
}
.card.treatment-card h3,
.cards .card h3{
  margin:0 0 10px !important;
  min-height:44px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  text-align:center !important;
  font-size:18px !important;
  line-height:1.2 !important;
  letter-spacing:-.025em !important;
  color:var(--ink) !important;
}
.card.treatment-card p,
.cards .card p{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.68 !important;
  color:#5d6877 !important;
}
.card.treatment-card .service-pill,
.cards .service-pill{
  margin-top:auto !important;
  align-self:flex-start !important;
}

/* Kontaktkarten: Icon-Hintergrund komplett entfernen */
.contact-card-icon{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  color:#778195 !important;
  font-size:30px !important;
}
.contact-card-icon .ui-svg{
  width:30px !important;
  height:30px !important;
}
.contact-premium-card:hover .contact-card-icon{
  transform:none !important;
  box-shadow:none !important;
  color:var(--navy) !important;
}

@media(max-width:980px){
  .cards{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .card.treatment-card,
  .cards .card{
    min-height:300px !important;
  }
}
@media(max-width:650px){
  .cards{
    grid-template-columns:1fr !important;
  }
  .card.treatment-card,
  .cards .card{
    min-height:0 !important;
    padding:20px 18px 16px !important;
  }
  .card.treatment-card .treatment-icon,
  .cards .treatment-icon{
    width:132px !important;
    height:132px !important;
    margin-bottom:13px !important;
  }
  .card.treatment-card h3,
  .cards .card h3{
    min-height:0 !important;
    font-size:17px !important;
  }
}

/* === Übergang Kontakt -> Footer sauberer === */
.contact-premium-section{
  padding-bottom:34px !important;
}
.site-footer.footer-minimal{
  margin-top:-6px !important;
  padding-top:0 !important;
  padding-bottom:26px !important;
}
.footer-minimal-shell{
  position:relative !important;
  overflow:hidden !important;
  border-radius:24px !important;
  box-shadow:0 18px 42px rgba(16,24,40,.06) !important;
}
.footer-minimal-shell::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  height:1px !important;
  background:linear-gradient(90deg,rgba(16,24,40,0),rgba(16,24,40,.08),rgba(16,24,40,0)) !important;
}
@media(max-width:980px){
  .contact-premium-section{padding-bottom:28px !important;}
  .site-footer.footer-minimal{margin-top:-2px !important;}
}
@media(max-width:650px){
  .contact-premium-section{padding-bottom:24px !important;}
  .site-footer.footer-minimal{margin-top:0 !important;padding-bottom:20px !important;}
  .footer-minimal-shell{border-radius:18px !important;}
}

/* === Kontakt-Kacheln: Icons kleiner und dezenter === */
.contact-card-icon{
  font-size:22px !important;
  width:auto !important;
  height:auto !important;
  line-height:1 !important;
}
.contact-card-icon .ui-svg{
  width:42px !important;
  height:42px !important;
}
@media(max-width:650px){
  .contact-card-icon{
    font-size:20px !important;
  }
  .contact-card-icon .ui-svg{
    width:38px !important;
    height:38px !important;
  }
}

/* === Hero-Bild: Persönlich/Ruhig sauber unter dem Bild nebeneinander === */
.visual{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  min-height:auto !important;
  padding:8px 0 !important;
}
.practice-room-tile{
  width:min(92%,540px) !important;
  flex:0 0 auto !important;
}
.stats{
  position:relative !important;
  right:auto !important;
  bottom:auto !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  width:min(92%,540px) !important;
  margin:0 auto !important;
  z-index:3 !important;
}
.stat{
  min-width:0 !important;
  width:100% !important;
  padding:14px 16px !important;
  border-radius:18px !important;
}
.stat b{
  font-size:18px !important;
  line-height:1.15 !important;
}
.stat span{
  display:block !important;
  margin-top:4px !important;
  font-size:12.5px !important;
  line-height:1.45 !important;
}
@media(max-width:650px){
  .visual{
    gap:12px !important;
  }
  .stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:100% !important;
    gap:10px !important;
  }
  .stat{
    padding:12px 13px !important;
  }
  .stat b{
    font-size:16px !important;
  }
  .stat span{
    font-size:12px !important;
  }
}

/* === Kontakt-Badges: Icons wieder sichtbar und sauber gesetzt === */
.contact-premium-badges{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:0 0 22px !important;
}
.contact-premium-badges > span{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:10px 13px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(16,22,111,.08) !important;
  box-shadow:0 10px 28px rgba(17,24,39,.06) !important;
  font-size:13px !important;
  font-weight:900 !important;
  color:var(--navy) !important;
}
.contact-premium-badges .badge-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 22px !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--pink) !important;
}
.contact-premium-badges .badge-icon.icon-clock{color:var(--cyan) !important;}
.contact-premium-badges .badge-icon.icon-shield{color:var(--green) !important;}
.contact-premium-badges .badge-icon .ui-svg{
  width:22px !important;
  height:22px !important;
  display:block !important;
}
@media(max-width:650px){
  .contact-premium-badges > span{
    width:100% !important;
  }
}


/* === Hero-Bild oben auf Höhe der Headline ausrichten === */
@media(min-width:981px){
  .hero-grid{
    align-items:start !important;
  }
  .visual{
    justify-content:flex-start !important;
    padding-top:58px !important; /* entspricht ungefähr Eyebrow + Abstand bis zur Headline */
  }
  .practice-room-tile{
    margin-top:0 !important;
  }
}
@media(max-width:980px){
  .visual{
    padding-top:0 !important;
  }
}

/* === Nur die 3 Header-Icons rechts mit Animation === */
.nav-link::before,
.nav-link::after,
.drop-btn::before,
.drop-btn::after{
  animation:none !important;
}
.nav-link,
.drop-btn{
  position:relative !important;
  overflow:visible !important;
}
.nav-link:hover,
.drop:hover .drop-btn,
.drop:focus-within .drop-btn{
  background:linear-gradient(135deg,rgba(236,11,120,.08),rgba(22,182,223,.08)) !important;
  color:var(--navy) !important;
  box-shadow:none !important;
}
.header-action,
.actions .header-action{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  border-radius:999px !important;
  border:0 !important;
  box-shadow:0 16px 30px rgba(16,22,111,.12) !important;
}
.header-phone,
.header-email{
  background:linear-gradient(180deg,#ffffff,#f7fbff) !important;
  color:var(--navy) !important;
}
.header-whatsapp{
  background:linear-gradient(135deg,#25d366,#0d9d62) !important;
  color:#fff !important;
}
.header-action::before,
.actions .header-action::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  padding:2px !important;
  border-radius:inherit !important;
  background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink)) !important;
  background-size:280% 100% !important;
  animation:headerBorderFlow 4.8s linear infinite !important;
  pointer-events:none !important;
  z-index:1 !important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  -webkit-mask-composite:xor !important;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  mask-composite:exclude !important;
}
.header-action > *,
.actions .header-action > *{
  position:relative !important;
  z-index:2 !important;
}
.actions .header-action:hover,
.actions .header-action:focus-visible{
  transform:translateY(-2px) !important;
  box-shadow:0 20px 38px rgba(16,22,111,.16) !important;
}
@media (prefers-reduced-motion: reduce){
  .header-action::before,
  .actions .header-action::before{animation:none !important;}
}


/* === Navigation: Hover-Effekt wie "Mehr erfahren" === */
nav .nav-link,
nav .drop-btn{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  border:1px solid transparent !important;
  transition:transform .22s ease, box-shadow .22s ease, color .22s ease, background .22s ease, border-color .22s ease !important;
}

nav .nav-link::before,
nav .drop-btn::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  padding:2px !important;
  border-radius:inherit !important;
  background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink)) !important;
  background-size:280% 100% !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:1 !important;
  transition:opacity .22s ease !important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  -webkit-mask-composite:xor !important;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  mask-composite:exclude !important;
}

nav .nav-link:hover,
nav .nav-link:focus-visible,
nav .drop:hover .drop-btn,
nav .drop:focus-within .drop-btn{
  background:#fff !important;
  color:var(--navy) !important;
  box-shadow:0 12px 26px rgba(16,22,111,.10) !important;
  transform:translateY(-1px) !important;
}

nav .nav-link:hover::before,
nav .nav-link:focus-visible::before,
nav .drop:hover .drop-btn::before,
nav .drop:focus-within .drop-btn::before{
  opacity:1 !important;
  animation:headerBorderFlow 4.8s linear infinite !important;
}

/* Aktiver Navigationspunkt bleibt premium, bekommt aber denselben Rand dezent dazu */
nav .nav-link.current,
nav .nav-link[aria-current="page"]{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  background:linear-gradient(135deg,var(--pink),var(--navy)) !important;
  color:#fff !important;
  box-shadow:0 12px 24px rgba(16,22,111,.18) !important;
}

nav .nav-link.current::before,
nav .nav-link[aria-current="page"]::before{
  opacity:.85 !important;
  animation:headerBorderFlow 5.6s linear infinite !important;
}

/* Header-Kontakticons behalten ihren bisherigen Effekt */
.actions .header-action::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  padding:2px !important;
  border-radius:inherit !important;
  background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink)) !important;
  background-size:280% 100% !important;
  animation:headerBorderFlow 4.8s linear infinite !important;
  pointer-events:none !important;
  z-index:1 !important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  -webkit-mask-composite:xor !important;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) !important;
  mask-composite:exclude !important;
}

@media (prefers-reduced-motion: reduce){
  nav .nav-link::before,
  nav .drop-btn::before,
  .actions .header-action::before{
    animation:none !important;
  }
}

/* === Mobile Feinschliff: Behandlungen zugeklappt + Header-Icons mittig === */
@media(max-width:980px){
  /* Kontakticons mobil nicht über volle Breite ziehen, sondern menschlich mittig setzen */
  .nav-zone .actions,
  .actions{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:12px !important;
    width:100% !important;
    margin:2px auto 0 !important;
  }
  .nav-zone .header-action,
  .actions .header-action{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    flex:0 0 52px !important;
    padding:0 !important;
  }

  /* Behandlungen mobil zuerst geschlossen – Nutzer klappt selbst auf */
  nav .drop{
    display:grid !important;
  }
  nav .drop .mega,
  nav .drop:hover .mega,
  nav .drop:focus-within .mega{
    display:none !important;
    position:static !important;
    width:100% !important;
    max-width:none !important;
    margin-top:8px !important;
    padding:10px !important;
    transform:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    box-shadow:none !important;
  }
  nav .drop.is-open .mega,
  nav .drop.is-open:hover .mega,
  nav .drop.is-open:focus-within .mega{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  nav .drop.is-open .drop-btn::after{
    transform:rotate(225deg) !important;
    margin-top:4px !important;
  }
}
@media(max-width:650px){
  .nav-zone .actions,
  .actions{
    gap:10px !important;
  }
  .nav-zone .header-action,
  .actions .header-action{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    flex-basis:50px !important;
  }
}

/* === FIX: Mobile-Behandlungen klappt per Tap zuverlässig auf (bis Header-Breakpoint 1120px) === */
@media(max-width:1120px){
  nav .drop{display:grid !important;}
  nav .drop .mega,
  nav .drop:hover .mega,
  nav .drop:focus-within .mega{
    display:none !important;
    position:static !important;
    transform:none !important;
    width:100% !important;
    max-width:none !important;
    margin-top:8px !important;
    padding:10px !important;
    border-radius:18px !important;
    box-shadow:none !important;
    border:1px solid rgba(16,24,40,.08) !important;
    background:#fff !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  nav .drop.is-open .mega,
  nav .drop.is-open:hover .mega,
  nav .drop.is-open:focus-within .mega{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  nav .drop .drop-btn{cursor:pointer !important;}
  nav .drop.is-open .drop-btn{
    background:#fff !important;
    color:var(--navy) !important;
    box-shadow:0 12px 26px rgba(16,22,111,.10) !important;
  }
  nav .drop.is-open .drop-btn::before{
    opacity:1 !important;
    animation:headerBorderFlow 4.8s linear infinite !important;
  }
  nav .drop.is-open .drop-btn::after{
    transform:rotate(225deg) !important;
    margin-top:4px !important;
  }
}


/* Instagram im Header – gleiche Button-Basis wie WhatsApp */
.header-instagram,
.actions .header-instagram{
  background:linear-gradient(135deg,#feda75 0%,#fa7e1e 24%,#d62976 52%,#962fbf 75%,#4f5bd5 100%) !important;
  color:#fff !important;
}
.actions .header-instagram:hover,
.actions .header-instagram:focus-visible{
  background:linear-gradient(135deg,#feda75 0%,#fa7e1e 24%,#d62976 52%,#962fbf 75%,#4f5bd5 100%) !important;
  color:#fff !important;
}

/* === Mobile Feinschliff: Unterseite Fußreflexzonenmassage === */
.page-foot-reflex .detail-hero h1{
  overflow-wrap:anywhere;
  hyphens:auto;
}

@media(max-width:980px){
  .page-foot-reflex .hero{
    padding:30px 0 18px !important;
  }
  .page-foot-reflex .detail-hero{
    gap:18px !important;
    align-items:center !important;
  }
  .page-foot-reflex .detail-hero > div{
    display:grid !important;
    justify-items:center !important;
    text-align:center !important;
  }
  .page-foot-reflex .eyebrow{
    margin-bottom:14px !important;
  }
  .page-foot-reflex .detail-hero h1{
    max-width:100% !important;
    margin:0 0 14px !important;
    font-size:clamp(32px,9vw,44px) !important;
    line-height:1.13 !important;
    letter-spacing:-.04em !important;
  }
  .page-foot-reflex .lead{
    max-width:34rem !important;
    margin:0 0 20px !important;
  }
  .page-foot-reflex .hero-actions{
    justify-content:center !important;
    margin-bottom:0 !important;
  }
  .page-foot-reflex .service-hero-icon{
    width:min(210px,58vw) !important;
    max-height:210px !important;
    margin:2px auto 0 !important;
  }
  .page-foot-reflex section{
    padding:34px 0 !important;
  }
  .page-foot-reflex .treatment-detail{
    gap:14px !important;
  }
  .page-foot-reflex .panel{
    padding:22px !important;
    border-radius:24px !important;
  }
  .page-foot-reflex .panel h2{
    font-size:clamp(26px,7vw,36px) !important;
    line-height:1.12 !important;
  }
  .page-foot-reflex .detail-grid{
    gap:14px !important;
  }
  .page-foot-reflex .detail-box{
    padding:20px !important;
    border-radius:22px !important;
  }
  .page-foot-reflex .detail-box ul{
    padding-left:18px !important;
  }
  .page-foot-reflex .panel:last-child > div{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .page-foot-reflex .panel:last-child .service-pill{
    width:100% !important;
    min-height:44px !important;
    margin:0 !important;
    padding:10px 12px !important;
    white-space:normal !important;
    text-align:center !important;
    line-height:1.25 !important;
  }
}

@media(max-width:650px){
  .page-foot-reflex .container{
    width:min(calc(100% - 22px),var(--max)) !important;
  }
  .page-foot-reflex .hero{
    padding-top:28px !important;
  }
  .page-foot-reflex .detail-hero{
    gap:12px !important;
  }
  .page-foot-reflex .detail-hero h1{
    font-size:clamp(31px,9.4vw,40px) !important;
    line-height:1.13 !important;
    letter-spacing:-.035em !important;
  }
  .page-foot-reflex .grad{
    padding-bottom:.12em !important;
  }
  .page-foot-reflex .lead{
    font-size:15.5px !important;
    line-height:1.6 !important;
  }
  .page-foot-reflex .hero-actions{
    width:100% !important;
    gap:10px !important;
  }
  .page-foot-reflex .hero-actions .btn{
    width:100% !important;
  }
  .page-foot-reflex .service-hero-icon{
    width:min(176px,52vw) !important;
    max-height:176px !important;
  }
  .page-foot-reflex section{
    padding:24px 0 !important;
  }
  .page-foot-reflex .panel,
  .page-foot-reflex .detail-box{
    padding:18px !important;
    border-radius:20px !important;
  }
  .page-foot-reflex .panel h2{
    font-size:clamp(24px,7.3vw,31px) !important;
    margin-bottom:12px !important;
  }
  .page-foot-reflex .panel p{
    font-size:15px !important;
    line-height:1.65 !important;
  }
  .page-foot-reflex .detail-box h3{
    font-size:18px !important;
    margin-bottom:10px !important;
  }
  .page-foot-reflex .detail-box li{
    font-size:14.5px !important;
    line-height:1.6 !important;
    margin-bottom:4px !important;
  }
  .page-foot-reflex .panel:last-child > div{
    grid-template-columns:1fr !important;
  }
  .page-foot-reflex .panel:last-child .service-pill{
    min-height:42px !important;
    font-size:13px !important;
  }
}

@media(max-width:380px){
  .page-foot-reflex .detail-hero h1{
    font-size:30px !important;
  }
  .page-foot-reflex .service-hero-icon{
    width:150px !important;
    max-height:150px !important;
  }
}

/* Google Rezension CTA */
.review-cta-section{
  padding:30px 0 18px;
}
.review-cta-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:26px 28px;
  border-radius:30px;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,251,255,.78));
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--shadow-soft);
}
.review-cta-card::before{
  content:"";
  position:absolute;
  inset:auto -70px -110px auto;
  width:250px;
  height:250px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(236,11,120,.11),rgba(22,182,223,.16));
  z-index:-1;
}
.review-cta-card::after{
  content:"";
  position:absolute;
  inset:-90px auto auto -90px;
  width:210px;
  height:210px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,157,0,.12),rgba(53,184,102,.10));
  z-index:-1;
}
.review-cta-copy{
  max-width:740px;
}
.review-cta-eyebrow{
  margin-bottom:12px;
}
.review-cta-card h2{
  margin:0 0 8px;
  font-size:clamp(26px,3vw,40px);
  line-height:1.08;
  letter-spacing:-.035em;
  color:var(--navy);
}
.review-cta-card p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.65;
}
.review-cta-button{
  flex:0 0 auto;
  box-shadow:0 16px 34px rgba(16,22,111,.20);
}
@media(max-width:980px){
  .review-cta-section{
    padding:24px 0 12px;
  }
  .review-cta-card{
    display:grid;
    justify-items:start;
    padding:22px;
    border-radius:26px;
  }
}
@media(max-width:650px){
  .review-cta-card{
    padding:20px;
    border-radius:22px;
  }
  .review-cta-card h2{
    font-size:clamp(24px,7.4vw,32px);
  }
  .review-cta-card p{
    font-size:15px;
  }
  .review-cta-button{
    width:100%;
  }
}

/* Google Rezensionen Slideshow */
.google-reviews-section{
  padding:34px 0 18px;
}
.google-reviews-shell{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:28px;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(248,251,255,.76));
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--shadow-soft);
}
.google-reviews-shell::before{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-120px;
  width:310px;
  height:310px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(236,11,120,.10),rgba(22,182,223,.16));
  z-index:-1;
}
.google-reviews-shell::after{
  content:"";
  position:absolute;
  left:-96px;
  top:-105px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,157,0,.12),rgba(53,184,102,.10));
  z-index:-1;
}
.google-reviews-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:22px;
  margin-bottom:20px;
}
.google-reviews-eyebrow{
  margin-bottom:12px;
}
.google-reviews-head h2{
  margin:0 0 10px;
  max-width:760px;
  font-size:clamp(30px,4vw,48px);
  line-height:1.06;
  letter-spacing:-.04em;
  color:var(--navy);
}
.google-reviews-head p{
  margin:0;
  max-width:650px;
  color:var(--muted);
  font-size:16px;
  line-height:1.65;
}
.google-review-write{
  flex:0 0 auto;
  box-shadow:0 16px 34px rgba(16,22,111,.20);
}
.reviews-slider{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
}
.reviews-track{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.review-card{
  position:relative;
  min-height:238px;
  padding:22px;
  border-radius:26px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(16,24,40,.08);
  box-shadow:0 16px 34px rgba(16,24,40,.07);
  transition:opacity .28s ease, transform .28s ease, box-shadow .28s ease;
}
.review-card::before{
  content:"“";
  position:absolute;
  right:18px;
  top:8px;
  color:rgba(236,11,120,.12);
  font-size:82px;
  line-height:1;
  font-family:Georgia,serif;
}
.review-card.is-active{
  transform:translateY(-3px);
  box-shadow:0 22px 48px rgba(16,22,111,.12);
}
.review-stars{
  color:var(--orange);
  letter-spacing:.08em;
  font-size:16px;
  font-weight:900;
  margin-bottom:14px;
}
.review-card p{
  position:relative;
  z-index:1;
  margin:0;
  color:#475467;
  font-size:15.5px;
  line-height:1.66;
}
.review-card footer{
  margin-top:16px;
  color:var(--navy);
  font-weight:900;
  font-size:13px;
}
.reviews-nav{
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(16,24,40,.08);
  background:#fff;
  color:var(--navy);
  box-shadow:0 12px 26px rgba(16,24,40,.08);
  cursor:pointer;
  transition:.22s ease;
  font-size:28px;
  line-height:1;
}
.reviews-nav:hover,
.reviews-nav:focus-visible{
  transform:translateY(-2px);
  color:#fff;
  background:linear-gradient(135deg,var(--pink),var(--navy));
}
.reviews-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:18px;
}
.reviews-dots button{
  width:9px;
  height:9px;
  border-radius:999px;
  border:0;
  padding:0;
  background:rgba(16,22,111,.20);
  cursor:pointer;
  transition:.22s ease;
}
.reviews-dots button.is-active{
  width:28px;
  background:linear-gradient(135deg,var(--pink),var(--cyan));
}
@media(max-width:1180px){
  .reviews-track{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .review-card:nth-child(n+3){
    display:none;
  }
}
@media(max-width:980px){
  .google-reviews-section{
    padding:26px 0 14px;
  }
  .google-reviews-shell{
    padding:22px;
    border-radius:28px;
  }
  .google-reviews-head{
    display:grid;
    align-items:start;
  }
  .google-review-write{
    width:100%;
  }
}
@media(max-width:650px){
  .google-reviews-shell{
    padding:20px;
    border-radius:24px;
  }
  .google-reviews-head h2{
    font-size:clamp(26px,8vw,34px);
  }
  .reviews-slider{
    grid-template-columns:1fr;
  }
  .reviews-nav{
    display:none;
  }
  .reviews-track{
    grid-template-columns:1fr;
  }
  .review-card{
    display:none;
    min-height:0;
    padding:20px;
    border-radius:22px;
  }
  .review-card.is-active{
    display:block;
  }
  .review-card p{
    font-size:15px;
  }
}

/* Therapeutische Leistungen: aufklappbare Chips ohne Weiterleitung */
.service-accordion-list{
  align-items:start;
}
.service-accordion-list .service-accordion{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 10px 24px rgba(16,24,40,.055);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}
.service-accordion-list .service-accordion::before{
  content:"";
  position:absolute;
  inset:0;
  padding:2px;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--pink),var(--orange),var(--green),var(--cyan),var(--navy),var(--pink));
  background-size:280% 100%;
  opacity:0;
  transition:opacity .22s ease;
  pointer-events:none;
  z-index:1;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
}
.service-accordion-list .service-accordion:hover,
.service-accordion-list .service-accordion:focus-within,
.service-accordion-list .service-accordion[open]{
  transform:translateY(-2px);
  box-shadow:0 18px 38px rgba(16,22,111,.12);
  border-color:transparent;
}
.service-accordion-list .service-accordion:hover::before,
.service-accordion-list .service-accordion:focus-within::before,
.service-accordion-list .service-accordion[open]::before{
  opacity:1;
  animation:headerBorderFlow 4.8s linear infinite;
}
.service-accordion-list summary{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:48px;
  padding:12px 14px;
  color:var(--ink);
  font-weight:780;
  cursor:pointer;
  list-style:none;
}
.service-accordion-list summary::-webkit-details-marker{
  display:none;
}
.service-accordion-list summary::after{
  content:"";
  width:9px;
  height:9px;
  flex:0 0 9px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .22s ease;
  opacity:.72;
}
.service-accordion-list .service-accordion[open] summary::after{
  transform:rotate(225deg) translateY(-1px);
}
.service-accordion-list .service-accordion p{
  position:relative;
  z-index:2;
  margin:0;
  padding:0 14px 14px;
  color:#5d6877;
  font-size:14px;
  line-height:1.58;
}
@media(max-width:650px){
  .service-accordion-list summary{
    min-height:46px;
  }
}
