.elementor-597 .elementor-element.elementor-element-640ad7d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS *//* =========================================================
   ALARIONEX — SOLAR-POWERED ALARMS
   COMPLETE REFINED CSS
   DESKTOP READABILITY BASELINE
========================================================= */

/* =========================================================
   00 — SHARED
========================================================= */

:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
){
  --sp-primary:#075ac8;
  --sp-primary-dark:#064ba6;
  --sp-heading:#0b2347;
  --sp-text:#35465f;
  --sp-muted:#69798e;
  --sp-border:#d9e3ef;
  --sp-soft:#f6f8fb;
  --sp-soft-blue:#eef4fb;
  --sp-accent:#f4b400;
  --sp-danger:#d42323;
  --sp-radius:8px;
  --sp-shadow:0 7px 22px rgba(11,35,71,.04);
  --sp-shadow-hover:0 12px 28px rgba(11,35,71,.075);

  width:100%;
  color:var(--sp-text);
  font-family:inherit;
}

:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
) *,
:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
) *::before,
:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
) *::after{
  box-sizing:border-box;
}

:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
) :is(h1,h2,h3,p){
  margin-top:0;
}

:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-applications,
  .sp-related-categories
) a{
  text-decoration:none;
}

/* Containers */

:is(
  .sp-product-paths__container,
  .sp-selection-guide__container,
  .sp-applications__container,
  .sp-related-categories__container,
  .sp-inquiry__container
){
  width:min(1200px,calc(100% - 64px));
  margin-inline:auto;
}

.sp-faq__container{
  width:min(1000px,calc(100% - 64px));
  margin-inline:auto;
}

/* Section typography */

:is(
  .sp-product-paths__heading h2,
  .sp-selection-guide__intro h2,
  .sp-applications__heading h2,
  .sp-related-categories__heading h2,
  .sp-faq__header h2,
  .sp-inquiry__side h2
){
  color:var(--sp-heading);

  font-size:clamp(35px,3vw,40px);
  font-weight:780;
  line-height:1.15;
  letter-spacing:-.028em;
}

:is(
  .sp-product-paths__eyebrow,
  .sp-selection-guide__eyebrow,
  .sp-applications__eyebrow,
  .sp-related-categories__eyebrow,
  .sp-faq__eyebrow,
  .sp-inquiry__eyebrow
){
  display:flex;
  align-items:center;
  gap:9px;

  margin:0 0 10px;

  color:var(--sp-primary);

  font-size:11.5px;
  font-weight:800;
  line-height:1.4;
  letter-spacing:.1em;
}

:is(
  .sp-product-paths__eyebrow,
  .sp-selection-guide__eyebrow,
  .sp-applications__eyebrow,
  .sp-related-categories__eyebrow,
  .sp-faq__eyebrow,
  .sp-inquiry__eyebrow
)::before{
  content:"";

  width:22px;
  height:3px;
  flex:0 0 auto;

  border-radius:999px;
  background:var(--sp-accent);
}

/* Shared links */

:is(
  .sp-product-card__link,
  .sp-product-paths__cross-link,
  .sp-application-card__link,
  .sp-applications__bridge-link,
  .sp-related-card__link
){
  display:inline-flex;
  align-items:center;
  gap:7px;

  color:var(--sp-primary);

  font-weight:750;

  transition:
    color .18s ease,
    gap .18s ease;
}

:is(
  .sp-product-card__link,
  .sp-product-paths__cross-link,
  .sp-application-card__link,
  .sp-applications__bridge-link,
  .sp-related-card__link
):hover{
  color:var(--sp-primary-dark);
  gap:10px;
}

/* =========================================================
   01 — HERO
========================================================= */

.sp-category-hero{
  --sp-page-pad:32px;

  overflow:hidden;

  background:
    linear-gradient(
      90deg,
      #fff 0%,
      #fbfcfe 42%,
      #f4f8fc 70%,
      #edf4fb 100%
    );
}

.sp-category-hero .sp-container{
  width:min(
    1200px,
    calc(100% - (var(--sp-page-pad) * 2))
  );

  margin-inline:auto;
}

.sp-hero-shell{
  padding:20px 0 70px;
}

/* Breadcrumb */

.sp-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;

  margin:0 0 28px;

  color:#738399;

  font-size:13px;
  line-height:1.5;
}

.sp-breadcrumb a{
  color:var(--sp-primary);
}

.sp-breadcrumb a:hover{
  color:var(--sp-primary-dark);
  text-decoration:underline;
}

.sp-breadcrumb__separator{
  color:#a5b0bf;
}

.sp-breadcrumb__current{
  color:#53647b;
}

/* Hero layout */

.sp-hero-grid{
  display:grid;
  grid-template-columns:
    minmax(0,46%)
    minmax(0,54%);

  align-items:center;
  gap:52px;
}

.sp-hero-copy{
  min-width:0;
  max-width:560px;
}

.sp-hero-eyebrow{
  display:flex;
  align-items:center;
  gap:9px;

  margin:0 0 12px;

  color:var(--sp-primary);

  font-size:12px;
  font-weight:800;
  letter-spacing:.09em;
}

.sp-hero-eyebrow::before{
  content:"";

  width:23px;
  height:3px;

  border-radius:999px;
  background:var(--sp-accent);
}

