/*
Theme Name: Words Society
Theme URI: https://nicolepazmany.ro
Author: Nicole Pazmany
Author URI: https://nicolepazmany.ro
Description: A warm, heritage-inspired editorial WordPress theme for Words Society by Nicole Pazmany. Built for essays, observations, culture and long-form reading.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: words-society
Tags: blog, news, one-column, two-columns, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, wide-blocks
*/

:root {
  --ws-paper: #EEE8DE;
  --ws-bone: #D9CDBD;
  --ws-ink: #201713;
  --ws-chocolate: #583225;
  --ws-oxblood: #351C1D;
  --ws-cognac: #A65F2A;
  --ws-green: #1E2A20;
  --ws-brass: #A58A5A;
  --ws-white: #F8F4EE;
  --ws-rule: rgba(32, 23, 19, .19);
  --ws-muted: #746A62;
  --ws-serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --ws-reading: "Source Serif 4", Georgia, "Times New Roman", serif;
  --ws-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ws-max: 1460px;
  --ws-content: 760px;
  --ws-gutter: clamp(20px, 4vw, 64px);
  --ws-section: clamp(72px, 9vw, 140px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ws-paper);
  color: var(--ws-ink);
  font-family: var(--ws-reading);
  font-size: 18px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body::before {
  content: "";
  pointer-events: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  opacity: .032;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
}

::selection { background: var(--ws-chocolate); color: var(--ws-white); }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--ws-chocolate); }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }

.ws-shell { width: min(calc(100% - (var(--ws-gutter) * 2)), var(--ws-max)); margin: 0 auto; }
.ws-narrow { width: min(calc(100% - (var(--ws-gutter) * 2)), var(--ws-content)); margin: 0 auto; }
.ws-section { padding: var(--ws-section) 0; }
.ws-section--tight { padding: clamp(48px, 6vw, 90px) 0; }
.ws-rule { border-top: 1px solid var(--ws-rule); }
.ws-eyebrow,
.ws-meta,
.ws-nav,
.ws-kicker,
.ws-button,
.ws-form-label,
.ws-footer-label,
.archive-meta,
.post-meta {
  font-family: var(--ws-sans);
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 11px;
  line-height: 1.4;
}
.ws-eyebrow { margin: 0 0 18px; color: var(--ws-chocolate); font-weight: 600; }
.ws-title,
h1, h2, h3, h4 { font-family: var(--ws-serif); font-weight: 500; letter-spacing: -.025em; line-height: .98; }

