/* =========================================================
0) Reset / Base
========================================================= */
.landing-seo *,
.landing-seo *::before,
.landing-seo *::after{
box-sizing:border-box;
}

.landing-seo{
  --strong-default:600;
  --heading-color:var(--ink,#222);
  --heading-section-size:clamp(26px, 3vw, 34px);
  --heading-section-weight:800;
  --heading-section-line:1.15;
  --heading-section-spacing:-0.025em;
  overflow-x:hidden;
}

.landing-seo .container{
width:100%;
padding-right:.75rem;
padding-left:.75rem;
margin-right:auto;
margin-left:auto;
}

.landing-seo p{
font-size:16px;
line-height:1.5;
color:#666;
}

.landing-seo strong,
.landing-seo .u-strong{
font-weight:var(--strong-default);
}

.landing-seo .faq-section strong,
.landing-seo .faq-section .u-strong{
color:#333;
}

/* =========================================================
1) Shared Heading System
========================================================= */

.landing-seo :is(
  .intent__title,
  .how-it-works > h2,
  .reviews__title,
  .section__title,
  .menu-pricing__title,
  .carousel-gallery__title,
  .service-areas__title,
  .hub-guides__title,
  .gallery__title,
  .faq-title
){
  color:var(--heading-color);
  font-size:var(--heading-section-size);
  font-weight:var(--heading-section-weight);
  line-height:var(--heading-section-line);
  letter-spacing:var(--heading-section-spacing);
  text-align:center;
}

.landing-seo .carousel-gallery__title,
.landing-seo .gallery__title{
  margin:0 0 14px;
  padding:6px 12px;
}

.landing-seo :is(
  .carousel-gallery__desc,
  .gallery__desc
){
  max-width:720px;
  margin:0 auto 16px;
  padding:0 12px;
  color:#5f6673;
  font-size:15px;
  line-height:1.7;
  text-align:center;
}

.landing-seo :is(
  .menu-pricing__subtitle,
  .service-areas__subtitle,
  .hub-guides__group-title
){
  color:var(--heading-color);
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.01em;
}

.landing-seo :is(
  .how-it-works__card h3,
  .c-feature__title,
  .hub-guides__card-title
){
  color:var(--heading-color);
  font-weight:600;
  line-height:1.3;
  letter-spacing:-.01em;
}

/* =========================================================
2) Global Utilities
========================================================= */

.landing-seo :is(
  #booking,
  #pricing,
  #reviews,
  #service-areas,
  #faq
){
  scroll-margin-top:90px;
}

.landing-seo .icon-emoji{
  display:inline-block;
  margin-right:3px;
  font-size:18px;
  line-height:1;
}

.landing-seo .text-highlight{
color:#ff4f00;
font-weight:800;
}

.landing-seo .inline-link{
  color:#1e63d5;
  font-weight:500;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}

.landing-seo .inline-link:hover{
  color:#174ea6;
  text-decoration:none;
}

.landing-seo .inline-link:focus-visible{
  outline:2px solid rgba(30,99,213,.25);
  outline-offset:3px;
  border-radius:2px;
}

/* =========================================================
3) Shared CTA Width
========================================================= */

.landing-seo .intent__actions .hw-btn,
.landing-seo .service-areas__actions .hw-btn,
.landing-seo .cta-bottom__actions .hw-btn{
     width:260px;
     justify-content:center;
}

@media (max-width:600px){
     .landing-seo .intent__actions .hw-btn,
     .landing-seo .service-areas__actions .hw-btn,
     .landing-seo .cta-bottom__actions .hw-btn{
          width:90%;
          max-width:320px;
     }
}
/* =========================================================
4) Hero
========================================================= */

.landing-seo .show-desktop{
     display:block;
     visibility:visible;
}

.landing-seo .show-mobile{
     display:none;
     visibility:hidden;
}

@media (max-width:991.98px){

     .landing-seo .show-desktop{
          display:none !important;
          visibility:hidden !important;
     }

     .landing-seo .show-mobile{
          display:block !important;
          visibility:visible !important;
     }

}

.landing-seo .hero{
position:relative;
left:50%;
width:100vw;
min-height:clamp(540px, 75vh, 780px);
margin-left:-50vw;
overflow:hidden;
isolation:isolate;
}

.landing-seo .hero::before{
content:"";
position:absolute;
inset:0;
z-index:1;
pointer-events:none;
background:linear-gradient(
to bottom,
rgba(7,12,24,.58) 0%,
rgba(7,12,24,.42) 36%,
rgba(7,12,24,.26) 72%,
rgba(7,12,24,.18) 100%
);
}

.landing-seo .hero .hero__video{
position:absolute;
inset:0;
z-index:0;
width:100%;
height:100%;
object-fit:cover;
pointer-events:none;
filter:brightness(.94) contrast(1.08) saturate(1.05);
transform:scale(1.02) translateZ(0);
}

.landing-seo .hero .hero__overlay{
position:relative;
z-index:2;
max-width:760px;
margin-inline:auto;
padding:
calc(clamp(18px, 3vh, 34px) + env(safe-area-inset-top,0px))
18px
12px;
text-align:center;
color:#fff;
background:none;
}

.landing-seo .hero__title,
.landing-seo .hero__price,
.landing-seo .hero__min,
.landing-seo .hero__trust,
.landing-seo .hero__desc,
.landing-seo .hero-urgency{
text-shadow:0 2px 10px rgba(0,0,0,.35);
}

.landing-seo .hero .hero__cta{
        position:relative;
        z-index:3;
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        margin-top:0;
        text-shadow:none;
}

.landing-seo .hero .hw-btn{
        width:280px;
        min-width:0;
}
.landing-seo .btn--invert,
.landing-seo .btn--invert:link,
.landing-seo .btn--invert:visited{
        min-height:48px;
        margin:0 auto;
        padding:13px 32px;
        border:1px solid rgba(255,255,255,.24);
        border-radius:12px;
        background:rgba(255,255,255,.9);
        color:#111827;
        font-size:15px;
        font-weight:700;
        letter-spacing:.01em;
        backdrop-filter:blur(10px);
        box-shadow:0 8px 24px rgba(0,0,0,.16);
        transition:
                background .22s ease,
                transform .22s ease,
                box-shadow .22s ease;
}

@media (hover:hover) and (pointer:fine){
.landing-seo .btn--invert:hover{
background:#f5f5f5;
transform:translateY(-.5px);
box-shadow:0 16px 40px rgba(0,0,0,.3);
}
}

.landing-seo .btn--invert:active{
background:#f3f4f6;
transform:scale(.98);
box-shadow:0 6px 14px rgba(0,0,0,.16);
}

.landing-seo .hero__logo{
margin:18px 0 16px;
color:#fff;
font-size:clamp(38px, 5.6vw, 48px);
font-weight:900;
line-height:1.12;
letter-spacing:-.03em;
}

.landing-seo .hero__logo-highlight{
color:#00ff26;
font-size:clamp(40px, 5.8vw, 50px);
}

.landing-seo .hero .hero__title{
margin:8px 0 12px;
color:#fff;
font-size:clamp(26px, 3.4vw, 40px);
font-weight:900;
line-height:1.12;
letter-spacing:-.03em;
}

.landing-seo .hero__price{
margin:0 0 4px;
color:#fff;
font-size:clamp(15px, 1.6vw, 17px);
font-weight:500;
line-height:1.4;
}

.landing-seo .hero__min{
display:inline-block;
padding:6px 16px;
border:1px solid rgba(255,255,255,.22);
border-radius:999px;
background:rgba(255,255,255,.16);
white-space:nowrap;
backdrop-filter:blur(8px);
}

.landing-seo .hero__trust{
display:inline-flex;
align-items:center;
justify-content:center;
gap:2px;
margin:6px 0 10px;
color:rgba(255,255,255,.96);
font-size:14px;
font-weight:500;
line-height:1.35;
letter-spacing:.15px;
}

.landing-seo .hero__trust .icon-emoji{
color:#fbbf24;
font-size:15px;
transform:translateY(-1px);
}

.landing-seo .hero .hero__desc{
max-width:620px;
margin:0 auto 30px;
padding:0 6px;
color:#fff;
font-size:clamp(15px, 1.45vw, 16px);
font-weight:400;
line-height:1.5;
text-align:center;
}

.landing-seo .hero-urgency{
display:flex;
align-items:center;
justify-content:center;
gap:2px;
max-width:620px;
margin:14px auto 0;
padding:0 16px;
color:#fff4e8;
font-size:14px;
font-weight:600;
line-height:1.45;
text-align:center;
}

.landing-seo .hero-urgency .icon-emoji{
flex-shrink:0;
}

@media (max-width:767.98px){

  .landing-seo .hero{
    min-height:clamp(540px, 76svh, 700px);
  }

  .landing-seo .hero::before{
    background:linear-gradient(
      to bottom,
      rgba(7,12,24,.62) 0%,
      rgba(7,12,24,.45) 36%,
      rgba(7,12,24,.30) 72%,
      rgba(7,12,24,.20) 100%
    );
  }

  .landing-seo .hero .hero__video{
    filter:brightness(.92) contrast(1.08) saturate(1.05);
    transform:scale(1.04) translateZ(0);
  }

  .landing-seo .hero .hero__overlay{
    max-width:680px;
    padding:
      calc(clamp(34px, 5vh, 58px) + env(safe-area-inset-top,0px))
      18px
      14px;
  }

  .landing-seo .hero__logo{
    margin:22px 0 18px;
    font-size:clamp(34px, 9vw, 42px);
  }

  .landing-seo .hero__logo-highlight{
    font-size:clamp(36px, 9.5vw, 46px);
  }

  .landing-seo .hero .hero__title{
    margin:22px 0 18px;
    font-size:clamp(27px, 7.2vw, 34px);
    line-height:1.12;
  }

  .landing-seo .hero__price{
    font-size:14.5px;
    line-height:1.35;
  }

  .landing-seo .hero .hero__min{
    display:block;
    width:fit-content;
    max-width:100%;
    margin:0 auto;
    padding:6px 13px;
    font-size:13.5px;
    line-height:1.3;
    white-space:normal;
  }

  .landing-seo .hero__trust{
    margin:6px auto 20px;
    font-size:13.5px;
    line-height:1.35;
    letter-spacing:.1px;
  }

  .landing-seo .hero__trust .icon-emoji{
    font-size:13.5px;
  }

  .landing-seo .hero .hero__cta .hw-btn{
    width:100%;
    min-width:0;
    max-width:300px;
    padding:12px 24px;
    font-size:13.5px;
  }

  .landing-seo .hero-urgency{
    margin:10px auto 0;
    font-size:13.5px;
    line-height:1.45;
  }

  .landing-seo .btn--invert:hover{
    transform:none;
    box-shadow:none;
    animation:none;
  }
}

/* =========================================================
5) Intent
========================================================= */

.landing-seo #intent{
  padding:0 12px 6px;
}

