/* ==========================================================================
   QLD Batteries: refinements from the Working File (Figma export, 3 Nov 2026).
   main.css and page-*.css reproduce the HTML design previews; the Working File
   tightens the rhythm and updates the header, footer and some sections. Values
   are measured from the Working File at 1440px (desktop) and 390px (mobile).
   ========================================================================== */

/* ---- section rhythm: 64px at 1440, 48px on phones -------------------------------------------- */
:root{
  --sec:clamp(48px,4.45vw,64px);
  --sec-tight:clamp(32px,3.35vw,48px);
}

/* ---- header: desktop ----------------------------------------------------------------------------- */
@media (min-width:1341px){
  .hdr__main{min-height:117px;column-gap:16px;}
  .hdr .brand{margin-right:0;}
  .hdr .brand img,.hdr .brand img:is([src*="logo-qldbattery"],[data-asset*="logo-qldbattery"]){width:233px;height:auto;}
  .hdr .hsearch{justify-self:end;width:min(552px,100%);}
  .hdr__find{margin-right:0;}
  .hdr .hdr__find{padding-inline:19.5px;}
  .hdr.is-stuck .hdr__main{min-height:80px;}
  .hdr.is-stuck .brand img[src]{width:160px;}
}

/* ---- header: phones -------------------------------------------------------------------------------- */
@media (max-width:520px){
  .hdr .hdr__main,.hdr.is-stuck .hdr__main{padding:16px 15px;column-gap:8px;}
  .hdr .brand img:is([src*="logo-qldbattery"],[data-asset*="logo-qldbattery"]),
  .hdr.is-stuck .brand img:is([src*="logo-qldbattery"],[data-asset*="logo-qldbattery"]){width:138px;height:auto;}
  .hdr .hdr__tools{gap:8px;}
  .hdr .hdr__tools > *,.hdr .burger{width:48px;height:48px;}
}