.sp-hero-title{
  margin:0;

  color:var(--sp-heading);

  font-size:clamp(44px,3.4vw,52px);
  font-weight:780;
  line-height:1.06;
  letter-spacing:-.038em;
}

.sp-hero-description{
  max-width:545px;
  margin-top:19px;
}

.sp-hero-description p{
  margin:0;

  color:#465a73;

  font-size:16px;
  line-height:1.66;
}

/* Actions */

.sp-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;

  margin-top:25px;
}

.sp-category-hero .sp-btn,
.sp-category-hero .sp-btn:link,
.sp-category-hero .sp-btn:visited,
.sp-category-hero .sp-btn:hover,
.sp-category-hero .sp-btn:focus,
.sp-category-hero .sp-btn:active{
  position:relative;
  inset:auto !important;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:48px;

  margin:0 !important;
  padding:12px 18px !important;

  border:1px solid !important;
  border-radius:6px;

  font-size:14px;
  font-weight:700;
  line-height:1.4;
  white-space:nowrap;

  transform:none !important;

  transition:
    color .18s ease,
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease !important;
}

.sp-category-hero .sp-btn--primary{
  color:#fff !important;
  background:var(--sp-primary) !important;
  border-color:var(--sp-primary) !important;
}

.sp-category-hero .sp-btn--primary:hover{
  background:var(--sp-primary-dark) !important;
  border-color:var(--sp-primary-dark) !important;

  box-shadow:
    0 8px 20px rgba(7,90,200,.17);
}

.sp-category-hero .sp-btn--secondary{
  color:var(--sp-primary) !important;
  background:rgba(255,255,255,.86) !important;
  border-color:rgba(7,90,200,.36) !important;
}

.sp-category-hero .sp-btn--secondary:hover{
  color:var(--sp-primary-dark) !important;
  background:#fff !important;
  border-color:var(--sp-primary) !important;
}

/* Hero paths */

.sp-hero-paths{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px;
}

.sp-hero-path{
  min-width:0;
  overflow:hidden;

  background:rgba(255,255,255,.92);

  border:1px solid #dbe5f0;
  border-radius:var(--sp-radius);

  box-shadow:var(--sp-shadow);
}

.sp-hero-path__media{
  height:175px;

  display:flex;
  align-items:center;
  justify-content:center;
}

.sp-hero-path__media img{
  width:100%;
  height:100%;
  display:block;
  padding:10px;
  object-fit:contain;
  object-position:center;
}

.sp-hero-path__media.is-placeholder{
  height:165px;

  margin:10px 10px 0;

  color:#8092a8;

  background:
    linear-gradient(
      145deg,
      #edf3f9,
      #fafbfd 55%,
      #edf3f8
    );

  border:1px dashed #c0d0e1;
  border-radius:6px;

  font-size:12px;
  font-weight:700;
  letter-spacing:.03em;
}

.sp-hero-path__body{
  min-height:102px;
  padding:15px 16px 17px;
}

.sp-hero-path__type{
  margin:0 0 6px;

  color:var(--sp-primary);

  font-size:10.5px;
  font-weight:800;
  letter-spacing:.09em;
}

.sp-hero-path__body strong{
  display:block;

  color:var(--sp-heading);

  font-size:17px;
  line-height:1.3;
}

.sp-hero-path__body > span{
  display:block;

  margin-top:5px;

  color:var(--sp-muted);

  font-size:12.5px;
  line-height:1.4;
}

/* =========================================================
   02 — PRODUCT PATHS
========================================================= */

.sp-product-paths{
  padding:74px 0 78px;
  background:#fff;
}

.sp-product-paths__heading{
  max-width:800px;
  margin:0 auto 32px;

  text-align:center;
}

.sp-product-paths__eyebrow{
  justify-content:center;
}

.sp-product-paths__heading h2{
  margin:0 0 12px;
}

.sp-product-paths__heading > p:last-child{
  max-width:720px;
  margin:0 auto;

  color:var(--sp-muted);

  font-size:15px;
  line-height:1.66;
}

/* Product cards */

.sp-product-paths__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.sp-product-card{
  min-width:0;

  display:flex;
  flex-direction:column;

  overflow:hidden;

  background:#fff;

  border:1px solid var(--sp-border);
  border-radius:var(--sp-radius);

  box-shadow:var(--sp-shadow);

  transition:
    border-color .18s ease,
    box-shadow .18s ease;
}

.sp-product-card:hover{
  border-color:#c5d5e7;
  box-shadow:var(--sp-shadow-hover);
}

.sp-product-card__media{
  min-height:245px;
  padding:18px;

  background:#f5f8fc;

  border-bottom:1px solid var(--sp-border);
}

.sp-product-card__media img{
  width:100%;
  height:208px;
  display:block;
  object-fit:contain;
  object-position:center;
}

.sp-product-card__placeholder{
  height:208px;

  display:flex;
  align-items:center;
  justify-content:center;

  color:#8193aa;

  background:
    linear-gradient(
      145deg,
      #edf3f8,
      #fafbfd 55%,
      #edf3f8
    );

  border:1px dashed #c2d1e1;
  border-radius:6px;

  font-size:12.5px;
  font-weight:700;
}

