/* Siempre Studios — guide page; uses the main site's font and palette */
body{background:var(--cream);color:var(--ink)}
body>.wrap{max-width:920px;margin:0 auto;padding:0 30px 75px}
body>.wrap .hero{padding:92px 0 70px;text-align:center}
body>.wrap .hero h1{font-size:clamp(2.8rem,5.2vw,5.1rem);margin:0 0 20px}
body>.wrap .hero h1 em{color:var(--gold)}
body>.wrap .hero .lede{max-width:680px;margin:auto;font-size:1.16rem;color:var(--muted)}
body>.wrap .eyebrow{color:var(--gold);font-size:.73rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:22px}
body>.wrap section{padding:62px 0;border-top:1px solid var(--line)}
body>.wrap h2{font-size:clamp(2rem,3.5vw,3rem);margin:0 0 12px}
body>.wrap h2 .n{font-family:'DM Sans',sans-serif;font-size:.8em;color:var(--gold)}
body>.wrap .sub{color:var(--muted);margin:0 0 26px}
body>.wrap ol.steps{list-style:none;margin:0;padding:0;counter-reset:s;display:block}
body>.wrap ol.steps li{counter-increment:s;position:relative;padding:21px 0 21px 65px;border-bottom:1px solid var(--line)}
body>.wrap ol.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:23px;color:var(--gold);font-weight:700;font-size:.9rem}
body>.wrap ol.steps h3{font-size:1.5rem;margin:0 0 8px}
body>.wrap ol.steps p{color:var(--muted);margin:0}
body>.wrap .lines{background:var(--ivory);border:1px solid var(--line);border-radius:14px;padding:28px 38px;margin:0}
body>.wrap .lines li{margin-bottom:16px}
body>.wrap .lines li:last-child{margin-bottom:0}
body>.wrap .lines .q{color:var(--ink);font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:1.1rem}
body>.wrap blockquote.speech{background:var(--ivory);border-left:3px solid var(--gold);margin:0;padding:34px 38px;border-radius:0 14px 14px 0}
body>.wrap blockquote.speech p{margin:0 0 16px}
body>.wrap blockquote.speech p:last-child{margin-bottom:0}
body>.wrap blockquote.speech .toast{color:#896332}
body>.wrap .byline{color:var(--muted);font-size:.92rem;margin-top:15px;font-style:italic}
body>.wrap ul.tips{list-style:none;margin:0;padding:0}
body>.wrap ul.tips li{padding:15px 0 15px 32px;position:relative;border-bottom:1px solid var(--line)}
body>.wrap ul.tips li::before{content:'–';position:absolute;left:7px;color:var(--gold)}
body>.wrap ul.tips span{color:var(--muted)}
body>.wrap .pivot{background:var(--sand);border:1px solid var(--line);border-radius:18px;padding:54px 44px;text-align:center}
body>.wrap .pivot h2{margin-bottom:18px}
body>.wrap .pivot p{max-width:630px;margin:0 auto 19px;color:var(--muted)}
body>.wrap .pivot .btn{display:inline-block;background:var(--gold);color:white;text-decoration:none;padding:13px 28px;border-radius:999px;margin:8px 5px 0;font-size:1rem;font-weight:600}
body>.wrap .pivot .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--gold)}
body>.wrap .pivot .price{font-size:.93rem;margin-top:18px}
body>.wrap .faq details{border-bottom:1px solid var(--line);padding:19px 0}
body>.wrap .faq summary{cursor:pointer;font-size:1.15rem;font-weight:600}
body>.wrap .faq p{color:var(--muted);margin:13px 0 4px}
@media(max-width:650px){body>.wrap{padding:0 20px 48px}body>.wrap .hero{padding:56px 0 44px}body>.wrap section{padding:44px 0}body>.wrap .pivot{padding:32px 20px}body>.wrap blockquote.speech{padding:24px 20px}body>.wrap .lines{padding:22px 26px}}

/* Wide editorial hero: artwork includes the headline, so do not overlay duplicate text. */
body>.wrap{max-width:1120px}
body>.wrap .speech-hero{padding:35px 0 45px;text-align:left}
body>.wrap .speech-hero img{display:block;width:100%;height:auto;border-radius:4px}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body>.wrap section{max-width:920px;margin-left:auto;margin-right:auto}
@media(max-width:650px){body>.wrap .speech-hero{padding:20px 0 25px}}

/* v14: The hero artwork is a complete editorial composition (including its title).
   Override the site's generic two-column .hero grid and preserve natural proportions. */
body > .wrap > .hero.speech-hero {
  display:block;
  min-height:0;
  width:100%;
  max-width:none;
  margin:0;
  padding:28px 0 48px;
  text-align:left;
  gap:0;
}
body > .wrap > .hero.speech-hero > img {
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:1728 / 882;
  object-fit:contain;
  border-radius:0;
}
body > .wrap { max-width:1600px; padding-left:clamp(16px,3vw,44px); padding-right:clamp(16px,3vw,44px); }
@media(max-width:650px) {
  body > .wrap > .hero.speech-hero { padding:16px 0 30px; }
  body > .wrap > .hero.speech-hero > img { aspect-ratio:auto; }
}
