/**
 * GPP Single Post Styles
 * gpp-post.css
 * Upload to: /wp-content/themes/astra-child/assets/gpp-post.css
 */

/* FULL WIDTH */
.single .entry-content,
.single .site-content,
.single .content-area,
.single #content,
.single .ast-container,
.single .container,
.single article,
.single .post-inner {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.single .site-content,
.single #content { padding-top: 0 !important; margin-top: 0 !important; }

.single .entry-title,
.single .ast-breadcrumbs-wrapper,
.single .page-header { display: none !important; }

.single .gpp-page-wrap {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}

/* PAGE HEADER */
.gpp-post .gpp-page-header {
    background: #0D1B2A; padding: 2.5rem 2rem 2rem;
    position: relative; overflow: hidden;
}
.gpp-post .gpp-page-header::before {
    content: ''; position: absolute; right: -40px; top: -40px;
    width: 400px; height: 400px;
    border: 60px solid rgba(244,128,26,0.06); border-radius: 50%;
}
.gpp-post .gpp-page-header-inner { max-width: 1200px; margin: 0 auto; position: relative; z-index: 1; }
.gpp-post .gpp-page-eyebrow { font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #F4801A; margin-bottom: .4rem; font-family: 'Barlow', sans-serif; }
.gpp-post .gpp-page-title { font-family: 'Barlow Condensed', sans-serif !important; font-size: 2.8rem !important; font-weight: 800 !important; text-transform: uppercase; color: #fff !important; line-height: 1.05 !important; margin: 0 0 .5rem !important; padding: 0 !important; border: none !important; }
.gpp-post-meta { font-size: .78rem; color: rgba(255,255,255,.45); font-family: 'Barlow', sans-serif; margin-bottom: 1rem; }
.gpp-post-meta-sep { margin: 0 .4rem; }
.gpp-post .gpp-breadcrumb { display: flex; align-items: center; gap: 8px; font-size: .75rem; color: rgba(255,255,255,.35); font-family: 'Barlow', sans-serif; }
.gpp-post .gpp-breadcrumb a { color: rgba(255,255,255,.35); text-decoration: none !important; }
.gpp-post .gpp-breadcrumb a:hover { color: #F4801A; }
.gpp-bc-sep { color: rgba(255,255,255,.18); }

/* LAYOUT */
.gpp-post-outer { background: #F4F6F9; padding: 2.5rem 2rem 4rem; }
.gpp-post-inner { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 300px; gap: 2.5rem; align-items: start; }

/* MAIN CONTENT */
.gpp-post-hero-img { border-radius: 8px; overflow: hidden; margin-bottom: 1.75rem; }
.gpp-post-hero-img img { width: 100%; height: auto; display: block; }

.gpp-post-body { background: #fff; border-radius: 8px; padding: 2rem; border: 1px solid #E8EDF2; }

.gpp-post-body h2 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 1.6rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: #0D1B2A !important;
    margin: 1.5rem 0 .75rem !important;
}

.gpp-post-body h3 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 1.2rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    color: #0D1B2A !important;
    margin: 1.25rem 0 .5rem !important;
}

.gpp-post-body p {
    font-family: 'Barlow', sans-serif !important;
    font-size: .95rem !important;
    color: #4A5568 !important;
    line-height: 1.75 !important;
    margin-bottom: 1rem !important;
}

.gpp-post-body a { color: #F4801A !important; text-decoration: none !important; }
.gpp-post-body a:hover { text-decoration: underline !important; }

.gpp-post-body ul, .gpp-post-body ol {
    font-family: 'Barlow', sans-serif;
    font-size: .95rem;
    color: #4A5568;
    line-height: 1.75;
    margin: 0 0 1rem 1.5rem;
}

.gpp-post-body li { margin-bottom: .35rem; }

.gpp-post-body strong { color: #0D1B2A; }

/* POST NAVIGATION */
.gpp-post-nav {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid #E8EDF2;
}

.gpp-post-nav-link {
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-decoration: none !important;
    max-width: 45%;
}

.gpp-post-nav-next { text-align: right; margin-left: auto; }

.gpp-post-nav-label {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #F4801A;
    font-family: 'Barlow', sans-serif;
}

.gpp-post-nav-title {
    font-size: .85rem;
    font-weight: 600;
    color: #0D1B2A;
    font-family: 'Barlow', sans-serif;
    line-height: 1.3;
    transition: color .15s;
}

.gpp-post-nav-link:hover .gpp-post-nav-title { color: #F4801A; }

/* SIDEBAR */
.gpp-post-sidebar { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 80px; }

.gpp-post-cta-card { background: #0D1B2A; border-radius: 8px; padding: 1.25rem; }
.gpp-post-cta-title { font-family: 'Barlow Condensed', sans-serif; font-size: 1rem; font-weight: 800; text-transform: uppercase; color: #fff; margin-bottom: .4rem; }
.gpp-post-cta-text { font-size: .78rem; color: rgba(255,255,255,.5); line-height: 1.6; margin-bottom: .85rem; font-family: 'Barlow', sans-serif; }

.gpp-sp-btn { display: block; background: #F4801A; color: #fff !important; text-align: center; padding: 9px 12px; border-radius: 4px; font-family: 'Barlow', sans-serif; font-weight: 700; font-size: .78rem; text-decoration: none !important; transition: background .2s; }
.gpp-sp-btn:hover { background: #C0600E; }
.gpp-sp-btn-outline { display: block; background: transparent; color: rgba(255,255,255,.7) !important; text-align: center; padding: 9px 12px; border-radius: 4px; border: 1px solid rgba(255,255,255,.2); font-family: 'Barlow', sans-serif; font-weight: 600; font-size: .78rem; text-decoration: none !important; transition: all .2s; }
.gpp-sp-btn-outline:hover { border-color: rgba(255,255,255,.5); color: #fff !important; }

.gpp-post-widgets { background: #fff; border: 1px solid #E8EDF2; border-radius: 8px; padding: 1rem; overflow: hidden; }
.gpp-post-widgets img { width: 100%; height: auto; border-radius: 4px; }

.gpp-sidebar-section { background: #fff; border: 1px solid #E8EDF2; border-radius: 8px; padding: 1.1rem; }
.gpp-sidebar-title { font-family: 'Barlow Condensed', sans-serif; font-size: .82rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: #0D1B2A; margin-bottom: .75rem; padding-bottom: .6rem; border-bottom: 1px solid #E8EDF2; }

.gpp-sidebar-recent-post { display: flex; flex-direction: column; gap: 2px; padding: .5rem 0; border-bottom: 1px solid #F4F6F9; text-decoration: none !important; }
.gpp-sidebar-recent-post:last-child { border-bottom: none; }
.gpp-sidebar-recent-title { font-size: .82rem; font-weight: 600; color: #0D1B2A; font-family: 'Barlow', sans-serif; line-height: 1.3; transition: color .15s; }
.gpp-sidebar-recent-post:hover .gpp-sidebar-recent-title { color: #F4801A; }
.gpp-sidebar-recent-date { font-size: .7rem; color: #4A5568; font-family: 'Barlow', sans-serif; }

/* RESPONSIVE */
@media (max-width: 900px) {
    .gpp-post-inner { grid-template-columns: 1fr; }
    .gpp-post-sidebar { position: static; }
}
@media (max-width: 640px) {
    .gpp-post-outer { padding: 1.5rem 1rem 2rem; }
    .gpp-post .gpp-page-header { padding: 2rem 1rem; }
    .gpp-post .gpp-page-title { font-size: 1.8rem !important; }
    .gpp-post-body { padding: 1.25rem; }
}
