
:root{
  --bg:#fdfaf3;--ink:#0b1d3a;--muted:#4a5a78;--accent:#b8862b;--line:#e6dcc8;--card:#ffffff;
  --serif: 'Playfair Display', Georgia, serif;
  --sans: 'Inter', system-ui, -apple-system, sans-serif;
}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block;height:auto}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.2;color:var(--ink);margin:0 0 .6em}
h1{font-size:clamp(2rem,4vw,3.2rem)}h2{font-size:1.7rem}h3{font-size:1.25rem}
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.site-header{position:sticky;top:0;background:rgba(253,250,243,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{font-family:var(--serif);font-size:1.45rem;font-weight:700;color:var(--ink)}
.brand span{color:var(--accent)}
.menu{display:flex;gap:28px;list-style:none;margin:0;padding:0;align-items:center}
.menu a{color:var(--ink);font-weight:500;font-size:.95rem}
.menu a:hover{color:var(--accent);text-decoration:none}
.dropdown{position:relative}
.dropdown>a::after{content:" \25BE";font-size:.7em;color:var(--muted)}
.dropdown-menu{position:absolute;top:100%;left:-12px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 0;min-width:220px;display:none;box-shadow:0 12px 32px rgba(11,29,58,.08)}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:8px 18px;font-size:.92rem}
.menu-toggle{display:none;background:none;border:0;font-size:1.5rem;color:var(--ink);cursor:pointer}
.hero{position:relative;margin-top:0}
.hero-banner{width:100%;height:clamp(320px,55vh,560px);object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,29,58,.15) 0%,rgba(11,29,58,.55) 100%);display:flex;align-items:flex-end}
.hero-text{color:#fff;padding:0 24px 56px;max-width:1120px;margin:0 auto;width:100%}
.hero-text h1{color:#fff;max-width:760px}
.hero-text p{font-size:1.1rem;max-width:600px;opacity:.92}
.section{padding:60px 0}
.section-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:32px;border-bottom:1px solid var(--line);padding-bottom:14px}
.section-title h2{margin:0}.section-title a{font-size:.9rem}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(11,29,58,.08)}
.card .thumb{aspect-ratio:3/2;overflow:hidden}
.card .thumb img{width:100%;height:100%;object-fit:cover}
.card .body{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}
.cat-tag{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.card h3{margin:0 0 10px;font-size:1.15rem}
.card h3 a{color:var(--ink)}
.card p{color:var(--muted);font-size:.94rem;margin:0 0 14px;flex:1}
.meta{color:var(--muted);font-size:.82rem}
.ad-slot{margin:48px auto;padding:16px;background:#f3ecd9;border:1px dashed var(--line);text-align:center;color:var(--muted);font-size:.8rem;border-radius:8px}
.post-hero{aspect-ratio:21/9;overflow:hidden;border-radius:12px;margin-bottom:36px}
.post-hero img{width:100%;height:100%;object-fit:cover}
.post{max-width:740px;margin:0 auto;padding:50px 24px 80px}
.post h1{margin-bottom:14px}
.post-meta{color:var(--muted);font-size:.9rem;margin-bottom:36px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.post p{margin:0 0 1.2em}
.post h2{margin-top:1.8em}
.simple-hero{padding:70px 0 30px;text-align:center}
.simple-hero p{color:var(--muted);max-width:600px;margin:0 auto;font-size:1.05rem}
.archive-list{list-style:none;padding:0;margin:0}
.archive-list li{padding:18px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:baseline}
.archive-list .cat-tag{margin:0;min-width:120px}
.archive-list a{color:var(--ink);font-weight:500;flex:1}
.footer{background:#0b1d3a;color:#cdd6e6;padding:50px 0 28px;margin-top:80px}
.footer .container{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.footer h4{color:#fff;font-family:var(--serif);margin:0 0 14px}
.footer a{color:#cdd6e6;display:block;padding:4px 0;font-size:.92rem}
.footer .small{border-top:1px solid #1c2f4d;margin-top:30px;padding-top:18px;font-size:.82rem;color:#8a9bbb;text-align:center}
form{display:grid;gap:14px;max-width:480px}
input,textarea{font:inherit;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
button{font:inherit;padding:12px 20px;background:var(--accent);color:#fff;border:0;border-radius:8px;cursor:pointer;font-weight:600}
button:hover{background:#9a6f1f}
@media(max-width:860px){
  .grid{grid-template-columns:1fr 1fr}
  .footer .container{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .grid{grid-template-columns:1fr}
  .menu{display:none;position:absolute;top:100%;right:24px;background:#fff;border:1px solid var(--line);border-radius:10px;flex-direction:column;padding:14px;gap:10px;min-width:200px;box-shadow:0 14px 30px rgba(11,29,58,.1)}
  .menu.open{display:flex}
  .menu-toggle{display:block}
  .dropdown-menu{position:static;border:0;box-shadow:none;padding:6px 0 0 12px;display:block}
  .footer .container{grid-template-columns:1fr}
  .archive-list li{flex-direction:column;gap:4px}
}