.landing-seo .intent__container{
  max-width:960px;
  margin:0 auto;
  padding:0 4px;
  text-align:center;
}

.landing-seo .intent__title{
  margin:14px auto 12px;
  padding:0 6px;
  word-break:normal;
  overflow-wrap:anywhere;
}

.landing-seo .intent__subtitle{
  display:block;
  margin-top:6px;
  color:#ff4f00;
  font-size:clamp(17px,1.7vw,20px);
  font-weight:600;
  line-height:1.2;
}

.landing-seo .intent__lead{
  margin:4px 0;
  padding:0;
  color:#4a4a4a;
  font-size:clamp(15px,1.7vw,16px);
  line-height:1.6;
}

.landing-seo .intent-trust{
  margin:14px 0 10px;
  padding:0 .75rem;
  color:#444;
  font-size:clamp(15px,1.6vw,16px);
  font-weight:600;
  line-height:1.6;
  text-align:center;
}

.landing-seo .intent-pricing__container{
  max-width:720px;
  margin:0 auto;
  padding:0 .75rem;
  text-align:center;
}

.landing-seo .intent-pricing__title{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin:6px 0 10px;
  color:#ff4f00;
  font-size:clamp(17px,1.7vw,19px);
  font-weight:600;
  line-height:1.25;
}