/* Header */
.site-header { position: relative; z-index: 90; background: rgba(238,232,222,.96); border-bottom: 1px solid var(--ws-rule); }
.site-header.is-stuck { position: sticky; top: 0; backdrop-filter: blur(12px); }
.ws-header-top { min-height: 116px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.ws-date { justify-self: start; color: var(--ws-muted); }
.ws-brand { text-align: center; display: inline-flex; flex-direction: column; align-items: center; gap: 4px; }
.ws-brand-name { font-family: var(--ws-serif); font-size: clamp(28px, 3.1vw, 48px); line-height: .9; letter-spacing: -.035em; text-transform: uppercase; }
.ws-brand-byline { font-family: var(--ws-sans); font-size: 8px; letter-spacing: .38em; text-transform: uppercase; }
.custom-logo { max-height: 72px; width: auto; }
.ws-header-actions { justify-self: end; display: flex; align-items: center; gap: 18px; }
.ws-icon-button { width: 38px; height: 38px; display: inline-grid; place-items: center; border: 0; background: transparent; cursor: pointer; color: var(--ws-ink); padding: 0; }
.ws-icon-button svg { width: 19px; height: 19px; stroke-width: 1.4; }
.ws-nav-wrap { border-top: 1px solid var(--ws-rule); }
.ws-nav-row { min-height: 50px; display: flex; align-items: center; justify-content: center; }
.primary-menu { list-style: none; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: clamp(20px, 3vw, 42px); padding: 0; margin: 0; }
.primary-menu a { position: relative; display: inline-block; padding: 17px 0 15px; font-family: var(--ws-sans); text-transform: uppercase; letter-spacing: .16em; font-size: 10px; }
.primary-menu a::after { content:""; position:absolute; left:0; right:100%; bottom:11px; height:1px; background:var(--ws-chocolate); transition:right .25s ease; }
.primary-menu a:hover::after,
.primary-menu .current-menu-item > a::after,
.primary-menu .current-menu-ancestor > a::after { right:0; }
.ws-menu-toggle { display: none; }

/* Search overlay */
.ws-search-panel { display: none; position: fixed; inset: 0; z-index: 1000; background: rgba(32,23,19,.97); color: var(--ws-white); }
.ws-search-panel.is-open { display: grid; place-items: center; }
.ws-search-inner { width: min(900px, calc(100% - 40px)); position: relative; }
.ws-search-close { position:absolute; right:0; top:-70px; color:var(--ws-white); }
.search-form { display:flex; align-items:center; border-bottom:1px solid rgba(248,244,238,.5); }
.search-form label { flex:1; }
.search-field { width:100%; border:0; background:transparent; color:inherit; outline:none; font-family:var(--ws-serif); font-size:clamp(38px, 7vw, 84px); line-height:1; padding:18px 0; }
.search-field::placeholder { color:rgba(248,244,238,.38); }
.search-submit { border:0; background:transparent; color:inherit; font-family:var(--ws-sans); text-transform:uppercase; letter-spacing:.16em; font-size:10px; cursor:pointer; }

/* Hero */
.ws-hero { border-bottom:1px solid var(--ws-rule); }
.ws-hero-grid { display:grid; grid-template-columns:minmax(360px,.88fr) minmax(520px,1.12fr); min-height:670px; }
.ws-hero-copy { padding:clamp(54px, 7vw, 110px) clamp(36px, 5vw, 82px) clamp(54px, 7vw, 100px) 0; align-self:center; }
.ws-hero-title { font-size:clamp(54px, 6.4vw, 104px); margin:0 0 28px; max-width:9.2ch; }
.ws-hero-deck { font-size:clamp(17px,1.5vw,22px); line-height:1.45; max-width:34rem; margin:0 0 28px; color:#3d332d; }
.ws-meta { display:flex; flex-wrap:wrap; gap:14px 22px; color:var(--ws-muted); }
.ws-hero-media { min-height:670px; overflow:hidden; background:var(--ws-ink); }
.ws-hero-media img { width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.6,.2,1); filter:saturate(.78) contrast(1.03) brightness(.84) sepia(.08); }
.ws-hero-media:hover img { transform:scale(1.018); }
.ws-image-fallback { width:100%; height:100%; min-height:420px; display:grid; place-items:center; background:linear-gradient(140deg,var(--ws-green),var(--ws-ink)); color:var(--ws-paper); }
.ws-image-fallback span { font-family:var(--ws-serif); font-size:clamp(54px,9vw,120px); letter-spacing:-.08em; opacity:.8; }

/* Story grid */
.ws-section-header { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:42px; }
.ws-section-heading { margin:0; font-size:clamp(42px,5vw,72px); }
.ws-section-link { font-family:var(--ws-sans); text-transform:uppercase; letter-spacing:.16em; font-size:10px; border-bottom:1px solid currentColor; padding-bottom:4px; }
.ws-story-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ws-rule); border-bottom:1px solid var(--ws-rule); }
.ws-story-card { padding:0 clamp(22px,3vw,42px) 38px; border-right:1px solid var(--ws-rule); }
.ws-story-card:first-child { padding-left:0; }
.ws-story-card:last-child { border-right:0; padding-right:0; }
.ws-story-image { aspect-ratio:4/3; overflow:hidden; margin-bottom:26px; background:var(--ws-bone); }
.ws-story-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.75) contrast(1.03); transition:transform .6s ease; }
.ws-story-card:hover .ws-story-image img { transform:scale(1.025); }
.ws-story-title { font-size:clamp(30px,2.4vw,44px); margin:10px 0 18px; line-height:1.02; }
.ws-story-excerpt { margin:0 0 22px; font-size:16px; line-height:1.55; color:#4a4039; }

/* Latest index */
.ws-latest { background:var(--ws-white); border-top:1px solid var(--ws-rule); border-bottom:1px solid var(--ws-rule); }
.ws-latest-row { display:grid; grid-template-columns:150px 160px 1fr 120px; gap:28px; align-items:start; padding:31px 0 34px; border-top:1px solid var(--ws-rule); }
.ws-latest-row:first-child { border-top:0; }
.ws-latest-date,
.ws-latest-cat,
.ws-latest-read { font-family:var(--ws-sans); font-size:10px; text-transform:uppercase; letter-spacing:.15em; color:var(--ws-muted); padding-top:6px; }
.ws-latest-title { margin:0; font-size:clamp(29px,3vw,48px); line-height:1; }
.ws-latest-read { text-align:right; }

/* Editorial bands */
.ws-band { background:var(--ws-green); color:var(--ws-paper); }
.ws-band--oxblood { background:var(--ws-oxblood); }
.ws-band-grid { display:grid; grid-template-columns:.72fr 1.28fr; min-height:540px; }
.ws-band-intro { padding:clamp(60px,8vw,120px) clamp(36px,5vw,78px) clamp(60px,8vw,120px) 0; border-right:1px solid rgba(238,232,222,.22); }
.ws-band-intro h2 { margin:0 0 24px; font-size:clamp(52px,7vw,98px); }
.ws-band-intro p { max-width:26rem; color:rgba(238,232,222,.78); }
.ws-band-list { display:grid; grid-template-columns:1fr 1fr; }
.ws-band-item { padding:clamp(52px,6vw,90px); border-bottom:1px solid rgba(238,232,222,.2); border-right:1px solid rgba(238,232,222,.2); }
.ws-band-item:nth-child(even) { border-right:0; }
.ws-band-item h3 { font-size:clamp(34px,3.5vw,54px); margin:10px 0 18px; }
.ws-band-item .ws-meta { color:rgba(238,232,222,.55); }

/* Notes */
.ws-notes-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:0; border-top:1px solid var(--ws-rule); }
.ws-note { min-height:360px; padding:46px clamp(28px,4vw,54px); border-right:1px solid var(--ws-rule); display:flex; flex-direction:column; justify-content:space-between; }
.ws-note:first-child { padding-left:0; }
.ws-note:last-child { border-right:0; padding-right:0; }
.ws-note-title { font-size:clamp(34px,3.4vw,52px); line-height:1.03; margin:0; }
.ws-note .ws-meta { margin-top:42px; }

