/* ─── Homepage-specific styles ─── */

/* ─── TOPO DIVIDERS ─── */
.topo-divider{
  width:100%;
  display:block;
  height:88px;
  background-repeat:no-repeat;
  background-size:100% 100%;
  background-position:center;
  pointer-events:none;
}
.topo-divider.on-paper{background-color:var(--paper)}
.topo-divider.on-paper-2{background-color:var(--paper-2)}
.topo-divider.tall{height:120px}
.topo-divider.short{height:56px}

.topo-a{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'><g fill='%231e4870' stroke='none'><path d='M0 50 L80 32 L180 48 L280 22 L380 42 L490 18 L600 38 L720 18 L840 38 L940 24 L1040 42 L1130 30 L1200 46 L1200 80 L0 80 Z' opacity='.06'/><path d='M0 62 L110 48 L220 60 L330 38 L450 55 L580 38 L700 55 L820 34 L940 55 L1060 44 L1160 58 L1200 52 L1200 80 L0 80 Z' opacity='.10'/><path d='M0 72 L150 64 L290 72 L420 56 L545 68 L660 50 L780 66 L900 46 L1020 64 L1130 56 L1200 70 L1200 80 L0 80 Z' opacity='.13'/></g></svg>");
}
.topo-b{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'><g fill='%231e4870' stroke='none'><path d='M0 56 L70 38 L160 52 L260 28 L360 46 L470 20 L580 40 L700 24 L810 42 L920 26 L1030 46 L1140 32 L1200 50 L1200 80 L0 80 Z' opacity='.06'/><path d='M0 65 L100 52 L210 64 L320 42 L440 58 L560 40 L680 58 L800 36 L920 56 L1040 46 L1140 60 L1200 54 L1200 80 L0 80 Z' opacity='.10'/><path d='M0 74 L140 66 L280 74 L400 58 L520 70 L640 52 L760 68 L880 48 L1000 66 L1110 58 L1200 72 L1200 80 L0 80 Z' opacity='.13'/></g></svg>");
}
.topo-c{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'><g fill='%231e4870' stroke='none'><path d='M0 60 L100 42 L200 56 L300 30 L420 50 L540 24 L660 44 L780 28 L900 46 L1020 32 L1120 50 L1200 38 L1200 80 L0 80 Z' opacity='.06'/><path d='M0 68 L120 54 L240 65 L360 44 L480 60 L600 42 L720 60 L840 38 L960 58 L1080 50 L1180 62 L1200 58 L1200 80 L0 80 Z' opacity='.10'/><path d='M0 75 L160 68 L300 75 L420 60 L540 72 L660 54 L780 70 L900 50 L1020 68 L1130 60 L1200 74 L1200 80 L0 80 Z' opacity='.13'/></g></svg>");
}

/* HOME-ONLY: nav floats over the hero photo, sticks on scroll */
body[data-page="home"] .nav{
  background:transparent;
  backdrop-filter:none;
  border-bottom:0;
  position:fixed;
  top:0;left:0;right:0;
  z-index:50;
  transition:background .25s ease, border-color .25s ease, backdrop-filter .25s ease, box-shadow .25s ease;
}
body[data-page="home"] .nav.scrolled,
body[data-page="home"] .nav.mobile-open{
  background:rgba(246,244,239,.96);
  backdrop-filter:blur(12px) saturate(1.4);
  border-bottom:1px solid var(--rule);
}
/* burger icon is dark on transparent nav too */
body[data-page="home"] .nav-burger{color:var(--paper)}
body[data-page="home"] .nav.scrolled .nav-burger,
body[data-page="home"] .nav.mobile-open .nav-burger{color:var(--ink)}

