@font-face{font-family:Inter;src:url(/assets/inter.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Playfair;src:url(/assets/playfair-700.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Playfair;src:url(/assets/playfair-700i.woff2) format('woff2');font-weight:700;font-style:italic;font-display:swap}
:root{--brown:#2E1E17;--brown2:#4A3026;--brown3:#3a2820;--cream:#FAF4EC;--off:#FFF9F5;--sand:#f2e4da;--terra:#C65A3A;--orange:#D97757;--peach:#F6B190;--muted:#78675E;--line:rgba(46,30,23,.12);--serif:Playfair,Georgia,serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--brown);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img,video{max-width:100%;display:block}
.grain{position:fixed;inset:-50%;z-index:100;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(4) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}100%{transform:translate(0,0)}}
.wrap{width:min(1100px,calc(100% - 36px));margin:0 auto}
.serif{font-family:var(--serif);letter-spacing:-.035em}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:750;color:var(--terra)}
.eyebrow:before{content:"";width:18px;height:1.5px;background:currentColor}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;background:var(--terra);color:#fff;padding:17px 28px;font-weight:750;font-size:15.5px;cursor:pointer;overflow:hidden;box-shadow:0 16px 38px -10px rgba(198,90,58,.55);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);animation:shine 3.6s 1.2s infinite}
@keyframes shine{0%,60%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.btn:hover{transform:translateY(-2px);box-shadow:0 20px 44px -10px rgba(198,90,58,.6)}
.btn:active{transform:translateY(0) scale(.98)}
.btn[disabled]{opacity:.65;cursor:wait}
.btn.ghost{background:transparent;color:var(--brown);border:1.5px solid var(--line);box-shadow:none}
.btn.ghost:after{display:none}
.btn .arr{transition:transform .25s var(--ease)}.btn:hover .arr{transform:translateX(4px)}
.field{display:grid;gap:7px;font-size:12.5px;font-weight:700;color:var(--brown2)}
.field input{width:100%;border:1.5px solid rgba(46,30,23,.16);border-radius:14px;background:#fff;color:var(--brown);padding:14px 15px;font-size:16px;outline:none;transition:border-color .2s,box-shadow .2s}
.field input:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(217,119,87,.14)}
.msg-error{color:#9d3023;background:#fcebe7;border-radius:12px;font-size:13px;padding:11px 13px;margin-top:12px}
.msg-ok{color:#21602f;background:#e7f4eb;border-radius:12px;font-size:13px;padding:11px 13px;margin-top:12px}
.logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;font-size:19px;letter-spacing:-.03em}
.logo i{font-style:italic;color:var(--terra)}
.logo .mark{width:30px;height:30px;color:var(--terra)}
.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid #e6c6b7;border-top-color:var(--terra);animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
