
:root{--blue:#285f82;--blue2:#14384f;--gold:#c69a52;--light:#f5fbff;--text:#20313d;--white:#fff;--shadow:0 22px 55px rgba(20,56,79,.16);--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}.serif,h1,h2,h3{font-family:Georgia,"Times New Roman",serif}.container{width:min(1160px,92%);margin:auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);box-shadow:0 6px 25px rgba(0,0,0,.06)}.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--blue2);font-weight:800}.brand img{width:34px;height:34px}.menu{display:flex;gap:22px;align-items:center}.menu a{color:var(--blue2);text-decoration:none;font-weight:650}.hamb{display:none;border:0;background:var(--blue);color:#fff;border-radius:10px;padding:9px 12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:#fff!important;padding:13px 22px;border-radius:999px;text-decoration:none;font-weight:800;box-shadow:0 12px 28px rgba(198,154,82,.26);border:0;cursor:pointer}.btn.blue{background:var(--blue)}.hero{min-height:760px;background:linear-gradient(90deg,rgba(20,56,79,.72),rgba(40,95,130,.20)),url('../images/aufmacherbild-tcm-tuina-massage.png') center/cover no-repeat;display:grid;align-items:center;color:#fff}.hero h1{font-size:clamp(38px,6vw,76px);line-height:1.05;margin:0 0 18px}.hero p{font-size:clamp(18px,2vw,24px);max-width:760px}.hero-card{background:rgba(255,255,255,.16);backdrop-filter:blur(9px);padding:36px;border:1px solid rgba(255,255,255,.24);border-radius:var(--radius);max-width:820px}.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.section{padding:92px 0}.section.alt{background:linear-gradient(180deg,#f7fbff,#fff)}.eyebrow{color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.12em}.section h2{font-size:clamp(32px,4vw,52px);line-height:1.12;margin:6px 0 18px;color:var(--blue2)}.lead{max-width:820px;font-size:18px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;border:1px solid #e8f1f5}.card img{width:100%;height:220px;object-fit:cover;display:block}.card-body{padding:26px}.card h3{font-size:25px;color:var(--blue2);margin:0 0 10px}.mini{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.mini div{background:#fff;border-radius:20px;padding:24px;box-shadow:var(--shadow);border-left:5px solid var(--gold)}.price-wrap{overflow:auto;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:10px}table{width:100%;border-collapse:collapse;min-width:680px}th{background:var(--blue);color:#fff;text-align:left;padding:18px;font-size:18px}td{padding:17px 18px;border-bottom:1px solid #e8f1f5}tr:nth-child(even) td{background:#f7fbff}.price,.priceNormal{font-weight:900;font-size:20px}.price30{color:#d71920}.priceNormal{color:var(--blue2)}.more-text{display:none;margin-top:14px;padding-top:14px;border-top:1px solid #e8f1f5}.more-text.open{display:block}.text-call{display:inline-block;margin-top:8px;color:var(--blue);font-weight:800;text-decoration:none}.contact{background:linear-gradient(135deg,var(--blue2),var(--blue));color:#fff;border-radius:34px;padding:46px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}.map-box{border-radius:24px;background:#f4f8fb;padding:26px;text-align:center;border:1px solid #dbe9ef}.map-frame{width:100%;height:360px;border:0;border-radius:24px}.footer{background:#102d40;color:#dcebf3;padding:42px 0}.footer a{color:#fff}.footgrid{display:flex;gap:22px;justify-content:space-between;flex-wrap:wrap}.legal{max-width:920px}.legal h1{color:var(--blue2)}.legal pre{white-space:pre-wrap;font-family:inherit}.cookie{position:fixed;left:20px;right:20px;bottom:20px;z-index:99;background:#fff;border-radius:22px;box-shadow:0 25px 70px rgba(0,0,0,.2);padding:22px;display:none}.cookie.show{display:block}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.toggle{display:flex;gap:9px;align-items:center;margin:12px 0}@media(max-width:900px){.grid,.mini,.contact{grid-template-columns:1fr}.menu{position:absolute;left:0;right:0;top:62px;background:#fff;display:none;flex-direction:column;padding:20px}.menu.open{display:flex}.hamb{display:block}.hero{min-height:660px}.hero-card{padding:26px}.section{padding:64px 0}}@media(max-width:560px){.cta-row .btn{width:100%}.card img{height:190px}.contact{padding:28px}}

.card .image-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden}.card .image-button img{transition:transform .45s ease}.card:hover .image-button img{transform:scale(1.06)}.more-text{max-height:0;overflow:hidden;display:block;opacity:0;transition:max-height .45s ease,opacity .35s ease;margin-top:0;padding-top:0;border-top:0}.more-text.open{max-height:520px;opacity:1;margin-top:14px;padding-top:14px;border-top:1px solid #e8f1f5}.lightbox{position:fixed;inset:0;background:rgba(16,45,64,.88);z-index:120;display:none;align-items:center;justify-content:center;padding:24px}.lightbox.open{display:flex}.lightbox img{max-width:min(1100px,94vw);max-height:86vh;border-radius:24px;box-shadow:0 25px 80px rgba(0,0,0,.35);object-fit:contain}.lightbox-close{position:absolute;right:28px;top:24px;background:#fff;color:var(--blue2);border:0;border-radius:999px;width:44px;height:44px;font-size:30px;line-height:1;cursor:pointer}.card img{aspect-ratio:16/10;height:230px;object-fit:cover}

/* Final legal/link polish */
.legal-text{white-space:normal;line-height:1.75;font-size:1rem;color:#21313c}
.legal-text a,.legal a{color:#b91c1c;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.legal-text a:hover,.legal a:hover{text-decoration:underline}
.nav-call{display:inline-flex;align-items:center;gap:.35rem;padding:.62rem .9rem;border-radius:999px;background:#b91c1c;color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 10px 24px rgba(185,28,28,.22)}
@media(max-width:760px){.nav-call{display:none}.legal-text{font-size:.96rem}}

/* Öffnungszeiten Ergänzung */
.nav-hours{font-weight:700;color:#173553;text-decoration:none;background:rgba(255,255,255,.72);padding:10px 14px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.nav-hours:hover{color:#b31924;background:#fff}
.hero-hours{margin-top:18px;font-weight:800;color:#173553;background:rgba(255,255,255,.84);display:inline-block;padding:10px 16px;border-radius:999px;box-shadow:0 8px 26px rgba(0,0,0,.10)}
.opening-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:22px;padding:18px;margin:20px 0;backdrop-filter:blur(8px)}
.opening-card h3{color:#fff;margin-top:0}.hours-table{width:100%;border-collapse:collapse;color:#fff}.hours-table td{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.18)}.hours-table td:last-child{text-align:right;font-weight:700}.contact-link{color:#fff;text-decoration:underline;text-underline-offset:3px}.footer-hours{font-size:.92rem;opacity:.9;display:inline-block;margin-top:6px}
@media (max-width:980px){.nav-hours{display:inline-block;margin:8px 0}.hours-table td:last-child{text-align:left}.hours-table td{display:block;border-bottom:0;padding:3px 0}.hours-table tr{display:block;border-bottom:1px solid rgba(255,255,255,.18);padding:6px 0}}

/* Anpassungen: Adresse ohne Link, Öffnungszeiten und responsive Preistabelle */
.contact-address{color:#fff;text-decoration:none;font-weight:700;display:inline-block}.contact-link{color:#fff}.opening-card p{margin:0;color:#fff;font-weight:700}.nav-hours{font-size:.92rem}.price-wrap{overflow:visible}
@media (max-width:700px){
  .price-wrap{background:transparent;box-shadow:none;padding:0;overflow:visible}
  .price-wrap table{min-width:0;width:100%;border-collapse:separate;border-spacing:0 14px}
  .price-wrap thead{display:none}
  .price-wrap tr{display:block;background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:12px 16px;border:1px solid #e8f1f5}
  .price-wrap td{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #e8f1f5;background:transparent!important;text-align:right}
  .price-wrap td:last-child{border-bottom:0}
  .price-wrap td::before{content:attr(data-label);font-weight:800;color:var(--blue2);text-align:left}
}


/* Mobile Hero Korrektur */
.hero-card{overflow:visible}
.hero h1{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:560px){
  .hero{min-height:auto;padding:105px 0 56px;align-items:start;background-position:center top}
  .hero-card{padding:22px 18px;border-radius:22px;width:100%}
  .hero h1{font-size:34px;line-height:1.14;margin-bottom:14px}
  .hero p{font-size:16px;line-height:1.55}
  .cta-row{gap:12px;margin-top:20px}
  .hero-hours{display:block;width:100%;font-size:15px;line-height:1.45;border-radius:18px;padding:11px 14px;white-space:normal;color:#173553}
}
@media(max-width:380px){
  .hero h1{font-size:30px}
  .hero-card{padding:20px 14px}
}