/* HERO */
.hero{
  position:relative;
  overflow:hidden;
  min-height:760px;
  display:flex;
  align-items:center;
  padding:140px 0 80px;
}
.hero-bg{
  position:absolute;inset:0;
  background-image:url('images/hero-bg.png');
  background-size:cover;
  background-position:center right;
  background-repeat:no-repeat;
  z-index:0;
}
.hero-bg-tint{
  position:absolute;inset:0;
  background:linear-gradient(90deg,
    rgba(246,244,239,.92) 0%,
    rgba(246,244,239,.82) 32%,
    rgba(246,244,239,.55) 55%,
    rgba(246,244,239,.15) 78%,
    rgba(246,244,239,0) 100%);
  z-index:1;
  pointer-events:none;
}
.hero > .shell{position:relative;z-index:2;width:100%}
.hero-content{
  max-width:640px;
  display:flex;
  flex-direction:column;
}
.hero h1{
  margin:0;
  font-size:clamp(56px, 7.8vw, 116px);
  line-height:.98;
  letter-spacing:-.03em;
  font-weight:380;
  max-width:11ch;
  text-wrap:balance;
}
.hero-lede-block{
  margin-top:36px;
  max-width:46ch;
}
.hero-lede-block .lede{
  font-size:16px;
  line-height:1.55;
  color:var(--ink-2);
  margin:0;
  text-wrap:pretty;
  max-width:46ch;
}
.hero-actions{display:flex;gap:18px;align-items:center;margin-top:32px;flex-wrap:wrap}

/* TRUSTED BY */
.trusted{
  background:var(--paper-2);
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  padding:64px 0 0;
}
.trusted-head{
  text-align:center;
  margin-bottom:48px;
}
.trusted-eyebrow{
  display:flex;align-items:center;justify-content:center;gap:14px;
  font-family:var(--mono);
  font-size:11px;
  font-weight:500;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--spice);
  margin-bottom:16px;
}
.trusted-rule{
  display:inline-block;
  width:30px;
  height:1px;
  background:var(--spice);
  opacity:.7;
}
.trusted-title{
  font-family:var(--serif);
  font-size:clamp(28px, 3.5vw, 44px);
  font-weight:380;
  letter-spacing:-.02em;
  line-height:1.1;
  margin:0 auto;
  max-width:none;
  white-space:nowrap;
  color:var(--ink);
  text-wrap:balance;
}

.hero-credits{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  margin-top:0;
  border-top:1px solid var(--rule);
  background:transparent;
  position:relative;
}
.hero-credit{
  padding:34px 28px 30px;
  border-right:1px solid var(--rule);
  display:flex;flex-direction:column;gap:10px;
}
.hero-credit:last-child{border-right:0}
.hero-credit .num{
  font-family:var(--serif);
  font-size:clamp(44px, 5.2vw, 76px);
  line-height:.95;letter-spacing:-.025em;
  font-weight:380;
}
.hero-credit .num em{font-style:italic;color:var(--clay)}
.hero-credit .lab{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:6px}

/* WHO WE SERVE */
.serve-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);border-radius:var(--r-lg);
  overflow:hidden;
}
.serve-card{grid-column:span 2}
.serve-card:nth-child(4),
.serve-card:nth-child(5){grid-column:span 3}
.serve-card{
  background:var(--paper);
  padding:32px 28px;
  display:flex;flex-direction:column;gap:14px;
  transition:background .2s;
  position:relative;
}
.serve-card:hover{background:var(--paper-2)}
.serve-card .num{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ink-3);
}
.serve-card h3{
  font-family:var(--serif);font-size:24px;font-weight:400;letter-spacing:-.01em;
  margin:0;line-height:1.1;
}
.serve-card p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.55}
.serve-card .tag{
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--clay);
  margin-top:auto;padding-top:14px;
}

