:root{
  --bt-navy:#063a5e;
  --bt-deep:#032b46;
  --bt-blue:#0b5d8c;
  --bt-orange:#f58220;
  --bt-soft:#f3f7fa;
  --bt-line:#d8e3ea;
  --bt-ink:#153247;
  --bt-muted:#607487;
}

/* HERO */
.bt-hero{
  position:relative;
  isolation:isolate;
  min-height:570px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:var(--bt-deep);
}
.bt-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:var(--bt-hero);
  background-size:cover;
  background-position:center;
  transform:scale(1.015);
}
.bt-hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(2,27,45,.97) 0%,rgba(3,43,70,.88) 48%,rgba(3,43,70,.28) 100%);
}
.bt-hero-inner{
  padding-top:74px;
  padding-bottom:72px;
  color:#fff;
}
.bt-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-bottom:26px;
  color:#d7e5ed;
  font-size:13px;
}
.bt-breadcrumb a{color:#fff;text-decoration:none}
.bt-kicker,.bt-eyebrow{
  margin:0 0 12px;
  color:var(--bt-orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.bt-hero h1{
  max-width:940px;
  margin:0;
  color:#fff;
  font-size:clamp(42px,5.6vw,68px);
  line-height:1.03;
  letter-spacing:-.035em;
}
.bt-lead{
  max-width:840px;
  margin:22px 0 0;
  color:#e2edf3;
  font-size:18px;
  line-height:1.72;
}
.bt-actions{
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  margin-top:30px;
}
.bt-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:51px;
  padding:0 21px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:5px;
  color:#fff;
  font-weight:900;
  text-decoration:none;
}
.bt-actions a:first-child{
  border-color:var(--bt-orange);
  background:var(--bt-orange);
}
.bt-proof{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:32px;
}
.bt-proof span{
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:99px;
  background:rgba(3,41,66,.5);
  color:#fff;
  font-size:12px;
  font-weight:800;
}

/* RFQ STRIP */
.bt-qualifier{background:var(--bt-orange);color:#fff}
.bt-qualifier>.site-container{
  display:grid;
  grid-template-columns:1.45fr repeat(4,.72fr) .8fr;
  gap:18px;
  align-items:center;
  min-height:112px;
}
.bt-qualifier span{
  display:block;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
}
.bt-qualifier strong{
  display:block;
  margin-top:4px;
  font-size:19px;
}
.bt-qualifier p{
  margin:0;
  font-size:13px;
  line-height:1.35;
}
.bt-qualifier p b{
  display:block;
  margin-bottom:4px;
  color:#713608;
  font-size:11px;
}
.bt-qualifier a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 15px;
  border-radius:5px;
  background:var(--bt-deep);
  color:#fff;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

/* COMMON */
.bt-section{
  padding:76px 0;
  background:#fff;
  color:var(--bt-ink);
  scroll-margin-top:105px;
}
.bt-soft{background:var(--bt-soft)}
.bt-dark{background:var(--bt-deep);color:#fff}
.bt-heading{
  max-width:820px;
  margin-bottom:34px;
}
.bt-heading h2,
.bt-intro h2,
.bt-two-col h2,
.bt-packing h2{
  margin:0;
  color:var(--bt-navy);
  font-size:clamp(30px,4vw,46px);
  line-height:1.1;
  letter-spacing:-.025em;
}
.bt-heading>p:not(.bt-eyebrow),
.bt-intro p,
.bt-two-col>div>p,
.bt-packing>div>p{
  color:var(--bt-muted);
  font-size:16px;
  line-height:1.75;
}
.bt-dark .bt-heading h2{color:#fff}

/* INTRO */
.bt-intro{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:58px;
  align-items:center;
}
.bt-intro figure{
  margin:0;
  overflow:hidden;
  border-radius:13px;
  background:#dce7ed;
  box-shadow:0 20px 48px rgba(13,52,77,.12);
}
.bt-intro img{
  display:block;
  width:100%;
  height:360px;
  object-fit:cover;
}
.bt-intro figcaption{
  padding:13px 17px;
  color:var(--bt-muted);
  font-size:12px;
}

/* BENTONITE TYPES */
.bt-type-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.bt-type-grid article{
  position:relative;
  min-height:220px;
  padding:27px;
  border:1px solid var(--bt-line);
  border-radius:12px;
  background:#fff;
  box-shadow:0 13px 33px rgba(15,53,78,.06);
}
.bt-type-grid article:before{
  content:"";
  position:absolute;
  top:0;left:0;
  width:65px;height:4px;
  background:var(--bt-orange);
}
.bt-type-grid b{
  color:var(--bt-orange);
  font-size:12px;
}
.bt-type-grid h3{
  margin:22px 0 10px;
  color:var(--bt-navy);
  font-size:25px;
}
.bt-type-grid p{
  margin:0;
  color:var(--bt-muted);
  line-height:1.7;
}

/* APPLICATIONS */
.bt-app-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.bt-app-grid article{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  border-radius:12px;
  background:#fff;
  box-shadow:0 15px 38px rgba(0,0,0,.12);
}
.bt-app-image{
  height:190px;
  background-image:
    linear-gradient(rgba(3,43,70,.04),rgba(3,43,70,.23)),
    var(--bt-card);
  background-size:cover;
  background-position:center;
}
.bt-app-body{padding:22px}
.bt-app-body span{
  color:var(--bt-orange);
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.bt-app-body h3{
  margin:8px 0 9px;
  color:var(--bt-navy);
  font-size:23px;
  line-height:1.22;
}
.bt-app-body p{
  min-height:92px;
  margin:0 0 16px;
  color:var(--bt-muted);
  font-size:14px;
  line-height:1.65;
}
.bt-app-body a{
  color:var(--bt-blue);
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

/* SELECTION */
.bt-selection-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
}
.bt-selection-grid article{
  display:flex;
  gap:16px;
  min-height:156px;
  padding:22px;
  border:1px solid var(--bt-line);
  border-radius:10px;
  background:#fff;
}
.bt-selection-grid b{
  flex:0 0 auto;
  color:var(--bt-orange);
  font-size:12px;
}
.bt-selection-grid h3{
  margin:0 0 7px;
  color:var(--bt-navy);
  font-size:18px;
}
.bt-selection-grid p{
  margin:0;
  color:var(--bt-muted);
  font-size:13px;
  line-height:1.65;
}

/* TECHNICAL DOCUMENTS */
.bt-tech{
  background:#eaf1f5;
}
.bt-two-col{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:58px;
  align-items:center;
}
.bt-doc-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
.bt-doc-cards article{
  min-height:120px;
  padding:24px;
  border-left:4px solid var(--bt-orange);
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,53,78,.06);
}
.bt-doc-cards strong{
  display:block;
  color:var(--bt-navy);
  font-size:24px;
}
.bt-doc-cards small{
  display:block;
  margin-top:10px;
  color:var(--bt-muted);
  line-height:1.5;
}

/* PACKING */
.bt-packing{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:52px;
  align-items:center;
}
.bt-text-link{
  display:inline-block;
  margin-top:8px;
  color:var(--bt-blue);
  font-weight:900;
  text-decoration:none;
}
.bt-packing-card{
  padding:38px 32px;
  border-radius:13px;
  background:var(--bt-navy);
  color:#fff;
  box-shadow:0 18px 42px rgba(7,49,78,.16);
}
.bt-packing-card span{
  color:var(--bt-orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
}
.bt-packing-card strong{
  display:block;
  margin:15px 0 9px;
  font-size:27px;
}
.bt-packing-card p{
  margin:0;
  color:#dbe7ee;
  line-height:1.65;
}

/* PROCESS */
.bt-process{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin:0;
  padding:0;
  list-style:none;
}
.bt-process li{
  position:relative;
  min-height:190px;
  padding:23px;
  border:1px solid var(--bt-line);
  border-radius:11px;
  background:#fff;
}
.bt-process b{
  color:var(--bt-orange);
  font-size:12px;
}
.bt-process h3{
  margin:25px 0 8px;
  color:var(--bt-navy);
  font-size:20px;
}
.bt-process p{
  margin:0;
  color:var(--bt-muted);
  font-size:13px;
  line-height:1.65;
}

/* FAQ */
.bt-faq{
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:55px;
}
.bt-faq h2{
  margin:0;
  color:var(--bt-navy);
  font-size:38px;
}
.bt-faq details{
  padding:18px 0;
  border-bottom:1px solid var(--bt-line);
}
.bt-faq summary{
  cursor:pointer;
  color:var(--bt-navy);
  font-weight:900;
}
.bt-faq details p{
  color:var(--bt-muted);
  line-height:1.7;
}

/* FINAL CTA */
.bt-final{
  padding:58px 0;
  background:var(--bt-deep);
  color:#fff;
}
.bt-final>.site-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
}
.bt-final span{
  color:var(--bt-orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
}
.bt-final h2{
  max-width:760px;
  margin:8px 0 6px;
  color:#fff;
  font-size:clamp(28px,3.5vw,42px);
}
.bt-final p{
  margin:0;
  color:#d8e5ed;
}
.bt-final a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 21px;
  border-radius:5px;
  background:var(--bt-orange);
  color:#fff;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
}

/* TABLET */
@media(max-width:1050px){
  .bt-qualifier>.site-container{grid-template-columns:1fr 1fr 1fr}
  .bt-app-grid,.bt-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bt-intro,.bt-two-col,.bt-packing,.bt-faq{grid-template-columns:1fr}
  .bt-process{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* MOBILE */
@media(max-width:700px){
  .bt-hero{min-height:auto}
  .bt-hero-inner{padding-top:58px;padding-bottom:54px}
  .bt-hero h1{font-size:clamp(37px,11vw,49px)}
  .bt-lead{font-size:16px}
  .bt-actions a{width:100%}
  .bt-proof span{font-size:11px}

  .bt-qualifier>.site-container{
    grid-template-columns:1fr;
    gap:13px;
    padding-top:23px;
    padding-bottom:23px;
  }
  .bt-qualifier p{
    padding:9px 0;
    border-top:1px solid rgba(255,255,255,.25);
  }

  .bt-section{padding:54px 0}
  .bt-intro img{height:260px}

  .bt-type-grid,
  .bt-app-grid,
  .bt-selection-grid,
  .bt-doc-cards,
  .bt-process{
    grid-template-columns:1fr;
  }

  .bt-app-body p{min-height:0}
  .bt-type-grid article,
  .bt-selection-grid article,
  .bt-process li{min-height:auto}

  .bt-final>.site-container{
    flex-direction:column;
    align-items:flex-start;
  }
  .bt-final a{width:100%}
}

/* v21.2.70 visual refinement */
.bt-type-grid article{
  min-height:0;
  padding:24px 27px 26px;
}

.bt-type-grid h3{
  margin:16px 0 9px;
  font-size:26px;
  line-height:1.15;
}

.bt-type-grid p{
  font-size:15px;
  line-height:1.65;
}

.bt-type-grid article:before{
  width:64px;
  height:4px;
}

.bt-soft:has(.bt-type-grid){
  padding-bottom:58px;
}

#bentonite-applications{
  padding-top:64px;
}

@media(max-width:700px){
  .bt-type-grid article{
    padding:22px;
  }

  .bt-soft:has(.bt-type-grid){
    padding-bottom:48px;
  }
}

/* Bentonite campaign hero conversion refinement */
.bentonite-campaign .bt-hero{
  min-height:515px;
}

.bentonite-campaign .bt-hero-inner{
  padding-top:58px;
  padding-bottom:52px;
}

@media(max-width:700px){
  .bentonite-campaign .bt-hero{
    min-height:auto;
  }
}
