/* Stonewall Fellowship — editorial redesign */
:root{--navy:#13294B;--navy2:#13294B;--red:#7C2529;--red-dark:#7C2529;--paper:#FFFDF8;--cream:#EFDBB2;--ink:#171613;--muted:#171613;--line:#B89B5E;--shadow:0 16px 45px #102e2a0d}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.8;background:var(--paper)}
h1,h2,h3,blockquote,.footer-title{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}
.container{width:min(1200px,calc(100% - 64px))}h2{font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.14}p{line-height:1.85}
.site-header{background:#faf9f5f5;border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:blur(16px);position:sticky;top:0;z-index:50}
.nav-wrap{min-height:88px}.brand{gap:14px}.brand span{font-family:Georgia,serif;font-size:1.35rem;letter-spacing:-.025em;color:var(--navy2)}.brand img{width:40px;height:48px;object-fit:contain;border:0;border-radius:0}.site-nav{gap:25px}.site-nav a{font-size:.78rem;letter-spacing:0;text-transform:none}.nav-cta{background:var(--navy)!important;color:white!important;padding:10px 20px!important;border:0!important}
.hero{padding:100px 0 108px;background:var(--navy2);color:var(--paper);position:relative;overflow:hidden;border:0}.hero-grid{grid-template-columns:1.5fr .8fr;gap:70px;align-items:center}.hero-copy{padding:0;border:0}.hero h1{font-size:clamp(2.7rem,4.8vw,4.5rem);line-height:1.12;color:var(--paper);max-width:820px;margin:22px 0}.hero-text{font-size:1.02rem;color:#EFDBB2;max-width:610px}.eyebrow,.section-kicker{font-family:Arial,sans-serif;font-size:.68rem;letter-spacing:.19em;font-weight:700;text-transform:uppercase}.hero .eyebrow{color:#B89B5E}.hero-logo-wrap{padding:24px;background:#FFFDF8;border-radius:50% 50% 4px 4px;box-shadow:0 28px 65px #0003;border:0;outline:0}.hero-logo{width:100%;height:auto;max-height:370px;object-fit:contain;mix-blend-mode:multiply;border:0;box-shadow:none;border-radius:0}.hero-actions{margin-top:32px}
.button{padding:14px 24px;border-radius:3px;box-shadow:none;font-family:Arial,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.02em;transition:background .2s,transform .2s}.button-primary{background:var(--navy);color:white;border:1px solid var(--navy)}.button-primary:hover{background:#7C2529;transform:translateY(-2px)}.hero .button-primary{background:#EFDBB2;color:var(--navy2);border-color:#EFDBB2}
.section{padding:92px 0;border:0;background-image:none!important}.two-column{grid-template-columns:1fr 1.15fr;gap:90px}.section-kicker{color:var(--red);margin:0 0 20px}.section-kicker:after{display:none}.paper-section{background:var(--paper)}.prose p,.jackson-copy p,.heritage-copy p{font-size:1rem;color:#171613}.visual-band{padding:44px 0;background:var(--cream);border:0}.visual-grid{gap:40px}.visual-card{border:0;box-shadow:none;background:none;outline:0}.visual-card img{height:150px;object-fit:contain;mix-blend-mode:multiply}.visual-card figcaption{font-family:Georgia,serif;font-size:1.6rem;margin-top:20px;color:var(--navy2)}
.fellowship-section{background:var(--paper)}.fellowship-intro,.articles-intro{gap:70px;align-items:end;margin-bottom:42px}.fellowship-intro>p{max-width:440px;color:var(--muted)}.fellowship-photos{gap:24px;grid-template-columns:1.35fr 1fr}.fellowship-photo{padding:0;border:0;box-shadow:none;outline:0;margin:0}.fellowship-photo img{width:100%;height:480px;object-fit:cover;border-radius:4px}
.jackson-section{background:var(--cream)!important}.jackson-grid{grid-template-columns:.7fr 1.25fr;gap:90px;align-items:center}.jackson-image{padding:0;border:0;box-shadow:none;outline:0}.jackson-image img{width:100%;height:460px;object-fit:cover;border-radius:3px}.jackson-copy{padding:0;border:0;outline:0;background:none;box-shadow:none}.jackson-copy h2,.heritage-copy h2{padding:0}.jackson-copy h2:after,.heritage-copy h2:after{display:none}
.heritage-section{background:var(--paper)!important}.heritage-grid{gap:70px;align-items:center}.heritage-portraits{gap:20px}.heritage-portrait-card{border:1px solid var(--line);padding:20px;background:#EFDBB2;box-shadow:none;outline:0;margin:0}.heritage-portrait-card img{height:160px;object-fit:contain;mix-blend-mode:multiply}.heritage-portrait-card figcaption{font-family:Georgia,serif;color:var(--navy2);font-size:1rem;margin-top:12px}
.legacy-portrait-section{background:var(--navy2);padding:80px 0;color:var(--paper);border:0}.legacy-portrait-caption{max-width:830px;margin:auto;text-align:center}.legacy-portrait-caption blockquote{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.5;color:var(--paper);margin:0}.legacy-quote-attribution{color:#B89B5E;font-size:.8rem}.historic-homes-grid{margin-top:50px;gap:24px}.historic-home-card{background:#EFDBB2;padding:20px;border:0;box-shadow:none;outline:0;border-radius:3px}.historic-home-card img{height:100px;object-fit:contain;mix-blend-mode:multiply}.historic-home-card figcaption{color:var(--navy2);font-size:.8rem}
.articles-section{background:var(--paper)}.article-feature{border:0;padding:0;gap:50px}.article-feature-image{border:0;padding:0;background:var(--cream);border-radius:4px;overflow:hidden}.article-feature-image img{object-fit:cover}.article-series{color:var(--red)}.article-excerpt{color:var(--muted)}.text-link{color:var(--navy);text-underline-offset:6px}.articles-archive-link{margin-top:36px}.letter-section{background:var(--cream);border:0}.letter-grid{gap:80px}.letter-form{border:1px solid var(--line);border-radius:4px;background:var(--paper);outline:0;box-shadow:var(--shadow);padding:36px}.letter-form label{text-transform:none;letter-spacing:0;font-size:.8rem}.letter-form input[type=text],.letter-form input[type=email]{border-radius:3px;border-color:#B89B5E}.letter-note{font-family:Georgia,serif}.contact-section{background:var(--paper)}.contact-grid{gap:90px}.contact-card{background:var(--cream);border:0;outline:0;box-shadow:none;padding:36px;border-radius:4px;overflow-wrap:anywhere}.contact-card strong{font-family:Arial,sans-serif;font-size:.75rem;text-transform:uppercase}.final-quote-section{background:var(--cream);color:var(--navy2);border:0;padding:65px 0}.final-quote-section blockquote{color:var(--navy2);font-size:clamp(2rem,4vw,3.5rem)}.quote-attribution{color:var(--muted)}
.site-footer{background:var(--navy2);padding:60px 0;border:0;font-size:.78rem;color:#EFDBB2}.footer-grid{grid-template-columns:1.2fr 1.2fr 1fr;gap:40px}.footer-place{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #ffffff25;padding-top:24px}.footer-title{font-size:1.5rem}.footer-heading{font-family:Arial,sans-serif;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.footer-contact a{overflow-wrap:anywhere}.footer-social a,.footer-contact a{border:0;color:#FFFDF8}.footer-title:after{display:none}
.southern-leaf-sprig,.porch-rail{display:none}.hero-copy:before,.hero-copy:after,.paper-section:before,.jackson-section:before,.contact-section:before,.visual-band:before,.visual-band:after,.letter-section:before,.site-footer:before,.contact-card:before,.contact-card:after{display:none}
.archive-heading{padding-top:70px}.archive-entry{padding:40px 0}.article-body{font-size:1.15rem;line-height:1.9}.article-body blockquote{background:var(--cream);border-color:var(--red)}.article-subscribe{background:var(--cream);border:0;border-radius:4px}.article-hero-image{border:0;padding:0;background:var(--cream)}
@media(max-width:1100px){.site-nav{top:88px;background:var(--paper)}.hero-grid{gap:35px}.brand span{font-size:1.2rem}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.hero{padding:60px 0}.hero-grid{grid-template-columns:1fr}.hero-logo-wrap{width:220px;justify-self:center;margin-top:16px}.hero h1{font-size:2.8rem}.section{padding:60px 0}.two-column,.jackson-grid,.heritage-grid,.contact-grid,.letter-grid{grid-template-columns:1fr;gap:32px}.fellowship-intro{display:block}.fellowship-photo img{height:340px}.jackson-image{max-width:350px}.jackson-image img{height:400px}.footer-grid{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1}.historic-homes-grid{grid-template-columns:1fr 1fr}.letter-form{padding:24px}.article-feature{gap:28px}.legacy-portrait-section{padding:60px 0}}
@media(max-width:520px){.container{width:calc(100% - 32px)}.brand span{font-size:1.05rem}.brand img{width:30px;height:40px}.nav-wrap{min-height:76px}.site-nav{top:76px}.hero h1{font-size:2.4rem}.visual-grid{gap:12px}.visual-card{margin:0}.visual-card img{height:90px}.visual-card figcaption{font-size:1.15rem}.fellowship-photos{grid-template-columns:1fr}.fellowship-photo img{height:330px}.heritage-portrait-card{padding:12px}.heritage-portrait-card img{height:130px}.footer-grid{grid-template-columns:1fr}.footer-place{display:block;text-align:left}.contact-card{padding:24px}.historic-home-card{margin:0;padding:12px}.historic-home-card img{height:75px}.article-feature h2,.article-feature h3{font-size:2.1rem}.archive-heading h1{font-size:3rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hero-logo-wrap{order:0}.hero-logo{filter:none}.hero:after,.heritage-portraits:before{display:none}
.hero-grid{text-align:left;justify-items:stretch;max-width:1200px}.hero-copy h1{font-size:clamp(2.7rem,4.8vw,4.5rem);color:var(--paper);margin:22px 0;line-height:1.12}.hero:before{display:none}.hero-actions{justify-content:flex-start}.hero .button-primary{background:#EFDBB2;color:var(--navy2);border-color:#EFDBB2;box-shadow:none}.hero .button-primary:hover{background:#B89B5E}.brand img{box-shadow:none}.hero-shield{width:100%;border:0;box-shadow:none}.visual-card figcaption{border:0}.hero-logo-wrap{align-self:center}.hero-text{margin-left:0}.hero-logo{border-radius:0}
@media(max-width:520px){.hero-copy h1{font-size:2.4rem}}
.paper-section:after,.letter-section:after,.contact-section:after,.heritage-section:before,.heritage-section:after,.heritage-copy:before{display:none}.heritage-copy{padding:0;background:none;border:0;outline:0;box-shadow:none}.heritage-grid{grid-template-columns:1fr 1fr}.historic-home-card img{padding:0;border:0;outline:0;background:none;box-shadow:none}.final-quote-section,.site-footer{box-shadow:none}.brand span{display:inline}.visual-card:nth-child(even){border:0;outline:0}.visual-card:nth-child(even) figcaption{border:0}
@media(max-width:800px){.heritage-grid{grid-template-columns:1fr}}

/* Approved Stonewall brand palette */
:root{--stonewall-red:#7C2529;--stonewall-blue:#13294B;--stonewall-ivory:#EFDBB2;--stonewall-gold:#B89B5E;--stonewall-black:#171613;--stonewall-white:#FFFDF8;--navy:var(--stonewall-blue);--navy2:var(--stonewall-blue);--red:var(--stonewall-red);--red-dark:var(--stonewall-red);--paper:var(--stonewall-white);--cream:var(--stonewall-ivory);--ink:var(--stonewall-black);--muted:var(--stonewall-black);--line:var(--stonewall-gold)}
.button-primary,.nav-cta{background:var(--stonewall-red)!important;border-color:var(--stonewall-red);color:var(--stonewall-white)!important}.button-primary:hover,.nav-cta:hover{background:var(--stonewall-blue)!important;border-color:var(--stonewall-blue)}.hero .button-primary{background:var(--stonewall-ivory)!important;color:var(--stonewall-blue)!important;border-color:var(--stonewall-ivory)}.hero .button-primary:hover{background:var(--stonewall-gold)!important}.section-kicker,.article-series,.paper-section .section-kicker,.letter-section .section-kicker{color:var(--stonewall-red)}.hero .eyebrow{color:var(--stonewall-gold)}.article-excerpt,.article-body,.article-meta,.article-byline,.archive-entry-meta,.letter-copy p:not(.section-kicker),.consent-row,.form-privacy{color:var(--stonewall-black)!important}.final-quote-section .section-kicker{color:var(--stonewall-red)}.heritage-copy p:not(.section-kicker){color:var(--stonewall-black)}.legacy-quote-attribution{color:var(--stonewall-ivory)}.letter-form input{color:var(--stonewall-black);background:var(--stonewall-white)}:focus-visible{outline-color:var(--stonewall-red)}.footer-place{border-top-color:var(--stonewall-gold)}

/* Typography matched to the supplied brand reference; exact font names pending. */
@font-face{font-family:StonewallWordmark;src:url('/assets/fonts/unifrakturmaguntia-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:StonewallSerif;src:url('/assets/fonts/cormorant-garamond-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:StonewallSerif;src:url('/assets/fonts/cormorant-garamond-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
.site-header .brand span,.footer-title{font-family:StonewallWordmark,Georgia,serif;font-weight:400;color:var(--stonewall-red);font-size:1.9rem;letter-spacing:0}.brand img{width:36px;height:52px;object-fit:contain;border:0;padding:0;background:none}.footer-title{color:var(--stonewall-white)}
h1,h2,h3,.hero-copy h1,blockquote{font-family:StonewallSerif,Georgia,serif;font-weight:600;letter-spacing:-.025em}.hero-logo-wrap{background:none;box-shadow:none;border:0;border-radius:0;padding:0;width:100%;max-width:350px;justify-self:end}.hero-logo,.hero-shield{width:100%;max-height:440px;object-fit:contain;border:0;outline:0;border-radius:0;box-shadow:none;filter:none;mix-blend-mode:normal}.hero-logo-wrap:before,.hero-logo-wrap:after,.site-header:before,.site-header:after{display:none}.hero-grid{grid-template-columns:1.65fr .85fr;gap:64px}.hero{padding:70px 0 80px}.hero .button-secondary{color:var(--stonewall-white);border:1px solid var(--stonewall-gold);background:none}.hero .button-primary{background:var(--stonewall-red)!important;color:var(--stonewall-white)!important;border-color:var(--stonewall-gold)}.hero .button-primary:hover{background:var(--stonewall-red)!important;filter:brightness(1.1)}.hero-actions{gap:16px}.hero-copy h1{font-size:clamp(2.7rem,4.8vw,4.5rem)}.section-kicker{letter-spacing:.16em}.nav-cta{box-shadow:none}.legacy-portrait-section:before,.legacy-portrait-section:after{display:none}
@media(max-width:1100px){.site-header .brand span{font-size:1.7rem}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:32px}.hero-logo-wrap{justify-self:center;max-width:180px}.hero-logo{max-height:260px}.hero{padding:46px 0 54px}.hero-copy h1{font-size:2.9rem}}
@media(max-width:520px){.site-header .brand span{font-size:1.28rem}.brand{gap:10px}.brand img{width:27px;height:40px}.hero-copy h1{font-size:2.6rem}.hero-actions{flex-direction:column;align-items:stretch}}

/* Quiet architectural details inspired by colonial cornices and raised panels. */
.site-header {
  border-bottom: 1px solid var(--stonewall-gold);
  box-shadow: 0 3px 0 var(--stonewall-white),
              0 4px 0 color-mix(in srgb, var(--stonewall-gold) 45%, transparent),
              0 7px 12px color-mix(in srgb, var(--stonewall-black) 5%, transparent);
}

.hero::after {
  content: "";
  display: block;
  position: absolute;
  inset: 20px;
  border: 1px solid color-mix(in srgb, var(--stonewall-gold) 38%, transparent);
  background: none;
  pointer-events: none;
}

.hero::before {
  content: "";
  display: block;
  position: absolute;
  inset: auto 0 0;
  height: 12px;
  border: 0;
  outline: 0;
  background: linear-gradient(to bottom,
    var(--stonewall-blue) 0 3px,
    var(--stonewall-gold) 3px 4px,
    var(--stonewall-ivory) 4px 7px,
    var(--stonewall-white) 7px 10px,
    var(--stonewall-gold) 10px 11px,
    var(--stonewall-white) 11px);
  pointer-events: none;
}

.visual-band,
.letter-section {
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--stonewall-gold) 55%, transparent),
              inset 0 4px 0 var(--stonewall-white),
              inset 0 5px 0 color-mix(in srgb, var(--stonewall-gold) 40%, transparent),
              inset 0 -1px 0 color-mix(in srgb, var(--stonewall-gold) 55%, transparent),
              inset 0 -5px 0 var(--stonewall-white),
              inset 0 -6px 0 color-mix(in srgb, var(--stonewall-gold) 40%, transparent);
}

.fellowship-photo,
.jackson-image {
  padding: 9px;
  background: var(--stonewall-white);
  border: 1px solid color-mix(in srgb, var(--stonewall-gold) 55%, transparent);
  outline: 1px solid color-mix(in srgb, var(--stonewall-gold) 35%, transparent);
  outline-offset: -5px;
  border-radius: 1px;
  box-shadow: 0 3px 10px color-mix(in srgb, var(--stonewall-black) 6%, transparent);
}

.fellowship-photo img,
.jackson-image img {
  border-radius: 0;
}

.letter-form,
.contact-card {
  border: 1px solid color-mix(in srgb, var(--stonewall-gold) 70%, transparent);
  outline: 1px solid color-mix(in srgb, var(--stonewall-gold) 35%, transparent);
  outline-offset: -8px;
  border-radius: 1px;
  box-shadow: 0 3px 12px color-mix(in srgb, var(--stonewall-black) 5%, transparent);
}

@media (max-width: 520px) {
  .hero::after { inset: 10px 8px 20px; }
  .fellowship-photo, .jackson-image { padding: 7px; }
}

/* Warm parchment, a clearer nameplate, and a little more colonial joinery. */
:root {
  --parchment: var(--stonewall-ivory);
  --colonial-tan: color-mix(in srgb, var(--stonewall-ivory) 82%, var(--stonewall-gold));
  --paper: var(--parchment);
  --cream: var(--colonial-tan);
  --paper-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 .09 0 0 0 0 .086 0 0 0 0 .074 0 0 .12 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)'/%3E%3C/svg%3E");
}

body {
  background-color: var(--parchment);
  background-image: var(--paper-grain);
}

.site-header,
.site-nav,
.paper-section,
.fellowship-section,
.heritage-section,
.articles-section,
.contact-section {
  background-color: var(--parchment) !important;
  background-image: var(--paper-grain) !important;
}

.visual-band,
.jackson-section,
.letter-section,
.final-quote-section {
  background-color: var(--colonial-tan) !important;
  background-image: var(--paper-grain) !important;
}

.site-header .brand span,
.footer-title {
  font-family: StonewallSerif, Georgia, serif;
  font-weight: 600;
  font-size: 1.75rem;
  letter-spacing: .015em;
}

.site-header {
  box-shadow: 0 3px 0 var(--parchment),
              0 4px 0 color-mix(in srgb, var(--stonewall-gold) 65%, transparent),
              0 7px 12px color-mix(in srgb, var(--stonewall-black) 7%, transparent);
}

.hero::after {
  border-color: color-mix(in srgb, var(--stonewall-gold) 50%, transparent);
  outline: 1px solid color-mix(in srgb, var(--stonewall-gold) 22%, transparent);
  outline-offset: 5px;
}

.hero::before {
  background: linear-gradient(to bottom,
    var(--stonewall-blue) 0 3px,
    var(--stonewall-gold) 3px 4px,
    var(--parchment) 4px 7px,
    var(--colonial-tan) 7px 10px,
    var(--stonewall-gold) 10px 11px,
    var(--parchment) 11px);
}

.visual-band,
.letter-section {
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--stonewall-gold) 70%, transparent),
              inset 0 4px 0 var(--parchment),
              inset 0 5px 0 color-mix(in srgb, var(--stonewall-gold) 50%, transparent),
              inset 0 -1px 0 color-mix(in srgb, var(--stonewall-gold) 70%, transparent),
              inset 0 -5px 0 var(--parchment),
              inset 0 -6px 0 color-mix(in srgb, var(--stonewall-gold) 50%, transparent);
}

.fellowship-photo,
.jackson-image,
.letter-form,
.article-feature-image,
.article-hero-image {
  background-color: var(--parchment);
  background-image: var(--paper-grain);
}

.fellowship-photo,
.jackson-image {
  box-shadow: inset 0 0 0 2px var(--colonial-tan),
              inset 0 0 0 3px color-mix(in srgb, var(--stonewall-gold) 40%, transparent),
              0 3px 10px color-mix(in srgb, var(--stonewall-black) 8%, transparent);
}

.historic-home-card,
.heritage-portrait-card,
.contact-card,
.article-subscribe {
  background-color: var(--colonial-tan);
  background-image: var(--paper-grain);
}

.letter-form input[type="text"],
.letter-form input[type="email"] {
  background: var(--parchment);
  box-shadow: inset 0 1px 3px color-mix(in srgb, var(--stonewall-gold) 15%, transparent);
}

.nav-toggle {
  background: var(--parchment);
  color: var(--stonewall-blue);
  border-color: var(--stonewall-gold);
}

.paper-section .section-kicker,
.fellowship-section .section-kicker,
.articles-section .section-kicker,
.letter-section .section-kicker {
  display: flex;
  align-items: center;
  gap: 14px;
}

.paper-section .section-kicker::after,
.fellowship-section .section-kicker::after,
.articles-section .section-kicker::after,
.letter-section .section-kicker::after {
  content: "";
  display: block;
  width: 64px;
  height: 1px;
  flex-shrink: 0;
  margin: 0;
  background: var(--stonewall-gold);
}

.site-footer { border-top: 5px double var(--stonewall-gold); }

@media (max-width: 520px) {
  .site-header .brand span { font-size: 1.3rem; letter-spacing: 0; }
  .section-kicker::after { max-width: 40px; }
}

/* Mobile layout: a compact introduction, comfortable controls, and photo pairs. */
@media (max-width: 800px) {
  .container { width: calc(100% - 40px); }
  .nav-wrap { min-height: 76px; gap: 12px; }
  .brand { min-width: 0; gap: 10px; }
  .brand img { width: 30px; height: 44px; }
  .site-header .brand span {
    max-width: 155px;
    font-size: 1.4rem;
    line-height: 1.05;
    letter-spacing: 0;
  }

  .nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 78px;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--stonewall-gold);
    border-radius: 2px;
    font-size: .75rem;
    font-weight: 600;
  }
  .nav-toggle::before {
    content: "";
    width: 14px;
    height: 11px;
    border-top: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    background: linear-gradient(currentColor, currentColor) center / 100% 1px no-repeat;
  }
  .nav-toggle[aria-expanded="true"]::before {
    content: "×";
    height: 18px;
    border: 0;
    background: none;
    font-size: 22px;
    line-height: 16px;
  }
  .site-nav {
    top: 100%;
    padding: 12px 20px 20px;
    gap: 0;
    box-shadow: 0 12px 20px color-mix(in srgb, var(--stonewall-blue) 12%, transparent);
  }
  .site-nav a {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 48px;
    padding: 10px 12px;
    border-bottom: 1px solid color-mix(in srgb, var(--stonewall-gold) 40%, transparent);
    font-size: .9rem;
  }
  .site-nav .nav-cta { margin-top: 12px; justify-content: center; }

  .hero { padding: 36px 0 48px; }
  .hero-grid { gap: 0; }
  .hero-copy { max-width: 640px; margin: 0 auto; }
  .hero-logo-wrap { display: none; }
  .hero-copy h1 {
    margin: 16px 0 20px;
    font-size: clamp(2.1rem, 8.8vw, 2.9rem);
    line-height: 1.1;
    letter-spacing: -.018em;
    text-wrap: balance;
  }
  .hero-text { font-size: 1rem; line-height: 1.7; max-width: 44ch; }
  .hero-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 24px 0 0;
  }
  .hero-actions .button { min-height: 50px; padding: 10px 12px; font-size: .75rem; }
  .hero::after { inset: 12px 8px 20px; outline: 0; }

  .section { padding: 48px 0; scroll-margin-top: 92px; }
  h2 { font-size: clamp(2rem, 8vw, 2.6rem); line-height: 1.12; text-wrap: balance; }
  .two-column, .jackson-grid, .heritage-grid, .contact-grid, .letter-grid { gap: 26px; }
  .fellowship-intro { margin-bottom: 26px; }
  .fellowship-intro > p { margin-top: 18px; }
  .fellowship-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .fellowship-photo { padding: 6px; }
  .fellowship-photo img { height: clamp(190px, 56vw, 340px); object-fit: cover; }
  .jackson-image { width: min(220px, 75%); margin: 0 auto; }
  .jackson-image img { height: 260px; }
  .heritage-portraits { gap: 12px; }
  .heritage-portrait-card { padding: 12px 10px; }
  .heritage-portrait-card img { height: 130px; }
  .heritage-portrait-card figcaption {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8em;
    font-size: .86rem;
    line-height: 1.4;
  }
  .legacy-portrait-section { padding: 48px 0; }
  .historic-homes-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
  .historic-home-card { padding: 14px 10px; }
  .historic-home-card figcaption { font-size: .72rem; line-height: 1.5; letter-spacing: .07em; }

  .letter-form { padding: 24px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .letter-form input[type="text"], .letter-form input[type="email"] {
    min-height: 48px;
    font-size: 16px;
    padding: 12px;
  }
  .consent-row input { width: 18px; height: 18px; flex-shrink: 0; }
  .contact-card { padding: 24px; }
  .button { min-height: 50px; }
  .text-link:not(.article-back) { display: inline-flex; align-items: center; min-height: 44px; }
  .articles-intro { margin-bottom: 26px; }
  .archive-heading { padding-top: 40px; padding-bottom: 28px; }
  .archive-list-section { padding-top: 36px; padding-bottom: 48px; }
  .article-heading h1 { font-size: clamp(2rem, 8.7vw, 2.65rem); line-height: 1.12; text-wrap: balance; }
  .article-body { font-size: 1.1rem; }
  .site-footer { padding: 40px 0; }
  .footer-grid { gap: 22px; }
  .footer-title { font-size: 1.8rem; }
  .footer-social p { margin: 0; }
  .footer-social a { display: inline-flex; align-items: center; min-height: 44px; }
  .footer-contact a { display: block; min-height: 44px; overflow-wrap: anywhere; }
}

@media (max-width: 360px) {
  .site-header .brand span { max-width: 135px; font-size: 1.25rem; }
  .hero-actions .button { padding-inline: 8px; font-size: .7rem; }
  .fellowship-photos { grid-template-columns: 1fr; }
  .fellowship-photo img { height: 230px; }
}