/* LEAKS */
.leaks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.leak{
  background:var(--paper);
  border:1px solid var(--rule);
  border-radius:var(--r-lg);
  padding:28px 26px 30px;
  display:flex;flex-direction:column;gap:14px;
  min-height:280px;
  transition:transform .2s ease, border-color .2s ease;
}
.leak:hover{transform:translateY(-2px);border-color:var(--rule-2)}
.leak-icon{
  width:42px;height:42px;border-radius:10px;
  background:var(--paper-2);
  border:1px solid var(--rule);
  display:flex;align-items:center;justify-content:center;
  color:var(--navy);
}
.leak .amount{
  font-family:var(--serif);font-size:34px;letter-spacing:-.02em;line-height:1;
  color:var(--ink);
}
.leak .amount em{font-style:italic;color:var(--clay);font-weight:400}
.leak .per{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-left:8px}
.leak h4{font-family:var(--serif);font-size:21px;font-weight:430;margin:0;letter-spacing:-.01em;line-height:1.15}
.leak p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2)}

/* ADD IT UP banner */
.addup{
  background:var(--ink);
  color:var(--paper);
  border-radius:22px;
  padding:40px 44px;
  margin:32px 0;
  position:relative;
  overflow:hidden;
}
.addup-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.addup .eyebrow{color:var(--spice)}
.addup-big{
  font-family:var(--serif);
  font-style:italic;
  font-weight:430;
  color:var(--spice);
  font-size:clamp(40px, 5.2vw, 68px);
  line-height:1;
  letter-spacing:-.025em;
  margin:10px 0 14px;
  white-space:nowrap;
}
.addup-big small{
  display:block;
  font-family:var(--mono);
  font-style:normal;
  font-weight:500;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(246,244,239,.55);
  margin-top:12px;
}
.addup h3{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(22px, 2.4vw, 30px);
  line-height:1.2;letter-spacing:-.012em;
  margin:0 0 12px;
  text-wrap:balance;
  color:rgba(246,244,239,.92);
  max-width:34ch;
}
.addup h3 em{font-style:italic;color:var(--spice);font-weight:400}
.addup .small{font-size:13px;color:rgba(246,244,239,.6);max-width:50ch;line-height:1.55}
.addup-cta .btn{padding:16px 24px;font-size:14px}
.addup-ridge{
  position:absolute;left:0;right:0;bottom:0;height:60%;
  opacity:.06;pointer-events:none;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'><path d='M0 200 L0 140 L120 80 L220 130 L340 50 L460 110 L580 30 L720 90 L840 60 L1000 120 L1100 70 L1200 110 L1200 200 Z' fill='%23f6f4ef'/></svg>") center bottom / cover no-repeat;
}

/* TIERS */
.tiers{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.tier{
  border:1px solid var(--rule);
  border-radius:var(--r-lg);
  background:var(--paper);
  padding:36px 32px 32px;
  display:flex;flex-direction:column;
  position:relative;
  transition:transform .2s ease, border-color .2s ease;
}
.tier:hover{transform:translateY(-2px)}
.tier.feature{background:var(--paper-2);border-color:var(--rule-2)}
.tier .tier-mark{
  display:flex;align-items:flex-end;gap:10px;margin-bottom:18px;height:64px;
}
.tier .tier-mark svg{height:100%;width:auto;color:var(--navy);opacity:.85}
.tier h3{
  font-family:var(--serif);font-size:36px;font-weight:400;margin:0;letter-spacing:-.02em;line-height:1;
}
.tier .stage{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--clay);
  margin:8px 0 16px;
}
.tier .for{
  font-size:14px;color:var(--ink-2);line-height:1.5;margin:0 0 22px;padding-bottom:22px;border-bottom:1px solid var(--rule);
}
.tier ul{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:11px}
.tier li{font-size:14px;color:var(--ink);padding-left:22px;position:relative;line-height:1.45}
.tier li::before{
  content:"";position:absolute;left:0;top:7px;
  width:11px;height:11px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none'><path d='M2 6 L9 6 M6 3 L9 6 L6 9' stroke='%23c8553d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") center no-repeat;
}
.tier .tier-cta{margin-top:auto}
.tier-badge{
  position:absolute;top:24px;right:24px;
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--clay);
  padding:5px 10px;border:1px solid var(--clay);border-radius:999px;
}

