
    :root { --blue: #0b4b62; --red: #bd3026; --paper: #f6efdf; --faded:#708289; }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { margin:0; min-height:100vh; color:var(--blue); background: var(--paper) url('../assets/embedded/0f5306db34686f76.webp') repeat; font-family: 'Arial Narrow', 'Liberation Sans Narrow', 'Helvetica Neue', Arial, sans-serif; }
    a { color:inherit; }
    .page { max-width:1536px; margin:0 auto; }
    .sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap; }
    .poster { position:relative; width:100%; }
    .poster img { display:block; width:100%; height:auto; }
    .hit-area { position:absolute; display:block; z-index:1; color:transparent; border:2px solid transparent; border-radius:8px; text-decoration:none; transition: background-color .2s, outline-color .2s, box-shadow .2s; }
    .hit-area:hover { background:rgba(9,83,102,.075); border-color:rgba(11,75,98,.22); box-shadow: inset 0 0 0 2px rgba(255,252,240,.2); }
    .hit-area:focus-visible { outline:4px solid var(--red); outline-offset:0; background:rgba(255,255,255,.18); }
    .poster .card-hit { top:var(--top); left:var(--left); width:var(--width); height:var(--height); }
    .poster .menu-hit { top:41.25%; height:5.2%; left:var(--left); width:var(--width); border-radius:2px; }
    .mobile { display:none; }
    .site-footer { position:relative; margin:8px 4.9% 36px; color:var(--blue); text-align:center; }
    .footer-rule { display:block; height:5px; border-top:2px solid var(--blue); border-bottom:1px solid var(--blue); opacity:.88; }
    .footer-body { display:grid; grid-template-columns: 1fr 2.4fr 1fr; align-items:center; gap:22px; padding:24px 0 21px; }
    .footer-stamp { justify-self:start; position:relative; width:105px; min-height:99px; border:4px double var(--red); transform:rotate(-4deg); overflow:hidden; }
    .footer-stamp .mono { position:absolute; top:13px; font-size:58px; font-weight:900; line-height:1; letter-spacing:-.08em; }
    .footer-stamp .mono-g { left:16px; color:var(--blue); }
    .footer-stamp .mono-h { left:43px; color:var(--red); }
    .footer-stamp .star { position:absolute; right:11px; bottom:7px; color:var(--red); font-size:14px; line-height:1; }
    .footer-head { margin:0; font-size:clamp(25px,3.1vw,42px); font-weight:900; letter-spacing:.135em; line-height:1.1; transform:scaleX(.89); text-transform:uppercase; }
    .footer-sub { margin:9px 0 0; color:var(--red); font-size:clamp(11px,1.18vw,16px); font-weight:800; text-transform:uppercase; letter-spacing:.18em; }
    .footer-note { margin:11px 0 0; font-size:12px; font-family: Georgia,serif; font-style:italic; letter-spacing:.03em; }
    .back-link { justify-self:end; display:inline-flex; flex-direction:column; justify-content:center; align-items:center; padding:11px 13px; border:1.5px solid var(--blue); text-decoration:none; text-transform:uppercase; font-weight:800; font-size:12px; letter-spacing:.1em; line-height:1.7; min-width:137px; transition: color .2s, background .2s; }
    .back-link:hover,.back-link:focus-visible { color:var(--paper); background:var(--blue); }
    .back-link .up { color:var(--red); font-size:24px; line-height:1.2; }
    .back-link:hover .up,.back-link:focus-visible .up { color:var(--paper); }
    .footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:13px 0; text-align:left; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
    .footer-bottom .red { color:var(--red); }
    .footer-bottom span:last-child { text-align:right; }
    .detail-view { display:none; min-height:620px; padding:38px 5% 32px; }
    .detail-view.is-open { display:block; }
    .home-view.is-hidden { display:none; }
    .detail-top { display:flex; justify-content:space-between; gap:12px; align-items:center; border-bottom:3px double var(--blue); padding-bottom:18px; text-transform:uppercase; font-weight:850; letter-spacing:.14em; font-size:13px; }
    .detail-top a { padding:7px 11px; border:1px solid var(--blue); text-decoration:none; }
    .detail-top a:hover { background:var(--blue);color:var(--paper); }
    .detail-grid { display:grid; grid-template-columns:minmax(0,1.38fr) minmax(290px,.88fr); gap:4.5%; align-items:center; max-width:1370px; margin:0 auto; padding:56px 0 92px; }
    /* Page illustrations are traced vector SVG artwork; crisp at all display resolutions. */
    .detail-illustration { min-height:470px; display:flex; align-items:center; justify-content:center; padding:10px 0; }
    .detail-grid img { width:100%; max-width:790px; height:auto; max-height:510px; object-fit:contain; display:block; image-rendering:auto; }
    .detail-grid img.is-portrait { max-width:455px; max-height:515px; }
    .detail-illustration img { background:transparent; border:0; box-shadow:none; }
    .detail-no { display:inline-block; padding:4px 8px; color:var(--red); border:2px solid var(--red); font-weight:900; font-size:24px; }
    .detail-grid h2 { margin:20px 0; color:var(--red); font-weight:900; font-size:clamp(46px,6vw,93px); line-height:.94; text-transform:uppercase; letter-spacing:-.04em; }
    .detail-grid p { margin:0; max-width:440px; font-family: Georgia,serif; font-size:clamp(18px,2vw,24px); line-height:1.65; }
    .detail-caption { border-top:2px solid var(--blue); margin-top:30px; padding-top:12px; text-transform:uppercase; letter-spacing:.14em; font-size:13px; font-weight:800; }
    @media (max-width: 700px) {
      .desktop { display:none; }
      .mobile { display:block; }
      .small-masthead { padding:23px 5.1% 0; text-align:center; }
      .mini-top { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:0 0 9px; border-bottom:2px solid var(--blue); font-size:10px; letter-spacing:.11em; font-weight:900; text-transform:uppercase; text-align:left; }
      .mini-top strong { color:var(--red); font-size:16px; }
      .small-masthead h1 { margin:20px 0 8px; color:var(--red); font-family:Impact, 'Arial Narrow', sans-serif; font-weight:900; text-transform:uppercase; font-stretch:condensed; letter-spacing:.02em; font-size:clamp(65px,16vw,120px); line-height:.84; text-shadow:1px 1px rgba(187,54,40,.1); }
       /* A gently worn letterpress ink surface, matching the desktop masthead. */
       .small-masthead h1 { background-image:url("../assets/embedded/9b27a813271d7741.webp"); background-size:256px 256px; background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; text-shadow:none; }
      .mini-tagline { margin:17px 0 12px; padding:11px 0; border-top:2px solid var(--blue); border-bottom:2px solid var(--blue); font-weight:950; letter-spacing:.065em; font-size:clamp(13px,3.75vw,20px); line-height:1.3; text-transform:uppercase; }
      .mini-nav { padding:4px 0 14px; border-bottom:2px solid var(--blue); color:var(--red); font-size:clamp(10px,2.5vw,14px); font-weight:900; line-height:2; letter-spacing:.07em; text-transform:uppercase; }
      .mini-nav a { text-decoration:none; padding:2px; }
      .mini-nav a:hover { text-decoration:underline; }
      .mini-nav a:focus-visible { outline:2px solid var(--red); outline-offset:3px; }
      .mobile-grid { display:grid; grid-template-columns:1fr; gap:11px; padding:16px 4.5% 0; }
      .mobile-grid a { display:block; transition: transform .2s,filter .2s; border:2px solid transparent; }
      .mobile-grid a:hover { transform:translateY(-2px); filter:contrast(1.1); }
      .mobile-grid a:focus-visible { outline:3px solid var(--red); }
      .mobile-grid img { display:block; width:100%; height:auto; }
      .site-footer { margin:28px 5% 12px; }
      .footer-body { display:grid; grid-template-columns:1fr 1fr; gap:23px 12px; padding:27px 0 22px; }
      .footer-main { grid-column:1/-1; grid-row:1; }
      .footer-stamp { grid-column:1; grid-row:2; width:85px; min-height:80px; }
      .footer-stamp .mono { top:11px; font-size:46px; }
      .footer-stamp .mono-g { left:12px; }
      .footer-stamp .mono-h { left:32px; }
      .footer-stamp .star { right:8px; bottom:6px; font-size:12px; }
      .back-link { grid-column:2;grid-row:2; }
      .footer-head { font-size:clamp(26px,7.7vw,38px); }
      .footer-sub { font-size:10px; }
      .footer-bottom { flex-direction:column; font-size:9px; text-align:center; line-height:1.75; gap:2px; }
      .footer-bottom span:last-child { text-align:center; }
      .detail-view {padding:23px 6%;min-height:500px;}
      .detail-grid { grid-template-columns:1fr; gap:22px; padding:25px 0 50px; }
      .detail-illustration { min-height:0; padding:7px 0; }
      .detail-grid img {max-width:100%; max-height:410px; margin:auto;}
      .detail-grid img.is-portrait {max-width:330px; max-height:380px;}
      .detail-grid h2 { font-size:55px; }
    }
    @media (min-width:701px) and (max-width:950px) {
      .footer-stamp { width:82px; min-height:78px; }
      .footer-stamp .mono { top:11px; font-size:44px; }
      .footer-stamp .mono-g { left:12px; }
      .footer-stamp .mono-h { left:31px; }
      .footer-stamp .star { right:8px; bottom:5px; font-size:11px; }
      .back-link { min-width:110px; font-size:10px; }
      .footer-bottom { font-size:9px; }
    }
    @media (prefers-reduced-motion:reduce) {html {scroll-behavior:auto;} *,*::before,*::after {transition:none!important;}}
  
    /* Desktop and mobile wood-carving link show the exact same blue-ink card asset. */
    .poster .wood-card-shared {
      display:block;
      position:absolute;
      z-index:1;
      left:4.1666667%; top:70.5765408%; width:30.0130208%; height:auto;
      pointer-events:none;
    }
    .poster .card-hit, .poster .menu-hit {z-index:2;}

    /* Bureau of Correspondence: contact invitation and letter-form styling. */
    [hidden] { display:none!important; }
    .contact-invitation { display:flex; justify-content:center; padding:0 5% 20px; }
    .contact-invitation a { display:inline-flex; align-items:center; gap:15px; padding:15px 25px; border:3px double var(--blue); color:var(--blue); background:rgba(248,241,223,.40); text-decoration:none; text-transform:uppercase; letter-spacing:.14em; font-size:14px; font-weight:900; box-shadow: 3px 3px 0 rgba(12,72,92,.11); transition: background .18s, transform .18s; }
    .contact-invitation a:hover, .contact-invitation a:focus-visible { background:rgba(11,75,98,.10); transform:translateY(-2px); }
    .contact-invitation .contact-post { font-size:24px; color:var(--red); }
    .footer-contact-link { color:var(--red); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
    .contact-grid { display:grid; grid-template-columns:minmax(0,.89fr) minmax(310px,1.11fr); gap:6%; margin:0 auto; padding:52px 0 64px; max-width:1180px; align-items:start; }
    .contact-intro { padding-top:0; display:flex; flex-direction:column; align-items:flex-start; }
    .contact-intro .contact-poster { order:1; margin:0 0 12px; }
    .contact-intro .postmark { order:2; }
    .contact-intro .contact-no { order:3; margin-top:16px; }
    .contact-intro .contact-kicker { order:4; }
    .contact-intro h2 { order:5; }
    .contact-intro p { order:6; }
    .contact-kicker { font-size:13px; font-weight:900; letter-spacing:.19em; text-transform:uppercase; }
    .contact-no {display:inline-block; margin-bottom:15px; padding:5px 9px; border:2px solid var(--red); color:var(--red); font-weight:900; font-size:22px; }
    .contact-intro h2 { margin:14px 0 20px; color:var(--red); font-size:clamp(52px,5.4vw,83px); font-weight:950; letter-spacing:-.055em; line-height:.89; text-transform:uppercase; }
    .contact-intro p { max-width:480px; font: 20px/1.7 Georgia,serif; }
    .postal-art {width:min(100%,470px); height:auto; margin:16px 0 8px; display:block; }
    .contact-poster { border:1px solid rgba(11,75,98,.18); box-shadow: 4px 5px 0 rgba(11,75,98,.08); }
    .postmark {letter-spacing:.12em; font-size:12px; font-weight:900; text-transform:uppercase; line-height:1.8; border-top:1px solid var(--blue); padding-top:16px; }
    .contact-form-wrap {position:relative; border:2px solid var(--blue); padding:28px 29px 27px; background:rgba(246,239,223,.20); box-shadow: 6px 7px 0 rgba(11,75,98,.075); }
    .contact-form-wrap:before {content:'FORM G/H–07 · PRIVATE CORRESPONDENCE'; display:block; margin-bottom:22px; border-bottom:1px solid var(--blue); padding:0 0 14px; font-size:12px; font-weight:900; letter-spacing:.15em; }
    .contact-form-wrap label {font-size:13px; font-weight:900; letter-spacing:.095em; text-transform:uppercase; display:block; margin:16px 0 7px; }
    .contact-form-wrap input:not([type=hidden]),.contact-form-wrap textarea { width:100%; min-height:43px; border:1px solid var(--blue); border-radius:0; background:rgba(255,250,238,.57); padding:11px 13px; color:var(--blue); font:16px/1.5 Georgia,serif; outline-offset:3px; }
    .contact-form-wrap input:focus,.contact-form-wrap textarea:focus {outline:2px solid var(--red);}
    .contact-form-wrap textarea { resize:vertical; min-height:150px; }
    .contact-form-wrap input::placeholder,.contact-form-wrap textarea::placeholder {color:#777d75;opacity:1;}
    .contact-form-wrap .contact-honeypot {position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; left:-200vw!important; top:auto!important; opacity:0!important; pointer-events:none!important; }
    .contact-turnstile {margin:19px 0 12px; min-height:38px; }
    .contact-status {font-size:14px; line-height:1.5; padding:9px 0; min-height:37px; }
    .contact-status[data-state="error"] {color:#a13226;font-weight:700;}
    .contact-status[data-state="success"] {color:#0b5943;font-weight:700;}
    .contact-submit {display:inline-block; padding:15px 23px; border:2px solid var(--blue); background:var(--blue); color:#f9f2e3; font:900 14px/1.4 Arial,sans-serif; letter-spacing:.13em; cursor:pointer; text-transform:uppercase; }
    .contact-submit:hover:not(:disabled),.contact-submit:focus-visible:not(:disabled) {background:var(--red);border-color:var(--red);}
    .contact-submit:disabled {opacity:.46;cursor:not-allowed;}
    .contact-privacy {font:italic 13px/1.5 Georgia,serif; margin:14px 0 0;}
    @media(max-width:700px) {
      .contact-invitation {padding:10px 6% 16px;}
      .contact-invitation a {font-size:11px; padding:12px 13px; gap:7px; letter-spacing:.08em;}
      .contact-grid {grid-template-columns:1fr; gap:14px; padding:25px 0 48px;}
      .contact-intro {padding-top:0;}
      .contact-intro .contact-no {margin-top:12px;}
      .contact-intro h2 {font-size:58px;}
      .contact-intro p {font-size:17px;}
      .postal-art {max-width:350px; margin:0 auto 12px;}
      .contact-form-wrap {padding:19px 17px 23px;}
      .contact-form-wrap:before {font-size:10px;}
    }


    /* Footer mini-meter, replacing the old GH stamp. Ether Output edition. */
    .footer-minimeter { position:relative; justify-self:start; width:142px; height:137px; padding:8px 6px 3px;
      border:3px double var(--blue); background:var(--paper); color:var(--blue); transform:none;
      box-shadow:2px 2px 0 rgba(11,75,98,.12); overflow:hidden; }
    .footer-minimeter::before, .footer-minimeter::after { content:"+"; position:absolute; font:700 8px/1 Arial,sans-serif; opacity:.55; }
    .footer-minimeter::before{left:3px;bottom:3px;} .footer-minimeter::after{right:3px;bottom:3px;}
    .mini-instrument-top {display:flex;justify-content:space-between;align-items:center;gap:4px;
      margin:0 3px; padding:0 2px 4px; border-bottom:1px solid var(--blue);
      font:900 8px/1.1 Arial,sans-serif;letter-spacing:.15em;text-align:left;}
    .mini-live-dot{width:5px;height:5px;background:var(--red);border-radius:50%;}
    .mini-instrument-svg {width:100%;height:auto;display:block; margin:-1px auto 0; overflow:visible;}
    .mini-instrument-needle {transform-origin:70px 86px; transform:rotate(-57deg);animation:mini-reading 14s ease-in-out infinite;will-change:transform;}
    @keyframes mini-reading {
      0%,100% { transform:rotate(-55deg); }
      10% { transform:rotate(11deg); } 15% { transform:rotate(-10deg); }
      24% { transform:rotate(1deg); } 33% {transform:rotate(18deg);}
      43% {transform:rotate(-12deg);} 55% {transform:rotate(35deg);}
      60% {transform:rotate(42deg);} 71% {transform:rotate(7deg);}
      83% {transform:rotate(-18deg);} 90% {transform:rotate(0deg);}
    }
    @media(max-width:700px) { .footer-minimeter {grid-column:1;grid-row:2;width:118px;height:116px;padding:7px 4px 1px;}
      .mini-instrument-top{font-size:7px;padding-bottom:3px;} }
    @media(prefers-reduced-motion:reduce){ .mini-instrument-needle {animation:none;transform:rotate(-8deg);will-change:auto;} }


    /* The original letterpress banner is shared by the home and all section pages. */
    .footer-main { min-width:0; }
    /* Original letterpress ink without a separate rectangular paper background. */
    .footer-banner {display:block; height:137px; width:auto; max-width:100%; object-fit:contain; margin:0 auto; border:0;}


    @media (max-width:950px) {
      .footer-banner {height:auto; width:100%; max-height:137px; object-fit:contain;}
    }
    @media (max-width:700px) {
      .footer-banner {max-height:116px;}
    }
    /* Give the letterpress artwork the main share of the footer. */
    .footer-body {grid-template-columns:minmax(142px,160px) minmax(0,1fr) minmax(120px,140px);}
    @media (max-width:950px) {
      .footer-body {grid-template-columns:1fr 1fr; row-gap:18px;}
      .footer-main {grid-column:1/-1; grid-row:1;}
      .footer-minimeter {grid-column:1; grid-row:2;}
      .back-link {grid-column:2; grid-row:2;}
    }


    /* TV & Radio: a short illustrated introduction followed by readable prose. */
    .detail-view.tv-open .detail-grid { padding:30px 0 15px; }
    .detail-view.tv-open .detail-illustration { min-height:350px; }
    .detail-view.tv-open .detail-grid img { max-height:390px; }
    .detail-view.tv-open .detail-grid p {font-size:clamp(19px,2vw,24px);}
    .tv-story { max-width:750px; margin:0 auto 65px; padding:0 12px; }
    .tv-story[hidden] {display:none !important;}
    .tv-story-rule {height:5px; border-top:2px solid var(--blue); border-bottom:1px solid var(--blue); opacity:.75; margin:5px 0 27px;}
    .tv-story p {font-family:Georgia,serif; font-size:clamp(17px,1.7vw,21px); line-height:1.72; margin:0 0 1.15em;}
    .tv-story p:last-child {margin-bottom:0;}
    @media(max-width:700px) {
      .detail-view.tv-open .detail-grid {padding:23px 0 22px;}
      .detail-view.tv-open .detail-illustration {min-height:0;}
      .detail-view.tv-open .detail-grid img {max-height:330px;}
      .tv-story {padding:0 2px; margin-bottom:35px;}
      .tv-story p {font-size:18px; line-height:1.68;}
    }


  /* RADIO & TELEVISION — picture-rich vintage magazine layout */
  .tv-story{max-width:1000px;margin:0 auto 76px;padding:0 clamp(4px,2.1vw,24px);}
  .tv-story .tv-story-rule{margin-bottom:34px;}
  .tv-magazine-chapter{display:flow-root; margin:0 0 clamp(40px,5vw,67px);}
  .tv-magazine-chapter:last-child{margin-bottom:0;}
  .tv-story .tv-magazine-chapter p{font-size:clamp(17px,1.5vw,20px);line-height:1.7;margin:0 0 1.05em;}
  .tv-magazine-photo{width:min(42%,366px);position:relative;margin:0 0 18px;}
  .tv-magazine-photo.align-right{float:right;margin-left:clamp(22px,3vw,44px);}
  .tv-magazine-photo.align-left{float:left;margin-right:clamp(22px,3vw,44px);}
  .tv-magazine-label{border-top:2px solid var(--blue);display:flex;justify-content:space-between;gap:10px;
    padding:7px 0 8px;font:900 10px/1.3 Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;}
  .tv-magazine-label span:last-child{color:var(--red);}
  .tv-magazine-button{position:relative;display:block;width:100%;padding:0;cursor:zoom-in;
    border:2px solid var(--blue);background:var(--paper);color:var(--blue);border-radius:0;overflow:hidden;
    box-shadow:4px 4px 0 rgba(11,75,98,.13);}
  .tv-magazine-button:hover{border-color:var(--red);}
  .tv-magazine-button:focus-visible,.archive-modal-close:focus-visible{outline:3px solid var(--red);outline-offset:4px;}
  .tv-magazine-button img{display:block;width:100%;height:auto;object-fit:cover;}
  .tv-magazine-button.is-ink img{filter:grayscale(1) sepia(.45) contrast(1.38) brightness(1.1);mix-blend-mode:multiply;}
  .tv-magazine-button.is-ink{background:#c9d6d3;}
  .tv-magazine-button.is-ink::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(145deg,rgba(11,75,98,.20),rgba(245,235,204,.05) 42%,rgba(189,48,38,.16));mix-blend-mode:multiply;}
  .tv-magazine-button.is-comic img{filter:none;mix-blend-mode:normal;}
  .tv-magazine-zoom{position:absolute;right:7px;bottom:8px;padding:5px 7px;
    background:var(--paper);border:1px solid var(--blue);color:var(--red);
    font:900 9px/1 Arial,sans-serif;letter-spacing:.11em;z-index:1;}
  .tv-magazine-photo figcaption{margin-top:10px;color:var(--blue);font:italic 14px/1.5 Georgia,serif;}
  .tv-magazine-photo figcaption small{display:block;margin-top:3px;font:800 9px/1.4 Arial,sans-serif;
    letter-spacing:.10em;text-transform:uppercase;color:var(--red);}

  .archive-modal{box-sizing:border-box;position:fixed;width:min(1080px,calc(100% - 26px));max-width:1080px;
    max-height:calc(100dvh - 20px);margin:auto;border:4px double var(--blue);padding:clamp(11px,2.2vw,21px);
    color:var(--blue);background:var(--paper);box-shadow:0 20px 75px rgba(0,0,0,.52);}
  .archive-modal::backdrop{background:rgba(3,20,30,.9);}
  .archive-modal-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;
    margin-bottom:12px;border-bottom:2px solid var(--blue);padding-bottom:9px;}
  .archive-modal-heading strong{font:900 12px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;}
  .archive-modal-close{padding:8px 12px;color:var(--red);background:transparent;border:2px solid var(--blue);
    font:900 12px/1 Arial,sans-serif;cursor:pointer;white-space:nowrap;}
  .archive-modal-image{display:block;width:auto;max-width:100%;max-height:calc(100dvh - 195px);
    height:auto;object-fit:contain;margin:auto;}
  .archive-modal-caption{font:italic 14px/1.5 Georgia,serif;text-align:center;padding:11px 0 0;margin:0;}
  @media(max-width:700px){
    .tv-story{max-width:600px;padding:0 5px;margin-bottom:38px;}
    .tv-magazine-chapter{margin-bottom:33px;}
    .tv-magazine-photo,.tv-magazine-photo.align-right,.tv-magazine-photo.align-left{
      float:none;width:min(100%,420px);margin:0 auto 22px;}
    .tv-magazine-photo figcaption{font-size:13px;}
    .tv-story .tv-magazine-chapter p{font-size:18px;line-height:1.7;}
    .archive-modal{padding:9px;width:calc(100% - 16px);max-height:calc(100dvh - 16px);}
    .archive-modal-image{max-height:calc(100dvh - 158px);}
    .archive-modal-heading strong{font-size:10px;}
  }

/* Blog journal: intentionally uses the site's established ink-and-paper palette. */
.blog-journal{max-width:1180px;margin:0 auto;padding:12px 20px 54px;color:#0b4b62}
.blog-journal[hidden]{display:none!important}
.blog-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);align-items:center;gap:32px;border-bottom:2px solid #c6342e;padding:18px 0 30px}
.blog-intro img{width:100%;max-height:340px;object-fit:contain;mix-blend-mode:multiply}
.blog-kicker,.blog-post-category{font:700 12px/1.4 'Courier New',monospace;letter-spacing:.1em;color:#b52b2b}
.blog-intro h2{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:clamp(46px,6vw,93px);letter-spacing:-.04em;line-height:.94;margin:20px 0;color:var(--red);text-transform:uppercase}
.blog-intro p{font:19px/1.55 Georgia,serif;max-width:370px}
.blog-intro-rule{display:block;width:90%;height:5px;background:#b82e2b;margin-top:24px}
.blog-layout{display:grid;grid-template-columns:minmax(0,3.2fr) minmax(175px,1fr);gap:30px;margin-top:24px}
.blog-feed-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #0b4b62;padding:0 0 14px;font:700 13px 'Courier New',monospace;letter-spacing:.08em}
.blog-feed-heading span{font-size:11px;font-weight:400;letter-spacing:0}
.blog-post[hidden]{display:none!important}.blog-post{display:grid;grid-template-columns:70px minmax(120px,210px) minmax(0,1fr);gap:18px;padding:24px 0;border-bottom:1px solid #7393a0;align-items:start}
.blog-date{font:700 11px/1.5 'Courier New',monospace;color:#b52b2b;overflow-wrap:anywhere}.blog-date span{display:block;font-size:23px}
.blog-post-art{aspect-ratio:1.35;display:grid;place-items:center;border:2px solid #0b4b62;background:repeating-linear-gradient(0deg,rgba(11,75,98,.045) 0 2px,transparent 2px 5px),#e6e4d5;font:90px Georgia,serif;color:#0b4b62;filter:contrast(.93)}
.blog-garden{font-size:110px}.blog-carving{font-size:105px}
.blog-post h3{font:700 clamp(22px,2.7vw,32px)/1.15 Georgia,serif;text-transform:uppercase;margin:5px 0 10px;color:#0b4b62}
.blog-post p{font:16px/1.55 Georgia,serif;margin:0 0 10px}.blog-example{font:700 11px 'Courier New',monospace;color:#b52b2b;text-transform:uppercase}
.blog-sidebar{border-left:1px solid #0b4b62;padding-left:24px}.blog-sidebar h3{font:700 20px Georgia,serif;margin:0 0 14px;padding-bottom:9px;border-bottom:2px solid #b52b2b}.blog-sidebar h3:not(:first-child){margin-top:35px}
.blog-categories{display:flex;flex-direction:column;align-items:stretch;gap:2px}.blog-cat{border:0;background:transparent;color:#0b4b62;text-align:left;padding:7px 6px;font:15px Georgia,serif;cursor:pointer}.blog-cat:hover,.blog-cat.is-active{background:rgba(11,75,98,.1);text-decoration:underline;text-decoration-color:#b52b2b;text-underline-offset:4px}.blog-cat:focus-visible{outline:2px solid #b52b2b}
.blog-archive{font:14px/1.5 Georgia,serif}.blog-aside-decoration{font-size:54px;margin-top:22px;letter-spacing:15px}.blog-footnote{border-top:3px double #0b4b62;padding-top:16px;margin-top:32px;text-align:center;font:11px/1.5 'Courier New',monospace;letter-spacing:.06em}.blog-empty{font:italic 17px Georgia,serif;padding:24px 0}
@media(max-width:760px){.blog-intro{grid-template-columns:1fr;gap:8px}.blog-intro img{max-height:240px}.blog-layout{grid-template-columns:1fr}.blog-sidebar{border-left:0;border-top:1px solid #0b4b62;padding:20px 0 0}.blog-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.blog-post{grid-template-columns:52px minmax(90px,150px) 1fr;gap:12px}.blog-post-art{font-size:58px}.blog-feed-heading{flex-wrap:wrap}}
@media(max-width:520px){.blog-journal{padding:10px 8px 40px}.blog-post{grid-template-columns:54px 1fr}.blog-post-art{grid-column:1;grid-row:2;font-size:44px}.blog-post>div:last-child{grid-column:2;grid-row:1 / span 2}.blog-post h3{font-size:22px}.blog-post p{font-size:15px}.blog-intro h2{font-size:clamp(46px,6vw,93px)}}

/* Final journal polish: editorial thumbnails and cleaner responsive spacing. */
.blog-post-art{overflow:hidden;background:#e6e4d5;aspect-ratio:1.48;display:block;border:1px solid #315e6c}
.blog-post-art img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.73) contrast(1.05)}
.blog-intro img{max-height:305px;object-fit:cover;object-position:center;mix-blend-mode:multiply}
.blog-intro{gap:26px}
.blog-post{grid-template-columns:70px minmax(130px,225px) minmax(0,1fr)}
@media(max-width:520px){.blog-post{grid-template-columns:48px minmax(0,1fr)}.blog-post-art{grid-column:2;grid-row:2;width:min(100%,260px)}.blog-post>div:last-child{grid-column:2;grid-row:3}.blog-date{grid-row:1 / span 2}.blog-intro img{max-height:230px}}

/* First real dispatch; separate journal index and full article view. */
.blog-full-article[hidden],.blog-layout[hidden]{display:none!important}
.blog-full-article{max-width:740px;margin:30px auto 44px;padding:0 14px;color:#0b4b62}
.blog-full-article h2{font:700 clamp(36px,5.5vw,64px)/1.07 Georgia,serif;text-transform:uppercase;letter-spacing:-.035em;margin:12px 0 18px}
.blog-full-article>p:not(.blog-post-category){font:clamp(17px,2vw,20px)/1.75 Georgia,serif;margin:0 0 1.25em}
.blog-full-article>p:nth-of-type(2)::first-letter{font-size:3.2em;float:left;line-height:.86;margin:.08em .11em 0 0;color:#b52b2b}
.blog-article-rule{width:140px;height:5px;background:#b52b2b;margin:0 0 30px}
.blog-article-end{text-align:center;font:700 12px 'Courier New',monospace;letter-spacing:.13em;border-top:1px solid #7798a2;padding:22px 0;margin-top:30px}
.blog-read-more,.blog-back{font:700 12px 'Courier New',monospace;letter-spacing:.07em;border:0;border-bottom:2px solid #b52b2b;background:transparent;color:#0b4b62;padding:7px 0;cursor:pointer;text-align:left}
.blog-read-more:hover,.blog-back:hover{color:#b52b2b}.blog-back{margin:0 0 24px}
.blog-first-art{display:flex;flex-direction:column;gap:0;background:#e6e4d5;color:#0b4b62;text-align:center;justify-content:center;filter:none}
.blog-first-art>span:first-child{font:70px/1 Georgia,serif;color:#b52b2b}.blog-first-art-type{font:700 24px/1.1 Georgia,serif;letter-spacing:.06em}
.blog-post-featured{background:rgba(11,75,98,.045);padding-left:8px;padding-right:8px}

/* Daisy is transparent: no separate rectangular paper background. */
.blog-intro img{mix-blend-mode:normal;background:transparent;object-fit:contain}

/* Give the Blog its own paper surface so underlying homepage lines and captions
   cannot show through Daisy's transparent ink illustration. */
.blog-journal{position:relative;isolation:isolate;background:var(--paper) url('../assets/embedded/0f5306db34686f76.webp') repeat;}
.blog-intro img{position:relative;z-index:1;mix-blend-mode:normal;background:transparent;}

/* Ceramics: vintage two-colour magazine print gallery */
.ceramics-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0 30px;align-items:start}
.ceramics-gallery .ceramic-photo{display:block;width:100%;padding:5px;border:1px solid rgba(30,74,107,.65);background:#eee6d2;cursor:zoom-in;transform:rotate(-1deg);box-shadow:3px 4px 0 rgba(18,55,81,.14)}
.ceramics-gallery .ceramic-photo:nth-child(even){transform:rotate(1.3deg)}
.ceramics-gallery .ceramic-photo img{display:block;width:100%;height:160px;object-fit:contain;background:#efe7d3}
.ceramics-gallery .ceramic-photo:hover,.ceramics-gallery .ceramic-photo:focus-visible{border-color:#a34c43;transform:rotate(0deg) translateY(-2px)}
@media(max-width:700px){.ceramics-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ceramics-gallery .ceramic-photo img{height:135px}}
