:root{--bg:var(--paper);--fg:var(--ink);--fg-2:var(--body);--rule:var(--line);--surface:var(--sheet);--accent:var(--wine);--font-display:var(--font);--font-sans:var(--font);--nf-sans:"Josefin Sans";--nf-display:"Josefin Sans";--fs-display:clamp(2.6rem,1.2rem + 5vw,5.6rem);--fs-lead:clamp(1.1rem,1rem + 0.45vw,1.35rem);--fs-small:0.9375rem;--fs-eyebrow:0.75rem;--pad:var(--gutter);--maxw:var(--max);--section:clamp(4rem,10svh,7rem)}.theme-night{--bg:var(--night);--fg:var(--night-ink);--fg-2:var(--night-ink);--muted:var(--night-muted);--rule:rgba(236,230,219,0.16);--surface:var(--night-2);--accent:#d98aa6;background:var(--bg);color:var(--fg)}.theme-night :is(h1,h2,h3,h4){color:var(--fg)}.theme-night .btn--primary{background:var(--night-ink);color:var(--night)}.theme-night .btn--primary:hover{background:#fff;color:var(--wine)}.section{position:relative;padding-block:var(--section)}.lead{font-size:var(--fs-lead);line-height:1.5;color:var(--fg-2);max-width:46ch;text-wrap:pretty}.accent{color:var(--accent)}.btn--primary{background:var(--ink);color:#fff}.btn--primary:hover{background:var(--wine);color:#fff}.btn--ghost{border-color:var(--line);color:var(--ink);background:transparent}.btn--ghost:hover{border-color:var(--ink)}.btn__arrow{display:inline-block;transition:transform .4s var(--ease)}.btn:focus-visible .btn__arrow,.btn:hover .btn__arrow{transform:translateX(4px)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem}.phead{padding-top:calc(var(--nav-h) + clamp(3rem, 12svh, 7rem));padding-bottom:clamp(3rem,8vw,6rem)}.phead__title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-display);line-height:1.02;letter-spacing:-.02em;margin-top:1.4rem;max-width:16ch;text-wrap:balance;color:var(--ink)}.phead .lead{margin-top:1.6rem}.contact{display:grid;gap:clamp(3rem,6vw,5rem)}@media (min-width:1024px){.contact{grid-template-columns:4fr 7fr}}.contact__aside{display:grid;gap:2rem;align-content:start;font-size:var(--fs-small);color:var(--fg-2)}.contact__aside h2{font-size:var(--fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:.6rem}.contact__aside a{color:var(--wine)}.contact__aside a:hover{color:var(--ink)}.form,.form__grid{display:grid;gap:1.5rem}@media (min-width:640px){.form__grid{grid-template-columns:1fr 1fr}.form__full{grid-column:1/-1}}.field{display:grid;gap:.45rem}.field label{font-size:var(--fs-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.field label span{color:var(--wine)}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:.75rem .9rem;font:inherit;font-size:1rem;color:var(--ink);background:var(--sheet);border:1px solid var(--line);border-radius:10px;transition:border-color .25s var(--ease)}.field textarea{min-height:9rem;resize:vertical;line-height:1.5}.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - 16px) 55%,calc(100% - 11px) 55%;background-size:5px 5px;background-repeat:no-repeat}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--wine)}.field [aria-invalid=true]{border-color:var(--bad)}.field__err{font-size:.8125rem;color:var(--bad)}.form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form__status{padding:1rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--sheet);font-size:var(--fs-small)}.form__foot{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.form__result{font-size:var(--fs-lead);line-height:1.4;color:var(--ink)}.form__fine{font-size:.8125rem;color:var(--muted);max-width:40ch}.thanks__fine{margin-top:1rem;font-size:var(--fs-small);color:var(--muted)}