.sp-product-card__body{
  flex:1;

  display:flex;
  flex-direction:column;

  padding:23px 24px 24px;
}

.sp-product-card__series{
  margin:0 0 7px;

  color:var(--sp-primary);

  font-size:11px;
  font-weight:800;
  letter-spacing:.075em;
}

.sp-product-card__body > h3{
  min-height:55px;

  margin:0 0 17px;

  color:var(--sp-heading);

  font-size:21px;
  font-weight:750;
  line-height:1.3;
  letter-spacing:-.015em;
}

.sp-product-card__decision{
  padding-top:12px;
  border-top:1px solid #edf1f5;
}

.sp-product-card__decision +
.sp-product-card__decision{
  margin-top:12px;
}

.sp-product-card__decision strong{
  display:block;

  margin-bottom:5px;

  color:var(--sp-heading);

  font-size:12px;
  font-weight:800;
}

.sp-product-card__decision p{
  margin:0;

  font-size:14px;
  line-height:1.58;
}

.sp-product-card__tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;

  margin:16px 0 18px;
}

.sp-product-card__tags span{
  min-height:27px;

  display:inline-flex;
  align-items:center;

  padding:5px 8px;

  color:#566a82;
  background:#f5f8fb;

  border:1px solid #e0e8f0;
  border-radius:4px;

  font-size:10.5px;
  font-weight:650;
}

.sp-product-card__link{
  margin-top:auto;

  font-size:13.5px;
}

/* ALX-100-SOL cross */

.sp-product-paths__cross{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;

  margin-top:22px;
  padding:21px 23px;

  background:#f7f9fc;

  border:1px solid var(--sp-border);
  border-left:3px solid var(--sp-primary);
}

.sp-product-paths__cross > div{
  max-width:800px;
}

.sp-product-paths__cross-kicker{
  margin:0 0 6px;

  color:var(--sp-primary);

  font-size:10.5px;
  font-weight:800;
  letter-spacing:.09em;
}

.sp-product-paths__cross h3{
  margin:0 0 6px;

  color:var(--sp-heading);

  font-size:19px;
  font-weight:750;
  line-height:1.3;
}

.sp-product-paths__cross p{
  margin:0;

  color:var(--sp-muted);

  font-size:13.5px;
  line-height:1.58;
}

.sp-product-paths__cross-link{
  flex:0 0 auto;

  font-size:13px;
  white-space:nowrap;
}

/* =========================================================
   03 — SELECTION GUIDE
========================================================= */

.sp-selection-guide{
  padding:76px 0 80px;
  background:var(--sp-soft);
}

.sp-selection-guide__layout{
  display:grid;
  grid-template-columns:
    minmax(280px,.78fr)
    minmax(0,1.55fr);

  gap:clamp(56px,7vw,96px);
  align-items:start;
}

.sp-selection-guide__intro{
  max-width:400px;
}

.sp-selection-guide__intro h2{
  margin:0;
}

.sp-selection-guide__lead{
  margin:17px 0 0;

  color:var(--sp-muted);

  font-size:15px;
  line-height:1.66;
}

.sp-selection-guide__tip{
  display:flex;
  align-items:flex-start;
  gap:10px;

  margin-top:24px;
  padding-top:17px;

  border-top:1px solid var(--sp-border);
}

.sp-selection-guide__tip-mark{
  width:20px;
  height:20px;
  flex:0 0 20px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  color:var(--sp-primary);
  background:#fff;

  border:1px solid rgba(7,90,200,.24);
  border-radius:50%;

  font-size:10px;
  font-weight:800;
}

.sp-selection-guide__tip p{
  margin:0;

  color:#718096;

  font-size:12.5px;
  line-height:1.58;
}

/* Factors */

.sp-selection-guide__factors{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.sp-selection-factor{
  min-width:0;

  display:grid;
  grid-template-columns:
    42px minmax(0,1fr);

  gap:15px;

  padding:22px;

  background:rgba(255,255,255,.92);

  border:1px solid var(--sp-border);
  border-radius:7px;
}

.sp-selection-factor__number{
  width:40px;
  height:40px;

  display:flex;
  align-items:center;
  justify-content:center;

  color:var(--sp-primary);
  background:var(--sp-soft-blue);

  border:1px solid #d9e6f5;
  border-radius:6px;

  font-size:11px;
  font-weight:800;
}

.sp-selection-factor__body{
  min-width:0;
}

.sp-selection-factor__body h3{
  margin:0 0 8px;

  color:var(--sp-heading);

  font-size:18px;
  font-weight:750;
  line-height:1.3;
}

.sp-selection-factor__body > p{
  margin:0;

  font-size:14px;
  line-height:1.58;
}

.sp-selection-factor__options{
  display:flex;
  flex-wrap:wrap;
  gap:5px;

  margin-top:13px;
}

.sp-selection-factor__options span{
  padding:5px 8px;

  color:#5f7188;
  background:#f6f8fb;

  border:1px solid #e0e7ef;
  border-radius:4px;

  font-size:10.5px;
  font-weight:600;
}

/* =========================================================
   04 — APPLICATIONS
========================================================= */

.sp-applications{
  padding:76px 0 80px;
  background:#fff;
}

:is(
  .sp-applications__header,
  .sp-related-categories__header
){
  display:grid;
  grid-template-columns:
    minmax(0,.95fr)
    minmax(350px,.75fr);

  gap:64px;
  align-items:end;

  margin-bottom:30px;
}

:is(
  .sp-applications__heading h2,
  .sp-related-categories__heading h2
){
  margin:0;
}

:is(
  .sp-applications__intro,
  .sp-related-categories__intro
){
  margin:0;

  color:var(--sp-muted);

  font-size:15px;
  line-height:1.66;
}

/* Application cards */

.sp-applications__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:17px;
}

