@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/inter-400.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/inter-500.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/inter-600.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/inter-700.woff2') format('woff2');}
@font-face{font-family:'Merriweather';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/merriweather-400.woff2') format('woff2');}
@font-face{font-family:'Merriweather';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/merriweather-400-italic.woff2') format('woff2');}
@font-face{font-family:'Merriweather';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/merriweather-700.woff2') format('woff2');}
@font-face{font-family:'Merriweather';font-style:italic;font-weight:700;font-display:swap;src:url('assets/fonts/merriweather-700-italic.woff2') format('woff2');}
@font-face{font-family:'Merriweather';font-style:normal;font-weight:900;font-display:swap;src:url('assets/fonts/merriweather-900.woff2') format('woff2');}
:root{--paper:#f4efe6;--paper-deep:#ece5d4;--paper-warm:#ebe3d1;--ink:#0e0d0b;--ink-soft:#25221d;--ink-mute:#5a544a;--rule:#cdc4b0;--rule-soft:#ddd5bf;--accent:#b8551f;--accent-deep:#8a3e15;--accent-soft:#d4793e;--emerald:#1f5d3a;--crimson:#8a2c1f;--font-display:'Merriweather',Georgia,serif;--font-body:'Inter',system-ui,sans-serif;--font-mono:'JetBrains Mono','IBM Plex Mono',ui-monospace,monospace;--radius-button:4px;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:16px;}
body{font-family:var(--font-body);background:var(--paper);color:var(--ink);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
::selection{background:var(--ink);color:var(--paper);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
.col{max-width:1240px;margin:0 auto;padding:0 40px;}
.col-n{max-width:1000px;margin:0 auto;padding:0 40px;}
.sec{padding:92px 0;}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-body);font-weight:600;font-size:1rem;padding:15px 28px;border-radius:var(--radius-button);border:none;cursor:pointer;text-decoration:none;transition:background 150ms,transform 150ms;white-space:nowrap;}
.btn-accent{background:var(--accent);color:#f7f1e7;}
.btn-accent:hover{background:var(--accent-deep);transform:translateY(-1px);}
.btn-dark{background:var(--ink);color:var(--paper);}
.btn-dark:hover{background:#000;transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--paper);border:1.5px solid rgba(244,239,230,0.4);}
.btn-ghost:hover{border-color:var(--paper);}
.btn-out{background:transparent;color:var(--ink);border:1.5px solid var(--ink);}
.btn-out:hover{background:var(--ink);color:var(--paper);}
.txt-link{font-weight:600;color:var(--ink);border-bottom:2px solid var(--accent);padding-bottom:2px;transition:color 140ms;}
.txt-link:hover{color:var(--accent);}
.eyb{display:inline-flex;align-items:center;gap:12px;margin-bottom:22px;}
.eyb .r{width:28px;height:2px;background:var(--accent);flex-shrink:0;}
.eyb .t{font-family:var(--font-mono);font-size:0.72rem;text-transform:uppercase;letter-spacing:0.22em;color:var(--ink-mute);}
.h1{font-family:var(--font-display);font-weight:900;font-size:clamp(2.5rem,5.6vw,4.6rem);line-height:1.02;letter-spacing:-0.042em;text-wrap:balance;color:var(--ink);}
.h2{font-family:var(--font-display);font-weight:900;font-size:clamp(2rem,4vw,3.25rem);line-height:1.07;letter-spacing:-0.035em;text-wrap:balance;}
.h3{font-family:var(--font-display);font-weight:700;font-size:1.28rem;letter-spacing:-0.015em;}
.lead{font-size:clamp(1.06rem,1.5vw,1.2rem);line-height:1.6;color:var(--ink-soft);}
.em-i{font-style:italic;font-weight:700;color:var(--accent);}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.split{display:grid;grid-template-columns:1.05fr 0.95fr;gap:54px;align-items:center;}
.card{background:var(--paper);border:1px solid var(--rule);padding:30px 28px;}
.lift{transition:transform .2s ease,box-shadow .2s ease;}
.lift:hover{transform:translateY(-5px);box-shadow:10px 12px 0 rgba(14,13,11,0.09);}
.frame{border:1px solid var(--ink);background:#fff;box-shadow:18px 18px 0 var(--ink);}
.dot{width:11px;height:11px;border-radius:50%;display:inline-block;}
.bar{display:flex;align-items:center;gap:8px;padding:11px 16px;border-bottom:1px solid var(--rule);background:var(--paper-warm);}
.urlpill{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;background:var(--paper);border:1px solid var(--rule);border-radius:4px;padding:5px 12px;font-family:var(--font-mono);font-size:0.72rem;color:var(--ink-mute);min-width:0;}
.chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:0.66rem;font-weight:600;text-transform:uppercase;letter-spacing:0.14em;padding:5px 11px;border-radius:3px;}
.chip-live{background:rgba(31,93,58,0.12);color:var(--emerald);}
.chip-now{background:var(--ink);color:var(--paper);}
.chip-soon{background:transparent;color:var(--ink-mute);border:1px solid var(--rule);}
.livedot{width:8px;height:8px;border-radius:50%;background:var(--emerald);animation:peoPulse 2s ease-in-out infinite;}
@keyframes peoPulse{0%,100%{opacity:1;}50%{opacity:0.28;}}
.dotrule{flex:1;border-bottom:1.5px dotted var(--rule);margin:0 10px;min-width:14px;}
.kw{font-family:var(--font-mono);font-size:0.7rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--ink-mute);}
.ph-tag{position:absolute;top:10px;right:10px;z-index:2;font-family:var(--font-mono);font-size:0.6rem;font-weight:600;text-transform:uppercase;letter-spacing:0.14em;padding:4px 9px;background:var(--ink);color:var(--paper);border-radius:3px;}
.ph-hatch{background-image:repeating-linear-gradient(45deg,rgba(90,84,74,0.07) 0 11px,transparent 11px 22px);}
.gridwash{position:absolute;inset:0;background-image:linear-gradient(rgba(90,84,74,0.09) 1px,transparent 1px),linear-gradient(90deg,rgba(90,84,74,0.09) 1px,transparent 1px);background-size:74px 74px;-webkit-mask-image:radial-gradient(125% 100% at 70% -10%,#000 30%,transparent 76%);mask-image:radial-gradient(125% 100% at 70% -10%,#000 30%,transparent 76%);pointer-events:none;}
.gridwash-d{position:absolute;inset:0;background-image:linear-gradient(rgba(244,239,230,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(244,239,230,0.05) 1px,transparent 1px);background-size:38px 38px;-webkit-mask-image:radial-gradient(100% 85% at 80% 0%,#000 20%,transparent 72%);mask-image:radial-gradient(100% 85% at 80% 0%,#000 20%,transparent 72%);pointer-events:none;}
.fld{width:100%;padding:12px 14px;border:1px solid var(--rule);background:var(--paper);font-family:var(--font-body);font-size:0.96rem;border-radius:4px;color:var(--ink);}
.fld:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent);}
.lbl{display:block;font-size:0.8rem;font-weight:600;margin-bottom:6px;color:var(--ink);}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
/* GLOBAL RULE: the Proofline engine embed is always full width to the container edges. The engine performs best full width. Apply .peo-embed to every embed mount; never cap its width. */
.peo-embed{display:block;width:100%;max-width:none;margin:0;}
.peo-embed iframe{width:100%!important;max-width:none!important;display:block;}
@keyframes peoRise{from{opacity:0;transform:translateY(22px);}to{opacity:none;}}
@keyframes peoRise2{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
html.peo-anim .reveal{animation:peoRise2 .72s cubic-bezier(.2,.7,.2,1) both;}
html.peo-anim .stg>*:nth-child(2){animation-delay:.08s;}
html.peo-anim .stg>*:nth-child(3){animation-delay:.16s;}
html.peo-anim .stg>*:nth-child(4){animation-delay:.24s;}
@media(max-width:880px){.grid-3{grid-template-columns:1fr;}.grid-4{grid-template-columns:1fr 1fr;}.split{grid-template-columns:1fr;gap:40px;}}
@media(max-width:720px){.col,.col-n{padding:0 20px;}.sec{padding:60px 0;}.frame{box-shadow:10px 10px 0 var(--ink);}.grid-2,.grid-4{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){html.peo-anim .reveal{animation:none!important;}.lift,.btn{transition:none!important;}.livedot{animation:none!important;}}
