/* Template 01 — product landing page */
.page-hero { min-height: clamp(500px, 66svh, 680px) !important; }
.page-hero .hero-inner { max-width: 940px; }
.page-hero .hero-cta { gap: 12px; margin-top: 32px; }

.sec-cream { background: var(--ip-white); }
.sec-dark { background: var(--ip-navy); }
.sec-cream-2 { background: var(--ip-blue); }

.tri-grid { gap: 24px; }
.tri-card {
  min-height: 320px;
  padding: 32px;
  border: 1px solid var(--ip-border);
  border-radius: 20px;
  box-shadow: var(--ip-shadow);
  transition: transform 280ms var(--ease), border-color 280ms var(--ease), box-shadow 280ms var(--ease);
}
.tri-card:hover { transform: translateY(-2px); box-shadow: var(--ip-shadow-hover); }
.tri-card.navy { background: var(--ip-navy); }
.tri-card.blue { background: var(--ip-blue); }
.tri-card.gold { background: linear-gradient(145deg, #f3df9e, #e7c866); }
.tri-card h3 { font-family: var(--f-semibold); font-size: 21px; font-weight: 600; line-height: 1.6; }
.tri-card p { line-height: 2; }
.tri-icon { width: 48px; height: 48px; border-radius: 12px; }

.split { gap: 64px; }
.split > .reveal { max-width: 620px; }
.split .h-section { font-family: var(--f-semibold); font-weight: 650; }
.split-media {
  min-height: 420px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  background: radial-gradient(circle at 50% 35%, rgba(216,174,53,.2), transparent 30%), linear-gradient(145deg, var(--ip-navy-raised), var(--ip-navy));
  box-shadow: 0 28px 60px -42px rgba(0,0,0,.7);
}
.split-media .glow { opacity: .52; }
#start .wrap { max-width: 720px !important; }
#start .t-lead { color: var(--ip-muted); }

@media (max-width: 920px) {
  .page-hero { min-height: 560px !important; }
  .tri-grid { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; }
  .tri-card { min-height: 0; }
  .split { grid-template-columns: 1fr; gap: 48px; }
  .split-media { min-height: 320px; }
}
@media (max-width: 560px) {
  .page-hero { min-height: 560px !important; }
  .page-hero .hero-cta { flex-direction: column; }
  .tri-card { padding: 24px; }
  .split-media { min-height: 240px; }
}

@media (prefers-reduced-motion: reduce) {
  .tri-card { transition-duration: .01ms !important; }
  .split-media .glow { animation: none !important; }
}
