/* MMT Acoustix shared stylesheet
   Every rule here used to be pasted inline into each page.
   Load it AFTER assets/css/main.css so these win the cascade.
   Edit this one file to restyle the whole site. */


/* ============================================================
   type system: Karla body, Montserrat headings (overrides main.css Inter)
   ============================================================ */
  :root{
    --default-font:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
    --body-font:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
    --nav-font:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
    --heading-font:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
  }
  body{font-family:var(--default-font);font-weight:400;
       -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
  h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);letter-spacing:-.01em}
  p,li,dd,dt,td,label,blockquote,figcaption,.btn,button,input,select,textarea{
       font-family:var(--default-font)}
  p,li,dd,dt,figcaption,blockquote{font-weight:400}
  b,strong{font-weight:700}
  /* in-body section headings */
  .mmt-subhead{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
    font-size:clamp(18.5px,1.65vw,23px);line-height:1.25;letter-spacing:-.01em;
    color:#381507;margin:38px 0 15px;padding-bottom:10px;border-bottom:1px solid #EDE6DC}
  .tab-pane > .mmt-subhead:first-child{margin-top:4px}
  /* bulleted spec lists */
  .mmt-blist{list-style:none;padding-left:0;margin:0 0 6px}
  .mmt-blist>li{position:relative;padding-left:21px;margin:0 0 11px;line-height:1.72}
  .mmt-blist>li::before{content:"";position:absolute;left:2px;top:.68em;
    width:7px;height:7px;border-radius:50%;background:#AB461D}
  .mmt-blist>li b,.mmt-blist>li strong{font-weight:700;color:#381507}
  /* tab pills */
  #pills-tab .nav-link{font-family:Karla,system-ui,sans-serif;font-weight:700;
    font-size:15.5px;letter-spacing:.01em;border-radius:6px;padding:11px 22px}
  @media(max-width:575.98px){
    .mmt-subhead{margin:30px 0 13px}
    #pills-tab .nav-link{font-size:14.5px;padding:10px 16px}
  }
  

/* ============================================================
   nav buttons
   ============================================================ */
.navbuttons {
    display: inline-block;
    overflow: auto;
    overflow-y: hidden;

    max-width: 100%;
    margin: 0 0 1em;

    white-space: nowrap;


}

.navbuttons LI {
    display: inline-block;
    vertical-align: top; margin:2% 0;
}

/* ============================================================
   bullet lists
   ============================================================ */
.mmt-blist{list-style:none;padding-left:0;margin:0}.mmt-blist>li{margin:0 0 1rem}

/* ============================================================
   case study template
   ============================================================ */
  /* ===== MMT case study - editorial template v1 ===== */
  .cs, .cs *{box-sizing:border-box}
  .cs{
    --ink:#231A15; --brown:#381507; --rust:#AB461D; --flame:#E2662A;
    --cream:#F7F3EE; --paper:#FFFFFF; --line:#E7E0D2; --muted:#6E635D;
    --dark:#161311; --darkline:#332C28; --darktext:#B5ABA4;
    font-family:Karla,system-ui,-apple-system,sans-serif; color:var(--ink);
  }
  .cs-wrap{max-width:1180px;margin:0 auto;padding-left:24px;padding-right:24px}
  .cs-sec{padding:96px 0}
  .cs-sec--cream{background:var(--cream)}
  .cs-sec--paper{background:var(--paper)}
  .cs-sec--dark{background:var(--dark)}
  .cs-sec--tight{padding:72px 0}

  .cs-chapter{display:flex;align-items:center;gap:14px;font-weight:700;font-size:12px;
    letter-spacing:.2em;text-transform:uppercase;color:var(--rust);margin:0 0 20px}
  .cs-chapter span{display:inline-block;width:34px;height:1px;background:var(--rust);opacity:.5}
  .cs-sec--dark .cs-chapter{color:var(--flame)}
  .cs-sec--dark .cs-chapter span{background:var(--flame)}

  .cs-h2{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
    font-size:clamp(27px,3.5vw,44px);line-height:1.12;letter-spacing:-.025em;
    color:var(--brown);margin:0 0 26px;max-width:22ch}
  .cs-h2--wide{max-width:30ch}
  .cs-sec--dark .cs-h2{color:#F2EDE8}

  .cs-body{font-size:clamp(15.5px,1.15vw,17px);line-height:1.78;color:#4A423D;margin:0 0 18px;max-width:64ch}
  .cs-body:last-child{margin-bottom:0}
  .cs-body strong{color:var(--brown);font-weight:700}
  .cs-sec--dark .cs-body{color:var(--darktext)}

  /* ---------- hero ---------- */
  .cs-hero{position:relative;min-height:clamp(460px,72vh,700px);display:flex;align-items:flex-end;overflow:hidden;background:#1a1512}
  .cs-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
  .cs-hero__scrim{position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(18,14,12,.42) 0%,rgba(18,14,12,.05) 32%,rgba(18,14,12,.62) 72%,rgba(18,14,12,.88) 100%)}
  .cs-hero__in{position:relative;z-index:2;width:100%;padding:0 0 52px}
  .cs-hero__kicker{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;
    color:#F0B48C;margin:0 0 16px}
  .cs-hero__h{font-family:Montserrat,system-ui,sans-serif;margin:0;color:#fff;
    letter-spacing:-.03em;line-height:1.04}
  .cs-hero__h b{display:block;font-weight:800;font-size:clamp(32px,5.4vw,66px)}
  .cs-hero__h i{display:block;font-style:normal;font-weight:600;
    font-size:clamp(17px,2vw,25px);letter-spacing:-.01em;color:#E8DCD2;margin-top:12px;max-width:26ch}
  .cs-hero__rail{display:flex;flex-wrap:wrap;gap:0 46px;margin:40px 0 0;padding:22px 0 0;
    border-top:1px solid rgba(255,255,255,.22);list-style:none}
  .cs-hero__rail li{padding:0}
  .cs-hero__rail b{display:block;font-weight:700;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:rgba(255,255,255,.58);margin:0 0 6px}
  .cs-hero__rail span{display:block;font-size:15.5px;color:#fff;font-weight:500}

  /* ---------- opening ---------- */
  .cs-open{display:grid;grid-template-columns:1fr 380px;gap:72px;align-items:start}
  .cs-lead{font-size:clamp(18.5px,1.7vw,23px);line-height:1.6;color:var(--brown);
    font-weight:500;letter-spacing:-.012em;margin:0 0 22px;max-width:34ch}
  .cs-dl{margin:0;border-top:1px solid var(--line)}
  .cs-dl__row{padding:15px 0;border-bottom:1px solid var(--line)}
  .cs-dl dt{font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--muted);margin:0 0 7px}
  .cs-dl dd{margin:0;font-size:15.5px;line-height:1.6;color:var(--ink)}
  .cs-dl ul{margin:0;padding:0;list-style:none}
  .cs-dl ul li{font-size:15px;line-height:1.55;padding:5px 0 5px 15px;position:relative;color:var(--ink)}
  .cs-dl ul li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;
    border-radius:50%;background:var(--rust)}

  /* ---------- split: text + image ---------- */
  .cs-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .cs-split__media{position:relative}
  .cs-split__media img{width:100%;height:100%;max-height:460px;object-fit:cover;display:block}
  .cs-split__cap{font-size:12.5px;letter-spacing:.04em;color:var(--muted);margin:12px 0 0}

  /* ---------- hairline entry rows ---------- */
  .cs-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 44px;margin:64px 0 0;padding:0}
  .cs-rows--c2{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 64px}
  .cs-rows>li+li{margin-top:0}
  .cs-rows>li{list-style:none;border-top:1px solid var(--line);padding:22px 0 0}
  .cs-rows b{display:block;font-weight:700;font-size:11.5px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--rust);margin:0 0 10px}
  .cs-rows p{margin:0;font-size:16px;line-height:1.65;color:#4A423D}

  /* ---------- approach (dark) ---------- */
  .cs-zones{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:56px 0 0;padding:0;list-style:none}
  .cs-zones>li{padding:0 40px;border-left:1px solid var(--darkline)}
  .cs-zones>li:first-child{padding-left:0;border-left:0}
  .cs-zones>li:last-child{padding-right:0}
  .cs-zones__n{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:38px;
    line-height:1;color:var(--flame);letter-spacing:-.03em;display:block;margin:0 0 16px}
  .cs-zones h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:20px;
    line-height:1.25;letter-spacing:-.015em;color:#F2EDE8;margin:0 0 4px}
  .cs-zones h3 em{display:block;font-style:normal;font-weight:500;font-size:13.5px;
    letter-spacing:.02em;color:#8E837C;margin-top:7px}
  .cs-zones ul{margin:20px 0 0;padding:0;list-style:none}
  .cs-zones ul li{font-size:15.5px;line-height:1.65;color:var(--darktext);
    padding:13px 0;border-top:1px solid var(--darkline)}
  .cs-zones ul li:last-child{padding-bottom:0}

  /* ---------- materials list ---------- */
  .cs-spec{margin:48px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
  .cs-spec>li{display:grid;grid-template-columns:320px 1fr;gap:56px;
    padding:26px 0;border-bottom:1px solid var(--line);align-items:baseline}
  .cs-spec h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:19px;
    line-height:1.3;letter-spacing:-.015em;color:var(--brown);margin:0}
  .cs-spec p{margin:0;font-size:16px;line-height:1.72;color:#4A423D;max-width:62ch}

  /* ---------- outcome ---------- */
  .cs-statement{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
    font-size:clamp(26px,3.4vw,42px);line-height:1.14;letter-spacing:-.025em;
    color:var(--brown);margin:0 0 10px;max-width:20ch}
  .cs-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0 44px;margin:60px 0 0;padding:0;list-style:none}
  .cs-out>li{border-top:2px solid var(--rust);padding:22px 0 0}
  .cs-out h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:17.5px;
    line-height:1.3;letter-spacing:-.01em;color:var(--brown);margin:0 0 10px}
  .cs-out p{margin:0;font-size:15.5px;line-height:1.7;color:#4A423D}

  /* ---------- highlights ---------- */
  .cs-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:72px;align-items:start}
  .cs-points{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
  .cs-points li{padding:19px 0;border-bottom:1px solid var(--line);
    font-size:16.5px;line-height:1.6;color:#3D352F}

  /* ---------- at a glance ---------- */
  .cs-facts{width:100%;border-collapse:collapse;margin:0}
  .cs-facts caption{caption-side:top;text-align:left;font-family:Montserrat,system-ui,sans-serif;
    font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;
    color:var(--muted);padding:0 0 18px}
  .cs-facts th,.cs-facts td{text-align:left;vertical-align:top;padding:16px 0;
    border-bottom:1px solid var(--line);font-size:15.5px;line-height:1.6}
  .cs-facts th{width:230px;font-weight:700;font-size:11.5px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--muted);padding-right:28px}
  .cs-facts tr:first-child th,.cs-facts tr:first-child td{border-top:1px solid var(--line)}

  /* ---------- related ---------- */
  .cs-more{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:44px 0 0;padding:0;list-style:none}
  .cs-more a{display:block;text-decoration:none;color:inherit}
  .cs-more figure{margin:0;overflow:hidden;background:#EDE6DE}
  .cs-more img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;
    transition:transform .5s cubic-bezier(.2,.7,.3,1)}
  .cs-more a:hover img{transform:scale(1.04)}
  .cs-more b{display:block;font-weight:700;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--rust);margin:18px 0 8px}
  .cs-more h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:18px;
    line-height:1.3;letter-spacing:-.015em;color:var(--brown);margin:0}
  .cs-more a:hover h3{color:var(--rust)}
  .cs-morehead{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;
    border-bottom:1px solid var(--line);padding-bottom:20px}
  .cs-morehead .cs-h2{margin:0}
  .cs-link{font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;
    color:var(--rust);text-decoration:none;white-space:nowrap;border-bottom:1px solid rgba(171,70,29,.35);padding-bottom:3px}
  .cs-link:hover{color:var(--brown);border-color:var(--brown)}

  /* ---------- responsive ---------- */
  @media(max-width:991.98px){
    .cs-sec{padding:72px 0}
    .cs-open{grid-template-columns:1fr;gap:44px}
    .cs-split{grid-template-columns:1fr;gap:36px}
    .cs-split__media img{max-height:380px}
    .cs-rows,.cs-rows--c2{grid-template-columns:1fr;gap:0;margin-top:44px}
    .cs-rows>li{padding:20px 0}
    .cs-zones{grid-template-columns:1fr;margin-top:40px}
    .cs-zones>li{padding:32px 0 0;border-left:0;border-top:1px solid var(--darkline)}
    .cs-zones>li:first-child{padding-top:0;border-top:0}
    .cs-spec>li{grid-template-columns:1fr;gap:10px}
    .cs-out{grid-template-columns:1fr;gap:0}
    .cs-out>li{padding:20px 0 26px}
    .cs-two{grid-template-columns:1fr;gap:34px}
    .cs-more{grid-template-columns:1fr;gap:34px}
  }
  @media(max-width:575.98px){
    .cs-wrap{padding-left:20px;padding-right:20px}
    .cs-sec{padding:56px 0}
    .cs-hero{min-height:clamp(400px,64vh,520px)}
    .cs-hero__in{padding-bottom:36px}
    .cs-hero__rail{gap:0;margin-top:28px;padding-top:18px}
    .cs-hero__rail li{width:100%;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.14)}
    .cs-hero__rail li:last-child{border-bottom:0;padding-bottom:0}
    .cs-facts th{width:auto;display:block;padding:14px 0 0;border-bottom:0}
    .cs-facts td{display:block;padding:4px 0 14px}
    .cs-facts tr:first-child td{border-top:0}
    .cs-morehead{flex-direction:column;align-items:flex-start;gap:14px}
  }
  

/* ============================================================
   page header strip
   ============================================================ */
/* ---------- page header strip ---------- */
.mmt-pagehead,.mmt-pagehead *{box-sizing:border-box}
.mmt-pagehead{background:#F7F3EE;border-bottom:1px solid #E7E0D2;
  padding-top:15px;padding-bottom:15px;margin:0}
.mmt-pagehead__crumb{font-family:Karla,system-ui,sans-serif;font-weight:600;font-size:13px;
  letter-spacing:.04em;color:#8A7F79;margin:0}
.mmt-pagehead__crumb a{color:#8A7F79;text-decoration:none}
.mmt-pagehead__crumb a:hover{color:#AB461D;text-decoration:underline}
@media(max-width:575.98px){
  .mmt-pagehead{padding-top:12px;padding-bottom:12px}
  .mmt-pagehead__crumb{font-size:12px}
}
/* taller variant, used on pages that print the page title in the strip */
.mmt-pagehead--title{padding-top:26px;padding-bottom:30px;margin:0 0 34px}
.mmt-pagehead--title .mmt-pagehead__crumb{margin:0 0 11px}
.mmt-pagehead__h{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(27px,3.3vw,43px);line-height:1.14;letter-spacing:-.02em;
  color:#381507;margin:0}
@media(max-width:575.98px){
  .mmt-pagehead--title{padding-top:26px;padding-bottom:24px;margin-bottom:26px}
  .mmt-pagehead--title .mmt-pagehead__crumb{font-size:12px;margin-bottom:8px}
}
/* the tall strip supplies its own top spacing, so the first section drops its own */
body:has(.mmt-pagehead--title) .main > section:first-of-type{padding-top:0}

/* ============================================================
   how we can help pages
   ============================================================ */
  /* ---------- how we can help pages ---------- */
  .hw-head{background:#F7F3EE;border-bottom:1px solid #E7E0D2;padding:62px 0 50px}
  .hw-head h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
    font-size:clamp(28px,4vw,50px);line-height:1.08;letter-spacing:-.03em;
    color:#381507;margin:0 0 18px;max-width:20ch}
  .hw-head__lead{font-family:Montserrat,system-ui,sans-serif;font-weight:600;
    font-size:clamp(17px,1.7vw,22px);line-height:1.4;letter-spacing:-.015em;
    color:#AB461D;margin:0 0 20px;max-width:34ch}
  .hw-head p.hw-head__p{font-size:clamp(15.5px,1.2vw,17px);line-height:1.74;color:#4A423D;margin:0;max-width:64ch}
  .hw-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 36px;
    margin:40px 0 0;padding:24px 0 0;border-top:1px solid #E7E0D2;list-style:none}
  .hw-rail b{display:block;font-weight:700;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:#8A7F79;margin:0 0 8px}
  .hw-rail span{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:700;
    font-size:16px;line-height:1.35;letter-spacing:-.01em;color:#381507}

  .hw-strip{width:100%;height:clamp(220px,30vw,380px);object-fit:cover;display:block}

  .hw-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;
    margin:48px 0 0;padding:0;list-style:none}
  .hw-steps>li{padding:0 32px;border-left:1px solid #E7E0D2}
  .hw-steps>li:first-child{padding-left:0;border-left:0}
  .hw-steps>li:last-child{padding-right:0}
  .hw-steps__n{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;
    font-size:32px;line-height:1;letter-spacing:-.03em;color:#AB461D;margin:0 0 14px}
  .hw-steps h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:17px;
    line-height:1.25;letter-spacing:-.015em;color:#381507;margin:0 0 10px}
  .hw-steps p{margin:0;font-size:15px;line-height:1.68;color:#4A423D}

  .hw-band{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center}
  .hw-band .cs-h2{margin-bottom:14px}
  .hw-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
  .hw-btn{display:inline-flex;align-items:center;border-radius:7px;padding:14px 26px;
    font-weight:700;font-size:15px;text-decoration:none;transition:filter .15s,transform .15s}
  .hw-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
  .hw-btn--solid{background:#AB461D;color:#fff}
  .hw-btn--solid:hover{color:#fff}
  .hw-btn--ghost{background:none;color:#381507;border:1px solid #D9CFC2}
  .hw-btn--ghost:hover{color:#AB461D;border-color:#AB461D}

  @media(max-width:991.98px){
    .hw-head{padding:48px 0 40px}
    .hw-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}
    .hw-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 0}
    .hw-steps>li:nth-child(odd){padding-left:0;border-left:0}
    .hw-band{grid-template-columns:1fr;gap:24px}
    .hw-actions{justify-content:flex-start}
  }
  @media(max-width:575.98px){
    .hw-rail{grid-template-columns:1fr;gap:0}
    .hw-rail li{padding:13px 0;border-bottom:1px solid #E7E0D2}
    .hw-rail li:last-child{border-bottom:0;padding-bottom:0}
    .hw-steps{grid-template-columns:1fr;gap:0}
    .hw-steps>li{padding:26px 0 0;border-left:0;border-top:1px solid #E7E0D2}
    .hw-steps>li:first-child{padding-top:0;border-top:0}
    .hw-btn{width:100%;justify-content:center}
  }
  

/* ============================================================
   article / blog template
   ============================================================ */
/* ===== MMT article template (banner + long-form editorial) ===== */
.mmt-banner,.mmt-banner *{box-sizing:border-box}
.mmt-banner{width:100%;margin:0;padding:0;line-height:0;background:#EDE7E1}
.mmt-banner img{display:block;width:100%;height:clamp(260px,36vw,520px);
  object-fit:cover;object-position:center;box-shadow:none;filter:none}

.mmt-article,.mmt-article *{box-sizing:border-box}
.mmt-article{max-width:772px;margin:0 auto;padding:0 22px 8px}
.mmt-article__head{padding:52px 0 10px;border-bottom:1px solid #EDE6DC;margin-bottom:40px}
.mmt-article p.mmt-article__eyebrow{font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:12px!important;
  line-height:1.4!important;letter-spacing:.2em;text-transform:uppercase;color:#AB461D;margin:0 0 16px}
.mmt-article__h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(30px,4vw,48px);line-height:1.1;letter-spacing:-.025em;color:#381507;margin:0}
.mmt-article p.mmt-article__standfirst{font-family:Karla,system-ui,sans-serif;font-weight:400;
  font-size:clamp(17px,1.5vw,21px)!important;line-height:1.55!important;color:#5B524E;margin:20px 0 0;max-width:64ch}
.mmt-article p.mmt-article__meta{font-family:Karla,system-ui,sans-serif;font-weight:500;font-size:13.5px!important;
  line-height:1.5!important;letter-spacing:.02em;color:#8A7F79;margin:26px 0 22px}

.mmt-article h2{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:clamp(22px,2.3vw,29px);line-height:1.22;letter-spacing:-.018em;
  color:#381507;margin:52px 0 18px;padding:0;border:0;background:none}
.mmt-article h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:clamp(17px,1.5vw,19.5px);line-height:1.3;color:#381507;
  margin:34px 0 12px;padding:0;border:0;background:none}
.mmt-article p{font-family:Karla,system-ui,sans-serif;font-weight:400;
  font-size:clamp(16.5px,1.25vw,18.5px)!important;line-height:1.72!important;color:#332f2d;margin:0 0 22px}
.mmt-article p b,.mmt-article p strong{font-weight:700;color:#381507}
.mmt-article a{color:#AB461D;text-decoration:underline;text-underline-offset:2px}
.mmt-article a:hover{color:#7d310f}

/* a quiet aside, ruled not boxed */
.mmt-aside{border-left:3px solid #AB461D;padding:2px 0 2px 22px;margin:34px 0 34px}
.mmt-article .mmt-aside p{font-size:clamp(17px,1.35vw,19.5px)!important;line-height:1.6!important;color:#4a4340;margin:0}

/* plain reference table */
.mmt-atable-wrap{overflow-x:auto;margin:28px 0 34px}
.mmt-atable{width:100%;border-collapse:collapse;
  font-family:Karla,system-ui,sans-serif;font-size:15.5px;
  font-variant-numeric:tabular-nums lining-nums}
.mmt-atable caption{caption-side:top;text-align:left;font-weight:700;font-size:13px;
  letter-spacing:.12em;text-transform:uppercase;color:#8A7F79;padding:0 0 12px}
.mmt-atable th,.mmt-atable td{text-align:left;padding:12px 16px 12px 0;
  border-bottom:1px solid #EDE6DC;vertical-align:top;color:#332f2d}
.mmt-atable thead th{font-weight:700;color:#381507;border-bottom:2px solid #E7E0D2;
  font-size:14px;letter-spacing:.02em}
.mmt-atable tbody tr:last-child td{border-bottom:0}

.mmt-banner img,.mmt-article img{box-shadow:none!important;filter:none!important}
.mmt-article img{display:block;width:100%;height:auto;border-radius:0;margin:30px 0}
.mmt-article figure{margin:34px 0}
.mmt-article figcaption{font-family:Karla,system-ui,sans-serif;font-size:14px;line-height:1.55;
  color:#8A7F79;margin-top:10px}
/* numbered steps and pointer lists */
.mmt-steps{counter-reset:mmtstep;list-style:none;margin:26px 0 32px;padding:0}
.mmt-steps>li{counter-increment:mmtstep;position:relative;padding:0 0 0 54px;margin:0 0 24px}
.mmt-steps>li::before{content:counter(mmtstep);position:absolute;left:0;top:1px;
  width:34px;height:34px;border-radius:50%;background:#AB461D;color:#fff;
  font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:15px;
  display:grid;place-items:center;font-variant-numeric:tabular-nums lining-nums}
.mmt-steps>li h3{margin:2px 0 8px}
.mmt-article .mmt-steps>li p{margin:0 0 10px}
.mmt-points{list-style:none;margin:22px 0 30px;padding:0}
.mmt-points>li{position:relative;padding:0 0 0 22px;margin:0 0 13px;
  font-family:Karla,system-ui,sans-serif;font-size:clamp(16.5px,1.25vw,18.5px);
  line-height:1.7;color:#332f2d}
.mmt-points>li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;
  border-radius:50%;background:#AB461D}
.mmt-points>li b,.mmt-points>li strong{font-weight:700;color:#381507}
@media(max-width:575.98px){
  .mmt-steps>li{padding-left:44px;margin-bottom:20px}
  .mmt-steps>li::before{width:28px;height:28px;font-size:14px}
}
@media(max-width:575.98px){
  .mmt-article{padding:0 18px 4px}
  .mmt-article__head{padding-top:34px;margin-bottom:30px}
  .mmt-article h2{margin:40px 0 14px}
  .mmt-aside{padding-left:16px;margin:28px 0}
  .mmt-atable th,.mmt-atable td{padding:10px 12px 10px 0}
}

/* ===== products used, with store links ===== */
.mmt-shop,.mmt-shop *{box-sizing:border-box}
.mmt-shop{border-top:1px solid #EDE6DC;margin:54px 0 8px;padding:34px 0 0}
.mmt-shop__h{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:clamp(18px,1.6vw,21px);line-height:1.25;color:#381507;margin:0 0 6px}
.mmt-article p.mmt-shop__sub{font-family:Karla,system-ui,sans-serif;font-size:15.5px!important;
  line-height:1.6!important;color:#8A7F79;margin:0 0 22px}
.mmt-shop__list{list-style:none;margin:0 0 30px;padding:0}
.mmt-shop__list li{border-bottom:1px solid #F1EBE3;padding:0;margin:0}
.mmt-shop__list li:last-child{border-bottom:0}
.mmt-shop__row{display:flex;align-items:baseline;justify-content:space-between;
  gap:18px;flex-wrap:wrap;padding:15px 0}
.mmt-article .mmt-shop__name{font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:16.5px;
  line-height:1.45;color:#381507;text-decoration:none;flex:1 1 260px}
.mmt-article .mmt-shop__name:hover{color:#AB461D;text-decoration:underline;text-underline-offset:2px}
.mmt-shop__spec{font-family:Karla,system-ui,sans-serif;font-weight:400;font-size:15px;
  color:#8A7F79;flex:0 1 auto;font-variant-numeric:tabular-nums lining-nums}
.mmt-shop__cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mmt-article .mmt-shop__btn{display:inline-flex;align-items:center;gap:9px;border-radius:7px;
  padding:15px 30px;font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:16px;
  text-decoration:none!important;border:0;transition:filter .15s,transform .15s}
.mmt-article .mmt-shop__btn:hover{filter:brightness(1.07);transform:translateY(-1px)}
.mmt-article .mmt-shop__btn:focus-visible{outline:3px solid #AB461D;outline-offset:3px}
.mmt-article .mmt-shop__btn--buy{background:#AB461D;color:#fff}
.mmt-article .mmt-shop__btn--buy:hover{color:#fff}
.mmt-article .mmt-shop__btn--alt{background:transparent;color:#381507;box-shadow:inset 0 0 0 2px #E7E0D2}
.mmt-article .mmt-shop__btn--alt:hover{color:#AB461D;box-shadow:inset 0 0 0 2px #AB461D}
.mmt-article p.mmt-shop__note{font-family:Karla,system-ui,sans-serif;font-size:14px!important;
  line-height:1.6!important;color:#8A7F79;margin:18px 0 0}
@media(max-width:575.98px){
  .mmt-shop{margin-top:42px}
  .mmt-shop__row{padding:13px 0}
  .mmt-shop__cta{flex-direction:column;align-items:stretch}
  .mmt-shop__btn{width:100%;justify-content:center}
}

/* ============================================================
   network table link
   ============================================================ */
  .network-table-link {
    text-decoration: none;
    color: #333;
    font-weight: 500;
  }
  .network-table-link:hover {
    color: #ec7625;
  }

/* ============================================================
   facts table
   ============================================================ */
.mmt-facts{width:100%;border-collapse:collapse;margin:18px 0;font-size:14px}.mmt-facts caption{caption-side:top;text-align:left;font-weight:700;font-size:16px;padding:0 0 10px}.mmt-facts th,.mmt-facts td{border:1px solid #e5e7eb;padding:9px 12px;text-align:left;vertical-align:top}.mmt-facts th{width:32%;background:#faf7f5;font-weight:700;white-space:nowrap}.mmt-facts-wrap{overflow-x:auto}

/* ============================================================
   spec table
   ============================================================ */
.mmt-spectable{width:100%;border-collapse:collapse;margin:18px 0 26px;font-size:14px}
.mmt-spectable caption{caption-side:top;text-align:left;font-weight:700;font-size:16px;background:#1E1E1E;color:#fff;padding:9px 14px;letter-spacing:.3px}
.mmt-spectable th,.mmt-spectable td{border-bottom:1px solid #e5e7eb;padding:9px 14px;text-align:left;vertical-align:top}
.mmt-spectable th{width:42%;font-weight:600;color:#555;background:#fafafa}
.mmt-spectable td{color:#1E1E1E}
.mmt-spectable-wrap{overflow-x:auto}
@media(max-width:575px){.mmt-spectable th{width:50%}}
.mmt-spectable td,.mmt-spectable th{font-variant-numeric:tabular-nums lining-nums}
/* padded variant */
.mmt-spectable-wrap--pad{padding:0 12px}

/* ============================================================
   application page template
   ============================================================ */
.mmt-app,.mmt-app *{box-sizing:border-box}
/* width and gutters come from Bootstrap's .container on the same element, so this
   content lines up with the nav, breadcrumb, FAQ and footer at every breakpoint.
   Markup: <div class="mmt-app container"> */
.mmt-app{margin-left:auto;margin-right:auto}
.mmt-app section{padding:64px 0 0}
.mmt-app section:first-of-type{padding-top:52px}

/* headings and copy */
.mmt-app h2{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:clamp(24px,2.6vw,34px);line-height:1.18;letter-spacing:-.02em;
  color:#381507;margin:0 0 16px;padding:0;border:0;background:none}
.mmt-app h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:clamp(17px,1.5vw,19.5px);line-height:1.3;letter-spacing:-.01em;
  color:#381507;margin:0 0 8px;padding:0;border:0;background:none}
.mmt-app p{font-family:Karla,system-ui,sans-serif;font-weight:400;
  font-size:clamp(16px,1.2vw,17.5px)!important;line-height:1.7!important;
  color:#332f2d;margin:0 0 20px;max-width:74ch}
.mmt-app a{color:#AB461D;text-decoration:underline;text-underline-offset:2px}
.mmt-app a:hover{color:#7d310f}
.mmt-app__lede p{font-size:clamp(17px,1.45vw,20px)!important;line-height:1.6!important;color:#4a4340;max-width:64ch}

/* zone grid: image, heading, text. no card, no border, no shadow */
.mmt-zones{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 32px;margin:34px 0 0;padding:0;list-style:none}
.mmt-zones>li{margin:0}
.mmt-zones img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;
  margin:0 0 16px;border-radius:0;box-shadow:none!important;filter:none!important;background:#EDE7E1}
.mmt-zones p{font-size:16px!important;line-height:1.62!important;color:#5B524E;margin:0}
@media(max-width:900px){.mmt-zones{grid-template-columns:repeat(2,1fr);gap:32px 24px}}
@media(max-width:575.98px){.mmt-zones{grid-template-columns:1fr;gap:28px}}

/* layered system: numbered, with an image per step */
.mmt-layers{counter-reset:mmtlayer;list-style:none;margin:32px 0 0;padding:0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:34px 32px}
.mmt-layers>li{counter-increment:mmtlayer;margin:0;position:relative}
.mmt-layers img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;
  margin:0 0 16px;box-shadow:none!important;filter:none!important;background:#EDE7E1}
.mmt-layers h3{display:flex;align-items:baseline;gap:11px}
.mmt-layers h3::before{content:counter(mmtlayer);flex:0 0 auto;
  font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:.1em;
  color:#AB461D}
.mmt-layers p{font-size:16px!important;line-height:1.62!important;color:#5B524E;margin:0}
@media(max-width:900px){.mmt-layers{grid-template-columns:1fr;gap:28px}}

/* diagram sits full width under the layers */
.mmt-app__diagram{margin:38px 0 0}
.mmt-app__diagram img{display:block;width:100%;height:auto;box-shadow:none!important;background:#F7F3EE}
.mmt-app__cap{font-family:Karla,system-ui,sans-serif;font-size:14px!important;line-height:1.5!important;
  color:#8A7F79;margin:12px 0 0!important}

/* two column prose + aside */
.mmt-app__split{display:grid;grid-template-columns:1.55fr 1fr;gap:44px;align-items:start}
@media(max-width:900px){.mmt-app__split{grid-template-columns:1fr;gap:28px}}

/* client logos */
.mmt-logos{display:flex;flex-wrap:wrap;align-items:center;gap:14px 46px;margin:28px 0 0;padding:0;list-style:none}
.mmt-logos li{margin:0}
.mmt-logos img{display:block;height:52px;width:auto;max-width:170px;object-fit:contain;
  box-shadow:none!important;filter:grayscale(1);opacity:.72;transition:filter .18s,opacity .18s}
.mmt-logos img:hover{filter:none;opacity:1}
@media(max-width:575.98px){.mmt-logos{gap:12px 28px}.mmt-logos img{height:40px}}

/* outcomes / mistakes as pointers, never boxes */
.mmt-app__two{display:grid;grid-template-columns:1fr 1fr;gap:6px 46px;margin:26px 0 0}
@media(max-width:760px){.mmt-app__two{grid-template-columns:1fr}}
.mmt-app .mmt-points>li{font-size:16.5px;line-height:1.65;margin:0 0 15px}
.mmt-app .mmt-points>li b,.mmt-app .mmt-points>li strong{color:#381507}

/* eyebrow and standfirst, same treatment as the article template */
.mmt-app p.mmt-article__eyebrow{font-family:Karla,system-ui,sans-serif;font-weight:700;
  font-size:12px!important;line-height:1.4!important;letter-spacing:.2em;text-transform:uppercase;
  color:#AB461D;margin:0 0 14px}
.mmt-app .mmt-article__h1{margin:0 0 18px}

/* a linked heading should read as a heading, not as body copy */
.mmt-zones h3 a,.mmt-layers h3 a{color:#381507;text-decoration:none}
.mmt-zones h3 a:hover,.mmt-layers h3 a:hover{color:#AB461D;text-decoration:underline;text-underline-offset:3px}

/* the shared spec table is built for 3 columns; these pages use 4 */
.mmt-app .mmt-spectable{min-width:720px}
.mmt-app .mmt-spectable th{width:auto}
.mmt-app .mmt-spectable thead th:nth-child(1){width:25%}
.mmt-app .mmt-spectable thead th:nth-child(2){width:33%}
.mmt-app .mmt-spectable thead th:nth-child(3){width:14%}
.mmt-app .mmt-spectable thead th:nth-child(4){width:28%}
.mmt-app .mmt-spectable tbody th{font-weight:600;background:none}

/* key facts strip under the H1 */
.mmt-app__facts{display:flex;flex-wrap:wrap;gap:0;margin:30px 0 0;padding:0;list-style:none;
  border-top:1px solid #E7E0D2;border-bottom:1px solid #E7E0D2}
.mmt-app__facts>li{flex:1 1 200px;padding:18px 26px 18px 0;margin:0}
.mmt-app__facts b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(19px,1.7vw,23px);line-height:1.15;color:#381507;letter-spacing:-.01em}
.mmt-app__facts span{display:block;font-family:Karla,system-ui,sans-serif;font-size:14px;
  line-height:1.45;color:#8A7F79;margin-top:5px}

/* ============================================================
   CTA band
   ============================================================ */
.mmt-cta,.mmt-cta *{box-sizing:border-box}
.mmt-cta{background:#181818;border-top:3px solid #AB461D;padding:74px 24px 80px;margin:56px 0 0;width:100%}
.mmt-cta__in{max-width:1180px;margin:0 auto;text-align:center}
.mmt-cta__eyebrow{font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:12.5px;
  letter-spacing:.22em;text-transform:uppercase;color:#E2662A;margin:0 0 18px}
.mmt-cta__h{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:clamp(27px,3.4vw,46px);
  line-height:1.12;letter-spacing:-.02em;color:#F0ECE8;margin:0 0 20px}
.mmt-cta__p{font-family:Karla,system-ui,sans-serif;font-weight:400;font-size:clamp(15px,1.15vw,17px);
  line-height:1.7;color:#A8A8A8;max-width:62ch;margin:0 auto 34px}
.mmt-cta__row{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}
.mmt-cta__btn{display:inline-flex;align-items:center;gap:10px;border-radius:7px;padding:15px 30px;
  font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:16px;text-decoration:none;
  border:0;transition:filter .15s,transform .15s}
.mmt-cta__btn:hover{filter:brightness(1.07);transform:translateY(-1px)}
.mmt-cta__btn:focus-visible{outline:3px solid #F0ECE8;outline-offset:3px}
.mmt-cta__btn i{font-size:20px;line-height:1}
.mmt-cta__wa{background:#65D071;color:#0B2E14}
.mmt-cta__wa:hover{color:#0B2E14}
.mmt-cta__mail{background:#AB461D;color:#fff}
.mmt-cta__mail:hover{color:#fff}
@media(max-width:575.98px){
  .mmt-cta{padding:52px 20px 56px}
  .mmt-cta__row{flex-direction:column}
  .mmt-cta__btn{width:100%;justify-content:center;padding:16px 22px}
  .mmt-cta__p{margin-bottom:28px}
}

/* ============================================================
   FAQ accordion
   ============================================================ */
.mmt-faq,.mmt-faq *{box-sizing:border-box}
.mmt-faq{padding-top:64px;padding-bottom:24px}
/* doubled class = specificity 0,2,0. These pages carry a second design-system class
   on the same heading; inline order used to decide it, the shared sheet cannot rely on that. */
.mmt-faq__h.mmt-faq__h,.mmt-faq>h2:not(.mmt-subhead){font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(26px,3.2vw,42px);line-height:1.15;letter-spacing:-.02em;
  color:#381507;margin:0 0 34px}
.mmt-faq details{border-bottom:1px solid #E7E0D2}
.mmt-faq details:first-of-type{border-top:1px solid #E7E0D2}
.mmt-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;
  cursor:pointer;list-style:none;padding:26px 4px}
.mmt-faq summary::-webkit-details-marker{display:none}
.mmt-faq summary h3.mmt-faq-q{font-family:Karla,system-ui,sans-serif;font-weight:700;
  font-size:clamp(15px,1.25vw,17.5px);line-height:1.45;color:#381507;margin:0;flex:1 1 auto}
.mmt-faq summary::after{content:"+";flex:0 0 auto;width:34px;height:34px;border-radius:50%;
  border:2px solid #E7E0D2;color:#AB461D;font-family:Karla,system-ui,sans-serif;font-weight:700;
  font-size:20px;line-height:1;display:grid;place-items:center;transition:border-color .15s,background .15s}
.mmt-faq summary:hover::after{border-color:#AB461D;background:#FCF6F2}
.mmt-faq summary:focus-visible{outline:3px solid #AB461D;outline-offset:3px;border-radius:6px}
.mmt-faq details[open] summary::after{content:"\2212";border-color:#AB461D}
.mmt-faq details[open] summary h3.mmt-faq-q{color:#AB461D}
.mmt-faq details > p{font-family:Karla,system-ui,sans-serif;font-weight:400;
  font-size:clamp(14.5px,1.1vw,16px);line-height:1.75;color:#4a4340;
  margin:0;padding:0 62px 30px 4px;max-width:88ch}
@media(max-width:575.98px){
  .mmt-faq{padding-top:44px;padding-bottom:16px}
  .mmt-faq summary{padding:20px 2px;gap:14px}
  .mmt-faq summary::after{width:28px;height:28px;font-size:17px}
  .mmt-faq details > p{padding:0 0 24px 2px}
}

/* ===== MMT product-detail styles (pd-) — keep this whole block ===== */
/* pd-block-v3 */

/* ================= product detail pages (pd-) ================= */
.pd-hero{padding:52px 0 60px;background:#fff}
.pd-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}

.pd-gal{position:sticky;top:24px}
.pd-gal__main{width:100%;max-width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#F2EFEA}
.pd-thumbs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:10px 0 0;padding:0;list-style:none}
.pd-thumb{display:block;width:100%;padding:0;line-height:0;border:1px solid #E7E0D2;background:#F2EFEA;cursor:pointer;transition:border-color .15s}
.pd-thumb img{width:100%;max-width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.pd-thumb:hover{border-color:#C9A78E}
.pd-thumb[aria-current="true"]{border-color:#AB461D;box-shadow:inset 0 0 0 1px #AB461D}
.pd-thumb:focus-visible{outline:2px solid #AB461D;outline-offset:2px}

.pd-eyebrow{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#AB461D;margin:0 0 14px}
.pd-h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:clamp(26px,3.1vw,40px);
  line-height:1.1;letter-spacing:-.025em;color:#381507;margin:0 0 16px}
.pd-lead{font-size:clamp(15.5px,1.2vw,17px);line-height:1.72;color:#4A423D;margin:0 0 24px;max-width:60ch}

.pd-key{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:0;
  border-top:1px solid #E7E0D2}
.pd-key>div{padding:14px 0;border-bottom:1px solid #E7E0D2}
.pd-key dt{font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8A7F79;margin:0 0 6px}
.pd-key dd{margin:0;font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:16px;
  line-height:1.35;letter-spacing:-.01em;color:#381507}

.pd-std{display:flex;flex-wrap:wrap;gap:8px 22px;margin:22px 0 0;padding:0;list-style:none}
.pd-std li{position:relative;padding-left:14px;font-size:14px;font-weight:600;color:#4A423D}
.pd-std li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:#AB461D}

.pd-btns{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}
.pd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;
  padding:14px 24px;font-weight:700;font-size:14.5px;text-decoration:none;border:1px solid transparent;
  transition:filter .15s,transform .15s,background .15s,color .15s}
.pd-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
.pd-btn--solid{background:#AB461D;color:#fff}
.pd-btn--solid:hover{color:#fff}
.pd-btn--wa{background:#65D071;color:#0B2E14}
.pd-btn--wa:hover{color:#0B2E14}
.pd-btn--ghost{background:none;color:#381507;border-color:#D9CFC2}
.pd-btn--ghost:hover{color:#AB461D;border-color:#AB461D}
.pd-note{margin:18px 0 0;font-size:13.5px;color:#6E635D}

.pd-grades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin:0 0 44px;
  padding:0;list-style:none;border-top:1px solid #E7E0D2}
.pd-grades>li{padding:20px 0;border-bottom:1px solid #E7E0D2}
.pd-grades b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:20px;
  letter-spacing:-.02em;color:#AB461D;margin:0 0 6px}
.pd-grades span{display:block;font-size:14.5px;line-height:1.6;color:#4A423D}

.pd-shots{margin:44px 0 0}
.pd-shots figure{margin:0 0 28px}
.pd-shots figure:last-child{margin-bottom:0}
.pd-shots img{width:100%;max-width:100%;height:auto;display:block;background:#F2EFEA}
.pd-shots figcaption{margin:10px 0 0;font-size:13px;letter-spacing:.02em;color:#8A7F79}

@media(max-width:991.98px){
  .pd-hero{padding:40px 0 48px}
  .pd-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .pd-gal{position:static}
  .pd-grades{grid-template-columns:1fr;gap:0}
  .pd-shots figure{margin-bottom:22px}
}
@media(max-width:575.98px){
  .pd-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pd-key{grid-template-columns:1fr;gap:0}
  .pd-btn{width:100%}
}

/* ---- product detail: editorial prose (pd- additions, 14 Sep) ---- */
.pd-intro{max-width:none}
.pd-intro>*+*{margin-top:0}
.pd-intro .cs-body{max-width:70ch}
.pd-intro--tight .cs-rows{margin-top:38px}

.pd-sub{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:15px;
  letter-spacing:-.01em;color:#381507;margin:22px 0 8px}

.pd-list{margin:0;padding:0;list-style:none}
.pd-list li{position:relative;padding:0 0 0 17px;font-size:16px;line-height:1.72;
  color:#4A423D;max-width:64ch}
.pd-list li+li{margin-top:11px}
.pd-list li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;
  border-radius:50%;background:#C9A78E}
.pd-list b,.pd-list strong{color:#381507;font-weight:700}

.cs-spec>li>div>*+*{margin-top:16px}
.cs-spec>li>div .cs-body{margin-bottom:0;max-width:62ch}
.cs-spec>li>div .pd-list li{font-size:15.5px}

.pd-fig{margin:18px 0 0}
.pd-fig img{width:100%;max-width:100%;display:block;background:#F2EFEA}

.pd-tablewrap{overflow-x:auto;margin:0 0 30px}
.cs-facts--grid th,.cs-facts--grid td{padding-right:22px}
.cs-facts--grid thead th{width:auto;border-bottom:1px solid #D9CFC2;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8A7F79}
.cs-facts--grid tbody th{width:auto;text-transform:none;letter-spacing:0;
  font-size:15px;color:#381507}
.cs-sec .cs-facts+.cs-facts{margin-top:38px}

.pd-cert{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin:34px 0 0}
.pd-cert figure{margin:0}
.pd-cert img{width:100%;max-width:100%;display:block;border:1px solid #E7E0D2;background:#fff}

@media(max-width:767.98px){
  .pd-cert{grid-template-columns:1fr}
  .pd-list li{font-size:15.5px}
  .cs-facts--grid thead{display:none}
  .cs-facts--grid tbody th,.cs-facts--grid tbody td{display:block;width:auto}
}
.pd-cert--one{grid-template-columns:minmax(0,520px)}
.pd-banner{width:100%;max-width:100%;height:auto;display:block;background:#F2EFEA}
.pd-gal__main--tall{aspect-ratio:4/5}
.cs-note{margin:16px 0 0;font-size:13.5px;line-height:1.7;color:#6E635D;max-width:74ch}

/* ---- product detail additions, 12 Sep late ---- */
.pd-h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:clamp(17px,1.4vw,21px);
  letter-spacing:-.018em;color:#381507;margin:52px 0 6px}
.cs-sec .cs-wrap>.pd-h3:first-of-type{margin-top:44px}

.pd-list--inline{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 12px}
.pd-list--inline li{padding:6px 13px;border:1px solid #E7E0D2;border-radius:999px;background:#fff;
  font-weight:700;font-size:13.5px;line-height:1.2;color:#381507;max-width:none}
.pd-list--inline li+li{margin-top:0}
.pd-list--inline li::before{display:none}

.pd-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin:0;padding:0;
  list-style:none;border-top:1px solid #E7E0D2}
.pd-docs>li{display:flex;flex-direction:column;padding:22px 0 24px;border-bottom:1px solid #E7E0D2}
.pd-docs b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:17px;
  letter-spacing:-.015em;color:#381507;margin:0 0 7px}
.pd-docs p{margin:0 0 16px;font-size:14.5px;line-height:1.62;color:#4A423D}
.pd-dl{display:inline-flex;align-items:center;gap:8px;margin-top:auto;align-self:flex-start;
  padding:10px 18px;border:1px solid #D9CFC2;border-radius:6px;background:#fff;
  font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;
  color:#381507;text-decoration:none;transition:border-color .15s,color .15s}
.pd-dl:hover{border-color:#AB461D;color:#AB461D}

@media(max-width:991.98px){
  .pd-docs{grid-template-columns:1fr;gap:0}
  .pd-h3{margin-top:40px}
}
.pd-links{margin:30px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px 34px}
.pd-links li{font-size:15px;line-height:1.6}
.pd-links .cs-link{white-space:normal}

/* ================= application pages (app-) ================= */
.app-banner{width:100%;max-width:100%;height:auto;display:block;background:#F2EFEA}

.app-head{padding:56px 0 64px;background:#fff}
.app-h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(28px,3.6vw,46px);line-height:1.08;letter-spacing:-.028em;
  color:#381507;margin:0 0 18px;max-width:22ch}
.app-lead{font-size:clamp(16px,1.3vw,18.5px);line-height:1.7;color:#4A423D;margin:0 0 30px;max-width:64ch}
.app-key{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 34px}
.cs-chapter--plain{margin-bottom:16px}

/* the layer stack: image + role + published spec, in order */
.app-stack{margin:52px 0 0;padding:0;list-style:none;counter-reset:app}
.app-stack>li{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:40px;
  align-items:start;padding:34px 0;border-top:1px solid #E7E0D2}
.app-stack>li:last-child{border-bottom:1px solid #E7E0D2}
.app-stack figure{margin:0}
.app-stack figure img{width:100%;max-width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#F2EFEA}
.app-stack__n{font-weight:700;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  color:#AB461D;margin:0 0 9px}
.app-stack__t h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(19px,1.7vw,24px);letter-spacing:-.02em;color:#381507;margin:0 0 12px}
.app-stack__t h3 a{color:inherit;text-decoration:none;border-bottom:1px solid #D9CFC2}
.app-stack__t h3 a:hover{color:#AB461D;border-color:#AB461D}
.app-stack__t p{margin:0 0 12px;font-size:16px;line-height:1.72;color:#4A423D;max-width:62ch}
.app-stack__s{font-size:14.5px !important;line-height:1.7 !important;color:#6E635D !important;
  margin:0 !important;padding-top:12px;border-top:1px solid #EFE9DD}

/* zone blocks: image beside the products that go on that surface */
.app-zones{margin:48px 0 0;padding:0;list-style:none}
.app-zones>li{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:44px;
  align-items:start;padding:36px 0;border-top:1px solid #E7E0D2}
.app-zones>li:last-child{border-bottom:1px solid #E7E0D2}
.app-zones figure{margin:0}
.app-zones figure img{width:100%;max-width:100%;aspect-ratio:16/10;object-fit:cover;display:block;background:#F2EFEA}
.app-zones h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(20px,1.8vw,26px);letter-spacing:-.02em;color:#381507;margin:0 0 12px}
.app-zones .cs-body{margin-bottom:18px}
.app-zones .pd-list li{font-size:15.5px}


@media(max-width:991.98px){
  .app-head{padding:40px 0 48px}
  .app-key{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-stack>li,.app-zones>li{grid-template-columns:minmax(0,1fr);gap:22px;padding:28px 0}
  .app-stack figure img{aspect-ratio:16/9}
}
@media(max-width:575.98px){
  .app-key{grid-template-columns:1fr}
  .app-h1{max-width:none}
}

/* inline links inside application prose, spec lines and bullet lists.
   cs-link is the small-caps standalone style and must not be used here. */
.app-stack__s a,
.app-zones .pd-list a,
.app-zones .cs-body a{font:inherit;color:#381507;text-decoration:none;
  border-bottom:1px solid #D9CFC2;transition:color .15s,border-color .15s}
.app-stack__s a:hover,
.app-zones .pd-list a:hover,
.app-zones .cs-body a:hover{color:#AB461D;border-color:#AB461D}

/* the mistakes band on the dark section. cs-zones is built for exactly three
   items in one row, so a five-item list needs its own grid. */
.app-mistakes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 56px;margin:52px 0 0;padding:0;list-style:none}
.app-mistakes>li{padding:26px 0;border-top:1px solid var(--darkline)}
.app-mistakes h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:18.5px;letter-spacing:-.015em;color:#F2EDE8;margin:0 0 9px}
.app-mistakes p{margin:0;font-size:15.5px;line-height:1.68;color:var(--darktext);max-width:54ch}
@media(max-width:767.98px){
  .app-mistakes{grid-template-columns:1fr;gap:0}
  .app-mistakes>li{padding:22px 0}
}

/* cs-link carries white-space:nowrap, which is fine for a short standalone
   link but pushes a long one past the viewport on a phone. Let it wrap. */
.cs-note .cs-link,
.cs-body .cs-link,
.app-head .cs-link,
.cs-sec .cs-wrap > p .cs-link{white-space:normal}

/* plain inline links in application prose. a:not([class]) matches only the
   bare anchors written in body copy, so cs-link, pd-btn and pd-dl keep theirs. */
.cs-sec a:not([class]),
.app-head a:not([class]){font:inherit;color:#381507;text-decoration:none;
  border-bottom:1px solid #D9CFC2;transition:color .15s,border-color .15s}
.cs-sec a:not([class]):hover,
.app-head a:not([class]):hover{color:#AB461D;border-color:#AB461D}
.cs-sec--dark a:not([class]){color:#F2EDE8;border-bottom-color:rgba(242,237,232,.4)}
.cs-sec--dark a:not([class]):hover{color:#fff;border-bottom-color:#fff}

/* ================= legal / policy pages (lg-) ================= */
.lg-head{background:#F7F3EE;border-bottom:1px solid #E7E0D2;padding:60px 0 48px}
.lg-h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(28px,3.9vw,48px);line-height:1.08;letter-spacing:-.03em;
  color:#381507;margin:0 0 18px;max-width:20ch}
.lg-lead{font-size:clamp(15.5px,1.2vw,17.5px);line-height:1.72;color:#4A423D;margin:0;max-width:66ch}
.lg-lead a{color:#381507;text-decoration:none;border-bottom:1px solid #D9CFC2;
  transition:color .15s,border-color .15s}
.lg-lead a:hover{color:#AB461D;border-color:#AB461D}
.lg-meta{margin:28px 0 0;padding:18px 0 0;border-top:1px solid #E7E0D2;
  display:flex;flex-wrap:wrap;gap:10px 42px;list-style:none}
.lg-meta li{font-size:13.5px;line-height:1.55;color:#5C534D}
.lg-meta b{display:block;font-weight:700;font-size:11.5px;letter-spacing:.13em;
  text-transform:uppercase;color:#AB461D;margin:0 0 5px}

/* body: sticky contents rail beside the prose */
.lg-wrap{display:grid;grid-template-columns:minmax(0,240px) minmax(0,780px);gap:0 76px;
  justify-content:center;align-items:start;padding:0 0 4px}
.lg-toc{position:sticky;top:96px}
.lg-toc__h{font-weight:700;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
  color:#8A7F79;margin:0 0 14px}
.lg-toc ol{margin:0;padding:0;list-style:none;counter-reset:lgtoc;
  border-top:1px solid #E7E0D2}
.lg-toc li{counter-increment:lgtoc;border-bottom:1px solid #E7E0D2}
.lg-toc a{display:grid;grid-template-columns:26px 1fr;gap:8px;padding:11px 0;
  font-size:14px;line-height:1.45;color:#4A423D;text-decoration:none;transition:color .15s}
.lg-toc a::before{content:counter(lgtoc,decimal-leading-zero);font-weight:700;font-size:11.5px;
  color:#C0B4A6;padding-top:2px}
.lg-toc a:hover{color:#AB461D}
.lg-toc a:hover::before{color:#AB461D}

.lg-body{max-width:74ch;counter-reset:lgsec}
.lg-sec{padding:0 0 40px;scroll-margin-top:96px}
.lg-sec+.lg-sec{padding-top:40px;border-top:1px solid #E7E0D2}
.lg-sec h2{counter-increment:lgsec;font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(20px,1.9vw,27px);line-height:1.2;letter-spacing:-.022em;color:#381507;margin:0 0 18px}
.lg-sec h2::before{content:counter(lgsec,decimal-leading-zero);display:block;
  font-family:Karla,system-ui,sans-serif;font-weight:700;font-size:11.5px;letter-spacing:.14em;
  color:#AB461D;margin:0 0 9px}
.lg-sec h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:16.5px;
  letter-spacing:-.012em;color:#381507;margin:30px 0 11px}
.lg-sec p{margin:0 0 15px;font-size:15.5px;line-height:1.78;color:#4A423D}
.lg-sec p:last-child{margin-bottom:0}
.lg-sec a{color:#381507;text-decoration:none;border-bottom:1px solid #D9CFC2;
  transition:color .15s,border-color .15s}
.lg-sec a:hover{color:#AB461D;border-color:#AB461D}
.lg-list{margin:0 0 15px;padding:0;list-style:none}
.lg-list li{position:relative;padding:0 0 0 22px;margin:0 0 10px;
  font-size:15.5px;line-height:1.74;color:#4A423D}
.lg-list li::before{content:"";position:absolute;left:2px;top:11px;
  width:6px;height:6px;border-radius:50%;background:#D9A066}
.lg-list li b{color:#381507;font-weight:700}

/* definition-style rows for data categories and rights */
.lg-defs{margin:0 0 15px;padding:0;border-top:1px solid #E7E0D2}
.lg-defs>div{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:12px 28px;
  padding:16px 0;border-bottom:1px solid #E7E0D2}
.lg-defs dt{font-weight:700;font-size:14.5px;line-height:1.5;color:#381507;margin:0}
.lg-defs dd{margin:0;font-size:15px;line-height:1.72;color:#4A423D}

/* cookie inventory */
.lg-tablewrap{overflow-x:auto;margin:0 0 15px;-webkit-overflow-scrolling:touch}
.lg-table{width:100%;min-width:640px;border-collapse:collapse;font-size:14.5px}
.lg-table th{text-align:left;font-weight:700;font-size:11.5px;letter-spacing:.12em;
  text-transform:uppercase;color:#AB461D;padding:0 18px 11px 0;border-bottom:1px solid #E7E0D2;
  vertical-align:bottom}
.lg-table td{padding:14px 18px 14px 0;border-bottom:1px solid #E7E0D2;
  line-height:1.65;color:#4A423D;vertical-align:top}
.lg-table td:first-child{font-weight:700;color:#381507}
.lg-table th:nth-child(1),.lg-table td:nth-child(1){width:20%}
.lg-table th:nth-child(2),.lg-table td:nth-child(2){width:13%}
.lg-table th:nth-child(3),.lg-table td:nth-child(3){width:16%}
.lg-table th:nth-child(5),.lg-table td:nth-child(5){width:12%}
.lg-table td:nth-child(2),.lg-table td:nth-child(3),.lg-table td:nth-child(5){color:#5C534D}

/* closing contact card */
.lg-card{background:#F7F3EE;border:1px solid #E7E0D2;border-radius:10px;padding:30px 32px;margin:0 0 15px}
.lg-card p{margin:0 0 8px}
.lg-card p:last-child{margin-bottom:0}
.lg-card b{color:#381507}

/* unverified values. delete the tag once the real value is in. */
.lg-fill{background:#FBEFD6;border-bottom:1px dashed #C98A2E;color:#7A4A08;
  font-style:normal;padding:1px 4px;border-radius:3px}

@media(max-width:991.98px){
  .lg-head{padding:46px 0 38px}
  .lg-wrap{grid-template-columns:minmax(0,1fr);gap:34px;padding:0 0 4px}
  .lg-toc{position:static;border:1px solid #E7E0D2;border-radius:10px;padding:20px 22px;background:#FCFAF7}
  .lg-toc ol{columns:2;column-gap:28px;border-top:0}
  .lg-toc li{break-inside:avoid}
  .lg-body{max-width:none}
  .lg-defs>div{grid-template-columns:minmax(0,1fr);gap:5px}
}
@media(max-width:575.98px){
  .lg-toc ol{columns:1}
  .lg-card{padding:24px 22px}
}

/* ================= careers (wk-) and guide index (gd-) ================= */
.wk-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 48px;
  margin:48px 0 0;padding:0;list-style:none;counter-reset:wk}
.wk-values>li{counter-increment:wk;padding:28px 0;border-top:1px solid #E7E0D2}
.wk-values>li::before{content:counter(wk,decimal-leading-zero);display:block;
  font-weight:700;font-size:11.5px;letter-spacing:.16em;color:#AB461D;margin:0 0 12px}
.wk-values h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(17px,1.5vw,20.5px);line-height:1.3;letter-spacing:-.018em;color:#381507;
  margin:0 0 10px;
  /* one heading runs to two lines; reserving the height keeps each row's
     body copy starting on the same line across all three columns */
  min-height:2.6em}
.wk-values p{margin:0;font-size:15.5px;line-height:1.72;color:#4A423D}

.cs-sec--dark .wk-values>li{border-top-color:var(--darkline)}
.cs-sec--dark .wk-values h3{color:#F2EDE8}
.cs-sec--dark .wk-values p{color:var(--darktext)}
.cs-sec--dark .wk-values>li::before{color:var(--flame)}

/* where we hire */
.wk-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;
  margin:40px 0 0;padding:0;list-style:none}
.wk-teams>li{padding:22px 0;border-top:1px solid #E7E0D2}
.wk-teams b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:16.5px;letter-spacing:-.012em;color:#381507;margin:0 0 7px}
.wk-teams span{display:block;font-size:15px;line-height:1.7;color:#5C534D}

/* two locations, side by side */
.wk-sites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:40px 0 0}
.wk-site{background:#F7F3EE;border:1px solid #E7E0D2;border-radius:10px;padding:28px 30px}
.wk-site b{display:block;font-weight:700;font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:#AB461D;margin:0 0 12px}
.wk-site h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:19px;
  letter-spacing:-.018em;color:#381507;margin:0 0 9px}
.wk-site p{margin:0;font-size:15px;line-height:1.72;color:#4A423D}

/* guide index */
.gd-group{margin:52px 0 0}
.gd-group__h{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(19px,1.7vw,24px);letter-spacing:-.02em;color:#381507;margin:0 0 6px}
.gd-group__p{margin:0 0 4px;font-size:15px;line-height:1.7;color:#5C534D;max-width:62ch}
.gd-list{margin:20px 0 0;padding:0;list-style:none;border-top:1px solid #E7E0D2}
.gd-list>li{border-bottom:1px solid #E7E0D2}
.gd-list a{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:10px 36px;
  align-items:baseline;padding:19px 0;text-decoration:none;border:0;
  transition:background .15s}
.gd-list a:hover{background:#FCFAF7}
.gd-t{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:15.5px;
  line-height:1.45;letter-spacing:-.012em;color:#381507;transition:color .15s}
.gd-list a:hover .gd-t{color:#AB461D}
.gd-d{font-size:14.5px;line-height:1.65;color:#5C534D}

@media(max-width:991.98px){
  .wk-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px}
  .wk-sites{grid-template-columns:minmax(0,1fr);gap:18px}
  .gd-list a{grid-template-columns:minmax(0,1fr);gap:6px;padding:17px 0}
}
@media(max-width:575.98px){
  .wk-values{grid-template-columns:minmax(0,1fr)}
  .wk-teams{grid-template-columns:minmax(0,1fr);gap:0}
}

/* ================= contact page (ctc-) ================= */
.ctc-lines{margin:44px 0 0;padding:0;list-style:none;border-top:1px solid #E7E0D2}
.ctc-lines>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 40px;
  align-items:baseline;padding:20px 0;border-bottom:1px solid #E7E0D2}
.ctc-lines b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:700;
  font-size:17px;line-height:1.3;letter-spacing:-.015em;color:#381507;margin:0 0 5px}
.ctc-lines span{display:block;font-size:14.5px;line-height:1.6;color:#6E635D}
.ctc-val{display:flex;flex-direction:column;gap:6px;text-align:right}
.ctc-val a{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:18px;
  letter-spacing:-.01em;color:#AB461D;text-decoration:none;white-space:nowrap}
.ctc-val a:hover{color:#381507}
.ctc-note{margin:26px 0 0;font-size:14px;line-height:1.7;color:#6E635D;max-width:70ch;
  border-left:2px solid #E7E0D2;padding-left:16px}
.ctc-places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;
  margin:8px 0 0;padding-top:28px;border-top:1px solid #DED4C6}
.ctc-places h3{font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:#AB461D;margin:0 0 14px;font-family:Karla,system-ui,sans-serif}
.ctc-places p{font-size:16.5px;line-height:1.72;color:#381507;margin:0}
.ctc-places__meta{margin-top:14px !important;font-size:14.5px !important;color:#6E635D !important}
.ctc-media{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;margin:52px 0 0}
.ctc-map{width:100%;height:100%;min-height:340px;border:0;display:block;background:#EDE6DE}
.ctc-media img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block}
.ctc-routes{margin:44px 0 0;padding:0;list-style:none;border-top:1px solid #E7E0D2}
.ctc-routes>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;
  align-items:center;padding:24px 0;border-bottom:1px solid #E7E0D2}
.ctc-routes h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:19px;
  line-height:1.3;letter-spacing:-.015em;color:#381507;margin:0 0 7px}
.ctc-routes p{margin:0;font-size:15.5px;line-height:1.68;color:#4A423D;max-width:62ch}
@media(max-width:991.98px){
  .ctc-places{grid-template-columns:1fr;gap:32px}
  .ctc-media{grid-template-columns:1fr;gap:18px}
  .ctc-map,.ctc-media img{min-height:300px}
  }
@media(max-width:575.98px){
  .ctc-lines>li{grid-template-columns:1fr;gap:10px;padding:18px 0}
  .ctc-val{text-align:left;flex-direction:row;flex-wrap:wrap;gap:6px 20px}
  .ctc-val a{font-size:17px}
  .ctc-routes>li{grid-template-columns:1fr;gap:12px;align-items:start}
  .ctc-map,.ctc-media img{min-height:240px}
  }


/* ================= brands index (br-) ================= */
.br-list{margin:48px 0 0;padding:0;list-style:none;counter-reset:br}
.br-list>li{counter-increment:br;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,230px);
  gap:18px 48px;align-items:start;padding:34px 0;border-top:1px solid #E7E0D2}
.br-list>li:last-child{border-bottom:1px solid #E7E0D2}
.br-logo{margin:0;background:#F7F3EE;border:1px solid #E7E0D2;border-radius:8px;
  display:flex;align-items:center;justify-content:center;padding:18px;min-height:118px}
.br-logo img{width:100%;max-width:100%;height:auto;display:block;mix-blend-mode:multiply}
.br-n{font-weight:700;font-size:11.5px;letter-spacing:.16em;color:#AB461D;margin:0 0 9px}
.br-name{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(20px,1.9vw,26px);letter-spacing:-.022em;color:#381507;margin:0 0 6px}
.br-what{font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;
  color:#8A7F79;margin:0 0 13px}
.br-body{margin:0 0 14px;font-size:15.5px;line-height:1.74;color:#4A423D;max-width:60ch}
.br-facts{margin:0;padding:16px 0 0;border-top:1px solid #EFE9DD;list-style:none;
  columns:2;column-gap:44px}
.br-facts li{break-inside:avoid}
@media(max-width:767.98px){.br-facts{columns:1}}
.br-facts li{font-size:14px;line-height:1.6;color:#6E635D;margin:0 0 7px;
  padding-left:16px;position:relative}
.br-facts li::before{content:"";position:absolute;left:2px;top:8px;
  width:5px;height:5px;border-radius:50%;background:#D9A066}
.br-go{justify-self:start}
@media(max-width:991.98px){
  .br-list>li{grid-template-columns:minmax(0,1fr);gap:14px;padding:28px 0}
  .br-go{grid-column:1;justify-self:start}
  .br-body{max-width:none}
}

/* ================= dealer application form (dr-) ================= */
/* lifted from the old become-dealer page so the form keeps working; the page
   layout around it is now the shared cs- system. */
:root{--d-line:#E7E0D2;--d-ink:#381507;--d-mute:#6E635D;--d-accent:#AB461D;
  --d-accent-soft:#FBEFE8;--d-dark:#381507;--d-soft:#FCFAF7;--d-error:#B3261E;
  --d-success:#2E7D4F;--d-paper-soft:#F7F3EE}
.dr-form-wrap{margin:44px 0 0;max-width:760px}
.dr-grid > *, .dr-stats > *, .dr-cards > *,
  .dr-steps > *, .dr-field-row > *, .dr-pick-grid > * { min-width: 0; }
/* ===== FORM CARD ===== */
  .dr-form-card {
  background:#fff; border:1px solid var(--d-line); border-radius:10px;
  padding:30px 30px 26px; box-shadow:0 20px 48px -28px rgba(0,0,0,.18);
  position:relative;
  }
@media (max-width:575px){
  .dr-form-card { padding:22px 18px; }
}
.dr-form-head { margin-bottom:18px; }
.dr-form-head h2 { font-size:21px; font-weight:800; margin:0 0 4px; letter-spacing:-.01em; }
.dr-form-head p { font-size:13px; color:var(--d-mute); margin:0; }
.dr-form-head .dr-quick { display:inline-flex; align-items:center; gap:6px; margin-top:10px; font-size:12px; font-weight:700; color:var(--d-success); }
.dr-field { margin-bottom:14px; }
.dr-field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width:480px){
  .dr-field-row { grid-template-columns:1fr; }
}
.dr-label { display:block; font-size:11.5px; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--d-ink); margin-bottom:6px; }
.dr-label .req { color:var(--d-accent); margin-left:2px; }
.dr-label .opt { text-transform:none; letter-spacing:0; font-weight:400; color:var(--d-mute); font-size:11.5px; margin-left:5px; }
.form-control, .form-select {
  width:100%; background:#fff; border:1px solid var(--d-line); border-radius:6px;
  padding:11px 13px; font-family: Karla, system-ui, -apple-system, 'Segoe UI', sans-serif; font-size:14.5px; color:var(--d-ink);
  transition:border-color .15s, box-shadow .15s; height:auto; line-height:1.4; box-shadow:none;
  }
.form-control::placeholder { color:var(--d-mute); }
.form-control:focus, .form-select:focus {
  outline:none; border-color:var(--d-accent); box-shadow:0 0 0 3px rgba(243,123,35,.14);
  }
textarea.form-control { resize:vertical; min-height:80px; }
/* product picker chips */
  .dr-pick-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
@media (max-width:480px){
  .dr-pick-grid { grid-template-columns:1fr; }
}
.dr-pick { position:relative; }
.dr-pick input { position:absolute; opacity:0; pointer-events:none; }
.dr-pick-inner {
  display:flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid var(--d-line);
  border-radius:6px; cursor:pointer; font-size:13px; font-weight:600; color:var(--d-soft);
  background:#fff; transition:all .14s; height:100%;
  }
.dr-pick-inner .bi { font-size:15px; color:var(--d-mute); }
.dr-pick-inner:hover { border-color:var(--d-soft); color:var(--d-ink); }
.dr-pick input:checked + .dr-pick-inner {
  border-color:var(--d-accent); background:var(--d-accent-soft); color:var(--d-ink); box-shadow:0 0 0 1px var(--d-accent);
  }
.dr-pick input:checked + .dr-pick-inner .bi { color:var(--d-accent); }
.dr-pick input:focus-visible + .dr-pick-inner { box-shadow:0 0 0 3px rgba(243,123,35,.22); }
.dr-consent { display:flex; gap:9px; align-items:flex-start; font-size:12px; color:var(--d-soft); line-height:1.5; margin:4px 0 14px; }
.dr-consent input { margin-top:2px; accent-color:var(--d-accent); flex-shrink:0; }
.dr-submit {
  width:100%; border:none; background:var(--d-dark); color:#fff; padding:15px 24px;
  font-family: Karla, system-ui, -apple-system, 'Segoe UI', sans-serif; font-size:14px; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  border-radius:6px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:10px;
  transition:background .18s, transform .12s;
  }
.dr-submit:hover { background:var(--d-accent); }
.dr-submit:hover .bi { transform:translateX(4px); }
.dr-submit .bi { transition:transform .18s; }
.dr-submit:active { transform:translateY(1px); }
.dr-fineprint { font-size:11.5px; color:var(--d-mute); text-align:center; margin:12px 0 0; line-height:1.5; }
.loading, .error-message, .sent-message {
  display:none; width:100%; padding:11px 14px; margin-bottom:12px; border-radius:6px; font-size:13.5px; font-weight:500;
  }
.loading { background:#f0f0f0; color:var(--d-soft); }
.error-message { background:#fbeaea; color:var(--d-error); border-left:3px solid var(--d-error); }
.sent-message { background:#e8f3ec; color:var(--d-success); border-left:3px solid var(--d-success); }

/* ================= homepage (hp-) ================= */
/* --- hero --- */
.hp-hero{position:relative;min-height:clamp(520px,76vh,760px);display:flex;align-items:flex-end;
  overflow:hidden;background:#1a1512}
.hp-hero__img,.hp-hero__media{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;display:block;border:0}
.hp-hero__media--still{display:none}
@media(max-width:767.98px){
  .hp-hero__media--video{display:none}
  .hp-hero__media--still{display:block}
}
@media(prefers-reduced-motion:reduce){
  .hp-hero__media--video{display:none}
  .hp-hero__media--still{display:block}
}
.hp-hero__scrim{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(18,14,12,.58) 0%,rgba(18,14,12,.28) 34%,rgba(18,14,12,.74) 78%,rgba(18,14,12,.93) 100%)}
.hp-hero__in{position:relative;z-index:2;width:100%;padding:0 0 54px}
.hp-kicker{font-weight:700;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;
  color:#F0B48C;margin:0 0 20px;line-height:1.7}
.hp-h1{font-family:Montserrat,system-ui,sans-serif;font-weight:800;color:#fff;margin:0 0 22px;
  font-size:clamp(31px,4.6vw,60px);line-height:1.06;letter-spacing:-.032em;max-width:19ch}
.hp-hero__p{font-size:clamp(16px,1.35vw,19px);line-height:1.66;color:#E4D9D1;margin:0;max-width:60ch}
.hp-btns{display:flex;flex-wrap:wrap;gap:13px;align-items:center}
.hp-btn{display:inline-flex;align-items:center;border-radius:7px;padding:15px 30px;
  font-weight:700;font-size:15.5px;text-decoration:none;transition:filter .15s,transform .15s}
.hp-btn:hover{filter:brightness(1.07);transform:translateY(-1px)}
.hp-btn--solid{background:#AB461D;color:#fff}
.hp-btn--solid:hover{color:#fff}
.hp-btn--ghost{background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.42)}
.hp-btn--ghost:hover{color:#fff;background:rgba(255,255,255,.14)}
.hp-btn--text{font-weight:700;font-size:13px;letter-spacing:.09em;text-transform:uppercase;
  color:#F0B48C;text-decoration:none;border-bottom:1px solid rgba(240,180,140,.45);padding-bottom:3px}
.hp-btn--text:hover{color:#fff;border-color:#fff}

/* --- proof strip under the hero --- */
.hp-proof{background:#231A15;border-top:1px solid #3A2E27}
.hp-proof ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.hp-proof li{padding:26px 34px;border-left:1px solid #3A2E27}
.hp-proof li:first-child{border-left:0;padding-left:0}
.hp-proof b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(19px,1.9vw,25px);line-height:1.1;letter-spacing:-.02em;color:#F0B48C;margin:0 0 8px}
.hp-proof span{display:block;font-size:13.5px;line-height:1.5;color:#A2958C}

/* --- client logo band --- */
.hp-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin:40px 0 0;
  padding:0;list-style:none}
.hp-logos li{border:1px solid #E7E0D2;border-radius:8px;background:#fff;
  display:flex;align-items:center;justify-content:center;padding:18px;min-height:96px}
.hp-logos img{max-width:100%;height:auto;display:block;filter:grayscale(1);opacity:.72;
  transition:filter .2s,opacity .2s}
.hp-logos li:hover img{filter:grayscale(0);opacity:1}

/* --- problem router: the big self-select cards --- */
.hp-solve{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:48px 0 0;
  padding:0;list-style:none;counter-reset:solve}
.hp-solve>li{counter-increment:solve}
.hp-solve a{display:block;height:100%;background:#fff;border:1px solid #E7E0D2;border-radius:11px;
  padding:30px 30px 26px;text-decoration:none;transition:border-color .16s,transform .16s,box-shadow .16s}
.hp-solve a:hover{border-color:#AB461D;transform:translateY(-3px);
  box-shadow:0 18px 40px -26px rgba(56,21,7,.4)}
.hp-solve__n{display:block;font-weight:700;font-size:11.5px;letter-spacing:.16em;color:#C0B4A6;margin:0 0 16px}
.hp-solve h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:clamp(18px,1.65vw,22px);line-height:1.26;letter-spacing:-.02em;color:#381507;margin:0 0 11px}
.hp-solve p{margin:0 0 18px;font-size:15px;line-height:1.68;color:#5C534D}
.hp-solve em{font-style:normal;font-weight:700;font-size:12.5px;letter-spacing:.08em;
  text-transform:uppercase;color:#AB461D}

/* --- engineered systems --- */
.hp-sys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:48px 0 0;
  padding:0;list-style:none}
.hp-sys>li{background:#fff;border:1px solid #E7E0D2;border-radius:11px;padding:30px 30px 26px;
  display:flex;flex-direction:column}
.hp-sys h3{font-family:Montserrat,system-ui,sans-serif;font-weight:800;font-size:21px;
  letter-spacing:-.022em;color:#381507;margin:0 0 5px}
.hp-sys__w{font-weight:700;font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  color:#8A7F79;margin:0 0 15px}
.hp-sys p{margin:0 0 16px;font-size:15px;line-height:1.7;color:#4A423D}
.hp-sys__fact{margin:0 0 20px !important;padding:13px 0 0;border-top:1px solid #EFE9DD;
  font-size:14.5px !important;line-height:1.6 !important;color:#381507 !important;font-weight:700}
.hp-sys__go{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 20px}

/* --- audience routes --- */
.hp-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 48px;margin:44px 0 0;
  padding:0;list-style:none}
.hp-routes>li{padding:24px 0;border-top:1px solid #E7E0D2}
.hp-routes a{display:block;text-decoration:none}
.hp-routes h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:17.5px;
  letter-spacing:-.015em;color:#381507;margin:0 0 8px;transition:color .15s}
.hp-routes a:hover h3{color:#AB461D}
.hp-routes p{margin:0;font-size:14.5px;line-height:1.66;color:#6E635D}

/* --- case studies: problem / system / result --- */
.hp-cases{margin:48px 0 0;padding:0;list-style:none}
.hp-cases>li{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:24px 52px;
  padding:36px 0;border-top:1px solid var(--darkline)}
.hp-cases>li:last-child{border-bottom:1px solid var(--darkline)}
.hp-cases__id b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:800;
  font-size:23px;letter-spacing:-.02em;color:#F2EDE8;margin:0 0 8px}
.hp-cases__id span{display:block;font-size:14px;line-height:1.6;color:#8E837C}
.hp-cases__id em{display:block;font-style:normal;font-weight:700;font-size:11.5px;
  letter-spacing:.15em;text-transform:uppercase;color:var(--flame);margin:0 0 12px}
.hp-psr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:0;padding:0}
.hp-psr>div{border-top:1px solid var(--darkline);padding:16px 0 0}
.hp-psr dt{font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--flame);margin:0 0 9px}
.hp-psr dd{margin:0;font-size:15px;line-height:1.66;color:var(--darktext)}

/* --- technical confidence --- */
.hp-tech{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 44px;margin:44px 0 0;
  padding:0;list-style:none}
.hp-tech>li{padding:22px 0;border-top:1px solid #E7E0D2}
.hp-tech b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:16.5px;
  letter-spacing:-.012em;color:#381507;margin:0 0 7px}
.hp-tech span{display:block;font-size:14.5px;line-height:1.66;color:#5C534D}

/* --- manufacturing band --- */
.hp-mfg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin:40px 0 0;
  padding:0;list-style:none}
.hp-mfg>li{padding:22px 0;border-top:1px solid #E7E0D2}
.hp-mfg b{display:block;font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:16.5px;
  letter-spacing:-.012em;color:#381507;margin:0 0 7px}
.hp-mfg span{display:block;font-size:15px;line-height:1.7;color:#4A423D}

/* --- applications grid --- */
.hp-apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:46px 0 0;
  padding:0;list-style:none}
.hp-apps a{display:block;text-decoration:none;border-radius:11px;overflow:hidden;
  background:#EDE6DE;position:relative}
.hp-apps figure{margin:0;overflow:hidden;background:#EDE6DE}
.hp-apps img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  transition:transform .55s cubic-bezier(.2,.7,.3,1)}
.hp-apps a:hover img{transform:scale(1.05)}
.hp-apps__t{position:absolute;inset:auto 0 0 0;padding:44px 22px 20px;
  background:linear-gradient(180deg,rgba(18,14,12,0) 0%,rgba(18,14,12,.86) 72%)}
.hp-apps h3{font-family:Montserrat,system-ui,sans-serif;font-weight:700;font-size:18.5px;
  letter-spacing:-.015em;color:#fff;margin:0 0 4px}
.hp-apps p{margin:0;font-size:13.5px;line-height:1.5;color:#D6C9BF}

/* --- closing enquiry band --- */
.hp-close{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:52px;align-items:center}
.hp-close__list{margin:20px 0 0;padding:0;list-style:none}
.hp-close__list li{position:relative;padding:0 0 0 24px;margin:0 0 11px;font-size:15.5px;
  line-height:1.66;color:var(--darktext)}
.hp-close__list li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;
  border-radius:50%;background:var(--flame)}

@media(max-width:1199.98px){
  .hp-solve,.hp-sys,.hp-apps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-logos{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:991.98px){
  .hp-hero{min-height:clamp(440px,66vh,560px)}
  .hp-proof ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-proof li{padding:22px 24px;border-top:1px solid #3A2E27}
  .hp-proof li:first-child,.hp-proof li:nth-child(2){border-top:0}
  .hp-proof li:nth-child(odd){padding-left:0;border-left:0}
  .hp-routes,.hp-tech{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
  .hp-mfg{grid-template-columns:minmax(0,1fr);gap:0}
  .hp-cases>li{grid-template-columns:minmax(0,1fr);gap:20px;padding:30px 0}
  .hp-psr{grid-template-columns:minmax(0,1fr);gap:0}
  .hp-psr>div{padding:14px 0 14px}
  .hp-close{grid-template-columns:minmax(0,1fr);gap:28px}
}
@media(max-width:767.98px){
  .hp-solve,.hp-sys,.hp-apps{grid-template-columns:minmax(0,1fr)}
  .hp-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .hp-logos li{min-height:74px;padding:13px}
}
@media(max-width:575.98px){
  .hp-hero__in{padding-bottom:36px}
  .hp-proof ul{grid-template-columns:minmax(0,1fr)}
  .hp-proof li{padding:18px 0;border-left:0}
  .hp-proof li:nth-child(2){border-top:1px solid #3A2E27}
  .hp-routes,.hp-tech{grid-template-columns:minmax(0,1fr);gap:0}
  .hp-btn{width:100%;justify-content:center}
  .hp-logos{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---- hp- image variants: the page is a catalogue, it should look like one ---- */
/* problem-router cards get a picture above the text */
.hp-solve a{padding:0;overflow:hidden;display:flex;flex-direction:column}
.hp-solve figure{margin:0;overflow:hidden;background:#EDE6DE}
.hp-solve figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  transition:transform .55s cubic-bezier(.2,.7,.3,1)}
.hp-solve a:hover figure img{transform:scale(1.05)}
.hp-solve__body{padding:26px 28px 24px;display:flex;flex-direction:column;flex:1 1 auto}
.hp-solve__body em{margin-top:auto;padding-top:4px}

/* system cards: picture, then the spec */
.hp-sys>li{padding:0;overflow:hidden}
.hp-sys figure{margin:0;overflow:hidden;background:#EDE6DE}
.hp-sys figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.hp-sys__body{padding:26px 28px 24px;display:flex;flex-direction:column;flex:1 1 auto}

/* audience routes become small cards with a thumbnail */
.hp-routes{gap:20px}
.hp-routes>li{padding:0;border-top:0}
.hp-routes a{display:grid;grid-template-columns:104px minmax(0,1fr);gap:18px;align-items:center;
  background:#fff;border:1px solid #E7E0D2;border-radius:10px;padding:14px;
  transition:border-color .16s,transform .16s}
.hp-routes a:hover{border-color:#AB461D;transform:translateY(-2px)}
.hp-routes figure{margin:0;border-radius:7px;overflow:hidden;background:#EDE6DE}
.hp-routes figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}

/* case studies: the project photograph leads */
.hp-cases>li{grid-template-columns:minmax(0,300px) minmax(0,1fr)}
.hp-cases figure{margin:0 0 18px;border-radius:9px;overflow:hidden;background:#241E1A}
.hp-cases figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}

/* manufacturing band: text beside a picture */
.hp-mfgwrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:52px;align-items:start}
.hp-mfgwrap figure{margin:0;position:sticky;top:96px}
.hp-mfgwrap figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  border-radius:11px;background:#EDE6DE}
.hp-mfgwrap figcaption{padding:14px 2px 0;font-size:13px;line-height:1.55;color:#8A7F79}
.hp-plant{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;
  list-style:none;position:sticky;top:96px}
.hp-plant li{margin:0}
.hp-plant figure{margin:0;position:static}
.hp-plant img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:9px;
  background:#EDE6DE}
.hp-plant__cap{grid-column:1/-1;font-size:13px;line-height:1.55;color:#8A7F79;padding:4px 2px 0}
.hp-mfgwrap .hp-mfg{grid-template-columns:minmax(0,1fr);gap:0}

/* technical band: picture on one side, the list on the other */
.hp-techwrap{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:52px;align-items:start}
.hp-techwrap figure{margin:0}
.hp-techwrap figure img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  border-radius:11px;background:#EDE6DE}
.hp-techwrap figcaption{padding:14px 2px 0;font-size:13px;line-height:1.55;color:#8A7F79}
.hp-techwrap .hp-tech{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;gap:0 36px}

@media(max-width:1199.98px){
  .hp-mfgwrap{grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:36px}
  .hp-techwrap{grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:36px}
}
@media(max-width:991.98px){
  .hp-mfgwrap,.hp-techwrap{grid-template-columns:minmax(0,1fr);gap:30px}
  .hp-mfgwrap figure{position:static;max-width:460px}
  .hp-plant{position:static;max-width:520px}
  .hp-mfgwrap figure img{aspect-ratio:1/1}
  .hp-techwrap figure{max-width:460px}
  .hp-techwrap figure img{aspect-ratio:1/1}
  .hp-techwrap .hp-tech{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-cases>li{grid-template-columns:minmax(0,1fr)}
  .hp-cases figure{max-width:420px}
}
@media(max-width:767.98px){
  .hp-routes a{grid-template-columns:80px minmax(0,1fr);gap:14px}
  .hp-techwrap .hp-tech{grid-template-columns:minmax(0,1fr)}
}
