
body.subpage{padding-top:86px}
.page-hero{padding:64px 0 34px;text-align:center}
.page-hero .kicker{font-family:var(--sans);letter-spacing:.32em;text-transform:uppercase;font-size:.72rem;color:var(--brass)}
.page-hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.1rem,5.4vw,3.4rem);color:var(--ink);margin:.35em 0 .3em}
.page-hero .lede{max-width:620px;margin:0 auto;color:var(--mute);font-size:1.05rem;line-height:1.65}
.page-body{max-width:680px;margin:0 auto;padding:10px 22px 60px}
.page-body h2{font-family:var(--serif);font-weight:500;font-size:1.6rem;color:var(--ink);margin:1.9em 0 .5em}
.page-body p, .page-body li{color:var(--mute);line-height:1.75;font-size:1rem}
.page-body ul{padding-left:1.1em;margin:.6em 0}
.facts{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin:26px 0 6px}
.facts span{background:var(--surface);border:1px solid var(--blush);border-radius:999px;padding:9px 18px;font-family:var(--sans);font-size:.8rem;letter-spacing:.06em;color:var(--ink)}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:44px 0 8px}
.class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;max-width:960px;margin:14px auto 60px;padding:0 22px}
.class-tile{display:block;background:var(--surface);border:1px solid var(--blush);border-radius:18px;padding:26px 24px;text-decoration:none;transition:transform .25s ease, box-shadow .25s ease}
.class-tile:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(62,58,54,.10)}
.class-tile .cl-k{display:block;font-family:var(--sans);font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;color:var(--brass);margin-bottom:8px}
.class-tile h3{font-family:var(--serif);font-weight:500;font-size:1.35rem;color:var(--ink);margin:0 0 8px}
.class-tile p{color:var(--mute);line-height:1.6;font-size:.94rem;margin:0 0 12px}
.class-tile .more{font-family:var(--sans);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-dk)}
.contact-card{background:var(--surface);border:1px solid var(--blush);border-radius:18px;padding:30px;margin:24px 0}
.contact-card label{display:block;font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin:16px 0 6px}
.contact-card input,.contact-card select,.contact-card textarea{width:100%;box-sizing:border-box;border:1px solid var(--blush);border-radius:10px;background:#fff;padding:12px 14px;font-family:var(--sans);font-size:.95rem;color:var(--ink)}
.contact-card textarea{min-height:120px;resize:vertical}
.contact-card .btn{margin-top:22px}
.form-note{font-size:.85rem;color:var(--mute);margin-top:14px}
.legal p, .legal li{font-size:.95rem}
.gotcha{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
@media (max-width:720px){body.subpage{padding-top:72px}.page-hero{padding:46px 0 24px}}
