:root{--pine: #5a6e4e;--pine-deep: #4a5c3e;--moss: #7d9274;--sage: #eadfd3;--mist: #fcf2e8;--gold: #e8b4b8;--gold-soft: #f3d6d8;--root: #8b6a48;--ink: #3a342e;--muted: #6d655c;--white: #fcf2e8;--line: rgba(74, 92, 62, .14);--danger: #b42318;--font-display: "Fraunces", Georgia, serif;--font-body: "Outfit", "Segoe UI", sans-serif;--radius: 2px;--shadow: none;--max: 1080px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden}body{font-family:var(--font-body);color:var(--ink);background:var(--mist);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(100% - 2.5rem,var(--max));margin-inline:auto}.section{padding:4rem 0 5rem}.kicker{margin:0 0 .6rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--root);font-weight:400}.section-title{font-family:var(--font-display);font-size:clamp(1.7rem,2.8vw,2.35rem);font-weight:500;margin:0 0 .5rem;color:var(--pine-deep);line-height:1.2}.section-lead{margin:0 0 2.5rem;max-width:34rem;color:var(--muted);font-weight:300}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;border-radius:0;padding:.7rem 1.2rem;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-primary,.btn-dark{background:var(--pine-deep);color:var(--mist);border-color:var(--pine-deep)}.btn-primary:hover,.btn-dark:hover{background:var(--root);border-color:var(--root)}.btn-secondary,.btn-ghost{background:transparent;color:var(--pine-deep);border-color:var(--line)}.btn-ghost:hover,.btn-secondary:hover{border-color:var(--pine-deep)}.btn-danger{background:transparent;color:var(--danger);border-color:#b423184d}.content-list{display:grid;gap:0;border-top:1px solid var(--line)}.content-row{display:grid;grid-template-columns:220px 1fr auto;gap:1.75rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--line);background:transparent}.content-row:hover h3{color:var(--root)}.content-row img{width:100%;height:140px;object-fit:cover}.content-row h3{margin:0 0 .4rem;font-family:var(--font-display);font-size:1.35rem;font-weight:500;color:var(--pine-deep);transition:color .2s ease}.content-row p{margin:0;color:var(--muted);font-weight:300;font-size:.95rem}.content-meta{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--root);margin-bottom:.4rem}.prose{max-width:680px;font-weight:300;font-size:1.05rem}.prose :is(p,ul,ol){margin:0 0 1rem}.page-hero{padding:3.5rem 0 1.5rem;border-bottom:1px solid var(--line);margin-bottom:.5rem}.page-hero h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.8rem);font-weight:500;margin:0 0 .5rem;color:var(--pine-deep)}.page-hero .muted{max-width:32rem;font-weight:300}.muted{color:var(--muted)}.error-text{color:var(--danger)}.empty-state{padding:2.5rem 0;color:var(--muted);border:none}.admin-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr;background:var(--mist)}.admin-nav{background:var(--pine-deep);color:var(--mist);padding:1.5rem 1rem}.admin-nav a{display:block;padding:.7rem .8rem;margin-bottom:.2rem;color:#f9f3ead9}.admin-nav a.active,.admin-nav a:hover{background:#f9f3ea14;color:var(--gold-soft)}.admin-main{padding:2rem}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.9rem 0;text-align:left;border-bottom:1px solid var(--line)}.form-grid{display:grid;gap:1rem;max-width:720px}.form-grid label{display:grid;gap:.35rem;font-weight:500}.form-grid input,.form-grid textarea,.form-grid select{padding:.75rem .9rem;border:1px solid var(--line);background:#fff8f0;border-radius:0}.form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.admin-modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:#3a342e61}.admin-modal{width:min(100%,640px);max-height:min(88dvh,760px);overflow:auto;background:var(--mist);border:1px solid var(--line);padding:1.5rem 1.4rem 1.35rem;box-shadow:0 18px 50px #3a342e29}.admin-modal h2{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.55rem;font-weight:500;color:var(--pine-deep)}.admin-modal .form-grid{max-width:none}.form-grid label.admin-check{display:flex;flex-direction:row;align-items:flex-start;gap:.7rem;padding:.9rem .95rem;border:1px solid var(--line);background:#fff8f0;cursor:pointer;font-weight:500}.admin-table label.admin-check{display:inline-flex;flex-direction:row;align-items:center;gap:.45rem;padding:.2rem 0;border:0;background:transparent;cursor:pointer;font-weight:400}.admin-check input{width:1.05rem;height:1.05rem;margin-top:.15rem;accent-color:var(--pine-deep)}.admin-check small{display:block;margin-top:.2rem;font-weight:400;color:var(--muted)}.admin-table .row-actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.file-field{display:grid;gap:.45rem}.file-field input[type=file]{padding:.55rem 0;border:0;background:transparent}.file-hint{font-size:.88rem;font-weight:300}.file-preview{width:100%;max-height:180px;object-fit:cover;border:1px solid var(--line)}.file-name{font-size:.88rem;color:var(--pine-deep)}@media(max-width:800px){.container{width:min(100% - 1.5rem,var(--max))}.content-row{grid-template-columns:1fr;gap:1rem}.content-row img{height:200px}.admin-shell{grid-template-columns:1fr}}
