*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:#f2eee5;color:#2e444c;font:17px/1.65 Manrope,Arial,Helvetica,sans-serif}
.toolbar{max-width:920px;margin:auto;display:flex;flex-wrap:wrap;gap:12px;padding:20px}
.toolbar a,.toolbar button{font:800 12px/1.4 Manrope,Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;display:inline-flex;align-items:center;min-height:44px;padding:9px 18px;border:1px solid #004062;border-radius:0;background:#fffdf9;color:#004062;text-decoration:none;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}
.toolbar a:hover,.toolbar button:hover{background:#f4eee3;border-color:#ac8149}
.toolbar .primary{background:#004062;color:#fff}
.toolbar .primary:hover{background:#7a1f2b;border-color:#7a1f2b;color:#fff}
a:focus-visible,button:focus-visible{outline:3px solid #167b88;outline-offset:3px}
article{max-width:880px;margin:0 auto 36px;padding:clamp(24px,5vw,60px);background:#fffdf9;border:1px solid #d9d1c3;border-top:4px solid #004062;border-radius:0}
.brand{font-size:12px;font-weight:800;letter-spacing:.18em;color:#004062}
.category{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.18em;line-height:1.4;text-transform:uppercase;color:#7a1f2b;margin:28px 0 14px}
.category::before{content:"";flex:0 0 26px;width:26px;height:1px;background:#ac8149}
h1,h2,.tag{font-family:"Cormorant Garamond","Iowan Old Style",Baskerville,Georgia,serif}
h1{font-size:clamp(36px,5vw,54px);font-weight:400;line-height:1.04;letter-spacing:-.03em;color:#16242c;margin:0 0 16px;overflow-wrap:anywhere}
.tag{font-size:clamp(22px,2.4vw,28px);font-style:italic;line-height:1.25;color:#7d5f28;margin:0 0 24px}
.intro{font-size:19px;padding-bottom:22px;border-bottom:1px solid #d9d1c3}
h2{font-size:clamp(26px,2.6vw,32px);font-weight:500;line-height:1.15;letter-spacing:-.02em;color:#16242c;margin:30px 0 8px}
p{margin:0 0 14px}
footer{position:relative;margin-top:34px;border-top:1px solid #d9d1c3;padding-top:20px;font-size:15px}
footer::before{content:"";position:absolute;left:0;top:-2px;width:72px;height:3px;background:#ac8149}
footer a{color:#004062;overflow-wrap:anywhere;text-decoration-color:#ac8149;text-underline-offset:3px}
footer a:hover{color:#7a1f2b;text-decoration-color:currentColor}
.stamp{font-size:13px;color:#4d5b61}
@page{size:A4;margin:16mm}
@media print{body{background:#fff;color:#16242c;font-size:11pt;line-height:1.4}.toolbar{display:none}article{margin:0;padding:0;border:0;max-width:none;background:#fff}h1{font-size:26pt}h2{font-size:15pt;break-after:avoid;margin-top:15pt}p{orphans:3;widows:3}.intro,.tag{font-size:13pt}.category{margin-top:15pt}footer{font-size:10pt}footer a{text-decoration:none}.brand{font-size:10pt}.stamp{font-size:9pt}}
/* Small displays and browser text zoom; print rules below remain in control. */
@media screen and (max-width: 600px) {
  html { -webkit-text-size-adjust: 100%; }
  body { margin: 0; overflow-wrap: anywhere; }
  .toolbar { padding: 16px; gap: 10px; }
  .toolbar a, .toolbar button { min-height: 48px; white-space: normal; }
  article { margin-inline: 0; padding: 24px 18px; }
  h1 { font-size: 38px; line-height: 1.08; hyphens: auto; }
  h2 { font-size: 28px; line-height: 1.15; hyphens: auto; }
  p, li { font-size: 16px; line-height: 1.65; }
}
