/*
Theme Name: Geeksplosive Classic
Description: Custom classic theme for the Geeksplosive Star Wars archive.
Author: Peter Rosenzweig
Version: 1.0
Text Domain: geeksplosive-classic
*/


/* =========================================================
   Base
   ========================================================= */

*,
*::before,
*::after {
box-sizing: border-box;
}

html {
font-size: 16px;
}

body {
margin: 0;
background: #080808;
color: #e8e8e8;
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
line-height: 1.65;
}

img {
max-width: 100%;
height: auto;
}

a {
color: #ffffff;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}

a:hover,
a:focus {
color: #bdbdbd;
}

.site {
min-height: 100vh;
}


/* =========================================================
   Header
   ========================================================= */

.site-header {
padding: 34px 20px 28px;
border-bottom: 1px solid #252525;
}

.site-header-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
width: 100%;
max-width: 1032px;
margin: 0 auto;
}

.site-title {
color: #ffffff;
font-size: clamp(1.6rem, 3vw, 2.35rem);
font-weight: 700;
line-height: 1.1;
letter-spacing: -0.03em;
text-decoration: none;
}

.site-logo img{
    display:block;
    width:340px;
    max-width:100%;
    height:auto;
}

.primary-menu {
display: flex;
align-items: center;
gap: 28px;
margin: 0;
padding: 0;
list-style: none;
}

.primary-menu a {
color: #f2f2f2;
font-size: 0.95rem;
font-weight: 600;
text-decoration: none;
}

.primary-menu a:hover,
.primary-menu a:focus {
color: #a8a8a8;
}


/* =========================================================
   Main content
   ========================================================= */

.site-main {
width: 100%;
padding: 46px 20px 70px;
}

.content-container {
width: 100%;
max-width: 1032px;
margin: 0 auto;
}

.entry-header {
margin-bottom: 32px;
}

.entry-title {
margin: 0;
color: #ffffff;
font-size: clamp(2rem, 5vw, 3.6rem);
font-weight: 700;
line-height: 1.08;
letter-spacing: -0.04em;
}

.entry-meta {
margin-top: 12px;
color: #999999;
font-size: 0.9rem;
}

.entry-content {
overflow-wrap: break-word;
}

.entry-content > :first-child {
margin-top: 0;
}

.entry-content > :last-child {
margin-bottom: 0;
}

.entry-content p {
margin: 0 0 1.6em;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
margin-top: 1.8em;
margin-bottom: 0.7em;
color: #ffffff;
line-height: 1.2;
}

.entry-content h2 a,
.entry-content h3 a {
color: #ffffff !important;
}

.entry-content ul,
.entry-content ol {
padding-left: 1.5em;
}

.entry-content blockquote {
margin: 2em 0;
padding: 0.5em 0 0.5em 1.4em;
border-left: 3px solid #666666;
color: #cfcfcf;
}

.post-thumbnail {
margin: 0 0 36px;
}

.post-thumbnail img {
display: block;
}


/* =========================================================
   Front page
   ========================================================= */

.home .site-main {
padding-top: 34px;
}

.home .entry-content > p:first-child {
max-width: 900px;
margin-right: auto;
margin-left: auto;
padding-bottom: 30px;
text-align: center;
}


/* =========================================================
   Post footer and navigation
   ========================================================= */

.entry-footer {
margin-top: 48px;
padding-top: 22px;
border-top: 1px solid #292929;
color: #a9a9a9;
font-size: 0.9rem;
}

.post-categories,
.post-tags {
margin-top: 8px;
}

.post-navigation {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 30px;
margin-top: 54px;
padding-top: 28px;
border-top: 1px solid #292929;
}

.nav-next {
text-align: right;
}


/* =========================================================
   Comments
   ========================================================= */

.comments-area {
margin-top: 64px;
padding-top: 34px;
border-top: 1px solid #292929;
}

.comments-title {
margin: 0 0 32px;
color: #ffffff;
font-size: 1.7rem;
}

.comment-list {
margin: 0;
padding: 0;
list-style: none;
}

.comment-list .comment {
margin-bottom: 30px;
padding: 24px;
background: #111111;
border: 1px solid #262626;
}

.comment-list .children {
margin-top: 24px;
padding-left: 28px;
list-style: none;
}

.comment-author {
display: flex;
align-items: center;
gap: 12px;
}

.comment-author .avatar {
border-radius: 50%;
}

.comment-metadata {
margin: 7px 0 16px;
color: #8c8c8c;
font-size: 0.82rem;
}

.comment-content p:last-child {
margin-bottom: 0;
}

.comment-respond {
margin-top: 48px;
}

.comment-form label {
display: block;
margin-bottom: 6px;
font-weight: 600;
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comm
.comment-form 


ba
border: 1px sol
border-radius: 0;
color: #ffff
font: inherit;
}

.comment-



.commen
padding:
background: #ff


font: 
font-weight: 700;

}


/* =========================================================
   Footer
   ========================================================= */

.site-footer {
padding: 34px 20px;
bor
color: #858585;
font-size: 0.85r
}

.site-footer-inner {
width: 100%;

margin: 0 auto;
}

.
margin: 0;
}


/* =============
   Accessib
   ==========

.screen-reader-tex
position: absol


padding: 0;

overflow: hidde
clip: rect(0, 0, 0, 0);
white-space: n
border: 0;
}


/*
   Mobile
   =====

@media (max-width: 700px

.site-header {
padd



.site-header-
flex-directio
align-items: flex-s
gap: 18px
}

.prima
flex-wrap:
gap: 12px 20px;




padding-right: 
padding-left: 
}

.post-navigatio
grid-template-co
}

.nav-next {
text


.comment-list .childr
padding-left: 14px;

}


/* =========================================================
   Geeksplosive identity
   ========================================================= */

