:root{--blush: #f7e1e3;--blush-deep: #ebc9cd;--cream: #fdf9f6;--cream-soft: #fbf2ed;--sage: #a8bfa5;--sage-deep: #7f9a7c;--plum: #3e2f2f;--plum-soft: #6b5a57;--line: rgba(62, 47, 47, .12);--shadow-soft: 0 20px 50px -24px rgba(62, 47, 47, .28);--shadow-card: 0 12px 32px -18px rgba(62, 47, 47, .3);--radius-sm: 14px;--radius-md: 24px;--radius-lg: 999px;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Nunito Sans", "Segoe UI", system-ui, sans-serif;--header-h: 78px;--gutter: clamp(1.25rem, 4vw, 2.5rem);--section-pad: clamp(4.5rem, 10vw, 8.5rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1.5rem);-webkit-text-size-adjust:100%}body{margin:0;background:var(--cream);color:var(--plum);font-family:var(--font-body);font-size:1.0625rem;font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:500;font-variation-settings:"SOFT" 60,"WONK" 1;letter-spacing:-.015em;line-height:1.05;text-wrap:balance}p{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}img,svg{display:block;max-width:100%}img{height:auto}button{font:inherit;color:inherit}::selection{background:var(--blush-deep);color:var(--plum)}:focus-visible{outline:3px solid var(--sage-deep);outline-offset:3px;border-radius:4px}.container{width:min(1160px,100% - var(--gutter) * 2);margin-inline:auto}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-body);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-deep)}.eyebrow:before{content:"";width:1.75rem;height:1px;background:var(--sage-deep)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.9rem 1.65rem;border:1px solid transparent;border-radius:var(--radius-lg);font-family:var(--font-body);font-size:.95rem;font-weight:700;letter-spacing:.01em;line-height:1;text-decoration:none;cursor:pointer;transition:transform .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--plum);color:var(--cream);box-shadow:0 12px 26px -14px #3e2f2fa6}.btn--primary:hover{background:#2e2222;box-shadow:0 18px 32px -16px #3e2f2fb3}.btn--ghost{background:transparent;border-color:var(--line);color:var(--plum)}.btn--ghost:hover{border-color:var(--plum);background:#f7e1e373}.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:absolute;left:1rem;top:-5rem;z-index:100;padding:.75rem 1.25rem;border-radius:var(--radius-sm);background:var(--plum);color:var(--cream);font-weight:700;text-decoration:none;transition:top .2s ease}.skip-link:focus{top:1rem}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field{display:grid;gap:.42rem;min-width:0}.field label{font-size:.76rem;font-weight:700;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--plum)}.field__optional{font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--plum-soft)}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:.76rem .95rem;background:var(--cream);border:1px solid rgba(62,47,47,.22);border-radius:12px;color:var(--plum);font-family:var(--font-body);font-size:.98rem;line-height:1.4;transition:border-color .2s ease,box-shadow .2s ease}.field textarea{min-height:96px;resize:vertical}.field select{appearance:none;-webkit-appearance:none;padding-right:2.6rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%236b5a57' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px 8px;cursor:pointer}.field input::placeholder,.field textarea::placeholder{color:#6b5a579e}.field input:hover,.field select:hover,.field textarea:hover{border-color:#3e2f2f66}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--plum)}.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color:#b06468}@media(max-width:620px){.field-row{grid-template-columns:1fr}}@media(max-width:540px){:root{--header-h: 70px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