.sp-application-card{
  min-width:0;

  display:flex;
  flex-direction:column;

  overflow:hidden;

  background:#fff;

  border:1px solid var(--sp-border);
  border-radius:var(--sp-radius);

  transition:
    border-color .18s ease,
    box-shadow .18s ease;
}

.sp-application-card:hover{
  border-color:#c6d7e8;
  box-shadow:var(--sp-shadow);
}

.sp-application-card__media{
  position:relative;

  overflow:hidden;

  aspect-ratio:1.32 / 1;

  background:var(--sp-soft-blue);

  border-bottom:1px solid var(--sp-border);
}

.sp-application-card__media > img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}

.sp-application-card__placeholder{
  width:100%;
  height:100%;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:20px;

  color:#8193aa;

  background:
    linear-gradient(
      145deg,
      #edf4fb,
      #f8fafc 55%,
      #e9f1f8
    );

  font-size:13px;
  font-weight:700;
  text-align:center;
}

.sp-application-card__index{
  position:absolute;
  top:13px;
  left:13px;

  min-width:30px;
  height:26px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:0 7px;

  color:#fff;
  background:rgba(11,35,71,.88);

  border-radius:4px;

  font-size:10.5px;
  font-weight:800;
}

.sp-application-card__body{
  flex:1;

  display:flex;
  flex-direction:column;

  padding:20px;
}

.sp-application-card__body h3{
  min-height:70px;

  margin:0 0 9px;

  color:var(--sp-heading);

  font-size:18px;
  font-weight:750;
  line-height:1.32;
}

.sp-application-card__body p{
  margin:0 0 17px;

  font-size:14px;
  line-height:1.58;
}

/* Current HTML uses product-card link class here */
.sp-application-card__body
.sp-product-card__link{
  margin-top:auto;

  font-size:12.5px;
}

/* Applications bridge */

.sp-applications__bridge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;

  margin-top:22px;
  padding:20px 22px;

  background:var(--sp-soft);

  border:1px solid var(--sp-border);
  border-left:3px solid var(--sp-primary);
}

.sp-applications__bridge strong{
  display:block;

  margin-bottom:4px;

  color:var(--sp-heading);

  font-size:15px;
}

.sp-applications__bridge p{
  max-width:760px;
  margin:0;

  color:var(--sp-muted);

  font-size:13px;
  line-height:1.56;
}

.sp-applications__bridge-link{
  flex:0 0 auto;

  font-size:13px;
  white-space:nowrap;
}

/* =========================================================
   05 — RELATED CATEGORIES
========================================================= */

.sp-related-categories{
  padding:76px 0 80px;
  background:var(--sp-soft);
}

.sp-related-categories__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:17px;
}

.sp-related-card{
  min-width:0;

  padding:23px;

  background:#fff;

  border:1px solid var(--sp-border);
  border-radius:var(--sp-radius);

  box-shadow:var(--sp-shadow);
}

.sp-related-card__index{
  margin-bottom:23px;

  color:#91a0b2;

  font-size:10.5px;
  font-weight:800;
  letter-spacing:.08em;
}

.sp-related-card__body{
  height:calc(100% - 33px);

  display:flex;
  flex-direction:column;
}

.sp-related-card__type{
  margin:0 0 7px;

  color:var(--sp-primary);

  font-size:10.5px;
  font-weight:800;
  letter-spacing:.09em;
}

.sp-related-card h3{
  min-height:52px;

  margin:0;

  color:var(--sp-heading);

  font-size:20px;
  font-weight:750;
  line-height:1.3;
}

.sp-related-card__prompt{
  display:block;

  margin:17px 0 6px;

  color:var(--sp-heading);

  font-size:12px;
}

.sp-related-card__body > p{
  margin:0;

  font-size:14px;
  line-height:1.58;
}

.sp-related-card__link{
  margin-top:auto;
  padding-top:19px;

  font-size:13px;
}

/* Note */

.sp-related-categories__note{
  margin-top:20px;
  padding:18px 20px;

  background:#fff;

  border:1px solid var(--sp-border);
  border-left:3px solid var(--sp-primary);
}

.sp-related-categories__note strong{
  display:block;

  margin-bottom:4px;

  color:var(--sp-heading);

  font-size:14px;
}

.sp-related-categories__note p{
  margin:0;

  color:var(--sp-muted);

  font-size:13px;
  line-height:1.56;
}

/* =========================================================
   06 — FAQ
========================================================= */

.sp-faq{
  padding:72px 0 76px;
  background:#fff;
}

.sp-faq__header{
  max-width:720px;
  margin:0 auto 28px;

  text-align:center;
}

