/* =====================================================================
------------------------------------------------------------------------

POKER1.CSS | TABLE OF CONTENTS

  SECTIONS (search for "sec-0" through "sec-5" or "c-0"/"c-5") ...
  
     Sec-0: ASSIGN ROOT
            (base targets and standards -- site rem, page metrics, more --
             style.css calls child theme, enqueued in functions.php )
  
     Sec-1: BORDER OUTLINE SUITE
            (debugging: remove/insert leading "x" toggles on/off)
            
     Sec-2: CLASSES AND IDENTIFIERS
            (custom classes/IDs)
            
        Sec-2a: BUTTONS, CALLOUTS, TABLES, ETC.
                (designed decoration and layout)
            
        Sec-2b: COLORS
                (custom and overrides)
                
        Sec-2c: FONTS AND TEXT
                (font families, typography, sizes, overrides)
                
        Sec-2d: METRICS
                (non-text: height, width, padding, margins, indents, more)
                
        Sec-2e: VARIOUS 
                (whatever doesn't fit in section 2 subcategories above)
                
    Sec-3: ELEMENTS
           (header/footer, pages/posts, date block, utility bar, etc.)
        
        Sec-3a: FOOTER
                (contact, terms,privacy policy, credits, copyright)
        
        Sec-3b: HEADER
                (metrics, header image, date block, more)
                
        Sec-3c: PAGES AND POSTS
                (metrics and standard appearance)
                
        Sec-3d: UTILITY BAR
                (metrics, includes buttons and behavior)
                
        Sec-3e: WHATEVER ELSE
                (additional elements)
                
    Sec-4: GLOBAL CONTROL PANEL
           (quick settings that override or augment anything previous)
           
    Sec-5: TESTING
           (experimental css that can be deleted or moved to other sections)
                
    ---------------------------------------------------------------------
===================================================================== */

* ============================================================
   SEC-0: BEGIN | ASSIGN ROOT
   Remove leading "x" to turn on; add it back to turn off
   ============================================================ */
   
 html {
    font-size: 16px !important;
    line-height: 1.4rem;
}

body {
    margin: 0;
    padding: 0;
}

body:before {
    content: none !important;
    display: none !important;
    width: 0 !important;
    max-width: 0 !important;
}

/* ============================================================
   SEC-0: END | ASSIGN ROOT
   ============================================================ */

/* ============================================================
   SEC-1: BEGIN | BORDER OUTLINE SUITE
   Remove leading "x" to turn on; add it back to turn off
   ============================================================ */

/* vvv ALL ELEMENTS vvv */
x* { outline: 1px solid red !important; }
/* ^^^ ALL ELEMENTS ^^^ */

x#page { outline: 2px solid #999 !important; }

