:root{--bg-canvas:#3b0d1a;--bg-surface:#542333;--bg-surface-hover:#653343;--text-primary:#fff8e8;--text-muted:#e5d4cd;--accent-primary:#e8d5a8;--accent-secondary:#dba5a6;--border-subtle:rgba(232,213,168,.32);--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.25);--glow-accent:0 0 24px -4px rgba(232,213,168,.3);--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box}html{scroll-behavior:smooth;accent-color:var(--accent-primary)}body{margin:22px;padding:20px;border:1px solid var(--border-subtle);background:var(--bg-canvas);color:var(--text-primary);font:16px/1.75 "Trebuchet MS","Segoe UI",sans-serif;overflow-wrap:anywhere;hyphens:auto}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:repeating-linear-gradient(45deg,transparent 0 4px,rgba(232,213,168,.015) 4px 5px)}a{color:var(--accent-primary);text-underline-offset:4px}a:hover{color:var(--text-primary)}button,input,textarea,select{font:inherit;border-radius:0}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent-primary);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}figure{margin:0}figcaption{font-size:.83rem;color:var(--text-muted);padding-top:10px}h1,h2,h3{line-height:1.15;letter-spacing:-.035em;overflow-wrap:anywhere;hyphens:auto}h1{font-size:clamp(2.6rem,5.2vw,4.8rem);max-width:18ch;margin:.2em 0 .4em}h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:0 0 20px}h3{font-size:1.3rem;margin:0 0 12px}p{margin:0 0 1.2em}ul,ol{padding-left:1.3em}li{margin:.4em 0}.wrap{width:100%;max-width:1200px;margin:0 auto}.skip{position:absolute;left:32px;top:-100px;background:var(--accent-primary);color:var(--bg-canvas);padding:12px;z-index:30}.skip:focus{top:30px}.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--border-subtle);border-radius:60px;padding:17px 22px;margin:0 0 40px;background:rgba(84,35,51,.75)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text-primary);font-weight:bold;font-size:.94rem;white-space:nowrap;letter-spacing:-.03em}.brand-mark{font-size:1.8rem;line-height:1;color:var(--accent-primary)}.site-nav{display:flex;gap:14px;align-items:center}.site-nav a{font-size:.73rem;text-decoration:none;white-space:nowrap}.site-nav a[aria-current=page]{text-decoration:underline}.menu-toggle{display:none;background:transparent;color:var(--accent-primary);border:0;font-size:2rem;line-height:1;padding:0 7px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.73rem;font-weight:bold;color:var(--accent-primary);margin-bottom:14px}.intro{max-width:64ch;color:var(--text-muted);font-size:1.1rem}.hero{position:relative;isolation:isolate;padding:20px 0 65px}.hero::before{content:"";position:absolute;inset:0 -15px;z-index:-1;background:radial-gradient(ellipse at 75% 50%,rgba(219,165,166,.2),transparent 60%),linear-gradient(120deg,#3b0d1a,#542333,#3b0d1a);background-size:200% 200%;animation:gradientShift 12s ease infinite}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.hero-photo{position:relative;margin-bottom:42px}.hero-photo>img{aspect-ratio:4/3;height:auto}.fact-panel{position:absolute;width:240px;min-height:240px;right:-8px;bottom:-40px;padding:23px;background:rgba(59,13,26,.9);border:1px solid var(--accent-primary);backdrop-filter:var(--glass-backdrop);box-shadow:var(--shadow-elevation)}.fact-panel p{font-size:.87rem;margin:10px 0}.fact-panel strong{color:var(--accent-primary)}.button{display:inline-block;background:var(--accent-primary);border:1px solid var(--accent-primary);color:var(--bg-canvas);padding:11px 19px;text-decoration:none;font-weight:bold;box-shadow:4px 4px 0 #1d0710;transition:transform .35s var(--ease-kinetic),box-shadow .35s var(--ease-kinetic),background .35s}.button:hover{color:var(--bg-canvas);transform:translate(3px,3px);box-shadow:1px 1px 0 #1d0710;background:#fff1ce}.button.secondary{background:transparent;color:var(--accent-primary)}.actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:24px}.section{padding:58px 0;border-top:1px solid var(--border-subtle)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:start}.section-number{font-size:.8rem;color:var(--accent-primary);white-space:nowrap;padding-top:10px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}.panel,.card{padding:26px;border:1px solid var(--border-subtle);background:rgba(84,35,51,.65);backdrop-filter:var(--glass-backdrop)}.card{transition:transform .4s var(--ease-kinetic),box-shadow .4s var(--ease-kinetic),background .4s}.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent);background:var(--bg-surface-hover)}.card img{aspect-ratio:4/3;height:auto;margin-bottom:22px}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.split figure img{aspect-ratio:4/3;height:auto}.feature-strip{display:grid;grid-template-columns:100px 1fr;gap:22px;align-items:center;padding:24px;background:var(--bg-surface);border:1px solid var(--border-subtle)}.feature-strip img{aspect-ratio:1;height:auto}.feature-strip p{margin:0}.tab-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab-list button{padding:10px 14px;color:var(--text-primary);border:1px solid var(--border-subtle);background:transparent}.tab-list button[aria-selected=true]{background:var(--accent-primary);color:var(--bg-canvas)}[hidden]{display:none!important}.swatches{display:flex;gap:8px;margin-bottom:15px}.swatch{width:42px;height:42px;border:1px solid var(--border-subtle)}.swatch.burgundy{background:#7f223d}.swatch.apricot{background:#e9ad7d}.swatch.cream{background:#fff0cb}.swatch.rose{background:#d95b82}.swatch.plum{background:#752b59}.swatch.lime{background:#b5c766}.diagram{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px;border:1px dashed var(--accent-primary);margin:22px 0}.diagram span{padding:14px;border:1px solid var(--border-subtle);text-align:center;font-size:.87rem}.diagram .path{grid-column:1/-1;background:var(--bg-canvas)}.diagram .sparkle{background:var(--accent-primary);color:var(--bg-canvas)}details{border:1px solid var(--border-subtle);background:rgba(84,35,51,.55);padding:19px 22px;margin:12px 0}summary{cursor:pointer;font-weight:bold;color:var(--accent-primary)}details p{margin:16px 0 0}details ul{margin-bottom:0}.page-heading{padding:20px 0 35px}.banner{margin:0 0 38px}.banner img{aspect-ratio:16/9;height:auto;max-height:520px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:40px;align-items:start}.prose{max-width:70ch;margin:0 auto;min-width:0}.prose h2{font-size:1.8rem;margin-top:38px}.prose h3{margin-top:25px}.prose p,.prose li{color:var(--text-muted)}.prose strong{color:var(--text-primary)}.aside-panel{position:sticky;top:25px;font-size:.9rem}.aside-panel ul{list-style:none;padding:0}.aside-panel li{padding:7px 0;border-bottom:1px solid var(--border-subtle)}.note{padding:20px;border-left:3px solid var(--accent-primary);background:var(--bg-surface);margin:24px 0}.plain-page{max-width:72ch;margin:0 auto;padding:15px 0 45px}.plain-page h2{font-size:1.65rem;margin-top:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-weight:bold;margin-bottom:7px}input,textarea,select{width:100%;background:#34101b;border:1px solid var(--border-subtle);color:var(--text-primary);padding:12px;min-width:0}textarea{resize:vertical;min-height:155px}.field{margin-bottom:20px}.help,.metadata{font-size:.85rem;color:var(--text-muted)}.status{min-height:1.8em;color:var(--accent-primary)}.site-footer{border-top:1px solid var(--border-subtle);padding:32px 0 10px;margin-top:60px;display:flex;justify-content:space-between;gap:24px;font-size:.83rem;color:var(--text-muted)}.footer-links{display:flex;gap:18px;flex-wrap:wrap;align-content:start}.site-footer p{margin-bottom:7px}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal-visible{opacity:1;transform:translateY(0)}@keyframes gradientShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(min-width:1025px){.hero-grid{grid-template-columns:1.04fr 1fr}.site-nav{gap:12px}}
@media(min-width:769px) and (max-width:1024px){body{margin:15px;padding:17px}.site-header{flex-wrap:wrap;border-radius:35px}.site-nav{width:100%;justify-content:space-between}.hero-grid{gap:25px}.article-layout{grid-template-columns:minmax(0,1fr) 220px}}
@media(min-width:481px) and (max-width:768px){body{margin:14px;padding:17px}.hero-grid,.split{grid-template-columns:1fr}.hero-photo{max-width:600px}.article-layout{grid-template-columns:1fr}.aside-panel{position:static}.hero h1{max-width:20ch}}
@media(max-width:768px){.site-header{border-radius:40px;padding:15px 18px;margin-bottom:25px;flex-wrap:wrap}.menu-toggle{display:block}.site-nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 5px 8px;gap:0}.site-nav.is-open{display:flex;animation:menuOpen .3s var(--ease-kinetic)}.site-nav a{font-size:.95rem;padding:10px 5px;border-top:1px solid var(--border-subtle)}.section{padding:38px 0}.site-footer{flex-direction:column}.section-heading{gap:15px}.banner img{aspect-ratio:4/3}.form-grid{grid-template-columns:1fr}}
@media(max-width:480px){body{margin:8px;padding:12px;font-size:15px}.brand{font-size:.82rem;gap:5px}.brand-mark{font-size:1.5rem}.hero-grid,.split,.article-layout{grid-template-columns:1fr}.hero{padding-top:5px}.hero-photo{margin-bottom:0}.fact-panel{position:relative;right:auto;bottom:auto;width:100%;min-height:0;padding:20px}.grid{grid-template-columns:minmax(0,1fr)}.panel,.card{padding:20px}.feature-strip{grid-template-columns:70px 1fr;padding:17px;gap:15px}.aside-panel{position:static}.section-number{display:none}.diagram{padding:12px}.diagram span{padding:10px}.site-header{padding:13px}.actions{gap:12px}}
@keyframes menuOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.card:hover,.button:hover{transform:none}}