/*
  ============================================================
  STYLESHEET: about_style.css
  Stick With Sam — About Page
  /public/about/about_style.css
  ============================================================
  Loaded after global_style.css via $pageCSS in header.php.

  global_style.css already handles:
    - CSS variables, reset, background, nav, buttons, footer
    - .section-eyebrow, .section-title, .section-sub
    - .reveal

  This file ONLY contains styles unique to the about page.

  CONTENTS:
  1.  Page hero            — headline at the top
  2.  Artist section       — two column text left, image right
  3.  Who I support        — highlighted support block
  4.  Sinister Sam section — image left, text right in glass panel
  5.  Fun facts strip      — small stat cards
  6.  CTA banner           — commission call to action
  7.  Responsive           — stacking on smaller screens
  ============================================================
*/


/* ============================================================
   1. PAGE HERO
   ============================================================ */
.about-hero {
    position: relative;
    z-index: 1;
    text-align: center;
    padding: 10rem 1.5rem 3rem;
}

.about-hero h1 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(2.2rem, 5vw, 3.8rem);
    line-height: 1.1;
    color: var(--text);
    margin-bottom: 0.75rem;
}

.about-hero h1 em {
    font-style: italic;
    color: var(--purple-light);
}

.about-hero p {
    font-size: 0.95rem;
    color: var(--text-soft);
    max-width: 460px;
    margin: 0 auto;
    line-height: 1.75;
    font-weight: 300;
}


/* ============================================================
   2. ARTIST SECTION
   Two column: text left, Sam illustration right.
   ============================================================ */
.about-section {
    position: relative;
    z-index: 1;
    max-width: 1100px;
    margin: 0 auto;
    padding: 3rem 1.5rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.about-text .section-eyebrow { margin-bottom: 0.75rem; }
.about-text .section-title   { margin-bottom: 1rem; }

.about-text p {
    font-size: 0.88rem;
    color: var(--text-soft);
    line-height: 1.85;
    margin-bottom: 1rem;
    font-weight: 300;
}

.about-text p strong {
    font-weight: 700 !important;
    color: var(--purple-light) !important;
}

.about-text p:last-of-type { margin-bottom: 0; }

.about-art {
    display: flex;
    flex-direction: column;  /* stack image and block vertically */
    align-items: center;
    justify-content: center;
    position: relative;
    gap: 1.5rem;             /* space between image and block */
}

.about-art img {
    width: 100%;
    max-width: 400px;
    filter: drop-shadow(0 20px 60px rgba(155, 63, 212, 0.45));
    animation: float 7s ease-in-out infinite;
}

.about-art-glow {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 60px;
    background: radial-gradient(ellipse, rgba(155, 63, 212, 0.5) 0%, transparent 70%);
    filter: blur(16px);
    pointer-events: none;
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-12px); }
}


/* ============================================================
   3. WHO I SUPPORT
   Gold left-bordered block inside the artist text section.
   ============================================================ */
.support-block {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-left: 3px solid var(--gold);
    border-radius: 0 14px 14px 0;
    padding: 1.1rem 1.25rem;
    margin: 0;               /* remove the old top/bottom margin */
    width: 100%;             /* fill the column width */
}

.support-block-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.support-block p {
    font-size: 0.83rem !important;
    color: var(--text-soft) !important;
    line-height: 1.7 !important;
    margin-bottom: 0 !important;
}


/* ============================================================
   4. SINISTER SAM SECTION
   Glass panel with image left, text right.
   ============================================================ */
.sam-section-wrap {
    position: relative;
    z-index: 1;
    padding: 0 1.5rem 3rem;
}

.sam-section {
    max-width: 1100px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(22px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 28px;
    padding: 3.5rem 3.5rem 3.5rem 0; !important;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.3);
    display: grid;
    grid-template-columns: 1.3fr 1fr; !important;
    gap: 1.5rem; !important;
    align-items: center;
}