/* CALCULATOR */
.calc-tabs{
  display:flex;gap:4px;
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:999px;
  padding:4px;
  margin-bottom:18px;
  width:fit-content;
  position:relative;
}
.calc-tab{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 20px 10px 18px;
  font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.01em;
  color:var(--ink-2);
  border-radius:999px;
  cursor:pointer;
  transition:all .25s cubic-bezier(.4,0,.2,1);
  white-space:nowrap;
  position:relative;
}
.calc-tab svg{
  width:14px;height:14px;
  opacity:.55;
  transition:all .25s ease;
}
.calc-tab:hover{color:var(--ink)}
.calc-tab:hover svg{opacity:.85}
.calc-tab.on{
  background:var(--ink);color:var(--paper);
}
.calc-tab.on svg{opacity:1;color:var(--spice)}
.calc-wrap{
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
  display:grid;
  grid-template-columns:1.05fr 1fr;
  background:var(--paper);
}
.calc-left{
  background:var(--paper-2);
  padding:44px 44px 40px;
  display:flex;flex-direction:column;gap:36px;
}
.calc-right{
  background:var(--navy);
  color:var(--paper);
  padding:44px 44px 40px;
  display:flex;flex-direction:column;
}
.calc-control{display:flex;flex-direction:column;gap:14px}
.calc-control .lab-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.calc-control .name{
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);
}
.calc-control .val{
  font-family:var(--serif);font-size:28px;letter-spacing:-.01em;line-height:1;color:var(--ink);
  font-feature-settings:"tnum";white-space:nowrap;
}
.calc-control .val em{font-style:italic;color:var(--clay);font-weight:430}
.calc-control .range-row{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-top:6px}
.slider{
  -webkit-appearance:none;appearance:none;
  width:100%;height:4px;background:var(--rule-2);border-radius:999px;outline:none;
  cursor:pointer;
}
.slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:22px;height:22px;border-radius:50%;background:var(--clay);
  cursor:grab;border:3px solid var(--paper-2);
  box-shadow:0 0 0 1px var(--clay);
  transition:transform .15s;
}
.slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1)}
.slider::-moz-range-thumb{
  width:22px;height:22px;border-radius:50%;background:var(--clay);
  cursor:grab;border:3px solid var(--paper-2);
  box-shadow:0 0 0 1px var(--clay);
}

.calc-right .calc-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,244,239,.55);margin-bottom:24px}
.calc-line{
  display:flex;justify-content:space-between;align-items:baseline;gap:24px;
  padding:18px 0;border-bottom:1px solid rgba(246,244,239,.12);
}
.calc-line:last-of-type{border-bottom:0}
.calc-line .k{font-size:14px;color:rgba(246,244,239,.85)}
.calc-line .k small{display:block;color:rgba(246,244,239,.5);font-size:12px;margin-top:2px}
.calc-line .v{font-family:var(--serif);font-size:24px;letter-spacing:-.01em;color:var(--paper);font-feature-settings:"tnum"}
.calc-total{
  display:flex;justify-content:space-between;align-items:baseline;gap:24px;
  padding:22px 0 18px;margin-top:8px;border-top:2px solid rgba(246,244,239,.25);
}
.calc-total .k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,244,239,.65)}
.calc-total .v{
  font-family:var(--serif);font-size:54px;letter-spacing:-.025em;line-height:1;color:var(--spice);
  font-feature-settings:"tnum";font-weight:430;
}
.calc-roi{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;background:rgba(90,122,106,.25);border:1px solid rgba(90,122,106,.5);
  border-radius:999px;
  font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#cfe2d4;
  margin-top:18px;
}
.calc-foot{margin-top:auto;padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.calc-foot .btn{background:var(--paper);color:var(--ink)}
.calc-foot .btn:hover{background:var(--spice);color:var(--paper)}
.calc-foot .fine{font-size:12px;color:rgba(246,244,239,.55);max-width:32ch;line-height:1.45}

/* PROCESS */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.process-step{padding:34px 26px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:14px;position:relative}
.process-step:last-child{border-right:0}
.process-step .num{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--clay)}
.process-step h4{font-family:var(--serif);font-size:24px;font-weight:400;margin:0;letter-spacing:-.01em;line-height:1.1}
.process-step p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.55}