.landing-seo .intent-pricing__list{
  margin:0 auto;
  padding:0;
  list-style:none;
  color:#4a4a4a;
  font-size:clamp(15px,1.7vw,17px);
  line-height:1.6;
}

.landing-seo .intent-pricing__item{
  padding:2px 0;
}

.landing-seo .intent-pricing__chip{
  display:inline-block;
  padding:0 .35em;
  border-radius:8px;
  background:rgba(255,79,0,.06);
  color:#ff4f00;
  font-weight:600;
}

.landing-seo .intent-pricing__note{
  margin:12px 0 22px;
  color:#555;
  font-size:clamp(14px,1.7vw,15px);
  font-style:italic;
  line-height:1.6;
  opacity:.8;
}

.landing-seo .intent__actions{
  display:flex;
  justify-content:center;
  margin:0;
}

/* =========================================================
6) How It Works
========================================================= */

.landing-seo .how-it-works{
  padding:18px 0 30px;
}

.landing-seo .how-it-works h2{
  margin:0 0 20px;
}

.landing-seo .how-it-works__grid{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:clamp(14px, 2.2vw, 24px);
width:min(1180px, 92vw);
margin:0 auto;
padding:0;
list-style:none;
}

.landing-seo .how-it-works__grid > li{
list-style:none;
}

