/* Kannikar Thai Massage – Stile aus dem Entwurf V3 „Klassisch“ (Nikreative) */
:root{--bg:#FBB1B5;--sheet:#FDD3D5;--rot:#640718;--rot2:#96080F;--text:#1c1c1c;--grau:#474747;--linie:#e9a2a8;--focus:#640718;--ax:#640718}
*{box-sizing:border-box}[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:70px}
body{margin:0;background:var(--bg) linear-gradient(90deg,#f9a8ad 0,#fcc3c6 22%,#fcc3c6 78%,#f9a8ad 100%) fixed;color:var(--text);font:16px/1.55 Arial,Helvetica,sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--rot2);hyphens:none;-webkit-hyphens:none}a:hover{color:#C20F30}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--rot);padding:10px 14px;z-index:100;font-weight:bold}.skip:focus{left:8px}
.sheet{max-width:900px;margin:0 auto;background:var(--sheet);box-shadow:0 0 0 1px rgba(255,255,255,.5),0 0 40px rgba(150,8,15,.12);min-height:100vh}
/* Menü wie bisher: fett, Großbuchstaben, dunkelrot, mit Trennstrichen */
.nav{position:sticky;top:0;z-index:20;background:var(--sheet);border-bottom:1px solid rgba(100,7,24,.12)}
.nav ul{list-style:none;margin:0;padding:6px 4px;display:flex;flex-wrap:nowrap;justify-content:center;white-space:nowrap}
.nav li+li::before{content:"|";color:#66050A;opacity:.7;padding:0 2px}
.nav a{display:inline-block;padding:6px 7px;font:bold 11.5px/1.2 Arial,Helvetica,sans-serif;text-transform:uppercase;color:#66050A;text-decoration:none;border-radius:3px}
.nav a:hover{color:#1C1C1C;background:rgba(255,255,255,.45)}
.nav a[aria-current="page"]{color:#0E0103;background:rgba(255,255,255,.7)}
.mb{display:none}
/* Kopf mit dem bekannten Blumenbild */
.kopf{margin:0 13px;height:225px;background:#f66970 var(--kopf) left center/cover no-repeat;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 16px}
.kopf .name{font:bold 31px/1.15 "Times New Roman",Georgia,Times,serif;text-transform:uppercase;color:#474747;margin:0;text-decoration:none;letter-spacing:.01em}
.kopf .slogan{font:bold 15px/1.3 Arial,Helvetica,sans-serif;text-transform:uppercase;color:#474747;margin-top:2px}
.kopf .orte{margin-top:12px;font:bold 12px/1.3 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#5a1a1f;background:rgba(255,255,255,.35);padding:5px 12px;border-radius:2px}
main{padding:22px 33px 30px}
/* Seitenüberschrift mit dem roten Punkt */
.ph{display:flex;align-items:center;gap:10px;margin:.3em 0 1.1em;font:bold 26px/1.2 "Times New Roman",Georgia,Times,serif;text-transform:uppercase;color:var(--rot)}
.ph::before{content:"";flex:0 0 26px;height:26px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAC2klEQVRIS72W60sUYRTG6/PuFhEREUEEmW2m2E1F1qJE7CaJ2E0UMQpZDCOKtoiC/oqlKIqCKGoLoigKy8o0TUst2/9iPwl+sdN5zrxneWdnZ3YUauFhl53Lb57znPc9s/TP/PyS//IBKEhPo/FaVoqVYWVZs0b4jf9wrLbUfXwhfHGClWbl7kc30b2II/x+GC2nx9HN9Cwap+exOOEcc27CD1gUxBcl8fR3ImV0K7KRbvP3XdYDA3liIC9iW+hVrILesF6zjONkMZgHxCdfZs3dZAAUBMHN38a20sDyKvqwaocI1+IehTAXyDhZFGRwbR19Wt8gMjCXszzIZJJFqcI4eWc5Ucjnsn30paKZ8G3KmM/MBqWRg0IQvJ0JQkcmKFcQZLj6MI3sPKLO0lpCAZkWzmnwCnnE3YXgCyHvV1RLHoVOAPla00qj9e00mjiq3Sitr6AUnh7Bh4Ks3hUIGdtzksabutRVygZldK0AaDt5aZVLnARB2IVCJg6dkhJiUdugLEBhIB/X1cuTavD5cjHk294OcQLIj9ZeGm/ulqawQbMK4QOSCZxgISJ4dSKQDbtDQSaPnSUI25ULhHKFgQyVN0oLe5zw06sTAKY6ztF053kPCBuky8nAskqPE4FU7g8F+dl9kSbb+zyly9jlCoKMbG9xWlgzYSffW05LJnACF4D8OnNF8ipshhRAyEQgK7dJd2km6mQhkJnkNRquOgiQq70xc3ISPEMG19QUh9S1eZ20JT1OAJnpvepdsGZ3SMNREGSs4bjTwlouH0i2/4achxnl2oIMCIMuCxBa2FUudiKQxs7ikJ5LkgmcADLddcF/UzUwDLw5gNBdkokPZOpEvxO8gfzuuy4QAAPHhFrUwTcUb3JBJg70ON3F5fKDGCelB58Fk1EOZyhZKQiCN5lgPYYb5RYs/3ICINYOgOKGM8BiRFNgh1j0y4k9782s+nevW6Xe0xZ6/C+ENdpt9WCEigAAAABJRU5ErkJggg==) center/contain no-repeat}
.ph2{margin-top:2em!important;font:bold 22px/1.2 "Times New Roman",Georgia,Times,serif!important;color:var(--rot)!important;text-transform:uppercase}
h3{font:bold 19px/1.3 Arial,Helvetica,sans-serif;text-transform:uppercase;color:#2a2a2a;margin:1.9em 0 .7em}
.page>h3:first-of-type,.mas:first-child h3{margin-top:.4em}
p{margin:0 0 .85em;text-align:justify;hyphens:auto;-webkit-hyphens:auto}
p.wichtig{text-align:center;margin-top:2em;padding:14px;border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.zoom{display:block;cursor:zoom-in}
.zoom img{border:1px solid #C7C7C7;background:#fff}
.pics{display:grid;gap:18px;margin:26px 0 8px}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:14px 0 22px}
.gal figure,.mimg,.one{margin:0}.gal img{aspect-ratio:4/3;object-fit:cover;width:100%}
.gal figcaption{font-size:14px;text-align:center;margin-top:5px;color:#333}
.one{max-width:560px;margin:10px 0 22px}
.mas{overflow:hidden;padding-bottom:6px}
.mimg{float:right;width:min(300px,42%);margin:4px 0 12px 22px}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}
.quick a{font:bold 13px/1 Arial,sans-serif;text-transform:uppercase;text-decoration:none;color:#66050A;background:rgba(255,255,255,.6);border:1px solid var(--linie);padding:11px 14px;border-radius:3px}
.quick a:hover{background:#fff;color:#1c1c1c}
.telbox{margin:0 0 22px;padding:16px 18px;background:rgba(255,255,255,.7);border:1px solid var(--linie);border-left:4px solid #66050A;border-radius:3px}
.telbox__t{margin:0 0 8px;font:bold 13px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#66050A}
.telbox__n{display:flex;flex-wrap:wrap;gap:6px 28px;margin:0}
.telbox__n a{font:bold 22px/1.3 Arial,sans-serif;color:#1c1c1c;text-decoration:none;white-space:nowrap}
.telbox__n a span{display:block;font-size:12px;font-weight:normal;text-transform:uppercase;letter-spacing:.06em;color:#66050A}
.telbox__n a:hover{color:#66050A}
.tw{overflow-x:auto;margin:12px 0 20px}
.tab{border-collapse:collapse;width:100%;background:rgba(255,255,255,.35)}
.tab th,.tab td{border:1px solid #B5B5B5;padding:8px 10px;text-align:left;vertical-align:top}
.tab thead th{text-align:center;background:rgba(255,255,255,.55)}
.preise td{text-align:center;white-space:nowrap}.preise tbody th{font-weight:normal}
.tab .leer{text-align:center;color:#555;font-style:italic}
.bul{padding-left:1.2em}.bul li{margin:.2em 0}.bul li::marker{color:var(--rot2)}
.box{background:rgba(255,255,255,.45);border:1px solid var(--linie);padding:4px 18px 8px;margin:24px 0}
.box h3{margin-top:.8em}.big{font-size:20px;font-weight:bold;color:var(--rot)}
.adrs{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.adr{background:rgba(255,255,255,.45);border:1px solid var(--linie);padding:4px 18px 6px}
.adr h3{margin-top:.8em}.adr p{text-align:left}.ein{color:#555}
.route{font-weight:bold;text-transform:uppercase;font-size:13px}
.note{font-size:14px;background:#fff6e0;border:1px dashed #c9a24a;padding:10px 12px;text-align:left}
footer{border-top:1px solid rgba(100,7,24,.15);margin:0 13px;padding:18px 20px 90px;text-align:center;font-size:13px;color:#4a2a2d}
footer nav{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;margin-bottom:8px}
footer a{color:#66050A}

/* Bild groß */
.lb{position:fixed;inset:0;z-index:95;background:rgba(30,5,8,.88);display:none;align-items:center;justify-content:center;padding:16px;cursor:zoom-out}
.lb.on{display:flex}.lb img{max-height:92vh;width:auto;border:3px solid #fff}
.lb button{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;font-size:24px;cursor:pointer}


@media (max-width:760px){
 body{font-size:16.5px}
 .nav ul{display:none;flex-direction:column;padding:4px 0 10px}.nav.open ul{display:flex}
 .nav li+li::before{display:none}
 .nav a{display:block;padding:13px 20px;font-size:14px;border-radius:0;border-top:1px solid rgba(100,7,24,.08)}
 .mb{display:flex;width:100%;align-items:center;justify-content:space-between;padding:12px 16px;background:none;border:0;font:bold 14px Arial,sans-serif;text-transform:uppercase;color:#66050A;cursor:pointer}
 .mb span.i{width:22px;height:2px;background:#66050A;position:relative}.mb span.i::before,.mb span.i::after{content:"";position:absolute;left:0;width:22px;height:2px;background:#66050A}
 .mb span.i::before{top:-7px}.mb span.i::after{top:7px}
 .kopf{margin:0;height:170px}.kopf .name{font-size:24px}.kopf .slogan{font-size:13px}.kopf .orte{font-size:10.5px}
 main{padding:18px 16px 24px}
 .ph{font-size:22px}.ph::before{flex-basis:22px;height:22px}
 h3{font-size:17px}
 p{text-align:left}
 .mimg{float:none;width:100%;margin:6px 0 14px}
 .adrs{grid-template-columns:1fr}
 .gal{grid-template-columns:1fr 1fr;gap:10px}
 /* Preisliste als Karten */
 .preise thead{display:none}.preise,.preise tbody,.preise tr{display:block}
 .preise tr{border:1px solid #B5B5B5;margin-bottom:10px;background:rgba(255,255,255,.4)}
 .preise tbody th{display:block;border:0;border-bottom:1px solid #d9a7ab;font-weight:bold}
 .preise td{display:inline-block;width:25%;border:0;padding:8px 2px;font-size:15px}
 .preise td::before{content:attr(data-l);display:block;font-size:11px;color:#666;text-transform:uppercase}
 footer{margin:0}
}
@media (max-width:400px){.gal{grid-template-columns:1fr}}
@media print{.nav,.ax-btn,}

/* Barrierefreiheit */
.ax-btn{position:fixed;left:16px;bottom:16px;z-index:90;width:52px;height:52px;border-radius:50%;border:2px solid #fff;cursor:pointer;display:grid;place-items:center;background:var(--ax,#111);color:#fff;box-shadow:0 10px 30px -10px rgba(0,0,0,.5);transition:transform .3s}
.ax-btn:hover{transform:scale(1.07)}.ax-btn svg{width:26px;height:26px}
.ax{position:fixed;left:16px;bottom:80px;z-index:91;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 100px);overflow:auto;padding:20px;border-radius:18px;background:#fff;color:#111;box-shadow:0 30px 70px -20px rgba(0,0,0,.45);font:15px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;text-align:left}
.ax[hidden]{display:none}.ax h2{font:700 17px/1.2 system-ui,sans-serif;margin:0;color:#111;letter-spacing:0;text-transform:none}
.ax-hd{display:flex;justify-content:space-between;align-items:center}.ax-hd button{width:36px;height:36px;border-radius:50%;border:0;background:#f0f0f0;font-size:22px;cursor:pointer;color:#111}
.ax-sz{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:10px 12px;border-radius:12px;background:#f3f3f3;font-weight:600}
.ax-sz div{display:flex;gap:8px;align-items:center}.ax-sz button{width:40px;height:40px;border-radius:10px;border:0;background:var(--ax,#111);color:#fff;font:700 14px system-ui,sans-serif;cursor:pointer}.ax-sz output{min-width:48px;text-align:center}
.ax-gr{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.ax-gr button{padding:12px;border-radius:12px;border:2px solid #e3e3e3;background:#fff;color:#111;font:600 13.5px/1.25 system-ui,sans-serif;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:6px}
.ax-gr button b{font-size:17px;color:var(--ax,#111)}.ax-gr button[aria-pressed="true"]{border-color:var(--ax,#111);background:#f5f5f5;box-shadow:inset 0 0 0 1px var(--ax,#111)}
.ax-rs{width:100%;margin-top:10px;height:42px;border-radius:12px;border:0;background:#f0f0f0;font:600 14px system-ui,sans-serif;cursor:pointer;color:#111}
.ax-note{font-size:12.5px;opacity:.7;margin:10px 0 0}
.ax-link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;display:inline-flex;align-items:center;gap:.4em}
.ax-link svg{width:1.1em;height:1.1em}
html.ax-kontrast body{filter:contrast(1.25)}html.ax-kontrast body *{text-shadow:none!important}
html.ax-grau body{filter:grayscale(1)}html.ax-kontrast.ax-grau body{filter:grayscale(1) contrast(1.25)}
html.ax-links a{text-decoration:underline!important;text-underline-offset:3px;outline:2px dashed currentColor;outline-offset:2px}
html.ax-schrift body,html.ax-schrift body *:not(svg):not(path){font-family:Verdana,Tahoma,system-ui,sans-serif!important;letter-spacing:.01em!important;font-style:normal!important}
html.ax-abstand p,html.ax-abstand li,html.ax-abstand dd{line-height:2!important;letter-spacing:.03em!important;word-spacing:.08em}
html.ax-ruhe *,html.ax-ruhe *::before,html.ax-ruhe *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.ax-ruhe .fx{opacity:1!important;transform:none!important}
html.ax-cursor,html.ax-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M4 2l28 15-12 3-6 13z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 4 2,auto!important}
html.ax-fokus :focus{outline:4px solid #ffbf00!important;outline-offset:3px!important}
@media print{.ax-btn,.ax{display:none!important}}
html.ax-cursor,html.ax-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M4 2l28 15-12 3-6 13z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 4 2,auto!important}
html.ax-fokus :focus{outline:4px solid #ffbf00!important;outline-offset:3px!important}
/* ---------- WordPress: echte Seiten statt Abschnitte, h2 wie Zwischenüberschriften im Entwurf ---------- */
.page h2:not(.ph):not(.ph2){font:bold 19px/1.3 Arial,Helvetica,sans-serif;text-transform:uppercase;color:#2a2a2a;margin:1.9em 0 .7em}
.page>h2:not(.ph):not(.ph2):first-of-type,.page>.ph+h2,.mas:first-of-type h2,.box h2:not(.ph),.adr h2:not(.ph){margin-top:.8em!important}
.page>.ph+h2{margin-top:.4em!important}
.wichtig{margin-top:2em;padding:14px;border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
.wichtig p{text-align:center;margin:0}
.pics .zoom img,.gal img,.one img,.mimg img{width:100%}
.ax-btn{display:none!important}
@media (max-width:760px){.page h2:not(.ph):not(.ph2){font-size:17px}}
/* Inhalte aus dem Seiten-Editor (Impressum, Datenschutz) */
.page ul:not(.bul){padding-left:1.2em}
.page .wp-block-image img{height:auto}
