@charset "UTF-8";:root{--bg: #F7F1EC;--surface: #FFF7F7;--surface-alt: #F1E6DE;--blush: #E7CDCF;--blush-deep: #DBBABA;--blush-tint: #FFF7F7;--ink: #2B2422;--ink-soft: rgba(43, 36, 34, .66);--ink-faint: rgba(43, 36, 34, .42);--crimson: #940018;--crimson-deep: #7A0015;--crimson-wash: rgba(148, 0, 24, .07);--plum: var(--crimson);--plum-deep: var(--crimson-deep);--plum-wash: var(--crimson-wash);--line: rgba(43, 36, 34, .14);--line-soft: rgba(43, 36, 34, .08);--white: #ffffff;--sp-1: .5rem;--sp-2: 1rem;--sp-3: 1.5rem;--sp-4: 2rem;--sp-5: 3rem;--sp-6: 4rem;--sp-7: 6rem;--sp-8: 8rem;--serif: "Playfair Display", Georgia, "Times New Roman", serif;--sans: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 18px;--radius-sm: 12px;--shadow-sm: 0 4px 18px rgba(43, 36, 34, .06);--shadow-md: 0 18px 48px rgba(43, 36, 34, .1);--ease: cubic-bezier(.22, .61, .36, 1);--container: 1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin:0 0 var(--sp-2)}p{margin:0 0 var(--sp-2)}a{color:var(--plum);text-decoration:none;transition:color .2s var(--ease)}a:hover{color:var(--plum-deep)}img{max-width:100%;display:block}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 clamp(20px,5vw,48px)}.container--narrow{max-width:820px}.section{padding:clamp(3.5rem,8vw,7rem) 0}.eyebrow{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--plum);margin:0 0 var(--sp-2);display:inline-block}.lead{font-size:1.18rem;line-height:1.75;color:var(--ink-soft)}.rule{width:64px;height:1px;border:0;background:var(--plum);opacity:.5;margin:var(--sp-3) 0}.rule--center{margin-left:auto;margin-right:auto}.btn{--btn-bg: var(--plum);--btn-fg: #fff;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--sans);font-size:.95rem;font-weight:500;letter-spacing:.02em;padding:.95rem 1.9rem;min-height:48px;border-radius:999px;border:1px solid transparent;background:var(--btn-bg);color:var(--btn-fg);cursor:pointer;transition:transform .25s var(--ease),background .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);text-decoration:none}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px #9400183d;color:#fff}.btn:active{transform:translateY(0)}.btn--ghost{background:transparent;color:var(--plum);border-color:#94001859}.btn--ghost:hover{background:var(--plum-wash);color:var(--plum);box-shadow:none}.btn--light{background:var(--blush-tint);color:var(--plum)}.btn--light:hover{color:var(--plum-deep)}.btn--block{width:100%}label{display:block;font-size:.8rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.5rem}.req{color:var(--plum)}.field input,.field textarea{width:100%;font-family:var(--sans);font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.85rem 1rem;min-height:48px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.field textarea{min-height:130px;resize:vertical;line-height:1.6}.field input:focus,.field textarea:focus{outline:none;border-color:var(--plum);box-shadow:0 0 0 3px var(--plum-wash)}.field input::placeholder,.field textarea::placeholder{color:var(--ink-faint)}.field.invalid input,.field.invalid textarea{border-color:#b23a48}.field-error{color:#b23a48;font-size:.82rem;margin-top:.4rem;text-transform:none;letter-spacing:0;font-weight:400}:focus-visible{outline:2px solid var(--plum);outline-offset:3px;border-radius:4px}.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;background:var(--plum);color:#fff;padding:.65rem 1.1rem;border-radius:0 0 10px 10px;transition:top .2s var(--ease)}.skip-link:focus{top:0;color:#fff}.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}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.001ms!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}