.landing-seo .how-it-works__card{
position:relative;
padding:16px 18px;
border:1px solid rgba(15,23,42,.06);
border-radius:18px;
background:#fff;
text-align:center;
box-shadow:
0 18px 40px rgba(15,23,42,.08),
0 2px 10px rgba(15,23,42,.06);
}

.landing-seo .how-it-works__step{
display:inline-flex;
align-items:center;
justify-content:center;
width:42px;
height:42px;
margin:0 auto 6px;
border:2px solid #ff6a00;
border-radius:999px;
background:#fff;
color:#ff6a00;
font-size:16px;
font-weight:800;
line-height:1;
}

.landing-seo .how-it-works__card h3{
  margin:0 0 6px;
  color:#111827;
  font-size:18px;
  line-height:1.25;
}

.landing-seo .how-it-works__card p{
margin:0;
color:rgba(17,24,39,.78);
font-size:15px;
line-height:1.6;
}

.landing-seo .how-it-works__card a{
color:rgba(17,24,39,.78);
font-weight:400;
text-decoration:none;
}

@media (max-width:980px){
.landing-seo .how-it-works__grid{
grid-template-columns:repeat(2, minmax(0, 1fr));
}
}

@media (max-width:640px){
.landing-seo .how-it-works{
padding:12px 0;
}

.landing-seo .how-it-works h2{
margin-bottom:16px;
padding:0 8px;
}

.landing-seo .how-it-works__grid{
grid-template-columns:1fr;
gap:14px;
width:min(560px, 92vw);
}

.landing-seo .how-it-works__card{
padding:12px 12px 18px;
border-radius:16px;
}

.landing-seo .how-it-works__step{
width:40px;
height:40px;
font-size:15px;
}
}

/* =========================================================
7) Reviews
========================================================= */

.landing-seo .reviews__container{
width:100%;
max-width:1200px;
margin:20px auto 0;
padding:0 12px;
}

.landing-seo .reviews__title{
  margin:0 0 18px;
  padding:6px 10px;
}

.landing-seo .reviews-grid__list{
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:16px;
margin:12px 0 0;
padding:0;
list-style:none;
}

.landing-seo .reviews-grid__item{
min-width:0;
margin:0;
padding:0;
}

.landing-seo .reviews-grid__card{
display:flex;
flex-direction:column;
height:100%;
padding:18px 20px;
border:1px solid rgba(15,23,42,.06);
border-radius:18px;
background:#fff;
box-shadow:
0 10px 30px rgba(15,23,42,.06),
0 2px 6px rgba(15,23,42,.04);
transition:
box-shadow .18s ease,
border-color .18s ease,
background .18s ease;
}

.landing-seo .reviews-grid__header{
display:flex;
align-items:center;
gap:10px;
min-width:0;
margin-bottom:8px;
}

.landing-seo .reviews-grid__avatar{
flex:0 0 auto;
width:28px;
height:28px;
border-radius:50%;
object-fit:cover;
}

.landing-seo .reviews-grid__author{
overflow:hidden;
color:#111827;
font-size:.98rem;
font-weight:600;
line-height:1.15;
text-overflow:ellipsis;
white-space:nowrap;
}

.landing-seo .reviews-grid__stars{
margin-top:2px;
color:#ffb400;
font-size:14px;
line-height:1.1;
letter-spacing:.3px;
}

.landing-seo .reviews-grid__text{
  display:-webkit-box;
  margin:6px 0 0;
  overflow:hidden;
  color:#4a4a4a;
  font-size:.9rem;
  line-height:1.6;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
}

.landing-seo .reviews-note{
  margin:8px 0 40px;
  color:#8b93a1;
  font-size:13px;
  line-height:1.6;
  text-align:center;
}

.landing-seo .reviews-note .icon-emoji{
  font-size:14px;
  margin-right:2px;
}

@media (max-width:1024px){
.landing-seo .reviews-grid__list{
grid-template-columns:repeat(2, minmax(0, 1fr));
}
}

@media (max-width:768px){
.landing-seo .reviews-grid__card{
padding:14px;
}
}

@media (max-width:680px){
.landing-seo .reviews-grid__list{
grid-template-columns:1fr;
gap:16px;
}

.landing-seo .reviews-grid__text{
-webkit-line-clamp:5;
}
}