/* Reading room */
.ws-reading-room { background:var(--ws-chocolate); color:var(--ws-paper); }
.ws-reading-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.ws-reading-card { position:relative; min-height:490px; overflow:hidden; background:var(--ws-ink); }
.ws-reading-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(.48) saturate(.72) sepia(.12); transition:transform .7s ease; }
.ws-reading-card:hover img { transform:scale(1.03); }
.ws-reading-card-content { position:absolute; inset:auto 0 0; padding:34px; z-index:2; background:linear-gradient(transparent,rgba(20,12,8,.78)); }
.ws-reading-card h3 { font-size:clamp(34px,3vw,50px); margin:9px 0 0; }

/* Newsletter */
.ws-letter { display:grid; grid-template-columns:.9fr 1.1fr; border-top:1px solid var(--ws-rule); border-bottom:1px solid var(--ws-rule); }
.ws-letter-copy { padding:clamp(60px,8vw,110px) clamp(40px,5vw,80px) clamp(60px,8vw,110px) 0; border-right:1px solid var(--ws-rule); }
.ws-letter-copy h2 { margin:0 0 20px; font-size:clamp(52px,6vw,92px); }
.ws-letter-copy p { max-width:34rem; }
.ws-letter-form-wrap { padding:clamp(60px,8vw,110px); align-self:center; }
.ws-newsletter-form { display:grid; gap:18px; }
.ws-newsletter-row { display:flex; border-bottom:1px solid var(--ws-ink); }
.ws-newsletter-row input[type="email"] { flex:1; background:transparent; border:0; outline:0; padding:17px 0; min-width:0; }
.ws-button { border:0; background:var(--ws-ink); color:var(--ws-paper); padding:16px 22px; cursor:pointer; transition:background .2s ease; }
.ws-button:hover { background:var(--ws-chocolate); color:var(--ws-paper); }
.ws-consent { display:flex; align-items:flex-start; gap:10px; font-family:var(--ws-sans); font-size:11px; line-height:1.5; color:var(--ws-muted); }
.ws-consent input { margin-top:3px; }
.ws-form-message { padding:12px 14px; font-family:var(--ws-sans); font-size:12px; border:1px solid var(--ws-rule); }
.ws-form-message--success { border-color:var(--ws-green); }
.ws-form-message--error { border-color:var(--ws-oxblood); }

