:root{--ink: #1e1d1a;--ink-soft: rgba(30, 29, 26, .7);--paper: #f4efe7;--paper-strong: #fffaf3;--panel: rgba(255, 250, 243, .72);--panel-strong: rgba(255, 250, 243, .94);--accent: #de6f4d;--accent-deep: #9d4128;--line: rgba(30, 29, 26, .12);--shadow: 0 24px 80px rgba(38, 28, 17, .12);--radius-lg: 32px;--radius-md: 20px;--radius-sm: 14px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--ink);background:radial-gradient(circle at top left,rgba(222,111,77,.18),transparent 28%),radial-gradient(circle at 80% 15%,rgba(206,168,117,.18),transparent 24%),linear-gradient(180deg,#fbf6ed,#f4efe7 44%,#ece4d8);font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif}a{color:inherit}img{max-width:100%}.site-shell,.admin-auth-shell,.admin-shell{width:min(1120px,calc(100vw - 32px));margin:0 auto}.site-shell{padding:28px 0 72px}.hero,.section-card,.contact-banner,.admin-panel,.auth-card{background:var(--panel);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.45);box-shadow:var(--shadow)}.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);gap:24px;padding:34px;border-radius:calc(var(--radius-lg) + 4px);overflow:hidden;position:relative}.hero:after{content:"";position:absolute;inset:auto -12% -18% auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(222,111,77,.22),transparent 64%);pointer-events:none}.hero-copy h1,.section-heading h2,.auth-card h1,.admin-topbar h1,.panel-heading h2{font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;letter-spacing:-.04em;line-height:.95}.hero-copy h1{font-size:clamp(3rem,8vw,6.2rem);margin:0 0 18px;max-width:10ch}.lead{color:var(--ink-soft);font-size:1.08rem;line-height:1.7;margin:0;max-width:62ch}.lead.compact{max-width:34ch}.hero-actions,.project-links,.contact-actions,.admin-topbar-actions,.form-actions,.editor-actions,.footer-links{display:flex;flex-wrap:wrap;gap:12px}.hero-actions{margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 18px;border-radius:999px;border:1px solid transparent;font-weight:600;text-decoration:none;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--ink);color:var(--paper)}.button-secondary{background:transparent;border-color:var(--line);color:var(--ink)}.button-danger{background:transparent;border-color:#9d41283d;color:var(--accent-deep)}.hero-panel{display:flex;flex-direction:column;justify-content:space-between;gap:24px;border-radius:var(--radius-lg);padding:22px;background:linear-gradient(180deg,#1e1d1aeb,#1e1d1ac7);color:var(--paper)}.profile-chip{display:grid;gap:8px}.profile-chip span,.profile-grid dt,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700}.profile-grid{display:grid;gap:16px;margin:0}.profile-grid div{padding-top:14px;border-top:1px solid rgba(244,239,231,.12)}.profile-grid dd{margin:6px 0 0;font-size:1rem;line-height:1.55}.section-card,.contact-banner,.admin-panel{margin-top:24px;padding:28px;border-radius:var(--radius-lg)}.section-heading{display:grid;gap:10px;margin-bottom:18px}.section-heading h2{margin:0;font-size:clamp(2rem,5vw,3.4rem);max-width:12ch}.body-copy,.insight-card p,.project-summary,.project-details,.auth-copy,.status-text{color:var(--ink-soft);line-height:1.75}.insight-grid,.projects-grid{display:grid;gap:18px}.insight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-card,.project-card,.editor-card{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--panel-strong);padding:22px}.insight-card h3,.project-card h3,.editor-card h3{font-family:Iowan Old Style,Palatino Linotype,Georgia,serif;font-size:1.7rem;line-height:1.05;margin:8px 0 14px}.inline-link,.project-links a,.footer-links a{text-decoration:none;color:var(--accent-deep);font-weight:600}.project-card{display:grid;gap:18px}.project-meta{display:flex;justify-content:space-between;gap:16px;color:var(--ink-soft);font-size:.92rem}.stack-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}.stack-list li{padding:8px 12px;border-radius:999px;background:#1e1d1a0d;font-size:.9rem}.contact-banner{display:flex;align-items:center;justify-content:space-between;gap:24px}.site-footer{padding:0 0 42px}.footer-links{width:min(1120px,calc(100vw - 32px));margin:0 auto;padding-top:12px;justify-content:flex-end}.admin-auth-shell{display:grid;min-height:100vh;place-items:center;padding:32px 0}.auth-card{width:min(560px,100%);padding:32px;border-radius:var(--radius-lg)}.auth-card h1{font-size:clamp(2.4rem,7vw,4rem);margin:0 0 14px}.stack-form,.admin-grid{display:grid;gap:16px}.stack-form{margin-top:24px}label{display:grid;gap:8px;font-weight:600}input,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffb8;padding:14px 16px;color:var(--ink);font:inherit}textarea{resize:vertical}.status-text{min-height:1.5em}.admin-shell{padding:28px 0 80px}.admin-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px}.admin-topbar h1{margin:0;font-size:clamp(2.2rem,5vw,3.6rem)}.panel-heading,.editor-card-header{display:flex;justify-content:space-between;gap:16px;align-items:start}.status-pill{min-width:72px;min-height:1.5rem;margin:0;color:var(--accent-deep);font-size:.9rem;font-weight:700}.editor-list{display:grid;gap:16px;margin-top:18px}.checkbox-row{display:flex;align-items:center;gap:10px;font-weight:600}.checkbox-row input{width:auto;margin:0}@media(max-width:900px){.hero,.contact-banner,.admin-topbar,.panel-heading,.editor-card-header{grid-template-columns:1fr;flex-direction:column;align-items:start}.insight-grid,.projects-grid{grid-template-columns:1fr}}@media(max-width:720px){.site-shell,.admin-shell,.admin-auth-shell,.footer-links{width:min(100vw - 20px,1120px)}.hero,.section-card,.contact-banner,.admin-panel,.auth-card{padding:22px;border-radius:24px}.hero-copy h1,.section-heading h2{max-width:none}}