/* =========================================================
8) Features / Section
========================================================= */

.landing-seo .section{
  margin:20px auto 0;
  padding:0 0 10px;
}

.landing-seo .section__container{
  max-width:1080px;
  margin:0 auto;
  padding:0 12px;
}

.landing-seo .section__title{
  margin:0 0 20px;
  padding:8px 16px;
}

.landing-seo .c-features__list{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin:0;
  padding:0;
  list-style:none;
}

.landing-seo .c-feature{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:12px;
  padding:16px 18px;
  border:1px solid transparent;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.10);
  transition:
    box-shadow .2s ease,
    border-color .2s ease;
}

.landing-seo .c-feature:hover,
.landing-seo .c-feature:focus-within{
  border-color:rgba(15,23,42,.08);
  box-shadow:0 6px 18px rgba(15,23,42,.08);
}

.landing-seo .c-feature__icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:12px;
  background:rgba(255,79,0,.08);
  font-size:24px;
  line-height:1;
  transition:
    transform .25s cubic-bezier(.25,.8,.25,1),
    background-color .25s ease;
}

.landing-seo .c-feature:hover .c-feature__icon,
.landing-seo .c-feature:focus-within .c-feature__icon{
  background:rgba(255,79,0,.14);
  transform:translateY(-6px) rotate(-6deg) scale(1.12);
}

.landing-seo .c-feature__title{
  margin:0 0 4px;
  color:#222;
  font-size:clamp(16px, 2vw, 18px);
  line-height:1.25;
  text-align:left;
}

.landing-seo .c-feature__desc{
  margin:0;
  color:#4a4a4a;
  font-size:clamp(14px, 1.7vw, 16px);
  line-height:1.45;
  text-align:left;
}

@media (max-width:992px){
  .landing-seo .c-features__list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:600px){
  .landing-seo .c-features__list{
    grid-template-columns:1fr;
  }
}

/* =========================================================
9) Menu Pricing
========================================================= */

.landing-seo .menu-pricing{
  padding:24px 2px 2px;
}

.landing-seo .menu-pricing__container{
  max-width:1080px;
  margin:0 auto;
  text-align:center;
}

.landing-seo .menu-pricing__title{
  margin:0 0 18px;
  padding:8px 16px;
}

.landing-seo .menu-pricing__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:20px;
  margin:8px 0 20px;
  text-align:left;
}

.landing-seo .menu-pricing__col{
  padding:24px 22px 20px;
  border-radius:18px;
  background:#fff;
  box-shadow:
    0 6px 14px rgba(0,0,0,.06),
    0 1px 2px rgba(0,0,0,.04);
}

.landing-seo .menu-pricing__subtitle{
  margin-bottom:10px;
  font-size:18px;
  font-weight:600;
}

.landing-seo .menu-pricing__list{
  margin:0 0 16px;
  padding-left:18px;
  color:#374151;
  font-size:14px;
}

.landing-seo .menu-pricing__list li + li{
  margin-top:6px;
}

@media (max-width:640px){
  .landing-seo .menu-pricing__container{
    padding-right:12px;
    padding-left:12px;
  }

  .landing-seo .menu-pricing__grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
10) Carousel / Gallery
Styles provided by gallery-base.css
========================================================= */

/* =========================================================
11) Service Areas
========================================================= */

.landing-seo .service-areas__container{
  max-width:1200px;
  margin:0 auto;
  padding:0 12px;
}

.landing-seo .service-areas__title{
  margin:4px 0 16px;
  padding:2px 4px;
}

.landing-seo .service-areas__intro{
  max-width:720px;
  margin:0 auto 10px;
  text-align:center;
  color:#4a4a4a;
  font-size:15px;
  line-height:1.7;
}

.landing-seo .service-areas__coverage{
  max-width:840px;
  margin:0 auto 10px;
  text-align:center;
  color:#4b5563;
  font-size:clamp(14px,2vw,15px);
  line-height:1.65;
}

.landing-seo .service-areas__helper{
  max-width:800px;
  margin:10px auto 20px;
  text-align:center;
  color:#64748b;
  font-size:clamp(13px,1.5vw,14px);
  line-height:1.6;
}

.landing-seo .service-areas__group{
  max-width:720px;
  margin:0 auto;
  padding:0 0 6px;
}

.landing-seo .service-areas__subtitle{
     margin:0 0 14px;
     padding-left:12px;
     color:#222;
     font-size:19px;
}

.landing-seo .service-areas__region-link{
  color:inherit;
  text-decoration:none;
}