.sp-faq__eyebrow{
  justify-content:center;
}

.sp-faq__header h2{
  margin:0 0 11px;
}

.sp-faq__intro{
  margin:0;

  color:var(--sp-muted);

  font-size:15px;
  line-height:1.65;
}

.sp-faq__list{
  display:grid;
  gap:9px;
}

.sp-faq__item{
  min-width:0;
  overflow:hidden;

  background:#fff;

  border:1px solid var(--sp-border);
  border-radius:7px;
}

.sp-faq__item.is-open{
  border-color:#c4d5e8;

  box-shadow:
    0 7px 20px rgba(11,35,71,.04);
}

.sp-faq .sp-faq__question,
.sp-faq .sp-faq__question:hover,
.sp-faq .sp-faq__question:focus,
.sp-faq .sp-faq__question:active{
  appearance:none !important;

  width:100% !important;
  min-width:0 !important;
  min-height:70px;

  display:grid !important;
  grid-template-columns:
    38px minmax(0,1fr) 32px !important;

  align-items:center;
  gap:14px !important;

  margin:0 !important;
  padding:18px 20px !important;

  color:var(--sp-heading) !important;
  background:#fff !important;

  border:0 !important;
  border-radius:0 !important;

  box-shadow:none !important;

  font-family:inherit !important;
  text-align:left !important;
  white-space:normal !important;

  cursor:pointer;

  transform:none !important;
}

.sp-faq__question-number{
  color:#8796aa;

  font-size:11.5px;
  font-weight:800;
}

.sp-faq__item.is-open
.sp-faq__question-number{
  color:var(--sp-primary);
}

.sp-faq__question-text{
  min-width:0;

  color:inherit;

  font-size:16px;
  font-weight:720;
  line-height:1.42;

  overflow-wrap:anywhere;
}

.sp-faq__toggle{
  position:relative;

  width:29px;
  height:29px;

  justify-self:end;

  background:#f7f9fc;

  border:1px solid #d7e1ec;
  border-radius:50%;
}

.sp-faq__toggle span{
  position:absolute;
  top:50%;
  left:50%;

  width:11px;
  height:1.5px;

  background:var(--sp-primary);

  border-radius:999px;

  transform:translate(-50%,-50%);
}

.sp-faq__toggle span:nth-child(2){
  transform:
    translate(-50%,-50%)
    rotate(90deg);
}

.sp-faq__item.is-open
.sp-faq__toggle span:nth-child(2){
  transform:translate(-50%,-50%);
}

.sp-faq__answer[hidden]{
  display:none !important;
}

.sp-faq__answer-inner{
  margin-left:52px;
  padding:0 68px 21px 20px;

  border-left:2px solid #e3ebf4;
}

.sp-faq__answer-inner p{
  margin:0;

  font-size:14px;
  line-height:1.66;
}

.sp-faq__answer-inner p + p{
  margin-top:8px;
}

/* =========================================================
   07 — INQUIRY
========================================================= */

.sp-inquiry{
  padding:68px 0 74px;

  background:
    linear-gradient(
      110deg,
      #edf5fd,
      #e7f1fb 45%,
      #eef6fd
    );
}

.sp-inquiry :is(
  button,
  input,
  select,
  textarea
){
  font-family:inherit;
}

/* Layout */

.sp-inquiry__layout{
  display:grid;
  grid-template-columns:
    minmax(250px,.72fr)
    minmax(0,1.65fr);

  gap:clamp(38px,5vw,64px);

  align-items:start;
}

/* Side */

.sp-inquiry__side-inner{
  position:sticky;
  top:110px;

  max-width:340px;
}

.sp-inquiry__side h2{
  margin:0;
  line-height:1.1;
}

.sp-inquiry__lead{
  margin:16px 0 0;

  color:#596d85;

  font-size:14px;
  line-height:1.64;
}

.sp-inquiry__points{
  display:grid;
  gap:11px;

  margin:21px 0 0;
  padding:0;

  list-style:none;
}

.sp-inquiry__points li{
  display:grid;
  grid-template-columns:
    19px minmax(0,1fr);

  gap:9px;
}

.sp-inquiry__points li > span{
  width:17px;
  height:17px;

  margin-top:2px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  color:var(--sp-primary);
  background:#fff;

  border:1px solid #d5e4f4;
  border-radius:50%;

  font-size:9px;
  font-weight:800;
}

.sp-inquiry__points p{
  margin:0;

  color:#53677f;

  font-size:12.5px;
  line-height:1.52;
}

/* Business */

.sp-inquiry__business{
  display:grid;
  gap:7px;

  margin-top:22px;
  padding-top:16px;

  border-top:1px solid #c8dbef;
}

.sp-inquiry__business > div{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;

  color:#405673;

  font-size:11px;
}

.sp-inquiry__business strong{
  color:var(--sp-heading);
}

.sp-inquiry__business span::before{
  content:"•";

  margin-right:8px;

  color:#8ba1b9;
}

/* Certification note */

.sp-inquiry__cert-note{
  display:grid;
  grid-template-columns:
    25px minmax(0,1fr);

  gap:10px;
  align-items:center;

  margin-top:17px;
  padding:12px;

  background:rgba(255,255,255,.65);

  border:1px solid #cddff1;
  border-radius:7px;
}

