/* =========================================================
   ABOUT THE AUTHOR — styles layered on top of style.css
   Uses the same theme variables (--royal, --gold, etc.)
   ========================================================= */

/* nav logo wrapper keeps the same margin-auto behaviour */
nav > a{margin-right:auto;display:block;line-height:0}
nav > a .nav-logo{margin-right:0}

/* ---------- ABOUT HERO ---------- */
.about-hero{position:relative;display:flex;flex-direction:column;align-items:center;
  text-align:center;padding:56px 20px 8px}
.about-hero .hero-kicker{font-family:var(--hand);font-size:1.5rem;color:var(--azure);
  letter-spacing:1px;margin-bottom:2px;transform:rotate(-2deg);
  opacity:0;animation:pop .6s .15s forwards}
.about-hero .hero-title{font-family:var(--display);font-weight:800;line-height:.92;
  font-size:clamp(2.6rem,9vw,5.4rem);color:var(--royal);
  text-shadow:0 3px 0 #fff,0 6px 0 rgba(31,63,184,.18),0 0 30px rgba(127,208,255,.5);
  margin-bottom:10px;opacity:0;animation:pop .7s .3s forwards}
.about-hero .hero-title .gold{background:linear-gradient(180deg,var(--gold),var(--gold-light));
  -webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.about-hero .hero-sub{max-width:640px;font-size:1.18rem;color:var(--ink-soft);
  line-height:1.5;font-weight:500;opacity:0;animation:pop .7s .45s forwards}
.about-hero .hero-sub b{color:var(--royal)}

/* ---------- AUTHOR INTRO CARD ---------- */
.author-wrap{max-width:1080px;margin:34px auto 10px;padding:0 22px}
.author-card{display:grid;grid-template-columns:320px 1fr;gap:42px;align-items:center;
  background:rgba(255,255,255,.82);backdrop-filter:blur(10px);
  border:3px solid rgba(63,197,201,.35);border-radius:34px;
  padding:34px;box-shadow:0 22px 50px rgba(31,63,184,.16)}
.author-photo{position:relative}
.author-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:26px;
  border:5px solid #fff;box-shadow:0 14px 30px rgba(31,63,184,.28)}
.photo-badge{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);
  white-space:nowrap;font-family:var(--display);font-weight:700;font-size:1rem;
  color:var(--ink);padding:9px 20px;border-radius:30px;
  background:linear-gradient(135deg,var(--gold),var(--gold-light));
  box-shadow:0 5px 0 #b37c00,0 10px 20px rgba(255,182,23,.4);border:3px solid #fff}
.author-intro .sec-title{margin-bottom:14px}
.author-intro p{font-size:1.1rem;line-height:1.6;color:var(--ink-soft);margin-bottom:14px}
.author-intro p b{color:var(--royal)}
.author-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.author-tags span{font-family:var(--display);font-weight:600;font-size:.92rem;
  color:var(--royal);background:rgba(127,208,255,.28);
  border:2px solid rgba(51,167,240,.4);padding:8px 16px;border-radius:30px}

/* shared section title */
.sec-title{font-family:var(--display);font-weight:800;
  font-size:clamp(1.7rem,4vw,2.4rem);color:var(--royal);line-height:1.05}
.sec-title .gold{background:linear-gradient(180deg,var(--gold),var(--gold-light));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.sec-title.center{text-align:center;margin-bottom:26px}

/* ---------- STORY BANDS ---------- */
.story{max-width:920px;margin:40px auto;padding:0 22px;display:flex;flex-direction:column;gap:22px}
.story-band{display:flex;gap:22px;align-items:flex-start;
  background:rgba(255,255,255,.78);border-radius:26px;padding:26px 28px;
  border:2px solid rgba(255,182,23,.4);box-shadow:0 12px 30px rgba(31,63,184,.12)}
.story-band.alt{background:rgba(233,248,244,.85);border-color:rgba(63,197,201,.45)}
.band-emoji{font-size:2.4rem;line-height:1;flex-shrink:0;
  filter:drop-shadow(0 4px 8px rgba(31,63,184,.2))}
.band-text h3{font-family:var(--display);font-weight:700;font-size:1.35rem;
  color:var(--royal);margin-bottom:6px}
.band-text p{font-size:1.08rem;line-height:1.6;color:var(--ink-soft)}
.band-text p b{color:var(--royal)}

/* ---------- ILLUSTRATED SPREAD ---------- */
.spread-band{max-width:1000px;margin:54px auto;padding:0 22px}
.spread-frame{background:#fff;border-radius:28px;overflow:hidden;
  border:5px solid #fff;box-shadow:0 22px 50px rgba(31,63,184,.2);
  outline:3px solid rgba(63,197,201,.35);outline-offset:-3px}
.spread-frame img{width:100%;display:block}

/* ---------- CTA ---------- */
.about-cta{max-width:760px;margin:50px auto 70px;padding:44px 26px;text-align:center;
  background:linear-gradient(135deg,rgba(46,84,212,.95),rgba(51,167,240,.95));
  border-radius:34px;box-shadow:0 24px 54px rgba(31,63,184,.3);
  border:4px solid #fff}
.about-cta h2{font-family:var(--display);font-weight:800;color:#fff;
  font-size:clamp(1.6rem,4vw,2.3rem);margin-bottom:10px;
  text-shadow:0 3px 0 rgba(13,31,92,.35)}
.about-cta p{color:#eaf6ff;font-size:1.15rem;margin-bottom:24px}
.about-cta p b{color:#fff}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.about-cta .btn-review{background:#fff;color:var(--royal);
  box-shadow:0 6px 0 rgba(13,31,92,.3)}

/* ---------- RESPONSIVE ---------- */
@media(max-width:760px){
  .author-card{grid-template-columns:1fr;gap:30px;padding:26px;text-align:center}
  .author-photo{max-width:280px;margin:0 auto}
  .author-tags{justify-content:center}
  .story-band{flex-direction:column;align-items:center;text-align:center;gap:12px}
}

/* Dessi flying near hero heading — bigger, flies in from left */
.about-hero{position:relative;overflow:hidden}
.about-hero .hero-dessi{width:min(300px,64vw);height:auto;margin-bottom:6px;
  filter:drop-shadow(0 16px 30px rgba(31,63,184,.3));
  transform:translateX(-120vw) rotate(-8deg);opacity:0;
  animation:flyInFromLeft 1.3s cubic-bezier(.18,.7,.25,1) .15s forwards}
@keyframes flyInFromLeft{
  0%{transform:translateX(-120vw) rotate(-8deg);opacity:0}
  60%{opacity:1}
  80%{transform:translateX(14px) rotate(2deg)}
  100%{transform:translateX(0) rotate(0);opacity:1}}
/* gentle float after it lands */
.about-hero .hero-dessi{animation:flyInFromLeft 1.3s cubic-bezier(.18,.7,.25,1) .15s forwards,
  bob 3.8s ease-in-out 1.5s infinite}