.landing-seo .service-areas__region-link:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.landing-seo .service-areas__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
  margin:0;
  padding:0;
  list-style:none;
}

.landing-seo .service-areas__grid--single{
  grid-template-columns:1fr;
}

.landing-seo .service-areas__grid li{
  margin:0;
  padding:0;
  list-style:none;
}

.landing-seo .service-areas__grid li::before,
.landing-seo .service-areas__grid li::marker{
  content:none;
}

.landing-seo .service-areas__grid a,
.landing-seo .service-areas__grid span{
     display:flex;
     align-items:center;
     width:100%;
     max-width:360px;
     min-height:48px;
     margin:0 auto;
     padding:12px 16px;
     border:1px solid rgba(0,0,0,.08);
     border-radius:14px;
     background:#fff;
     color:inherit;
     font-size:16px;
     font-weight:500;
     line-height:1.5;
     text-decoration:none;
     transition:
          transform .15s ease,
          background .15s ease,
          border-color .15s ease;
}

.landing-seo .service-areas__grid a:visited{
  color:inherit;
}

.landing-seo .service-areas__grid a:hover,
.landing-seo .service-areas__grid span:hover{
  transform:translateY(-1px);
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.14);
}

.landing-seo .service-areas__snippet{
  margin:6px 0 2px;
  padding:0 .5rem;
  color:#8b93a1;
  font-size:clamp(12.5px,1.8vw,13.5px);
  line-height:1.5;
}

.landing-seo .service-areas__trust{
  max-width:900px;
  margin:2px auto 6px;
  text-align:center;
  color:#ff4f00;
  font-size:clamp(15px,2vw,17px);
  font-weight:500;
  line-height:1.5;
}

.landing-seo .service-areas__foot{
  margin:12px auto 16px;
  text-align:center;
  color:#8b93a1;
  font-size:clamp(13px,2vw,14px);
  line-height:1.6;
}

.landing-seo .service-areas__foot > a:not(.service-areas__foot-region-link){
  color:inherit;
  text-decoration:none;
}

.landing-seo .service-areas__foot-region-link{
  color:#0d6efd;
  text-decoration:none;
}

.landing-seo .service-areas__foot a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.landing-seo .service-areas__actions{
  display:flex;
  justify-content:center;
  gap:12px;
  max-width:900px;
  margin:40px auto 50px;
  text-align:center;
}

@media (max-width:640px){
     .landing-seo .service-areas__subtitle{
          padding-left:.5rem;
          font-size:18px;
     }

     .landing-seo .service-areas__snippet{
          max-width:360px;
          margin-right:auto;
          margin-left:auto;
     }

     .landing-seo .service-areas__foot{
          padding-inline:16px;
     }
}

@media (max-width:600px){
  .landing-seo .service-areas__grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .landing-seo .service-areas__actions{
    flex-direction:column;
    align-items:center;
    gap:12px;
  }
}

/* =========================================================
12) Hub Guides
========================================================= */

.landing-seo .hub-guides{
  padding:56px 0;
}

.landing-seo .hub-guides__container{
  width:min(1200px, calc(100% - 32px));
  margin:0 auto;
}

.landing-seo .hub-guides__title{
  margin:0 0 14px;
}

.landing-seo .hub-guides__intro{
  max-width:680px;
  margin:0 auto 22px;
  color:#5f6673;
  font-size:15px;
  line-height:1.7;
  text-align:center;
}

.landing-seo .hub-guides__group{
  margin:0 0 32px;
  border:none;
  border-radius:0;
  background:none;
  box-shadow:none;
}

.landing-seo .hub-guides__group:last-child{
  margin-bottom:0;
}

.landing-seo .hub-guides__group-title{
  margin:0 0 18px;
  color:#334155;
  font-size:24px;
  line-height:1.25;
}

.landing-seo .hub-guides__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
  margin:0;
  padding:0;
  list-style:none;
}

.landing-seo .hub-guides__item{
  margin:0;
  padding:0;
}

.landing-seo .hub-guides__card{
  display:block;
  height:100%;
  padding:16px 20px;
  border:1px solid #eee7e0;
  border-radius:20px;
  background:#fff;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(31,43,61,.04);
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease;
}

.landing-seo .hub-guides__card:hover{
  border-color:rgba(255,90,31,.25);
  background:#fafafa;
  box-shadow:0 14px 28px rgba(31,43,61,.08);
  transform:translateY(-1px);
}

