.product-body { background: var(--white); }
.product-header { background: rgba(255,255,255,.92); }
.product-hero { min-height: 720px; padding: clamp(70px,9vw,135px) clamp(24px,8vw,125px); color: white; background: var(--navy); display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: center; overflow: hidden; }
.product-breadcrumb { margin-bottom: 35px; color: var(--cyan); font: 700 10px var(--utility); letter-spacing: 1.3px; }
.product-breadcrumb a { color: #a9c3ce; }
.product-hero h1 { max-width: 750px; margin-bottom: 26px; font-size: clamp(64px,7vw,112px); }
.product-hero h1 em { display: inline-block; }
.product-hero-copy > p:not(.product-breadcrumb) { max-width: 580px; color: #bdd0d8; font-size: 17px; line-height: 1.65; }
.product-hero-actions { display: flex; align-items: center; gap: 25px; margin-top: 36px; }
.product-hero .text-link { color: white; }
.product-route-card { position: relative; min-height: 470px; display: grid; place-items: center; }
.product-route-card::before, .product-route-card::after { content: ""; position: absolute; width: 390px; height: 390px; border: 1px dashed #3f687a; border-radius: 50%; }
.product-route-card::after { width: 285px; height: 285px; border-style: solid; border-color: rgba(255,255,255,.09); }
.product-symbol { position: relative; z-index: 2; width: 185px; height: 185px; display: grid; place-items: center; color: var(--navy); background: var(--cyan); border-radius: 50% 50% 50% 12px; font: 800 82px var(--display); transform: rotate(-4deg); box-shadow: 25px 25px 0 rgba(156,105,36,.78); }
.product-route-note { position: absolute; z-index: 3; padding: 14px 17px; color: var(--navy); background: white; box-shadow: 0 10px 28px rgba(0,0,0,.18); font-size: 11px; font-weight: 800; }
.product-route-note.top { top: 11%; right: 0; transform: rotate(2deg); }
.product-route-note.bottom { bottom: 10%; left: 0; transform: rotate(-2deg); }
.product-route-note span { color: var(--coral); margin-right: 7px; }
.product-benefits { padding: clamp(80px,10vw,145px) clamp(24px,8vw,125px); }
.product-section-heading { display: grid; grid-template-columns: .65fr 1.2fr 1fr; gap: 50px; align-items: end; margin-bottom: 65px; }
.product-section-heading h2, .product-use-copy h2, .product-faq h2 { margin-bottom: 0; font: 800 clamp(45px,5vw,72px)/.94 var(--display); letter-spacing: -3px; text-transform: uppercase; }
.product-section-heading > p:last-child { margin-bottom: 0; color: var(--ink-muted); font-size: 14px; line-height: 1.65; }
.benefit-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.benefit-card { min-height: 315px; padding: 34px clamp(20px,3vw,42px); border-right: 1px solid var(--line); }
.benefit-card:last-child { border-right: 0; }
.benefit-card > span { font: 10px var(--utility); color: var(--coral); }
.benefit-card .benefit-icon { width: 62px; height: 62px; display: grid; place-items: center; margin: 48px 0 35px; color: white; background: var(--navy); border-radius: 50%; font-size: 23px; }
.benefit-card h3 { font: 800 22px var(--display); text-transform: uppercase; }
.benefit-card p { color: var(--ink-muted); font-size: 12px; line-height: 1.6; }
.product-use { padding: clamp(80px,10vw,145px) clamp(24px,8vw,125px); background: var(--mist); display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(60px,10vw,150px); align-items: center; }
.product-use-copy > p:not(.section-label) { color: var(--ink-muted); line-height: 1.7; }
.use-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.use-item { min-height: 150px; padding: 24px; background: white; border-left: 3px solid var(--cyan); }
.use-item span { display: block; margin-bottom: 25px; color: var(--coral); font: 10px var(--utility); }
.use-item b { font: 800 20px var(--display); text-transform: uppercase; }
.product-faq { padding: clamp(80px,10vw,145px) clamp(24px,9vw,145px); display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.product-disclaimer { padding: 22px clamp(24px,8vw,125px); color: #a9c3ce; background: var(--navy-deep); font-size: 9px; line-height: 1.6; text-align: center; }
.legal-page { max-width: 980px; margin: 0 auto; padding: clamp(70px,9vw,130px) clamp(24px,8vw,90px); }
.legal-page h1 { max-width: 780px; margin: 0 0 18px; font: 800 clamp(48px,7vw,86px)/.94 var(--display); letter-spacing: -3px; text-transform: uppercase; }
.legal-page h1 em { color: var(--coral); font-style: normal; }
.legal-intro { max-width: 720px; color: var(--ink-muted); font-size: 16px; line-height: 1.7; }
.legal-updated { margin: 30px 0 55px; color: var(--cyan-dark); font: 700 10px var(--utility); letter-spacing: 1px; text-transform: uppercase; }
.legal-page section { padding: 30px 0; border-top: 1px solid var(--line); scroll-margin-top: 110px; }
.legal-page h2 { margin: 0 0 14px; font: 800 25px var(--display); text-transform: uppercase; }
.legal-page p, .legal-page li { color: var(--ink-muted); font-size: 14px; line-height: 1.75; }
.legal-page a { color: var(--cyan-dark); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 900px) {
  .product-hero, .product-use, .product-faq { grid-template-columns: 1fr; }
  .product-section-heading { grid-template-columns: 1fr 1fr; }
  .product-section-heading .section-label { grid-column: 1/-1; }
}
@media (max-width: 560px) {
  .product-hero { padding-top: 55px; }
  .product-hero h1 { font-size: 58px; }
  .product-hero-actions { align-items: stretch; flex-direction: column; }
  .product-route-card { min-height: 400px; transform: scale(.8); margin: -40px -60px; }
  .product-section-heading, .benefit-grid, .use-list { grid-template-columns: 1fr; }
  .product-section-heading .section-label { grid-column: 1; }
  .benefit-card { min-height: auto; border-right: 0; border-bottom: 1px solid var(--line); }
}
