/*
 * Political Gambler — WordPress adaptations.
 *
 * assets/css/style.css is the original website stylesheet, untouched.
 * This file only adds what WordPress needs on top of it: the page skeleton
 * WordPress wraps templates in, core block class names used inside editable
 * content (headings, pullquotes, embeds…), admin-bar offsets, form states,
 * pagination, and accessibility helpers. No visual redesign.
 */

/* ---------------------------------------------------------------------
 * Page skeleton
 * WordPress renders every template inside <div class="wp-site-blocks">, and
 * header/footer template parts inside their own wrapper. The original page
 * was body > header, nav, main, footer; the rules below make the wrappers
 * transparent so the sticky nav and bottom-anchored footer behave exactly
 * as before.
 * ------------------------------------------------------------------- */
.wp-site-blocks{flex:1;display:flex;flex-direction:column;min-height:100vh;}
.wp-site-blocks > .wp-block-template-part{display:contents;}
.wp-site-blocks > main{flex:1;}
/* WordPress adds "search-results" and "tag" as <body> classes on those views;
   the original stylesheet uses the same names for components. Neutralise them
   on <body> only. */
body.search-results{max-width:none;margin-top:0;}
body.tag{border:0;padding:0;font-family:'Source Serif 4',Georgia,serif;font-size:inherit;letter-spacing:normal;text-transform:none;color:#111;}
body.tag:hover{background:#fff;color:#111!important;border:0;}
body.admin-bar .sitenav{top:32px;}
@media (max-width:782px){body.admin-bar .sitenav{top:46px;}}

/* ---------------------------------------------------------------------
 * Site logo block (masthead + footer)
 * ------------------------------------------------------------------- */
.masthead-logo .custom-logo-link{display:flex;}
.masthead-logo img,.masthead-logo .custom-logo{height:120px!important;width:auto!important;max-width:none;}
.footer-logo-wrap .custom-logo-link{display:inline-block;}
.footer-logo-wrap img,.footer-logo-wrap .custom-logo{height:96px!important;width:auto!important;max-width:none;}
.site-title-fallback{display:inline-block;font-family:Jost,sans-serif;font-weight:700;font-size:22px;letter-spacing:.24em;text-transform:uppercase;color:#fff;padding:36px 0;}
.footer-logo-wrap .site-title-fallback{padding:0;font-size:18px;}

/* ---------------------------------------------------------------------
 * Editable article content (core blocks inside .article-body)
 * The original article markup is reproduced by core blocks: paragraphs,
 * headings, pullquotes, embeds, images, lists.
 * ------------------------------------------------------------------- */
.article-body .entry-content > :last-child{margin-bottom:0;}
.article-body img{height:auto;}
.article-body ul,.article-body ol{margin:0 0 26px;padding-left:1.4em;font-size:clamp(17.5px,1.5vw,20px);line-height:1.7;}
.article-body li{margin-bottom:8px;}
.article-body .wp-block-quote,.article-body .wp-block-pullquote{margin:36px 0;padding:0 0 0 clamp(18px,3vw,32px);border:0;border-left:4px solid #111;text-align:left;}
.article-body .wp-block-pullquote blockquote{margin:0;padding:0;}
.article-body .wp-block-quote p,.article-body .wp-block-pullquote p{margin:0;font-family:'Bodoni Moda',Georgia,serif;font-style:italic;font-size:clamp(23px,2.4vw,31px);line-height:1.3;color:#111;}
.article-body .wp-block-quote cite,.article-body .wp-block-pullquote cite{display:block;margin-top:12px;font-family:Jost,sans-serif;font-style:normal;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#777;}
.article-body .wp-block-embed{margin:34px 0;}
.article-body .wp-block-embed .wp-block-embed__wrapper{background:#000;}
.article-body .wp-block-embed iframe{display:block;width:100%;border:0;}
.article-body .wp-block-embed figcaption,.article-body .wp-block-image figcaption{margin:10px 0 0;font-family:Jost,sans-serif;font-size:11px;color:#999;text-align:left;}
.article-body .wp-block-image{margin:32px 0;}
.article-body .wp-block-image img{filter:grayscale(1) contrast(1.05);}
.article-body .wp-block-table{margin:32px 0;font-family:Jost,sans-serif;font-size:14px;}
.article-body .wp-block-table td,.article-body .wp-block-table th{border:0;border-bottom:1px solid #d9d9d5;padding:8px 10px;}
.article-body .wp-block-separator{border:0;border-top:1px solid #111;margin:32px 0;}
.article-body .wp-block-buttons{margin:34px 0 0;}
.article-body .wp-block-button__link{display:inline-block;background:#111;color:#fff!important;padding:12px 20px;font-family:Jost,sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border:0;border-radius:0;}
.article-body .wp-block-button__link:hover{background:#333;}
.article-body .wp-block-pg-data-box,.article-body .wp-block-pg-ref-box{border-bottom:0;}

/* Pages (Bio / About prose written with core blocks) */
.prose ul,.prose ol{margin:0 0 18px;padding-left:1.4em;font-size:clamp(17px,1.4vw,19.5px);line-height:1.68;}
.prose-section .wp-block-heading{font-family:Jost,sans-serif;}

/* ---------------------------------------------------------------------
 * Archive pagination (categories with more posts than one page)
 * ------------------------------------------------------------------- */
.archive-pagination{display:flex;justify-content:space-between;gap:16px;padding:22px 0;border-bottom:1px solid #e3e3e3;}
.archive-pagination a{display:inline-block;border-bottom:1px solid #111;padding-bottom:3px;font-family:Jost,sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;}

/* 404 */
.notfound .inline-links{margin-top:0;}

/* ---------------------------------------------------------------------
 * Newsletter form states
 * ------------------------------------------------------------------- */
.form-note{margin-top:10px;font-family:Jost,sans-serif;font-size:11px;letter-spacing:.08em;color:#9a9a9a;line-height:1.5;}
.form-note:empty{display:none;}
.form-note.is-error{color:#c0392b;}
.newsletter-box .form-note{color:#cfcfcf;}
.footer-form.is-invalid{border-color:#c0392b;}
.footer-form input::placeholder{color:#8a8a8a;}
.footer-form.light input::placeholder{color:#777;}

/* ---------------------------------------------------------------------
 * Accessibility 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;width:1px;word-wrap:normal!important;}
.screen-reader-text:focus{background:#fff;clip:auto!important;clip-path:none;color:#111;display:block;font-family:Jost,sans-serif;font-size:14px;height:auto;left:8px;line-height:normal;padding:12px 18px;text-decoration:none;top:8px;width:auto;z-index:100000;}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
.footer-form input:focus-visible{outline-offset:-2px;}
.masthead a:focus-visible,.sitefooter a:focus-visible,.newsletter-box button:focus-visible,.dark-box a:focus-visible,.hero a:focus-visible{outline-color:#fff;}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
  .story-media:hover .story-img{transform:none;}
}

/* Sticky "Continue reading" anchors from core */
.more-link{display:none;}