.landing-seo .hub-guides__card-title{
  margin:0 0 8px;
  color:#1f2937;
  font-size:17px;
  font-weight:700;
  line-height:1.25;
}

.landing-seo .hub-guides__card-text{
  margin:0;
  color:#6b7280;
  font-size:15px;
  line-height:1.5;
}

.landing-seo .hub-guides__card:focus-visible{
  outline:3px solid rgba(255,90,31,.28);
  outline-offset:2px;
}

@media (max-width:991.98px){
  .landing-seo .hub-guides{
    padding:60px 0;
  }

  .landing-seo .hub-guides__intro{
    margin-bottom:30px;
  }

  .landing-seo .hub-guides__group{
    margin-bottom:36px;
  }

  .landing-seo .hub-guides__group-title{
    margin-bottom:16px;
    font-size:22px;
  }

  .landing-seo .hub-guides__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }

  .landing-seo .hub-guides__card{
    padding:20px 18px 18px;
  }

  .landing-seo .hub-guides__card-title{
    font-size:18px;
  }

  .landing-seo .hub-guides__card-text{
    font-size:16px;
  }
}

@media (max-width:767.98px){
  .landing-seo .hub-guides__title{
    margin-bottom:12px;
  }

  .landing-seo .hub-guides__intro{
    margin-bottom:24px;
    font-size:15px;
    line-height:1.6;
  }

  .landing-seo .hub-guides__group{
    margin-bottom:30px;
  }

  .landing-seo .hub-guides__group-title{
    margin-bottom:14px;
    font-size:20px;
  }

  .landing-seo .hub-guides__grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .landing-seo .hub-guides__card-title{
    font-size:16px;
  }

  .landing-seo .hub-guides__card-text{
    font-size:14px;
    line-height:1.55;
  }
}

/* =========================================================
13) FAQ
========================================================= */

.landing-seo .faq-section{
  max-width:1200px;
  margin:16px auto;
  padding:0 16px;
}

.landing-seo .faq-wrap{
  width:100%;
}

.landing-seo .faq-title{
  margin:10px 0 34px;
  padding:6px 12px;
}

.landing-seo .faq-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px 18px;
}

