:root{--paper:#fbf9f5;--cream:#f2ece2;--ink:#292b29;--muted:#625e56;--line:#dfd8ca;--olive:#576749;--olive2:#374b38;--red:#dc382e;--gold:#f6d42d;--card:#fff;--radius:12px;--wrap:1100px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.58}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}.wrap{width:min(var(--wrap),calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px;z-index:999}.skip:focus{left:16px;top:16px;background:white;padding:12px}.site-header{background:#fff;border-bottom:1px solid #e7e0d4;position:relative;z-index:40}.header-inner{min-height:98px;display:flex;align-items:center;gap:30px}.brand{display:inline-flex;flex:0 0 auto;align-items:center}.brand img{display:block;width:min(365px,32vw);min-width:230px;height:auto}.main-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.main-nav a{font-size:14px;font-weight:650;text-decoration:none}.main-nav a:hover,.main-nav a:focus-visible{color:var(--olive)}.nav-group{position:relative;display:flex;align-items:center;gap:2px}.nav-group .dropdown-toggle{border:0;background:transparent;padding:10px;color:var(--muted)}.nav-dropdown{position:absolute;display:none;top:100%;left:0;min-width:230px;background:white;padding:10px;border:1px solid var(--line);border-radius:8px;box-shadow:0 15px 25px #19191915;flex-direction:column;z-index:10}.nav-dropdown a{padding:10px 13px;border-radius:4px}.nav-dropdown a:hover{background:var(--paper)}.nav-group.open .nav-dropdown{display:flex}.admin-entry{text-decoration:none;font-size:13px;display:inline-flex;gap:5px;align-items:center;color:var(--olive)}.nav-toggle{display:none;border:1px solid var(--line);border-radius:7px;background:white;padding:10px 14px;font-weight:650}.ico{display:inline-block;flex-shrink:0;vertical-align:-4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:1px solid var(--line);padding:12px 18px;min-height:45px;background:white;color:var(--ink);border-radius:7px;font-weight:650;font-size:14px;line-height:1.2}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--olive2);border-color:var(--olive2);color:white}.btn.secondary{background:var(--paper)}.btn.subtle{background:transparent;border-color:#b2b5a8}.btn.tiny{padding:8px 11px;min-height:38px;font-size:13px}.content-block{position:relative}.block-hero{background:#f3eee4;padding:85px 0 72px;border-bottom:1px solid var(--line)}.hero-inner{text-align:center;max-width:840px}.overline{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--olive);margin:0 0 14px}.hero-inner h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,6vw,74px);font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:0 auto 19px}.hero-lede{font-family:Georgia,serif;font-size:clamp(21px,2.4vw,29px);color:#686359;line-height:1.4;margin:0 auto 34px;max-width:690px}.hero-actions{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.block-spotlight{padding:46px 0 22px;background:#fff}.spotlight-frame{height:clamp(260px,35vw,440px);overflow:hidden;border-radius:9px;background:linear-gradient(105deg,#dcd5c7,#eee7d9 40%,#d4d4c7);position:relative}.spotlight-frame>img{width:100%;height:100%;object-fit:cover}.spotlight-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#67665a;gap:12px}.spotlight-empty .ornament{width:80px;height:80px;opacity:.5;object-fit:contain}.spotlight-empty span{font-family:Georgia,serif;font-size:clamp(22px,4vw,32px)}.spotlight-empty small{font-size:12px;letter-spacing:.02em}.spotlight-caption{display:flex;gap:12px;align-items:baseline;justify-content:space-between;color:#766f64;padding:14px 2px 0;font-size:13px}.spotlight-caption strong{font-weight:650;color:#4e5246}.block-richtext{padding:59px 0}.reading{max-width:850px}.reading h2,.section-heading h2,.feature-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.3vw,45px);font-weight:500;line-height:1.14;letter-spacing:-.025em;margin:0 0 24px}.prose{font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.75;color:#393831}.prose p{margin:0 0 19px}.prose p:last-child{margin-bottom:0}.prose a{color:var(--olive2)}.block-cards,.block-news,.block-gallery{padding:64px 0 80px;background:var(--cream)}.block-news{background:#fff}.section-heading{margin-bottom:30px}.section-heading h2{margin-bottom:8px}.section-heading>p:not(.overline){color:var(--muted);font-size:16px;margin:0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.topic-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-height:260px}.topic-symbol{height:116px;display:flex;align-items:center;justify-content:center;background:#e8e0d4}.topic-symbol img{width:60px;height:60px;object-fit:contain;opacity:.55}.topic-photo{height:165px;overflow:hidden;background:var(--cream)}.topic-photo img{width:100%;height:100%;object-fit:cover}.topic-body{padding:22px;flex:1;display:flex;flex-direction:column}.topic-body h3{font-family:Georgia,serif;font-size:23px;line-height:1.22;font-weight:500;margin:0 0 10px}.topic-body p{font-size:14px;color:var(--muted);margin:0 0 18px;flex:1}.text-link{font-weight:750;color:var(--olive2);font-size:13px}.block-feature{padding:70px 0;background:#eef0e8}.feature-inner{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.feature-inner:not(:has(.feature-photo)){grid-template-columns:1fr}.feature-copy{max-width:690px}.feature-copy .prose{margin-bottom:25px}.feature-photo{width:100%;height:330px;object-fit:cover;border-radius:9px}.site-footer{background:#292d27;color:#eeeae0;padding:45px 0 55px}.site-footer .wrap{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:20px}.footer-logo{width:205px;filter:brightness(0) invert(1);opacity:.75}.site-footer p{font-size:13px;color:#c0c2b8}.site-footer a{font-size:13px;margin-left:12px;color:#fff}.muted{color:var(--muted)}.small{font-size:12px}.error{background:#fce7e4;color:#9b2d28;padding:11px 14px;border-radius:6px}.notice{background:#e5eddf;color:#31442f;padding:11px 14px;border-radius:6px;display:flex;align-items:center;gap:9px}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 20px;background:var(--cream);gap:23px}.auth-logo{width:min(365px,90vw)}.auth-card{width:min(470px,100%);background:white;border:1px solid var(--line);border-radius:12px;padding:32px;box-shadow:0 10px 40px #2424240a}.auth-card h1{font:normal 35px Georgia,serif;margin:0 0 10px}.auth-card p{color:var(--muted)}.auth-card form{display:grid;gap:16px}.auth-card label,.settings-form label,.form-columns label,.admin-panel label{font-weight:650;font-size:13px;display:grid;gap:6px}.auth-card input,.settings-form input,.settings-form textarea,.admin-panel input,.admin-panel textarea,.admin-panel select,.editor-card input,.editor-card textarea,.editor-card select{width:100%;border:1px solid #cfcabe;background:#fff;border-radius:6px;padding:11px 12px;color:var(--ink);min-height:44px}.auth-card input:focus,.admin-panel input:focus,.editor-card input:focus{outline:2px solid var(--olive);outline-offset:2px}.admin-header .header-inner{min-height:76px}.admin-header .brand img{width:240px;min-width:auto}.header-subtitle{font-size:13px;letter-spacing:.08em;color:var(--muted);border-left:1px solid var(--line);padding-left:17px}.admin-header .btn{margin-left:auto}.icon-button{width:40px;height:40px;background:white;border:1px solid var(--line);border-radius:6px}.admin-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding:35px 0 65px;align-items:start}.admin-side{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:3px;position:sticky;top:12px}.admin-caption{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--muted);padding:7px 9px}.admin-side a{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:14px;font-weight:600;padding:12px 10px;border-radius:7px;min-height:46px}.admin-side a.current,.admin-side a:hover{background:#f0f1e9;color:var(--olive2)}.admin-content>h1,.admin-title-row h1{font:normal 46px Georgia,serif;line-height:1.15;margin:0 0 17px}.admin-panel{background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:22px;padding:25px}.admin-panel h2{font:normal 27px Georgia,serif;margin:0 0 12px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:26px 0}.stat{display:grid;gap:5px;text-decoration:none;background:white;border:1px solid var(--line);border-radius:10px;padding:19px}.stat>strong{font-size:36px}.stat>span{color:var(--muted);font-size:13px}.settings-form,.form-columns{display:grid;gap:18px;max-width:640px}.settings-form small{font-weight:400;color:var(--muted)}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;font-size:12px;color:var(--muted);letter-spacing:.02em}.data-table th,.data-table td{padding:14px;border-bottom:1px solid #e6e3dc}.inline-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.inline-form input{flex:1 1 220px}.admin-actions{display:flex;justify-content:space-between;gap:13px;margin-top:18px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:14px}.media-card{padding:10px;min-width:0;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere;display:grid;gap:8px}.media-preview{height:110px;background:var(--cream);display:flex;align-items:center;justify-content:center}.media-preview img{width:100%;height:100%;object-fit:cover}.media-card form{margin:0}.text-danger{border:0;background:none;padding:4px 0;color:#9e2823;text-decoration:underline}.revision-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;gap:15px}.nav-row{display:grid;grid-template-columns:1.2fr 1.3fr 1fr auto;gap:10px;align-items:end;border:1px solid var(--line);padding:12px;margin:10px 0;border-radius:8px;background:var(--paper)}.nav-row label{font-size:12px}.nav-buttons{display:flex;gap:4px}.nav-buttons button{min-height:42px;min-width:40px;background:white;border:1px solid var(--line);border-radius:5px}.nav-help{font-size:13px;color:var(--muted)}
@media(max-width:1000px){.header-inner{gap:15px}.main-nav{gap:13px}.brand img{min-width:195px;width:245px}.feature-inner{gap:25px}}@media(max-width:780px){.wrap{width:min(100% - 30px,var(--wrap))}.header-inner{min-height:80px;flex-wrap:wrap}.brand img{min-width:190px;width:220px}.nav-toggle{display:flex;align-items:center;gap:8px;margin-left:auto}.main-nav{display:none;flex-direction:column;align-items:stretch;width:100%;order:9;padding:5px 0 18px;gap:3px}.main-nav.show{display:flex}.nav-group{flex-wrap:wrap;justify-content:space-between}.nav-group>a{padding:10px 5px}.nav-dropdown{position:static;box-shadow:none;border:0;background:var(--paper);width:100%;display:none}.nav-group.open .nav-dropdown{display:flex}.admin-entry{margin-left:auto}.block-hero{padding:61px 0}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-inner{grid-template-columns:1fr}.site-footer .wrap{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr}.admin-side{position:static;display:flex;overflow-x:auto;white-space:nowrap}.admin-side .admin-caption{display:none}.admin-side a{min-width:max-content}.nav-row{grid-template-columns:1fr 1fr}.nav-row .nav-buttons{grid-column:1/-1}.stat-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){.card-grid,.stat-grid{grid-template-columns:1fr}.hero-inner h1{font-size:42px}.prose{font-size:17px}.block-richtext{padding:40px 0}.block-cards,.block-news,.block-feature{padding:48px 0}.spotlight-frame{height:235px}.spotlight-caption{flex-direction:column;gap:2px}.site-footer .wrap{gap:0}.nav-row{grid-template-columns:1fr}.auth-card{padding:21px}.admin-panel{padding:17px}.admin-content>h1{font-size:34px}.admin-header .header-subtitle{display:none}.admin-header .brand img{width:175px}.admin-header .header-inner{flex-wrap:nowrap}}
