/* ══════════════════════════════════════════
   GPA Theme CSS — Below the Fold
   ══════════════════════════════════════════ */

/* ── Labels ── */
.gpa-label{font-family:var(--gpa-font-utility);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;margin-bottom:14px;display:inline-block}
.gpa-label--primary{color:var(--gpa-primary)}
.gpa-section-title{font-family:var(--gpa-font-display);font-size:26px;font-weight:400;margin-bottom:6px}
.gpa-section-sub{font-family:var(--gpa-font-body);font-size:13px;color:#888;margin-bottom:36px}

/* ── Risk Warnings ── */
.gpa-risks{background:#FDF8F5;padding:48px 24px;border-top:3px solid var(--gpa-warning)}
.gpa-risks__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gpa-risk-card{padding:14px 16px;background:#fff;border:1px solid #F0E0D6;display:flex;gap:12px;align-items:flex-start}
.gpa-risk-card__icon{color:var(--gpa-warning);font-weight:800;font-size:16px;line-height:1;flex-shrink:0}
.gpa-risk-card__text{font-family:var(--gpa-font-utility);font-size:13px;font-weight:600;line-height:1.4}
.gpa-risk-card__impact{font-family:var(--gpa-font-utility);font-size:11px;color:var(--gpa-warning);font-weight:600;margin-top:3px}

/* ── Tiers ── */
.gpa-tiers{background:var(--gpa-dark);padding:48px 24px}
.gpa-tiers__label{font-family:var(--gpa-font-utility);font-size:11px;letter-spacing:3px;color:var(--gpa-gold);text-transform:uppercase;margin-bottom:20px;font-weight:600}
.gpa-tiers__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.gpa-tier-card{padding:22px;background:#1A1D26;position:relative}
.gpa-tier-card--hot .gpa-tier-card__tag{position:absolute;top:8px;right:10px;font-family:var(--gpa-font-utility);font-size:9px;color:var(--gpa-warning);font-weight:700;letter-spacing:1px;text-transform:uppercase}
.gpa-tier-card__amount{font-family:var(--gpa-font-utility);font-size:28px;font-weight:800;color:var(--gpa-gold);margin-bottom:8px}
.gpa-tier-card__zones{font-family:var(--gpa-font-utility);font-size:12px;color:#C8C6C0;line-height:1.5;margin-bottom:8px}
.gpa-tier-card__note{font-family:var(--gpa-font-utility);font-size:10px;color:#555}

/* ── Quote ── */
.gpa-quote{background:#13151B;padding:44px 24px}
.gpa-quote__text{font-family:var(--gpa-font-display);font-size:20px;line-height:1.55;color:#E8E6E1;font-weight:300}
.gpa-quote__text em{font-style:italic}
.gpa-quote__highlight{color:var(--gpa-primary);font-weight:700;font-style:normal}

/* ── Scope ── */
.gpa-scope{padding:56px 24px}
.gpa-scope__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gpa-pillar{padding:20px;background:var(--gpa-light-bg);border-left:3px solid var(--gpa-primary)}
.gpa-pillar__header{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.gpa-pillar__icon{font-size:18px}
.gpa-pillar__title{font-family:var(--gpa-font-utility);font-size:15px;font-weight:700;margin:0}
.gpa-pillar__item{font-family:var(--gpa-font-utility);font-size:12px;color:#666;padding:3px 0;display:flex;align-items:center;gap:6px}
.gpa-pillar__dot{width:4px;height:4px;background:var(--gpa-primary);border-radius:50%;flex-shrink:0}

/* ── Process ── */
.gpa-process{background:var(--gpa-warm-bg);padding:48px 24px}
.gpa-process__steps{display:flex;position:relative;gap:0}
.gpa-process__line{position:absolute;top:20px;left:16.6%;right:16.6%;height:2px;background:#DDD;z-index:0}
.gpa-step{flex:1;text-align:center;position:relative;z-index:1}
.gpa-step__circle{width:40px;height:40px;border-radius:50%;background:var(--gpa-primary);margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-family:var(--gpa-font-utility);font-size:12px;font-weight:800;color:#fff}
.gpa-step__circle--gold{background:var(--gpa-gold)}
.gpa-step__day{font-family:var(--gpa-font-utility);font-size:11px;color:var(--gpa-primary);letter-spacing:2px;font-weight:700;margin-bottom:4px}
.gpa-step__title{font-family:var(--gpa-font-utility);font-size:15px;font-weight:700;margin-bottom:6px}
.gpa-step__desc{font-family:var(--gpa-font-utility);font-size:12px;color:#666;line-height:1.6;margin:0 12px}

/* ── Reviews ── */
.gpa-reviews{padding:56px 24px;background:var(--gpa-warm-bg)}
.gpa-reviews__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gpa-review-card{padding:20px;background:#fff;border:1px solid #E8E4DC}
.gpa-review-card__stars{color:var(--gpa-gold);font-size:14px;margin-bottom:8px;letter-spacing:2px}
.gpa-review-card__text{font-family:var(--gpa-font-body);font-size:13px;line-height:1.65;color:#444;margin-bottom:12px}
.gpa-review-card__footer{display:flex;justify-content:space-between;align-items:center;font-family:var(--gpa-font-utility);font-size:11px}
.gpa-review-card__name{font-weight:700;color:#1A1A1A}
.gpa-review-card__tier{color:#888}

/* ── Credentials ── */
.gpa-credentials{padding:48px 24px;border-top:1px solid #E8E4DC}
.gpa-credentials__grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.gpa-credentials__name{font-family:var(--gpa-font-display);font-size:22px;font-weight:400;margin-bottom:10px}
.gpa-credentials__bio{font-family:var(--gpa-font-body);font-size:13px;line-height:1.75;color:#555}
.gpa-credentials__coverage{font-family:var(--gpa-font-body);font-size:13px;line-height:2;color:#333}

/* ── FAQ ── */
.gpa-faq{padding:56px 24px}
.gpa-faq__list{max-width:700px}
.gpa-faq-item{border-bottom:1px solid #E8E4DC}
.gpa-faq-item__q{width:100%;padding:16px 0;display:flex;justify-content:space-between;align-items:center;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--gpa-font-utility);font-size:14px;font-weight:600;color:#1A1A1A;gap:16px}
.gpa-faq-item__toggle{font-size:18px;color:var(--gpa-primary);flex-shrink:0;transition:transform .2s}
.gpa-faq-item__q[aria-expanded="true"] .gpa-faq-item__toggle{transform:rotate(45deg)}
.gpa-faq-item__a{padding:0 0 16px}
.gpa-faq-item__a p{font-family:var(--gpa-font-body);font-size:13px;line-height:1.7;color:#555;margin:0}

/* ── Form Section ── */
.gpa-form-section{background:var(--gpa-dark);padding:56px 24px 64px}
.gpa-form-section__header{text-align:center;margin-bottom:32px}
.gpa-form-section__title{font-family:var(--gpa-font-display);font-size:28px;font-weight:400;color:#FAFAF7;margin-bottom:8px}
.gpa-form-section__sub{font-family:var(--gpa-font-utility);font-size:13px;color:#6B7080}
.gpa-input{width:100%;padding:12px 14px;background:#1A1D26;border:1px solid #2A2D36;color:#E8E6E1;font-family:var(--gpa-font-utility);font-size:13px;outline:none;transition:border-color .2s;margin-bottom:12px}
.gpa-input:focus{border-color:var(--gpa-primary)}
.gpa-input--sm{margin-bottom:0}
.gpa-textarea{resize:vertical}
.gpa-form-row--2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gpa-form-label{font-family:var(--gpa-font-utility);font-size:11px;color:#6B7080;letter-spacing:1px;text-transform:uppercase;margin:8px 0 8px}
.gpa-form-expand{animation:gpaFadeIn .3s ease}
@keyframes gpaFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Tier & Timeline Buttons */
.gpa-tier-select,.gpa-timeline-select{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.gpa-tier-btn,.gpa-timeline-btn{padding:10px 12px;text-align:left;background:#1A1D26;border:1px solid #2A2D36;color:#8A9BB5;font-family:var(--gpa-font-utility);font-size:12px;cursor:pointer;transition:all .15s}
.gpa-tier-btn.active,.gpa-timeline-btn.active{background:#1E3A2F;border-color:var(--gpa-primary);color:var(--gpa-primary)}

/* Form States */
.gpa-form-success{text-align:center;padding:40px 20px}
.gpa-form-success__icon{font-size:48px;color:var(--gpa-primary);margin-bottom:12px}
.gpa-form-success__title{font-family:var(--gpa-font-utility);font-size:18px;font-weight:700;color:var(--gpa-primary);margin-bottom:8px}
.gpa-form-success__text{font-family:var(--gpa-font-utility);font-size:14px;color:#8A9BB5}
.gpa-form-error{font-family:var(--gpa-font-utility);font-size:13px;color:var(--gpa-warning);margin-top:8px;text-align:center}

/* Sample Report CTA */
.gpa-sample-cta{margin-top:24px;text-align:center;padding-top:16px;border-top:1px solid #2A2D36}
.gpa-sample-cta__text{font-family:var(--gpa-font-utility);font-size:12px;color:#6B7080;margin-bottom:10px}
.gpa-sample-cta__gate{display:flex;gap:8px;justify-content:center;max-width:400px;margin:0 auto}

/* ── Footer ── */
.gpa-footer{background:var(--gpa-warm-bg);padding:28px 24px 16px;border-top:1px solid #E8E4DC}
.gpa-footer__seo{font-family:var(--gpa-font-utility);font-size:11px;line-height:1.7;color:#AAA;margin-bottom:12px}
.gpa-footer__bottom{display:flex;justify-content:space-between;font-family:var(--gpa-font-utility);font-size:10px;color:#CCC}

/* ── Sticky CTA ── */
.gpa-sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--gpa-dark);padding:12px 20px;display:none;justify-content:space-between;align-items:center;box-shadow:0 -4px 20px rgba(0,0,0,.3);transform:translateY(100%);transition:transform .3s}
.gpa-sticky-cta.visible{display:flex;transform:translateY(0)}
.gpa-sticky-cta__text{font-family:var(--gpa-font-utility);font-size:13px;color:#fff}
.gpa-sticky-cta__text strong{display:block}
.gpa-sticky-cta__text span{font-size:11px;color:#888}

/* ── Blog ── */
.gpa-blog{padding:48px 0 64px}
.gpa-blog__title{font-family:var(--gpa-font-display);font-size:32px;font-weight:400;margin-bottom:8px}
.gpa-blog__intro{font-family:var(--gpa-font-body);font-size:14px;color:#888;margin-bottom:24px}
.gpa-blog__cats{display:flex;gap:8px;margin-bottom:32px;flex-wrap:wrap}
.gpa-cat-pill{font-family:var(--gpa-font-utility);font-size:12px;padding:6px 16px;border:1px solid #DDD;color:#888;transition:all .15s}
.gpa-cat-pill--active,.gpa-cat-pill:hover{background:#1A1A1A;color:#fff;border-color:#1A1A1A}
.gpa-blog__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gpa-post-card{border:1px solid #E8E4DC;overflow:hidden;background:#fff}
.gpa-post-card__thumb{display:block;overflow:hidden}
.gpa-post-card__thumb img{width:100%;height:200px;object-fit:cover;transition:transform .3s}
.gpa-post-card__thumb:hover img{transform:scale(1.03)}
.gpa-post-card__body{padding:16px 20px}
.gpa-post-card__meta{font-family:var(--gpa-font-utility);font-size:11px;color:#888;display:flex;gap:12px;margin-bottom:8px}
.gpa-post-card__cat{color:var(--gpa-primary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.gpa-post-card__title{font-family:var(--gpa-font-display);font-size:18px;font-weight:400;margin-bottom:6px;line-height:1.3}
.gpa-post-card__title a:hover{color:var(--gpa-primary)}
.gpa-post-card__excerpt{font-family:var(--gpa-font-body);font-size:13px;color:#666;line-height:1.6}
.gpa-blog__empty{font-family:var(--gpa-font-body);color:#888;padding:40px 0}
.gpa-blog__category-header{margin-bottom:32px}
.gpa-blog__category-desc{font-family:var(--gpa-font-body);font-size:14px;color:#888;margin-top:4px}

/* ── Single Post ── */
.gpa-single{padding:48px 0 64px}
.gpa-single__header{margin-bottom:32px}
.gpa-single__meta{font-family:var(--gpa-font-utility);font-size:12px;color:#888;display:flex;gap:12px;margin-bottom:12px;align-items:center}
.gpa-single__title{font-family:var(--gpa-font-display);font-size:34px;font-weight:400;line-height:1.15}
.gpa-single__excerpt{font-family:var(--gpa-font-body);font-size:16px;color:#555;margin-top:12px;line-height:1.7}
.gpa-single__hero-img{margin-bottom:32px}
.gpa-single__hero-img img{width:100%;height:auto}
.gpa-single__content{font-family:var(--gpa-font-body);font-size:15px;line-height:1.8;color:#333}
.gpa-single__content h2{font-family:var(--gpa-font-display);font-size:24px;font-weight:400;margin:32px 0 12px}
.gpa-single__content h3{font-family:var(--gpa-font-utility);font-size:18px;font-weight:700;margin:24px 0 8px}
.gpa-single__content p{margin-bottom:16px}
.gpa-single__content ul,.gpa-single__content ol{margin:0 0 16px 24px}
.gpa-single__content li{margin-bottom:6px}
.gpa-single__content blockquote{border-left:3px solid var(--gpa-primary);padding:12px 20px;margin:24px 0;background:var(--gpa-light-bg);font-style:italic;color:#555}
.gpa-single__content img{margin:24px 0}
.gpa-single__footer{margin-top:48px;padding-top:32px;border-top:1px solid #E8E4DC}
.gpa-single__author{margin-bottom:32px}
.gpa-single__author-name{font-family:var(--gpa-font-display);font-size:18px}
.gpa-single__cta{padding:24px;background:var(--gpa-light-bg);margin-bottom:32px}
.gpa-single__cta h3{font-family:var(--gpa-font-utility);font-size:16px;font-weight:700;margin-bottom:6px}
.gpa-single__cta p{font-family:var(--gpa-font-body);font-size:13px;color:#666;margin-bottom:16px}
.gpa-related__title{font-family:var(--gpa-font-utility);font-size:14px;font-weight:700;margin-bottom:12px}
.gpa-related__grid{display:flex;flex-direction:column;gap:8px}
.gpa-related__item{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid #EEE;font-family:var(--gpa-font-body);font-size:13px}
.gpa-related__item:hover{color:var(--gpa-primary)}
.gpa-related__date{color:#888;flex-shrink:0;width:48px}

/* ── Page ── */
.gpa-page{padding:48px 0 64px}
.gpa-page__title{font-family:var(--gpa-font-display);font-size:32px;font-weight:400;margin-bottom:24px}
.gpa-page__content{font-family:var(--gpa-font-body);font-size:15px;line-height:1.8;color:#333}
.gpa-page__content p{margin-bottom:16px}
.gpa-page__content h2{font-family:var(--gpa-font-display);margin:32px 0 12px}

/* ── Pagination ── */
.gpa-pagination{margin-top:32px;text-align:center}
.gpa-pagination .nav-links{display:flex;justify-content:center;gap:8px}
.gpa-pagination a,.gpa-pagination span{font-family:var(--gpa-font-utility);font-size:13px;padding:6px 12px;border:1px solid #DDD}
.gpa-pagination .current{background:#1A1A1A;color:#fff;border-color:#1A1A1A}

/* ── Mobile ── */
@media(max-width:768px){
    .gpa-risks__grid{grid-template-columns:1fr}
    .gpa-tiers__grid{grid-template-columns:1fr}
    .gpa-scope__grid{grid-template-columns:1fr}
    .gpa-process__steps{flex-direction:column;gap:24px}
    .gpa-process__line{display:none}
    .gpa-credentials__grid{grid-template-columns:1fr;gap:24px}
    .gpa-reviews__grid{grid-template-columns:1fr}
    .gpa-form-row--2col{grid-template-columns:1fr}
    .gpa-tier-select,.gpa-timeline-select{grid-template-columns:1fr}
    .gpa-blog__grid{grid-template-columns:1fr}
    .gpa-single__title{font-size:26px}
    .gpa-footer__bottom{flex-direction:column;gap:4px}
    .gpa-sample-cta__gate{flex-direction:column}
    body.has-sticky-cta{padding-bottom:56px}
}