x.aligncenter { outline: 1px dashed #777 !important; }
x.alignleft   { outline: 1px dashed #777 !important; }
x.alignright  { outline: 1px dashed #777 !important; }

xbody { outline: 3px dashed red !important; }

x.comments-area { outline: 2px solid #cc6600 !important; }

x.content-area  { outline: 2px solid #00aaff !important; }
x.content-area * { outline: 1px dashed #00aaff !important; }

x.custom-header  { outline: 2px solid green !important; }
x.custom-header * { outline: 1px dashed green !important; }

x.date-block, x.p1-date-block { outline: 2px solid brown !important; }

x.entry-content  { outline: 2px solid #ff5500 !important; }
x.entry-content * { outline: 1px dashed #ff5500 !important; }

x.entry-footer { outline: 2px solid #aa5500 !important; }

x.entry-header  { outline: 2px solid #00ffaa !important; }
x.entry-header * { outline: 1px dashed #00ffaa !important; }

xfooter,
x.site-footer { outline: 2px solid #333 !important; }
xfooter * { outline: 1px dashed #333 !important; }

x.hentry  { outline: 2px solid #aa00ff !important; }
x.hentry * { outline: 1px dashed #aa00ff !important; }

x.header-image  { outline: 2px solid teal !important; }
x.header-image * { outline: 1px dashed teal !important; }

ximg { outline: 2px solid #444 !important; }

x.menu  { outline: 2px solid #6699ff !important; }
x.menu * { outline: 1px dashed #6699ff !important; }

x.nav-menu  { outline: 2px solid #3366ff !important; }
x.nav-menu * { outline: 1px dashed #3366ff !important; }

x.pagination { outline: 2px solid #cc0099 !important; }

xp { outline: 1px dotted #777 !important; }

x.p1-index-left  { outline: 2px solid #cc00cc !important; }
x.p1-index-right { outline: 2px solid #00cc66 !important; }

x.p1-utility-bar  { outline: 2px solid magenta !important; }
x.p1-utility-bar * { outline: 1px dashed magenta !important; }

x.site  { outline: 2px solid red !important; }
x.site * { outline: 1px dashed red !important; }

x.site-branding  { outline: 2px solid orange !important; }
x.site-branding * { outline: 1px dashed orange !important; }

x.site-content  { outline: 2px solid #ff00ff !important; }
x.site-content * { outline: 1px dashed #ff00ff !important; }

x.site-header  { outline: 2px solid blue !important; }
x.site-header * { outline: 1px dashed blue !important; }

x.site-header-main  { outline: 2px solid purple !important; }
x.site-header-main * { outline: 1px dashed purple !important; }

x.site-main  { outline: 2px solid #ffaa00 !important; }
x.site-main * { outline: 1px dashed #ffaa00 !important; }

x.widget  { outline: 2px solid #888 !important; }
x.widget * { outline: 1px dashed #888 !important; }

x.wrap { outline: 2px solid #555 !important; }

/* vvv BEGIN | ADDITIONAL elements and targets vvv */

/* --- FLEX CONTAINERS --------------------------------------- */
x[style*="display:flex"],
x[style*="display: flex"],
x[class*="flex"],
x[class*="Flex"],
x[class*="row"],
x[class*="columns"] {
    outline: 2px solid #00ffcc !important;
}
x[style*="display:flex"] > *,
x[class*="flex"] > * {
    outline: 1px dashed #00ffcc !important;
}

/* --- GRID CONTAINERS --------------------------------------- */
x[style*="display:grid"],
x[style*="display: grid"],
x[class*="grid"],
x[class*="Grid"] {
    outline: 2px solid #ff00aa !important;
}
x[style*="display:grid"] > *,
x[class*="grid"] > * {
    outline: 1px dashed #ff00aa !important;
}

/* --- BLOCK ELEMENTS ---------------------------------------- */
x:is(div, p, section, article, header, footer, nav, main, aside,
     h1, h2, h3, h4, h5, h6) {
    outline: 2px solid #00aaff !important;
}
x[style*="display:block"],
x[style*="display: block"] {
    outline: 2px solid #00aaff !important;
}

/* --- INLINE ELEMENTS --------------------------------------- */
x:is(span, a, strong, em, b, i, small, label) {
    outline: 2px solid #ffaa00 !important;
}
x[style*="display:inline"],
x[style*="display: inline"] {
    outline: 2px solid #ffaa00 !important;
}

/* --- INLINE‑BLOCK ------------------------------------------ */
x[style*="display:inline-block"],
x[style*="display: inline-block"],
x[class*="inline-block"] {
    outline: 2px solid #cc00ff !important;
}

/* --- FLOAT ALIGNMENT --------------------------------------- */
x[style*="float:left"],
x[style*="float: left"],
x[class*="left"] {
    outline: 2px solid #66ccff !important;
}
x[style*="float:right"],
x[style*="float: right"],
x[class*="right"] {
    outline: 2px solid #ff6699 !important;
}

/* --- TEXT ALIGNMENT ---------------------------------------- */
x[style*="text-align:left"],
x[style*="text-align: left"],
x[class*="alignleft"],
x[class*="left"] {
    outline: 2px solid #66ccff !important;
}
x[style*="text-align:right"],
x[style*="text-align: right"],
x[class*="alignright"],
x[class*="right"] {
    outline: 2px solid #ff6699 !important;
}
x[style*="text-align:center"],
x[style*="text-align: center"],
x[class*="aligncenter"],
x[class*="center"] {
    outline: 2px solid #ffcc00 !important;
}

/* --- COLUMN LAYOUTS ---------------------------------------- */
x[style*="column-count"],
x[style*="column-width"],
x[class*="col"],
x[class*="column"],
x[class*="columns"] {
    outline: 2px solid #33ddff !important;
}
x[style*="column-count"] > *,
x[class*="columns"] > * {
    outline: 1px dashed #33ddff !important;
}

/* --- FLEX DIRECTION: COLUMN -------------------------------- */
x[style*="flex-direction:column"],
x[style*="flex-direction: column"],
x[class*="col"],
x[class*="column"] {
    outline: 2px solid #33ffaa !important;
}

/* --- TABLE ELEMENTS ---------------------------------------- */
x:is(table, tr, td, th) {
    outline: 2px solid #00ccff !important;
}

/* --- LIST ELEMENTS ----------------------------------------- */
x:is(ul, ol, li) {
    outline: 2px solid #ff6600 !important;
}

/* --- FLOW‑ROOT --------------------------------------------- */
x[style*="display:flow-root"],
x[style*="display: flow-root"] {
    outline: 2px solid #aa66ff !important;
}

/* --- MISC BEHAVIORAL TARGETS ------------------------------- */
x[style*="position:absolute"],
x[style*="position: absolute"] {
    outline: 2px solid #ff4444 !important;
}
x[style*="position:relative"],
x[style*="position: relative"] {
    outline: 2px solid #44ff44 !important;
}
x[style*="overflow:auto"],
x[style*="overflow: auto"],
x[style*="overflow:scroll"],
x[style*="overflow: scroll"] {
    outline: 2px solid #ffaaee !important;
}

/* ^^^ END | ADDITIONAL elements and targets ^^^ */

/* ============================================================
   SEC-1: END | BORDER OUTLINE SUITE
   ============================================================ */

/* ----------------------------------------------------------------------- */
/* ----------------------------------------------------------------------- */


/* ============================================================
   FINAL UNIFIED WIDTH SYSTEM — 960px DESKTOP LAYOUT
   ============================================================ */

/* 1. OUTER WRAPPERS — define the true page width */
#page,
.site,
.site-inner,
.site-content,
.content-area {
    width: 100% !important;
    max-width: 960px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    box-sizing: border-box !important;
}

/* 3. PAGE & POST NORMALIZATION — unify behavior */
.page .entry-content,
.single .entry-content {
    max-width: 960px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* ============================================================
   3A. READING-AREA PADDING (PAGE & POST)
   ------------------------------------------------------------
   Purpose:
   - Adds left/right padding ONLY to the true reading layer.
   - Prevents text from touching the edges of the 960px container.
   - Pages and posts use different wrappers, so both are targeted.
   - Does NOT affect structural width wrappers.
   ============================================================ */

article.page,
article.single {
    padding-left: 70px !important;
    padding-right: 70px !important;
    box-sizing: border-box !important;
}

/* 6. Neutralize Twenty Fifteen background artifacts */
.site-header:before,
.site-header:after,
body:before,
body:after {
    background: none !important;
}

/* ============================
   7. P1 INDEX (PHP VERSION)
   ============================ */

.p1-index-wrapper {
    display: flex;
    gap: 30px;
    margin-top: 20px;
    width: 100% !important;
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* LEFT PANEL — CATEGORY TREE */
.p1-index-left {
    width: 40%;
    max-width: 320px;
    flex-shrink: 0;
}

.p1-index-tree,
.p1-index-tree ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.p1-index-cat {
    margin: 4px 0;
}

.p1-index-cat > a {
    text-decoration: none;
    color: #333;
}

.p1-index-cat.p1-selected-cat > a {
    font-weight: bold;
    color: #000;
}

.p1-index-cat ul {
    margin-left: 18px;
    border-left: 1px solid #ddd;
    padding-left: 12px;
}

/* RIGHT PANEL — RESULTS */
.p1-index-right {
    width: 75% !important;
}

.p1-index-sort {
    margin-bottom: 15px;
    font-size: 1.5rem !important;
}

.p1-index-sort a {
    text-decoration: none;
    margin-right: 10px;
}

.p1-index-post {
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd;
}

.p1-index-post-title a {
    font-size: 1.5rem !important;
    font-weight: bold;
    text-decoration: none;
}

.p1-index-post-excerpt {
    margin-top: 6px;
    color: #444;
}

.p1-index-post-cats {
    margin-top: 8px;
    font-size: 1.2rem !important;
    color: #666;
}

.p1-index-post-cats a {
    text-decoration: none;
}

/* PAGINATION */
.p1-index-pagination {
    margin-top: 20px;
}

.p1-index-pagination a {
    display: inline-block !important;
    margin-right: 8px;
}

/* ============================================================
   BLOCK 7B — HEADER IMAGE + DATE BLOCK LAYOUT
   Positions the header image, date block, and prepares the
   utility bar for later alignment in Block 4C.
   ============================================================ */

/* Utility bar — geometry only (alignment comes in Block 4C) */
.p1-utility-bar {
    width: 60rem !important;
    max-width: 100% !important;
    margin: 10px auto 0 auto;
    margin-left: 1rem !important;
    display: flex;
    flex-wrap: nowrap;
    gap: 1rem !important;
}

/* Search field + button height unification */
.p1-utility-bar input[type="text"] {
    height: 2rem !important;
    padding: 0.25rem 0.25rem !important;
}

.p1-utility-bar button {
    height: 2rem !important;
    padding: 0.25rem 0.5rem !important;
    line-height: 1rem: important!;
    margin-left: 0.5rem !important;
}

/* Remove bullet list under header */
ul,
ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Use sans-serif for weekday and main date lines */
.p1-date-weekday,
.p1-date-main {
    font-family: sans-serif;
}

/* BLOCK 7V — Poker1 Header Layout */

/* === Restore Poker1 Light Blue Post Header Background === */
.hentry,
.entry-header {
    background: #d8e8f8 !important; /* your site’s light blue */
}

/* === Utility Bar Button Width Fix === */
.p1-util-btn:first-of-type {
    margin-left: 0.375rem;
}

/* === Final Mobile Content Width Fix === */
@media (max-width: 782px) {

    #content.site-content,
    .site-content,
    .site-main,
    .entry-content,
    .hentry {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* === Final Utility Bar Button Width Override === */
.p1-utility-bar .p1-util-btn {
    width: 114px !important;
    flex: 0 0 114px !important; /* prevents auto-expansion */
}

/* === Mobile Utility Bar Tightening === */
@media (max-width: 782px) {

    .p1-utility-bar {
        display: flex !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        gap: 7px !important; /* was 12px */
    }

    .p1-utility-bar .p1-util-btn {
        width: 110px !important; /* was 114px */
        flex: 0 0 110px !important;
    }
}

div p1-util-bar {
    margin-left: 0.375rem !important;
}



/* === Override Twenty Fifteen mobile transform that breaks child theme === */
@media (max-width: 782px) {
    .site-header {
        transform: none !important;
    }
}

/* === Force No Text Inflation === */
html, body, .p1-date-block {
    -webkit-text-size-adjust: none !important;
    text-size-adjust: none !important;
}

@media (max-width: 782px) {
    header#masthead .p1-date-block {
        text-align: left !important;
    }
}

/* 7V — Poker1 Header Layout (Corrected Final Version) */

.p1-header-container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px; /* space between image and date block */
    width: 100%;
    max-width: none !important; /* override Twenty Fifteen */
}

.p1-header-block {
    flex-shrink: 0; /* prevents image from squashing */
}

.p1-header-image {
    height: 170px;
    width: auto;
    display: block;
    margin-left: 0rem !important;
    padding-left: 0rem !important;
}

.p1-date-block {
    white-space: nowrap; /* prevents wrapping */
    text-align: left !important; /* restores original alignment */
    padding-top: 4px; /* aligns visually with image top */
}

/* 7V — Override Twenty Fifteen Mobile Column Width */
@media (max-width: 782px) {

    .site,
    .site-content,
    .content-area,
    .site-main,
    .hentry,
    .entry-content {
        max-width: none !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Prevent clipping of date block */
    header#masthead {
        overflow: visible !important;
    }
}

/* Reduce size of header height from 170px (10.625rem) to 8.5rem */
@media (max-width: 48.875rem) {
    .p1-header-image {
        height: 8.5rem !important;
        width: auto !important;
    }
}

/* 7V — Fix Twenty Fifteen Mobile Column Width */
@media (max-width: 782px) {

    .site {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .site-content,
    .content-area,
    .site-main,
    .hentry,
    .entry-content {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 12px !important; /* small readable padding */
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    header#masthead {
        overflow: visible !important; /* stops date block clipping */
    }
}

/* 7V — Fix Collapsed Mobile Content Column */
@media (max-width: 910px) {

    .site-content .content-area {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    .hentry {
        overflow: visible !important;
    }
}

/* 7V — Final Mobile Site Container Fix */
@media (max-width: 910px) {

    .site {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* 7V — Final Fix: Remove Twenty Fifteen Mobile Padding from .site-main */
@media (max-width: 910px) {

    .site-main {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* 7V — Final Fix: Remove Twenty Fifteen Mobile Padding from Entry/Page Content */
@media (max-width: 910px) {

    .entry-content,
    .page-content {
        padding: 0 !important;
        margin: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* 7D — Unified date-block typography (rem-based) */
.p1-date-weekday {
    font-size: 1.75rem;      
    line-height: 2.25rem;
    padding-bottom: 0.25rem;
    color: #1578b4;
    font-weight: bold;
}

.p1-date-main {
    font-size: 1.75rem;
    color: #1578b4;
    font-weight: bold;
    line-height: 1.5rem;
}

.p1-date-small {
    font-size: 1.25rem;
    line-height: 1.25rem;
    padding-top: 0.375rem;
    font-style: italic;
}

/* Utility bar button typography (no container present) */
.p1-util-btn {
    font-family: sans-serif, arial, helvetica !important;
    font-size: 1.5rem;
    line-height: 1.5rem;
    font-weight: bold;
    position: center !important;
}

/* Reduce size of utility-bar triangles */
.p1-util-btn .tri {
    font-size: 1.2rem;
    line-height: 1.2rem;
    position: relative;
    top: 0.25em;
    margin-left: -1rem;
}

/* P1 INDEX — DESKTOP TUNING */
.p1-index-left {
    font-size: 0rem;
    line-height: 1.25rem;
}

.p1-index-tree,
.p1-index-tree ul {
    margin:-left 0rem;
    padding-left: 0rem;
}

.p1-index-cat {
    margin: 0.125rem;
}

.p1-index-cat > a {
    text-decoration: none;
    color: #333;
}

/* Slightly smaller, tighter right panel */
.p1-index-right {
    font-size: 0.9rem;
}

.p1-index-post-title a {
    font-size: 1.05rem;
}

.p1-index-post-excerpt {
    font-size: 0.9rem;
}

.p1-index-post-cats {
    font-size: 0.85rem;
}

/* FORCE CATEGORY TREE HIERARCHY */
.p1-index-tree ul,
.p1-index-cat ul {
    margin-left: 0.125rem !important;
    padding-left: 0.375rem !important;
    border-left: 0.125rem solid #ddd !important;
}

.p1-index-cat {
    margin: 0.125rem 0 !important;
}

.p1-index-cat > a {
    font-size: 1.5rem;
    line-height: 1.25rem;
}

/* TEMP: Disable competing wrapper layers */
#page,
.site,
.site-inner,
.site-content,
.content-area,
.site-main {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 auto !important;
    max-width: none !important;
    width: auto !important;
    outline: none !important;
}

/* FIX: Collapse double content wrappers on posts */
.post,
.type-post {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    max-width: none !important;
    width: auto !important;
}

/* Remove Twenty Fifteen sidebar offset */
.site-content,
.site-main {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

@media screen and (max-width: 955px) {
    .site-content,
    .site-main {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
}

/* Remove leftover Twenty Fifteen sidebar offset from footer */
.site-footer {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Kill leftover Twenty Fifteen floats */
.site-content,
.site-main,
#primary {
    float: none !important;
    width: auto !important;
}

/* Restore global centering without forcing width */
.site {
    margin-left: auto !important;
    margin-right: auto !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

/* Center the entire Poker1 layout by targeting the real container */
#page {
    margin-left: auto !important;
    margin-right: auto !important;
    width: auto !important;
    max-width: 960px !important;   /* Your intended Poker1 width */
    padding: 0 !important;
}

/* Force Poker1 post content width to match pages */
.single .entry-content,
.single article,
.single .hentry {
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* MC Step 1 — Attempt 1: Force post width to 960px */
.single .entry-content,
.single .entry-header,
.single .post-thumbnail,
.single .hentry,
.single article {
    max-width: 960px !important;
    width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Remove Twenty Fifteen width constraints on posts */
.single .site-main,
.single .content-area,
.single .hentry,
.single article {
    width: auto !important;
    max-width: none !important;
}

/* Force Poker1 content wrapper to define post width */
.single .entry-content {
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* MC Step 1 — Attempt 2: Remove width from the outer post container */
.single #primary,
.single .content-area,
.single .site-main {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

/* MC Step 1 — Attempt 3: Force outer container to inherit #page width */
.single #primary,
.single .content-area,
.single .site-main {
    max-width: inherit !important;
    width: inherit !important;
}

/* MC Step 1 — Attempt 4: Override Twenty Fifteen's article width rule */
.single .site-main > article {
    max-width: 960px !important;
    width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* MC Step 1 — Attempt 5: Break the outer container's block formatting */
.single #primary,
.single .content-area,
.single .site-main {
    display: contents !important;
}

/* Neutralize Twenty Fifteen's post container */
.single article.hentry,
.single article {
    max-width: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Neutralize Twenty Fifteen's page container */
.page article.hentry,
.page article {
    max-width: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#content.site-content {
    max-width: 960px !important;
    margin: 0 auto !important;
    padding: 0 2rem !important;
    background: none !important;
}

@media (max-width: 800px) {
    #content.site-content {
        max-width: 100% !important;
        padding: 1rem !important;
        wrap: wrap !important;
    }
}



/***********************************************
 * 3. NEUTRALIZE TWENTY FIFTEEN ARTICLE BOXES
 ***********************************************/
article {
    max-width: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}



/***********************************************
 * 4. HEADER CONTAINER (MATCH 960px LAYOUT)
 ***********************************************/
.site-header {
    max-width: 960px !important;
    margin: 0rem auto 0 auto !important;
    padding: 0rem !important;
    background: #fff !important;
    border-radius: 0 0 2rem 0 !important;
}



/***********************************************
 * 5. TITLES — FULL WIDTH + CENTERED
 ***********************************************/
.entry-title {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto 2rem auto !important;
    border-style: none !important;
}

/***********************************************
 * FIX 1 — Neutralize Twenty Fifteen wrappers
 ***********************************************/
.content-area,
.site-main {
    width: auto !important;
    max-width: 60rem !important;
    margin: 0 !important;
    padding: 1.25rem !important;
}

.content-area {
  background: #ffffff !important;
}


/***********************************************
 * FIX 2 — Force the REAL layout container
 * (#content.site-content) to 960px centered
 ***********************************************/
#content.site-content {
    width: auto !important;
    max-width: 960px !important;
    margin: 0 auto !important;
    padding: 0 1rem !important;
}



/***********************************************
 * FIX 3 — Title wrappers (entry-header)
 ***********************************************/
.entry-header {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 auto 2rem auto !important;
    padding: 0 !important;
    text-align: center !important;
}


/***********************************************
 * FIX 4 — Title text (entry-title)
 ***********************************************/
.entry-title {
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding-top: 0.625rem !important;
    padding-bottom: 1.5rem !important;
    text-align: center !important;
    font-size: 2rem !important;
}

/***********************************************
 * FIX 5 — Neutralize entry-content width limits
 ***********************************************/
.entry-content {
    max-width: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/***********************************************
 * TRUE SITE SURROUND COLOR (OVERRIDE WP)
 ***********************************************/
body.custom-background,
body {
    background: #bfe1ff !important;
}

/***********************************************
 * PAGE WRAPPER MUST BE TRANSPARENT
 ***********************************************/
#page.site {
    background: transparent !important;
}

/***********************************************
 * FINAL OVERRIDE — BEAT INLINE CUSTOM BACKGROUND
 ***********************************************/
html body.custom-background {
    background: #e7f1ff !important;
}

#page.site {
    background: transparent !important;
}

/* REMOVE THE GAP BELOW THE TITLE */
.entry-header {
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
    background: #ffffff !important;

}

/* HEADER CONTAINER — WHITE BOX WITH TOP-RIGHT ROUNDED CORNER */
.site-header {
    background: #ffffff !important;
    border-radius: 0 3.0625rem 0 0 !important; /* top-right only */
    margin-top: 20px !important; /* reveal the corner */
    margin-bottom: 0 important;
    padding: 0 0rem !important; /* match content column */
}

   /* Neutralize all desktop width rules */
    .site,
    .site-inner,
    .site-content,
    .content-area,
    .site-main,
    .hentry,
    .entry-content,
    article,
    #page {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0 !important;
        margin-top: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Prevent flex containers from forcing overflow */
    .p1-header-row,
    .p1-utility-bar,
    .p1-date-block,
    .p1-content-container {
        flex-wrap: wrap !important;
        max-width: 100% !important;
        width: 100% !important;
    }

/* MAKE FOOTER MATCH THE 960PX LAYOUT COLUMN */
.site-footer {
    max-width: 960px !important;
    margin: 0 auto !important;
    background: #ffffff !important; /* optional but recommended */
}

/* RESTORE WHITE BACKGROUND TO THE CONTENT COLUMN */
#content.site-content {
    background: #ffffff !important;
}

/* REMOVE THE GAP BELOW THE TITLE */
.entry-header {
    margin-bottom: 1.5rem !important;
    padding-bottom: 0 !important;
}

/* CONTROL HEADER → UTILITY BAR SPACING */
.site-header {
    padding-bottom: 0 !important;
}

/* REMOVE THE 18PX GAP UNDER THE HEADER IMAGE */
body .header-image {
    margin-top: 0.25rem !important;
    padding-top: 0 !important;
    margin-bottom: 0.25rem !important;
    padding-bottom: 0 !important;
}
    
/* FORCE PAGE WRAPPER AND FOOTER TO 960PX */
body #page.site {
    width: 100% !important;
    max-width: 960px !important;
    margin: 0 auto !important;
}

body .site-footer {
    width: 100% !important;
    max-width: 960px !important;
    margin: 0 auto !important;
}

/* === P1 FIX: Normalize title + image horizontal alignment === */

/* 1) Fix entry header (title container) drifting right */
.entry-header {
    margin-left: 0 !important;
    padding-left: 0 !important;
    width: 100% !important;
}

/* Optional: tighten the title itself if needed */
.entry-title {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* 2) Fix inline images (including P1 logo) extending content width */
.entry-content img {
    display: block;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100% !important;
}

/* If your P1 logo uses alignright */
.entry-content img.alignright {
    float: right;
    margin-right: 0 !important;
}

/* === P1 FIX: Normalize title + image horizontal alignment on POSTS ONLY === */

/* 1) Fix entry header (title container) drifting right */
body.single .entry-header {
    margin-left: 0 !important;
    padding-left: 0 !important;
    width: 100% !important;
}

/* Optional: tighten the title itself if needed */
body.single .entry-title {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* 2) Fix inline images (including P1 logo) extending content width */
body.single .entry-content img {
    display: block;
    margin-left: 0 !important;
    margin-right: auto !important;
    max-width: 100% !important;
}

/* If your P1 logo uses alignright */
body.single .entry-content img.alignright {
    float: right;
    margin-right: 0 !important;
}

/* === P1 FIX: Prevent inline image containers from exceeding content width on POSTS === */

/* Remove inherited padding/margins from containers */
body.single .entry-content p,
body.single .entry-content figure,
body.single .entry-content .wp-caption {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
}

/* Ensure images inside those containers behave */
body.single .entry-content img {
    display: block;
    max-width: 100% !important;
    height: auto;
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* If the logo is floated right */
body.single .entry-content img.alignright {
    float: right;
    margin-right: 0 !important;
}

/* Tighten post content column horizontally */
body.single .entry-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
}

/* Keep images inside that column */
body.single .entry-content img {
    display: block;
    max-width: 100% !important;
    height: auto;
}

/* Logo floated right, but not beyond column */
body.single .entry-content img.alignright {
    float: right;
    margin-right: 0 !important;
}

/* Reduce gap between header image and utility bar to 5px */
.p1-header-row {
    margin-bottom: 0.3125rem !important; /* 5px */
    padding-bottom: 0 !important;
}

.p1-utility-bar {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove unwanted gap between header/utility bar and content area */
body.single .site-main,
body.page .site-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.single article,
body.page article {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* === P1 FIX: Remove unwanted header/content gaps === */

/* Remove the big gap BELOW the header image */
body.single .entry-header,
body.page .entry-header {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove the big gap ABOVE the content area */
body.single .hentry,
body.page .hentry {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure the utility bar sits exactly 5px below the header */
.p1-utility-bar {
    margin-top: 0.3125rem !important; /* 5px */
}

/* === P1 FIX: Remove remaining header/utility/content gaps === */

/* 1. Remove ALL bottom spacing from the header image container */
.p1-header-row,
.p1-header-container,
.custom-header,
header .p1-header-row {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* 2. Remove ALL top spacing from the utility bar */
.p1-utility-bar,
.p1-utility-row {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* 3. Remove ALL top spacing from the first content element */
body.single .entry-content > *:first-child,
body.page .entry-content > *:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* === P1 FIX: Remove header → utility bar gap === */
.p1-header-buffer,
.p1-header-wrapper,
.p1-content-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* === P1 FIX: Remove utility bar → content gap === */
.p1-utility-bar,
.p1-utility-inner,
.p1-utility-menu {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove bottom spacing from the utility bar container */
.p1-utility-bar,
.p1-utility-inner,
.p1-utility-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove top spacing on the utility bar buttons */
.p1-utility-bar button,
.p1-utility-inner button,
.p1-utility-bar a,
.p1-utility-inner a {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-left: 0.5rem !important;
}

/* Remove top spacing from the utility bar BUTTONS (they are <a> tags) */
.p1-utility-bar a,
.p1-utility-inner a,
.p1-utility-menu a {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove top padding from the utility bar container */
.p1-utility-bar {
    padding-top: 0 !important;
    padding-left: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.p1-utility-bar * {
    padding-top: 0rem !important;
    margin-top: 0.375rem !important;
    margin-bottom: 0.375rem !important;
    padding-left: 0.5rem !important;
}