.product-page{
  --product-ink:#0f172a;
  --product-navy:#17365d;
  --product-navy-deep:#102a49;
  --product-blue:#1d4ed8;
  --product-blue-soft:#eaf2ff;
  --product-sage:#5f7f69;
  --product-sage-dark:#45634f;
  --product-sage-soft:#f2f8f3;
  --product-sage-border:#cfe0d4;
  --product-green:#047857;
  --product-green-soft:#ecfdf5;
  --product-border:#d8e2ef;
  --product-muted:#52657d;
  position:relative;
  left:50%;
  width:min(1280px,calc(100vw - 40px));
  margin:22px 0 0;
  transform:translateX(-50%);
  display:grid;
  gap:36px;
  color:var(--product-ink);
  overflow-wrap:normal;
  word-break:normal;
}
.product-page *,
.product-page *::before,
.product-page *::after{ box-sizing:border-box; }
.product-page h1,
.product-page h2,
.product-page h3{ color:var(--product-ink);letter-spacing:-.04em; }
.product-page p{ color:#40536b;line-height:1.65; }
.product-eyebrow{ margin:0 0 8px;color:var(--product-sage-dark)!important;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase; }

.product-hero{
  display:grid;
  grid-template-columns:minmax(0,48%) minmax(0,52%);
  grid-template-areas:"copy media";
  gap:12px 28px;
  align-items:start;
  min-height:0;
  padding:28px 30px 18px;
  border:1px solid var(--product-border);
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 50px rgba(15,23,42,.085);
  overflow:hidden;
}
.product-hero__copy{
  grid-area:copy;
  position:relative;
  z-index:2;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:0 18px 0 10px;
  background:transparent;
}
.product-hero h1{
  max-width:590px;
  margin:0;
  font-size:clamp(50px,4.3vw,68px);
  line-height:.98;
  overflow-wrap:normal;
  word-break:normal;
}
.product-hero__line{ display:block; }
.product-hero h1 .product-hero__accent{ color:var(--product-sage); }
.product-hero__lead{
  max-width:600px;
  margin:20px 0 0;
  font-size:18px;
  font-weight:600;
}
.product-hero__benefits{
  display:grid;
  gap:11px;
  margin:19px 0 0;
  padding:0;
  list-style:none;
  color:#1e293b;
  font-weight:750;
}
.product-hero__benefits li{
  position:relative;
  padding-left:30px;
  line-height:1.42;
}
.product-hero__benefits li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:50%;
  background:var(--product-sage-dark);
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.product-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:23px;
}
.product-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:49px;
  padding:11px 19px;
  border-radius:11px;
  font-weight:900;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.product-button:hover{ transform:translateY(-1px);text-decoration:none; }
