/* Aretia — shared design system. Lifted from the app theme (app/lib/theme.dart).
   Palette parchment / ink / terracotta. Fraunces / Inter / JetBrains Mono.
   Page-specific styles live in an inline <style> on each page. */

@font-face{font-family:'Fraunces';src:url('fonts/Fraunces.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Fraunces';src:url('fonts/Fraunces-Italic.ttf') format('truetype');font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:'Inter';src:url('fonts/Inter.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('fonts/JetBrainsMono.ttf') format('truetype');font-weight:100 800;font-style:normal;font-display:swap}

:root{
  --bg:#F5F0E8;--bg-deep:#EDE6D9;--ink:#1A1815;--muted:#5C544A;--subtle:#8A7F70;
  --accent:#C8553D;--accent-soft:rgba(200,85,61,.10);--border:#D9CFC1;--border-strong:#B8AC97;
  --maxw:1100px;
  --serif:'Fraunces',Georgia,serif;--sans:'Inter',system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.035;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='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
section{padding:118px 0}
@media(max-width:680px){section{padding:80px 0}}
.lined{border-top:1px solid var(--border)}
.band{background:var(--bg-deep);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

.eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);display:block}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04;letter-spacing:-.02em}
.display{font-style:italic;font-variation-settings:'opsz' 144;font-size:clamp(2.8rem,7.5vw,5.4rem);line-height:1.0;letter-spacing:-.03em}
.display-2{font-style:italic;font-variation-settings:'opsz' 144;font-size:clamp(2rem,4.6vw,3.3rem);line-height:1.06;letter-spacing:-.025em}
.prose{font-family:var(--serif);font-weight:300;font-size:1.12rem;line-height:1.72;color:var(--muted)}
.prose+.prose{margin-top:1.05em}
.lede{font-size:1.16rem;line-height:1.6;color:var(--muted);max-width:48ch}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}

/* nav */
nav{position:sticky;top:0;z-index:50;background:rgba(245,240,232,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:62px}
.mark{font-family:var(--serif);font-style:italic;font-variation-settings:'opsz' 144;font-size:1.5rem;color:var(--ink);text-decoration:none}
.mark:hover{text-decoration:none}
.mark .dot{color:var(--accent)}
.nav-cta{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.nav-cta:hover{color:var(--accent);text-decoration:none}
.nav-links{display:flex;align-items:center;gap:24px}
.nav-link{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.nav-link:hover{color:var(--accent);text-decoration:none}
@media(max-width:560px){.nav-links{gap:16px}.nav-link{display:none}}

/* forms */
.signup{display:flex;gap:10px;max-width:440px;flex-wrap:wrap}
.signup input[type=email]{flex:1;min-width:200px;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--bg);border:1px solid var(--border-strong);border-radius:2px;padding:14px 16px;outline:none}
.signup input[type=email]:focus{border-color:var(--accent)}
.btn{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:var(--accent);color:var(--bg);border:none;border-radius:2px;padding:14px 22px;transition:background .18s ease;white-space:nowrap}
.btn:hover{background:#a8442f}
.btn:disabled{opacity:.55;cursor:default}
.form-msg{font-size:14px;margin-top:13px;min-height:1.1em}
.form-msg.ok{color:#3f6b4a}.form-msg.err{color:var(--accent)}
.platforms{display:flex;align-items:center;gap:9px;margin-top:22px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.platforms .pf-ico{width:14px;height:14px;fill:currentColor;color:var(--subtle);flex:none}
.form-note{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--subtle);margin-top:12px;text-transform:uppercase}

/* footer */
footer{border-top:1px solid var(--border);padding:56px 0 66px}
footer .wrap{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-end}
.foot-links{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;display:flex;gap:22px;flex-wrap:wrap}
.foot-links a{color:var(--muted)}
.foot-meta{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--subtle);text-transform:uppercase}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