.landing-seo .faq-section .faq-item{
  overflow:hidden;
  border:1px solid transparent;
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 14px rgba(0,0,0,.06);
  transform:translateZ(0);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

.landing-seo .faq-section .faq-item > summary::-webkit-details-marker{
  display:none;
}

.landing-seo .faq-section .faq-item > summary{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:56px;
  padding:14px 16px;
  background:#fff;
  color:#333;
  font-size:clamp(15px, 2.6vw, 17px);
  font-weight:600;
  line-height:1.25;
  list-style:none;
  cursor:pointer;
  user-select:none;
  transition:background .18s ease;
}

.landing-seo .faq-section .faq-item > summary:focus-visible{
  outline:2px solid #bdbdbd;
  outline-offset:1px;
}

.landing-seo .faq-section .faq-item > summary::after{
  content:"+";
  flex:0 0 auto;
  margin-left:auto;
  color:#ff6a00;
  font-size:20px;
  font-weight:800;
  line-height:1;
  pointer-events:none;
  transform:rotate(0deg);
  transition:transform .2s ease;
}

.landing-seo .faq-section .faq-item[open] > summary::after{
  transform:rotate(45deg);
}

.landing-seo .faq-section .faq-item[open] > summary{
  background:#faf2eb;
}

.landing-seo .faq-section .faq-item[open]{
  border-color:#eddbcb;
  box-shadow:0 10px 24px rgba(15,23,42,.12);
}

.landing-seo .faq-section .faq-body{
  max-height:0;
  overflow:hidden;
  padding:0 18px;
  opacity:0;
  transform:translateY(-6px);
  transition:
    max-height .32s ease,
    opacity .22s ease,
    transform .22s ease,
    padding .22s ease;
}

.landing-seo .faq-section .faq-item[open] .faq-body{
  position:relative;
  max-height:1200px;
  padding:12px 18px 16px;
  background:#fbfbfb;
  opacity:1;
  transform:translateY(0);
}

.landing-seo .faq-section .faq-item[open] .faq-body::before{
  content:"";
  display:block;
  height:1px;
  margin:0 -18px 12px;
  background:linear-gradient(
    to right,
    transparent,
    rgba(255,106,0,.18),
    transparent
  );
}

.landing-seo .faq-section .faq-text{
  margin:0;
  color:#4a4a4a;
  font-size:clamp(14px, 2.1vw, 16px);
  line-height:1.6;
}

.landing-seo .faq-section .faq-text p{
  margin:0;
}

.landing-seo .faq-section .faq-text p + p{
  margin-top:8px;
}

.landing-seo .faq-section .faq-text a,
.landing-seo .faq-section .faq-body a{
  color:#4169e1;
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:1px;
}

.landing-seo .faq-section .faq-row{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:8px;
  margin:8px 0;
  line-height:1.6;
}

.landing-seo .faq-section .faq-key{
  color:#222;
  font-weight:700;
}

.landing-seo .faq-section .faq-val{
  color:#444;
}

@media (hover:hover){
  .landing-seo .faq-section .faq-item:hover{
    border-color:#dfdfdf;
    box-shadow:0 14px 28px rgba(15,23,42,.10);
    transform:translateY(-1px);
  }

  .landing-seo .faq-section .faq-item > summary:hover{
    background:#fff7f1;
  }
}

@media (max-width:768px){
  .landing-seo .faq-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
}

@media (max-width:600px){
  .landing-seo .faq-section .faq-row{
    grid-template-columns:1fr;
  }
}

/* =========================================================
14) CTA Bottom
========================================================= */

.landing-seo .cta-bottom__container{
  padding:50px 0;
}

.landing-seo .cta-bottom__inner{
  max-width:860px;
  margin:0 auto;
  padding:36px 24px;
  text-align:center;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  background:linear-gradient(180deg, #fff9f4 0%, #ffffff 100%);
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.landing-seo .cta-bottom__title{
  margin:0;
  font-size:clamp(28px, 3vw, 42px);
  line-height:1.16;
  font-weight:800;
  color:var(--ink);
}

.landing-seo .cta-bottom__desc{
  max-width:720px;
  margin:14px auto 12px;
  font-size:clamp(15px, 1.4vw, 18px);
  line-height:1.75;
  color:var(--text);
}

.landing-seo .cta-bottom__note{
  margin:0 0 20px;
  font-size:14px;
  font-weight:600;
  color:var(--brand);
}

.landing-seo .cta-bottom__actions{
  display:flex;
  justify-content:center;
  margin-top:8px;
}

@media (max-width:767.98px){
  .landing-seo .cta-bottom__container{
    padding:40px 0;
  }

  .landing-seo .cta-bottom__inner{
    margin:0 14px;
    padding:28px 16px;
    border-radius:22px;
  }

  .landing-seo .cta-bottom__note{
    margin-bottom:18px;
  }
}

/* =========================================================
15) Shared Hover / Interaction
========================================================= */

@media (hover:hover) and (pointer:fine){
  .landing-seo .icon-emoji{
    transition:
      transform .2s ease,
      filter .2s ease;
  }

  .landing-seo .icon-emoji:hover,
  .landing-seo .icon-emoji:focus-visible{
    filter:brightness(1.15);
    transform:scale(1.15);
  }

  .landing-seo .hw-btn:not(.btn--invert):hover{
    transform:translateY(-1px);
  }
}

.landing-seo .hw-btn:active{
  transform:translateY(0);
}

@media (max-width:768px){
  .landing-seo .reviews-grid__item:hover,
  .landing-seo .c-feature:hover,
  .landing-seo .btn--invert:hover{
    box-shadow:none;
    transform:none;
    animation:none;
  }
}

/* =========================================================
16) Mobile Scroll Offset
========================================================= */

@media (max-width:768px){
  .landing-seo :is(
    #booking,
    #pricing,
    #reviews,
    #service-areas,
    #faq
  ){
    scroll-margin-top:76px;
  }
}

/* =========================================================
17) Reduced Motion
========================================================= */

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

  .landing-seo .icon-emoji{
    filter:none;
    transform:none;
    transition:none;
  }

  .landing-seo .how-it-works *{
    transition:none;
    animation:none;
  }

  .landing-seo .reviews-grid__card{
    transition:none;
  }

  .landing-seo .c-feature,
  .landing-seo .c-feature__icon{
    transition:none;
  }

  .landing-seo .c-feature:hover .c-feature__icon,
  .landing-seo .c-feature:focus-within .c-feature__icon{
    transform:none;
  }

  .landing-seo .faq-section .faq-item,
  .landing-seo .faq-section .faq-item > summary,
  .landing-seo .faq-section .faq-item > summary::after,
  .landing-seo .faq-section .faq-body{
    transform:none;
    transition:none;
  }

  .landing-seo .hw-btn{
    transition:none;
  }
}