.sp-inquiry__cert-icon{
  width:24px;
  height:24px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  color:var(--sp-primary);
  background:#fff;

  border-radius:6px;

  font-size:10px;
  font-weight:800;
}

.sp-inquiry__cert-note p{
  margin:0;

  color:#66798f;

  font-size:11px;
  line-height:1.48;
}

/* Form */

.sp-inquiry__form-card{
  min-width:0;

  padding:28px 30px 29px;

  background:#fff;

  border:1px solid #cbdceb;
  border-radius:var(--sp-radius);

  box-shadow:
    0 8px 25px rgba(11,35,71,.055);
}

.sp-inquiry__form{
  display:grid;
  gap:16px;
}

.sp-inquiry__grid{
  display:grid;
  gap:13px 14px;
}

.sp-inquiry__grid--3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.sp-inquiry__grid--2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.sp-inquiry__field{
  min-width:0;

  transition:opacity .18s ease;
}

.sp-inquiry__field.is-disabled{
  opacity:.52;
}

.sp-inquiry__field > label{
  display:block;

  margin:0 0 6px;

  color:#10294b;

  font-size:12px;
  font-weight:750;
}

.sp-inquiry__field > label > span{
  color:var(--sp-danger);
}

.sp-inquiry__field :is(
  input:not([type="file"]),
  select,
  textarea
){
  appearance:none;
  -webkit-appearance:none;

  width:100%;
  margin:0;

  color:#263c58;
  background-color:#fbfdff;

  border:1px solid #bfcfe0;
  border-radius:4px;

  outline:none;
  box-shadow:none;

  font-size:13px;
  line-height:1.45;

  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background-color .18s ease;
}

.sp-inquiry__field :is(
  input:not([type="file"]),
  select
){
  height:45px;
  padding:0 11px;
}

.sp-inquiry__field textarea{
  min-height:96px;

  padding:10px 11px;

  resize:vertical;
}

.sp-inquiry__field
:is(input,textarea)::placeholder{
  color:#8c9daf;
  opacity:1;
}

.sp-inquiry__field
:is(input,select,textarea):focus{
  background:#fff;

  border-color:var(--sp-primary);

  box-shadow:
    0 0 0 2px rgba(7,90,200,.08);
}

.sp-inquiry__field
:is(input,select,textarea):disabled{
  cursor:not-allowed;
  background:#f2f5f8;
}

.sp-inquiry__field .is-invalid{
  background:#fffdfd !important;
  border-color:#d54a4a !important;
}

/* Select */

.sp-inquiry__field select{
  padding-right:42px;

  cursor:pointer;

  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230b2347' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;

  background-repeat:no-repeat !important;
  background-position:right 13px center !important;
  background-size:15px 15px !important;
}

.sp-inquiry__field select:focus{
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23075ac8' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
}

/* File */

.sp-inquiry__file-upload{
  min-height:96px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:12px;

  background:#fbfdff;

  border:1px dashed #aac3dc;
  border-radius:4px;

  transition:
    border-color .18s ease,
    background-color .18s ease;
}

.sp-inquiry__file-upload:hover{
  background:#f9fcff;
  border-color:var(--sp-primary);
}

.sp-inquiry__file-control{
  display:flex;
  align-items:center;
  gap:10px;

  min-width:0;
}

.sp-inquiry .sp-inquiry__file-button,
.sp-inquiry .sp-inquiry__file-button:hover,
.sp-inquiry .sp-inquiry__file-button:focus,
.sp-inquiry .sp-inquiry__file-button:active{
  appearance:none !important;
  -webkit-appearance:none !important;

  flex:0 0 auto;

  min-height:33px;

  margin:0 !important;
  padding:6px 11px !important;

  color:#173a63 !important;
  background:#fff !important;

  border:1px solid #b9cadd !important;
  border-radius:3px !important;

  box-shadow:none !important;

  font-size:11px !important;
  font-weight:700 !important;
  line-height:1.25 !important;

  cursor:pointer;

  transform:none !important;
}

.sp-inquiry .sp-inquiry__file-button:hover,
.sp-inquiry .sp-inquiry__file-button:focus{
  color:var(--sp-primary) !important;
  background:#f5f9ff !important;
  border-color:var(--sp-primary) !important;
}

.sp-inquiry__upload-text{
  min-width:0;
  overflow:hidden;

  color:#657b95;

  font-size:11px;
  line-height:1.4;

  white-space:nowrap;
  text-overflow:ellipsis;
}

.sp-inquiry__file-help{
  margin:7px 0 0;

  color:#8192a5;

  font-size:10px;
  line-height:1.45;
}

/* Submit */

.sp-inquiry__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.sp-inquiry__footer p{
  margin:0;

  color:#7c8da1;

  font-size:10.5px;
}

.sp-inquiry__footer strong{
  color:var(--sp-danger);
}

.sp-inquiry .sp-inquiry__submit,
.sp-inquiry .sp-inquiry__submit:hover,
.sp-inquiry .sp-inquiry__submit:focus,
.sp-inquiry .sp-inquiry__submit:active{
  appearance:none !important;

  min-width:146px;
  min-height:46px;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  margin:0 !important;
  padding:11px 18px !important;

  color:#fff !important;
  background:var(--sp-primary) !important;

  border:1px solid var(--sp-primary) !important;
  border-radius:5px !important;

  box-shadow:none !important;

  font-size:12.5px;
  font-weight:750;

  cursor:pointer;

  transform:none !important;
}

