:root { color-scheme: light; font-family: Georgia, "Times New Roman", serif; --ink:#28312c; --sage:#c9d8c7; --cream:#f3f0e7; --orange:#df7657; }
* { box-sizing: border-box; }
body { margin:0; background:var(--cream); color:var(--ink); }
header, footer, section { width:min(1120px, calc(100% - 2rem)); margin-inline:auto; }
header { min-height:80px; display:flex; align-items:center; justify-content:space-between; }
.logo { color:var(--ink); font:700 1.35rem ui-sans-serif,system-ui; text-decoration:none; letter-spacing:-.04em; }
.logo span,.kicker { color:var(--orange); }
nav { display:flex; align-items:center; gap:1.5rem; font:500 .82rem ui-sans-serif,system-ui; }
nav a { color:inherit; text-decoration:none; }
button { font:inherit; cursor:pointer; }
.quiet { padding:.7rem 1rem; border:1px solid rgba(40,49,44,.25); border-radius:999px; background:transparent; color:inherit; }
.hero { min-height:720px; position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; overflow:hidden; }
.kicker { margin:0 0 1rem; font:700 .72rem ui-sans-serif,system-ui; letter-spacing:.13em; text-transform:uppercase; }
h1 { max-width:760px; margin:0; font-size:clamp(4rem,9vw,8.5rem); line-height:.82; letter-spacing:-.065em; font-weight:500; }
.lead { max-width:470px; margin:2rem 0; color:#68726c; font:400 1rem/1.7 ui-sans-serif,system-ui; }
.primary { min-height:50px; padding:.8rem 1.25rem; border:0; border-radius:999px; background:var(--ink); color:white; font:700 .85rem ui-sans-serif,system-ui; }
.breath { position:absolute; right:3%; width:min(38vw,390px); aspect-ratio:1; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 35% 30%,#e9eee4,var(--sage)); box-shadow:0 25px 90px rgba(74,98,81,.22); animation:breathe 8s ease-in-out infinite; }
.breath span { font:600 .72rem ui-sans-serif,system-ui; letter-spacing:.12em; text-transform:uppercase; }
@keyframes breathe { 50% { transform:scale(1.08); } }
.practice { padding:7rem 0; border-top:1px solid rgba(40,49,44,.18); }
h2 { margin:.3rem 0 2rem; font-size:clamp(2.5rem,5vw,4.5rem); font-weight:500; letter-spacing:-.05em; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.card { min-height:260px; padding:1.5rem; display:flex; flex-direction:column; align-items:flex-start; text-align:left; border:0; border-radius:1.5rem; background:#e5e8dc; color:var(--ink); }
.card:nth-child(2){background:var(--sage)} .card:nth-child(3){background:#ead2c2}
.card small { font:700 .7rem ui-sans-serif,system-ui; color:#69756d; }
.card strong { margin-top:auto; font-size:1.8rem; font-weight:500; }
.card span { margin-top:.5rem; font:400 .85rem ui-sans-serif,system-ui; color:#5b665f; }
.journal { padding:9rem 0; text-align:center; }
blockquote { max-width:850px; margin:1rem auto 2rem; font-size:clamp(2.5rem,6vw,5rem); line-height:1; letter-spacing:-.05em; }
footer { min-height:130px; display:flex; justify-content:space-between; align-items:center; border-top:1px solid rgba(40,49,44,.18); font:500 .78rem ui-sans-serif,system-ui; color:#68726c; }
dialog { width:min(92vw,560px); padding:0; border:0; border-radius:1.6rem; background:var(--cream); color:var(--ink); }
dialog::backdrop { background:rgba(30,38,33,.58); backdrop-filter:blur(5px); }
dialog form { position:relative; padding:2rem; }
.close { position:absolute; right:1rem; top:1rem; border:0; background:transparent; font-size:1.8rem; }
.captcha { display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem; margin:1.5rem 0; }
[data-tile] { aspect-ratio:1; border:0; border-radius:.7rem; background:conic-gradient(from 30deg,#c5d3c2,#e6cfc0,#dce2d5,#c5d3c2); }
[data-tile].selected { outline:4px solid var(--orange); outline-offset:-4px; }
.verify { width:100%; }
.status { min-height:1.5rem; font:500 .82rem ui-sans-serif,system-ui; color:var(--orange); }
@media(max-width:720px){nav a{display:none}.hero{min-height:650px;padding-bottom:14rem}.breath{width:220px;right:calc(50% - 110px);bottom:2rem}.cards{grid-template-columns:1fr}.card{min-height:210px}footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:.5rem}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
