:root {
 --pink:#a83d70;--pink-dark:#87305a;--blush:#f6dce7;--ivory:#fffaf5;--background:#fff8fa;--rose:#c991a5;--plum:#5c3546;--ink:#38232e;--muted:#705c66;--white:#fff;--line:#e9dce0;
 --font-heading:"Playfair Display",Georgia,serif;--font-body:"DM Sans",Arial,sans-serif;
 --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;
 --radius-sm:8px;--radius-md:18px;--radius-lg:28px;--radius-pill:999px;
 --container:1200px;--shadow:0 18px 55px #5c354612;--transition:180ms ease;
 --breakpoint-mobile:640px;--breakpoint-tablet:900px;--breakpoint-nav:1150px;
}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ivory);color:var(--ink);font:400 16px/1.7 var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-heading);font-weight:500;line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(2.9rem,5.1vw,4.6rem)}h2{font-size:clamp(2.15rem,3.5vw,3.25rem)}h3{font-size:1.6rem}h1 em,h2 em{color:var(--pink);font-weight:400}p{color:var(--muted)}p+p{margin-top:1rem}svg.icon{width:24px;height:24px;flex:none;vertical-align:middle}::selection{background:var(--blush)}:focus-visible{outline:3px solid var(--pink);outline-offset:5px;border-radius:4px}.container{width:min(var(--container),calc(100% - 96px));margin-inline:auto}.section{padding-block:88px}.eyebrow{display:block;font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--pink);margin-bottom:18px;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--pink);border:1px solid var(--pink);color:var(--white);padding:15px 25px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;line-height:1.4;transition:background var(--transition),transform var(--transition);min-height:48px}.button:hover{background:var(--pink-dark);transform:translateY(-2px)}.button .icon{width:19px;height:19px}.button-small{padding:12px 16px;font-size:11px}.button-outline{background:transparent;color:var(--pink);border-color:#c897ae}.button-outline:hover{background:var(--pink);color:white}.button-light{background:var(--ivory);color:var(--plum);border-color:var(--ivory)}.button-light:hover{background:var(--blush)}.button-ghost-light{background:transparent;border-color:#c39fac;color:var(--ivory)}.button-ghost-light:hover{background:#ffffff10}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--pink);line-height:1.6}.text-link .icon{width:19px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--plum);color:white;z-index:100}.skip-link:focus{top:10px}.micro-note{display:block;font-size:11px;color:var(--muted);line-height:1.6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.section-heading>p{max-width:310px;font-size:14px;padding-bottom:6px}.section-heading.centered{display:block;text-align:center;max-width:600px;margin:0 auto 52px}.section-heading.centered p{margin-top:20px;max-width:none}.button-row .text-link{min-height:44px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #cab9c1;background:white;border-radius:8px;color:var(--ink)}label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}.field{margin-bottom:20px}.field small{display:block;font-size:12px;color:var(--muted);margin-top:5px}input[type=checkbox]{width:20px;height:20px;accent-color:var(--pink);flex:none}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:500;color:var(--plum);min-height:30px}details p{padding-top:12px;font-size:14px}
@media(max-width:900px){.container{width:calc(100% - 48px)}.section{padding-block:64px}.section-heading{gap:24px}}
@media(max-width:640px){.container{width:calc(100% - 36px)}.section{padding-block:52px}.section-heading{display:block}.section-heading>p{margin-top:20px;max-width:none}.section-heading>.text-link{margin-top:20px}.button-row{gap:18px}h1{font-size:3.05rem}h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