.sam-art {
    align-self: stretch; /* fill full column height */
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.sam-art img {
    width: 100% !important;
    max-width: 100% !important;
    height: 100%;
    object-fit: contain;
    border-radius: 0 24px 24px 0; /* only round the right corners */
    filter: drop-shadow(0 16px 48px rgba(155, 63, 212, 0.6));
    animation: float 6s ease-in-out infinite;
}

.sam-art-glow {
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    height: 50px;
    background: radial-gradient(ellipse, rgba(155, 63, 212, 0.65) 0%, transparent 70%);
    filter: blur(14px);
    pointer-events: none;
}

.sam-text .section-title { margin-bottom: 1rem; }

.sam-text p {
    font-size: 0.88rem;
    color: var(--text-soft);
    line-height: 1.85;
    margin-bottom: 1rem;
    font-weight: 300;
}

.sam-text p strong {
    font-weight: 700 !important;
    color: var(--purple-light) !important;
}

/* Personality trait chips */
.trait-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1.25rem;
}

.trait-chip {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 5px 13px;
    border-radius: 99px;
    border: 1.5px solid rgba(155, 63, 212, 0.35);
    background: rgba(155, 63, 212, 0.12);
    color: var(--purple-light);
}


/* ============================================================
   5. FUN FACTS STRIP
   ============================================================ */
.facts-wrap {
    position: relative;
    z-index: 1;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1.5rem 3rem;
}

.facts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.fact-card {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 18px;
    padding: 1.25rem;
    text-align: center;
    transition: transform 0.25s, border-color 0.25s;
}

.fact-card:hover {
    transform: translateY(-4px);
    border-color: rgba(155, 63, 212, 0.4);
}

.fact-emoji {
    font-size: 1.8rem;
    display: block;
    margin-bottom: 0.6rem;
}

.fact-val {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    color: var(--gold);
    display: block;
    margin-bottom: 0.3rem;
}

.fact-label {
    font-size: 0.72rem;
    color: var(--muted);
    line-height: 1.4;
}


/* ============================================================
   6. CTA BANNER
   ============================================================ */
.about-cta-wrap {
    position: relative;
    z-index: 1;
    max-width: 1100px;
    margin: 0 auto 5rem;
    padding: 0 1.5rem;
}

.about-cta {
    background: linear-gradient(135deg, rgba(90, 26, 138, 0.55), rgba(212, 95, 186, 0.3));
    backdrop-filter: blur(22px);
    border: 1px solid rgba(155, 63, 212, 0.4);
    border-radius: 28px;
    padding: 3.5rem 3rem;
    text-align: center;
    box-shadow: 0 12px 50px rgba(0, 0, 0, 0.3);
}

.about-cta h2 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.6rem, 3.5vw, 2.4rem);
    color: var(--text);
    margin-bottom: 0.75rem;
    line-height: 1.2;
}

.about-cta h2 em {
    font-style: italic;
    color: var(--purple-light);
}

.about-cta p {
    font-size: 0.88rem;
    color: var(--text-soft);
    max-width: 400px;
    margin: 0 auto 2rem;
    line-height: 1.7;
}

.about-cta-btns {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}


/* ============================================================
   7. RESPONSIVE
   ============================================================ */
@media (max-width: 860px) {
    .about-section,
    .sam-section {
        grid-template-columns: 1fr;
        gap: 2.5rem;
        text-align: center;
    }

    .about-art,
    .sam-art { order: -1; }

    .about-art img,
    .sam-art img { max-width: 280px; }

    .section-eyebrow { justify-content: center; }
    .trait-chips      { justify-content: center; }
    .facts-grid       { grid-template-columns: repeat(2, 1fr); }
    .support-block    { text-align: left; }
}

@media (max-width: 480px) {
    .about-hero { padding-top: 6rem; }
    .sam-section { padding: 2rem 1.25rem; }
}