/* CASE STUDIES */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.case{
  border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden;background:var(--paper);
  display:flex;flex-direction:column;
  transition:transform .2s ease;
}
.case:hover{transform:translateY(-3px)}
.case .ph{border-radius:0;border:0;border-bottom:1px solid var(--rule);aspect-ratio:5/3}
.case .ph.case-img{
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  background-color:var(--paper-2);
  color:transparent;
}
.case .body{padding:28px;display:flex;flex-direction:column;gap:14px;flex:1}
.case .stage-line{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.case h3{font-family:var(--serif);font-size:24px;font-weight:430;margin:0;letter-spacing:-.01em;line-height:1.2}
.case .save{
  font-family:var(--serif);font-size:38px;letter-spacing:-.02em;color:var(--clay);font-weight:430;line-height:1;
  font-feature-settings:"tnum";margin-top:6px;
}
.case p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.55}
.case .meta{display:flex;gap:18px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-3);margin-top:auto;padding-top:14px;border-top:1px solid var(--rule)}

/* QUOTE — DEEP NAVY */
.quote-section-dark{
  background:var(--navy);
  color:var(--paper);
  padding:140px 0;
  position:relative;
  overflow:hidden;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
}
.quote-section-dark::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 400' preserveAspectRatio='xMidYMid slice'><g fill='%23f6f4ef' stroke='none'><path d='M0 340 L100 290 L220 320 L340 240 L460 290 L580 220 L700 270 L820 200 L940 250 L1060 220 L1180 280 L1200 260 L1200 400 L0 400 Z' opacity='.04'/><path d='M0 360 L130 330 L260 350 L380 290 L500 330 L620 280 L740 310 L860 260 L980 300 L1100 280 L1200 320 L1200 400 L0 400 Z' opacity='.05'/></g></svg>");
  background-size:cover;background-position:bottom;background-repeat:no-repeat;
}
.quote-section-dark .quote-block{position:relative;z-index:1}
.quote-section-dark .quote-block-centered{
  display:block;
  text-align:center;
  max-width:48ch;
  margin:0 auto;
}
.quote-section-dark .quote-block-centered blockquote{
  margin:0 auto;
  text-wrap:balance;
}
.quote-section-dark .quote-block-centered .quote-cite{
  justify-content:center;
}
.quote-section-dark blockquote{color:var(--paper) !important}
.quote-section-dark blockquote em{color:var(--paper) !important;font-style:italic}
.quote-section-dark .quote-cite .who span{color:rgba(246,244,239,.55) !important}
.quote-section-dark .quote-cite .who b{color:var(--paper) !important}

/* TESTIMONIAL */
.quote-block{
  display:grid;grid-template-columns:1fr 1.4fr;gap:64px;align-items:center;
}
.quote-block blockquote{
  font-family:var(--serif);font-size:34px;font-weight:380;line-height:1.2;letter-spacing:-.015em;
  margin:0;color:var(--ink);text-wrap:balance;
}
.quote-block blockquote em{font-style:italic;color:var(--clay)}
.quote-cite{margin-top:24px;display:flex;align-items:center;gap:14px}
.quote-cite .who{font-size:14px}
.quote-cite .who b{display:block;font-weight:500;color:var(--ink)}
.quote-cite .who span{color:var(--ink-3)}

