/*
Theme Name: Paranormal Nexus
Theme URI: https://example.com/paranormal-nexus
Author: Cryptic Blue Technologies
Author URI: https://example.com
Description: A fully customizable dark paranormal portal inspired by traditional early-2000s gaming and media websites. Includes a three-column portal layout, beveled panel styling, configurable sidebars, menus, colors, typography, ticker, hero area, and multiple widget zones.
Version: 1.1.1
Requires at least: 6.2
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: paranormal-nexus
Tags: blog, news, entertainment, dark, two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-logo, custom-menu, featured-images, footer-widgets, theme-options, threaded-comments, translation-ready
*/

:root {
    --pn-page-bg: #07070b;
    --pn-page-bg-alt: #12101a;
    --pn-panel-bg: #15131d;
    --pn-panel-alt: #211a2d;
    --pn-header-bg: #0d0b13;
    --pn-nav-bg: #20152f;
    --pn-text: #f4f1f8;
    --pn-muted: #b8afc4;
    --pn-heading: #ffffff;
    --pn-link: #d8b6ff;
    --pn-accent: #8a42d1;
    --pn-accent-alt: #c684ff;
    --pn-border: #514061;
    --pn-glow: #9f5ae5;
    --pn-site-width: 1180px;
    --pn-left-width: 220px;
    --pn-right-width: 260px;
    --pn-radius: 5px;
    --pn-base-size: 14px;
    --pn-shadow-opacity: .55;
    --pn-font: Tahoma, Verdana, Arial, sans-serif;
    --pn-ticker-speed: 24s;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background:
        radial-gradient(circle at 50% -15%, rgba(138, 66, 209, .22), transparent 36rem),
        repeating-linear-gradient(90deg, rgba(255,255,255,.015) 0, rgba(255,255,255,.015) 1px, transparent 1px, transparent 4px),
        var(--pn-page-bg);
    color: var(--pn-text);
    font-family: var(--pn-font);
    font-size: var(--pn-base-size);
    line-height: 1.55;
}
body.pn-boxed::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(138,66,209,.05), transparent 20%, transparent 80%, rgba(138,66,209,.05));
}
a { color: var(--pn-link); text-decoration: none; }
a:hover, a:focus { color: #fff; text-decoration: underline; }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
input, select, textarea {
    width: 100%;
    border: 1px solid var(--pn-border);
    background: #0c0b11;
    color: var(--pn-text);
    padding: .65rem .75rem;
    border-radius: 2px;
}
input:focus, select:focus, textarea:focus { outline: 2px solid var(--pn-accent); outline-offset: 1px; }
button, input[type="submit"], .button, .wp-element-button, .pn-button {
    display: inline-block;
    width: auto;
    cursor: pointer;
    color: #fff;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid #b77ce8;
    border-bottom-color: #3b1858;
    border-right-color: #3b1858;
    border-radius: 3px;
    padding: .62rem 1rem;
    background: linear-gradient(#a85fe3, #6e2aac 52%, #4a1d78 53%, #7d35be);
    box-shadow: inset 0 1px rgba(255,255,255,.32), 0 2px 8px rgba(0,0,0,.4);
    text-shadow: 0 1px #290e42;
}
button:hover, input[type="submit"]:hover, .button:hover, .wp-element-button:hover, .pn-button:hover {
    text-decoration: none;
    filter: brightness(1.16);
}
.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;
}
.screen-reader-text:focus {
    clip: auto !important; clip-path: none; display: block; height: auto; width: auto;
    left: 8px; top: 8px; padding: 12px 16px; z-index: 100000; background: #fff; color: #000;
}

.site {
    width: min(100%, var(--pn-site-width));
    margin: 0 auto;
    background: rgba(7, 7, 11, .94);
    border-left: 1px solid rgba(198,132,255,.25);
    border-right: 1px solid rgba(198,132,255,.25);
    box-shadow: 0 0 34px rgba(0,0,0,var(--pn-shadow-opacity)), 0 0 18px rgba(159,90,229,.12);
}
.pn-full-bleed .site { width: 100%; max-width: none; border-inline: 0; }

.pn-utility-bar {
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0 14px;
    color: #d6cfe0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    background: linear-gradient(#26242a, #0c0c0f 48%, #030304 52%, #17161a);
    border-bottom: 1px solid #000;
    box-shadow: inset 0 1px rgba(255,255,255,.12);
}
.pn-utility-bar ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 1rem; }
.pn-utility-bar a { color: #eee; }
.pn-status-dot { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #9cff75; box-shadow: 0 0 8px #9cff75; }

.site-header {
    position: relative;
    min-height: 150px;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(8,7,12,.96), rgba(28,16,43,.78) 55%, rgba(8,7,12,.9)),
        var(--pn-header-image, none),
        var(--pn-header-bg);
    background-size: cover;
    background-position: center;
    border-bottom: 1px solid #000;
}
.site-header::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .28;
    background:
        repeating-linear-gradient(0deg, transparent 0, transparent 3px, rgba(255,255,255,.045) 4px),
        radial-gradient(circle at 77% 40%, rgba(159,90,229,.62), transparent 24rem);
    pointer-events: none;
}
.pn-branding-row {
    position: relative;
    z-index: 1;
    min-height: 150px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 2rem;
    padding: 22px 24px;
}
.site-branding {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
}
.pn-logo-align-left .site-branding { grid-column: 1; justify-self: start; justify-content: flex-start; text-align: left; }
.pn-logo-align-left .pn-header-actions { grid-column: 3; justify-self: end; }
.pn-logo-align-center .site-branding { grid-column: 2; justify-self: center; justify-content: center; text-align: center; }
.pn-logo-align-center .pn-header-actions { grid-column: 3; justify-self: end; }
.pn-logo-align-right .site-branding { grid-column: 3; justify-self: end; justify-content: flex-end; text-align: right; }
.pn-logo-align-right .pn-header-actions { grid-column: 1; justify-self: start; text-align: left; }
.pn-custom-logo-wrap {
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    min-width: 0;
    max-width: 100%;
}
.pn-custom-logo-link {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    line-height: 0;
}
.custom-logo,
.pn-custom-logo {
    display: block;
    width: auto;
    max-width: min(100%, 520px);
    max-height: 110px;
    object-fit: contain;
}
.pn-site-identity-text { min-width: 0; }
.pn-hide-header-text .pn-site-identity-text { display: none !important; }
.site-title {
    margin: 0;
    font-size: clamp(2rem, 5vw, 4.7rem);
    line-height: .93;
    letter-spacing: -.045em;
    text-transform: uppercase;
    font-family: "Arial Black", Impact, var(--pn-font);
    text-shadow: 0 2px #000, 0 0 15px rgba(159,90,229,.8);
}
.site-title a { color: #fff; text-decoration: none; }
.site-description { margin: .55rem 0 0; color: #d8c8e6; font-weight: 700; text-transform: uppercase; letter-spacing: .14em; font-size: 11px; }
.pn-header-actions { text-align: right; }
.pn-header-actions .pn-mini-label { display: block; margin-bottom: 7px; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: var(--pn-muted); }

.main-navigation {
    position: relative;
    z-index: 20;
    background: linear-gradient(#4d3562, #20152f 48%, #120d1b 51%, #2b1a40);
    border-top: 1px solid #8562a1;
    border-bottom: 1px solid #020203;
    box-shadow: inset 0 1px rgba(255,255,255,.22), 0 2px 8px rgba(0,0,0,.75);
}
.pn-sticky-nav .main-navigation { position: sticky; top: 0; }
.main-navigation .menu-toggle { display: none; margin: 7px; }
.main-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
.main-navigation li { position: relative; border-right: 1px solid rgba(255,255,255,.11); border-left: 1px solid rgba(0,0,0,.35); }
.main-navigation a {
    display: block;
    padding: 11px 16px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .055em;
    text-shadow: 0 1px #000;
}
.main-navigation a:hover, .main-navigation a:focus, .main-navigation .current-menu-item > a, .main-navigation .current_page_item > a {
    text-decoration: none;
    background: linear-gradient(#a761e1, #6e2aaa 50%, #431c68 51%, #7c37b8);
}
.main-navigation ul ul {
    display: none;
    position: absolute;
    z-index: 99;
    min-width: 210px;
    background: #160f20;
    border: 1px solid #705087;
    box-shadow: 0 10px 25px rgba(0,0,0,.7);
}
.main-navigation ul ul li { width: 100%; border: 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.main-navigation ul ul a { padding: 10px 12px; text-transform: none; }
.main-navigation li:hover > ul, .main-navigation li:focus-within > ul { display: block; }

.pn-ticker {
    display: flex;
    min-height: 36px;
    align-items: stretch;
    overflow: hidden;
    background: #0b0a0f;
    border-bottom: 1px solid #3f314b;
}
.pn-ticker-label {
    display: flex;
    align-items: center;
    padding: 0 14px;
    color: #fff;
    font-weight: 900;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    white-space: nowrap;
    background: linear-gradient(135deg, #9d52df, #4a1e72);
    clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%);
}
.pn-ticker-window {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    align-items: center;
    overflow: hidden;
}
.pn-ticker-track {
    display: flex;
    flex: 0 0 auto;
    width: max-content;
    animation: pn-ticker-scroll var(--pn-ticker-speed) linear infinite;
    will-change: transform;
}
.pn-ticker-group {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    padding-left: 24px;
}
.pn-ticker-text { padding: 8px 36px 7px 0; color: #d8d1df; white-space: nowrap; }
.pn-ticker-separator { margin-right: 36px; color: var(--pn-accent-alt); font-size: 12px; }
.pn-ticker:hover .pn-ticker-track,
.pn-ticker:focus-within .pn-ticker-track { animation-play-state: paused; }
@keyframes pn-ticker-scroll {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(var(--pn-ticker-translate, -50%), 0, 0); }
}
@media (prefers-reduced-motion: reduce) {
    .pn-ticker-track { width: auto; min-width: 0; animation: none; }
    .pn-ticker-group { min-width: 0; }
    .pn-ticker-group[aria-hidden="true"] { display: none; }
}

.pn-content-wrap { padding: 12px; }
.pn-portal-grid {
    display: grid;
    grid-template-columns: var(--pn-left-width) minmax(0, 1fr) var(--pn-right-width);
    gap: 12px;
    align-items: start;
}
.pn-no-left .pn-portal-grid { grid-template-columns: minmax(0, 1fr) var(--pn-right-width); }
.pn-no-right .pn-portal-grid { grid-template-columns: var(--pn-left-width) minmax(0, 1fr); }
.pn-no-left.pn-no-right .pn-portal-grid { grid-template-columns: minmax(0, 1fr); }
.pn-main { min-width: 0; }

.pn-panel, .widget, .site-main > article, .comments-area, .pn-hero, .pn-section {
    margin: 0 0 12px;
    overflow: hidden;
    border: 1px solid var(--pn-border);
    border-radius: var(--pn-radius);
    background: linear-gradient(135deg, rgba(255,255,255,.025), transparent 36%), var(--pn-panel-bg);
    box-shadow: inset 0 1px rgba(255,255,255,.09), 0 3px 12px rgba(0,0,0,.45);
}
.widget { padding: 0 10px 10px; }
.widget-title, .pn-panel-title, .pn-section-title, .comments-title, .comment-reply-title {
    margin: 0 -10px 10px;
    padding: 7px 10px 6px;
    color: #fff;
    font-size: 12px;
    line-height: 1.3;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
    background: linear-gradient(#6f4c89, #2d2038 48%, #16111d 52%, #3c2850);
    border-bottom: 1px solid #050306;
    box-shadow: inset 0 1px rgba(255,255,255,.18);
    text-shadow: 0 1px #000;
}
.pn-panel-title, .pn-section-title { margin: 0; }
.widget ul { list-style: none; margin: 0; padding: 0; }
.widget li { padding: 6px 2px; border-bottom: 1px solid rgba(255,255,255,.07); font-size: 12px; }
.widget li:last-child { border-bottom: 0; }
.widget li::before { content: "›"; color: var(--pn-accent-alt); margin-right: 7px; font-weight: 900; }
.widget .sub-menu { padding-left: 10px; margin-top: 5px; }
.widget_search { padding-top: 10px; }
.widget_search .widget-title { margin-top: -10px; }
.pn-sidebar .widget:first-child { margin-top: 0; }

.pn-hero {
    position: relative;
    min-height: 410px;
    background: #0c0910;
}
.pn-hero-media { position: absolute; inset: 0; }
.pn-hero-media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.08) brightness(.64); }
.pn-hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,5,9,.94) 0, rgba(6,5,9,.63) 47%, rgba(6,5,9,.12) 100%), linear-gradient(0deg, rgba(6,5,9,.9), transparent 55%); }
.pn-hero-fallback { position: absolute; inset: 0; background: radial-gradient(circle at 75% 40%, rgba(146,68,212,.44), transparent 16rem), repeating-radial-gradient(circle at 70% 50%, transparent 0 18px, rgba(198,132,255,.045) 19px 20px), #0b0910; }
.pn-hero-content { position: relative; z-index: 2; max-width: 680px; min-height: 410px; padding: clamp(28px, 6vw, 72px) clamp(24px, 6vw, 58px); display: flex; flex-direction: column; justify-content: flex-end; }
.pn-eyebrow { color: var(--pn-accent-alt); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .15em; }
.pn-hero h1, .pn-hero h2 { margin: .35rem 0 .6rem; color: #fff; font-family: "Arial Black", Impact, var(--pn-font); font-size: clamp(2.15rem, 5vw, 4.6rem); line-height: .93; letter-spacing: -.04em; text-transform: uppercase; text-shadow: 0 3px 0 #000, 0 0 16px rgba(154,74,220,.45); }
.pn-hero p { max-width: 620px; margin: 0 0 1.2rem; color: #e5ddea; font-size: 1.02rem; }
.pn-hero-meta { display: flex; gap: .7rem; align-items: center; flex-wrap: wrap; color: #cfc5d8; font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }

.pn-quick-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 0 0 12px; }
.pn-quick-card {
    position: relative;
    min-height: 140px;
    overflow: hidden;
    border: 1px solid var(--pn-border);
    border-radius: var(--pn-radius);
    background: linear-gradient(145deg, rgba(144,69,209,.22), transparent 50%), var(--pn-panel-alt);
    box-shadow: inset 0 1px rgba(255,255,255,.08), 0 3px 10px rgba(0,0,0,.4);
}
.pn-quick-card::after { content: ""; position: absolute; inset: 4px; border: 1px solid rgba(255,255,255,.045); pointer-events: none; z-index: 2; }
.pn-quick-card-inner { display: flex; height: 100%; min-height: 140px; flex-direction: column; color: inherit; text-decoration: none; }
a.pn-quick-card-inner:hover, a.pn-quick-card-inner:focus { color: inherit; text-decoration: none; background: rgba(198,132,255,.05); }
.pn-quick-card-media { position: relative; z-index: 1; aspect-ratio: 16 / 7; overflow: hidden; background: #09070d; border-bottom: 1px solid var(--pn-border); }
.pn-quick-card-media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.8) contrast(1.08) brightness(.78); transition: transform .25s ease, filter .25s ease; }
a.pn-quick-card-inner:hover .pn-quick-card-media img, a.pn-quick-card-inner:focus .pn-quick-card-media img { transform: scale(1.035); filter: saturate(.95) contrast(1.08) brightness(.88); }
.pn-quick-card-content { position: relative; z-index: 1; display: flex; flex: 1 1 auto; flex-direction: column; align-items: flex-start; padding: 14px; }
.pn-quick-card h3 { margin: .3rem 0; color: #fff; text-transform: uppercase; font-size: 1rem; }
.pn-quick-card p { margin: 0; color: var(--pn-muted); font-size: 12px; }
.pn-quick-icon { color: var(--pn-accent-alt); font-size: 1.45rem; }
.pn-quick-card-cta { display: inline-block; margin-top: auto; padding-top: 10px; color: var(--pn-accent-alt); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }

.pn-tab-bar {
    display: flex;
    gap: 0;
    overflow-x: auto;
    border: 1px solid var(--pn-border);
    border-bottom: 0;
    border-radius: var(--pn-radius) var(--pn-radius) 0 0;
    background: #0d0b11;
}
.pn-tab-bar span { padding: 9px 14px; border-right: 1px solid var(--pn-border); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.pn-tab-bar .is-active { color: #fff; background: linear-gradient(#6d438f, #2d1b40); }

.pn-post-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 10px; }
.pn-card {
    overflow: hidden;
    border: 1px solid #3f3348;
    background: #100e15;
    border-radius: 3px;
}
.pn-card-media { aspect-ratio: 16 / 9; overflow: hidden; background: #09080c; }
.pn-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.pn-card:hover .pn-card-media img { transform: scale(1.035); }
.pn-card-body { padding: 10px; }
.pn-card h3 { margin: 0 0 5px; color: #fff; font-size: .98rem; line-height: 1.25; }
.pn-card p { margin: 0; color: var(--pn-muted); font-size: 12px; }
.pn-meta, .entry-meta, .entry-footer { color: var(--pn-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .045em; }

.site-main > article { padding: 16px; }
.entry-header { margin-bottom: 12px; }
.entry-title { margin: 0 0 .35rem; color: var(--pn-heading); font-family: "Arial Black", Impact, var(--pn-font); font-size: clamp(1.65rem, 4vw, 2.7rem); line-height: 1.03; letter-spacing: -.025em; text-transform: uppercase; }
.entry-title a { color: inherit; }
.entry-thumbnail { margin: -16px -16px 16px; max-height: 520px; overflow: hidden; border-bottom: 1px solid var(--pn-border); }
.entry-thumbnail img { width: 100%; height: 100%; object-fit: cover; }
.entry-content > *:first-child { margin-top: 0; }
.entry-content h2, .entry-content h3, .entry-content h4 { color: #fff; }
.entry-content blockquote { margin: 1.4rem 0; padding: 1rem 1.2rem; border-left: 4px solid var(--pn-accent); background: rgba(138,66,209,.09); color: #eee; }
.entry-content table { width: 100%; border-collapse: collapse; }
.entry-content th, .entry-content td { border: 1px solid var(--pn-border); padding: .65rem; }
.entry-content th { background: var(--pn-panel-alt); color: #fff; text-align: left; }
.more-link { display: inline-block; margin-top: .8rem; font-weight: 700; }

.navigation.pagination, .post-navigation { margin: 12px 0; }
.nav-links { display: flex; gap: 8px; justify-content: space-between; flex-wrap: wrap; }
.page-numbers, .post-navigation a { padding: 7px 10px; border: 1px solid var(--pn-border); background: var(--pn-panel-bg); }
.page-numbers.current { color: #fff; background: var(--pn-accent); }

.comments-area { padding: 16px; }
.comments-title, .comment-reply-title { margin: -16px -16px 16px; }
.comment-list { list-style: none; padding: 0; }
.comment-body { margin-bottom: 12px; padding: 12px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.025); }
.children { list-style: none; }

.pn-breadcrumbs { margin: 0 0 10px; padding: 7px 10px; color: var(--pn-muted); font-size: 11px; background: #0a090d; border: 1px solid #302638; }
.page-header { margin-bottom: 12px; padding: 14px 16px; border: 1px solid var(--pn-border); background: var(--pn-panel-alt); }
.page-title { margin: 0; text-transform: uppercase; color: #fff; }

.site-footer {
    margin-top: 16px;
    color: #c7bfce;
    background: linear-gradient(#1a1421, #08070b 65%);
    border-top: 1px solid #624879;
}
.pn-footer-widgets { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 18px 14px 6px; }
.pn-footer-widgets .widget { background: rgba(255,255,255,.018); }
.pn-footer-nav { padding: 10px 14px; border-top: 1px solid rgba(255,255,255,.07); border-bottom: 1px solid rgba(255,255,255,.07); text-align: center; }
.pn-footer-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }
.site-info { display: flex; justify-content: space-between; gap: 1rem; padding: 12px 14px 18px; font-size: 11px; }

.alignwide { margin-left: min(-4vw, -28px); margin-right: min(-4vw, -28px); max-width: calc(100% + 8vw); }
.alignfull { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; width: 100vw; }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { color: var(--pn-muted); font-size: 11px; }
.sticky { border-color: var(--pn-accent-alt) !important; }
.bypostauthor { outline: 1px solid var(--pn-accent); }

@media (max-width: 1050px) {
    .pn-portal-grid, .pn-no-left .pn-portal-grid, .pn-no-right .pn-portal-grid { grid-template-columns: 210px minmax(0, 1fr); }
    .pn-right-sidebar { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
    .pn-right-sidebar .widget { margin: 0; }
}
@media (max-width: 780px) {
    .site { border-inline: 0; }
    .pn-branding-row { min-height: 125px; display: flex; padding: 18px; }
    .site-branding { width: 100%; }
    .pn-custom-logo-wrap { max-width: 100%; }
    .custom-logo, .pn-custom-logo { max-width: 100%; max-height: 90px; }
    .pn-logo-align-left .pn-branding-row { justify-content: flex-start; }
    .pn-logo-align-center .pn-branding-row { justify-content: center; }
    .pn-logo-align-right .pn-branding-row { justify-content: flex-end; }
    .pn-header-actions { display: none; }
    .main-navigation .menu-toggle { display: inline-block; }
    .main-navigation ul { display: none; flex-direction: column; }
    .main-navigation.toggled ul { display: flex; }
    .main-navigation ul ul { display: block; position: static; border: 0; box-shadow: none; padding-left: 12px; }
    .main-navigation li { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.08); }
    .pn-portal-grid, .pn-no-left .pn-portal-grid, .pn-no-right .pn-portal-grid { grid-template-columns: 1fr; }
    .pn-left-sidebar, .pn-right-sidebar { grid-column: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .pn-left-sidebar .widget, .pn-right-sidebar .widget { margin: 0; }
    .pn-main { grid-row: 1; }
    .pn-quick-strip, .pn-footer-widgets { grid-template-columns: 1fr; }
    .pn-hero { min-height: 330px; }
    .pn-hero-content { min-height: 330px; }
}
@media (max-width: 540px) {
    .pn-utility-bar { display: none; }
    .site-header, .pn-branding-row { min-height: 105px; }
    .site-title { font-size: 2rem; }
    .site-description { font-size: 9px; }
    .pn-content-wrap { padding: 8px; }
    .pn-left-sidebar, .pn-right-sidebar, .pn-post-grid { grid-template-columns: 1fr; }
    .pn-ticker-label { padding: 0 10px; }
    .pn-ticker-group { padding-left: 18px; }
    .pn-ticker-text { font-size: 11px; }
    .site-info { flex-direction: column; }
}
