:root{--bg: #f4efe6;--surface: #fffaf2;--surface-2: #ebe4d6;--text: #1f2a26;--muted: #5d6a64;--line: #ddd3c2;--accent: #2f5d50;--accent-soft: #d6e4dc;--warm: #d9844a;--warm-soft: #f6dfcb;--figure: #e3d8c6;--figure-line: #cbbda6;--danger-bg: #fbe9e2;--danger-line: #e9b8a5;--serif: "Fraunces", Georgia, serif;--sans: "Inter", system-ui, -apple-system, sans-serif;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #14201c;--surface: #1b2a25;--surface-2: #22332d;--text: #e9ece6;--muted: #a3b0a9;--line: #2f413a;--accent: #8cc4ad;--accent-soft: #24433a;--warm: #eba06c;--warm-soft: #4a3424;--figure: #26372f;--figure-line: #3a5047;--danger-bg: #3a2620;--danger-line: #6b3f30;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--sans)}main,.top,.foot{max-width:1080px;margin:0 auto;padding:0 20px}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;margin:0}h2{font-size:clamp(1.5rem,3vw,2rem)}a{color:var(--accent)}.top{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:600}.lang{border:1px solid var(--line);background:var(--surface);color:var(--text);font:600 13px var(--sans);padding:7px 12px;border-radius:999px;cursor:pointer}.lang:hover{border-color:var(--accent)}.hero{padding:48px 0 32px;max-width:760px}.eyebrow{color:var(--warm);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:600;margin:0 0 12px}.hero h1{font-size:clamp(2.2rem,6vw,3.8rem);margin-bottom:18px}.lead{font-size:1.15rem;color:var(--muted);margin:0}section{margin-bottom:64px}.map-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.hint{margin:0;color:var(--muted);font-size:14px}.map-grid{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:32px;align-items:start}.figure-wrap{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px;position:sticky;top:16px}.figure{display:block;width:100%;max-height:70vh}.silhouette>*{fill:var(--figure);stroke:var(--figure-line);stroke-width:1.5}.spot{cursor:pointer;outline:none}.spot .dot{fill:var(--accent);stroke:var(--surface);stroke-width:2;transition:fill .2s}.spot .pulse{fill:var(--accent);opacity:.25;transform-box:fill-box;transform-origin:center;animation:pulse 2.4s ease-out infinite}.spot:hover .dot,.spot:focus-visible .dot,.spot.active .dot{fill:var(--warm)}.spot.active .pulse{fill:var(--warm);opacity:.4}.spot:focus-visible .dot{stroke:var(--text)}@keyframes pulse{0%{transform:scale(.8);opacity:.4}to{transform:scale(2);opacity:0}}.zone-list{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-wrap:wrap;gap:8px}.zone-list button{border:1px solid var(--line);background:var(--surface);color:var(--text);font:500 14px var(--sans);padding:8px 14px;border-radius:999px;cursor:pointer;transition:background .2s,border-color .2s}.zone-list button:hover{border-color:var(--accent)}.zone-list button.active{background:var(--accent);border-color:var(--accent);color:var(--surface)}.zone-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:28px;scroll-margin-top:16px}.zone-label{margin:0 0 6px;color:var(--warm);font-weight:600;font-size:14px}.zone-card h3{font-size:1.7rem;margin-bottom:8px}.zone-card h4{margin:20px 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.zone-card p{margin:0}.helps{margin:0;padding:0;list-style:none}.helps li{position:relative;padding-left:24px;margin:6px 0}.helps li:before{content:"";position:absolute;left:4px;top:.6em;width:8px;height:8px;border-radius:50%;background:var(--accent)}.doctor{margin-top:22px;padding:16px 18px;border-radius:16px;background:var(--danger-bg);border:1px solid var(--danger-line)}.doctor h4{margin-top:0}.note{margin:24px 0 0;padding:18px 20px;border-left:3px solid var(--warm);background:var(--warm-soft);border-radius:0 12px 12px 0;max-width:860px}.principles h2{margin-bottom:24px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.principle{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px}.principle .num{font-family:var(--serif);color:var(--warm);font-size:1.4rem}.principle h3{font-size:1.25rem;margin:8px 0}.principle p{margin:0;color:var(--muted)}.breath{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;background:var(--accent-soft);border-radius:28px;padding:40px}.breath-text p{color:var(--muted);margin:12px 0 24px}.btn{border:0;background:var(--accent);color:var(--surface);font:600 15px var(--sans);padding:12px 26px;border-radius:999px;cursor:pointer}.btn:hover{filter:brightness(1.08)}.breath-visual{display:grid;place-items:center;min-height:260px}.breath-circle{width:220px;height:220px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--surface),var(--accent-soft) 70%);border:2px solid var(--accent);display:grid;place-content:center;text-align:center;transform:scale(.65);transition:transform 1s ease}.breath-circle span{font-family:var(--serif);font-size:1.5rem;font-weight:600}.breath-circle small{color:var(--muted);font-variant-numeric:tabular-nums}.breath-circle.inhale{transform:scale(1);transition:transform 4s ease-in-out}.breath-circle.exhale{transform:scale(.65);transition:transform 6s ease-in-out}@media(prefers-reduced-motion:reduce){.spot .pulse{animation:none}.breath-circle,.breath-circle.inhale,.breath-circle.exhale{transition-duration:.01s}}.disclaimer{border:1px solid var(--line);border-radius:20px;padding:24px 28px}.disclaimer h2{font-size:1.3rem;margin-bottom:8px}.disclaimer p{margin:0;color:var(--muted)}.foot{padding-top:8px;padding-bottom:40px;color:var(--muted);font-size:14px}@media(max-width:760px){main,.top,.foot{padding:0 16px}.hero{padding:28px 0 24px}.map-grid,.breath,.principle-grid{grid-template-columns:1fr}.figure-wrap{position:static;max-width:300px;margin:0 auto;padding:16px}.figure{max-height:420px}.zone-card{padding:22px}.breath{padding:28px 22px}.breath-visual{min-height:220px}.breath-circle{width:190px;height:190px}}