/* ---- closing call to action (.fcta): muted red over an engine-bay photo, 48px heading --------- */
.fcta{background:#7d1c21;}
.fcta::before{background-image:url("../images/services/battery-terminal.webp");background-position:center 40%;opacity:.42;mix-blend-mode:luminosity;}
.fcta::after{background:linear-gradient(180deg,rgba(125,28,33,.38),rgba(125,28,33,.38));}
.fcta.section{padding-block:clamp(60px,5.9vw,85px) clamp(56px,5.56vw,80px);}
.fcta h2.d-1{font-size:clamp(36px,3.34vw,48px);line-height:1.28;margin-bottom:7px;}
.fcta .lede{font-size:16px;line-height:1.5;margin-bottom:32px;color:#fff;}
.fcta .fcta__acts{gap:17px;}
.fcta .fcta__acts .btn{min-width:243px;--bh:60px;padding-inline:20px;justify-content:center;}
.fcta .fcta__meta,.fcta p.fcta__meta{margin-top:26px;font-size:16px;line-height:1.5;color:#fff;}

/* ---- footer --------------------------------------------------------------------------------------- */
@media (min-width:1001px){
  .ft--v2 .ft2__top{padding-block:49px 32px;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:56px;}
  .ft--v2 .ft2__nav--5{padding-block:34px 56px;column-gap:44px;}
}
.ft--v2 .ft2__brand img:is([src*="logo-qldbattery"],[data-asset*="logo-qldbattery"]){margin-bottom:22px;}
.ft--v2 .ft2__brand p{font-size:16px;line-height:1.5;color:#d4d4d8;margin-bottom:20px;}
.ft--v2 .ft2__top h3{font-size:16px;line-height:1;letter-spacing:0 !important;margin-bottom:13px;}
.ft--v2 .ft2__call{margin-bottom:21px;}
.ft--v2 .ft2__call b{font-size:24px;line-height:1.1;}
.ft--v2 .ft2__call small{font-size:16px;line-height:1.5;margin-top:4px;}
.ft--v2 .ft2__lines li{font-size:16px;line-height:1.5;}
.ft--v2 .ft2__lines li+li{margin-top:9px;}
.ft--v2 .ft2__addr{font-size:16px;line-height:1.5;margin-top:4px;margin-bottom:34px;}
.ft--v2 .ft2__dir{font-size:15px;line-height:1.5;margin-bottom:16px;}
.ft--v2 .ft2__hours li{font-size:16px;line-height:1.53;}
.ft--v2 .ft2__hours li+li{margin-top:7px;}
.ft--v2 .ft2__nav--5 h3{line-height:1;margin-bottom:22px;}
.ft--v2 .ft2__nav--5 a{font-size:16px;line-height:1.5;color:#d4d4d8;}
.ft--v2 .ft2__col ul li+li{margin-top:9px;}
.ft--v2 .ft__bot{padding-block:22px;font-size:16px;line-height:1.5;}
.ft--v2 .ft__bot span,.ft--v2 .ft__legal a{font-size:16px;line-height:1.5;}
.ft--v2 .ft__legal{gap:8px 25px;}
@media (min-width:1001px){ .ft--v2 .ft2__col a{white-space:nowrap;} }
.ft--v2 .ft2__call-ico{background:rgba(238,28,37,.12);border-color:rgba(238,28,37,.45);}

/* ---- phones: closing CTA left-aligned, footer in one column ---------------------------------- */
@media (max-width:767px){
  .fcta.section{padding-block:48px;}
  .fcta .fcta__in{text-align:left;align-items:stretch;}
  .fcta h2.d-1{font-size:35px;line-height:48px;margin-bottom:24px;text-align:left;}
  .fcta .lede{margin:0 0 32px;text-align:left;max-width:none;}
  .fcta .fcta__acts{gap:16px;}
  .fcta .fcta__acts .btn{min-width:0;}
  .fcta .fcta__meta,.fcta p.fcta__meta{margin-top:24px;font-size:12.5px;line-height:23px;color:rgba(255,255,255,.72);text-align:left;}

  .ft--v2 .ft2__top{padding:20px 16px 20px;row-gap:58px;}
  .ft--v2 .ft2__nav--5{grid-template-columns:1fr;row-gap:45px;padding:21px 16px 25px;}
  .ft2__nav--5 .ft2__col:nth-child(5){display:block;}
  .ft--v2 .ft2__col a,.ft--v2 .ft2__lines a,.ft--v2 .ft2__dir{min-height:24px;}
  .ft--v2 .ft2__brand img:is([src*="logo-qldbattery"],[data-asset*="logo-qldbattery"]){width:287px;}
  .ft--v2 .ft__bot{padding:23px 16px 40px;flex-direction:column;align-items:flex-start;gap:16px;}
  .ft--v2 .ft__legal{gap:1px 24px;}
  .ft--v2 .ft__legal a{min-height:24px;}
}

/* ---- eyebrow: 16px regular caps, no tracking, short rule ---------------------------------------- */
.eyebrow{font-family:var(--body);font-size:16px;font-weight:400;letter-spacing:0;line-height:1.25;gap:12px;}
.eyebrow--line::after{flex:0 0 40px;}
@media (max-width:767px){ .eyebrow{font-size:14px;gap:10px;} .eyebrow--line::after{flex-basis:32px;} }

/* ==========================================================================
   Type and spacing system (every page)
   ========================================================================== */
/* section headings: 1.2 leading (62px at 52px, 48px at 40px); a red em second half */
.d-2{line-height:1.2;}
.d-2 em{font-style:normal;color:var(--red);}
.dark .d-2 em,.on-dark .d-2 em{color:var(--r500);}
/* ledes and body copy: 16/24 everywhere */
.lede,.sec-head .lede,.sec-head__aside .lede{font-size:16px;line-height:1.5;}
/* section head → content */
.sec-head{margin-bottom:36px;}
@media (max-width:767px){ .sec-head{margin-bottom:28px;} }
/* buttons: no tracking; content buttons are 60px */
.btn,.btn--lg,.btn--sm{letter-spacing:0;}
.btn-row .btn,.acard .btn,#faq .acard .btn,#reviews .rsum .btn,.sec-head .btn{--bh:60px;padding-inline:32px;}
/* phones: 16px gutters, full-width actions */
@media (max-width:767px){
  :root{--gut:16px;}
  .btn-row{flex-direction:column;align-items:stretch;}
  .btn-row .btn{width:100%;justify-content:center;}
}

/* ---- heroes: 85px heading at 1440, no breadcrumb, photos in natural colour ------------------ */
main nav[aria-label="Breadcrumb"]{display:none;}
.bhero__bg::before{display:none;}
.bhero__h em,.hero__h em{text-shadow:none;}
.d-hero,.hero__h,.bhero__h,.bhero--compact .bhero__h,.bhero--product .bhero__h,.bhero--scene .bhero__h,.blg-hero__h,.bdh__h{
  font-size:clamp(42px,calc(4.1vw + 26px),85px);line-height:1.08;}
.blg-hero__h{max-width:none;}
.bdh__h{max-width:none;}
@media (max-width:767px){
  .d-hero,.hero__h,.bhero__h,.bhero--compact .bhero__h,.bhero--product .bhero__h,.bhero--scene .bhero__h,.blg-hero__h,.bdh__h{font-size:42px;line-height:1.25;}
}
.bhero .lede,.hero__lede{font-size:16px;line-height:1.5;max-width:660px;}
.bhero .eyebrow--line::after,.hero .eyebrow--line::after{background:rgba(255,255,255,.7);}

/* ---- FAQ block -------------------------------------------------------------------------------- */
#faq .sec-head{grid-template-columns:minmax(0,1fr);}
#faq .faq__btn{padding:21px 0;align-items:center;}
#faq .faq__ico{width:30px;height:30px;border-color:#d8d8dc;}
#faq .btn--dark{background:var(--red);border-color:var(--red);color:#fff;}
#faq .btn--dark:hover{background:var(--r700);border-color:var(--r700);}
#faq .acard,.acard{border:0;border-radius:6px;background:#fff;box-shadow:0 1px 2px rgba(14,14,17,.06),0 8px 24px -12px rgba(14,14,17,.18);padding:24px;}
#faq .acard h3,.acard h3{font-size:28px;line-height:1.1;margin-bottom:12px;}
.acard p{font-size:16px;line-height:1.5;}
.acard__text{font-size:16px;font-weight:600;text-transform:uppercase;text-decoration:none;}
.acard__list a{font-size:16px;font-weight:500;color:#18181b;}
@media (max-width:767px){ #faq .btn-row .btn,#faq .faq__more .btn{width:100%;} }

/* ---- reviews block ------------------------------------------------------------------------------ */
#reviews .rsum{padding:25px;border:0;box-shadow:0 1px 2px rgba(14,14,17,.06),0 10px 30px -14px rgba(14,14,17,.22);}
#reviews .rsum__n{font-size:50px;}
#reviews .rsum__lbl{font-size:16px;letter-spacing:0;text-transform:none;}
#reviews .rsum__h{font-family:var(--display);font-weight:700;font-size:38px;line-height:1.2;letter-spacing:.01em;}
#reviews .reviews{gap:16px;border:0;background:transparent;}
@media (min-width:768px){ #reviews .reviews{overflow:visible;} }
#reviews .rev{border:1px solid var(--rule);border-radius:6px;box-shadow:0 6px 18px -12px rgba(14,14,17,.2);}
#reviews .rev__nm{font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;}
#reviews .rev__dt{font-size:16px;color:#71717a;}
#reviews .rev__src{font-size:14px;}

/* ==========================================================================
   Shared components
   ========================================================================== */
/* range tables: paged-out rows stay hidden on phones (the mobile grid rule used !important) */
.rng__row.is-paged-out,tr.is-paged-out{display:none !important;}

/* hero details: a rule above "Rather text us?", the icon in a dark-red disc, filled secondary button */
.bhero .rs-hero__alt,.bhero__call{margin-top:30px;padding-top:23px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:12px;font-size:14px;}
.bhero .rs-hero__alt svg,.bhero__call svg{width:30px;height:30px;padding:8px;border-radius:50%;background:#411115;color:var(--r400);flex:none;}
.bhero .btn--onDark,.hero .btn--onDark{background:#0e0e11;border-color:#242427;}
.bhero .btn--primary,.hero .btn--primary{box-shadow:none;}
.bhero__facts svg,.bcat__pts svg,.opt--dark .opt__list svg,.btc__list svg{color:#febb00;}

/* overview split: copy top-aligned with the image, two-line headings, wider paragraph */
.ovw .split{align-items:start;}
.ovw .d-2{max-width:none;}
.ovw__p{max-width:620px;}
.ovw .d-2 + .lede,.ovw .d-2 + p{margin-top:24px;}

/* stamp: amber disc with dark type, no glow; stays inside the image corner */
.stamp,.stamp--yellow{background:#febb00;color:#0e0e11;box-shadow:none;}
.stamp b,.stamp span{color:#0e0e11;}
@media (prefers-reduced-motion:reduce){ #family .split__media{position:relative;} }

/* numbered process lists: circles keep their size */
.fproc__n{flex:0 0 40px;width:40px;height:40px;min-width:40px;}

/* product cards: photo on white, larger type, cents at full size, soft shadow */
.pc{border-color:transparent;box-shadow:0 1px 2px rgba(14,14,17,.06),0 10px 26px -16px rgba(14,14,17,.28);}
.pc__media img{background:transparent;padding:0;}
.pc__brand{font-size:15px;letter-spacing:0;}
.pc__name a{font-size:18px;}
.pc__code{font-size:16px;}
.pc__chip{font-size:15px;letter-spacing:0;background:transparent;border:1px dashed #c8c8cd;height:31px;padding:0 10px;}
.pc__amt small{font-size:inherit;}
.pc__line{display:none;}
.pc__acts{padding-inline:12px;}
.pc__tag--recon,.pc__tag--reconditioned{background:#ffc300;color:#0e0e11;}

/* listing cards (guides, blog, resources): 16px labels and body, plain links, 24px gaps */
.gcard__cat,.blg__cat,.rsb__cat{font-size:16px;font-weight:400;letter-spacing:0;}
.gcard p,.blg__d,.rsb__card p,.gd__rc-d{font-size:16px;line-height:1.5;}
.gcard__ft,.blg__more,.gd__rc-more,.rsb__more{font-size:16px;font-weight:500;letter-spacing:0;color:#0e0e11;}
.gcard__ft{justify-content:flex-start;gap:10px;}
.blg__t,.gd__rc-t{font-size:23px;line-height:1.2;}
.blg__grid,.rsb__grid{gap:24px;}
.guides-sec .btn--dark,.rsb .btn--dark{background:var(--red);border-color:var(--red);color:#fff;}
#faq{border-top:0;}

/* ---- shop grids: one row per page with a pager (Working File), no footer note ------------------ */
.shop__grid > [data-paged-out]{display:none !important;}
.shop__foot{display:none;}
.shop__pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:23px;padding-top:16px;border-top:1px solid var(--rule);}
.shop__pager[hidden]{display:none;}
.shop__pg-step{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:6px 0;font:inherit;font-size:15px;color:var(--ink);cursor:pointer;}
.shop__pg-step[data-pg="1"]{justify-self:end;}
.shop__pg-step svg{width:15px;height:15px;}
.shop__pg-step:disabled{color:var(--n400);cursor:default;}
.shop__pg-step:not(:disabled):hover{color:var(--red);}
.shop__pg-list{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0;}
.shop__pg-list button{min-width:28px;height:32px;border:0;background:none;font:inherit;font-size:15px;color:var(--ink);cursor:pointer;border-radius:4px;}
.shop__pg-list button[aria-current="page"]{color:var(--red);font-weight:600;}
.shop__pg-list button:hover{color:var(--red);}
.shop__pg-gap{padding:0 4px;color:var(--ink-3);}

/* ---- "No guessing. No hard sell." (.rs-why / .rsw) ------------------------------------------------- */
.rs-why.section{padding-block:clamp(48px,4.9vw,71px) clamp(48px,4.65vw,67px);}
.rsw__h{font-size:clamp(36px,3.6vw,52px);line-height:1.2;}
.rs-why .lede{font-size:16px;line-height:1.5;max-width:500px;}
.rsw__list{margin-top:55px;}
.rsw__list svg,.rsw__ico{width:40px;height:40px;}
.rsw__list h3,.rsw__t{font-size:23px;line-height:1.15;margin-top:30px;}
.rsw__list p{font-size:16px;line-height:1.5;}
@media (min-width:1001px){ .rsw__media{width:40%;} }

/* ---- how it works (.abx-how) ---------------------------------------------------------------------- */
.abx-how__pause,.abx-stage__cap{display:none !important;}
.abx-stage::after{display:none;}
.abx-st__dot{width:27px;height:27px;box-shadow:none;}
.abx-st__t{font-size:clamp(16px,1.4vw,20px);letter-spacing:0;opacity:1 !important;color:#fff;}
.abx-st__d{font-size:16px;line-height:1.5;color:#e4e4e7 !important;margin-top:10px;}
.abx-how__sub{font-size:16px;font-weight:400;letter-spacing:0;}
.abx-how .sec-head{margin-bottom:50px;}
@media (max-width:1000px){ .abx-stage{aspect-ratio:356/582;position:relative;top:auto;} }

/* ---- battery type cards (.btc) --------------------------------------------------------------------- */
.btc{border-radius:8px;overflow:hidden;}
.btc__media,.btc__img{height:272px;}
.btc__media img,.btc__img img{height:100%;object-fit:cover;}
.btc__t{font-size:36px;line-height:1.05;}
.btc__d{font-size:16px;line-height:1.5;}
.btc__list span,.btc__list li{font-size:16px;line-height:1.5;}
.btc__tag{font-size:12.5px;letter-spacing:0;}
.btc__cta{font-size:16px;font-weight:600;letter-spacing:0;}
.btc-sec .btc-grid,.btc__grid{gap:26px;}

/* ---- trust strip ------------------------------------------------------------------------------------ */
.trust{background:#fafafa;}
.trust__t{font-size:18px;line-height:1.2;}
.trust__d{font-size:14px;line-height:1.45;margin-top:12px;}
.trust li{border-color:#f1f1f3;}
@media (max-width:767px){
  .trust li{padding-left:0 !important;}
  .trust__t{font-size:22px;}
  .trust__d{font-size:16px;line-height:1.5;}
}

/* ---- location block (.loc) ------------------------------------------------------------------------- */
.loc{border:0;grid-template-columns:727px minmax(0,487px);gap:40px;align-items:start;}
.loc__map{height:652px;border-radius:6px;overflow:hidden;}
.loc__info{border-left:0 !important;padding:46px 0 0 !important;}
.loc__blk h3,.loc .loc__k{font-family:var(--body);font-size:16px;font-weight:400;letter-spacing:0;text-transform:uppercase;color:var(--red);}
.loc__addr{font-size:20px;}
.loc .btn,.loc .btn--sm{--bh:60px;padding-inline:28px;}
.hours li{padding:8px 0;}
.hours li span,.hours li b{font-size:18px;}
.hours li span{font-weight:500;color:#0e0e11;}
.hours li b{font-weight:400;}
.loc__sub,.hours-h,.loc__blk .loc__h{font-family:var(--body);font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;color:#71717a;}
@media (max-width:1180px){ .loc{grid-template-columns:1fr;} .loc__map{height:auto;aspect-ratio:358/561;} }

/* ---- dark split panels: pricing (home), approach (about), stuck (roadside) ------------------------- */
.section.pricing{padding-block:clamp(48px,5.35vw,77px) clamp(48px,4.9vw,70px);background:#060608;}
.pricing__in{align-items:start;}
.pricing .d-2,#pricing-h{max-width:none;}
.pricing .lede,.pricing p{font-size:16px;line-height:1.5;}
@media (min-width:1001px){ .pricing__art{transform:scale(.66);transform-origin:top center;} }
.pricing__send-h{font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--n400);}
.fproc{border-top:0;}
.fproc li{border:0;padding-block:16px;}
.fproc p,.fproc__eg{font-size:16px;line-height:1.5;color:#d4d4d8;}
.fproc__or{display:flex;align-items:center;gap:14px;font-size:16px;border:0;background:none;padding:0;}
.fproc__or::before,.fproc__or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.14);}
#stuck .d-2 em,.rsx-why .d-2 em{display:block;}

/* ---- brand card (.bbrand) -------------------------------------------------------------------------- */
#brands.section--tight,.brands.section--tight{padding-block:clamp(48px,4.8vw,69px);}
.bbrand{border:0;box-shadow:0 1px 2px rgba(14,14,17,.06),0 10px 30px -16px rgba(14,14,17,.25);min-height:361px;}
.bbrand__logo img{width:424px;max-width:80%;height:auto;}
.bbrand__d{max-width:400px;}
.bbrand__types li{font-size:14px;letter-spacing:0;text-transform:none;height:35px;}
.bbrand__more{font-size:14px;letter-spacing:0;}

/* ---- new vs reconditioned cards (.opt) --------------------------------------------------------------- */
.vs-sec .opt h3,.opt h3{font-size:38px;}
.opt .chip{font-size:15px;letter-spacing:0;}
.opt--dark .opt__p,.opt--dark .opt__list{max-width:none;}
.opt__list li{font-size:15px;}

/* ---- category tiles (.rc) --------------------------------------------------------------------------- */
.rc{min-height:178px;}
.rc__d{font-size:16px;line-height:1.5;}

/* ---- range table (.rng) ------------------------------------------------------------------------------- */
.rng__table thead th{font-size:15px;letter-spacing:0;text-transform:none;font-weight:500;}
.rng__code{font-family:var(--body);font-weight:400;font-size:18px;text-transform:none;letter-spacing:0;}
.rng .lede{text-align:left;}
.rng__chip{font-size:16px;height:46px;}
.rng__terms{font-size:16px;border-left:3px solid var(--rule-strong);}

/* ---- home details ------------------------------------------------------------------------------------- */
.fcta .fcta__acts .btn--onDark{display:none;}
#new-vs-reconditioned .d-2,.vs-sec .d-2,.vs-sec .sec-head h2{max-width:none;}
/* recycling steps: a row of 387px cards running off the right edge, the first one red */
#recycling .flow{display:flex;gap:38px;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:calc(-1 * var(--gut));padding-right:var(--gut);scrollbar-width:none;}
#recycling .flow::-webkit-scrollbar{display:none;}
#recycling .fnode{flex:0 0 387px;min-height:246px;scroll-snap-align:start;}
#recycling .fnode:first-child{background:#ee1c25;border-color:#ee1c25;}
#recycling .fnode:first-child p,#recycling .fnode:first-child h3{color:#fff;}
#recycling .fnode h3{font-size:34px;line-height:1.05;}
#recycling .fnode p{font-size:16px;line-height:1.5;color:#a1a1aa;}
#recycling .rv-in,#recycling .flow + *{margin-top:20px;}
@media (max-width:767px){ #recycling .fnode{flex-basis:300px;} }
/* family: display-face pull-quote with a yellow bar; red display labels */
.pullquote{font-family:var(--display);font-weight:700;font-size:20px;line-height:1.2;text-transform:uppercase;letter-spacing:.01em;border-left:3px solid #fff000;max-width:none;}
.vlist b{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.01em;color:#bd0000;white-space:nowrap;}
.vlist li{font-size:16px;}
.split__media .stamp{right:44px;bottom:-58px;width:136px;height:136px;}
/* roadside card sits on a light band */
#roadside.section--tight{background:#fafafa;padding-block:64px 63px;}
.rsd__days i.on{background:#ffef00;color:#0e0e11;}
.rsd__tiles li b{font-weight:400;font-size:16px;}
.rsd__tiles li small,.rsd__note{font-size:16px;color:#fff;}
/* hero stars and steps */
.hero__stars svg{color:#ffbb00;}
.hero__steps{border-top:0;padding-top:0;margin-top:48px;}
.hero__steps b{font-weight:400;font-size:16px;}
.hero__steps span{font-size:16px;color:#e6e6e6;}
.hero__steps li::before,.hero__steps .n{color:#ffc300;}
.shop__grid .pc,.pda__grid .pc{border-color:transparent;}
.pc__amt{font-size:26px;}

/* ---- contact ------------------------------------------------------------------------------------------- */
.loc__blk h3{font-family:var(--body);font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:#71717a;}
.loc__blk:first-child h3{font-size:16px;text-transform:uppercase;color:var(--red);}
#send.section,.cx-send{background:#fafafa;}
.cx-send__main{border:0;box-shadow:0 1px 2px rgba(14,14,17,.06),0 12px 32px -18px rgba(14,14,17,.25);background:#fff;padding:34px;}
.cform__intent{display:none !important;}
.cform .field input,.cform .field select,.cform .field textarea,.cx-send .field input,.cx-send .field select{font-size:14px;}
.cform .field input,.cform .field select,.cx-send .field input,.cx-send .field select{height:43px;padding-block:0;}
.field--sel select{appearance:none;-webkit-appearance:none;width:100%;padding:0 40px 0 14px;border:1px solid var(--rule);border-radius:var(--radius);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%230e0e11' stroke-width='1.6'%3E%3Cpath d='M3 4.5 6 7.5l3-3'/%3E%3C/svg%3E") no-repeat right 14px center/12px;color:var(--ink);}
.field--sel select:disabled{color:var(--n400);background-color:#fafafa;}
.cx-send .field__l{font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;}
.cform__req{font-size:14px;}
.cform .tlink,.cx-send .tlink{font-size:14px;font-weight:600;letter-spacing:0;border-bottom:0;}
/* need an answer now: heading | intro, display-face values */
@media (min-width:1001px){
  .cx-direct .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,509px) minmax(0,1fr);column-gap:0;}
  .cx-direct .sec-head{grid-column:1 / 2;margin-bottom:80px;}
  .cx-direct__lede{grid-column:2 / 3;align-self:end;margin:0 0 80px 0;font-size:15px !important;}
  .cx-direct__list{grid-column:1 / -1;}
}
.cx-direct__list{border-top:0;}
.cx-direct__k{font-size:14px;}
.cx-direct__v,.cx-direct__v--mail{font-family:var(--display);font-weight:700;font-size:30px;text-transform:uppercase;letter-spacing:.01em;}
.cx-direct .btn{--bh:60px;}
.cx-opt__n{font-family:var(--body);font-weight:400;font-size:18px;color:var(--red);}
@media (max-width:767px){ .cx-direct__v,.cx-direct__v--mail{font-family:var(--body);font-weight:500;text-transform:none;} .cx-direct__k{text-transform:none;} }

/* ==========================================================================
   Page details
   ========================================================================== */
/* ---- about ---------------------------------------------------------------------------------------------- */
.page-about .ab-story__p,.page-about #location .sec-head__aside,.page-about .local{display:none;}
.loc .btn-row .btn:nth-child(n+3){display:none;}
.abx-rows li{padding:13px 0 11px;border-color:#f8f8f9;}
.abx-rows li:last-child{border-bottom:0;}
.abx-rows .abx-rows__n,.abx-rows li > span:first-child{font-size:17px;align-self:center;}

/* ---- articles and guides (single, single-guide, faq page) --------------------------------------------- */
@media (min-width:1001px){ .bd__grid,.fq .bd__grid{grid-template-columns:minmax(0,1fr) 320px;column-gap:72px;} }
.bd__body{max-width:none;}
@media (min-width:1001px){ .bdh__head{grid-template-columns:minmax(0,1fr) 541px;} }
.bdh__lede{font-size:16px;line-height:1.5;color:#fff;max-width:none;}
.bdh__lede p + p{margin-top:24px;}
.bd__body h2,.gd__sec h2{font-size:clamp(30px,2.92vw,42px);line-height:1.2;}
.gd__sec > p,.bd__body > p{color:var(--ink-2);line-height:1.5;}
.bd__callout-h + p{margin-top:24px;font-size:16px;line-height:1.5;color:#d1d1d5;max-width:590px;}
.bd__callout p.gd__callout-act,.bd__callout p:last-child.gd__callout-act{margin-top:24px;font-size:inherit;color:inherit;max-width:none;}
.bd__steps h3{font-size:22px;}
.bd__steps p{font-size:16px;color:var(--ink-2);}
.bd__signs h3{font-size:19px;}
.bd__back a,.gd__back a{font-size:16px;font-weight:500;letter-spacing:0;text-decoration:none;}
.bd__toc{padding:26px 24px;}
.bd__toc-h{font-size:16px;font-weight:400;letter-spacing:0;color:#3a3a41;}
.bd__test-k{font-size:16px;letter-spacing:0;}
.bd__test-h{font-size:31px;}
.bd__test p{font-size:18px;line-height:1.5;}
.bd-rel{border-top:0;}
.gdh.section{padding-block:clamp(64px,7.85vw,113px) clamp(64px,7.65vw,110px);}
.gdh__p{font-size:17.5px;line-height:1.55;color:#dbdbdf;max-width:527px;}
/* faq page groups */
.fqg .gd__k{font-size:16px;letter-spacing:0;color:#3a3a41;}
.fqg h2{font-size:38px;margin-top:36px;}
.fqg .faq__btn{font-size:16px;font-weight:400;letter-spacing:0;color:#3f3f46;align-items:center;}
.fqg + .fqg{margin-top:47px;}

/* ---- guide and blog listings -------------------------------------------------------------------------- */
.gfeat__t{text-wrap:wrap;}
@media (min-width:1001px){ .gfeat__grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);column-gap:60px;} }
.gfeat__lede{font-size:16px;line-height:1.5;color:#e4e4e7;}
.gfeat__cat{letter-spacing:0;font-weight:400;}
.guides{background:#f4f4f5;}
.gcard{padding:24px;}
.gcard--ask .tlink,.gcard__links .tlink{font-size:16px;font-weight:500;letter-spacing:0;}
@media (min-width:1001px){ .blg-hero__in{grid-template-columns:minmax(0,1.37fr) minmax(0,1fr);column-gap:61px;} }
.blg-hero .lede,.blg-hero__lede{font-size:16px;line-height:1.5;}
.blg__t--lg{font-size:36px;}
.blg__wide p,.blg__wide .blg__d{max-width:none;font-size:16px;}
.rsb__card--lead .rsb__media img,.rsb__card--lead img{aspect-ratio:2.75/1;}
.rsb__card--lead h3,.rsb__card h3{font-size:23px;line-height:1.2;}

/* ---- product page ------------------------------------------------------------------------------------- */
.pdx{padding-bottom:64px;}
.pdg__stage{background:#fafafa;border:1px solid #e7e7e9;}
.pdg__track{height:auto;aspect-ratio:1/1;}
.pdg__track img{object-fit:contain;padding:16%;background:transparent;}
.pdg__th-im{aspect-ratio:1/1;background:#fafafa;object-fit:contain;}
.pdg__th[aria-current="true"],.pdg__th.is-on{border-color:#ffc8ca;box-shadow:none;}
.pdx__cat{font-size:18px;font-weight:400;letter-spacing:0;margin-bottom:24px;}
.pdx__h{font-size:38px;}
.pdx__ids{font-size:17px;margin-bottom:27px;}
.pdx__price{font-size:38px;}
.pdx__fitbar{background:#ffdfe0;border:0;justify-content:center;border-radius:6px 6px 0 0;}
.pdx__specs{margin-top:0;}
.pdx__row{background:#f4f4f5;border:0;border-radius:8px;padding:20px 16px;}
.pdx__row-ico{width:44px;height:44px;background:#ffdfe0;}
.pdx__row b,.pdx__row-t{font-size:17px;font-weight:400;}
.pdx__row small,.pdx__row-s{font-size:16px;}
.pdx__buy .btn{--bh:61px;}
.pdx__enq{font-size:17px;margin-top:34px;}
.pdh__grid{gap:0;}
.pdh__card{border-radius:0;margin-left:-1px;}
.pdh__card::before{display:none;}
.pdh__n{font-size:15px;letter-spacing:0;color:var(--red) !important;}
.pdh__t{font-size:28px;margin-top:29px;}
.pspec__row{padding:16px 24px;min-height:70px;}
.pds__cap{font-size:15px;letter-spacing:0;border-bottom:2px solid #0e0e11;padding-left:22px;}
.page-pdp .bmark,.pdp .bmark{width:322px;height:auto;}
#alternatives{background:#fafafa;}

/* ---- find my battery: the step card ---------------------------------------------------------------------- */
#ovw-h{max-width:none;}
.fc{border-radius:12px;}
.fc__n{width:44px;height:44px;background:transparent;border:2px solid var(--red);color:#fff;font-family:var(--display);font-size:15px;}
.fc__step::before{background:none;border-left:1px dashed var(--red);width:0;}
.fc__t{font-size:20px;font-weight:400;}
.fc__tile{min-height:82px;}
.fc__tile.is-on{background:#4a0a0e;border-color:var(--red);}
.fc__chips li{min-height:42px;font-size:17px;border-radius:0;}
.fc__d,.fc__note{font-size:16px;color:#d4d4d8;}
.fc__go{--bh:60px;}
.field--sel select{background-repeat:no-repeat !important;background-position:right 14px center !important;background-size:12px !important;}
@media (min-width:1001px){ .cx-direct .wrap{grid-template-columns:minmax(0,616px) minmax(0,509px) 1fr;} }
#location .loc__blk h3,#location .loc__blk:not(:first-child) h3,.page-contact #location .loc__blk:not(:first-child) h3{font-family:var(--body);font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:#71717a;}
#location .loc__blk:first-child h3{font-family:var(--body);font-size:16px;font-weight:400;letter-spacing:0;text-transform:uppercase;color:var(--red);}
@media (min-width:1181px){ #location .loc{grid-template-columns:727px minmax(0,487px);gap:40px;border:0;} #location .loc__map{height:652px;} }
#location .loc__addr{font-size:20px;}
#location .hours li{padding:8px 0;}
/* product dimensions: header bar, drawing left, stacked sizes right */
@media (min-width:768px){
  .pds__dims{display:grid;grid-template-columns:minmax(0,1fr) 197px;grid-template-areas:"hd hd" "photo legend" "note note";gap:18px 24px;align-items:start;background:#fff;border:1px solid var(--rule);border-radius:0;padding:0 24px 20px;}
  .pds__photo{grid-area:photo;max-width:305px;margin:0;}
  .pds__legend{grid-area:legend;display:grid;grid-template-columns:1fr;gap:10px;margin:0;}
}
.pds__dims-hd{grid-area:hd;display:flex;justify-content:space-between;align-items:center;min-height:55px;margin:0 -24px;padding:0 22px;border-bottom:2px solid #0e0e11;}
.pds__dims-hd h3{font-family:var(--body);font-size:15px;font-weight:400;text-transform:uppercase;letter-spacing:0;}
.pds__legend > div{border:1px solid var(--rule);padding:10px 14px;min-height:74px;background:#fff;}
.pds__legend dt{font-size:15px;letter-spacing:0;}
.pds__legend dd{font-size:28px;}
.pds__note{grid-area:note;}
@media (max-width:767px){ .pds__dims{background:#fff;border:1px solid var(--rule);padding:0 16px 16px;} .pds__legend{grid-template-columns:1fr 1fr;} }
/* reviews logo */
#reviews .bmark{width:322px;height:auto;max-width:100%;}
@media (max-width:767px){ #reviews .bmark{display:none;} }
.pds__dims{align-self:start;}
.pds__legend{border:0 !important;padding:0 !important;}
.pds__cap{border-bottom:1px solid var(--rule);}
.pspec__wrap .pds__cap,.pspec .pds__cap{border-bottom:2px solid #0e0e11;}
#specs.pds,#specs{background:#fff;}
.cx-direct .d-2 em{display:inline;}
@media (min-width:1001px){ .cx-direct .sec-head{margin-bottom:47px;} .cx-direct__lede{margin-bottom:47px;} }

/* ---- form heroes (testing, recycling): the request card drawn as a battery --------------------------- */
@media (min-width:1101px){ .bhero--form .bhero__in{grid-template-columns:minmax(0,1fr) 520px;gap:85px;} }
.sform{position:relative;background:#0e0e11;border:1px solid #242427;border-radius:6px;padding:24px;backdrop-filter:none;}
.sform::before,.sform::after{content:"";position:absolute;top:-9px;width:26px;height:9px;border-radius:3px 3px 0 0;}
.sform::before{left:35px;background:#2f6fe4;}
.sform::after{right:37px;background:var(--red);}
.sform__lede{font-size:16px;line-height:1.5;}
.sform .field__l{font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;color:#fff;}
.sform .field-row{gap:8px;}
.sform input,.sform select{height:42px;}
.sform__go{--bh:51px;}
.sform__alt{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);font-size:16px;}
.sform__alt a{text-decoration:none;}
.sform__note{text-align:left;font-size:16px;}

/* ---- phones: taller photo heroes, "Rather text us?" under the buttons, stamp on the image corner ------ */
@media (max-width:767px){
  .bhero--photo:not(.bhero--form):not(.bhero--intent) .bhero__in{padding-top:150px;padding-bottom:150px;}
  .bhero__copy{display:flex;flex-direction:column;}
  .bhero__copy .rs-hero__alt{order:10;}
  .split__media .stamp{top:auto;right:12px;bottom:-40px;width:110px;height:110px;}
  #family .bmark,.ab-story .bmark{display:none;}
}
.cform__intent.is-invalid{display:block !important;}