.sp-inquiry .sp-inquiry__submit:hover{
  background:var(--sp-primary-dark) !important;
  border-color:var(--sp-primary-dark) !important;
}

.sp-inquiry .sp-inquiry__submit:disabled{
  opacity:.68;
  cursor:wait;
}

/* Status */

.sp-inquiry__status{
  padding:10px 12px;

  color:#405672;
  background:#f3f7fb;

  border:1px solid #d5e1ed;
  border-radius:4px;

  font-size:12.5px;
  line-height:1.5;
}

.sp-inquiry__status[hidden]{
  display:none !important;
}

.sp-inquiry__status.is-error{
  color:#942c2c;
  background:#fff7f7;
  border-color:#edcccc;
}

/* =========================================================
   08 — TABLET ≤991
========================================================= */

@media(max-width:991px){

  .sp-category-hero{
    --sp-page-pad:24px;
  }

  .sp-hero-grid{
    grid-template-columns:
      minmax(0,45%)
      minmax(0,55%);

    gap:28px;
  }

  .sp-hero-title{
    font-size:39px;
  }

  .sp-hero-path__media,
  .sp-hero-path__media.is-placeholder{
    height:130px;
  }

  :is(
    .sp-product-paths,
    .sp-selection-guide,
    .sp-applications,
    .sp-related-categories,
    .sp-faq,
    .sp-inquiry
  ){
    padding-top:62px;
    padding-bottom:66px;
  }

  :is(
    .sp-product-paths__container,
    .sp-selection-guide__container,
    .sp-applications__container,
    .sp-related-categories__container,
    .sp-faq__container,
    .sp-inquiry__container
  ){
    width:calc(100% - 48px);
  }

  .sp-applications__grid,
  .sp-related-categories__grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .sp-related-card:last-child{
    grid-column:1 / -1;
  }

  .sp-selection-guide__layout,
  .sp-inquiry__layout{
    grid-template-columns:1fr;
    gap:34px;
  }

  .sp-selection-guide__intro,
  .sp-inquiry__side-inner{
    max-width:680px;
  }

  .sp-inquiry__side-inner{
    position:static;
  }

  .sp-applications__header,
  .sp-related-categories__header{
    grid-template-columns:1fr;
    gap:12px;
  }

  .sp-application-card__body h3{
    min-height:48px;
  }

}

/* =========================================================
   09 — MOBILE ≤767
========================================================= */

