/* NEWWEBSITE responsive tuning – home page only, 2026-11-11
   Tested design targets: wide desktop, laptop 1366/1440, compact laptop 1024,
   tablet 768, mobile 390. Does not modify the product-page styles. */

/* Prevent text in flex/grid children from forcing horizontal overflow. */
.hero, .hero > .wrap, .hero-copy, .hero .lead,
.trust, .trust .wrap, .trust .trustitem { min-width: 0; }
.hero-copy h1 { overflow-wrap: normal; hyphens: auto; }

/* Scale all three zones together instead of independently enlarging the photo,
   headings, and form at browser/laptop dimensions. */
@media (min-width: 1501px) {
  .hero { min-height: clamp(510px, 59vh, 620px); }
  .hero > .wrap {
    min-height: clamp(510px, 59vh, 620px);
    grid-template-columns: minmax(0,36fr) minmax(0,34fr) minmax(360px,30fr);
    width: min(1700px,calc(100% - 64px));
    gap: clamp(18px,1.7vw,32px);
    padding: 24px 0;
  }
  .hero-copy h1 { font-size: clamp(39px,2.55vw,49px)!important; }
  .hero .lead { max-width:400px; padding: clamp(18px,1.25vw,24px); }
}
@media (min-width: 1201px) and (max-width: 1500px) {
  .hero { min-height: 515px; }
  .hero > .wrap {
    min-height: 515px;
    width: calc(100% - 48px);
    grid-template-columns: minmax(0,28fr) minmax(0,40fr) minmax(335px,32fr);
    column-gap: clamp(14px,1.5vw,23px);
    padding: 20px 0 23px;
  }
  .hero-copy h1 { font-size: clamp(35px,2.95vw,44px)!important;line-height:1.12; }
  .hero-copy > p { font-size:13px;line-height:1.6; }
  .hero-copy .proof { margin-top:18px!important;gap:10px 12px!important; }
  .hero .lead { max-width:390px;padding:17px 20px 18px; }
  .hero .lead h2 { font-size:25px; }
  .hero::after { width:59%; }
}
/* Short laptop screens: keep the next section visible without clipping the form. */
@media (min-width: 1201px) and (max-height: 820px) {
  .hero, .hero > .wrap { min-height: 485px; }
  .hero > .wrap { padding-top:15px;padding-bottom:15px; }
  .hero .lead { padding-top:16px;padding-bottom:16px; }
  .hero-copy h1 { margin:13px 0 15px; }
  .hero-copy .proof { margin-top:16px!important; }
}
@media (min-width: 901px) and (max-width: 1200px) {
  /* Two column transition rather than a huge image row above the content. */
  .hero, .hero > .wrap { min-height: 560px; }
  .hero::after {
    width:62%;height:100%;inset:0 auto 0 0;
    background-size:cover;background-position:45% center;
    -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 48%,transparent 100%);
    mask-image:linear-gradient(90deg,#000 0%,#000 48%,transparent 100%);
  }
  .hero::before {
    background:linear-gradient(90deg,rgba(8,19,33,.67) 0%,rgba(8,19,33,.86) 34%,#081321 64%);
  }
  .hero > .wrap {
    grid-template-columns:minmax(0,1fr) minmax(340px,390px);
    width:calc(100% - 42px);
    gap:clamp(20px,3vw,35px);
    padding:26px 0;
    align-items:center;
  }
  .hero-copy { grid-column:1;max-width:520px; }
  .hero .lead { grid-column:2;max-width:390px; }
  .hero-copy h1 { font-size:clamp(34px,3.8vw,44px)!important; }
  .hero-copy .proof { margin-top:19px!important; }
}
@media (max-width: 900px) {
  .hero::after { background-position:center 36%; }
  .hero > .wrap { max-width:760px; }
  .hero .lead { justify-self:stretch;max-width:540px; }
}
@media (max-width: 560px) {
  .hero-copy .kicker { font-size:10px;letter-spacing:.13em; }
  .hero-copy h1 { overflow-wrap:break-word; }
  .hero .lead { width:100%;max-width:100%; }
  .hero .lead input,.hero .lead select { max-width:100%;font-size:16px; }
}
@media (max-width: 380px) {
  .hero > .wrap { width:calc(100% - 24px); }
  .hero-copy h1 { font-size:31px!important; }
  .hero .lead { padding:16px 14px; }
}

/* The trust strip and sections use content-aware grids at laptop widths. */
@media (min-width:1101px) and (max-width:1500px) {
  .trust { padding:15px 0; }
  .trust .wrap { width:min(1240px,calc(100% - 48px));grid-template-columns:minmax(210px,1.45fr) repeat(4,minmax(0,1fr));gap:11px; }
  .truststrong { font-size:clamp(17px,1.5vw,21px); }
  .trustitem { font-size:10.5px;gap:7px; }
  .trust-symbol { width:30px;height:30px; }
  .trust-heading .trust-symbol { width:35px;height:35px; }
}
@media(min-width:901px) and (max-width:1100px) {
  .trust .wrap { grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
  .trust-heading { grid-column:1/-1; }
  .trust-heading + .trustitem { border-left:0;padding-left:0; }
}
@media(max-width:900px) {
  .cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .articles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .banner { grid-template-columns:1fr 1.5fr; }
  .banner > :last-child { grid-column:1/-1; }
}
@media(max-width:620px) {
  .cards,.articles,.quotes,.footergrid { grid-template-columns:1fr!important; }
  .banner { grid-template-columns:1fr!important;gap:14px; }
  .banner > :last-child { grid-column:auto; }
  .sectionhead { align-items:flex-start;flex-wrap:wrap; }
  .trust .wrap { grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px; }
  .trust-heading { grid-column:1/-1; }
  .trustitem { font-size:11px; }
  .bottom { display:grid;grid-template-columns:1fr; }
  .fine { flex-direction:column; }
}
/* At intermediate tablet widths the auxiliary header CTA cannot share a row
   with the full navigation. Hide only that CTA; its destination remains in menu. */
@media (min-width:761px) and (max-width:900px) {
  .site-header .navcta { display:none!important; }
  .site-header .site-nav { gap:0; }
}