/* Archive / Search */
.ws-archive-hero { padding:clamp(70px,9vw,130px) 0 56px; border-bottom:1px solid var(--ws-rule); }
.ws-archive-hero h1 { font-size:clamp(68px,10vw,150px); margin:0; }
.ws-archive-hero p { max-width:42rem; }
.ws-archive-list { padding:40px 0 var(--ws-section); }
.ws-archive-row { display:grid; grid-template-columns:110px 160px 1fr 110px; gap:28px; padding:28px 0 31px; border-bottom:1px solid var(--ws-rule); align-items:start; }
.ws-archive-row h2 { margin:0; font-size:clamp(30px,3.3vw,48px); line-height:1; }
.ws-archive-year { font-family:var(--ws-serif); font-size:clamp(44px,5vw,72px); margin:70px 0 12px; }
.pagination { display:flex; gap:10px; margin-top:50px; font-family:var(--ws-sans); font-size:12px; }
.page-numbers { border:1px solid var(--ws-rule); min-width:38px; height:38px; display:grid; place-items:center; }
.page-numbers.current { background:var(--ws-ink); color:var(--ws-paper); }

/* Article */
.ws-article-head { padding:clamp(76px,9vw,140px) 0 clamp(50px,6vw,88px); text-align:center; }
.ws-article-head .ws-eyebrow { margin-bottom:24px; }
.ws-article-title { font-size:clamp(58px,8.5vw,132px); max-width:13ch; margin:0 auto 34px; }
.ws-standfirst { max-width:760px; margin:0 auto 30px; font-size:clamp(21px,2vw,29px); line-height:1.45; color:#40362f; }
.ws-article-head .ws-meta { justify-content:center; }
.ws-featured { width:min(calc(100% - (var(--ws-gutter) * 2)), var(--ws-max)); margin:0 auto clamp(64px,8vw,120px); max-height:900px; overflow:hidden; }
.ws-featured img { width:100%; max-height:900px; object-fit:cover; filter:saturate(.82) contrast(1.02); }
.article-content { width:min(calc(100% - (var(--ws-gutter) * 2)), var(--ws-content)); margin:0 auto; font-size:clamp(18px,1.45vw,21px); line-height:1.78; padding-bottom:var(--ws-section); }
.article-content > p:first-of-type::first-letter { float:left; font-family:var(--ws-serif); font-size:5.7em; line-height:.73; margin:.1em .10em 0 0; color:var(--ws-chocolate); }
.article-content h2 { font-size:clamp(42px,5vw,64px); margin:2em 0 .55em; }
.article-content h3 { font-size:clamp(32px,3.8vw,46px); margin:1.7em 0 .5em; }
.article-content blockquote,
.article-content .wp-block-quote { margin:2.6em -12vw; padding:0; border:0; font-family:var(--ws-serif); font-size:clamp(38px,5vw,72px); line-height:1.04; text-align:center; color:var(--ws-chocolate); }
.article-content blockquote cite { display:block; margin-top:18px; font-family:var(--ws-sans); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--ws-muted); }
.article-content a { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.article-content figure { margin:2.4em 0; }
.article-content .alignwide { margin-left:min(-18vw,-160px); margin-right:min(-18vw,-160px); max-width:none; width:auto; }
.article-content .alignfull { margin-left:calc((100vw - min(100vw, var(--ws-content))) / -2); margin-right:calc((100vw - min(100vw, var(--ws-content))) / -2); max-width:none; width:100vw; }
.wp-caption-text,
figcaption { font-family:var(--ws-sans); font-size:11px; color:var(--ws-muted); margin-top:9px; }

.ws-author-note { width:min(calc(100% - (var(--ws-gutter) * 2)), var(--ws-content)); margin:0 auto var(--ws-section); padding:32px 0; border-top:1px solid var(--ws-rule); border-bottom:1px solid var(--ws-rule); display:grid; grid-template-columns:auto 1fr; gap:24px; align-items:center; }
.ws-author-avatar img { width:72px; height:72px; border-radius:50%; object-fit:cover; }
.ws-author-note h3 { margin:0 0 6px; font-size:28px; }
.ws-author-note p { margin:0; font-size:15px; }

/* Related */
.ws-related { border-top:1px solid var(--ws-rule); }

/* Pages */
.ws-page-head { padding:clamp(80px,10vw,150px) 0 55px; }
.ws-page-head h1 { font-size:clamp(72px,10vw,150px); margin:0; }
.ws-page-content { width:min(calc(100% - (var(--ws-gutter) * 2)), 900px); margin:0 auto; padding-bottom:var(--ws-section); }
.ws-page-content > p:first-child { font-size:clamp(23px,2.2vw,31px); line-height:1.5; }

/* 404 */
.ws-404 { min-height:66vh; display:grid; place-items:center; text-align:center; }
.ws-404 h1 { font-size:clamp(100px,18vw,280px); margin:0; color:var(--ws-bone); line-height:.7; }
.ws-404 h2 { font-size:clamp(42px,5vw,68px); margin:30px 0 10px; }

/* Footer */
.site-footer { background:var(--ws-ink); color:var(--ws-paper); }
.ws-footer-top { padding:64px 0; display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:50px; border-bottom:1px solid rgba(238,232,222,.16); }
.ws-footer-brand { font-family:var(--ws-serif); font-size:clamp(38px,4.4vw,66px); line-height:.9; }
.ws-footer-byline { font-family:var(--ws-sans); letter-spacing:.26em; font-size:8px; text-transform:uppercase; margin-top:11px; color:rgba(238,232,222,.63); }
.ws-footer-links { list-style:none; margin:12px 0 0; padding:0; }
.ws-footer-links li { margin:8px 0; }
.ws-footer-links a { color:rgba(238,232,222,.78); }
.ws-footer-links a:hover { color:var(--ws-paper); }
.ws-footer-bottom { min-height:82px; display:flex; justify-content:space-between; align-items:center; gap:24px; color:rgba(238,232,222,.48); font-family:var(--ws-sans); text-transform:uppercase; letter-spacing:.13em; font-size:9px; }
.ws-monogram { display:inline-grid; place-items:center; width:42px; height:42px; border:1px solid rgba(238,232,222,.45); border-radius:50%; font-family:var(--ws-serif); font-size:20px; letter-spacing:-.08em; }

/* WordPress helpers */
.screen-reader-text { border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute !important; width:1px; word-wrap:normal !important; }
.screen-reader-text:focus { background:#f1f1f1; clip:auto !important; clip-path:none; color:#21759b; display:block; font-size:14px; font-weight:bold; height:auto; left:5px; line-height:normal; padding:15px 23px 14px; text-decoration:none; top:5px; width:auto; z-index:100000; }
.aligncenter { margin-left:auto; margin-right:auto; }
.alignleft { float:left; margin:0 2em 1em 0; }
.alignright { float:right; margin:0 0 1em 2em; }
.sticky { }
.bypostauthor { }

/* Responsive */
@media (max-width: 1050px) {
  .ws-hero-grid { grid-template-columns:1fr; }
  .ws-hero-copy { padding-right:0; }
  .ws-hero-title { max-width:13ch; }
  .ws-hero-media { min-height:520px; }
  .ws-band-grid { grid-template-columns:1fr; }
  .ws-band-intro { border-right:0; border-bottom:1px solid rgba(238,232,222,.2); padding-right:0; }
  .ws-letter { grid-template-columns:1fr; }
  .ws-letter-copy { border-right:0; border-bottom:1px solid var(--ws-rule); padding-right:0; }
  .ws-letter-form-wrap { padding-left:0; padding-right:0; }
  .ws-latest-row,
  .ws-archive-row { grid-template-columns:110px 130px 1fr; }
  .ws-latest-read,
  .ws-archive-row > :last-child { display:none; }
}

@media (max-width: 780px) {
  body { font-size:17px; }
  .site-header.is-stuck { position:relative; }
  .ws-header-top { min-height:88px; grid-template-columns:auto 1fr auto; }
  .ws-date { display:none; }
  .ws-brand { grid-column:2; }
  .ws-brand-name { font-size:30px; }
  .ws-brand-byline { font-size:7px; letter-spacing:.28em; }
  .ws-header-actions { grid-column:3; }
  .ws-menu-toggle { display:inline-grid; grid-column:1; grid-row:1; justify-self:start; }
  .ws-nav-wrap { display:none; }
  .ws-nav-wrap.is-open { display:block; }
  .ws-nav-row { min-height:auto; }
  .primary-menu { align-items:stretch; flex-direction:column; gap:0; width:100%; padding:14px 0 22px; }
  .primary-menu a { display:block; padding:11px 0; font-size:11px; }
  .primary-menu a::after { display:none; }
  .ws-hero-grid { min-height:auto; }
  .ws-hero-copy { padding:56px 0 52px; }
  .ws-hero-title { font-size:clamp(50px,14vw,78px); }
  .ws-hero-media { min-height:420px; margin-left:calc(var(--ws-gutter) * -1); margin-right:calc(var(--ws-gutter) * -1); }
  .ws-story-grid,
  .ws-notes-grid,
  .ws-reading-grid { grid-template-columns:1fr; }
  .ws-story-card { border-right:0; border-bottom:1px solid var(--ws-rule); padding:0 0 38px; margin-bottom:38px; }
  .ws-story-card:last-child { margin-bottom:0; border-bottom:0; }
  .ws-note { min-height:260px; border-right:0; border-bottom:1px solid var(--ws-rule); padding:38px 0; }
  .ws-note:last-child { border-bottom:0; }
  .ws-reading-card { min-height:430px; }
  .ws-latest-row,
  .ws-archive-row { grid-template-columns:95px 1fr; gap:12px 20px; }
  .ws-latest-cat,
  .ws-archive-row .archive-category { grid-column:2; grid-row:1; }
  .ws-latest-title,
  .ws-archive-row h2 { grid-column:1 / -1; grid-row:2; margin-top:8px; }
  .ws-band-list { grid-template-columns:1fr; }
  .ws-band-item { border-right:0; }
  .article-content blockquote,
  .article-content .wp-block-quote { margin-left:0; margin-right:0; }
  .article-content .alignwide,
  .article-content .alignfull { margin-left:0; margin-right:0; width:100%; }
  .ws-footer-top { grid-template-columns:1fr 1fr; }
  .ws-footer-top > :first-child { grid-column:1 / -1; }
  .ws-footer-bottom { align-items:flex-start; flex-direction:column; padding:26px 0; }
}

@media (max-width: 520px) {
  :root { --ws-gutter: 18px; }
  .ws-section-header { align-items:start; flex-direction:column; margin-bottom:30px; }
  .ws-hero-media { min-height:360px; }
  .ws-newsletter-row { flex-direction:column; border-bottom:0; gap:10px; }
  .ws-newsletter-row input[type="email"] { border-bottom:1px solid var(--ws-ink); }
  .ws-button { width:100%; }
  .ws-footer-top { grid-template-columns:1fr; }
  .ws-footer-top > :first-child { grid-column:auto; }
}
.ws-brand > a,
.ws-brand .custom-logo-link { display:inline-flex; flex-direction:column; align-items:center; gap:4px; }
