/* GlásTour V6 responsive stabilization. Loaded last so it resolves legacy-theme collisions. */

.home-v2 .gt-studio-offer {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(390px, .82fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: center;
  overflow: hidden;
  padding: clamp(42px, 6vw, 78px);
  background:
    radial-gradient(circle at 10% 15%, rgba(255,255,255,.94), transparent 38%),
    linear-gradient(135deg, #f4f1ff 0%, #edf4ff 100%);
}
.home-v2 .gt-studio-offer::after {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -170px;
  top: -190px;
  border: 1px solid rgba(118,91,232,.18);
  border-radius: 50%;
  box-shadow: 0 0 0 55px rgba(255,255,255,.16), 0 0 0 110px rgba(255,255,255,.1);
  pointer-events: none;
}
.home-v2 .gt-studio-offer-copy { position: relative; z-index: 1; }
.home-v2 .gt-studio-eyebrow {
  display: block;
  color: #765be8;
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .15em;
}
.home-v2 .gt-studio-offer-copy h3 {
  max-width: 660px;
  margin: 13px 0 18px;
  font: 500 clamp(2.5rem, 4.7vw, 4.8rem)/.94 Georgia, serif;
  letter-spacing: -.055em;
}
.home-v2 .gt-studio-offer-copy > p {
  max-width: 610px;
  margin: 0;
  color: #5f5c67;
  font-size: clamp(.88rem, 1.25vw, 1.05rem);
  line-height: 1.65;
}
.home-v2 .gt-studio-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 620px;
  margin-top: 32px;
  border-top: 1px solid rgba(32,33,38,.13);
  border-bottom: 1px solid rgba(32,33,38,.13);
}
.home-v2 .gt-studio-proof > div { padding: 19px 16px 19px 0; }
.home-v2 .gt-studio-proof > div + div { padding-left: 18px; border-left: 1px solid rgba(32,33,38,.13); }
.home-v2 .gt-studio-proof strong { display: block; font: 500 2rem/1 Georgia, serif; }
.home-v2 .gt-studio-proof span { display: block; margin-top: 6px; color: #6d6874; font-size: .65rem; line-height: 1.35; }
.home-v2 .gt-studio-checkout {
  z-index: 1;
  min-height: 0;
  padding: clamp(28px, 3vw, 40px);
  border-color: rgba(118,91,232,.52);
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(68,56,113,.13), inset 0 3px 0 #f38aaa, inset 0 4px 0 #9f91ee;
}
.home-v2 .gt-studio-checkout .gt-plan-top > strong { font-size: 2.3rem; }
.home-v2 .gt-studio-checkout .gt-plan-top > strong small { display: block; margin-top: 5px; text-align: right; }
.home-v2 .gt-studio-checkout ul { margin-bottom: 28px; }
.home-v2 .gt-studio-checkout .pv-button { min-height: 54px; padding-inline: 22px; }
.home-v2 .gt-studio-reassurance { display: block; margin-top: 13px; color: #77727f; font-size: .62rem; text-align: center; }
.home-v2 .gt-studio-offer .gt-studio-note { grid-column: 1 / -1; margin: -8px 0 0; font-size: .65rem; line-height: 1.5; }

.app-v2 .gt-topup-choice { position: relative; }
.app-v2 .gt-topup-choice > small { color: #ef6d52; font-size: .58rem; font-weight: 900; letter-spacing: .13em; }
.app-v2 .gt-topup-choice em { display: block; color: var(--app-muted); font-size: .72rem; font-style: normal; }
.app-v2 .gt-topup-choice.is-popular { border-color: rgba(159,121,242,.5); }

@media (max-width: 820px) {
  html { scroll-padding-top: 76px; }
  .home-v2 { overflow-x: clip; }
  .home-v2 .pv-nav { width: 100%; min-height: 0; }
  .home-v2 .pv-nav-inner {
    width: min(calc(100% - 28px), 1240px);
    min-height: 72px;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
  }
  .home-v2 .pv-nav .pv-brand { min-width: 0 !important; max-width: 100%; }
  .home-v2 .pv-nav .gt-brand-lockup { width: 172px !important; height: 48px !important; }
  .home-v2 .pv-nav .gt-brand-logo { width: 172px !important; height: auto !important; top: 0 !important; left: 0 !important; }
  .home-v2 .pv-nav .pv-button { min-width: 138px; min-height: 44px; margin: 0; padding: 0 15px; white-space: nowrap; }

  .home-v2 .pv-hero { padding-top: 0; }
  .home-v2 .pv-hero-copy { padding: 52px 0 22px; }
  .home-v2 .pv-hero h1 { max-width: 680px; margin-inline: auto; font-size: clamp(3rem, 11.5vw, 4.7rem); line-height: .96; letter-spacing: -.055em; }
  .home-v2 .pv-hero-lead { max-width: 620px; line-height: 1.62; }
  .home-v2 .pv-proof-row { flex-wrap: wrap; row-gap: 12px; }
  .home-v2 .pv-hero-art { width: 100%; margin: -4px auto -12px; transform: none; }
  .home-v2 .pv-phone { transform: none; }

  .home-v2 video { max-width: 100%; }
  .home-v2 .pv-work-window,
  .home-v2 .gt-publish,
  .home-v2 .gt-publish-stage,
  .home-v2 .gt-flagship-media { max-width: 100vw; min-width: 0; }

  .home-v2 .gt-publish-film,
  .home-v2 .gt-publish-destinations,
  .home-v2 .gt-publish-destination,
  .home-v2 .gt-publish-brands { min-width: 0; max-width: 100%; }
  .home-v2 .pv-format-row { display: none !important; }

  .home-v2 video::-webkit-media-controls,
  .home-v2 video::-webkit-media-controls-start-playback-button,
  .home-v2 video::-webkit-media-controls-overlay-play-button { display: none !important; -webkit-appearance: none; }

  .home-v2 .gt-studio-offer { grid-template-columns: 1fr; }
  .home-v2 .pv-footer-inner { gap: 22px; }
  .home-v2 .pv-footer .pv-brand { padding: 8px 13px; border-radius: 12px; background: #fbf8f2; }
  .home-v2 .pv-footer .gt-brand-lockup { width: 180px !important; height: 50px !important; }
  .home-v2 .pv-footer .gt-brand-logo { width: 180px !important; }
}

@media (max-width: 590px) {
  html { scroll-padding-top: 68px; }
  .home-v2 .pv-shell { width: calc(100% - 32px); }
  .home-v2 .pv-nav-inner { width: calc(100% - 24px); min-height: 66px; gap: 8px; }
  .home-v2 .pv-nav .gt-brand-lockup { width: 150px !important; height: 42px !important; }
  .home-v2 .pv-nav .gt-brand-logo { width: 150px !important; }
  .home-v2 .pv-nav .pv-button { min-width: 132px; min-height: 42px; padding-inline: 13px; font-size: .67rem; }

  .home-v2 .pv-hero-copy { padding: 46px 0 18px; }
  .home-v2 .pv-eyebrow { margin-bottom: 20px; font-size: .67rem; letter-spacing: .14em; }
  .home-v2 .pv-hero h1 { font-size: clamp(2.85rem, 12.4vw, 3.5rem); line-height: .97; }
  .home-v2 .pv-hero-lead { margin-top: 24px; font-size: 1rem; line-height: 1.58; }
  .home-v2 .pv-actions { margin-top: 28px; }
  .home-v2 .pv-proof-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); justify-items: start; width: 100%; margin-top: 26px; gap: 12px 14px; }
  .home-v2 .pv-proof-row span { min-width: 0; font-size: .69rem; white-space: nowrap; }
  .home-v2 .pv-proof-row span:last-child { grid-column: 1 / -1; }
  .home-v2 .pv-hero-art { min-height: 505px; margin: 0 auto -12px; }
  .home-v2 .pv-hero-art::before { width: min(570px,145vw); height: min(570px,145vw); transform: none; }
  .home-v2 .pv-phone { width: 210px; }
  .home-v2 .pv-reel-scene { height: 350px; }
  .home-v2 .pv-floating-card { display: none; }

  .home-v2 .pv-section,
  .home-v2 .gt-publish { padding-top: 72px; padding-bottom: 72px; }
  .home-v2 .pv-work-card { width: min(82vw,330px); height: 250px; }
  .home-v2 .pv-transform-card { overflow: hidden; }
  .home-v2 .pv-transform-media { aspect-ratio: 16/10; min-height: 0; }
  .home-v2 .pv-transform-media img,
  .home-v2 .pv-transform-media video { width: 100%; height: 100%; object-fit: cover; }

  .home-v2 .gt-publish-intro { gap: 20px; padding-bottom: 20px; }
  .home-v2 .gt-publish-intro h2 { font-size: clamp(2.65rem,11.5vw,3.15rem); }
  .home-v2 .gt-publish-formats { margin-bottom: 20px; }
  .home-v2 .gt-publish-film-media { aspect-ratio: 16/10; }
  .home-v2 .gt-publish-flow { height: 118px; }
  .home-v2 .gt-publish-destination { display: block; min-height: 0; padding: 20px 18px; }
  .home-v2 .gt-publish-destination > header { margin-bottom: 18px; }
  .home-v2 .gt-publish-brands,
  .home-v2 .gt-publish-destination:nth-child(2) .gt-publish-brands { width: 100%; max-width: none; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
  .home-v2 .gt-publish-destination:nth-child(2) .gt-publish-brands { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .home-v2 .gt-publish-brands img { width: 42px; height: 42px; }
  .home-v2 .gt-publish-brands small { font-size: .6rem; }

  .home-v2 .gt-pricing-head h2 { font-size: clamp(2.65rem,10.6vw,3.1rem); }
  .home-v2 .gt-flagship-media { min-height: 340px; }
  .home-v2 .gt-flagship-title h3 { max-width: 285px; font-size: 1.9rem; line-height: 1.02; }
  .home-v2 .gt-film-toggle { left: 50%; bottom: 105px; width: 52px; height: 52px; transform: translateX(-50%); }
  .home-v2 .gt-film-chapters { left: 12px; right: 12px; bottom: 12px; }
  .home-v2 .gt-studio-offer { margin-inline: -8px; padding: 38px 20px 24px; }
  .home-v2 .gt-studio-offer-copy h3 { font-size: clamp(2.55rem, 12vw, 3.4rem); }
  .home-v2 .gt-studio-proof { margin-top: 25px; }
  .home-v2 .gt-studio-proof > div { padding: 15px 9px 15px 0; }
  .home-v2 .gt-studio-proof > div + div { padding-left: 10px; }
  .home-v2 .gt-studio-proof strong { font-size: 1.55rem; }
  .home-v2 .gt-studio-proof span { font-size: .56rem; }
  .home-v2 .gt-studio-checkout { padding: 27px 20px 20px; }
  .home-v2 .gt-studio-checkout .gt-plan-top { align-items: flex-start; }
  .home-v2 .gt-studio-checkout .gt-plan-top > strong { font-size: 2rem; }
  .home-v2 .gt-studio-checkout .pv-button { font-size: .68rem; }
  .home-v2 .pv-final h2 { font-size: clamp(3rem,13.5vw,4rem); line-height: .95; }
  .home-v2 .pv-footer { padding: 52px 0 40px; }
  .home-v2 .pv-footer .pv-brand { justify-self: center; }
  .home-v2 .pv-footer-inner > div { gap: 12px; }

  .app-v2 .gt-plan-grid,
  .app-v2 .gt-topup-grid { grid-template-columns: 1fr; }
  .app-v2 .gt-topup-choice { min-width: 0; }
}

@media (max-width: 370px) {
  .home-v2 .pv-nav .gt-brand-lockup { width: 135px !important; height: 38px !important; }
  .home-v2 .pv-nav .gt-brand-logo { width: 135px !important; }
  .home-v2 .pv-nav .pv-button { min-width: 120px; padding-inline: 11px; font-size: .62rem; }
  .home-v2 .pv-hero h1 { font-size: 2.65rem; }
}