.product-page .primary.product-button{
  background:var(--product-navy);
  color:#fff;
  box-shadow:0 10px 22px rgba(23,54,93,.18);
}
.product-page .primary.product-button:hover{ background:var(--product-navy-deep); }
.product-page .secondary.product-button{
  border:1px solid #9fb0c5;
  background:#fff;
  color:var(--product-navy);
}
.product-hero__media{
  grid-area:media;
  align-self:start;
  min-width:0;
  margin:2px 0 0;
  padding:0;
  border:0;
  border-radius:18px;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.product-hero__media img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center;
  border-radius:18px;
  box-shadow:
    0 24px 48px rgba(15,32,57,.14),
    0 8px 18px rgba(15,32,57,.08);
  filter:none;
  image-rendering:auto;
}
.product-value-strip{ display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:17px;border:1px solid var(--product-border);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05); }
.product-value-strip article{ display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:center;min-width:0;padding:10px 11px; }
.product-icon,
.product-feature-icon,
.product-support__icon{ position:relative;display:block;width:52px;height:52px;border:1px solid var(--product-sage-border);border-radius:14px;background:var(--product-sage-soft);color:var(--product-sage-dark);justify-self:center;overflow:hidden; }
.product-icon svg,
.product-feature-icon svg,
.product-support__icon svg{ position:absolute;top:50%;left:50%;display:block;width:30px;height:30px;margin:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;overflow:visible;transform:translate(-50%,-50%);transform-origin:center; }
.product-feature-icon{ width:56px;height:56px;border-radius:16px; }
.product-feature-icon svg{ width:32px;height:32px; }
.product-value-strip strong,
.product-value-strip span{ display:block; }
.product-value-strip strong{ color:#172033; }
.product-value-strip article div span{ margin-top:3px;color:#607188;font-size:12px;line-height:1.45; }

.product-section{ padding:12px 0; }
.product-section__heading{ max-width:840px;margin-bottom:24px; }
.product-section__heading--centered{ margin-inline:auto;text-align:center; }
.product-section__heading h2{ margin:0;font-size:clamp(34px,3.7vw,50px);line-height:1.06; }
.product-section__intro{ max-width:700px;margin:14px auto 0;font-size:17px; }
.product-feature-grid{ display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px; }
.product-feature-card{ min-height:225px;padding:25px;border:1px solid var(--product-border);border-radius:17px;background:#fff;box-shadow:0 9px 25px rgba(15,23,42,.045); }
.product-feature-card h3{ margin:18px 0 8px;font-size:21px; }
.product-feature-card p{ margin:0; }

.product-scope-grid{ display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px; }
.product-scope-card{ padding:29px;border:1px solid;border-radius:19px; }
.product-scope-card h3{ display:flex;align-items:center;gap:10px;margin:0;font-size:26px; }
.product-scope-card h3 span{ display:grid;place-items:center;width:29px;height:29px;border-radius:50%;color:#fff;font-size:17px; }
.product-scope-card ul{ display:grid;gap:9px;margin:19px 0 0;padding-left:22px;color:#334155;line-height:1.52; }
.product-scope-card--included{ border-color:#8ee1ad;background:linear-gradient(145deg,#f0fdf4,#fff); }
.product-scope-card--included h3 span{ background:#16a34a; }
.product-scope-card--expectations{ border-color:#bfd1e6;background:linear-gradient(145deg,#f2f7fc,#fff); }
.product-scope-card--expectations h3 span{ background:var(--product-navy);font-family:Georgia,serif;font-weight:800; }

.product-pricing{ display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:40px;align-items:center;padding:40px;border:1px solid var(--product-border);border-radius:19px;background:linear-gradient(135deg,#fff,#f4f8ff);box-shadow:0 10px 28px rgba(15,23,42,.05); }
.product-pricing h2{ margin:0;font-size:clamp(33px,3.8vw,50px); }
.product-pricing p{ max-width:760px; }
.product-guarantee{ color:var(--product-sage-dark)!important;font-weight:900; }
.product-price-card{ display:grid;justify-items:center;gap:9px;padding:29px;border:1px solid #c8d8ef;border-radius:17px;background:#fff;box-shadow:0 13px 32px rgba(29,78,216,.1);text-align:center; }
.product-price-card > span:first-child{ color:#40536b;font-weight:900; }
.product-price{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  color:#0f172a;
  font-size:60px;
  font-weight:900;
  letter-spacing:-.055em;
  line-height:.92;
}
.product-price__currency{ margin:.08em .03em 0 0;font-size:.7em;letter-spacing:-.03em; }
.product-price__major{ line-height:.92; }
.product-price__minor{ margin:.12em 0 0 .08em;font-size:.43em;letter-spacing:-.025em;line-height:1; }
.product-price-card small{ color:#64748b; }
.product-price-card__annual{ margin-top:3px;color:#334155; }
.product-price-card__annual strong{ color:var(--product-navy); }
.product-price-card__savings{ color:var(--product-green)!important;font-weight:800; }
.product-price-card .product-button{ width:100%;margin-top:8px; }

.product-faq__grid{ display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start; }
.product-faq__column{ display:grid;grid-auto-rows:max-content;gap:11px;align-content:start;align-self:start;min-width:0; }
.product-faq details{ align-self:start;height:auto;min-height:0;border:1px solid var(--product-border);border-radius:12px;background:#fff;overflow:hidden; }
.product-faq summary{ padding:16px 18px;color:#0f172a;font-weight:850;cursor:pointer; }
.product-faq details p{ margin:0;padding:0 18px 18px; }
.product-support{ display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:15px;align-items:center;padding:21px;border:1px solid var(--product-border);border-radius:17px;background:#fff; }
.product-support strong,
.product-support span{ display:block; }
.product-support span{ margin-top:3px;color:#607188;font-size:13px; }
.product-purchase-confirmation{ display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px; }
.product-purchase-confirmation[hidden]{ display:none; }
.product-purchase-confirmation h2{ margin:0 0 5px; }
.product-purchase-confirmation p{ margin:0; }

@media (max-width:1100px){
  .product-hero{ grid-template-columns:minmax(0,47%) minmax(0,53%);gap:12px 22px;padding:22px 24px 16px; }
  .product-hero__copy{ padding:0 10px 0 4px; }
  .product-hero h1{ font-size:clamp(47px,5vw,64px); }
  .product-hero__media img{ max-height:none; }
}
@media (max-width:980px){
  .product-hero{
    grid-template-columns:1fr;
    grid-template-areas:
      "copy"
      "media";
    gap:12px;
    min-height:0;
    padding:14px;
  }
  .product-hero__copy{ padding:18px 26px 16px; }
  .product-hero__media{
    margin-top:0;
    border:0;
    border-radius:16px;
    background:transparent;
  }
  .product-hero__media img{
    width:100%;
    height:auto;
    max-width:none;
    max-height:none;
    object-fit:contain;
    object-position:center;
  }
  .product-value-strip{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-feature-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px){
  .product-page{ width:calc(100vw - 24px);gap:24px;margin-top:14px; }
  .product-hero{ border-radius:17px;padding:10px; }
  .product-hero__copy{ padding:15px 10px 17px; }
  .product-hero h1{
    max-width:none;
    font-size:clamp(38px,10.8vw,46px);
    line-height:1;
  }
  .product-hero__line{ display:block; }
  .product-hero__line:last-child .product-hero__accent{
    display:block;
    margin-top:2px;
  }
  .product-hero__lead{
    margin-top:16px;
    font-size:16px;
    line-height:1.55;
  }
  .product-hero__benefits{
    gap:10px;
    margin-top:17px;
    font-size:15px;
  }
  .product-hero__benefits li{ padding-left:28px; }
  .product-hero__media img{
    width:100%;
    height:auto;
    max-width:none;
    object-fit:contain;
    object-position:center;
  }
  .product-value-strip,
  .product-feature-grid,
  .product-scope-grid,
  .product-faq__grid{ grid-template-columns:1fr; }
  .product-pricing{ grid-template-columns:1fr;padding:29px 22px; }
  .product-support{ grid-template-columns:44px 1fr; }
  .product-support .product-button{ grid-column:1/-1;width:100%; }
}
@media (max-width:520px){
  .product-page{ width:calc(100vw - 16px); }
  .product-hero{ border-radius:15px;padding:8px; }
  .product-hero__copy{ padding:13px 9px 16px; }
  .product-hero h1{ font-size:clamp(35px,10.5vw,42px); }
  .product-hero__actions{ flex-direction:column;margin-top:19px; }
  .product-hero__actions .product-button{ width:100%; }
  .product-hero__media{ border:0;border-radius:14px;padding:0; }
  .product-hero__media img{ box-shadow:0 18px 34px rgba(15,32,57,.13),0 6px 14px rgba(15,32,57,.07); }
  .product-value-strip{ padding:12px; }
  .product-feature-card,
  .product-scope-card{ min-height:0;padding:22px 19px; }
  .product-purchase-confirmation{ align-items:stretch;flex-direction:column; }
}
