:root{--bg:#faf6f1;--ink:#2b2321;--rose:#c9897a;--sage:#8a9a85;--muted:#6f6560;--card:#fff}
*{box-sizing:border-box}body{margin:0;font-family:"Jost",system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;letter-spacing:.01em}
a{color:var(--rose)}nav{display:flex;justify-content:space-between;align-items:center;padding:22px 6vw}
.logo{font-family:"Cormorant Garamond",serif;font-size:1.6rem;color:var(--ink);text-decoration:none}
nav .links a{margin-left:22px;color:var(--ink);text-decoration:none;font-size:.95rem}
.hero{padding:9vh 6vw 10vh;background:radial-gradient(circle at 80% 20%,#f1dcd3 0,transparent 55%),radial-gradient(circle at 10% 90%,#e3e8dd 0,transparent 50%)}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.05;margin:0 0 18px;max-width:14ch}
.hero p{max-width:54ch;font-size:1.15rem;color:var(--muted)}
.btn{display:inline-block;padding:15px 30px;border-radius:40px;background:var(--ink);color:#fff;border:0;font:inherit;cursor:pointer;text-decoration:none;margin:8px 10px 0 0}
.btn.alt{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.note{font-size:.85rem;color:var(--muted);margin-top:18px}
section{padding:70px 6vw}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.card{background:var(--card);border-radius:18px;padding:28px;box-shadow:0 8px 30px rgba(60,40,30,.06)}
.price{font-family:"Cormorant Garamond",serif;font-size:2.4rem}footer{padding:40px 6vw;font-size:.85rem;color:var(--muted);border-top:1px solid #e8e0d8}
table{border-collapse:collapse;width:100%}td,th{padding:10px;border-bottom:1px solid #e8e0d8;text-align:left}
.doc{max-width:760px;margin:auto}

.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;align-items:center}
.claire{margin:0;justify-self:center}.claire img{width:min(380px,34vw);aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border-radius:200px 200px 24px 24px;box-shadow:0 30px 60px rgba(90,60,50,.18);display:block}
.claire figcaption{text-align:center;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:14px}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr}.claire{order:-1}.claire img{width:220px}}
.helps{background:linear-gradient(180deg,#f6ede7,#faf6f1)}.step{font-family:"Cormorant Garamond",serif;font-size:2rem;color:var(--rose)}
.steps{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}

.gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.gal figure{margin:0}.gal img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px;box-shadow:0 14px 34px rgba(90,60,50,.12)}.gal figcaption{text-align:center;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:10px}
.picker{background:linear-gradient(180deg,#faf6f1,#f3ece6)}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.chips button{font:inherit;padding:11px 20px;border-radius:30px;border:1px solid var(--ink);background:#fff;color:var(--ink);cursor:pointer;min-height:44px}.chips button[aria-checked=true]{background:var(--ink);color:#fff}.chips button:focus-visible,.quiz input:focus-visible,.btn:focus-visible{outline:3px solid var(--rose);outline-offset:2px}
.quiz fieldset{border:0;padding:0;margin:0 0 16px}.quiz legend{font-weight:500;margin-bottom:6px}.quiz label{display:block;padding:6px 0}.routine{max-width:640px;margin-top:10px}.routine ol{padding-left:1.2em}.tier{font-family:Jost,sans-serif;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;background:#e3e8dd;padding:3px 10px;border-radius:20px;vertical-align:middle}

.getapp{padding-top:30px;padding-bottom:30px}.appcard{display:flex;gap:22px;align-items:center;max-width:720px;margin:auto}.appcard img{border-radius:50%;flex:none}.appcard h2{margin:0 0 4px}
@media(max-width:600px){.appcard{flex-direction:column;text-align:center}nav{flex-wrap:wrap;gap:8px}nav .links a{margin:0 14px 0 0}section{padding:50px 5vw}.chips button{flex:1 1 40%}}
#chatDlg{max-width:520px;width:92vw;border:0;border-radius:18px;padding:1.2rem}#chatDlg::backdrop{background:rgba(0,0,0,.35)}#chatLog{max-height:50vh;overflow:auto;margin:.6rem 0}#chatLog p{margin:.4rem 0}#chatLog .me{text-align:right}#chatForm{display:flex;gap:.4rem;flex-wrap:wrap}#chatIn{flex:1;min-width:0;padding:.6rem;border:1px solid #ddd;border-radius:10px;font:inherit}
.btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}
.mirror .consent,.mirror .zipl{display:block;margin:.6rem 0}.mirror .zipl input{margin-left:.4rem;width:6rem;padding:.4rem;border:1px solid #ddd;border-radius:8px}.mirbtns{display:flex;gap:.5rem;flex-wrap:wrap;margin:.6rem 0}#mirVideo{width:100%;max-width:420px;border-radius:16px;transform:scaleX(-1);background:#000}#mirOut .obs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.4rem;margin:.6rem 0}#mirOut .obs div{background:#faf6f1;border-radius:10px;padding:.5rem}#mirOut .warn{background:#fff1ee;border-left:4px solid #c0533e;padding:.6rem;border-radius:8px}label.btn[aria-disabled=true]{opacity:.5;pointer-events:none}
#mirPrev{display:block;max-width:240px;width:60%;border-radius:14px;margin:.6rem 0}.mirbad{background:#fff6ec;border:1px solid #f0cfa8;border-radius:12px;padding:.8rem 1rem;margin:.6rem 0}.mirbad p{margin:0 0 .6rem}
#mirPrev[hidden]{display:none}
.signin{margin-top:1rem}.signin form{display:flex;gap:.5rem;flex-wrap:wrap}.signin input{flex:1;min-width:200px;padding:.6rem;border:1px solid #ddd;border-radius:10px;font:inherit}
