/* Sovereign Life Architecture — shared styles for /reset and /guides (the home page keeps its own inline CSS) */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,400..600&family=Archivo:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{--espresso:#1A1614;--espresso-deep:#100D0B;--espresso-raised:#241E19;--linen:#F4EBD5;--linen-dim:#D8C9A8;--linen-faint:#9C8F80;--brass:#C2AD90;--brass-hairline:rgba(194,173,144,.28);--orange:#FC4C00;--orange-soft:rgba(252,76,0,.14);--clay:#138EFF;--crimson:#9A031E;--max:720px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--espresso);color:var(--linen);font-family:'Archivo',-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
::selection{background:var(--orange);color:var(--espresso-deep)}
a{color:inherit}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:500;margin:0;color:var(--linen);text-wrap:balance}
p{margin:0}
.mono{font-family:'IBM Plex Mono','Courier New',monospace;letter-spacing:.08em;text-transform:uppercase}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.topbar{border-bottom:1px solid var(--brass-hairline);background:var(--espresso-deep)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;flex-wrap:wrap}
.topbar a{text-decoration:none;font-size:11px;color:var(--brass)}
.topbar nav{display:flex;gap:18px;flex-wrap:wrap}
.topbar nav a{color:var(--linen-dim)}
.topbar nav a:hover{color:var(--orange)}
.tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--brass);border:1px solid var(--brass-hairline);border-radius:3px;padding:5px 10px;background:rgba(0,0,0,.15);font-weight:400}
.tag::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--orange);flex-shrink:0}
.hero{padding:72px 0 40px;background:radial-gradient(560px 420px at 50% 0%,var(--orange-soft),transparent 65%),linear-gradient(180deg,var(--espresso-deep),var(--espresso) 65%)}
.hero .tag{margin-bottom:28px}
.hero h1{font-size:clamp(1.9rem,5vw,3rem);font-style:italic;font-weight:400;line-height:1.15;letter-spacing:-.01em}
.hero h1 em{font-style:italic;color:var(--orange)}
.hero .lede{margin-top:22px;max-width:52ch;font-size:1.05rem;color:var(--linen-dim)}
.hero .byline{margin-top:22px;font-size:11px;color:var(--linen-faint)}
article{padding:40px 0 64px}
article h2{font-size:1.55rem;margin:44px 0 14px;line-height:1.25}
article h3{font-size:1.15rem;margin:30px 0 10px;font-weight:600;font-style:normal}
article p{margin:0 0 18px;color:var(--linen-dim)}
article p strong{color:var(--linen);font-weight:600}
article ul,article ol{margin:0 0 18px;padding-left:22px;color:var(--linen-dim)}
article li{margin-bottom:8px}
article blockquote{margin:26px 0;padding:18px 22px;border-left:2px solid var(--orange);background:var(--espresso-raised);font-family:'Fraunces',Georgia,serif;font-size:1.15rem;line-height:1.5;color:var(--linen)}
article .aside{margin:26px 0;padding:18px 22px;border:1px dashed var(--brass-hairline);border-radius:4px;font-size:.95rem;color:var(--linen-dim)}
.cta-card{margin:48px 0 0;padding:28px;border:1px solid var(--brass-hairline);border-radius:4px;background:var(--espresso-deep)}
.cta-card .tag{margin-bottom:16px}
.cta-card h3{font-size:1.35rem;font-style:italic;font-weight:400;margin:0 0 10px}
.cta-card p{margin:0 0 20px}
.btn{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:15px 26px;border-radius:2px;transition:background .2s,color .2s,border-color .2s;cursor:pointer;border:none}
.btn--solid{background:var(--orange);color:var(--espresso-deep);font-weight:600}
.btn--solid:hover{background:#ff6a26}
.btn--ghost{border:1px solid var(--brass-hairline);color:var(--linen-dim);background:transparent}
.btn--ghost:hover{border-color:var(--orange);color:var(--orange)}
.btn:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
/* lead magnet + reset form */
.lead{margin:56px 0 0;padding:32px 28px;border-top:1px solid var(--brass-hairline);border-bottom:1px solid var(--brass-hairline);background:var(--espresso-deep)}
.lead h3{font-size:1.3rem;font-style:italic;font-weight:400;margin:14px 0 8px}
.lead p{color:var(--linen-dim);margin:0 0 18px;max-width:52ch}
.form{display:flex;flex-direction:column;gap:12px;max-width:520px}
.form label{font-size:11px;color:var(--brass);font-family:'IBM Plex Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.form input,.form textarea,.form select{width:100%;padding:13px 14px;border-radius:2px;border:1px solid var(--brass-hairline);background:var(--espresso-raised);color:var(--linen);font-family:'Archivo',sans-serif;font-size:16px}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:var(--orange)}
.form textarea{min-height:120px;resize:vertical}
.form .row{display:flex;gap:12px;flex-wrap:wrap}
.form .row>*{flex:1;min-width:200px}
.form .hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.form .note{font-size:12px;color:var(--linen-faint);margin:0}
.form .status{font-size:.95rem;margin:4px 0 0}
.form .status.ok{color:var(--linen)}
.form .status.err{color:#ff8a6a}
.guides-list{display:grid;gap:2px;background:var(--brass-hairline);border:1px solid var(--brass-hairline);margin-top:32px}
.guides-list a{display:block;padding:22px 24px;background:var(--espresso);text-decoration:none}
.guides-list a:hover{background:var(--espresso-raised)}
.guides-list .t{display:block;font-family:'Fraunces',Georgia,serif;font-size:1.15rem;color:var(--linen);margin-bottom:4px}
.guides-list .d{display:block;font-size:.95rem;color:var(--linen-dim)}
.guides-list .k{display:block;font-size:11px;color:var(--brass);margin-top:8px}
footer{padding:40px 28px 56px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid var(--brass-hairline)}
footer .mono{font-size:11px;color:var(--linen-faint)}
footer nav{display:flex;gap:16px;flex-wrap:wrap}
footer nav a{text-decoration:none;font-size:11px;color:var(--linen-faint)}
footer nav a:hover{color:var(--orange)}
.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}
