:root{--brand-black: #333333;--brand-white: #ffffff;--brand-cream: #f8f4ee;--brand-beige: #e8dac8;--brand-champagne: #c39b49;--brand-champagne-light: #e6d3aa;--brand-text: #333333;--brand-muted-text: #77706a;--brand-border: #e6ddd2;--brand-error: #b42318;--brand-success: #2f6b4f;--brand-warning: #b7791f;--font-title: "Cormorant Garamond", Georgia, serif;--font-ui: "Lustria", "Times New Roman", serif;--radius-sm: 0;--radius-md: 0;--shadow-soft: 0 1.25rem 3rem rgba(51, 51, 51, .06);--shadow-floating: 0 1.5rem 4rem rgba(51, 51, 51, .14);--transition-soft: .18s ease;--z-header: 20;--z-toast: 40;--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-xxl: 1536px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--brand-white);color:var(--brand-text);font-family:var(--font-ui);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.body--home{background:radial-gradient(circle at top left,rgba(200,169,106,.18),transparent 28rem),linear-gradient(180deg,var(--brand-cream),var(--brand-white) 36rem)}h1,h2,h3{margin:0 0 1rem;color:var(--brand-black);font-family:var(--font-title);font-weight:600;line-height:.95}h1{font-size:5.5rem;letter-spacing:-.045em}h2{font-size:3.25rem;letter-spacing:-.035em}p{margin:0 0 1rem}a,button,input,textarea{font:inherit}button,a,input,textarea{outline-color:var(--brand-champagne);outline-offset:3px}.section-shell{width:min(100%,1440px);margin:0 auto;padding:5rem 2rem}.section-heading{max-width:48rem;margin-bottom:2rem}.eyebrow{color:var(--brand-champagne);letter-spacing:.16em;text-transform:uppercase}.btn{display:inline-flex;min-height:2.9rem;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.2rem;border:1px solid var(--brand-black);background:transparent;color:var(--brand-black);cursor:pointer;text-decoration:none;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--brand-black);color:var(--brand-white)}.btn--primary:hover{border-color:var(--brand-champagne);background:var(--brand-champagne);color:var(--brand-black)}.btn--ghost{border-color:var(--brand-border);background:#ffffff8f}.text-link{color:var(--brand-black);text-decoration-color:var(--brand-champagne);text-underline-offset:.3em}.form-input{width:100%;min-height:2.85rem;padding:.75rem .85rem;border:1px solid var(--brand-border);background:var(--brand-white);color:var(--brand-text)}.form-input:focus{border-color:var(--brand-champagne)}.form-banner{margin:0;padding:1rem;border:1px solid rgba(47,107,79,.22);background:#2f6b4f14;color:var(--brand-success)}.form-banner--warning{border-color:#b7791f33;background:#b7791f14;color:var(--brand-warning)}.personalization-font-cormorant-garamond{font-family:Cormorant Garamond,Georgia,serif}.personalization-font-lustria{font-family:Lustria,Times New Roman,serif}.personalization-font-playfair-display{font-family:Playfair Display,Georgia,serif}.personalization-font-libre-baskerville{font-family:Libre Baskerville,Georgia,serif}.personalization-font-montserrat{font-family:Montserrat,Helvetica Neue,Arial,sans-serif}.personalization-font-parisienne{font-family:Parisienne,cursive}[data-reveal].reveal-ready{opacity:0;filter:blur(6px);transform:translate3d(0,var(--reveal-distance, 18px),0) scale(.985);transition:opacity .68s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms),transform .76s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0ms),filter .76s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0ms);will-change:opacity,transform,filter}[data-reveal].reveal-visible{opacity:1;filter:none;transform:none}@media(prefers-reduced-motion:reduce){[data-reveal].reveal-ready{opacity:1;filter:none;transform:none;transition:none}}fieldset{display:grid;gap:.8rem;padding:1.25rem;border:1px solid var(--brand-border);background:linear-gradient(160deg,#fffffff0,#f8f4eed1),radial-gradient(circle at top right,rgba(200,169,106,.1),transparent 34%);box-shadow:var(--shadow-soft)}fieldset legend{padding:0 .5rem;font-family:var(--font-title);font-size:1.35rem}
