:root{
  --font-h1: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-h2: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-h3: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-h4: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-h5: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-span: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-p: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --text: #000;
  --bg: #fff;
  --border: #e6e8eb;
  --btn-primary: #0046be;
  --btn-primary-hover: #001e73;
  --btn-outline-bg: #fff;
  --btn-outline-text: #000;
  --btn-outline-hover-bg: #001e73;
  --btn-outline-hover-text: #fff;
  --radius: 18px;
}
*{ box-sizing: border-box; }
body{
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-p);
}
h1{ font-family: var(--font-h1); color: #000; font-weight: 500; margin: 0 0 16px;}
h2{ font-family: var(--font-h2); color: #000; font-weight: 500;}
h3{ font-family: var(--font-h3); color: #000; font-weight: 500; }
h4{ font-family: var(--font-h4); color: #000; font-weight: 500; }
h5{ font-family: var(--font-h5); color: #000; font-weight: 500; }
p{ font-family: var(--font-p); margin: 0 0 12px; }
span{ font-family: var(--font-span); }
a{ color: inherit; }
.link{ color: #111; text-decoration: underline; text-underline-offset: 3px; }
.container{
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}
.container-reviews {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}
.site-header{
  position: sticky;
  top: 0;
  z-index: 50;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
}
.header-bar{
  background: #fff;
}

.site-header.is-scrolled .header-bar{
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}
.header-inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  
}

.brand{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.logo-text{
  font-weight: 500;
  letter-spacing: -0.01em;
}
.nav-toggle{
  appearance: none;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  border-radius: 12px;
  padding: 10px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.nav-toggle-lines{
  width: 20px;
  height: 14px;
  position: relative;
  display: block;
}
.nav-toggle-lines::before,
.nav-toggle-lines::after,
.nav-toggle-lines{
  background: transparent;
}
.nav-toggle-lines::before,
.nav-toggle-lines::after{
  content: "";
  position: absolute;
  left: 0;
  width: 20px;
  height: 2px;
  background: rgba(0,0,0,.75);
  border-radius: 999px;
}
.nav-toggle-lines::before{ top: 1px; }
.nav-toggle-lines::after{ bottom: 1px; }
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::before{ transform: translateY(5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-lines::after{ transform: translateY(-5px) rotate(-45deg); }

.nav{
  display: flex;
  align-items: center;
  gap: 14px;
}
.nav-list{
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.nav-link{
  display: inline-flex;
  align-items: center;
  padding: 10px 12px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 500;
  color: #111;
  transition: background .15s ease, color .15s ease;
}
.nav-link:hover{
  background: rgba(0,70,190,.08);
  color: var(--btn-primary-hover);
}
.nav-link.is-active{
  background: rgba(0,70,190,.12);
  color: var(--btn-primary);
}

.nav-cta{
  display: inline-flex;
  gap: 10px;
  align-items: center;
}
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  border-radius: 999px;
  font-weight: 500;
  padding: 14px 18px;
  line-height: 1;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.btn-primary-custom{
  background: var(--btn-primary);
  border: 1px solid var(--btn-primary);
  color: #fff;
}
.btn-primary-custom:hover,
.btn-primary-custom:focus{
  background: var(--btn-primary-hover);
  border-color: var(--btn-primary-hover);
  color: #fff;
}
.btn-outline-custom{
  background: var(--btn-outline-bg);
  border: 1px solid var(--border);
  color: var(--btn-outline-text);
}
.btn-outline-custom:hover,
.btn-outline-custom:focus{
  background: var(--btn-outline-hover-bg);
  border-color: var(--btn-outline-hover-bg);
  color: var(--btn-outline-hover-text);
}
.hero{
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
.hero-card{
  text-align: center;
  border-radius: var(--radius);
  background: #fff;
  padding: 0;
}
.benefits{
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 12px 0 18px;
}
.benefit{
  justify-content: center;
  border-radius: 999px;
  padding: 10px 12px;
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-weight: 500;
}
.benefit-ico{
  width: 20px; height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.benefit-ico svg{ width: 20px; height: 20px; display: block; }
.icon-blue{ color: #0046be; }
.icon-green{ color: #16a34a; }
.icon-amber{ color: #f59e0b; }

.hero-cta{
  justify-content: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}


.page-title{ margin-bottom: 16px; }
.card{
  border-radius: var(--radius);
  background: #fff;
  border: 1px solid var(--border);
  padding: 18px;
}
.muted{ color: #444; font-size: 14px; margin-top: 10px; }
.form{ margin-top: 10px; }
.form-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 720px){
  .form-grid{ grid-template-columns: 1fr 1fr; }
}
.field{ display: grid; gap: 6px; margin-bottom: 12px; }
.label{ font-weight: 500; }
.input{
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px 12px;
  font: inherit;
}
.input:focus{
  outline: none;
  border-color: rgba(0,70,190,.45);
  box-shadow: 0 0 0 4px rgba(0,70,190,.10);
}

.siteFooter{
  color:#000000;
  padding:56px 15px 26px;
}

.footer-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:28px;
}

.footer-brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:#000000;
}

.footer-logo{
  width:42px;
  height:42px;
  border-radius:10px;
  object-fit:cover;
}

.footer-brandText{
  font-weight:900;
  font-size:16px;
  letter-spacing:0.2px;
}

.footer-social{
  display:flex;
  gap:10px;
}

.social-link{
  width:40px;
  height:40px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.10);
  transition:transform .18s ease, background .18s ease;
  color:#fff;
}

.social-link:hover{
  background:rgba(255,255,255,0.14);
  transform:translateY(-2px);
}

.social-ico{
  font-weight:900;
  font-size:16px;
  line-height:1;
}
.footer-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:34px;
}

.footer-col h4{
  margin:0 0 12px 0;
  font-size:15px;
  font-weight:900;
  color:#000000;
}

.footer-col p{
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:#000000;
}

.footer-col ul{
  list-style:none;
  padding:0;
  margin:0;
}

.footer-col li{
  margin-bottom:8px;
}

.footer-col a{
  color:#000000;
  text-decoration:none;
  font-size:14px;
}

.footer-col a:hover{
  color:#000000;
  text-decoration: underline;
}

.footer-areas{
  columns:2;
  column-gap:28px;
}

.footer-contact{
  margin-bottom:12px;
}

.footer-cta{
  margin-top:14px;
}

.footer-btn{
  display:inline-flex;
  padding:12px 16px;
  border-radius:12px;
  background:#1f57e7;
  color:#fff;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease;
}

.footer-btn:hover{
  background:#1746bf;
  transform:translateY(-2px);
}

.footer-bottom{
  margin-top:34px;
  border-top:1px solid rgba(255,255,255,0.10);
  padding-top:18px;
  text-align:center;
  font-size:13px;
  color:#888;
}
@media (max-width: 992px){
  .footer-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .footer-areas{ columns:1; }
}
@media (max-width: 576px){
  .footer-top{
    flex-direction:column;
    align-items:flex-start;
  }
  .footer-grid{
    grid-template-columns:1fr;
    gap:22px;
  }
}
@media (max-width: 980px){
  .nav{
    position: fixed;
    left: 16px;
    right: 16px;
    top: 72px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 14px;
    box-shadow: 0 20px 60px rgba(0,0,0,.10);
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .nav.is-open{ display: flex; }
  .nav-list{
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
  .nav-link{
    border-radius: 14px;
    padding: 12px 12px;
  }
  .nav-cta{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--border);
  }
}
@media (min-width: 981px){
  .nav-toggle{ display: none; }
}

.logo-img{
  height: 75px;
  width: auto;
  display: block;
}

.hero-home{}
.hero-home__title{
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.06;
  margin-bottom: 18px;
}
.portfolio{
  padding: 30px 10px;
}
.portfolio__title{
  margin: 0 0 26px;
  text-align: center;
  font-size: 35px;
}
.portfolio__wrap{
  overflow: hidden;
}
.portfolio__track{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.portfolio__item{
  margin: 0;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
}
.portfolio__img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

@media (max-width: 980px){
  .portfolio__wrap{
    overflow: visible;
  }
  .portfolio__track{
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    padding: 4px 16px 10px;
  }
  .portfolio__track::-webkit-scrollbar{ height: 8px; }
  .portfolio__track::-webkit-scrollbar-thumb{ background: rgba(0,0,0,.12); border-radius: 999px; }

  .portfolio__item{
    flex: 0 0 100%;
    scroll-snap-align: start;
  }
  .portfolio__img{
    height: 100%;
  }
}

@media (max-width: 520px){
  .portfolio__item{ flex-basis: 100%; }
  .portfolio__img{ height: 420px; }
}

.portfolio .container{
  max-width: 1280px;
}

@media (min-width: 1440px){
  .portfolio .container{
    max-width: 1400px;
  }
}

@media (max-width: 600px){
  .hero .container{
    padding-left: 10px;
    padding-right: 10px;
  }
}

.header-menu__inner{
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 14px;
}

.header-menu__center{
  display: flex;
  justify-content: center;
}

.header-menu__list{
  justify-content: center;
}

.header-menu__right{
  display: inline-flex;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
}

.header-menu__toggle{
  display: none;
}

@media (max-width: 980px){
  .header-menu__inner{
    grid-template-columns: auto auto;
  }

  .header-menu__center,
  .header-menu__right{
    display: none;
  }

  .header-menu__toggle{
    display: inline-flex;
    justify-self: end;
  }
}

.header-menu__drawer{
  display: none;
}

@media (max-width: 980px){
  .header-menu__drawer{
    display: none;
  }
  .header-menu .header-menu__drawer.is-open{
    display: flex;
  }
}
.service-card--featured{
  transform: translateY(-8px);
  border-color: rgba(0,70,190,.30);
  box-shadow: 0 18px 56px rgba(0,0,0,.10);
  padding: 22px 18px 18px;
  position: relative;
}
.service-card--featured:hover{
  transform: translateY(-10px);
  border-color: rgba(0,70,190,.40);
}
.service-card--featured .service-card__title{
  font-size: 19px;
}
.service-card--featured .service-card__price{
  font-size: 30px;
}

.services__more{
  text-align: center;
  margin: 14px 0 0;
}
.services__more-link{
  text-decoration: underline;
  text-underline-offset: 4px;
  color: #111;
}
.services__hint{
  text-align: center;
  margin: 16px 0 0;
  color: #222;
}
.services__cta{
  margin-top: 14px;
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 980px){
  .services__wrap{
    overflow: visible;
  }
  .services__track{
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    padding: 4px 16px 10px;
  }
  .services__track::-webkit-scrollbar{ height: 8px; }
  .services__track::-webkit-scrollbar-thumb{ background: rgba(0,0,0,.12); border-radius: 999px; }

  .service-card{
    flex: 0 0 78%;
    scroll-snap-align: start;
  }
  .service-card:first-child{
    margin-left: -44px;
  }

  .service-card--featured{
    transform: none;
  }
  .service-card--featured:hover{
    transform: none;
  }
}

@media (max-width: 520px){
  .service-card{ flex-basis: 86%; }
  .service-card:first-child{ margin-left: -52px; }
}

.service-card--featured{
  transform: translateY(-8px);
  border-color: rgba(0,70,190,.30);
  box-shadow: 0 18px 56px rgba(0,0,0,.10);
  padding: 22px 18px 18px;
  position: relative;
}
.service-card--featured:hover{
  transform: translateY(-10px);
  border-color: rgba(0,70,190,.40);
}
.service-card--featured .service-card__title{
  font-size: 19px;
}
.service-card--featured .service-card__price{
  font-size: 30px;
}

.services__more{
  text-align: center;
  margin: 14px 0 0;
}
.services__more-link{
  text-decoration: underline;
  text-underline-offset: 4px;
  color: #111;
}
.services__hint{
  text-align: center;
  margin: 16px 0 0;
  color: #222;
}
.services__cta{
  margin-top: 14px;
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 980px){
  .services__grid{
    grid-template-columns: 1fr;
    max-width: 520px;
    margin: 0 auto;
  }
  .service-card--featured{
    transform: none;
    order: -1; 
  }
  .service-card--featured:hover{
    transform: none;
  }
}

@media (max-width: 980px){
  .services__grid{
    grid-template-columns: 1fr;
    max-width: 520px;
    margin: 0 auto;
  }
  .service-card--featured{
    transform: none;
    order: -1;
  }
}
.promoQuoteBand__breadcrumbs{
  margin-top: 14px;
  display: flex;
  justify-content: center;
}

.promoQuoteBand__breadcrumbsList{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 10px 16px;
}

.promoQuoteBand__breadcrumbsItem{
  display: inline-flex;
  align-items: center;
  color: rgba(255,255,255,.92);
  font-family: var(--font-p);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
}

.promoQuoteBand__breadcrumbsItem a{
  color: rgba(0, 0, 0, 0.76);
  text-decoration: none;
  transition: color .18s ease, opacity .18s ease, transform .18s ease;
}

.promoQuoteBand__breadcrumbsItem a:hover,
.promoQuoteBand__breadcrumbsItem a:focus-visible{
  color: #000000;
}

.promoQuoteBand__breadcrumbsItem[aria-current="page"]{
  color: #000000;
  font-weight: 700;
}

.promoQuoteBand__breadcrumbsSep{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.4);
  user-select: none;
}

.promoQuoteBand__breadcrumbsSep svg{
  width: 14px;
  height: 14px;
  display: block;
  color: #000;
}

@media (max-width: 576px){
  .promoQuoteBand__breadcrumbs{
    margin-top: 12px;
  }

  .promoQuoteBand__breadcrumbsList{
    gap: 8px;
    padding: 8px 12px;
  }

  .promoQuoteBand__breadcrumbsItem{
    font-size: 13px;
  }

  .promoQuoteBand__breadcrumbsSep svg{
    width: 12px;
    height: 12px;
  }
}
@media (max-width: 576px){
  .promoQuoteBand__breadcrumbs{
    margin-top: 12px;
  }

  .promoQuoteBand__breadcrumbsList{
    gap: 6px;
  }

  .promoQuoteBand__breadcrumbsItem{
    font-size: 13px;
  }
}

.hero-cta .btn{
  padding-left: 52px;
  padding-right: 52px;
}

@media (max-width: 720px){
  .footer-inner{
    align-items: center;
    text-align: center;
  }
  .footer-links{
    justify-content: center;
  }
}

@media (max-width: 980px){
  .portfolio__track{
    padding-left: 18px;
    padding-right: 18px;
  }
}

@media (max-width: 980px){
  .header-menu__inner{
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
  }

  .header-menu__brand{
    grid-column: 2;
    justify-self: center;
  }

  .header-menu__toggle{
    grid-column: 3;
    justify-self: end;
    display: inline-flex;
  }
}
.trusted-reviews{
  background: #fff;
  padding: 0 10px;
}

.trusted-reviews__title{
  text-align: center;
  font-size: clamp(28px, 3.2vw, 44px);
  margin: 0 0 28px;
}

.trusted-reviews__product-wrap{
  margin-top: -6px;
  margin-bottom: 10px;
}
.trusted-reviews__product{
  font-size: 18px;
  font-weight: 700;
  color: #111;
  margin-bottom: 6px;
}
.trusted-reviews__ratingline{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 14px;
  border: 1px solid var(--border);
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.08);
}
.trusted-reviews__stars{
  font-size: 16px;
  letter-spacing: 2px;
  line-height: 1;
  color: #f5c518; /* gold */
}
.trusted-reviews__ratingtext{
  font-size: 14px;
  color: #111;
}

.trusted-reviews .container{
  text-align: center;
}
.trusted-reviews__grid{
  display: flex;
  gap: 22px;
  margin-top: 22px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  scroll-padding: 1px;
  padding-bottom: 6px;
}
.trusted-reviews__grid > .review-card{
  flex: 0 0 86%;
  scroll-snap-align: start;
}
@media (min-width: 768px){
  .trusted-reviews__grid{
    display: grid;
    overflow: visible;
    grid-template-columns: repeat(3, 1fr);
    align-items: stretch;
  }
  .trusted-reviews__grid > .review-card{
    flex: initial;
  }
}

.review-card{
  text-align: left;
  border-radius: 22px;
  padding: 26px 26px 22px;
  background: linear-gradient(180deg, #17181a 0%, #0c0d0f 100%);
  border: 1px solid rgba(0,0,0,.10);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.review-card::before{
  content: "";
  position: absolute;
  inset: -2px -2px auto -2px;
  height: 140px;
  background: radial-gradient(closest-side, rgba(255,255,255,.12), rgba(255,255,255,0));
  pointer-events: none;
}
.review-card__brand{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}
.review-card__logo{
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.review-card__brandname{
  font-size: 16px;
  font-weight: 600;
  opacity: .95;
}
.review-card__stars{
  margin: 12px 0 16px;
  position: relative;
  z-index: 1;
}
.stars{
  display: inline-flex;
  gap: 6px;
}
.stars svg{
  width: 18px;
  height: 18px;
  fill: #f6c343;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.25));
}

.review-card__scoreline{
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 18px;
  position: relative;
  z-index: 1;
}
.review-card__score{
  font-size: 44px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.review-card__meta{
  font-size: 14px;
  opacity: .7;
}

.review-card__btn{
  width: 100%;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  color: #fff;
  justify-content: space-between;
  padding: 14px 16px;
  border-radius: 14px;
  position: relative;
  z-index: 1;
}
.review-card__btn:hover,
.review-card__btn:focus{
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
}
.review-card__ext{
  display: inline-flex;
  width: 18px;
  height: 18px;
  opacity: .85;
}
.review-card__ext svg{
  width: 18px;
  height: 18px;
}
.review-card__btn--accent{
  border-color: rgba(0,163,224,.75);
  background: rgba(0,163,224,.10);
}
.review-card__btn--accent:hover,
.review-card__btn--accent:focus{
  border-color: rgba(0,163,224,1);
  background: rgba(0,163,224,.18);
}
.faq-section{
  margin-top: 20px;
  padding: 10px;
  background: #fff;
}
.faq-head{
  text-align: center;
  margin: 0 auto 40px;
}
.faq-title{
  font-family: var(--font-h1);
  font-weight: 800;
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.06;
  color: #111;
  margin: 0 0 12px;
}
.faq-subtitle{
  margin: 0;
  font-size: 18px;
  color: rgba(0,0,0,.62);
}
.faq-accordion{
  max-width: 980px;
  margin: 0 auto;
}

.collapse { display: none; }
.collapse.show { display: block; }
.faq-item{
  border: 0;
  background: transparent;
  margin-bottom: 16px;
}
.faq-item:last-child{ margin-bottom: 0; }

.faq-button{
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  text-align: left;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 18px !important;
  padding: 22px 56px 22px 22px;
  font-weight: 600;
  color: #111;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
  position: relative;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.faq-button:focus{
  box-shadow: 0 0 0 .2rem rgba(11,77,232,.15);
}
.faq-button:not(.collapsed){
  background: #0b4de8;
  color: #fff;
  border-color: rgba(11,77,232,.8);
  box-shadow: 0 18px 40px rgba(11,77,232,.18);
}
.faq-button::after{
  content: "▾";
  position: absolute;
  right: 22px;
  top: 50%;
  transform: translateY(-50%) scale(.95);
  font-size: 16px;
  opacity: .75;
}
.faq-button:not(.collapsed)::after{
  transform: translateY(-50%) rotate(180deg) scale(.95);
  opacity: 1;
}

.faq-num{
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  background: rgba(0,0,0,.06);
  color: #111;
}
.faq-button:not(.collapsed) .faq-num{
  background: #fff;
  color: #0b4de8;
}

.faq-question{
  flex: 1 1 auto;
  display: block;
  text-align: left;
  font-size: 18px;
  line-height: 1.25;
}

.faq-body{
  padding: 22px 22px 26px;
  border: 1px solid rgba(0,0,0,.12);
  border-top: 0;
  border-radius: 0 0 18px 18px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}
.faq-body p{
  margin: 0;
  color: rgba(0,0,0,.68);
  font-size: 16px;
  line-height: 1.7;
}
.faq-item .accordion-collapse.show .faq-body{
  border-color: rgba(11,77,232,.18);
}
.faq-item .accordion-header .faq-button:not(.collapsed){
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
@media (max-width: 775.98px){
  .optimal-tv-height h2 {font-size: 25px;
  }
  .faq-button{ padding: 18px 16px; }
  .faq-question{ font-size: 16px; }
  .faq-body{ padding: 18px 16px 22px; }
}
section.studs-section {
    padding: 0 10px;
}
.studs-grid{
display:grid;
grid-template-columns: 1.1fr 0.9fr;
grid-template-areas:
"title image"
"text image";
align-items:center;
}

.studs-title{
grid-area:title;
font-size:38px;
font-weight:800;
line-height:1.2;
}

.studs-text{
grid-area:text;
}

.studs-image-box{
grid-area:image;
display:flex;
justify-content:center;
}

.studs-image-box img{
width:420px;
max-width:100%;
border-radius:18px;
box-shadow:0 20px 40px rgba(0,0,0,0.12);
}
@media (max-width: 992px){

.studs-grid{
grid-template-columns:1fr;
grid-template-areas:
"title"
"image"
"text";
gap:30px;
}

.studs-image-box{
justify-content:flex-start;
}

}
.pricingHero{
  padding:95px 0;
  background:#f5f5f5;
}

.pricingHero-wrap{
  max-width:980px;
  margin:0 auto;
  text-align:center;
}

.pricingHero-title{
  font-size:64px;
  font-weight:900;
  line-height:1.05;
  margin:0 0 14px 0;
  letter-spacing:-0.5px;
}

.pricingHero-priceLine{
  font-size:22px;
  color:#3f3f3f;
  margin:0 0 18px 0;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  align-items:baseline;
}

.pricingHero-price{
  font-size:44px;
  font-weight:900;
  color:#1f57e7;
  line-height:1;
}
.pricingHero-perks{
display:flex;
justify-content:center;
gap:18px;
flex-wrap:wrap;
margin-top:10px;
}

.perk{
display:flex;
align-items:center;
gap:8px;

font-size:15px;
font-weight:600;
color:#333;
}
.perk::before{
content:"✓";
display:inline-flex;
align-items:center;
justify-content:center;

width:20px;
height:20px;

background:#1f57e7;
color:#fff;

border-radius:50%;
font-size:13px;
font-weight:900;
}

/* Links */
.pricingHero-links{
  margin-top:15px;
  margin-bottom: 15px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:#6b6b6b;
  font-size:14px;
}

.links-label{
  font-weight:800;
  color:#6b6b6b;
}

.service-link{
  display:inline-flex;
  align-items:center;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid #e6e6e6;
  background:#fff;
  text-decoration:none;
  font-weight:900;
  color:#111;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.service-link:hover{
  transform:translateY(-2px);
  border-color:rgba(31,87,231,0.35);
  box-shadow:0 12px 24px rgba(0,0,0,0.08);
  color:#111;
}

/* Actions */
.pricingHero-actions{
  margin-top:26px;
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.btn-pricing-main{
  background:#1f57e7;
  color:#fff;
  padding:14px 18px;
  border-radius: 999px;
  text-decoration:none;
  font-weight: 700;
  transition:transform .18s ease, background .18s ease;
}

.btn-pricing-main:hover{
  background:#1746bf;
  color:#fff;
  transform:translateY(-2px);
}

.btn-pricing-phone{
  background:#fff;
  border:2px solid #1f57e7;
  color:#1f57e7;
  padding:14px 18px;
  border-radius: 999px;
  font-weight: 700;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, color .18s ease;
}

.btn-pricing-phone:hover{
  background:#1f57e7;
  color:#fff;
  transform:translateY(-2px);
}

/* Tablet */
@media (max-width: 992px){
  .pricingHero{ padding:30px 0; }
  .pricingHero-title{ font-size:44px; }
  .pricingHero-price{ font-size:36px; }
  .pricingHero-priceLine{ font-size:18px; }
  .pricingHero-upsell{ text-align:left; }
}

/* Mobile */
@media (max-width: 576px){
  .pricingHero-title{ font-size:36px; }
  .pricingHero-price{ font-size:40px; }
  .pricingHero-priceLine{ font-size:16px; }
  .pricingHero-upsell{ padding:14px 14px; }
}
/* BOOK SERVICE */
.bookService{
  padding:30px 0;
  background:#f5f5f5;
}

.bookService-wrap{
  max-width:720px;
  margin:0 auto;
  text-align:center;
  padding: 0 15px;
}

.bookService-title{
  font-size:46px;
  font-weight:900;
  margin:0 0 10px 0;
  line-height:1.1;
}

.bookService-sub{
  margin:0 auto 26px auto;
  color:#1f1f1f;
  font-size:17px;
  line-height:1.65;
  max-width:680px;
}
.bookService-form{
  display:grid;
  gap:14px;
  text-align:left;
  margin-top:10px;
}
.bookService-field label{
  display:block;
  font-weight:800;
  font-size:17px;
  margin-bottom:6px;
  color:#333;
}
.bookService-field input{
  width:100%;
  padding:14px 14px;
  border-radius:12px;
  border:1px solid #e5e5e5;
  background:#fff;
  font-size:16px;
  outline:none;
}
.bookService-field input:focus{
  border-color: rgba(31,87,231,0.45);
  box-shadow: 0 0 0 4px rgba(31,87,231,0.12);
}
.bookService-btn{
  width:100%;
  padding:14px 16px;
  border-radius:999px;
  border:none;
  background:#1f57e7;
  color:#fff;
  font-weight:900;
  font-size:16px;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease;
}
.bookService-btn:hover{
  background:#1746bf;
  transform:translateY(-2px);
}
.bsModal{
  position:fixed;
  inset:0;
  display:none;
  z-index:9999;
}
.bsModal.show{ display:block; }
.bsModal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.55);
}
.bsModal-card{
  position:relative;
  width:min(520px, calc(100% - 28px));
  margin:12vh auto 0 auto;
  background:#fff;
  border-radius:18px;
  padding:26px 22px;
  box-shadow:0 25px 80px rgba(0,0,0,0.25);
  text-align:center;
  animation: bsPop .18s ease-out;
}
@keyframes bsPop{
  from{ transform:translateY(10px); opacity:0.6; }
  to{ transform:translateY(0); opacity:1; }
}
.bsModal-icon{
  width:54px;
  height:54px;
  border-radius:999px;
  background:#1f57e7;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  margin:0 auto 12px auto;
  font-size:22px;
}
.bsModal-title{
  margin:0 0 8px 0;
  font-size:22px;
  font-weight:900;
}
.bsModal-text{
  margin:0 0 16px 0;
  color:#5f5f5f;
  font-size:15px;
  line-height:1.6;
}
.bsModal-close{
  padding:12px 18px;
  border-radius:12px;
  border:none;
  background:#111;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
@media (max-width: 992px){
  .bookService{ padding:40px 0; }
  .bookService-title{ font-size:36px; }
}
.mobileStickyBar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:9998;
  display:none;
  gap:10px;
  padding:10px 12px;
  background:rgba(255,255,255,0.92);
  backdrop-filter: blur(10px);
  border-top:1px solid rgba(0,0,0,0.08);
}
.msb-btn{
  flex:1;
  text-align:center;
  text-decoration:none;
  font-weight:900;
  border-radius:14px;
  padding:14px 10px;
  font-size:15px;
  line-height:1;
  transition:transform .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}
.msb-call{
  background:#111;
  color:#fff;
}
.msb-book{
  background:#1f57e7;
  color:#fff;
}
.msb-btn:active{
  transform:scale(0.98);
}
@media (max-width: 992px){
  .mobileStickyBar{ display:flex; }
  body{ padding-bottom:76px; }
}
@media (min-width: 993px){
  body{ padding-bottom:0; }
}
.serviceAreas-head{
text-align:center;
margin:0 auto 40px auto;
}

.serviceAreas-head h2{
font-size:42px;
font-weight:900;
margin-bottom:12px;
}

.serviceAreas-head p{
color:#666;
font-size:17px;
line-height:1.6;
}

.serviceAreas-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:14px;
margin-top:30px;
}

.serviceCity{
display:flex;
align-items:center;
gap:10px;

background:#fff;
border:1px solid #e8e8e8;
border-radius:14px;

padding:14px 16px;

font-weight:700;
color:#111;
text-decoration:none;

transition:all .18s ease;
}

.cityIcon{
font-size:18px;
}

.serviceCity:hover{
border-color:#1f57e7;
transform:translateY(-2px);
box-shadow:0 12px 28px rgba(0,0,0,0.08);
}

.serviceAreas-cta{
margin-top:40px;
display:flex;
justify-content:center;
gap:12px;
flex-wrap:wrap;
}

.btn-area-book{
background:#1f57e7;
color:#fff;
padding:14px 22px;
border-radius:999px;
text-decoration:none;
font-weight: 500;
}

.btn-area-phone{
background:#fff;
border:2px solid #1f57e7;
color:#1f57e7;
padding:14px 22px;
border-radius:999px;
text-decoration:none;
font-weight: 500;
}

.btn-area-phone:hover{
background:#1f57e7;
color:#fff;
}

/* mobile */

@media (max-width:992px){

.serviceAreas-head h2{
font-size:32px;
}
.aptExpert-lead {
  text-align: center;
}
.studs-image-box img {
  width: 100%;
}
.serviceAreas{
padding: 0 10px;
}

}
.aptExpert{
padding:30px 0;
background:#f7f8fb;
}

.aptExpert-grid{
display:grid;
grid-template-columns:1.1fr .9fr;
gap:48px;
align-items:start;
}
.aptExpert-title{
font-size:42px;
font-weight:900;
margin-bottom:12px;
}

.aptExpert-lead{
font-size:17px;
line-height:1.7;
color:#4f4f4f;
margin-bottom:20px;
}
.aptExpert-img{
width:100%;
border-radius:18px;
box-shadow:0 22px 55px rgba(0,0,0,.12);
border:6px solid #fff;
}
.aptExpert-mobile-image{
display:none;
margin:22px 0;
}
@media (max-width:800px) {
  .pricingHero-priceText {
  display: none;
}
}
@media (max-width:992px){

.aptExpert-grid{
grid-template-columns:1fr;
}

.aptExpert-media{
display:none;
}

.aptExpert-mobile-image{
display:block;
}

.aptExpert-title{
font-size:32px;
text-align: center;
}

}
@media (max-width: 768px) {
  .pricingHero-actions{
    display: none;
  }
  .studs-image-box img {
    width: 420px;
  }
  .serviceAreas-cta {
    display: none;
  }
  .aptExpert-lead {
    text-align: center;
  }
  .aptExpert {
    padding: 0 10px;
  }
}
.serviceAreas-toggle{
  display:none;
}
@media (max-width: 992px){
  .serviceAreasGrid--collapsible{
    max-height: 360px;
    overflow: hidden;
    position: relative;
  }
  .serviceAreasGrid--collapsible::after{
    content:"";
    position:absolute;
    left:0; right:0; bottom:0;
    height:80px;
    background: linear-gradient(to bottom, rgba(247,248,251,0), rgba(247,248,251,1));
    pointer-events:none;
  }
  .serviceAreasGrid--collapsible.is-open{
    max-height:none;
    overflow:visible;
  }
  .serviceAreasGrid--collapsible.is-open::after{
    display:none;
  }
  .serviceAreas-toggle{
    display:flex;
    width:100%;
    justify-content:center;
    align-items:center;
    margin:14px 0 0 0;
    padding:14px 16px;
    border-radius:12px;
    border:1px solid rgba(31,87,231,0.25);
    background:#fff;
    color:#1f57e7;
    font-weight:900;
    cursor:pointer;
  }
  .serviceAreas-toggle:active{
    transform:scale(0.99);
  }
}
.promoQuoteBand{
  --promo-band-bg: var(--btn-primary);
  --promo-band-text: #fff;
  --promo-band-line: rgba(255,255,255,.35);
  --promo-band-star: #fbbc05;
  --promo-band-outline: rgba(255,255,255,.72);
  --promo-band-outline-hover: #fff;
  color: var(--promo-band-text);
  padding: 40px 0;
}

.promoQuoteBand__inner{
  margin: 0 auto;
  text-align: center;
}

.promoQuoteBand__title{
  margin: 0;
  color: #000000;
  font-family: var(--font-h1);
  font-size: clamp(34px, 4vw, 40px);
  line-height: 1.02;
}

.promoQuoteBand__line{
  width: min(100%, 760px);
  height: 1px;
  margin: 24px auto 26px;
}

.promoQuoteBand__sub{
  margin: 0 auto;
  max-width: 860px;
  color: rgba(0, 0, 0, 0.96);
  font-family: var(--font-p);
  font-size: clamp(20px, 2.1vw, 20px);
  font-weight: 500;
  line-height: 1.35;
  margin-top: 30px;
}

.promoQuoteBand__reviews{
  margin: 30px auto 0;
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: #fff;
  padding: 10px 16px;
  border-radius: 999px;
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.promoQuoteBand__reviews:hover,
.promoQuoteBand__reviews:focus-visible{
  background: rgba(255,255,255,.08);
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
  transform: translateY(-1px);
}

.promoQuoteBand__google{
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
}

.promoQuoteBand__google svg{
  width: 24px;
  height: 24px;
  display: block;
}

.promoQuoteBand__stars{
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.promoQuoteBand__stars svg{
  width: 22px;
  height: 22px;
  fill: var(--promo-band-star);
  display: block;
}

.promoQuoteBand__reviewsText{
  font-family: var(--font-p);
  font-size: 16px;
  color: #000000;
  white-space: nowrap;
}

.promoQuoteBand__actions{
  margin-top: 34px;
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}
.promoQuoteBand__actions2{
  margin-top: 34px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.promoQuoteBand__btn{
  min-width: 240px;
  min-height: 64px;
  font-family: var(--font-p);
  font-size: 18px;
  font-weight: 700;
  padding: 18px 28px;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}

.promoQuoteBand__btn:hover{
  transform: translateY(-2px);
}

.promoQuoteBand__btn--solid{
  background: #fff;
  color: var(--btn-primary);
  border: 1px solid #fff;
}

.promoQuoteBand__btn--solid:hover,
.promoQuoteBand__btn--solid:focus-visible{
  background: rgba(255,255,255,.92);
  color: var(--btn-primary);
}

.promoQuoteBand__btn--outline{
  background: transparent;
  color: #fff;
  border: 2px solid var(--promo-band-outline);
}

.promoQuoteBand__btn--outline:hover,
.promoQuoteBand__btn--outline:focus-visible{
  border-color: var(--promo-band-outline-hover);
  background: rgba(255,255,255,.08);
  color: #fff;
}

@media (max-width: 992px){

  .promoQuoteBand__title{
    font-size: clamp(34px, 8vw, 54px);
    font-weight: 900;
  }

  .promoQuoteBand__sub{
    font-size: 20px;
  }

  .promoQuoteBand__btn{
    min-width: 220px;
    min-height: 58px;
    font-size: 17px;
  }
  .promoQuoteBand__actions2 {
    justify-content: center;
  }
}

@media (max-width: 576px){
.section.promoQuoteBand {
    padding: 30px 20px 0px;
}
  .promoQuoteBand__line{
    margin: 18px auto 20px;
  }

  .promoQuoteBand__sub{
    font-size: 17px;
    line-height: 1.45;
    margin-left: 15px;
    margin-right: 15px;
  }

  .promoQuoteBand__reviews{
    gap: 10px;
    padding: 8px 12px;
  }

  .promoQuoteBand__stars svg{
    width: 18px;
    height: 18px;
  }

  .promoQuoteBand__reviewsText{
    font-size: 14px;
  }

  .promoQuoteBand__actions{
    margin-top: 28px;
    gap: 12px;
  }

  .promoQuoteBand__btn{
    width: 100%;
    min-width: 0;
    min-height: 54px;
    font-size: 16px;
    padding: 16px 20px;
  }
}
.optimal-tv-height h2 {
  text-align: center;
  font-size: 35px;
}

.optimal-tv-height p {
  margin-bottom: 18px;
  line-height: 1.7;
}

.optimal-tv-image {
  max-width: 900px;
  margin: 40px auto;
}

.optimal-tv-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.12);
}
/* =========================
   DESKTOP (default)
   ========================= */

.pricingHeroRow{
  padding-left: 50px;
  padding-right: 50px;
  padding-bottom: 50px;
}

.pricingHeroRow__grid{
  display: grid;
  grid-template-columns: 1.55fr 1fr;
  gap: 32px;
  align-items: stretch;
}

.pricingHeroCard{
  background: #f7f7f7;
  border-radius: 34px;
  padding: 44px 46px;
  display: flex;
  flex-direction: column;
}

.pricingHeroCard__title{
  margin: 0 0 16px 0;
  font-size: 44px;
  font-weight: 900;
  line-height: 1.06;
  letter-spacing: -0.4px;
  color: #0b0f14;
}

.pricingHeroCard__price{
  font-weight: 900;
  color: #1f57e7;
}

.pricingHeroCard__lead{
  margin: 0 0 22px 0;
  font-size: 18px;
  line-height: 1.5;
  color: #0b0f14;
  max-width: 62ch;
}

.pricingHeroCard__list{
  list-style: none;
  padding: 0;
  margin: 0 0 26px 0;
  display: grid;
  gap: 14px;
}

.pricingHeroCard__item{
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 14px;
  align-items: start;
  font-size: 18px;
  line-height: 1.55;
  color: #0b0f14;
}

.pricingHeroCard__check{
  width: 22px;
  height: 22px;
  margin-top: 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0046be;
}

.pricingHeroCard__check svg{
  width: 22px;
  height: 22px;
}

.pricingHeroCard__muted{
  opacity: .78;
  font-weight: 500;
}

.pricingHeroCtas{
  margin-top: auto;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.pricingHeroMedia{
  border-radius: 34px;
  overflow: hidden;
  min-height: 420px;
  background: #e9e9e9;
}

.pricingHeroMedia__bg{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.03);
}


/* =========================
   TABLET (≤1024px)
   2 cards per row + image on top in each card
   ========================= */

@media (max-width:1024px){

  /* wrapper controls spacing on tablet */
  .pricingWrapper{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding-left: 24px;
    padding-right: 24px;
    padding-bottom: 24px;
  }

  /* remove section padding because wrapper controls layout */
  .pricingHeroRow{
    padding: 0;
  }

  /* stack inside each card */
  .pricingHeroRow__grid{
    grid-template-columns: 1fr;
    gap: 0;
  }

  /* image on top */
  .pricingHeroMedia{
    order: -1;
    border-radius: 34px 34px 0 0;
    min-height: 260px;
  }

  /* content bottom */
  .pricingHeroCard{
    border-radius: 0 0 34px 34px;
    padding: 28px;
  }

  .pricingHeroCard__title{
    font-size: 28px;
  }

  .pricingHeroCard__lead,
  .pricingHeroCard__item{
    font-size: 16.5px;
  }
}


/* Optional: if you want 1 column on smaller tablets */
@media (max-width:820px){
  .pricingWrapper{
    grid-template-columns: 1fr;
  }
}


/* =========================
   MOBILE (≤640px)
   ONE card per screen + 10px side padding + swipe to next
   ========================= */

@media (max-width:740px){

  /* wrapper becomes slider */
  .pricingWrapper{
    display: flex;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 10px;
  padding-left: 20px;
  padding-right: 20px;
    padding-bottom: 12px;

    -webkit-overflow-scrolling: touch;
  }
  .pricingHeroRow{
    flex: 0 0 auto;
    width: calc(100vw - 60px);
    padding: 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  
  .pricingHeroRow{
  width: calc(100vw - 60px);
}

  /* stack inside slide */
  .pricingHeroRow__grid{
    grid-template-columns: 1fr;
    gap: 0;
  }

  /* image compact on top */
  .pricingHeroMedia{
    order: -1;
    border-radius: 26px 26px 0 0;
    min-height: 170px;
    max-height: 190px;
  }

  .pricingHeroMedia__bg{
    height: 100%;
    transform: none; /* remove scale on mobile */
  }

  /* compact content */
  .pricingHeroCard{
    border-radius: 0 0 26px 26px;
    padding: 16px;
  }

  .pricingHeroCard__title{
    font-size: 20px;
    margin-bottom: 10px;
    line-height: 1.15;
  }

  .pricingHeroCard__lead{
    font-size: 14px;
    margin-bottom: 12px;
  }

  .pricingHeroCard__list{
    gap: 10px;
    margin-bottom: 14px;
  }

  .pricingHeroCard__item{
    font-size: 14px;
    line-height: 1.45;
    grid-template-columns: 22px 1fr;
    gap: 10px;
  }

  .pricingHeroCard__check{
    width: 18px;
    height: 18px;
    margin-top: 2px;
  }

  .pricingHeroCard__check svg{
    width: 18px;
    height: 18px;
  }

  .pricingHeroCtas{
    gap: 10px;
  }

  /* hide scrollbar */
  .pricingWrapper::-webkit-scrollbar{
    display: none;
  }
}
/* =========================
   Additional Services & Add-Ons
   ========================= */

.addonsSection{
  padding: 20px 50px 60px;
}

.addonsSection__head{
  max-width: 760px;
  margin: 0 0 28px;
}

.addonsSection__title{
  margin: 0 0 12px;
  font-size: 38px;
  line-height: 1.08;
  letter-spacing: -0.4px;
  color: var(--text);
  font-weight: 900;
}

.addonsSection__text{
  margin: 0;
  max-width: 62ch;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(0, 0, 0, 0.78);
}

.addonsGrid{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.addonsGrid__item{
  margin: 0;
  padding: 0;
}

.addonsCard{
  display: block;
  height: 100%;
  text-decoration: none;
  color: inherit;
  background: #f7f7f7;
  border: 1px solid var(--border);
  border-radius: 28px;
  padding: 22px 22px 20px;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

/* clickable cards */
a.addonsCard:hover{
  transform: translateY(-4px);
  border-color: rgba(0, 70, 190, 0.35);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.08);
  cursor: pointer;
}

a.addonsCard:hover .addonsCard__title{
  color: var(--btn-primary);
}

a.addonsCard:hover .addonsCard__price{
  background: var(--btn-primary-hover);
}

/* underline only for clickable cards */
a.addonsCard .addonsCard__title{
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(0, 0, 0, 0.35);
  transition: color .18s ease, text-decoration-color .18s ease;
}

a.addonsCard:hover .addonsCard__title{
  text-decoration-color: var(--btn-primary);
}

/* static cards: no click, no underline */
.addonsCard--static{
  cursor: default;
}

.addonsCard--static .addonsCard__title{
  text-decoration: none;
}

.addonsCard--static:hover{
  transform: none;
  box-shadow: none;
  border-color: var(--border);
}

.addonsCard--static:hover .addonsCard__title{
  color: var(--text);
}

.addonsCard--static:hover .addonsCard__price{
  background: var(--btn-primary);
}

.addonsCard__top{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}

.addonsCard__title{
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  color: #343434;
}

.addonsCard__price{
  flex: 0 0 auto;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--btn-primary);
  color: #fff;
  font-size: 15px;
  line-height: 1;
  font-weight: 700;
  transition: background .18s ease;
}

.addonsCard__desc{
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: rgba(0, 0, 0, 0.78);
}

.addonsSection__actions{
  margin-top: 28px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* =========================
   Tablet
   ========================= */

@media (max-width: 1024px){
  .addonsSection{
    padding: 10px 24px 40px;
  }

  .addonsSection__title{
    font-size: 36px;
  }

  .addonsSection__text{
    font-size: 16px;
  }

  .addonsGrid{
    gap: 16px;
  }

  .addonsCard{
    border-radius: 24px;
    padding: 18px;
  }

  .addonsCard__title{
    font-size: 20px;
  }
}

/* =========================
   Mobile
   ========================= */

@media (max-width: 740px){
  .addonsSection{
    padding: 10px 20px 34px;
  }

  .addonsGrid{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .addonsSection__title{
    font-size: 36px;
    text-align: center;
  }

  .addonsSection__text{
    font-size: 15px;
    text-align: center;
  }

  .addonsCard{
    border-radius: 22px;
    padding: 16px;
    text-align: center;
  }

.addonsCard__top{
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}

  .addonsCard__title{
    font-size: 18px;
  }

  .addonsCard__desc{
    font-size: 14px;
  }

  .addonsCard__price{
    min-height: 36px;
    padding: 8px 12px;
    font-size: 14px;
  }
}
/* =========================
   Trust Section
   ========================= */

.trust-section {
  padding: 40px 50px 60px;
}

.trust-section__container {
  margin: 0 auto;
  padding: 0 20px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
  grid-template-areas:
    "title image"
    "text image";
  column-gap: 56px;
  row-gap: 20px;
  align-items: start;
}

.trust-section__title {
  grid-area: title;
  margin: 0;
  font-size: 42px;
  line-height: 1.1;
  font-weight: 900;
  color: #111;
}

.trust-section__text {
  grid-area: text;
}

.trust-section__text p {
  margin: 0 0 18px;
  font-size: 18px;
  line-height: 1.75;
  color: #222;
}

.trust-section__text p:last-child {
  margin-bottom: 0;
}

.trust-section__image-wrap {
  grid-area: image;
  width: 100%;
}

.trust-section__image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 20px;
  object-fit: cover;
}

/* Tablet */
@media (max-width: 991px) {
  .trust-section {
    padding: 50px 0;
  }

  .trust-section__container {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    column-gap: 32px;
    row-gap: 18px;
  }

  .trust-section__title {
    font-size: 34px;
  }

  .trust-section__text p {
    font-size: 17px;
    line-height: 1.7;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .trust-section {
    padding: 40px 0;
  }

  .trust-section__container {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "image"
      "text";
    row-gap: 18px;
    column-gap: 0;
    padding: 0 16px;
  }

  .trust-section__title {
    font-size: 36px;
    line-height: 1.15;
    text-align: center;
  }

  .trust-section__text p {
    font-size: 16px;
    line-height: 1.65;
    margin-bottom: 14px;
  }

  .trust-section__image {
    border-radius: 16px;
  }
}
/* =========================
   CTA INSTALL SECTION
   ========================= */

.cta-install{
    width:100%;
    box-shadow: 0 10px 20px -10px rgba(0,0,0,0.25);
}

.cta-install__container{
    max-width:1300px;
    margin:0 auto;
    padding:0 20px;

    display:grid;
    grid-template-columns:1fr 420px;
    align-items:center;
    gap:60px;
}

/* TEXT */

.cta-install__title{
    font-size:48px;
    font-weight:900;
    line-height:1.1;
    margin-bottom:30px;
    color:#111;
}

/* BUTTONS */

.cta-install__buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.cta-install__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 28px;
    font-size:16px;
    font-weight:600;
    border-radius:10px;
    text-decoration:none;
    transition:0.25s;
}

/* primary */

.cta-install__btn--primary{
    background:#000;
    color:#fff;
}

.cta-install__btn--primary:hover{
    background:#333;
}

/* phone */

.cta-install__btn--phone{
    border:2px solid #000;
    color:#000;
}

.cta-install__btn--phone:hover{
    background:#000;
    color:#fff;
}

/* IMAGE */

.cta-install__image-wrap{
    width:100%;
}
@media (max-width: 768px) {
  .cta-install__image-wrap {
    display: flex;
    justify-content: center;
  }

  .cta-install__image {
    margin: 0 auto;
  }
}
.cta-install__image{
    width:60%;
    height:auto;
    display:block;
    border-radius:18px;
}


/* =========================
   MOBILE
   ========================= */

@media (max-width:768px){

.cta-install{
    padding:0px 0;
}

.cta-install__container{
    grid-template-columns:1fr;
    gap:30px;
}

.cta-install__title{
    font-size:40px;
    text-align: center;
}

.cta-install__buttons{
    gap:12px;
}

.cta-install__btn{
    width:100%;
}

}
.service-block {
  padding: 60px 0;
}

.service-block h2 {
  font-size: 45px;
  margin-bottom: 12px;
}

.service-price {
  font-size: 40px;
  margin-bottom: 18px;
}

.service-price strong {
  font-size: 24px;
  margin-left: 10px;
  color: #0046be;
}

.service-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}

.service-badges span {
  background: #0046be;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 14px;
  color: #ffffff;
  font-weight: 500;
}

.service-desc {
  max-width: 650px;
  line-height: 1.7;
}
@media (min-width: 769px) and (max-width: 1024px){
  .cta-install__container{
    grid-template-columns: minmax(0, 1.45fr) minmax(220px, 0.55fr);
    gap: 24px;
  }

  .cta-install__title{
    font-size: 38px;
    margin-bottom: 22px;
  }

  .cta-install__image-wrap{
    width: 100%;
    display: flex;
    justify-content: flex-end;
  }

  .cta-install__image{
    width: 85%;
    max-width: 260px;
    margin-left: auto;
  }
}
.brandTicker{
  padding: 48px 0;
  overflow: hidden;
}

.brandTicker__head{
  text-align: center;
  margin-bottom: 24px;
}

.brandTicker__title{
  margin: 0 0 10px;
  font-size: 46px;
  line-height: 1.15;
  font-weight: 700;
}

.brandTicker__text{
  max-width: 760px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.6;
  color: rgba(0,0,0,.72);
}

.brandTicker__viewport{
  width: 100%;
  overflow: hidden;
}

.brandTicker__track{
  display: flex;
  align-items: center;
  gap: 56px;
  width: max-content;
  animation: brandTickerMove 30s linear infinite;
  will-change: transform;
}

.brandTicker__logo{
  height: 55px;
  width: auto;
  display: block;
  flex: 0 0 auto;
  object-fit: contain;
  opacity: .95;
}

@keyframes brandTickerMove{
  from{
    transform: translateX(0);
  }
  to{
    transform: translateX(-50%);
  }
}
@media (max-width: 1024px){
  .brandTicker{
    padding: 40px 0;
  }

  .brandTicker__title{
    font-size: 46px;
  }

  .brandTicker__text{
    font-size: 16px;
  }

  .brandTicker__track{
    gap: 40px;
    animation-duration: 26s;
  }

  .brandTicker__logo{
    height: 55px;
  }
}

@media (max-width: 768px){
  .brandTicker{
    padding: 34px 0;
  }

  .brandTicker__head{
    margin-bottom: 18px;
  }

  .brandTicker__title{
    font-size: 36px;
  }

  .brandTicker__text{
    font-size: 15px;
    line-height: 1.5;
  }

  .brandTicker__track{
    gap: 28px;
    animation-duration: 22s;
  }

  .brandTicker__logo{
    height: 55px;
  }
}
/* =========================
   Benefits — TV Mounting page
   ========================= */

.benefitsMount{
  padding: 0 0 40px;
  overflow: hidden;
}

.benefitsMount__head{
  max-width: 760px;
  margin: 0 auto 30px;
  text-align: center;
}

.benefitsMount__title{
  margin: 0 0 10px;
  font-size: 36px;
  line-height: 1.12;
  color: #111827;
}

.benefitsMount__text{
  margin: 0;
  font-size: 17px;
  line-height: 1.65;
  color: rgba(17,24,39,.72);
}

.benefitsMount__slider{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.benefitsMount__card{
  position: relative;
  min-height: 100%;
  padding: 28px 26px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(0, 70, 190, 0.08);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  text-align: center;
  align-items: center;
  display: flex;
  flex-direction: column;
}

.benefitsMount__card:hover{
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.10);
  border-color: rgba(0, 70, 190, 0.18);
}

.benefitsMount__icon{
  width: 80px;
  height: 80px;
  margin-bottom: 18px;
  color: var(--btn-primary);
}

.benefitsMount__icon svg{
  width: 100%;
  height: 100%;
  display: block;
}

.benefitsMount__cardTitle{
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.2;
  color: #111827;
}

.benefitsMount__cardText{
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
  color: rgba(17,24,39,.74);
}

@media (max-width: 1024px){
  .benefitsMount{
    padding: 44px 0 40px;
  }

  .benefitsMount__title{
    font-size: 31px;
  }

  .benefitsMount__text{
    font-size: 16px;
  }

  .benefitsMount__slider{
    gap: 16px;
  }

  .benefitsMount__card{
    padding: 24px 20px;
    border-radius: 24px;
  }

  .benefitsMount__icon{
    width: 74px;
    height: 74px;
    margin-bottom: 16px;
  }

  .benefitsMount__cardTitle{
    font-size: 20px;
  }

  .benefitsMount__cardText{
    font-size: 15px;
    line-height: 1.58;
  }
}

@media (max-width: 740px){
  .benefitsMount{
    padding: 34px 0 30px;
  }

  .benefitsMount__head{
    margin-bottom: 18px;
    padding: 0 20px;
    text-align: left;
  }

  .benefitsMount__title{
    font-size: 26px;
  }

  .benefitsMount__text{
    font-size: 15px;
    line-height: 1.55;
  }

  .benefitsMount__slider{
    display: flex;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 12px;
    -webkit-overflow-scrolling: touch;
  }

  .benefitsMount__slider::-webkit-scrollbar{
    display: none;
  }

  .benefitsMount__card{
    flex: 0 0 auto;
    width: calc(100vw - 80px);
    padding: 22px 18px;
    border-radius: 22px;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  .benefitsMount__icon{
    width: 80px;
    height: 80px;
    margin-bottom: 14px;
  }

  .benefitsMount__cardTitle{
    font-size: 20px;
  }

  .benefitsMount__cardText{
    font-size: 14px;
    line-height: 1.55;
  }
}
.reviewsShowcase{
  padding: 56px 0 44px;
  overflow: hidden;
}

.reviewsShowcase__head{
  max-width: 820px;
  margin: 0 auto 28px;
  text-align: center;
}

.reviewsShowcase__title{
  margin: 0 0 10px;
  font-size: 38px;
  line-height: 1.1;
  color: #111827;
}

.reviewsShowcase__text{
  margin: 0;
  font-size: 17px;
  line-height: 1.65;
  color: rgba(17,24,39,.72);
}

.reviewsShowcase__grid{
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 18px;
  align-items: start;
}

.reviewCard{
  border: 1px solid rgba(21, 81, 212, 0.10);
  border-radius: 28px;
  padding: 22px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.reviewCard:hover{
  transform: translateY(-4px);
}

.reviewCard--featured{
  grid-column: 1;
  grid-row: 1 / span 2;
}

.reviewCard--accent{
  grid-column: 3;
  grid-row: 2 / span 2;
  background: linear-gradient(180deg, #ffffff 0%, #f5fbff 100%);
}

.reviewsShowcase__grid > .reviewCard:nth-child(2){
  grid-column: 2;
  grid-row: 1;
}

.reviewsShowcase__grid > .reviewCard:nth-child(3){
  grid-column: 3;
  grid-row: 1;
}

.reviewsShowcase__grid > .reviewCard:nth-child(4){
  grid-column: 2;
  grid-row: 2;
}

.reviewsShowcase__grid > .reviewCard:nth-child(6){
  grid-column: 1;
  grid-row: 3;
}

.reviewsShowcase__grid > .reviewCard:nth-child(7){
  grid-column: 2;
  grid-row: 3;
}

.reviewCard__top{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.reviewCard__name{
  margin: 0 0 4px;
  font-size: 20px;
  line-height: 1.2;
  color: #111827;
}

.reviewCard__meta{
  font-size: 14px;
  line-height: 1.4;
  color: rgba(17,24,39,.58);
}

.reviewCard__platformIcon{
  width: 34px;
  height: 34px;
  object-fit: contain;
  flex: 0 0 auto;
}

.reviewCard__stars{
  margin-bottom: 14px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 2px;
  color: #f59e0b;
}

.reviewCard__media{
  margin-bottom: 14px;
}

.reviewCard__photo{
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 18px;
}

.reviewCard__text{
  margin: 0;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(17,24,39,.82);
}

/* tablet */
@media (max-width: 1024px){
  .reviewsShowcase{
    padding: 46px 0 38px;
  }

  .reviewsShowcase__title{
    font-size: 31px;
  }

  .reviewsShowcase__text{
    font-size: 16px;
  }

  .reviewsShowcase__grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }

  .reviewCard,
  .reviewCard--featured,
  .reviewCard--accent{
    grid-column: auto !important;
    grid-row: auto !important;
    padding: 18px;
    border-radius: 22px;
  }

  .reviewCard__name{
    font-size: 18px;
  }

  .reviewCard__text{
    font-size: 14px;
    line-height: 1.62;
  }

  .reviewCard__platformIcon{
    width: 30px;
    height: 30px;
  }
}

/* mobile horizontal slider */
@media (max-width: 740px){
  .reviewsShowcase{
    padding: 36px 0 28px;
  }

  .reviewsShowcase__head{
    margin-bottom: 18px;
    padding: 0 20px;
    text-align: left;
  }

  .reviewsShowcase__title{
    font-size: 27px;
  }

  .reviewsShowcase__text{
    font-size: 15px;
    line-height: 1.55;
  }

  .reviewsShowcase__grid{
    display: flex;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 20px;
    padding: 0 20px 12px;
    -webkit-overflow-scrolling: touch;
  }

  .reviewsShowcase__grid::-webkit-scrollbar{
    display: none;
  }

  .reviewCard,
  .reviewCard--featured,
  .reviewCard--accent{
    flex: 0 0 auto;
    width: calc(100vw - 58px);
    scroll-snap-align: start;
    scroll-snap-stop: always;
    padding: 18px;
    border-radius: 22px;
  }

  .reviewCard__platformIcon{
    width: 30px;
    height: 30px;
  }

  .reviewCard__name{
    font-size: 18px;
  }

  .reviewCard__stars{
    font-size: 17px;
    margin-bottom: 12px;
  }

  .reviewCard__text{
    font-size: 14px;
    line-height: 1.58;
  }
}
.wc-local-section{
  padding: 56px 0;
}

.wc-local-shell{
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.9fr);
  gap: 24px;
  align-items: stretch;
  padding: 28px;
  border: 1px solid rgba(0, 70, 190, 0.10);
  border-radius: 28px;
}

.wc-local-kicker{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(0, 70, 190, 0.08);
  color: var(--btn-primary);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.wc-local-intro h2{
  margin: 0 0 14px;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.wc-local-intro p{
  margin: 0 0 14px;
  font-size: 17px;
  line-height: 1.75;
  color: #49515d;
  max-width: 760px;
}

.wc-local-panel{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 22px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.05);
}

.wc-local-panel h3{
  margin: 0 0 16px;
  font-size: 22px;
  line-height: 1.2;
}

.wc-local-tags{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.wc-local-tags li{
  padding: 12px 14px;
  border-radius: 14px;
  background: #f5f8ff;
  border: 1px solid rgba(0, 70, 190, 0.10);
  color: #16315f;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.3;
}

.wc-local-note{
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  font-size: 14px;
  line-height: 1.7;
  color: #66707d;
}

.wc-faq{
  margin-top: 26px;
  padding: 28px;
  border-radius: 28px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.05);
}

.wc-faq-head{
  max-width: 760px;
  margin-bottom: 22px;
}

.wc-faq-head h2{
  margin: 0 0 10px;
  font-size: clamp(28px, 3.6vw, 38px);
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.wc-faq-head p{
  margin: 0;
  font-size: 16px;
  line-height: 1.75;
  color: #5b6573;
}

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

.wc-faq-item{
  border: 1px solid rgba(0, 70, 190, 0.10);
  border-radius: 20px;
  overflow: hidden;
}

.wc-faq-item summary{
  list-style: none;
  cursor: pointer;
  position: relative;
  padding: 20px 54px 20px 20px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.wc-faq-item summary::-webkit-details-marker{
  display: none;
}

.wc-faq-item summary::after{
  content: "+";
  position: absolute;
  right: 18px;
  top: 18px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 70, 190, 0.08);
  color: var(--btn-primary);
  font-size: 20px;
  font-weight: 700;
}

.wc-faq-item[open] summary::after{
  content: "−";
}

.wc-faq-answer{
  padding: 0 20px 20px;
}

.wc-faq-answer p{
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: #55606d;
}

@media (max-width: 992px){
  .wc-local-shell{
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .wc-faq{
    padding: 22px;
  }

  .wc-faq-grid{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px){
  .wc-local-section{
    padding: 40px 0;
  }

  .wc-local-shell,
  .wc-faq{
    padding: 18px;
    border-radius: 22px;
  }

  .wc-local-intro p,
  .wc-faq-head p{
    font-size: 15px;
    line-height: 1.7;
  }

  .wc-faq-item summary{
    padding: 18px 50px 18px 16px;
    font-size: 16px;
  }

  .wc-faq-answer{
    padding: 0 16px 18px;
  }

  .wc-local-tags li{
    width: 100%;
  }
}
