/* PAT integration: retain the maqueta's visual language without leaking into the app. */
html:has(.marketing-site) { scroll-behavior: smooth; scroll-padding-top: 32px; }
.marketing-site { min-height: 100svh; width: 100%; overflow-x: clip; }
.marketing-site main { max-width: none; margin: 0; padding: 0; }
.marketing-site .site-header { max-width: none; margin: 0; padding-block: 0; }
.marketing-site .site-header nav a { display: block; }
.marketing-site [hidden] { display: none !important; }
.marketing-site .site-header nav .marketing-account-link {
  background: none; border: 0; padding: 0; color: var(--muted);
  font-size: 11px; line-height: inherit; transition: color .2s;
}
.marketing-site .site-header nav .marketing-account-link:hover { color: var(--accent); }
.marketing-site .header-cta { background: transparent; color: var(--ink); cursor: pointer; }
.marketing-site .hero { border: 0; border-radius: 0; margin-bottom: 0; }
.marketing-site .hero-content { max-width: 880px; }
.marketing-site .hero h1 { font-size: clamp(54px, 5.7vw, 82px); line-height: 1.17; }
.marketing-site .hero h1 .grd-hero-line { display: block; color: var(--ink); white-space: nowrap; }
.marketing-site .hero h1 .grd-initial { color: var(--accent); }
.marketing-site .hero-description { max-width: 480px; }
.marketing-site .intro { padding-block: clamp(70px, 8vw, 115px); }
.marketing-site .intro .journey-section { border: 0; margin: 0; padding: 0; }
.marketing-site .intro .journey-heading h2 { font-size: clamp(48px, 5.3vw, 82px); }
.marketing-site .coach-instagram { margin-top: 20px; }
.marketing-site .closing-action { align-self: center; }
.marketing-site .closing-action .button { width: 100%; }
.marketing-site.hero-motion .hero-content .eyebrow { animation: grd-landing-enter .6s both; }
.marketing-site.hero-motion .hero h1 .grd-hero-line { animation: grd-landing-enter .7s both; }
.marketing-site.hero-motion .hero h1 .grd-hero-line:nth-child(1) { animation-delay: .1s; }
.marketing-site.hero-motion .hero h1 .grd-hero-line:nth-child(2) { animation-delay: .22s; }
.marketing-site.hero-motion .hero h1 .grd-hero-line:nth-child(3) { animation-delay: .34s; }
.marketing-site.hero-motion .hero-description { animation: grd-landing-enter .7s .46s both; }
.marketing-site.hero-motion .hero-actions { animation: grd-landing-enter .7s .56s both; }
@keyframes grd-landing-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1050px) {
  .marketing-site .hero h1 { font-size: clamp(48px, 6.3vw, 68px); }
}
@media (max-width: 760px) {
  .marketing-site .site-header nav .marketing-account-link { min-height: 44px; padding: 12px 0; text-align: left; font-size: 13px; }
  .marketing-site .hero { min-height: 690px; padding-top: 210px; }
  .marketing-site .hero h1 { font-size: clamp(31px, 8.2vw, 58px); line-height: 1.2; }
  .marketing-site .hero h1 .grd-hero-line { white-space: normal; }
  .marketing-site .hero h1 .grd-hero-line:last-child { max-width: 12ch; }
  .marketing-site .hero-description { max-width: 365px; }
  .marketing-site .intro { padding-block: 54px 72px; }
  .marketing-site .intro .journey-heading h2 { font-size: 40px; }
  .marketing-site .intro .journey-heading > p:last-child { font-size: 12px; }
  .marketing-site .closing-action { width: 100%; }
}
@media (max-width: 360px) {
  .marketing-site .hero h1 { font-size: 30px; }
  .marketing-site .hero-actions { align-items: stretch; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.marketing-site) { scroll-behavior: auto; }
  .marketing-site *, .marketing-site *::before, .marketing-site *::after { animation: none !important; transition-duration: .01ms !important; }
}