.site-header {
padding: 38px 20px 20px;
background:
linear-gradient(
to bottom,
rgba(255, 255, 255, 0.025),
rgba(255, 255, 255, 0)
);
border-bottom: 1px solid #242424;
}

.site-header-inner {
display: block;
max-width: 1032px;
margin: 0 auto;
}

.site-branding {
text-align: center;
}

.site-logo {
display: inline-block;
text-decoration: none;
}

.site-logo img {
display: block;
width: min(390px, 82vw);
height: auto;
margin: 0 auto;
}

.site-tagline {
margin: 12px 0 0;
color: #a9a9a9;
font-size: 0.76rem;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
text-transform: uppercase;
}

.primary-navigation {
margin-top: 26px;
padding-top: 17px;
border-top: 1px solid #242424;
}

.primary-menu {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 8px 28px;
margin: 0;
padding: 0;
list-style: none;
}

.primary-menu > li {
position: relative;
}

.primary-menu a {
display: block;
padding: 5px 0;
color: #d9d9d9;
font-size: 0.76rem;
font-weight: 700;
letter-spacing: 0.12em;
text-decoration: none;
text-transform: uppercase;
}

.primary-menu a:hover,
.primary-menu a:focus,
.primary-menu .current-menu-item > a,
.primary-menu .current-menu-ancestor > a {
color: #ffffff;
}

.primary-menu .sub-menu {
position: absolute;
z-index: 20;
top: 100%;
left: 50%;
display: none;
width: 210px;
margin: 0;
padding: 10px 0;
background: #111111;
border: 1px solid #303030;
list-style: none;
transform: translateX(-50%);
}

.primary-menu li:hover > .sub-menu,
.primary-menu li:focus-within > .sub-menu {
display: block;
}

.primary-menu .sub-menu a {
padding: 8px 15px;
font-size: 0.72rem;
letter-spacing: 0.08em;
text-align: left;
}

@media (max-width: 700px) {

.site-header {
padding-top: 28px;
}

.site-tagline {
font-size: 0.66rem;
letter-spacing: 0.12em;
}

.primary-menu {
gap: 7px 18px;
}

.primary-menu .sub-menu {
position: static;
display: none;
width: 100%;
border: 0;
transform: none;
}

.primary-menu li:hover > .sub-menu,
.primary-menu li:focus-within > .sub-menu {
display: block;
}
}


/* =========================================================
   Visual Portfolio archive
   ========================================================= */

.home .entry-content {
width: 100%;
}

.home .entry-content > p:first-child {
max-width: 820px;
margin: 0 auto 42px;
padding: 0;
color: #b9b9b9;
font-size: 1rem;
line-height: 1.8;
text-align: center;
}

/*
 * Visual Portfolio uses vp-portfolio classes.
 * These rules refine the gallery without changing plugin files.
 */

.vp-portfolio {
margin-top: 0;
}

.vp-portfolio__items {
overflow: visible;
}

.vp-portfolio__item {
overflow: hidden;
background: #111111;
border: 1px solid #292929;
box-shadow: 0 14px 34px rgba(0, 0, 0, 0.32);
transition:
transform 180ms ease,
border-color 180ms ease,
box-shadow 180ms ease;
}

.vp-portfolio__item:hover {
z-index: 2;
border-color: #555555;
box-shadow: 0 18px 42px rgba(0, 0, 0, 0.48);
transform: translateY(-4px);
}

.vp-portfolio__item-img,
.vp-portfolio__item-img img {
display: block;
width: 100%;
}

.vp-portfolio__item-img img {
transition:
transform 320ms ease,
filter 320ms ease;
}

.vp-portfolio__item:hover .vp-portfolio__item-img img {
filter: brightness(1.05) contrast(1.03);
transform: scale(1.025);
}

.vp-portfolio__item-meta {
padding: 15px 16px 17px;
background: #111111;
}

.vp-portfolio__item-meta-title {
margin: 0;
font-size: 0.92rem;
font-weight: 700;
line-height: 1.35;
letter-spacing: 0.01em;
}

.vp-portfolio__item-meta-title a {
color: #f4f4f4;
text-decoration: none;
}

.vp-portfolio__item-meta-title a:hover,
.vp-portfolio__item-meta-title a:focus {
color: #ffffff;
}

.vp-portfolio__item-meta-excerpt,
.vp-portfolio__item-meta-date,
.vp-portfolio__item-meta-categories {
color: #929292;
font-size: 0.78rem;
}

/* Visual Portfolio pagination / Load More */

.vp-pagination {
margin-top: 44px;
text-align: center;
}

.vp-pagination__load-more {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 44px;
padding: 11px 24px;
background: transparent;
border: 1px solid #555555;
color: #eeeeee;
font-family: Arial, Helvetica, sans-serif;
font-size: 0.74rem;
font-weight: 700;
letter-spacing: 0.14em;
text-decoration: none;
text-transform: uppercase;
transition:
background-color 160ms ease,
border-color 160ms ease,
color 160ms ease;
}

.vp-pagination__load-more:hover,
.vp-pagination__load-more:focus {
background: #ffffff;
border-color: #ffffff;
color: #000000;
}

/* Remove stray spacing inherited from old page-level CSS */

.home .entry-content .vp-portfolio p {
padding-bottom: 0;
}


/* =========================================================
   Responsive gallery adjustments
   ========================================================= */

@media (max-width: 700px) {

.home .entry-content > p:first-child {
margin-bottom: 30px;
font-size: 0.95rem;
text-align: left;
}

.vp-portfolio__item-meta {
padding: 13px 14px 15px;
}

.vp-portfolio__item:hover {
transform: none;
}
}