@media(max-width:767px){

  .sp-category-hero{
    --sp-page-pad:16px;

    background:
      linear-gradient(
        180deg,
        #fff 0%,
        #f8fafc 55%,
        #edf4fb 100%
      );
  }

  .sp-hero-shell{
    padding:16px 0 58px;
  }

  .sp-breadcrumb{
    margin-bottom:20px;
    font-size:12px;
  }

  .sp-hero-grid{
    display:block;
  }

  .sp-hero-copy{
    max-width:none;
  }

  .sp-hero-title{
    font-size:clamp(32px,9vw,38px);
    line-height:1.11;
  }

  .sp-hero-description p{
    font-size:14.5px;
  }

  .sp-hero-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .sp-category-hero .sp-btn{
    width:100%;
  }

  .sp-hero-visual{
    margin-top:34px;
  }

  .sp-hero-path__media,
  .sp-hero-path__media.is-placeholder{
    height:112px;
  }

  .sp-hero-path__body{
    min-height:80px;
    padding:12px;
  }

  .sp-hero-path__body strong{
    font-size:14px;
  }

  .sp-hero-path__body > span{
    font-size:11.5px;
  }

  :is(
    .sp-product-paths,
    .sp-selection-guide,
    .sp-applications,
    .sp-related-categories,
    .sp-faq,
    .sp-inquiry
  ){
    padding-top:52px;
    padding-bottom:58px;
  }

  :is(
    .sp-product-paths__container,
    .sp-selection-guide__container,
    .sp-applications__container,
    .sp-related-categories__container,
    .sp-faq__container,
    .sp-inquiry__container
  ){
    width:calc(100% - 32px);
  }

  :is(
    .sp-product-paths__heading h2,
    .sp-selection-guide__intro h2,
    .sp-applications__heading h2,
    .sp-related-categories__heading h2,
    .sp-faq__header h2,
    .sp-inquiry__side h2
  ){
    font-size:clamp(29px,8vw,35px);
  }

  /* Product paths */

  .sp-product-paths__grid,
  .sp-applications__grid,
  .sp-related-categories__grid{
    grid-template-columns:1fr;
  }

  .sp-related-card:last-child{
    grid-column:auto;
  }

  .sp-product-card__media{
    min-height:185px;
  }

  .sp-product-card__placeholder{
    height:150px;
  }

  .sp-product-card__media img{
    height:150px;
  }

  .sp-product-card__body > h3{
    min-height:0;

    font-size:19px;
  }

  .sp-product-card__decision strong{
    font-size:11.5px;
  }

  .sp-product-card__decision p{
    font-size:13.5px;
  }

  .sp-product-card__tags span{
    font-size:10px;
  }

  .sp-product-paths__cross,
  .sp-applications__bridge{
    display:block;
  }

  .sp-product-paths__cross-link,
  .sp-applications__bridge-link{
    margin-top:13px;
  }

  /* Selection */

  .sp-selection-guide__factors{
    grid-template-columns:1fr;
  }

  .sp-selection-factor{
    grid-template-columns:
      37px minmax(0,1fr);

    gap:13px;

    padding:18px 16px;
  }

  .sp-selection-factor__number{
    width:35px;
    height:35px;
  }

  .sp-selection-factor__body h3{
    font-size:17px;
  }

  .sp-selection-factor__body > p{
    font-size:13.5px;
  }

  .sp-selection-factor__options span{
    font-size:10px;
  }

  /* Applications */

  .sp-application-card{
    display:grid;
    grid-template-columns:
      minmax(120px,36%)
      minmax(0,64%);
  }

  .sp-application-card__media{
    min-height:190px;

    aspect-ratio:auto;

    border-right:1px solid var(--sp-border);
    border-bottom:0;
  }

  .sp-application-card__body h3{
    min-height:0;

    font-size:17px;
  }

  .sp-application-card__body p{
    font-size:13.5px;
  }

  /* Related */

  .sp-related-card h3{
    min-height:0;

    font-size:18.5px;
  }

  .sp-related-card__body > p{
    font-size:13.5px;
  }

  /* FAQ */

  .sp-faq .sp-faq__question,
  .sp-faq .sp-faq__question:hover,
  .sp-faq .sp-faq__question:focus,
  .sp-faq .sp-faq__question:active{
    grid-template-columns:
      24px minmax(0,1fr) 28px !important;

    gap:9px !important;

    padding:14px 12px !important;
  }

  .sp-faq__question-text{
    font-size:13.5px;
  }

  .sp-faq__toggle{
    width:27px;
    height:27px;
  }

  .sp-faq__answer-inner{
    margin-left:35px;
    padding:0 15px 17px 12px;
  }

  .sp-faq__answer-inner p{
    font-size:12.5px;
  }

  /* Inquiry */

  .sp-inquiry__form-card{
    padding:21px 17px 22px;
  }

  .sp-inquiry__grid--2,
  .sp-inquiry__grid--3{
    grid-template-columns:1fr;
  }

  .sp-inquiry__field > label{
    font-size:11.5px;
  }

  .sp-inquiry__field :is(
    input:not([type="file"]),
    select,
    textarea
  ){
    font-size:13px;
  }

  .sp-inquiry__file-control{
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
  }

  .sp-inquiry__upload-text{
    width:100%;

    white-space:normal;
    overflow-wrap:anywhere;
  }

  .sp-inquiry__footer{
    display:block;
  }

  .sp-inquiry .sp-inquiry__submit{
    width:100%;
    margin-top:13px !important;
  }

}

/* =========================================================
   10 — SMALL MOBILE ≤430
========================================================= */

@media(max-width:430px){

  .sp-hero-paths{
    grid-template-columns:1fr;
  }

  .sp-hero-path{
    display:grid;
    grid-template-columns:
      38% minmax(0,62%);
  }

  .sp-hero-path__media,
  .sp-hero-path__media.is-placeholder{
    height:100%;
    min-height:105px;

    margin:6px;
  }

  .sp-hero-path__body{
    align-self:center;
  }

  .sp-application-card{
    grid-template-columns:1fr;
  }

  .sp-application-card__media{
    min-height:175px;

    aspect-ratio:1.65 / 1;

    border-right:0;
    border-bottom:1px solid var(--sp-border);
  }

}

@media(max-width:359px){

  .sp-category-hero{
    --sp-page-pad:14px;
  }

  :is(
    .sp-product-paths__container,
    .sp-selection-guide__container,
    .sp-applications__container,
    .sp-related-categories__container,
    .sp-faq__container,
    .sp-inquiry__container
  ){
    width:calc(100% - 28px);
  }

  .sp-product-card__body,
  .sp-related-card{
    padding-left:17px;
    padding-right:17px;
  }

  .sp-inquiry__form-card{
    padding-inline:14px;
  }

}

/* =========================================================
   11 — ACCESSIBILITY
========================================================= */

:is(
  .sp-category-hero,
  .sp-product-paths,
  .sp-selection-guide,
  .sp-applications,
  .sp-related-categories,
  .sp-faq,
  .sp-inquiry
) :is(
  a,
  button,
  input,
  select,
  textarea
):focus-visible{
  outline:3px solid var(--sp-accent);
  outline-offset:3px;
}

/* =========================================================
   12 — REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

  :is(
    .sp-btn,
    .sp-product-card,
    .sp-application-card,
    .sp-product-card__link,
    .sp-product-paths__cross-link,
    .sp-application-card__link,
    .sp-applications__bridge-link,
    .sp-related-card__link,
    .sp-inquiry input,
    .sp-inquiry select,
    .sp-inquiry textarea,
    .sp-inquiry__file-upload,
    .sp-inquiry__file-button
  ){
    transition:none !important;
  }

}/* End custom CSS */