/* FINAL CTA */
.final-cta{
  background:var(--paper-2);
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  padding:120px 0;
  text-align:center;
}
.final-cta h2{font-family:var(--serif);font-size:clamp(48px,7vw,90px);font-weight:380;letter-spacing:-.025em;line-height:1.02;margin:0;text-wrap:balance}
.final-cta h2 em{font-style:italic;color:var(--clay)}
.final-cta p{font-size:18px;color:var(--ink-2);margin:24px auto 36px;max-width:50ch}

/* Section header pattern */
.sec-head{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:48px;margin-bottom:56px}
.sec-head h2{
  font-family:var(--serif);font-weight:380;
  font-size:clamp(40px,5.5vw,72px);
  letter-spacing:-.025em;line-height:1.04;margin:14px 0 0;
  text-wrap:balance;
}
.sec-head h2 em{font-style:italic;color:var(--clay)}
@media (max-width:880px){
  .sec-head{grid-template-columns:1fr;gap:24px;align-items:start}
}
.sec-head .sub{color:var(--ink-2);max-width:38ch;font-size:16px;line-height:1.55}

/* responsive home */
@media (max-width:880px){
  .hero{min-height:560px;padding:48px 0}
  .hero h1{font-size:clamp(44px,11vw,76px);max-width:14ch}
  .hero-bg-tint{background:linear-gradient(180deg, rgba(246,244,239,.94) 0%, rgba(246,244,239,.86) 50%, rgba(246,244,239,.40) 100%)}
  .trusted{padding:48px 0 0}
  .trusted-head{margin-bottom:32px}
}
@media (max-width:1080px){
  .leaks-grid,.tiers,.cases{grid-template-columns:1fr 1fr}
  .serve-grid{grid-template-columns:1fr 1fr}
  .serve-card,
  .serve-card:nth-child(4),
  .serve-card:nth-child(5){grid-column:span 1}
  .serve-card:nth-child(5){grid-column:span 2}
  .hero-credits{grid-template-columns:1fr 1fr}
  .hero-credit:nth-child(2){border-right:0}
  .hero-credit:nth-child(1),.hero-credit:nth-child(2){border-bottom:1px solid var(--rule)}
  .calc-wrap{grid-template-columns:1fr}
  .process{grid-template-columns:1fr 1fr}
  .process-step:nth-child(2){border-right:0}
  .process-step:nth-child(1),.process-step:nth-child(2){border-bottom:1px solid var(--rule)}
  .quote-block{grid-template-columns:1fr;gap:24px}
  .addup{padding:36px}
  .addup-grid{grid-template-columns:1fr;gap:24px}
}
@media (max-width:680px){
  .leaks-grid,.tiers,.cases,.serve-grid{grid-template-columns:1fr}
  .serve-card,
  .serve-card:nth-child(4),
  .serve-card:nth-child(5){grid-column:span 1}
  .hero-credits{grid-template-columns:1fr}
  .hero-credit{border-right:0;border-bottom:1px solid var(--rule)}
  .hero-credit:last-child{border-bottom:0}
  .process{grid-template-columns:1fr}
  .process-step{border-right:0;border-bottom:1px solid var(--rule)}
  .process-step:last-child{border-bottom:0}
  .calc-left,.calc-right{padding:24px 20px}
  /* Trusted-by title can wrap on small phones */
  .trusted-title{white-space:normal}
}

/* Calculator small-screen fixes */
@media (max-width:540px){
  /* Tabs: allow wrap so all three are visible */
  .calc-tabs{
    width:100%;
    border-radius:var(--r-lg);
    padding:4px;
    flex-wrap:wrap;
    gap:4px;
  }
  .calc-tab{flex:1 1 auto;justify-content:center;padding:10px 10px;font-size:12px}
  /* Slider value label: smaller so it doesn't overflow */
  .calc-control .val{font-size:22px}
  /* Total: shrink the big number */
  .calc-total .v{font-size:38px}
  /* ROI pill: allow wrap */
  .calc-roi{flex-wrap:wrap;gap:6px}
  /* Add-it-up banner number */
  .addup-big{font-size:clamp(32px,9vw,54px);white-space:normal}
}
