:root{--ink:#18251f;--muted:#68746e;--paper:#f7f5ee;--white:#fff;--green:#146b4b;--green-dark:#0b4430;--lime:#d8ee73;--line:#dfe4df;--danger:#b42318;--shadow:0 18px 55px rgba(24,37,31,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--paper);line-height:1.65}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1120px,calc(100% - 40px));margin:auto}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:800;font-size:1.08rem;letter-spacing:-.02em}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--green);color:#fff;border-radius:11px;font-size:.78rem;letter-spacing:.04em}.site-header nav{display:flex;flex-wrap:wrap;gap:24px}.site-header nav a{color:#34423b;font-weight:650;font-size:.93rem}.hero{padding:86px 0;background:radial-gradient(circle at 85% 10%,#d8ee7370,transparent 30%),linear-gradient(140deg,#edf5ec,#f8f5e9)}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:64px;align-items:center}.eyebrow{display:block;color:var(--green);font-size:.76rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5.2rem);line-height:.98;max-width:800px;margin:.25em 0;letter-spacing:-.04em}.hero p{font-size:1.17rem;color:var(--muted);max-width:650px;margin-bottom:30px}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:9px;padding:12px 19px;background:var(--green);color:#fff;font-weight:750;cursor:pointer;font-size:.95rem}.button:hover{background:var(--green-dark);text-decoration:none}.button.secondary{background:#edf1ee;color:var(--ink)}.button.full{width:100%;margin-top:8px}.hero-card{min-height:310px;border-radius:24px;padding:35px;background:var(--green-dark);color:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:space-between;transform:rotate(2deg)}.hero-card span{color:var(--lime);font-weight:800}.hero-card strong{font-family:Georgia,serif;font-size:2.2rem;line-height:1.18}.section{padding:72px 0}.section-heading,.admin-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section h1,.section h2,.content-shell h1,.admin-main h1{font-family:Georgia,serif;line-height:1.1;letter-spacing:-.025em}.section h1{font-size:3rem}.section-heading h2{font-size:2.3rem;margin:.15em 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 30px rgba(24,37,31,.04)}.card>img{width:100%;height:190px;object-fit:cover}.card-body{padding:24px}.category{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--green)}.card h2,.card h3{line-height:1.25;margin:.55em 0}.card h2 a,.card h3 a{color:var(--ink)}.card p,.card time{color:var(--muted);font-size:.92rem}.empty{padding:40px;border:1px dashed #bdc7c0;border-radius:12px;color:var(--muted);text-align:center}.content-shell{max-width:900px;padding-top:70px;padding-bottom:90px}.prose{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(28px,6vw,70px);box-shadow:var(--shadow)}.prose h1{font-size:clamp(2.4rem,6vw,4.4rem);margin:.15em 0 .35em}.prose h2{font-family:Georgia,serif;font-size:2rem;margin-top:1.7em}.prose img{max-width:100%;height:auto;border-radius:10px}.prose .featured{width:100%;max-height:520px;object-fit:cover;margin:28px 0}.byline{color:var(--muted);margin-bottom:20px}.site-footer{background:var(--green-dark);color:#dce7e1;padding:55px 0 20px}.site-footer a{color:#fff}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner p{color:#a9bbb2;margin:.4em 0}.copyright{border-top:1px solid #ffffff24;margin-top:35px;padding-top:18px;color:#9fb3a9;font-size:.84rem}.admin-body{background:#eef1ed}.admin-nav{position:fixed;inset:0 auto 0 0;width:245px;background:#102c20;padding:25px 20px;display:flex;flex-direction:column;color:#fff}.brand.inverse{color:#fff}.brand.inverse .brand-mark{background:var(--lime);color:var(--green-dark)}.admin-nav nav{display:flex;flex-direction:column;gap:7px;margin-top:45px}.admin-nav nav a{color:#c8d5ce;padding:10px 12px;border-radius:7px;font-weight:650}.admin-nav nav a:hover{background:#ffffff12;color:#fff;text-decoration:none}.admin-nav form{margin-top:auto}.nav-logout{background:none;border:0;color:#c8d5ce;padding:10px 12px;cursor:pointer;font:inherit}.admin-main{margin-left:245px;padding:45px;max-width:1400px}.admin-main.wide{max-width:none}.admin-heading h1{font-size:2.7rem;margin:.1em 0}.stats{display:grid;grid-template-columns:repeat(2,minmax(180px,320px));gap:22px;margin-bottom:28px}.stats a,.admin-panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:25px;box-shadow:0 5px 22px rgba(24,37,31,.04)}.stats a{display:flex;flex-direction:column;color:var(--ink)}.stats a:hover{text-decoration:none;border-color:#9fb4a8}.stats strong{font-size:2.6rem;line-height:1}.stats span{color:var(--muted)}.admin-panel h2{margin-top:0}.actions{display:flex;gap:12px}.alert{padding:12px 15px;margin-bottom:20px;border-radius:8px;background:#dff3e9;color:#155d42}.alert.error,.field-error{background:#fee4e2;color:var(--danger)}.field-error{display:block;padding:2px 5px;margin-top:4px;border-radius:4px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:middle}th{background:#f8faf8;color:var(--muted);font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}td small{display:block;color:var(--muted)}.row-actions{white-space:nowrap}.row-actions a{margin-right:12px;font-weight:700}.status{display:inline-block;padding:4px 8px;border-radius:99px;background:#eee;color:#68706c;font-size:.7rem;font-weight:850}.status.published{background:#dff3e9;color:#146b4b}.editor{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:25px}.editor-main{display:flex;flex-direction:column;gap:25px}.editor-side{display:flex;flex-direction:column;gap:18px}.sticky{position:sticky;top:20px}label{display:block;font-weight:720;margin-bottom:18px}input,textarea,select{display:block;width:100%;margin-top:6px;border:1px solid #cbd3ce;border-radius:7px;background:#fff;padding:10px 12px;font:inherit;color:var(--ink)}textarea{min-height:100px;resize:vertical}.code-field{font-family:"SFMono-Regular",Consolas,monospace;font-size:.88rem}.code-field.tall{min-height:430px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label small{font-weight:400;color:var(--muted)}label.check{display:flex;gap:10px;align-items:center}label.check input{width:auto;margin:0}.danger-zone{border:1px solid #f0b9b5;border-radius:10px;padding:15px}.danger-zone button{border:0;background:none;color:var(--danger);font-weight:750;cursor:pointer}.login-card{width:min(430px,calc(100% - 35px));margin:9vh auto;background:#fff;padding:38px;border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow)}.login-card h1{font-family:Georgia,serif;font-size:2.3rem;margin-bottom:0}.login-card>p{color:var(--muted);margin-top:4px;margin-bottom:25px}@media(max-width:850px){.hero-grid,.editor{grid-template-columns:1fr}.hero-card{display:none}.cards{grid-template-columns:1fr 1fr}.admin-nav{position:static;width:100%;height:auto}.admin-nav nav{flex-direction:row;flex-wrap:wrap;margin-top:20px}.admin-nav form{display:none}.admin-main{margin-left:0;padding:28px 20px}.editor-side{grid-row:1}.sticky{position:static}}@media(max-width:580px){.header-inner{align-items:flex-start;padding:15px 0;flex-direction:column}.site-header nav{gap:15px}.hero{padding:55px 0}.cards{grid-template-columns:1fr}.footer-inner,.section-heading,.admin-heading{align-items:flex-start;flex-direction:column}.form-grid,.stats{grid-template-columns:1fr}.prose{border-radius:0;border-left:0;border-right:0}.content-shell{width:100%}.admin-main{padding:24px 14px}}.stats{grid-template-columns:repeat(3,minmax(180px,320px))}.actions{flex-wrap:wrap}.login-links{text-align:center}.login-card>.login-links{margin:18px 0 0}@media(max-width:580px){.stats{grid-template-columns:1fr}}.muted{color:var(--muted);margin-top:0}.question-check-list{display:grid;gap:10px;max-height:520px;overflow:auto;padding-right:6px}.question-check{display:grid;grid-template-columns:auto 1fr;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcfb;font-weight:600}.question-check input{width:auto;margin-top:5px}.question-check span{display:grid;gap:3px}.question-check strong{color:var(--green-dark)}.question-check small{color:var(--muted);font-weight:500}.admin-data-table{width:100%}.dt-container{padding:16px}.dt-container .dt-layout-row{gap:14px;margin:0 0 12px}.dt-container .dt-search input,.dt-container .dt-length select{border:1px solid #cbd3ce;border-radius:7px;background:#fff;padding:8px 10px;color:var(--ink)}.dt-container .dt-paging .dt-paging-button{border:1px solid var(--line)!important;border-radius:8px!important;background:#fff!important;color:var(--ink)!important;margin:0 3px!important}.dt-container .dt-paging .dt-paging-button:hover{border-color:#9fb4a8!important;background:#f8faf8!important;text-decoration:none}.dt-container .dt-paging .dt-paging-button.current{background:var(--green)!important;border-color:var(--green)!important;color:#fff!important}.dt-container .dt-paging .dt-paging-button.disabled{opacity:.45}.dt-container .dt-processing{border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);background:#fff}@media(max-width:580px){.dt-container{padding:12px}.dt-container .dt-paging .dt-paging-button{margin:3px!important}}.admin-body{font-size:14px;line-height:1.42}.admin-body .admin-nav{width:218px;padding:18px 14px}.admin-body .admin-nav nav{gap:4px;margin-top:26px}.admin-body .admin-nav nav a,.admin-body .nav-logout{padding:8px 9px;font-size:.9rem}.admin-body .brand{font-size:.98rem}.admin-body .brand-mark{width:32px;height:32px;border-radius:8px;font-size:.7rem}.admin-body .admin-main{margin-left:218px;max-width:none;padding:24px}.admin-body .admin-heading{align-items:center;margin-bottom:16px}.admin-body .admin-heading h1,.admin-body .admin-main h1{font-family:inherit;font-size:1.85rem;letter-spacing:0;margin:.08em 0}.admin-body .eyebrow{font-size:.68rem;letter-spacing:.1em}.admin-body .button{min-height:34px;border-radius:7px;padding:8px 12px;font-size:.88rem}.admin-body .button.full{margin-top:4px}.admin-body .stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.admin-body .stats a,.admin-body .admin-panel{border-radius:9px;padding:15px;box-shadow:0 3px 14px rgba(24,37,31,.035)}.admin-body .stats strong{font-size:1.9rem}.admin-body .admin-panel h2{font-size:1.05rem;margin:0 0 10px}.admin-body .admin-panel p{margin:.25em 0 .75em}.admin-body .actions{gap:8px}.admin-body .alert{padding:9px 11px;margin-bottom:12px;border-radius:7px}.admin-body .table-wrap{border-radius:9px}.admin-body table{font-size:.86rem}.admin-body th,.admin-body td{padding:8px 10px}.admin-body th{font-size:.68rem;letter-spacing:.05em}.admin-body td small{font-size:.78rem}.admin-body .row-actions a{margin-right:8px}.admin-body .status{padding:3px 7px;font-size:.66rem}.admin-body .editor{grid-template-columns:minmax(0,1fr) 248px;gap:16px}.admin-body .editor-main,.admin-body .editor-side{gap:12px}.admin-body .sticky{top:12px}.admin-body label{margin-bottom:10px;font-size:.9rem}.admin-body label small{font-size:.78rem;line-height:1.35}.admin-body input,.admin-body textarea,.admin-body select{margin-top:4px;border-radius:6px;padding:8px 9px;font-size:.92rem;line-height:1.35}.admin-body textarea{min-height:76px}.admin-body .code-field{font-size:.82rem}.admin-body .code-field.tall{min-height:300px}.admin-body .form-grid{gap:10px}.admin-body .danger-zone{border-radius:8px;padding:11px}.admin-body .question-check-list{gap:7px;max-height:390px}.admin-body .question-check{gap:8px;padding:9px}.admin-body .dt-container{padding:8px}.admin-body .dt-container .dt-layout-row{gap:8px;margin:0 0 8px}.admin-body .dt-container .dt-search input,.admin-body .dt-container .dt-length select{padding:6px 8px;font-size:.86rem}.admin-body .dt-container .dt-info{font-size:.82rem}.admin-body .dt-container .dt-paging .dt-paging-button{min-width:30px;padding:5px 8px!important;border-radius:6px!important;margin:0 2px!important}@media(max-width:1100px){.admin-body .admin-nav{width:200px}.admin-body .admin-main{margin-left:200px;padding:20px}.admin-body .editor{grid-template-columns:minmax(0,1fr) 225px}}@media(max-width:920px){.admin-body .admin-nav{position:static;width:100%;height:auto}.admin-body .admin-nav nav{flex-direction:row;flex-wrap:wrap;margin-top:14px}.admin-body .admin-nav form{display:none}.admin-body .admin-main{margin-left:0;padding:18px}.admin-body .editor{grid-template-columns:1fr}.admin-body .editor-side{grid-row:1}.admin-body .sticky{position:static}}@media(max-width:720px){.admin-body .admin-heading{align-items:flex-start;flex-direction:column;gap:8px}.admin-body .admin-heading h1,.admin-body .admin-main h1{font-size:1.55rem}.admin-body .form-grid{grid-template-columns:1fr}.admin-body .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-body .dt-container .dt-layout-row{display:block}.admin-body .dt-container .dt-layout-cell{display:block;text-align:left}.admin-body .dt-container .dt-layout-cell>*{margin:6px 0}.admin-body th,.admin-body td{padding:7px 8px}}@media(max-width:520px){.admin-body .admin-main{padding:12px}.admin-body .admin-panel,.admin-body .stats a{padding:12px}.admin-body .stats{grid-template-columns:1fr}.admin-body .actions{flex-direction:column}.admin-body .actions .button,.admin-body .admin-heading .button{width:100%}.admin-body .code-field.tall{min-height:240px}.admin-body .dt-container{padding:6px}.admin-body .dt-container .dt-paging .dt-paging-button{margin:2px!important}}
/* Core Web Vitals safeguards: stable media boxes, cheaper off-screen rendering, and reduced motion. */
html{text-size-adjust:100%}picture{display:block}.hero-card,.card,.prose,.site-footer,.admin-panel,.stats a,.table-wrap,.question-check{contain:layout paint}.section,.card,.prose,.site-footer,.admin-panel,.stats a,.question-check{content-visibility:auto}.section{contain-intrinsic-size:auto 520px}.card{contain-intrinsic-size:auto 360px}.prose{contain-intrinsic-size:auto 760px}.site-footer{contain-intrinsic-size:auto 260px}.admin-panel,.stats a{contain-intrinsic-size:auto 160px}.question-check{contain-intrinsic-size:auto 58px}.card>img{aspect-ratio:16/9}.prose img{aspect-ratio:auto 16/9;contain-intrinsic-size:auto 420px;background:#f8faf8}.prose .featured{aspect-ratio:16/9;min-height:220px}.brand,.card h2,.card h3,.prose h1,.prose h2{overflow-wrap:anywhere}@media(max-width:580px){.section{contain-intrinsic-size:auto 420px}.prose .featured{min-height:170px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
