/*
Theme Name: We Fix Appliance Repair
Theme URI: https://wefix-appliance.local/
Author: We Fix Appliance Repair
Author URI: https://wefix-appliance.local/
Description: Static-to-WordPress theme for We Fix Appliance Repair pages, services, brands and locations.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: wefix-appliance
*/

/* =========================
   WE FIX APPLIANCE REPAIR
   Global Design System
========================= */
:root{
  --primary:#43B5A0;
  --primary-dark:#278D7C;
  --secondary:#FFD400;
  --secondary-dark:#E6BF00;
  --ink:#172522;
  --muted:#66736F;
  --bg:#FFFFFF;
  --bg-soft:#F4FAF8;
  --bg-dark:#12201D;
  --border:#E5EEEB;
  --shadow-sm:0 10px 30px rgba(23,37,34,.08);
  --shadow-md:0 22px 60px rgba(23,37,34,.14);
  --radius-sm:14px;
  --radius-md:22px;
  --radius-lg:32px;
  --container:1440px;
  --gutter:20px;
  --fs-h1:clamp(42px,4.2vw,68px);
  --fs-h2:clamp(30px,3vw,46px);
  --fs-h3:clamp(20px,1.6vw,26px);
  --fs-body:clamp(15px,1vw,17px);
  --fs-small:16px;
  --section-space:clamp(72px,8vw,120px);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Urbanist",sans-serif;color:var(--ink);background:var(--bg);font-size:var(--fs-body);line-height:1.65;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.container{width:min(100%,calc(var(--container) + (var(--gutter) * 2)));margin:0 auto;padding-inline:var(--gutter)}
.skip-link{position:fixed;left:12px;top:-60px;z-index:9999;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px}
.skip-link:focus{top:12px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--primary-dark);font-size:16px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1{font-size:var(--fs-h1);line-height:1.03;letter-spacing:-.045em;margin-bottom:24px}
h2{font-size:var(--fs-h2);line-height:1.12;letter-spacing:-.035em;margin-bottom:18px}
h3{font-size:var(--fs-h3);line-height:1.25;margin-bottom:14px}
p{color:var(--muted)}
.btn{min-height:54px;display:inline-flex;align-items:center;justify-content:center;padding:0 24px;border-radius:999px;border:1px solid transparent;font-weight:800;transition:.25s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn--primary{background:var(--secondary);color:var(--ink);box-shadow:0 10px 28px rgba(255,212,0,.24)}
.btn--primary:hover{background:#FFE24A}
.btn--dark{background:var(--ink);color:#fff}
.btn--outline{border-color:var(--border);background:#fff;color:var(--ink)}
.btn--ghost-light{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}
.btn--small{min-height:42px;padding:0 18px;font-size:16px}
.btn--full{width:100%}
.location-page-hero__strip,.site-footer__socials{display: none!important;}
/* Header */
.site-header{position:fixed;inset:0 0 auto 0;z-index:1000;transition:.3s var(--ease)}
.site-header.is-scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);box-shadow:0 8px 30px rgba(23,37,34,.08)}
.header__inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.brand__mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--secondary),#FFE96A);color:var(--ink);font-size:16px;font-weight:900;box-shadow:0 10px 24px rgba(255,212,0,.24)}
.brand__text{display:flex;flex-direction:column;line-height:1}
.brand__text strong{font-size:16px;letter-spacing:.04em}
.brand__text small{margin-top:5px;font-size:16px;font-weight:700;letter-spacing:.14em}
.site-header:not(.is-scrolled) .brand__text,.site-header:not(.is-scrolled) .nav a,.site-header:not(.is-scrolled) .header__phone{color:#000}
.nav--desktop{display:flex;align-items:center;gap:30px}
.nav a,.header__phone{font-size:16px;font-weight:700;transition:.2s}
.nav a:hover,.header__phone:hover{color:var(--primary)}
.header__actions{display:flex;align-items:center;gap:16px}
.header__phone{white-space:nowrap}
.menu-toggle{display:none;width:46px;height:46px;border:0;border-radius:14px;background:#fff;box-shadow:var(--shadow-sm);padding:12px}
.menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:10px;transition:.25s}
.mobile-menu{display:none}

/* =========================================================
   FOOTER
========================================================= */

.site-footer{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 0%,rgba(67,181,160,.16),transparent 28%),
        linear-gradient(135deg,#12201d 0%,#0f1b18 100%);
    color:#fff;
}

.site-footer::after{
    content:"";
    position:absolute;
    right:-220px;
    bottom:-260px;
    width:520px;
    height:520px;
    border:1px solid rgba(255,255,255,.04);
    border-radius:50%;
    pointer-events:none;
}

.site-footer .container{
    position:relative;
    z-index:2;
}


/* =========================================================
   FOOTER — MAIN
========================================================= */

.site-footer__main{
    display:grid;
    grid-template-columns:minmax(260px,1.35fr) .75fr 1.1fr .95fr .85fr;
    gap:clamp(35px,4vw,70px);
    padding:76px 0 62px;
}


/* =========================================================
   FOOTER — BRAND
========================================================= */

.site-footer__brand{
    min-width:0;
    max-width:340px;
}

.site-footer__logo{
    display:inline-flex;
    align-items:center;
    gap:14px;
    max-width:100%;
}

.site-footer__logo-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 50px;
    width:50px;
    height:50px;
    padding:0;
    border-radius:15px;
    background:var(--secondary);
    color:var(--ink);
    box-shadow:0 10px 28px rgba(255,212,0,.12);
    font-size:16px;
    font-weight:900;
    line-height:1;
}

.site-footer__logo-copy{
    display:flex;
    min-width:0;
    flex-direction:column;
    justify-content:center;
    gap:4px;
}

.site-footer__logo-copy strong{
    color:#fff;
    font-size:18px;
    font-weight:800;
    line-height:1;
    letter-spacing:-.02em;
    white-space:nowrap;
}

.site-footer__logo-copy small{
    color:rgba(255,255,255,.85);
    font-size:16px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.13em;
    white-space:nowrap;
}

.site-footer__description{
    max-width:310px;
    margin:24px 0 0;
    color:rgba(255,255,255,.58);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   FOOTER — SOCIALS
========================================================= */

.site-footer__socials{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:25px;
}

.site-footer__socials a{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    padding:0;
    border:1px solid rgba(255,255,255,.05);
    border-radius:13px;
    background:rgba(255,255,255,.07);
    color:rgba(255,255,255,.74);
    font-size:16px;
    font-weight:700;
    line-height:1;
    text-align:center;
    transition:
        transform .25s var(--ease),
        background .25s ease,
        border-color .25s ease,
        color .25s ease;
}

.site-footer__socials a:hover{
    transform:translateY(-3px);
    border-color:var(--primary);
    background:var(--primary);
    color:#fff;
}


/* =========================================================
   FOOTER — COLUMNS
========================================================= */

.site-footer__column{
    min-width:0;
}

.site-footer__column h3{
    position:relative;
    margin:0 0 21px;
    padding-bottom:11px;
    color:#fff;
    font-size:16px;
    font-weight:800;
    line-height:1.2;
}

.site-footer__column h3::after{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:28px;
    height:2px;
    background:var(--secondary);
}

.site-footer__column ul{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin:0;
    padding:0;
    list-style:none;
}

.site-footer__column li{
    color:rgba(255,255,255,.57);
    font-size:16px;
    line-height:1.55;
}

.site-footer__column a{
    color:rgba(255,255,255,.57);
    transition:
        color .25s ease,
        transform .25s ease;
}

.site-footer__column a:hover{
    color:#fff;
}


/* =========================================================
   FOOTER — CONTACT
========================================================= */

.site-footer__contact a{
    color:rgba(255,255,255,.78);
    font-weight:700;
}


/* =========================================================
   FOOTER — BOTTOM
========================================================= */

.site-footer__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:27px 0 30px;
    border-top:1px solid rgba(255,255,255,.09);
}

.site-footer__bottom p{
    margin:0;
    color:rgba(255,255,255,.48);
    font-size:16px;
    line-height:1.5;
}

.site-footer__legal{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:24px;
}

.site-footer__legal a{
    color:rgba(255,255,255,.5);
    font-size:16px;
    white-space:nowrap;
    transition:color .25s ease;
}

.site-footer__legal a:hover{
    color:var(--secondary);
}


/* =========================================================
   FOOTER — 1200px
========================================================= */

@media(max-width:1200px){

    .site-footer__main{
        grid-template-columns:1.25fr repeat(2,minmax(0,1fr));
        gap:50px 60px;
    }

    .site-footer__brand{
        grid-row:span 2;
    }

}


/* =========================================================
   FOOTER — TABLET
========================================================= */

@media(max-width:900px){

    .site-footer__main{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:44px 50px;
        padding:60px 40px 50px;
    }

    .site-footer__brand{
        grid-column:1/-1;
        grid-row:auto;
        width:100%;
        max-width:520px;
        margin:0 auto 5px;
        text-align:center;
    }

    .site-footer__logo{
        justify-content:center;
    }

    .site-footer__description{
        max-width:420px;
        margin:22px auto 0;
    }

    .site-footer__socials{
        justify-content:center;
    }

    .site-footer__column{
        width:100%;
        max-width:300px;
        margin:0 auto;
        text-align:center;
    }

    .site-footer__column h3{
        display:inline-block;
        padding-right:6px;
        padding-left:6px;
    }

    .site-footer__column h3::after{
        left:50%;
        transform:translateX(-50%);
    }

    .site-footer__column ul{
        align-items:center;
    }

    .site-footer__column li{
        width:100%;
        text-align:center;
    }

    .site-footer__column a{
        display:inline-block;
    }

    .site-footer__bottom{
        flex-direction:column;
        justify-content:center;
        gap:17px;
        padding:25px 40px 28px;
        text-align:center;
    }

    .site-footer__legal{
        justify-content:center;
        flex-wrap:wrap;
        gap:12px 22px;
    }

}


/* =========================================================
   FOOTER — MOBILE
========================================================= */

@media(max-width:575px){

    .site-footer__main{
        grid-template-columns:1fr;
        gap:0;
        padding:48px 22px 38px;
    }

    .site-footer__brand{
        grid-column:auto;
        max-width:100%;
        margin:0 auto;
        padding-bottom:34px;
    }

    .site-footer__logo{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:12px;
    }

    .site-footer__logo-icon{
        flex-basis:46px;
        width:46px;
        height:46px;
        border-radius:13px;
        font-size:16px;
    }

    .site-footer__logo-copy{
        align-items:flex-start;
        text-align:left;
    }

    .site-footer__logo-copy strong{
        font-size:16px;
    }

    .site-footer__logo-copy small{
        font-size:16px;
        letter-spacing:.11em;
    }

    .site-footer__description{
        max-width:300px;
        margin:19px auto 0;
        font-size:16px;
    }

    .site-footer__socials{
        justify-content:center;
        margin-top:21px;
    }

    .site-footer__column{
        max-width:100%;
        margin:0;
        padding:25px 0;
        border-top:1px solid rgba(255,255,255,.07);
        text-align:center;
    }

    .site-footer__column:last-child{
        padding-bottom:10px;
    }

    .site-footer__column h3{
        margin-bottom:15px;
    }

    .site-footer__column ul{
        gap:9px;
    }

    .site-footer__column li{
        font-size:16px;
    }

    .site-footer__bottom{
        gap:17px;
        padding:24px 22px 26px;
    }

    .site-footer__bottom p{
        max-width:300px;
        margin:0 auto;
    }

    .site-footer__legal{
        width:100%;
        gap:10px 18px;
    }

    .site-footer__legal a{
        font-size:16px;
        white-space:normal;
    }

}


/* =========================================================
   FOOTER — SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .site-footer__main{
        padding-right:16px;
        padding-left:16px;
    }

    .site-footer__logo{
        gap:10px;
    }

    .site-footer__logo-icon{
        flex-basis:42px;
        width:42px;
        height:42px;
    }

    .site-footer__logo-copy strong{
        font-size:16px;
    }

    .site-footer__logo-copy small{
        font-size:16px;
        letter-spacing:.08em;
    }

    .site-footer__bottom{
        padding-right:16px;
        padding-left:16px;
    }

}

/* Back to top */
.back-to-top{position:fixed;right:20px;bottom:20px;width:48px;height:48px;border:0;border-radius:15px;background:var(--ink);color:#fff;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s;z-index:900}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}

/* Cookies */
.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:1200;display:none}
.cookie-banner.is-visible{display:block}
.cookie-banner__inner{width:min(100%,760px);margin:0 auto;padding:18px 20px;background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:space-between;gap:24px}
.cookie-banner p{margin:0;font-size:16px}
.cookie-banner__actions{display:flex;gap:10px;flex-shrink:0}

body.menu-open{overflow:hidden}










/* =========================
   SECTION 1 — HERO
========================= */
.home-hero{
  position:relative;
  min-height:940px;
  padding:148px 0 92px;
  background:#f7fbfa;
  overflow:hidden;
}
.home-hero__bg{
  position:absolute;
  inset:0;
  background:
    linear-gradient(115deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.97) 39%,rgba(244,250,248,.87) 62%,rgba(230,247,242,.72) 100%),
    url("https://we-fixappliances.com/wp-content/uploads/2026/09/hero-modern-kitchen.webp") center right/cover no-repeat;
  opacity:.98;
}
.home-hero__bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,#fff 0%,rgba(255,255,255,.97) 34%,rgba(255,255,255,.3) 70%,rgba(255,255,255,.05) 100%);
}
.home-hero__glow{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(4px);
}
.home-hero__glow--one{
  width:620px;
  height:620px;
  left:-290px;
  top:120px;
  background:radial-gradient(circle,rgba(67,181,160,.14),rgba(67,181,160,0) 70%);
}
.home-hero__glow--two{
  width:460px;
  height:460px;
  right:-120px;
  bottom:-170px;
  background:radial-gradient(circle,rgba(255,212,0,.18),rgba(255,212,0,0) 70%);
}
.home-hero .container{
  position:relative;
  z-index:2;
}
.home-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(370px,.58fr);
  grid-template-areas:
    "content visual"
    "booking booking";
  column-gap:clamp(48px,5vw,88px);
  row-gap:54px;
  align-items:center;
}
.home-hero__content{
  grid-area:content;
  max-width:760px;
  padding:46px 0 24px;
}
.home-hero__badge{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:24px;
  padding:9px 14px;
  border:1px solid rgba(67,181,160,.22);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:var(--primary-dark);
  box-shadow:0 8px 30px rgba(23,37,34,.05);
  backdrop-filter:blur(10px);
  font-size:16px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-hero__badge-dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:var(--primary);
  box-shadow:0 0 0 5px rgba(67,181,160,.12);
}
.home-hero h1{
  max-width:760px;
  margin:0 0 24px;
  color:var(--ink);
  font-size:clamp(44px,4.35vw,68px);
  line-height:1.03;
  letter-spacing:-.052em;
}
.home-hero__lead{
  max-width:650px;
  margin:0 0 31px;
  color:#596863;
  font-size:clamp(16px,1.2vw,18px);
  line-height:1.72;
}
.home-hero__actions{
  display:flex;
  align-items:center;
  gap:25px;
  flex-wrap:wrap;
}
.home-hero__primary{
  min-width:190px;
  gap:16px;
  box-shadow:0 14px 34px rgba(255,212,0,.27);
}
.home-hero__primary span{
  font-size:19px;
  line-height:1;
  transition:transform .25s var(--ease);
}
.home-hero__primary:hover span{
  transform:translateX(4px);
}
.home-hero__phone{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--ink);
}
.home-hero__phone-icon{
  width:47px;
  height:47px;
  flex:0 0 47px;
  display:grid;
  place-items:center;
  border:1px solid var(--border);
  border-radius:50%;
  background:#fff;
  color:var(--primary-dark);
  box-shadow:var(--shadow-sm);
  transition:.25s var(--ease);
}
.home-hero__phone-icon svg{
  width:21px;
  height:21px;
}
.home-hero__phone small,
.home-hero__phone strong{
  display:block;
}
.home-hero__phone small{
  margin-bottom:1px;
  color:var(--muted);
  font-size:16px;
  font-weight:600;
}
.home-hero__phone strong{
  font-size:16px;
}
.home-hero__phone:hover .home-hero__phone-icon{
  transform:translateY(-2px);
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
}
.home-hero__trust{
  display:flex;
  flex-wrap:wrap;
  gap:12px 22px;
  margin-top:34px;
  padding-top:25px;
  border-top:1px solid var(--border);
}
.home-hero__trust-item{
  display:flex;
  align-items:center;
  gap:8px;
  color:#52615d;
  font-size:16px;
  font-weight:700;
}
.home-hero__check{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(67,181,160,.13);
  color:var(--primary-dark);
  font-size:16px;
  font-weight:900;
}

/* Hero image */
.home-hero__visual{
  grid-area:visual;
  position:relative;
  padding:15px 0 20px;
}
.home-hero__image-wrap{
  position:relative;
  width:min(100%,500px);
  margin-left:auto;
}
.home-hero__image-wrap::before{
  content:"";
  position:absolute;
  width:80%;
  height:85%;
  right:-18px;
  top:-18px;
  z-index:-1;
  border-radius:45% 45% 34px 34px;
  background:
    linear-gradient(145deg,rgba(67,181,160,.16),rgba(255,212,0,.09));
}
.home-hero__image-wrap img{
  width:100%;
  height:570px;
  object-fit:cover;
  object-position:center;
  border-radius:210px 210px 30px 30px;
  box-shadow:0 35px 80px rgba(23,37,34,.18);
}
.home-hero__image-shape{
  position:absolute;
  width:88px;
  height:88px;
  right:-24px;
  top:42px;
  z-index:2;
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.05)),
    var(--secondary);
  transform:rotate(14deg);
  box-shadow:0 18px 45px rgba(255,212,0,.23);
}
.home-hero__floating-card{
  position:absolute;
  z-index:4;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 18px 48px rgba(23,37,34,.14);
  backdrop-filter:blur(14px);
}
.home-hero__floating-card--rating{
  left:-63px;
  bottom:62px;
  width:215px;
  padding:17px 18px;
  border-radius:18px;
}
.home-hero__stars{
  margin-bottom:5px;
  color:#e6b900;
  font-size:16px;
  letter-spacing:2px;
}
.home-hero__floating-card--rating strong,
.home-hero__floating-card--rating span{
  display:block;
}
.home-hero__floating-card--rating strong{
  margin-bottom:3px;
  color:var(--ink);
  font-size:16px;
}
.home-hero__floating-card--rating span{
  color:var(--muted);
  font-size:16px;
  line-height:1.45;
}
.home-hero__floating-card--service{
  right:-44px;
  top:180px;
  display:flex;
  align-items:center;
  gap:11px;
  width:230px;
  padding:14px;
  border-radius:18px;
}
.home-hero__floating-icon{
  width:43px;
  height:43px;
  flex:0 0 43px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:var(--primary);
  color:#fff;
}
.home-hero__floating-icon svg{
  width:21px;
  height:21px;
}
.home-hero__floating-card--service strong,
.home-hero__floating-card--service small{
  display:block;
}
.home-hero__floating-card--service strong{
  margin-bottom:2px;
  font-size:16px;
}
.home-hero__floating-card--service small{
  color:var(--muted);
  font-size:16px;
}

/* Booking */
.hero-booking{
  grid-area:booking;
  position:relative;
  width:min(100%,1240px);
  margin:4px auto 0;
  padding:31px;
  border:1px solid rgba(67,181,160,.14);
  border-radius:28px;
  background:rgba(255,255,255,.97);
  box-shadow:0 28px 80px rgba(23,37,34,.11);
  overflow:hidden;
}
.hero-booking::before{
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  right:-110px;
  top:-135px;
  border-radius:50%;
  background:rgba(67,181,160,.08);
}
.hero-booking__top{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.hero-booking__eyebrow{
  display:block;
  margin-bottom:6px;
  color:var(--primary-dark);
  font-size:16px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hero-booking h2{
  margin:0;
  font-size:clamp(24px,2vw,32px);
  letter-spacing:-.035em;
}
.hero-booking__number{
  color:rgba(67,181,160,.16);
  font-size:54px;
  font-weight:800;
  line-height:.9;
}
.hero-booking__intro{
  position:relative;
  max-width:660px;
  margin:12px 0 22px;
  font-size:16px;
}
.hero-booking__iframe{
  position:relative;
  min-height:450px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:20px;
  background:#fff;
}
.hero-booking__iframe iframe{
  display:block;
}
.home-hero__bottom{
  position:absolute;
  inset:auto 0 0;
  height:44px;
  overflow:hidden;
}
.home-hero__bottom span{
  position:absolute;
  width:110%;
  height:100%;
  left:-5%;
  top:20px;
  border-radius:50% 50% 0 0;
  background:#fff;
}


/* =========================
   SECTION 1 — HERO RESPONSIVE
========================= */
@media(max-width:1280px){
  .home-hero{
    padding-top:132px;
  }
  .home-hero__grid{
    grid-template-columns:minmax(0,.9fr) minmax(350px,.55fr);
    column-gap:48px;
  }
  .home-hero__image-wrap img{
    height:530px;
  }
  .home-hero__floating-card--rating{
    left:-35px;
  }
  .home-hero__floating-card--service{
    right:-20px;
  }
}

@media(max-width:1024px){
  .home-hero{
    padding:120px 0 82px;
  }
  .home-hero__bg{
    background:linear-gradient(135deg,#fff 0%,#f4faf8 100%);
  }
  .home-hero__bg::after{
    display:none;
  }
  .home-hero__grid{
    grid-template-columns:minmax(0,1fr) minmax(310px,.62fr);
    column-gap:38px;
    row-gap:42px;
  }
  .home-hero h1{
    font-size:clamp(40px,5vw,56px);
  }
  .home-hero__image-wrap img{
    height:480px;
    border-radius:170px 170px 26px 26px;
  }
  .home-hero__floating-card--rating{
    left:-20px;
    bottom:42px;
  }
  .home-hero__floating-card--service{
    display:none;
  }
  .home-hero__trust{
    gap:10px 16px;
  }
}

@media(max-width:768px){
  .home-hero{
    min-height:auto;
    padding:106px 0 74px;
  }
  .home-hero__grid{
    display:flex;
    flex-direction:column;
    gap:38px;
  }
  .home-hero__content,
  .home-hero__visual,
  .hero-booking{
    width:100%;
  }
  .home-hero__content{
    padding:18px 0 0;
  }
  .home-hero h1{
    max-width:650px;
    font-size:clamp(38px,8.5vw,54px);
  }
  .home-hero__lead{
    max-width:630px;
  }
  .home-hero__visual{
    padding:0 0 18px;
  }
  .home-hero__image-wrap{
    width:min(92%,540px);
    margin:0 auto;
  }
  .home-hero__image-wrap img{
    height:520px;
    border-radius:200px 200px 28px 28px;
  }
  .home-hero__image-shape{
    right:-8px;
  }
  .home-hero__floating-card--rating{
    left:-14px;
    bottom:42px;
  }
  .hero-booking{
    margin-top:4px;
    padding:25px;
  }
}

@media(max-width:576px){
  .home-hero{
    padding-top:100px;
  }
  .home-hero__badge{
    white-space:normal;
    line-height:1.4;
  }
  .home-hero h1{
    margin-bottom:19px;
    font-size:clamp(36px,10.5vw,46px);
    line-height:1.05;
  }
  .home-hero__lead{
    margin-bottom:27px;
    font-size:16px;
  }
  .home-hero__actions{
    align-items:stretch;
    flex-direction:column;
    gap:17px;
  }
  .home-hero__primary{
    width:100%;
  }
  .home-hero__phone{
    width:max-content;
  }
  .home-hero__trust{
    display:grid;
    gap:10px;
    margin-top:28px;
  }
  .home-hero__image-wrap{
    width:100%;
  }
  .home-hero__image-wrap::before{
    right:-8px;
  }
  .home-hero__image-wrap img{
    height:440px;
    border-radius:150px 150px 24px 24px;
  }
  .home-hero__image-shape{
    width:66px;
    height:66px;
    top:34px;
    right:-5px;
    border-radius:18px;
  }
  .home-hero__floating-card--rating{
    width:190px;
    left:12px;
    bottom:30px;
    padding:14px 15px;
  }
  .hero-booking{
    padding:20px;
    border-radius:22px;
  }
  .hero-booking__number{
    font-size:44px;
  }
  .hero-booking__iframe{
    margin-inline:-5px;
    border-radius:16px;
  }
}

@media(max-width:390px){
  .home-hero{
    padding-top:92px;
  }
  .home-hero h1{
    font-size:35px;
  }
  .home-hero__image-wrap img{
    height:385px;
    border-radius:130px 130px 22px 22px;
  }
  .home-hero__floating-card--rating{
    width:176px;
    left:8px;
  }
  .hero-booking{
    padding:18px 15px;
  }
  .hero-booking__number{
    display:none;
  }
}






/* =========================
   SECTION 2 — ABOUT
========================= */
.home-about{
  position:relative;
  padding:var(--section-space) 0;
  background:#fff;
  overflow:hidden;
}
.home-about::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-260px;
  top:5%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(67,181,160,.09),rgba(67,181,160,0) 70%);
  pointer-events:none;
}
.home-about__grid{
  display:grid;
  grid-template-columns:minmax(400px,.82fr) minmax(0,1fr);
  gap:clamp(70px,7vw,120px);
  align-items:center;
}
.home-about__visual{
  position:relative;
  max-width:620px;
}
.home-about__image{
  position:relative;
  width:88%;
}
.home-about__image::before{
  content:"";
  position:absolute;
  width:76%;
  height:84%;
  left:-22px;
  bottom:-22px;
  z-index:0;
  border-radius:32px;
  background:var(--bg-soft);
}
.home-about__image img{
  position:relative;
  z-index:1;
  width:100%;
  height:650px;
  object-fit:cover;
  border-radius:28px 130px 28px 28px;
  box-shadow:0 28px 70px rgba(23,37,34,.13);
}
.home-about__shape{
  position:absolute;
  z-index:2;
  width:100px;
  height:100px;
  right:-42px;
  top:54px;
  border-radius:28px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.5),rgba(255,255,255,0)),
    var(--secondary);
  transform:rotate(12deg);
  box-shadow:0 20px 45px rgba(255,212,0,.2);
}
.home-about__experience{
  position:absolute;
  z-index:3;
  right:-42px;
  bottom:42px;
  width:155px;
  height:155px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  border:9px solid #fff;
  border-radius:50%;
  background:var(--primary);
  color:#fff;
  box-shadow:0 20px 45px rgba(23,37,34,.18);
  text-align:center;
}
.home-about__experience strong{
  font-size:20px;
  line-height:1.1;
}
.home-about__experience span{
  width:90px;
  margin-top:5px;
  font-size:16px;
  font-weight:700;
  line-height:1.35;
  opacity:.85;
}
.home-about__mini-card{
  position:absolute;
  z-index:4;
  left:36px;
  bottom:-30px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 18px;
  border:1px solid var(--border);
  border-radius:17px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
}
.home-about__mini-icon{
  width:43px;
  height:43px;
  flex:0 0 43px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:rgba(67,181,160,.12);
  color:var(--primary-dark);
}
.home-about__mini-icon svg{
  width:22px;
  height:22px;
}
.home-about__mini-card strong,
.home-about__mini-card small{
  display:block;
}
.home-about__mini-card strong{
  color:var(--ink);
  font-size:16px;
}
.home-about__mini-card small{
  margin-top:2px;
  color:var(--muted);
  font-size:16px;
}
.home-about__content{
  position:relative;
  max-width:710px;
}
.home-about__content h2{
  max-width:680px;
  margin-bottom:22px;
}
.home-about__lead{
  max-width:670px;
  margin-bottom:15px;
  color:#43534e;
  font-size:clamp(16px,1.25vw,19px);
  font-weight:500;
  line-height:1.7;
}
.home-about__content>p:not(.home-about__lead){
  max-width:680px;
  margin-bottom:31px;
}
.home-about__features{
  display:grid;
  gap:0;
  margin:30px 0 34px;
  border-top:1px solid var(--border);
}
.home-about__feature{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:18px;
  padding:21px 0;
  border-bottom:1px solid var(--border);
}
.home-about__feature>span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:var(--bg-soft);
  color:var(--primary-dark);
  font-size:16px;
  font-weight:800;
}
.home-about__feature h3{
  margin:0 0 4px;
  font-size:16px;
  letter-spacing:-.01em;
}
.home-about__feature p{
  max-width:500px;
  margin:0;
  font-size:16px;
  line-height:1.6;
}
.home-about__bottom{
  display:flex;
  align-items:center;
  gap:27px;
}
.home-about__bottom .btn{
  gap:15px;
}
.home-about__bottom .btn span{
  font-size:18px;
}
.home-about__areas{
  padding-left:26px;
  border-left:1px solid var(--border);
}
.home-about__areas small,
.home-about__areas strong{
  display:block;
}
.home-about__areas small{
  margin-bottom:2px;
  color:var(--muted);
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.home-about__areas strong{
  font-size:16px;
}



/* =========================
   SECTION 2 — ABOUT RESPONSIVE
========================= */
@media(max-width:1280px){
  .home-about__grid{
    grid-template-columns:minmax(370px,.76fr) 1fr;
    gap:70px;
  }
  .home-about__image img{
    height:600px;
  }
}
@media(max-width:1024px){
  .home-about__grid{
    grid-template-columns:minmax(330px,.7fr) 1fr;
    gap:55px;
  }
  .home-about__image{
    width:92%;
  }
  .home-about__image img{
    height:550px;
    border-radius:25px 100px 25px 25px;
  }
  .home-about__experience{
    right:-32px;
    width:135px;
    height:135px;
  }
  .home-about__shape{
    width:80px;
    height:80px;
    right:-30px;
  }
}
@media(max-width:768px){
  .home-about{
    padding:76px 0 86px;
  }
  .home-about__grid{
    grid-template-columns:1fr;
    gap:76px;
  }
  .home-about__visual{
    width:min(100%,590px);
    margin:0 auto;
  }
  .home-about__image{
    width:90%;
  }
  .home-about__image img{
    height:570px;
  }
  .home-about__content{
    max-width:680px;
  }
}
@media(max-width:576px){
  .home-about{
    padding:68px 0 78px;
  }
  .home-about__grid{
    gap:65px;
  }
  .home-about__image{
    width:94%;
  }
  .home-about__image::before{
    left:-10px;
    bottom:-12px;
  }
  .home-about__image img{
    height:460px;
    border-radius:22px 80px 22px 22px;
  }
  .home-about__shape{
    width:64px;
    height:64px;
    right:-15px;
    top:36px;
    border-radius:18px;
  }
  .home-about__experience{
    width:112px;
    height:112px;
    right:-12px;
    bottom:28px;
    border-width:6px;
  }
  .home-about__experience strong{
    font-size:16px;
  }
  .home-about__experience span{
    font-size:16px;
  }
  .home-about__mini-card{
    left:15px;
    bottom:-34px;
  }
  .home-about__features{
    margin-top:26px;
  }
  .home-about__feature{
    grid-template-columns:42px 1fr;
    gap:13px;
  }
  .home-about__feature>span{
    width:38px;
    height:38px;
  }
  .home-about__bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:20px;
  }
  .home-about__bottom .btn{
    width:100%;
  }
  .home-about__areas{
    padding:0;
    border:0;
  }
}
@media(max-width:390px){
  .home-about__image img{
    height:400px;
    border-radius:20px 65px 20px 20px;
  }
  .home-about__mini-card{
    left:8px;
    padding:12px 14px;
  }
  .home-about__experience{
    width:100px;
    height:100px;
  }
}






/* =========================================================
   SECTION 03 — APPLIANCES WE REPAIR
========================================================= */

.home-services{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:
        radial-gradient(circle at 96% 5%,rgba(67,181,160,.12),transparent 24%),
        #fff;
}

.home-services__header{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.25fr .75fr;
    align-items:end;
    gap:80px;
    margin-bottom:46px;
}

.home-services__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-services__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-services__header h2{
    max-width:780px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.home-services__header h2 strong{
    color:var(--primary-dark);
    font-weight:800;
}

.home-services__header>p{
    max-width:450px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.7;
}


/* =========================================================
   SECTION 03 — GRID
========================================================= */

.home-services__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-flow:row;
    gap:16px;
}

.appliance-service{
    position:relative;
    display:block;
    overflow:hidden;
    min-width:0;
    height:295px;
    border-radius:22px;
    background:var(--bg-dark);
    box-shadow:0 16px 45px rgba(23,37,34,.1);
}

.appliance-service--large{
    grid-column:span 2;
    grid-row:span 2;
    height:606px;
}

.appliance-service img{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .7s var(--ease);
}

.appliance-service__overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(8,20,17,.02) 20%,
        rgba(8,20,17,.14) 50%,
        rgba(8,20,17,.9) 100%
    );
}

.appliance-service__number{
    position:absolute;
    z-index:2;
    top:20px;
    left:20px;
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:50%;
    background:rgba(15,30,26,.48);
    backdrop-filter:blur(8px);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.appliance-service__content{
    position:absolute;
    z-index:2;
    right:0;
    bottom:0;
    left:0;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    padding:22px;
}

.appliance-service--large .appliance-service__content{
    padding:32px;
}

.appliance-service__content div{
    min-width:0;
}

.appliance-service__content div>span{
    display:block;
    margin-bottom:7px;
    color:rgba(255,255,255,.65);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.appliance-service__content h3{
    margin:0;
    color:#fff;
    font-size:21px;
    line-height:1.18;
    overflow-wrap:anywhere;
}

.appliance-service--large .appliance-service__content h3{
    max-width:410px;
    font-size:34px;
}

.appliance-service__arrow{
    display:grid;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:19px;
    transition:.3s ease;
}

.appliance-service:hover img{
    transform:scale(1.055);
}

.appliance-service:hover .appliance-service__arrow{
    transform:rotate(45deg);
    background:#fff;
}


/* =========================================================
   SECTION 03 — CTA
========================================================= */

.home-services__cta{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:26px;
    padding:27px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
}

.home-services__cta>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.home-services__cta span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.home-services__cta strong{
    color:var(--ink);
    font-size:18px;
}


/* =========================================================
   SECTION 03 — TABLET LARGE
========================================================= */

@media(max-width:1200px){

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

    .appliance-service{
        height:280px;
    }

    .appliance-service--large{
        grid-column:span 2;
        grid-row:span 2;
        height:576px;
    }

}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .home-services__header{
        grid-template-columns:1fr;
        gap:20px;
    }

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

    .appliance-service,
    .appliance-service--large{
        grid-column:auto;
        grid-row:auto;
        height:300px;
        min-height:0;
    }

    .appliance-service--large{
        grid-column:1/-1;
        height:430px;
    }

    .appliance-service--large .appliance-service__content{
        padding:26px;
    }

    .appliance-service--large .appliance-service__content h3{
        font-size:30px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE LANDSCAPE / SMALL TABLET
========================================================= */

@media(max-width:767px){

    .home-services{
        padding:70px 0;
    }

    .home-services__header{
        margin-bottom:30px;
    }

    .home-services__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }

    .appliance-service,
    .appliance-service--large{
        grid-column:auto;
        grid-row:auto;
        width:100%;
        height:260px;
        min-height:0;
        border-radius:18px;
    }

    .appliance-service--large{
        grid-column:1/-1;
        height:360px;
    }

    .appliance-service--large .appliance-service__content{
        padding:22px;
    }

    .appliance-service--large .appliance-service__content h3{
        font-size:27px;
    }

    .appliance-service__content{
        padding:18px;
    }

    .home-services__cta{
        flex-direction:column;
        align-items:flex-start;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:575px){

    .home-services__grid{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
    }

    .appliance-service,
    .appliance-service--large{
        grid-column:auto;
        grid-row:auto;
        width:100%;
        height:280px;
        min-height:0;
    }

    .appliance-service--large{
        height:330px;
    }

    .appliance-service__content,
    .appliance-service--large .appliance-service__content{
        padding:20px;
    }

    .appliance-service__content h3,
    .appliance-service--large .appliance-service__content h3{
        max-width:230px;
        font-size:21px;
    }

    .appliance-service__arrow{
        flex:0 0 38px;
        width:38px;
        height:38px;
        font-size:17px;
    }

    .appliance-service__number{
        top:16px;
        left:16px;
        width:38px;
        height:38px;
    }

    .home-services__cta{
        margin-top:18px;
        padding:22px;
    }

    .home-services__cta .btn{
        width:100%;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .appliance-service,
    .appliance-service--large{
        height:250px;
    }

    .appliance-service--large{
        height:300px;
    }

    .appliance-service__content h3,
    .appliance-service--large .appliance-service__content h3{
        max-width:205px;
        font-size:19px;
    }

}




/* =========================================================
   SECTION 04 — WHY CUSTOMERS CHOOSE US
========================================================= */

.why-us{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.why-us::before{
    content:"";
    position:absolute;
    top:80px;
    right:-180px;
    width:430px;
    height:430px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.why-us__top{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.82fr 1.18fr;
    align-items:center;
    gap:clamp(60px,7vw,110px);
}

.why-us__content{
    max-width:570px;
}

.why-us__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.why-us__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.why-us__content h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.06;
    letter-spacing:-.045em;
}

.why-us__content h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.why-us__intro{
    margin:0 0 30px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — IMAGE
========================================================= */

.why-us__visual{
    position:relative;
}

.why-us__image{
    position:relative;
    height:520px;
    overflow:hidden;
    border-radius:32px;
    box-shadow:var(--shadow-md);
}

.why-us__image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 55%,
        rgba(16,34,29,.22) 100%
    );
}

.why-us__image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.why-us__image-card{
    position:absolute;
    left:-45px;
    bottom:38px;
    z-index:3;
    display:flex;
    flex-direction:column;
    gap:3px;
    min-width:245px;
    padding:21px 24px;
    border:7px solid #fff;
    border-radius:18px;
    background:var(--secondary);
    box-shadow:0 18px 45px rgba(23,37,34,.16);
}

.why-us__image-card span{
    color:rgba(23,37,34,.65);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.why-us__image-card strong{
    color:var(--ink);
    font-size:17px;
}


/* =========================================================
   SECTION 04 — BENEFITS
========================================================= */

.why-us__benefits{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:65px;
    border:1px solid var(--border);
    border-radius:24px;
    background:var(--bg-soft);
}

.why-us__benefit{
    position:relative;
    display:flex;
    gap:17px;
    min-height:190px;
    padding:30px 27px;
}

.why-us__benefit:not(:last-child){
    border-right:1px solid var(--border);
}

.why-us__number{
    display:grid;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:50%;
    background:#fff;
    color:var(--primary-dark);
    box-shadow:0 8px 22px rgba(23,37,34,.07);
    font-size:16px;
    font-weight:800;
}

.why-us__benefit h3{
    margin:2px 0 9px;
    color:var(--ink);
    font-size:17px;
    line-height:1.25;
}

.why-us__benefit p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 04 — WHY CUSTOMERS CHOOSE US — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .why-us__top{
        gap:60px;
    }

    .why-us__image{
        height:480px;
    }

    .why-us__benefits{
        grid-template-columns:repeat(2,1fr);
    }

    .why-us__benefit:nth-child(2){
        border-right:0;
    }

    .why-us__benefit:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

}

@media(max-width:992px){

    .why-us__top{
        grid-template-columns:1fr;
    }

    .why-us__content{
        max-width:720px;
    }

    .why-us__visual{
        max-width:800px;
    }

    .why-us__image-card{
        left:25px;
    }

}

@media(max-width:767px){

    .why-us{
        padding:70px 0;
    }

    .why-us__top{
        gap:42px;
    }

    .why-us__image{
        height:430px;
        border-radius:24px;
    }

    .why-us__benefits{
        margin-top:45px;
    }

}

@media(max-width:575px){

    .why-us__image{
        height:390px;
    }

    .why-us__image-card{
        right:14px;
        bottom:14px;
        left:14px;
        min-width:0;
        border-width:5px;
    }

    .why-us__benefits{
        grid-template-columns:1fr;
    }

    .why-us__benefit{
        min-height:0;
        padding:24px 20px;
        border-right:0 !important;
        border-bottom:1px solid var(--border);
    }

    .why-us__benefit:last-child{
        border-bottom:0;
    }

}






/* =========================================================
   SECTION 05 — EXPERIENCE / STATISTICS
========================================================= */

.home-experience{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.home-experience::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:48%;
    height:100%;
    background:linear-gradient(
        135deg,
        rgba(67,181,160,.04),
        rgba(67,181,160,.11)
    );
}

.home-experience__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    min-height:650px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}


/* =========================================================
   SECTION 05 — EXPERIENCE IMAGE
========================================================= */

.home-experience__visual{
    position:relative;
    overflow:hidden;
    min-height:650px;
}

.home-experience__visual::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(11,26,22,.02) 30%,
            rgba(11,26,22,.78) 100%
        );
}

.home-experience__visual img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.home-experience__wrap:hover .home-experience__visual img{
    transform:scale(1.025);
}

.home-experience__visual-label{
    position:absolute;
    z-index:2;
    right:35px;
    bottom:35px;
    left:35px;
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:22px 24px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:18px;
    background:rgba(16,36,31,.62);
    backdrop-filter:blur(12px);
}

.home-experience__visual-label span{
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-experience__visual-label strong{
    color:#fff;
    font-size:18px;
    line-height:1.35;
}


/* =========================================================
   SECTION 05 — EXPERIENCE CONTENT
========================================================= */

.home-experience__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(45px,5vw,80px);
}

.home-experience__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:#78D1C0;
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.home-experience__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-experience__content h2{
    max-width:690px;
    margin:0 0 22px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.home-experience__content h2 strong{
    display:block;
    color:#75D1C0;
    font-weight:800;
}

.home-experience__lead{
    max-width:650px;
    margin:0 0 38px;
    color:rgba(255,255,255,.64);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — STATISTICS
========================================================= */

.home-experience__stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.home-experience__stat{
    display:flex;
    align-items:center;
    gap:20px;
    min-height:125px;
    padding:22px 24px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:18px;
    background:rgba(255,255,255,.055);
    transition:
        transform .3s var(--ease),
        background .3s ease,
        border-color .3s ease;
}

.home-experience__stat:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.42);
    background:rgba(255,255,255,.085);
}

.home-experience__stat>strong{
    min-width:72px;
    color:var(--secondary);
    font-size:46px;
    font-weight:800;
    line-height:1;
    letter-spacing:-.055em;
}

.home-experience__stat div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.home-experience__stat span{
    color:#76CDBD;
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-experience__stat p{
    margin:0;
    color:#fff;
    font-size:16px;
    font-weight:700;
    line-height:1.3;
}

.home-experience__stat--accent{
    border-color:rgba(255,212,0,.3);
    background:rgba(255,212,0,.09);
}


/* =========================================================
   SECTION 05 — EXPERIENCE BOTTOM
========================================================= */

.home-experience__bottom{
    display:flex;
    align-items:center;
    gap:20px;
    margin-top:30px;
    padding-top:27px;
    border-top:1px solid rgba(255,255,255,.09);
}

.home-experience__check{
    display:flex;
    align-items:center;
    gap:9px;
}

.home-experience__check span{
    display:grid;
    place-items:center;
    flex:0 0 24px;
    width:24px;
    height:24px;
    border-radius:50%;
    background:rgba(67,181,160,.18);
    color:#72D1BF;
    font-size:16px;
    font-weight:900;
}

.home-experience__check p{
    margin:0;
    color:rgba(255,255,255,.68);
    font-size:16px;
    line-height:1.4;
}

.home-experience__bottom .btn{
    margin-left:auto;
}


/* =========================================================
   SECTION 05 — EXPERIENCE / STATISTICS — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .home-experience__wrap{
        grid-template-columns:.85fr 1.15fr;
    }

    .home-experience__content{
        padding:50px 42px;
    }

    .home-experience__stat{
        gap:15px;
        padding:20px;
    }

    .home-experience__stat>strong{
        min-width:58px;
        font-size:40px;
    }

    .home-experience__bottom{
        flex-wrap:wrap;
    }

    .home-experience__bottom .btn{
        width:100%;
        margin-left:0;
    }

}

@media(max-width:992px){

    .home-experience__wrap{
        grid-template-columns:1fr;
    }

    .home-experience__visual{
        min-height:500px;
    }

    .home-experience__content{
        padding:55px;
    }

    .home-experience__bottom .btn{
        width:auto;
        margin-left:auto;
    }

}

@media(max-width:767px){

    .home-experience{
        padding:70px 0;
    }

    .home-experience__wrap{
        border-radius:24px;
    }

    .home-experience__visual{
        min-height:420px;
    }

    .home-experience__visual-label{
        right:20px;
        bottom:20px;
        left:20px;
    }

    .home-experience__content{
        padding:42px 28px;
    }

    .home-experience__stats{
        grid-template-columns:1fr;
    }

    .home-experience__stat{
        min-height:105px;
    }

    .home-experience__bottom{
        align-items:flex-start;
    }

    .home-experience__bottom .btn{
        width:100%;
        margin-left:0;
    }

}

@media(max-width:575px){

    .home-experience__visual{
        min-height:350px;
    }

    .home-experience__visual-label{
        padding:17px 18px;
    }

    .home-experience__visual-label strong{
        font-size:16px;
    }

    .home-experience__content{
        padding:35px 20px;
    }

    .home-experience__lead{
        margin-bottom:28px;
    }

    .home-experience__stat{
        min-height:95px;
        padding:18px;
    }

    .home-experience__stat>strong{
        min-width:55px;
        font-size:36px;
    }

    .home-experience__bottom{
        flex-direction:column;
        gap:14px;
    }

}






/* =========================================================
   SECTION 06 — SERVICE ADVANTAGES
========================================================= */

.service-advantages{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.service-advantages::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-180px;
    width:480px;
    height:480px;
    border-radius:50%;
    background:rgba(67,181,160,.075);
}

.service-advantages__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.25fr .75fr;
    align-items:end;
    gap:80px;
    margin-bottom:48px;
}

.service-advantages__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.service-advantages__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.service-advantages__head h2{
    max-width:780px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.service-advantages__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.service-advantages__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — LAYOUT
========================================================= */

.service-advantages__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:16px;
}


/* =========================================================
   SECTION 06 — IMAGE
========================================================= */

.service-advantages__visual{
    position:relative;
    overflow:hidden;
    min-height:660px;
    border-radius:28px;
    background:var(--bg-dark);
}

.service-advantages__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.service-advantages__visual:hover>img{
    transform:scale(1.035);
}

.service-advantages__visual-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(10,24,20,.02) 30%,
            rgba(10,24,20,.78) 100%
        );
}

.service-advantages__visual-content{
    position:absolute;
    z-index:2;
    right:34px;
    bottom:35px;
    left:34px;
}

.service-advantages__visual-content>span{
    display:block;
    margin-bottom:9px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.service-advantages__visual-content>strong{
    display:block;
    max-width:420px;
    color:#fff;
    font-size:28px;
    line-height:1.18;
    letter-spacing:-.035em;
}

.service-advantages__accent{
    position:absolute;
    z-index:3;
    top:25px;
    left:25px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 17px;
    border:1px solid rgba(255,255,255,.45);
    border-radius:15px;
    background:rgba(255,255,255,.91);
    box-shadow:0 15px 35px rgba(23,37,34,.13);
    backdrop-filter:blur(10px);
}

.service-advantages__accent>span{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    font-size:16px;
    font-weight:900;
}

.service-advantages__accent div{
    display:flex;
    flex-direction:column;
}

.service-advantages__accent small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.service-advantages__accent strong{
    margin-top:2px;
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 06 — ADVANTAGE CARDS
========================================================= */

.service-advantages__cards{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}

.service-advantage{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:205px;
    overflow:hidden;
    padding:26px;
    border:1px solid var(--border);
    border-radius:22px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.service-advantage:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.38);
    box-shadow:var(--shadow-sm);
}

.service-advantage__number{
    position:absolute;
    top:22px;
    right:23px;
    color:rgba(39,141,124,.26);
    font-size:16px;
    font-weight:900;
    letter-spacing:.08em;
}

.service-advantage__icon{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    margin-bottom:24px;
    border-radius:15px;
    background:#fff;
    color:var(--primary-dark);
    box-shadow:0 8px 25px rgba(23,37,34,.06);
}

.service-advantage__icon svg{
    width:24px;
    height:24px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.service-advantage h3{
    margin:0 0 9px;
    color:var(--ink);
    font-size:18px;
    line-height:1.25;
    letter-spacing:-.02em;
}

.service-advantage p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}

.service-advantage--cta{
    justify-content:flex-end;
    border-color:var(--primary);
    background:var(--primary);
}

.service-advantage--cta::before{
    content:"";
    position:absolute;
    top:-70px;
    right:-60px;
    width:190px;
    height:190px;
    border:1px solid rgba(255,255,255,.25);
    border-radius:50%;
}

.service-advantage--cta::after{
    content:"";
    position:absolute;
    top:-35px;
    right:-25px;
    width:110px;
    height:110px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:50%;
}

.service-advantage__small{
    position:relative;
    z-index:2;
    margin-bottom:8px;
    color:rgba(255,255,255,.72);
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.service-advantage--cta h3{
    position:relative;
    z-index:2;
    margin-bottom:22px;
    color:#fff;
    font-size:25px;
}

.service-advantage--cta>a{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-top:17px;
    border-top:1px solid rgba(255,255,255,.28);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.service-advantage--cta>a span{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.service-advantage--cta>a:hover span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 06 — SERVICE ADVANTAGES — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .service-advantages__layout{
        grid-template-columns:.9fr 1.1fr;
    }

    .service-advantages__visual{
        min-height:640px;
    }

    .service-advantage{
        padding:23px;
    }

}

@media(max-width:992px){

    .service-advantages__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .service-advantages__layout{
        grid-template-columns:1fr;
    }

    .service-advantages__visual{
        min-height:540px;
    }

    .service-advantages__cards{
        grid-template-columns:repeat(3,1fr);
    }

}

@media(max-width:767px){

    .service-advantages{
        padding:70px 0;
    }

    .service-advantages__head{
        margin-bottom:32px;
    }

    .service-advantages__visual{
        min-height:460px;
        border-radius:22px;
    }

    .service-advantages__visual-content{
        right:24px;
        bottom:25px;
        left:24px;
    }

    .service-advantages__visual-content>strong{
        font-size:24px;
    }

    .service-advantages__cards{
        grid-template-columns:repeat(2,1fr);
        gap:12px;
    }

}

@media(max-width:575px){

    .service-advantages__visual{
        min-height:390px;
    }

    .service-advantages__visual-content{
        right:20px;
        bottom:20px;
        left:20px;
    }

    .service-advantages__visual-content>strong{
        font-size:21px;
    }

    .service-advantages__accent{
        top:15px;
        left:15px;
    }

    .service-advantages__cards{
        grid-template-columns:1fr;
    }

    .service-advantage{
        min-height:190px;
        padding:22px;
    }

    .service-advantage--cta{
        min-height:210px;
    }

}






/* =========================================================
   SECTION 07 — MAIN CTA
========================================================= */

.home-cta{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.home-cta::before{
    content:"";
    position:absolute;
    top:-170px;
    right:-150px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(67,181,160,.1);
}

.home-cta__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.05fr .95fr;
    min-height:570px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}


/* =========================================================
   SECTION 07 — CTA CONTENT
========================================================= */

.home-cta__content{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(45px,5vw,78px);
}

.home-cta__content::before{
    content:"";
    position:absolute;
    top:-170px;
    left:-170px;
    width:370px;
    height:370px;
    border:1px solid rgba(67,181,160,.18);
    border-radius:50%;
    pointer-events:none;
}

.home-cta__content::after{
    content:"";
    position:absolute;
    left:44%;
    bottom:-190px;
    width:330px;
    height:330px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
    pointer-events:none;
}

.home-cta__eyebrow{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:#7AD3C2;
    font-size:16px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.home-cta__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-cta__content h2{
    position:relative;
    z-index:2;
    max-width:660px;
    margin:0 0 22px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.home-cta__content h2 strong{
    display:block;
    color:#74CFBE;
    font-weight:800;
}

.home-cta__content>p{
    position:relative;
    z-index:2;
    max-width:620px;
    margin:0;
    color:rgba(255,255,255,.64);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 07 — CTA ACTIONS
========================================================= */

.home-cta__actions{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:25px;
    margin-top:32px;
}

.home-cta__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    min-height:58px;
    padding:8px 9px 8px 25px;
    border-radius:15px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.home-cta__button>span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:11px;
    background:var(--ink);
    color:#fff;
    font-size:18px;
    transition:transform .3s var(--ease);
}

.home-cta__button:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 34px rgba(255,212,0,.2);
}

.home-cta__button:hover>span{
    transform:rotate(45deg);
}

.home-cta__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#fff;
    font-size:16px;
    font-weight:700;
}

.home-cta__link>span{
    color:var(--secondary);
    font-size:17px;
    transition:transform .25s ease;
}

.home-cta__link:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 07 — CTA TRUST
========================================================= */

.home-cta__trust{
    position:relative;
    z-index:2;
    display:flex;
    flex-wrap:wrap;
    gap:12px 24px;
    margin-top:39px;
    padding-top:26px;
    border-top:1px solid rgba(255,255,255,.1);
}

.home-cta__trust>div{
    display:flex;
    align-items:center;
    gap:8px;
}

.home-cta__trust span{
    display:grid;
    place-items:center;
    flex:0 0 23px;
    width:23px;
    height:23px;
    border-radius:50%;
    background:rgba(67,181,160,.18);
    color:#79D5C3;
    font-size:16px;
    font-weight:900;
}

.home-cta__trust p{
    margin:0;
    color:rgba(255,255,255,.65);
    font-size:16px;
    font-weight:700;
}


/* =========================================================
   SECTION 07 — CTA IMAGE
========================================================= */

.home-cta__visual{
    position:relative;
    min-height:570px;
    overflow:hidden;
}

.home-cta__visual::before{
    content:"";
    position:absolute;
    z-index:2;
    top:0;
    bottom:0;
    left:0;
    width:140px;
    background:linear-gradient(
        90deg,
        var(--bg-dark),
        rgba(18,32,29,.65),
        transparent
    );
    pointer-events:none;
}

.home-cta__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.home-cta__wrap:hover .home-cta__visual>img{
    transform:scale(1.035);
}

.home-cta__image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(10,22,18,.02) 35%,
            rgba(10,22,18,.7) 100%
        );
}

.home-cta__image-label{
    position:absolute;
    z-index:3;
    right:30px;
    bottom:30px;
    left:30px;
    padding:20px 22px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:17px;
    background:rgba(12,27,23,.57);
    backdrop-filter:blur(12px);
}

.home-cta__image-label span{
    display:block;
    margin-bottom:5px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.home-cta__image-label strong{
    color:#fff;
    font-size:16px;
    line-height:1.4;
}


/* =========================================================
   SECTION 07 — MAIN CTA — RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .home-cta__wrap{
        grid-template-columns:1fr .85fr;
    }

    .home-cta__content{
        padding:50px 42px;
    }

}

@media(max-width:992px){

    .home-cta__wrap{
        grid-template-columns:1fr;
    }

    .home-cta__visual{
        min-height:470px;
    }

    .home-cta__visual::before{
        top:0;
        right:0;
        bottom:auto;
        left:0;
        width:100%;
        height:100px;
        background:linear-gradient(
            180deg,
            var(--bg-dark),
            transparent
        );
    }

}

@media(max-width:767px){

    .home-cta{
        padding:70px 0;
    }

    .home-cta__wrap{
        border-radius:24px;
    }

    .home-cta__content{
        padding:42px 28px;
    }

    .home-cta__visual{
        min-height:400px;
    }

    .home-cta__actions{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .home-cta__content{
        padding:36px 20px;
    }

    .home-cta__actions{
        width:100%;
    }

    .home-cta__button{
        width:100%;
        justify-content:space-between;
    }

    .home-cta__trust{
        flex-direction:column;
        gap:12px;
        margin-top:30px;
    }

    .home-cta__visual{
        min-height:330px;
    }

    .home-cta__image-label{
        right:15px;
        bottom:15px;
        left:15px;
        padding:17px;
    }

}





/* =========================================================
   SECTION 08 — TESTIMONIALS
========================================================= */

.home-testimonials{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.home-testimonials::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-160px;
    width:430px;
    height:430px;
    border-radius:50%;
    background:rgba(67,181,160,.1);
}

.home-testimonials__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    align-items:center;
    gap:clamp(55px,6vw,100px);
}

.home-testimonials__content{
    max-width:610px;
}

.home-testimonials__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-testimonials__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-testimonials__content h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.home-testimonials__content h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.home-testimonials__intro{
    margin:0 0 28px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}

.home-testimonials__rating{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:30px;
    padding:18px 20px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
}

.home-testimonials__stars{
    color:#E6BB00;
    font-size:17px;
    letter-spacing:2px;
}

.home-testimonials__rating div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.home-testimonials__rating strong{
    color:var(--ink);
    font-size:16px;
}

.home-testimonials__rating span{
    color:var(--muted);
    font-size:16px;
}


/* =========================================================
   SECTION 08 — TESTIMONIAL IMAGE
========================================================= */

.home-testimonials__visual{
    position:relative;
    min-height:560px;
}

.home-testimonials__image{
    position:absolute;
    inset:0 0 40px 55px;
    overflow:hidden;
    border-radius:30px;
    box-shadow:var(--shadow-md);
}

.home-testimonials__image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.home-testimonials__quote{
    position:absolute;
    z-index:3;
    left:0;
    bottom:0;
    width:min(430px,82%);
    padding:26px 28px;
    border:7px solid var(--bg-soft);
    border-radius:20px;
    background:var(--primary);
    box-shadow:0 18px 40px rgba(23,37,34,.15);
}

.home-testimonials__quote>span{
    display:block;
    height:30px;
    color:var(--secondary);
    font-size:54px;
    font-weight:800;
    line-height:.8;
}

.home-testimonials__quote p{
    margin:8px 0 0;
    color:#fff;
    font-size:16px;
    font-weight:700;
    line-height:1.55;
}


/* =========================================================
   SECTION 08 — TESTIMONIAL CARDS
========================================================= */

.home-testimonials__cards{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-top:65px;
}

.testimonial-card{
    position:relative;
    min-height:245px;
    padding:28px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.testimonial-card:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.testimonial-card__top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:24px;
}

.testimonial-card__stars{
    color:#E6BB00;
    font-size:16px;
    letter-spacing:2px;
}

.testimonial-card__quote{
    color:rgba(67,181,160,.18);
    font-size:54px;
    font-weight:800;
    line-height:.7;
}

.testimonial-card>p{
    margin:0 0 28px;
    color:var(--ink);
    font-size:16px;
    line-height:1.7;
}

.testimonial-card__author{
    display:flex;
    flex-direction:column;
    gap:3px;
    padding-top:18px;
    border-top:1px solid var(--border);
}

.testimonial-card__author strong{
    color:var(--ink);
    font-size:16px;
}

.testimonial-card__author span{
    color:var(--muted);
    font-size:16px;
}


/* =========================================================
   SECTION 08 — TESTIMONIALS — RESPONSIVE
========================================================= */

@media(max-width:992px){

    .home-testimonials__layout{
        grid-template-columns:1fr;
        gap:50px;
    }

    .home-testimonials__content{
        max-width:760px;
    }

    .home-testimonials__visual{
        max-width:760px;
        min-height:520px;
    }

    .home-testimonials__cards{
        grid-template-columns:repeat(2,1fr);
    }

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

}

@media(max-width:767px){

    .home-testimonials{
        padding:70px 0;
    }

    .home-testimonials__visual{
        min-height:470px;
    }

    .home-testimonials__image{
        inset:0 0 35px 30px;
        border-radius:24px;
    }

    .home-testimonials__quote{
        padding:22px;
    }

    .home-testimonials__cards{
        margin-top:45px;
    }

}

@media(max-width:575px){

    .home-testimonials__visual{
        min-height:420px;
    }

    .home-testimonials__image{
        inset:0 0 95px 0;
    }

    .home-testimonials__quote{
        right:12px;
        bottom:0;
        left:12px;
        width:auto;
        border-width:5px;
    }

    .home-testimonials__quote p{
        font-size:16px;
    }

    .home-testimonials__cards{
        grid-template-columns:1fr;
    }

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

}








/* =========================================================
   SECTION 09 — BRANDS WE SERVICE
========================================================= */

.home-brands{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.home-brands::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-200px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.home-brands__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.home-brands__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-brands__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-brands__head h2{
    max-width:760px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.home-brands__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.home-brands__head>p{
    max-width:480px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 09 — BRAND GRID
========================================================= */

.home-brands__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
}

.brand-card{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:125px;
    padding:20px 14px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--bg-soft);
    text-align:center;
    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.brand-card::before{
    content:"";
    position:absolute;
    top:-35px;
    right:-35px;
    width:80px;
    height:80px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
    transition:transform .35s var(--ease);
}

.brand-card>span{
    position:relative;
    z-index:2;
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.025em;
}

.brand-card>small{
    position:relative;
    z-index:2;
    margin-top:6px;
    color:var(--muted);
    font-size:12px;
    font-weight:700;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.brand-card:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.42);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.brand-card:hover::before{
    transform:scale(1.5);
}

.brand-card:hover>span{
    color:var(--primary-dark);
}


/* =========================================================
   SECTION 09 — BOTTOM CTA
========================================================= */

.home-brands__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:28px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-dark);
}

.home-brands__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.home-brands__bottom span{
    color:#76D0BF;
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-brands__bottom strong{
    color:#fff;
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 09 — BRANDS WE SERVICE — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .home-brands__grid{
        grid-template-columns:repeat(4,1fr);
    }

}

@media(max-width:992px){

    .home-brands__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .home-brands__grid{
        grid-template-columns:repeat(3,1fr);
    }

}

@media(max-width:767px){

    .home-brands{
        padding:70px 0;
    }

    .home-brands__head{
        margin-bottom:30px;
    }

    .home-brands__grid{
        grid-template-columns:repeat(2,1fr);
        gap:10px;
    }

    .brand-card{
        min-height:110px;
        border-radius:16px;
    }

    .home-brands__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .home-brands__grid{
        grid-template-columns:repeat(2,1fr);
    }

    .brand-card{
        min-height:100px;
        padding:16px 10px;
    }

    .brand-card>span{
        font-size:16px;
    }

    .home-brands__bottom{
        padding:22px;
    }

    .home-brands__bottom .btn{
        width:100%;
    }

}








/* =========================================================
   SECTION 10 — SERVICE AREAS
========================================================= */

.home-areas{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.home-areas::before{
    content:"";
    position:absolute;
    top:-170px;
    right:-160px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(67,181,160,.09);
}

.home-areas__top{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:44px;
}

.home-areas__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-areas__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-areas__top h2{
    max-width:760px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.home-areas__top h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.home-areas__top>p{
    max-width:480px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 10 — SERVICE AREA GRID
========================================================= */

.home-areas__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}

.home-area{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:230px;
    overflow:hidden;
    padding:25px;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.home-area:not(.home-area--featured)::before{
    content:"";
    position:absolute;
    top:-55px;
    right:-55px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
    transition:transform .35s var(--ease);
}

.home-area:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.home-area:not(.home-area--featured):hover::before{
    transform:scale(1.3);
}


/* =========================================================
   SECTION 10 — FEATURED WEST PALM BEACH
========================================================= */

.home-area--featured{
    grid-column:span 2;
    min-height:360px;
    padding:32px;
    border:0;
    background:var(--bg-dark);
}

.home-area--featured>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.home-area--featured:hover>img{
    transform:scale(1.045);
}

.home-area__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(9,22,18,.08) 15%,
            rgba(9,22,18,.25) 48%,
            rgba(9,22,18,.9) 100%
        );
}

.home-area__number{
    position:relative;
    z-index:2;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.home-area--featured .home-area__number{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid rgba(255,255,255,.32);
    border-radius:50%;
    background:rgba(15,30,26,.48);
    backdrop-filter:blur(8px);
    color:#fff;
}

.home-area__content{
    position:relative;
    z-index:2;
}

.home-area__label{
    display:block;
    margin-bottom:7px;
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.home-area--featured .home-area__label{
    color:var(--secondary);
}

.home-area h3{
    margin:0;
    color:var(--ink);
    font-size:21px;
    line-height:1.2;
    letter-spacing:-.025em;
}

.home-area--featured h3{
    color:#fff;
    font-size:34px;
}

.home-area p{
    max-width:500px;
    margin:12px 0 0;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.65;
}

.home-area__arrow{
    position:absolute;
    right:22px;
    bottom:22px;
    z-index:3;
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:18px;
    transition:
        transform .3s var(--ease),
        background .3s ease;
}

.home-area:hover .home-area__arrow{
    transform:rotate(45deg);
}

.home-area--featured .home-area__arrow{
    right:30px;
    bottom:30px;
    width:46px;
    height:46px;
}


/* =========================================================
   SECTION 10 — BOTTOM CTA
========================================================= */

.home-areas__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:26px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.home-areas__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.home-areas__bottom span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.home-areas__bottom strong{
    color:var(--ink);
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 10 — SERVICE AREAS — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .home-areas__grid{
        grid-template-columns:repeat(3,1fr);
    }

    .home-area--featured{
        grid-column:span 2;
    }

}

@media(max-width:992px){

    .home-areas__top{
        grid-template-columns:1fr;
        gap:20px;
    }

    .home-areas__grid{
        grid-template-columns:repeat(2,1fr);
    }

    .home-area--featured{
        grid-column:1/-1;
    }

}

@media(max-width:767px){

    .home-areas{
        padding:70px 0;
    }

    .home-areas__top{
        margin-bottom:30px;
    }

    .home-area{
        min-height:200px;
        border-radius:18px;
    }

    .home-area--featured{
        min-height:330px;
        padding:25px;
    }

    .home-area--featured h3{
        font-size:29px;
    }

    .home-area--featured .home-area__arrow{
        right:22px;
        bottom:22px;
    }

    .home-areas__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .home-areas__grid{
        grid-template-columns:1fr;
    }

    .home-area{
        min-height:180px;
        padding:22px;
    }

    .home-area--featured{
        grid-column:auto;
        min-height:300px;
    }

    .home-area--featured h3{
        max-width:230px;
        font-size:27px;
    }

    .home-area--featured p{
        max-width:260px;
        padding-right:20px;
        font-size:16px;
    }

    .home-area__arrow{
        right:18px;
        bottom:18px;
    }

    .home-areas__bottom{
        padding:22px;
    }

    .home-areas__bottom .btn{
        width:100%;
    }

}





/* =========================================================
   SECTION 11 — FINAL CTA
========================================================= */

.home-final-cta{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.home-final-cta::before{
    content:"";
    position:absolute;
    top:-190px;
    right:-180px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.home-final-cta::after{
    content:"";
    position:absolute;
    bottom:-240px;
    left:-190px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:rgba(255,212,0,.055);
}


/* =========================================================
   SECTION 11 — WRAPPER
========================================================= */

.home-final-cta__wrap{
    position:relative;
    z-index:2;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:32px;
    background:var(--bg-soft);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 11 — MAIN GRID
========================================================= */

.home-final-cta__main{
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    min-height:520px;
}


/* =========================================================
   SECTION 11 — CONTENT
========================================================= */

.home-final-cta__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(42px,5vw,70px);
}

.home-final-cta__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-final-cta__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.home-final-cta h2{
    max-width:680px;
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.045em;
}

.home-final-cta h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.home-final-cta__content>p{
    max-width:580px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 11 — ACTIONS
========================================================= */

.home-final-cta__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:30px;
}

.home-final-cta__link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    transition:color .25s ease;
}

.home-final-cta__link span{
    font-size:17px;
    transition:transform .3s var(--ease);
}

.home-final-cta__link:hover{
    color:var(--primary-dark);
}

.home-final-cta__link:hover span{
    transform:translateX(5px);
}


/* =========================================================
   SECTION 11 — PHOTO
========================================================= */

.home-final-cta__visual{
    position:relative;
    min-height:520px;
    overflow:hidden;
    background:var(--bg-dark);
}

.home-final-cta__visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.home-final-cta__visual:hover img{
    transform:scale(1.04);
}

.home-final-cta__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.02) 30%,
            rgba(8,20,17,.15) 55%,
            rgba(8,20,17,.82) 100%
        );
}

.home-final-cta__photo-content{
    position:absolute;
    z-index:2;
    right:34px;
    bottom:34px;
    left:34px;
    display:flex;
    flex-direction:column;
    gap:6px;
}

.home-final-cta__photo-content span{
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.home-final-cta__photo-content strong{
    max-width:390px;
    color:#fff;
    font-size:23px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}


/* =========================================================
   SECTION 11 — PHOTO BADGE
========================================================= */

.home-final-cta__photo-badge{
    position:absolute;
    z-index:3;
    top:25px;
    right:25px;
    display:grid;
    place-items:center;
    width:66px;
    height:66px;
    border:6px solid rgba(255,255,255,.9);
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 12px 30px rgba(0,0,0,.16);
}

.home-final-cta__photo-badge span{
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 11 — FEATURES
========================================================= */

.home-final-cta__features{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-top:1px solid var(--border);
    background:#fff;
}

.home-final-cta__feature{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:start;
    gap:17px;
    min-height:145px;
    padding:30px 34px;
}

.home-final-cta__feature:not(:last-child){
    border-right:1px solid var(--border);
}

.home-final-cta__number{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.08em;
}

.home-final-cta__feature>div{
    padding-top:1px;
}

.home-final-cta__feature strong{
    display:block;
    margin-bottom:6px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    line-height:1.35;
}

.home-final-cta__feature p{
    max-width:300px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 11 — RESPONSIVE — 1100px
========================================================= */

@media(max-width:1100px){

    .home-final-cta__main{
        grid-template-columns:1fr 1fr;
    }

    .home-final-cta__content{
        padding:45px;
    }

}


/* =========================================================
   SECTION 11 — RESPONSIVE — TABLET
========================================================= */

@media(max-width:900px){

    .home-final-cta__wrap{
        border-radius:26px;
    }

    .home-final-cta__main{
        grid-template-columns:1fr;
        min-height:0;
    }

    .home-final-cta__content{
        padding:48px 40px;
    }

    .home-final-cta__visual{
        min-height:460px;
    }

    .home-final-cta__features{
        grid-template-columns:1fr;
    }

    .home-final-cta__feature{
        min-height:0;
        padding:25px 40px;
    }

    .home-final-cta__feature:not(:last-child){
        border-right:0;
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 11 — RESPONSIVE — MOBILE
========================================================= */

@media(max-width:767px){

    .home-final-cta{
        padding:70px 0;
    }

    .home-final-cta__wrap{
        border-radius:22px;
    }

    .home-final-cta__content{
        padding:38px 28px;
    }

    .home-final-cta__visual{
        min-height:390px;
    }

    .home-final-cta__photo-content{
        right:25px;
        bottom:25px;
        left:25px;
    }

    .home-final-cta__photo-content strong{
        font-size:20px;
    }

    .home-final-cta__photo-badge{
        top:20px;
        right:20px;
        width:58px;
        height:58px;
        border-width:5px;
    }

    .home-final-cta__feature{
        padding:22px 28px;
    }

}


/* =========================================================
   SECTION 11 — RESPONSIVE — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .home-final-cta__wrap{
        border-radius:19px;
    }

    .home-final-cta__content{
        padding:31px 21px;
    }

    .home-final-cta__eyebrow{
        font-size:16px;
    }

    .home-final-cta__eyebrow::before{
        flex-basis:24px;
        width:24px;
    }

    .home-final-cta__actions{
        flex-direction:column;
        align-items:stretch;
        gap:17px;
    }

    .home-final-cta__actions .btn{
        width:100%;
    }

    .home-final-cta__link{
        justify-content:center;
    }

    .home-final-cta__visual{
        min-height:310px;
    }

    .home-final-cta__photo-content{
        right:20px;
        bottom:20px;
        left:20px;
    }

    .home-final-cta__photo-content strong{
        max-width:270px;
        font-size:17px;
    }

    .home-final-cta__photo-badge{
        top:15px;
        right:15px;
        width:52px;
        height:52px;
        border-width:4px;
    }

    .home-final-cta__photo-badge span{
        font-size:16px;
    }

    .home-final-cta__feature{
        grid-template-columns:auto 1fr;
        gap:14px;
        padding:21px;
    }

    .home-final-cta__number{
        width:38px;
        height:38px;
        border-radius:11px;
    }

}




























/* =========================================================
   SECTION 01 — DRYER REPAIR HERO
========================================================= */

.dryer-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(70px,8vw,115px) 0;
    background:
        radial-gradient(
            circle at 0% 0%,
            rgba(67,181,160,.15),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #f5fbf9 0%,
            #ffffff 100%
        );
}

.dryer-hero::before{
    content:"";
    position:absolute;
    right:-170px;
    bottom:-210px;
    width:470px;
    height:470px;
    border-radius:50%;
    background:rgba(255,212,0,.07);
}

.dryer-hero__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:center;
    gap:clamp(55px,6vw,100px);
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — CONTENT
========================================================= */

.dryer-hero__content{
    max-width:680px;
}

.dryer-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-hero__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-hero h1{
    margin:0 0 23px;
    color:var(--ink);
    font-size:var(--fs-h1);
    font-weight:500;
    line-height:1.02;
    letter-spacing:-.055em;
}

.dryer-hero h1 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-hero__intro{
    max-width:640px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — ACTIONS
========================================================= */

.dryer-hero__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.dryer-hero__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    transition:color .25s ease;
}

.dryer-hero__link span{
    font-size:17px;
    transition:transform .3s var(--ease);
}

.dryer-hero__link:hover{
    color:var(--primary-dark);
}

.dryer-hero__link:hover span{
    transform:translateX(5px);
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — BENEFITS
========================================================= */

.dryer-hero__benefits{
    display:flex;
    flex-wrap:wrap;
    gap:11px;
    margin-top:34px;
}

.dryer-hero__benefit{
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px 13px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#fff;
    box-shadow:0 7px 22px rgba(23,37,34,.045);
}

.dryer-hero__benefit span{
    display:grid;
    place-items:center;
    flex:0 0 23px;
    width:23px;
    height:23px;
    border-radius:50%;
    background:rgba(67,181,160,.13);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.dryer-hero__benefit p{
    margin:0;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — VISUAL
========================================================= */

.dryer-hero__visual{
    position:relative;
    min-height:590px;
}

.dryer-hero__image{
    position:absolute;
    inset:0 0 35px 45px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.dryer-hero__image img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.dryer-hero__visual:hover .dryer-hero__image img{
    transform:scale(1.04);
}

.dryer-hero__image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 52%,
            rgba(9,22,18,.22) 100%
        );
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — BADGE
========================================================= */

.dryer-hero__badge{
    position:absolute;
    z-index:3;
    top:28px;
    left:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    width:132px;
    height:132px;
    padding:22px;
    border:8px solid #f5fbf9;
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 15px 40px rgba(23,37,34,.14);
}

.dryer-hero__badge span{
    margin-bottom:2px;
    color:rgba(23,37,34,.58);
    font-size:16px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-hero__badge strong{
    color:var(--ink);
    font-size:21px;
    line-height:1.05;
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — FLOATING CARD
========================================================= */

.dryer-hero__card{
    position:absolute;
    z-index:3;
    right:25px;
    bottom:0;
    display:flex;
    align-items:center;
    gap:13px;
    min-width:300px;
    padding:16px 18px;
    border:1px solid rgba(255,255,255,.85);
    border-radius:17px;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 45px rgba(23,37,34,.14);
    backdrop-filter:blur(12px);
}

.dryer-hero__card-icon{
    display:grid;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.dryer-hero__card>div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.dryer-hero__card small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.dryer-hero__card strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.3;
}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .dryer-hero__wrap{
        grid-template-columns:.95fr 1.05fr;
        gap:55px;
    }

    .dryer-hero__visual{
        min-height:540px;
    }

}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-hero__wrap{
        grid-template-columns:1fr;
        gap:50px;
    }

    .dryer-hero__content{
        max-width:780px;
    }

    .dryer-hero__visual{
        width:100%;
        max-width:820px;
        min-height:540px;
    }

}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-hero{
        padding:70px 0;
    }

    .dryer-hero__visual{
        min-height:450px;
    }

    .dryer-hero__image{
        inset:0 0 42px 28px;
        border-radius:24px;
    }

    .dryer-hero__badge{
        top:18px;
        width:110px;
        height:110px;
        padding:17px;
        border-width:6px;
    }

    .dryer-hero__badge strong{
        font-size:17px;
    }

    .dryer-hero__card{
        right:15px;
        min-width:280px;
    }

}


/* =========================================================
   SECTION 01 — DRYER REPAIR HERO — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-hero__eyebrow{
        font-size:16px;
    }

    .dryer-hero__eyebrow::before{
        flex-basis:24px;
        width:24px;
    }

    .dryer-hero__actions{
        flex-direction:column;
        align-items:stretch;
        gap:17px;
    }

    .dryer-hero__actions .btn{
        width:100%;
    }

    .dryer-hero__link{
        justify-content:center;
    }

    .dryer-hero__benefits{
        gap:8px;
        margin-top:27px;
    }

    .dryer-hero__benefit{
        padding:8px 10px;
    }

    .dryer-hero__visual{
        min-height:410px;
    }

    .dryer-hero__image{
        inset:0 0 82px 0;
        border-radius:20px;
    }

    .dryer-hero__badge{
        top:14px;
        left:14px;
        width:96px;
        height:96px;
        padding:14px;
        border-width:5px;
    }

    .dryer-hero__badge strong{
        font-size:16px;
    }

    .dryer-hero__card{
        right:10px;
        bottom:0;
        left:10px;
        min-width:0;
        padding:14px 15px;
    }

}





/* =========================================================
   SECTION 02 — COMMON DRYER PROBLEMS WE FIX
========================================================= */

.dryer-problems{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.dryer-problems::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-180px;
    width:440px;
    height:440px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}


/* =========================================================
   SECTION 02 — HEADER
========================================================= */

.dryer-problems__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.dryer-problems__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-problems__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-problems__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-problems__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-problems__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.dryer-problems__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:16px;
}


/* =========================================================
   SECTION 02 — FEATURED IMAGE
========================================================= */

.dryer-problems__visual{
    position:relative;
    min-height:760px;
    overflow:hidden;
    border-radius:28px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-sm);
}

.dryer-problems__image{
    position:absolute;
    inset:0;
}

.dryer-problems__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.dryer-problems__visual:hover img{
    transform:scale(1.04);
}

.dryer-problems__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.02) 35%,
            rgba(8,20,17,.82) 100%
        );
}

.dryer-problems__image-content{
    position:absolute;
    z-index:2;
    right:30px;
    bottom:32px;
    left:30px;
}

.dryer-problems__image-content span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-problems__image-content strong{
    display:block;
    max-width:420px;
    color:#fff;
    font-size:25px;
    line-height:1.22;
    letter-spacing:-.03em;
}


/* =========================================================
   SECTION 02 — PROBLEM GRID
========================================================= */

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

.dryer-problem{
    position:relative;
    min-height:175px;
    overflow:hidden;
    padding:24px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease),
        background .3s ease;
}

.dryer-problem::after{
    content:"";
    position:absolute;
    top:-45px;
    right:-45px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
    transition:transform .35s var(--ease);
}

.dryer-problem:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.4);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.dryer-problem:hover::after{
    transform:scale(1.4);
}

.dryer-problem__number{
    position:relative;
    z-index:2;
    display:block;
    margin-bottom:27px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.dryer-problem>div{
    position:relative;
    z-index:2;
}

.dryer-problem h3{
    margin:0 0 8px;
    color:var(--ink);
    font-size:17px;
    line-height:1.3;
    letter-spacing:-.02em;
}

.dryer-problem p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 02 — BOTTOM CTA
========================================================= */

.dryer-problems__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:25px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
}

.dryer-problems__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.dryer-problems__bottom span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.dryer-problems__bottom strong{
    color:var(--ink);
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 02 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .dryer-problems__layout{
        grid-template-columns:.9fr 1.1fr;
    }

    .dryer-problems__visual{
        min-height:720px;
    }

}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-problems__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .dryer-problems__layout{
        grid-template-columns:1fr;
    }

    .dryer-problems__visual{
        min-height:500px;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-problems{
        padding:70px 0;
    }

    .dryer-problems__head{
        margin-bottom:30px;
    }

    .dryer-problems__visual{
        min-height:420px;
        border-radius:22px;
    }

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

    .dryer-problem{
        min-height:0;
    }

    .dryer-problems__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-problems__visual{
        min-height:340px;
    }

    .dryer-problems__image-content{
        right:20px;
        bottom:22px;
        left:20px;
    }

    .dryer-problems__image-content strong{
        font-size:21px;
    }

    .dryer-problem{
        padding:21px;
        border-radius:17px;
    }

    .dryer-problem__number{
        margin-bottom:22px;
    }

    .dryer-problems__bottom{
        padding:22px;
    }

    .dryer-problems__bottom .btn{
        width:100%;
    }

}





/* =========================================================
   SECTION 03 — DRYER BRANDS WE REPAIR
========================================================= */

.dryer-brands{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.dryer-brands::before{
    content:"";
    position:absolute;
    top:-190px;
    left:-170px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}


/* =========================================================
   SECTION 03 — HEADER
========================================================= */

.dryer-brands__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.dryer-brands__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-brands__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-brands__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-brands__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-brands__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 03 — LAYOUT
========================================================= */

.dryer-brands__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:16px;
}


/* =========================================================
   SECTION 03 — FEATURED BLOCK
========================================================= */

.dryer-brands__featured{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-height:500px;
    overflow:hidden;
    padding:34px;
    border-radius:28px;
    background:
        radial-gradient(
            circle at 82% 12%,
            rgba(67,181,160,.28),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #12201d,
            #18312b
        );
}

.dryer-brands__featured-label{
    position:relative;
    z-index:2;
    margin-bottom:10px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-brands__featured h3{
    position:relative;
    z-index:2;
    max-width:470px;
    margin:0 0 17px;
    color:#fff;
    font-size:32px;
    font-weight:500;
    line-height:1.12;
    letter-spacing:-.04em;
}

.dryer-brands__featured h3 strong{
    display:block;
    color:#79D3C2;
    font-weight:800;
}

.dryer-brands__featured p{
    position:relative;
    z-index:2;
    max-width:440px;
    margin:0 0 26px;
    color:rgba(255,255,255,.64);
    font-size:16px;
    line-height:1.7;
}

.dryer-brands__featured-link{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.12);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.dryer-brands__featured-link span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:18px;
    transition:transform .3s var(--ease);
}

.dryer-brands__featured-link:hover span{
    transform:rotate(45deg);
}

.dryer-brands__featured-mark{
    position:absolute;
    top:30px;
    left:32px;
    display:grid;
    place-items:center;
    width:60px;
    height:60px;
    border-radius:17px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 03 — BRAND GRID
========================================================= */

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

.dryer-brand{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:118px;
    overflow:hidden;
    padding:22px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease);
}

.dryer-brand::after{
    content:"";
    position:absolute;
    top:-38px;
    right:-38px;
    width:90px;
    height:90px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.dryer-brand:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.dryer-brand>span{
    position:absolute;
    top:18px;
    right:18px;
    color:rgba(39,141,124,.38);
    font-size:16px;
    font-weight:900;
    letter-spacing:.08em;
}

.dryer-brand strong{
    position:relative;
    z-index:2;
    color:var(--ink);
    font-size:18px;
    line-height:1.2;
}

.dryer-brand small{
    position:relative;
    z-index:2;
    margin-top:6px;
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 03 — BOTTOM CTA
========================================================= */

.dryer-brands__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:25px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.dryer-brands__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.dryer-brands__bottom span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.dryer-brands__bottom strong{
    color:var(--ink);
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 03 — RESPONSIVE
========================================================= */

@media(max-width:992px){

    .dryer-brands__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .dryer-brands__layout{
        grid-template-columns:1fr;
    }

    .dryer-brands__featured{
        min-height:420px;
    }

    .dryer-brands__grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }

}

@media(max-width:767px){

    .dryer-brands{
        padding:70px 0;
    }

    .dryer-brands__head{
        margin-bottom:30px;
    }

    .dryer-brands__featured{
        min-height:390px;
        padding:27px;
        border-radius:22px;
    }

    .dryer-brands__featured h3{
        font-size:28px;
    }

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

    .dryer-brands__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .dryer-brands__featured{
        min-height:370px;
        padding:23px;
    }

    .dryer-brands__featured h3{
        font-size:25px;
    }

    .dryer-brand{
        min-height:105px;
        padding:18px;
        border-radius:16px;
    }

    .dryer-brand strong{
        font-size:16px;
    }

    .dryer-brands__bottom{
        padding:22px;
    }

    .dryer-brands__bottom .btn{
        width:100%;
    }

}






/* =========================================================
   SECTION 04 — PROFESSIONAL DRYER REPAIR EXPERTS
========================================================= */

.dryer-experts{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.dryer-experts::before{
    content:"";
    position:absolute;
    left:-190px;
    bottom:-210px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.dryer-experts__layout{
    position:relative;
    z-index:2;
    /* display:grid; */
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:clamp(55px,6vw,95px);
}


/* =========================================================
   SECTION 04 — CONTENT
========================================================= */

/* .dryer-experts__content{
    max-width:680px;
} */

.dryer-experts__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-experts__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-experts h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-experts h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-experts__intro{
    /* max-width:630px; */
    margin:0 0 30px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — FEATURES
========================================================= */

.dryer-experts__features{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-bottom:30px;
}

.dryer-experts__feature{
    display:flex;
    gap:16px;
    padding:18px 19px;
    border:1px solid var(--border);
    border-radius:17px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease);
}

.dryer-experts__feature:hover{
    transform:translateX(5px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.dryer-experts__feature>span{
    display:grid;
    place-items:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:12px;
    background:rgba(67,181,160,.13);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.dryer-experts__feature h3{
    margin:1px 0 5px;
    color:var(--ink);
    font-size:16px;
    line-height:1.3;
}

.dryer-experts__feature p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 04 — VISUAL
========================================================= */

.dryer-experts__visual{
    position:relative;
    min-height:610px;
}

.dryer-experts__image{
    position:absolute;
    inset:0 35px 42px 0;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.dryer-experts__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.dryer-experts__visual:hover .dryer-experts__image img{
    transform:scale(1.04);
}

.dryer-experts__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(9,22,18,.28) 100%
        );
}


/* =========================================================
   SECTION 04 — BADGE
========================================================= */

.dryer-experts__badge{
    position:absolute;
    z-index:3;
    top:30px;
    right:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    width:145px;
    height:145px;
    padding:22px;
    border:8px solid #fff;
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 16px 40px rgba(23,37,34,.14);
}

.dryer-experts__badge span{
    margin-bottom:3px;
    color:rgba(23,37,34,.58);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.dryer-experts__badge strong{
    color:var(--ink);
    font-size:18px;
    line-height:1.1;
}
@media(max-width: 767px){
.dryer-experts__badge span{font-size: 12px;line-height: 1;}
.dryer-brands__featured-mark{position: static;}
.dryer-brand small{font-size: 12px;}
}

/* =========================================================
   SECTION 04 — FLOATING CARD
========================================================= */

.dryer-experts__card{
    position:absolute;
    z-index:3;
    right:0;
    bottom:0;
    display:flex;
    align-items:center;
    gap:13px;
    min-width:285px;
    padding:16px 18px;
    border:1px solid var(--border);
    border-radius:17px;
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 45px rgba(23,37,34,.14);
    backdrop-filter:blur(10px);
}

.dryer-experts__card-icon{
    display:grid;
    place-items:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    font-size:16px;
    font-weight:900;
}

.dryer-experts__card>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.dryer-experts__card small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.dryer-experts__card strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 04 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .dryer-experts__layout{
        gap:55px;
    }

    .dryer-experts__visual{
        min-height:560px;
    }

}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-experts__layout{
        grid-template-columns:1fr;
        gap:50px;
    }

    .dryer-experts__content{
        max-width:760px;
    }

    .dryer-experts__visual{
        width:100%;
        max-width:780px;
        min-height:520px;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-experts{
        padding:70px 0;
    }

    .dryer-experts__visual{
        min-height:460px;margin-top: 30px;
    }

    .dryer-experts__image{
        inset:0 25px 38px 0;
        border-radius:23px;
    }

    .dryer-experts__badge{
        top:20px;
        width:120px;
        height:120px;
        padding:17px;
        border-width:6px;
    }

    .dryer-experts__badge strong{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-experts__feature{
        padding:15px;
    }

    .dryer-experts__content>.btn{
        width:100%;
    }

    .dryer-experts__visual{
        min-height:410px;
    }

    .dryer-experts__image{
        inset:0 0 82px 0;
        border-radius:19px;
    }

    .dryer-experts__badge{
        top:14px;
        right:14px;
        width:105px;
        height:105px;
        padding:15px;
        border-width:5px;
    }

    .dryer-experts__badge strong{
        font-size:16px;
    }

    .dryer-experts__card{
        right:10px;
        bottom:0;
        left:10px;
        min-width:0;
        padding:14px 15px;
    }

}






/* =========================================================
   SECTION 05 — WHY CHOOSE US
========================================================= */

.dryer-why{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.dryer-why::before{
    content:"";
    position:absolute;
    top:-190px;
    right:-180px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.dryer-why::after{
    content:"";
    position:absolute;
    bottom:-220px;
    left:-200px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(255,212,0,.05);
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.dryer-why__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:44px;
}

.dryer-why__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-why__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-why__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-why__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-why__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — FEATURE GRID
========================================================= */

.dryer-why__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.dryer-why__card{
    position:relative;
    min-height:305px;
    overflow:hidden;
    padding:27px;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease);
}

.dryer-why__card::after{
    content:"";
    position:absolute;
    right:-65px;
    bottom:-65px;
    width:155px;
    height:155px;
    border-radius:50%;
    background:rgba(67,181,160,.065);
    transition:transform .4s var(--ease);
}

.dryer-why__card:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.38);
    box-shadow:var(--shadow-sm);
}

.dryer-why__card:hover::after{
    transform:scale(1.35);
}


/* =========================================================
   SECTION 05 — ICON
========================================================= */

.dryer-why__icon{
    position:relative;
    z-index:2;
    display:grid;
    place-items:center;
    width:54px;
    height:54px;
    margin-bottom:57px;
    border-radius:16px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
}

.dryer-why__icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dryer-why__number{
    position:absolute;
    z-index:2;
    top:27px;
    right:27px;
    color:rgba(39,141,124,.32);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.dryer-why__card h3{
    position:relative;
    z-index:2;
    margin:0 0 10px;
    color:var(--ink);
    font-size:19px;
    line-height:1.3;
    letter-spacing:-.025em;
}

.dryer-why__card p{
    position:relative;
    z-index:2;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 05 — ACCENT CARD
========================================================= */

.dryer-why__card--accent{
    border-color:var(--primary);
    background:var(--primary);
}

.dryer-why__card--accent::after{
    background:rgba(255,255,255,.1);
}

.dryer-why__card--accent .dryer-why__icon{
    background:var(--secondary);
    color:var(--ink);
}

.dryer-why__card--accent .dryer-why__number{
    color:rgba(255,255,255,.5);
}

.dryer-why__card--accent h3{
    color:#fff;
}

.dryer-why__card--accent p{
    color:rgba(255,255,255,.76);
}


/* =========================================================
   SECTION 05 — BOTTOM CTA
========================================================= */

.dryer-why__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:25px;
    padding:27px 30px;
    border-radius:20px;
    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(67,181,160,.22),
            transparent 32%
        ),
        var(--bg-dark);
}

.dryer-why__bottom-content{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.dryer-why__bottom-content span{
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.dryer-why__bottom-content strong{
    color:#fff;
    font-size:18px;
    line-height:1.4;
}


/* =========================================================
   SECTION 05 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

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

    .dryer-why__card{
        min-height:270px;
    }

    .dryer-why__icon{
        margin-bottom:45px;
    }

}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-why__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-why{
        padding:70px 0;
    }

    .dryer-why__head{
        margin-bottom:30px;
    }

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

    .dryer-why__card{
        min-height:0;
        padding:24px;
        border-radius:19px;
    }

    .dryer-why__icon{
        margin-bottom:35px;
    }

    .dryer-why__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-why__card{
        padding:21px;
        border-radius:17px;
    }

    .dryer-why__icon{
        width:48px;
        height:48px;
        margin-bottom:29px;
        border-radius:14px;
    }

    .dryer-why__number{
        top:22px;
        right:22px;
    }

    .dryer-why__card h3{
        font-size:17px;
    }

    .dryer-why__bottom{
        padding:22px;
    }

    .dryer-why__bottom .btn{
        width:100%;
    }

}







/* =========================================================
   SECTION 06 — FREQUENTLY ASKED QUESTIONS
========================================================= */

.dryer-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.dryer-faq::before{
    content:"";
    position:absolute;
    top:-190px;
    right:-180px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.dryer-faq__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.7fr 1.3fr;
    align-items:start;
    gap:clamp(55px,7vw,110px);
}


/* =========================================================
   SECTION 06 — FAQ INTRO
========================================================= */

.dryer-faq__intro{
    position:sticky;
    top:120px;
}

.dryer-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-faq__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-faq__intro h2{
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-faq__intro h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.dryer-faq__intro>p{
    max-width:480px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — FAQ INFO CARD
========================================================= */

.dryer-faq__info{
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    margin-top:31px;
    padding:25px;
    border-radius:20px;
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.25),
            transparent 38%
        ),
        var(--bg-dark);
}

.dryer-faq__info::after{
    content:"?";
    position:absolute;
    right:20px;
    top:-21px;
    color:rgba(255,255,255,.045);
    font-size:150px;
    font-weight:900;
    line-height:1;
}

.dryer-faq__info>span{
    position:relative;
    z-index:2;
    margin-bottom:6px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.dryer-faq__info>strong{
    position:relative;
    z-index:2;
    max-width:330px;
    margin-bottom:21px;
    color:#fff;
    font-size:17px;
    line-height:1.4;
}

.dryer-faq__info .btn{
    position:relative;
    z-index:2;
}


/* =========================================================
   SECTION 06 — FAQ LIST
========================================================= */

.dryer-faq__list{
    display:flex;
    flex-direction:column;
    gap:11px;
}

.dryer-faq__item{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:19px;
    background:var(--bg-soft);
    transition:
        border-color .25s ease,
        background .25s ease,
        box-shadow .25s var(--ease);
}

.dryer-faq__item[open]{
    border-color:rgba(67,181,160,.4);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.dryer-faq__item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding:23px 24px;
    cursor:pointer;
    list-style:none;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    line-height:1.4;
}

.dryer-faq__item summary::-webkit-details-marker{
    display:none;
}


/* =========================================================
   SECTION 06 — FAQ PLUS ICON
========================================================= */

.dryer-faq__plus{
    position:relative;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(67,181,160,.11);
    transition:
        background .25s ease,
        transform .25s ease;
}

.dryer-faq__plus::before,
.dryer-faq__plus::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:13px;
    height:2px;
    border-radius:3px;
    background:var(--primary-dark);
    transform:translate(-50%,-50%);
    transition:transform .25s ease;
}

.dryer-faq__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.dryer-faq__item[open] .dryer-faq__plus{
    background:var(--secondary);
}

.dryer-faq__item[open] .dryer-faq__plus::after{
    transform:translate(-50%,-50%) rotate(0deg);
}


/* =========================================================
   SECTION 06 — FAQ ANSWER
========================================================= */

.dryer-faq__answer{
    padding:0 75px 24px 24px;
}

.dryer-faq__answer p{
    max-width:720px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — RESPONSIVE — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-faq__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .dryer-faq__intro{
        position:static;
        max-width:760px;
    }

    .dryer-faq__info{
        max-width:520px;
    }

}


/* =========================================================
   SECTION 06 — RESPONSIVE — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-faq{
        padding:70px 0;
    }

    .dryer-faq__item summary{
        padding:20px;
        font-size:16px;
    }

    .dryer-faq__answer{
        padding:0 62px 21px 20px;
    }

}


/* =========================================================
   SECTION 06 — RESPONSIVE — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-faq__eyebrow{
        font-size:16px;
    }

    .dryer-faq__eyebrow::before{
        flex-basis:24px;
        width:24px;
    }

    .dryer-faq__info{
        padding:21px;
        border-radius:17px;
    }

    .dryer-faq__info .btn{
        width:100%;
    }

    .dryer-faq__item{
        border-radius:16px;
    }

    .dryer-faq__item summary{
        gap:15px;
        padding:18px;
        font-size:16px;
    }

    .dryer-faq__plus{
        flex-basis:34px;
        width:34px;
        height:34px;
    }

    .dryer-faq__answer{
        padding:0 18px 19px;
    }

    .dryer-faq__answer p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 07 — BOOK YOUR DRYER REPAIR
========================================================= */

.dryer-appointment{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:
        radial-gradient(
            circle at 5% 0%,
            rgba(67,181,160,.22),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #12201d 0%,
            #0f1b18 100%
        );
}

.dryer-appointment::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-160px;
    width:440px;
    height:440px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}

.dryer-appointment::after{
    content:"";
    position:absolute;
    right:80px;
    bottom:-230px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.dryer-appointment__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:start;
    gap:clamp(50px,6vw,90px);
}


/* =========================================================
   SECTION 07 — CONTENT
========================================================= */

.dryer-appointment__content{
    max-width:620px;
}

.dryer-appointment__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:#7BD1C1;
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.dryer-appointment__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.dryer-appointment h2{
    margin:0 0 22px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.dryer-appointment h2 strong{
    display:block;
    color:#7BD1C1;
    font-weight:800;
}

.dryer-appointment__text{
    max-width:580px;
    margin:0 0 30px;
    color:rgba(255,255,255,.64);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 07 — BENEFITS
========================================================= */

.dryer-appointment__benefits{
    display:flex;
    flex-direction:column;
    gap:11px;
}

.dryer-appointment__benefit{
    display:flex;
    align-items:center;
    gap:15px;
    padding:15px 17px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:16px;
    background:rgba(255,255,255,.04);
}

.dryer-appointment__benefit>span{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.dryer-appointment__benefit>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.dryer-appointment__benefit strong{
    color:#fff;
    font-size:16px;
}

.dryer-appointment__benefit small{
    color:rgba(255,255,255,.52);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 07 — PHOTO
========================================================= */

.dryer-appointment__photo{
    position:relative;
    height:270px;
    margin-top:28px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:23px;
    background:#1a2d28;
    box-shadow:0 20px 50px rgba(0,0,0,.18);
}

.dryer-appointment__photo img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.dryer-appointment__photo:hover img{
    transform:scale(1.04);
}

.dryer-appointment__photo-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(9,22,18,.02) 30%,
            rgba(9,22,18,.18) 55%,
            rgba(9,22,18,.88) 100%
        );
}

.dryer-appointment__photo-content{
    position:absolute;
    z-index:2;
    right:22px;
    bottom:21px;
    left:22px;
    display:flex;
    flex-direction:column;
    gap:5px;
}

.dryer-appointment__photo-content span{
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.dryer-appointment__photo-content strong{
    max-width:430px;
    color:#fff;
    font-size:17px;
    line-height:1.3;
}


/* =========================================================
   SECTION 07 — FORM
========================================================= */

.dryer-appointment__form{
    position:relative;
    overflow:hidden;
    padding:13px;
    border-radius:30px;
    background:#fff;
    box-shadow:0 30px 80px rgba(0,0,0,.24);
}

.dryer-appointment__form::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:4px;
    background:linear-gradient(
        90deg,
        var(--primary),
        var(--secondary)
    );
}

.dryer-appointment__form-head{
    padding:27px 25px 19px;
}

.dryer-appointment__form-head>span{
    display:block;
    margin-bottom:7px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.dryer-appointment__form-head h3{
    margin:0 0 7px;
    color:var(--ink);
    font-size:26px;
    line-height:1.2;
    letter-spacing:-.03em;
}

.dryer-appointment__form-head p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}

.dryer-appointment__iframe{
    overflow:hidden;
    border-radius:20px;
    background:var(--bg-soft);
}

.dryer-appointment__iframe iframe{
    display:block;
    width:100%;
    min-height:450px;
    border:0;
}


/* =========================================================
   SECTION 07 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .dryer-appointment__wrap{
        grid-template-columns:.88fr 1.12fr;
        gap:50px;
    }

}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .dryer-appointment__wrap{
        grid-template-columns:1fr;
        gap:45px;
    }

    .dryer-appointment__content{
        max-width:780px;
    }

    .dryer-appointment__photo{
        width:100%;
        max-width:780px;
        height:340px;
    }

    .dryer-appointment__form{
        width:100%;
        max-width:850px;
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .dryer-appointment{
        padding:70px 0;
    }

    .dryer-appointment__photo{
        height:285px;
        border-radius:20px;
    }

    .dryer-appointment__form{
        padding:9px;
        border-radius:23px;
    }

    .dryer-appointment__form-head{
        padding:21px 18px 16px;
    }

    .dryer-appointment__form-head h3{
        font-size:22px;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .dryer-appointment__eyebrow{
        font-size:16px;
    }

    .dryer-appointment__eyebrow::before{
        flex-basis:24px;
        width:24px;
    }

    .dryer-appointment__benefit{
        align-items:flex-start;
        padding:14px;
    }

    .dryer-appointment__benefit>span{
        flex-basis:34px;
        width:34px;
        height:34px;
    }

    .dryer-appointment__photo{
        height:230px;
        margin-top:24px;
        border-radius:17px;
    }

    .dryer-appointment__photo-content{
        right:17px;
        bottom:17px;
        left:17px;
    }

    .dryer-appointment__photo-content strong{
        font-size:16px;
    }

    .dryer-appointment__form{
        border-radius:19px;
    }

    .dryer-appointment__iframe{
        border-radius:14px;
    }

    .dryer-appointment__iframe iframe{
        min-height:520px;
    }

}






















































/* =========================================================
   SECTION 01 — SERVICES HERO
========================================================= */

.services-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(70px,8vw,115px) 0;
    background:
        radial-gradient(circle at 0% 0%,rgba(67,181,160,.15),transparent 30%),
        linear-gradient(180deg,#f5fbf9 0%,#fff 100%);
}

.services-hero::after{
    content:"";
    position:absolute;
    right:-190px;
    bottom:-230px;
    width:500px;
    height:500px;
    border:1px solid rgba(67,181,160,.13);
    border-radius:50%;
}

.services-hero__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    align-items:center;
    gap:clamp(55px,6vw,100px);
}


/* =========================================================
   SECTION 01 — SERVICES HERO CONTENT
========================================================= */

.services-hero__content{
    max-width:660px;
}

.services-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.services-hero__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-hero h1{
    margin:0 0 24px;
    color:var(--ink);
    font-size:var(--fs-h1);
    font-weight:500;
    line-height:1.02;
    letter-spacing:-.05em;
}

.services-hero h1 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-hero__content>p{
    max-width:620px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}

.services-hero__actions{
    display:flex;
    align-items:center;
    gap:26px;
    margin-top:32px;
}

.services-hero__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.services-hero__link span{
    color:var(--primary-dark);
    font-size:18px;
    transition:transform .25s ease;
}

.services-hero__link:hover span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 01 — TRUST ITEMS
========================================================= */

.services-hero__trust{
    display:flex;
    flex-wrap:wrap;
    gap:13px 23px;
    margin-top:36px;
    padding-top:26px;
    border-top:1px solid var(--border);
}

.services-hero__trust>div{
    display:flex;
    align-items:center;
    gap:8px;
}

.services-hero__trust span{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    border-radius:50%;
    background:rgba(67,181,160,.14);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.services-hero__trust p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}


/* =========================================================
   SECTION 01 — SERVICES HERO IMAGE
========================================================= */

.services-hero__visual{
    position:relative;
    min-height:590px;
}

.services-hero__image{
    position:absolute;
    inset:0 0 35px 45px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.services-hero__image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(10,23,19,.01) 45%,
            rgba(10,23,19,.22) 100%
        );
}

.services-hero__image img{
    width:100%;
    height:100%;
    object-fit:cover;
}


/* =========================================================
   SECTION 01 — FLOATING BADGE
========================================================= */

.services-hero__badge{
    position:absolute;
    z-index:3;
    top:30px;
    left:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    width:145px;
    height:145px;
    padding:23px;
    border:8px solid #f7fbfa;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    box-shadow:0 16px 38px rgba(23,37,34,.14);
}

.services-hero__badge span{
    margin-bottom:3px;
    color:rgba(23,37,34,.62);
    font-size:16px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.services-hero__badge strong{
    font-size:21px;
    line-height:1.05;
    letter-spacing:-.03em;
}


/* =========================================================
   SECTION 01 — FLOATING CARD
========================================================= */

.services-hero__card{
    position:absolute;
    z-index:3;
    right:25px;
    bottom:0;
    display:flex;
    align-items:center;
    gap:14px;
    min-width:290px;
    padding:17px 19px;
    border:1px solid rgba(255,255,255,.8);
    border-radius:18px;
    background:rgba(255,255,255,.95);
    box-shadow:0 18px 40px rgba(23,37,34,.14);
    backdrop-filter:blur(12px);
}

.services-hero__card-icon{
    display:grid;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:12px;
    background:var(--primary);
    color:#fff;
    font-size:16px;
    font-weight:900;
}

.services-hero__card>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.services-hero__card small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.services-hero__card strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 01 — SERVICES HERO — RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .services-hero__wrap{
        grid-template-columns:.9fr 1.1fr;
        gap:55px;
    }

    .services-hero__visual{
        min-height:530px;
    }

}

@media(max-width:992px){

    .services-hero__wrap{
        grid-template-columns:1fr;
        gap:50px;
    }

    .services-hero__content{
        max-width:760px;
    }

    .services-hero__visual{
        width:100%;
        max-width:780px;
        min-height:520px;
    }

}

@media(max-width:767px){

    .services-hero{
        padding:70px 0;
    }

    .services-hero__actions{
        flex-wrap:wrap;
    }

    .services-hero__visual{
        min-height:450px;
    }

    .services-hero__image{
        inset:0 0 35px 25px;
        border-radius:24px;
    }

    .services-hero__badge{
        top:22px;
        width:120px;
        height:120px;
        padding:19px;
        border-width:6px;
    }

    .services-hero__badge strong{
        font-size:18px;
    }

}

@media(max-width:575px){

    .services-hero{
        padding:55px 0 65px;
    }

    .services-hero__actions{
        flex-direction:column;
        align-items:flex-start;
        gap:18px;
    }

    .services-hero__actions .btn{
        width:100%;
    }

    .services-hero__trust{
        flex-direction:column;
        align-items:flex-start;
    }

    .services-hero__visual{
        min-height:400px;
    }

    .services-hero__image{
        inset:0 0 85px 0;
    }

    .services-hero__badge{
        top:15px;
        left:14px;
        width:105px;
        height:105px;
        padding:16px;
        border-width:5px;
    }

    .services-hero__badge strong{
        font-size:16px;
    }

    .services-hero__card{
        right:12px;
        bottom:0;
        left:12px;
        min-width:0;
    }

}

@media(max-width:380px){

    .services-hero__visual{
        min-height:370px;
    }

    .services-hero__card{
        padding:15px;
    }

}




/* =========================================================
   SECTION 02 — APPLIANCE REPAIR SERVICES
========================================================= */

.services-list{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.services-list::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-180px;
    width:440px;
    height:440px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.services-list__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.services-list__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-list__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-list__head h2{
    max-width:780px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-list__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-list__head>p{
    max-width:450px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.services-list__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:16px;
}


/* =========================================================
   SECTION 02 — IMAGE
========================================================= */

.services-list__visual{
    position:relative;
    overflow:hidden;
    min-height:760px;
    border-radius:28px;
    background:var(--bg-dark);
}

.services-list__visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.services-list__visual:hover img{
    transform:scale(1.035);
}

.services-list__visual-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(10,24,20,.02) 35%,
            rgba(10,24,20,.82) 100%
        );
}

.services-list__visual-content{
    position:absolute;
    z-index:2;
    right:32px;
    bottom:34px;
    left:32px;
}

.services-list__visual-content span{
    display:block;
    margin-bottom:9px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.services-list__visual-content strong{
    display:block;
    max-width:430px;
    color:#fff;
    font-size:27px;
    line-height:1.2;
    letter-spacing:-.03em;
}


/* =========================================================
   SECTION 02 — SERVICE CARDS
========================================================= */

.services-list__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.service-box{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:180px;
    overflow:hidden;
    padding:24px;
    border:1px solid var(--border);
    border-radius:21px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease,
        background .3s ease;
}

.service-box::after{
    content:"";
    position:absolute;
    top:-45px;
    right:-45px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:rgba(67,181,160,.075);
    transition:transform .35s var(--ease);
}

.service-box:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.42);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.service-box:hover::after{
    transform:scale(1.35);
}

.service-box__number{
    position:relative;
    z-index:2;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.service-box>div{
    position:relative;
    z-index:2;
    margin-top:22px;
    padding-right:42px;
}

.service-box__category{
    display:block;
    margin-bottom:6px;
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.service-box h3{
    margin:0 0 9px;
    color:var(--ink);
    font-size:18px;
    line-height:1.25;
    letter-spacing:-.02em;
}

.service-box p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}

.service-box__arrow{
    position:absolute;
    right:19px;
    bottom:19px;
    z-index:3;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.service-box:hover .service-box__arrow{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 02 — RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .services-list__layout{
        grid-template-columns:.9fr 1.1fr;
    }

    .services-list__visual{
        min-height:720px;
    }

}

@media(max-width:992px){

    .services-list__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .services-list__layout{
        grid-template-columns:1fr;
    }

    .services-list__visual{
        min-height:500px;
    }

}

@media(max-width:767px){

    .services-list{
        padding:70px 0;
    }

    .services-list__head{
        margin-bottom:30px;
    }

    .services-list__visual{
        min-height:420px;
        border-radius:22px;
    }

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

    .service-box{
        min-height:165px;
    }

}

@media(max-width:575px){

    .services-list__visual{
        min-height:350px;
    }

    .services-list__visual-content{
        right:20px;
        bottom:22px;
        left:20px;
    }

    .services-list__visual-content strong{
        font-size:22px;
    }

    .service-box{
        min-height:160px;
        padding:21px;
    }

    .service-box>div{
        padding-right:35px;
    }

}






/* =========================================================
   SECTION 03 — WHY CHOOSE OUR APPLIANCE REPAIR SERVICE
========================================================= */

.services-why{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.services-why::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-190px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.09);
}

.services-why__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.05fr .95fr;
    align-items:center;
    gap:clamp(55px,6vw,100px);
}


/* =========================================================
   SECTION 03 — CONTENT
========================================================= */

.services-why__content{
    max-width:720px;
}

.services-why__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-why__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-why h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-why h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-why__intro{
    max-width:650px;
    margin:0 0 32px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 03 — FEATURES
========================================================= */

.services-why__features{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
    margin-bottom:30px;
}

.services-why__feature{
    display:flex;
    gap:15px;
    min-height:145px;
    padding:21px;
    border:1px solid var(--border);
    border-radius:19px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.services-why__feature:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.services-why__number{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:11px;
    background:rgba(67,181,160,.13);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.services-why__feature h3{
    margin:2px 0 7px;
    color:var(--ink);
    font-size:16px;
    line-height:1.3;
}

.services-why__feature p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 03 — IMAGE
========================================================= */

.services-why__visual{
    position:relative;
    min-height:610px;
}

.services-why__image{
    position:absolute;
    inset:0 35px 40px 0;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.services-why__image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 55%,
        rgba(10,24,20,.23) 100%
    );
}

.services-why__image img{
    width:100%;
    height:100%;
    object-fit:cover;
}


/* =========================================================
   SECTION 03 — IMAGE ELEMENTS
========================================================= */

.services-why__badge{
    position:absolute;
    z-index:3;
    top:28px;
    right:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    width:145px;
    height:145px;
    padding:23px;
    border:8px solid var(--bg-soft);
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    box-shadow:0 15px 38px rgba(23,37,34,.14);
}

.services-why__badge span{
    margin-bottom:3px;
    color:rgba(23,37,34,.62);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.services-why__badge strong{
    font-size:19px;
    line-height:1.08;
}

.services-why__note{
    position:absolute;
    z-index:3;
    right:0;
    bottom:0;
    display:flex;
    align-items:center;
    gap:13px;
    min-width:280px;
    padding:17px 20px;
    border:1px solid rgba(255,255,255,.8);
    border-radius:17px;
    background:rgba(255,255,255,.95);
    box-shadow:0 18px 40px rgba(23,37,34,.13);
    backdrop-filter:blur(10px);
}

.services-why__note>span{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--primary);
    color:#fff;
    font-size:16px;
    font-weight:900;
}

.services-why__note div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.services-why__note small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.services-why__note strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 03 — RESPONSIVE
========================================================= */

@media(max-width:1100px){

    .services-why__layout{
        grid-template-columns:1fr 1fr;
        gap:55px;
    }

    .services-why__visual{
        min-height:560px;
    }

}

@media(max-width:992px){

    .services-why__layout{
        grid-template-columns:1fr;
        gap:50px;
    }

    .services-why__content{
        max-width:780px;
    }

    .services-why__visual{
        width:100%;
        max-width:760px;
        min-height:520px;
    }

}

@media(max-width:767px){

    .services-why{
        padding:70px 0;
    }

    .services-why__features{
        grid-template-columns:1fr;
    }

    .services-why__feature{
        min-height:0;
    }

    .services-why__visual{
        min-height:460px;
    }

    .services-why__image{
        inset:0 25px 35px 0;
        border-radius:23px;
    }

    .services-why__badge{
        top:20px;
        width:120px;
        height:120px;
        padding:18px;
        border-width:6px;
    }

    .services-why__badge strong{
        font-size:16px;
    }

}

@media(max-width:575px){

    .services-why__visual{
        min-height:410px;
    }

    .services-why__image{
        inset:0 0 85px 0;
    }

    .services-why__badge{
        top:14px;
        right:14px;
        width:105px;
        height:105px;
        padding:15px;
        border-width:5px;
    }

    .services-why__badge strong{
        font-size:16px;
    }

    .services-why__note{
        right:12px;
        bottom:0;
        left:12px;
        min-width:0;
        padding:15px 17px;
    }

    .services-why__content>.btn{
        width:100%;
    }

}






/* =========================================================
   SECTION 04 — HOW OUR SERVICE WORKS
========================================================= */

.services-process{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.services-process::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-180px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.services-process__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.services-process__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-process__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-process__head h2{
    max-width:760px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-process__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-process__head>p{
    max-width:460px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — STEPS
========================================================= */

.services-process__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.services-process__step{
    position:relative;
    min-height:275px;
    padding:27px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.services-process__step::after{
    content:"";
    position:absolute;
    right:-55px;
    bottom:-55px;
    width:140px;
    height:140px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.services-process__step:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.services-process__number{
    position:absolute;
    top:24px;
    right:24px;
    color:rgba(39,141,124,.28);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.services-process__icon{
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    margin-bottom:45px;
    border-radius:15px;
    background:#fff;
    color:var(--primary-dark);
    box-shadow:0 8px 25px rgba(23,37,34,.06);
}

.services-process__icon svg{
    width:24px;
    height:24px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.services-process__step h3{
    position:relative;
    z-index:2;
    margin:0 0 10px;
    color:var(--ink);
    font-size:19px;
    line-height:1.25;
    letter-spacing:-.025em;
}

.services-process__step p{
    position:relative;
    z-index:2;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}

.services-process__step--accent{
    border-color:var(--primary);
    background:var(--primary);
}

.services-process__step--accent::after{
    background:rgba(255,255,255,.1);
}

.services-process__step--accent .services-process__number{
    color:rgba(255,255,255,.45);
}

.services-process__step--accent .services-process__icon{
    background:var(--secondary);
    color:var(--ink);
}

.services-process__step--accent h3{
    color:#fff;
}

.services-process__step--accent p{
    color:rgba(255,255,255,.75);
}


/* =========================================================
   SECTION 04 — BOTTOM CTA
========================================================= */

.services-process__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:26px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-dark);
}

.services-process__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.services-process__bottom span{
    color:#7BD1C1;
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.services-process__bottom strong{
    color:#fff;
    font-size:18px;
}


/* =========================================================
   SECTION 04 — RESPONSIVE
========================================================= */

@media(max-width:1100px){

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

}

@media(max-width:992px){

    .services-process__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}

@media(max-width:767px){

    .services-process{
        padding:70px 0;
    }

    .services-process__head{
        margin-bottom:30px;
    }

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

    .services-process__step{
        min-height:0;
    }

    .services-process__icon{
        margin-bottom:30px;
    }

    .services-process__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .services-process__step{
        padding:23px;
        border-radius:18px;
    }

    .services-process__bottom{
        margin-top:18px;
        padding:22px;
    }

    .services-process__bottom .btn{
        width:100%;
    }

}





/* =========================================================
   SECTION 05 — BRANDS WE SERVICE
========================================================= */

.services-brands{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.services-brands::before{
    content:"";
    position:absolute;
    top:-200px;
    left:-180px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.services-brands__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.services-brands__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-brands__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-brands__head h2{
    max-width:760px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-brands__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-brands__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.services-brands__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:16px;
}


/* =========================================================
   SECTION 05 — FEATURED
========================================================= */

.services-brands__featured{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-height:560px;
    overflow:hidden;
    padding:36px;
    border-radius:28px;
    background:
        radial-gradient(circle at 80% 10%,rgba(67,181,160,.3),transparent 32%),
        linear-gradient(145deg,#12201d,#18312b);
    color:#fff;
}

.services-brands__featured::before{
    content:"WF";
    position:absolute;
    top:30px;
    left:34px;
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    border-radius:17px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.services-brands__featured-label{
    position:relative;
    z-index:2;
    margin-bottom:11px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.services-brands__featured h3{
    position:relative;
    z-index:2;
    max-width:470px;
    margin:0 0 18px;
    color:#fff;
    font-size:34px;
    font-weight:500;
    line-height:1.12;
    letter-spacing:-.04em;
}

.services-brands__featured h3 strong{
    display:block;
    color:#78D2C1;
    font-weight:800;
}

.services-brands__featured p{
    position:relative;
    z-index:2;
    max-width:440px;
    margin:0 0 27px;
    color:rgba(255,255,255,.64);
    font-size:16px;
    line-height:1.7;
}

.services-brands__featured-link{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.13);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.services-brands__featured-link span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:18px;
    transition:transform .3s var(--ease);
}

.services-brands__featured-link:hover span{
    transform:rotate(45deg);
}

.services-brands__featured-circle{
    position:absolute;
    top:-110px;
    right:-110px;
    width:300px;
    height:300px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:50%;
}

.services-brands__featured-circle::after{
    content:"";
    position:absolute;
    inset:50px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
}


/* =========================================================
   SECTION 05 — BRAND GRID
========================================================= */

.services-brands__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}

.services-brand{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:128px;
    padding:17px 12px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
    text-align:center;
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease);
}

.services-brand::after{
    content:"";
    position:absolute;
    top:-37px;
    right:-37px;
    width:86px;
    height:86px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
    transition:transform .3s var(--ease);
}

.services-brand:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.42);
    box-shadow:var(--shadow-sm);
}

.services-brand:hover::after{
    transform:scale(1.4);
}

.services-brand strong{
    position:relative;
    z-index:2;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    line-height:1.25;
    transition:color .25s ease;
}

.services-brand span{
    position:relative;
    z-index:2;
    margin-top:6px;
    color:var(--muted);
    font-size:12px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.services-brand:hover strong{
    color:var(--primary-dark);
}


/* =========================================================
   SECTION 05 — BOTTOM CTA
========================================================= */

.services-brands__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:26px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.services-brands__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.services-brands__bottom span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.services-brands__bottom strong{
    color:var(--ink);
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 05 — RESPONSIVE
========================================================= */

@media(max-width:1200px){

    .services-brands__layout{
        grid-template-columns:.8fr 1.2fr;
    }

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

}

@media(max-width:992px){

    .services-brands__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .services-brands__layout{
        grid-template-columns:1fr;
    }

    .services-brands__featured{
        min-height:430px;
    }

    .services-brands__grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }

}

@media(max-width:767px){

    .services-brands{
        padding:70px 0;
    }

    .services-brands__head{
        margin-bottom:30px;
    }

    .services-brands__featured{
        min-height:400px;
        padding:28px;
        border-radius:22px;
    }

    .services-brands__featured h3{
        font-size:29px;
    }

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

    .services-brand{
        min-height:115px;
    }

    .services-brands__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .services-brands__featured{
        min-height:390px;
        padding:24px;
    }

    .services-brands__featured h3{
        font-size:26px;
    }

    .services-brands__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .services-brand{
        min-height:105px;
        border-radius:16px;
    }

    .services-brand strong{
        font-size:16px;
    }

    .services-brands__bottom{
        padding:22px;
    }

    .services-brands__bottom .btn{
        width:100%;
    }

}




/* =========================================================
   SECTION 06 — SERVICE AREAS
========================================================= */

.services-areas{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.services-areas::before{
    content:"";
    position:absolute;
    right:-170px;
    top:-170px;
    width:430px;
    height:430px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.services-areas__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:44px;
}

.services-areas__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-areas__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-areas__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-areas__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-areas__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — AREA GRID
========================================================= */

.services-areas__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.services-area{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:220px;
    overflow:hidden;
    padding:24px;
    border:1px solid var(--border);
    border-radius:22px;
    background:var(--bg-soft);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.services-area::before{
    content:"";
    position:absolute;
    top:-55px;
    right:-55px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
    transition:transform .35s var(--ease);
}

.services-area:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}

.services-area:hover::before{
    transform:scale(1.35);
}


/* =========================================================
   SECTION 06 — FEATURED AREA WITH PHOTO
========================================================= */

.services-area--featured{
    grid-column:span 2;
    min-height:320px;
    padding:30px;
    border:0;
    background:var(--bg-dark);
}

.services-area--featured::before{
    display:none;
}

.services-area--featured img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.services-area--featured:hover img{
    transform:scale(1.04);
}

.services-area__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(9,22,18,.08) 12%,
            rgba(9,22,18,.28) 50%,
            rgba(9,22,18,.9) 100%
        );
}

.services-area__number{
    position:relative;
    z-index:2;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.services-area--featured .services-area__number{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:50%;
    background:rgba(15,30,26,.45);
    backdrop-filter:blur(8px);
    color:#fff;
}

.services-area__content{
    position:relative;
    z-index:2;
}

.services-area__content>span{
    display:block;
    margin-bottom:7px;
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.services-area--featured .services-area__content>span{
    color:var(--secondary);
}

.services-area h3{
    margin:0;
    color:var(--ink);
    font-size:21px;
    line-height:1.2;
    letter-spacing:-.025em;
}

.services-area--featured h3{
    color:#fff;
    font-size:32px;
}

.services-area p{
    max-width:470px;
    margin:10px 0 0;
    color:rgba(255,255,255,.7);
    font-size:16px;
    line-height:1.65;
}

.services-area__arrow{
    position:absolute;
    right:20px;
    bottom:20px;
    z-index:3;
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    transition:transform .3s var(--ease);
}

.services-area:hover .services-area__arrow{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 06 — BOTTOM CTA
========================================================= */

.services-areas__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:26px;
    padding:26px 30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
}

.services-areas__bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.services-areas__bottom span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.services-areas__bottom strong{
    color:var(--ink);
    font-size:17px;
    line-height:1.4;
}


/* =========================================================
   SECTION 06 — RESPONSIVE
========================================================= */

@media(max-width:1200px){

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

    .services-area--featured{
        grid-column:span 2;
    }

}

@media(max-width:992px){

    .services-areas__head{
        grid-template-columns:1fr;
        gap:20px;
    }

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

    .services-area--featured{
        grid-column:1/-1;
    }

}

@media(max-width:767px){

    .services-areas{
        padding:70px 0;
    }

    .services-areas__head{
        margin-bottom:30px;
    }

    .services-area{
        min-height:190px;
        border-radius:18px;
    }

    .services-area--featured{
        min-height:280px;
        padding:24px;
    }

    .services-area--featured h3{
        font-size:28px;
    }

    .services-areas__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .services-areas__grid{
        grid-template-columns:1fr;
    }

    .services-area,
    .services-area--featured{
        grid-column:auto;
        min-height:180px;
    }

    .services-area--featured{
        min-height:250px;
    }

    .services-area{
        padding:22px;
    }

    .services-area--featured h3{
        font-size:26px;
    }

    .services-area--featured p{
        max-width:250px;
        font-size:16px;
    }

    .services-areas__bottom{
        padding:22px;
    }

    .services-areas__bottom .btn{
        width:100%;
    }

}



/* =========================================================
   SECTION 07 — CUSTOMER REVIEWS
========================================================= */

.services-reviews{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.services-reviews::before{
    content:"";
    position:absolute;
    top:-190px;
    left:-180px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.services-reviews__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:80px;
    margin-bottom:44px;
}

.services-reviews__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-reviews__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-reviews__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-reviews__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-reviews__head>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 07 — REVIEW CARDS
========================================================= */

.services-reviews__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:14px;
}

.services-review{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:330px;
    padding:28px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.services-review:hover{
    transform:translateY(-5px);
    border-color:rgba(67,181,160,.38);
    box-shadow:var(--shadow-sm);
}

.services-review--featured{
    background:
        radial-gradient(circle at 90% 10%,rgba(67,181,160,.24),transparent 32%),
        var(--bg-dark);
    border-color:var(--bg-dark);
}

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

.services-review__quote{
    color:var(--primary);
    font-size:48px;
    font-weight:800;
    line-height:1;
}

.services-review--featured .services-review__quote{
    color:var(--secondary);
}

.services-review__stars{
    color:var(--secondary-dark);
    font-size:16px;
    letter-spacing:2px;
}

.services-review p{
    margin:35px 0;
    color:var(--ink);
    font-size:17px;
    line-height:1.7;
    letter-spacing:-.015em;
}

.services-review--featured p{
    color:#fff;
    font-size:19px;
}

.services-review__author{
    display:flex;
    align-items:center;
    gap:13px;
}

.services-review__avatar{
    display:grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    border-radius:50%;
    background:rgba(67,181,160,.12);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.services-review--featured .services-review__avatar{
    background:var(--secondary);
    color:var(--ink);
}

.services-review__author>div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.services-review__author strong{
    color:var(--ink);
    font-size:16px;
}

.services-review__author span{
    color:var(--muted);
    font-size:16px;
}

.services-review--featured .services-review__author strong{
    color:#fff;
}

.services-review--featured .services-review__author span{
    color:rgba(255,255,255,.58);
}


/* =========================================================
   SECTION 07 — BOTTOM
========================================================= */

.services-reviews__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:24px;
    padding:24px 28px;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.services-reviews__rating{
    display:flex;
    align-items:center;
    gap:16px;
}

.services-reviews__rating>strong{
    color:var(--ink);
    font-size:32px;
    line-height:1;
}

.services-reviews__rating>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.services-reviews__rating span{
    color:var(--secondary-dark);
    font-size:16px;
    letter-spacing:2px;
}

.services-reviews__rating small{
    color:var(--muted);
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.07em;
}


/* =========================================================
   SECTION 07 — RESPONSIVE
========================================================= */

@media(max-width:992px){

    .services-reviews__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .services-reviews__grid{
        grid-template-columns:1fr 1fr;
    }

    .services-review--featured{
        grid-column:1/-1;
    }

}

@media(max-width:767px){

    .services-reviews{
        padding:70px 0;
    }

    .services-reviews__head{
        margin-bottom:30px;
    }

    .services-reviews__grid{
        grid-template-columns:1fr;
    }

    .services-review,
    .services-review--featured{
        grid-column:auto;
        min-height:280px;
    }

    .services-reviews__bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

@media(max-width:575px){

    .services-review{
        min-height:250px;
        padding:23px;
        border-radius:18px;
    }

    .services-review p,
    .services-review--featured p{
        margin:28px 0;
        font-size:16px;
    }

    .services-reviews__bottom{
        padding:22px;
    }

    .services-reviews__bottom .btn{
        width:100%;
    }

}






/* =========================================================
   SECTION 08 — FAQ
========================================================= */

.services-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.services-faq::before{
    content:"";
    position:absolute;
    top:-200px;
    right:-180px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.services-faq__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:clamp(55px,7vw,110px);
    align-items:start;
}


/* =========================================================
   SECTION 08 — INTRO
========================================================= */

.services-faq__intro{
    position:sticky;
    top:120px;
}

.services-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-faq__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-faq__intro h2{
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-faq__intro h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.services-faq__intro p{
    max-width:490px;
    margin:0 0 28px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 08 — FAQ ITEMS
========================================================= */

.services-faq__list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.services-faq__item{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
    transition:
        border-color .25s ease,
        box-shadow .25s var(--ease),
        background .25s ease;
}

.services-faq__item[open]{
    border-color:rgba(67,181,160,.36);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.services-faq__item summary{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding:24px 25px;
    cursor:pointer;
    list-style:none;
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    line-height:1.4;
}

.services-faq__item summary::-webkit-details-marker{
    display:none;
}

.services-faq__plus{
    position:relative;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(67,181,160,.12);
}

.services-faq__plus::before,
.services-faq__plus::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:13px;
    height:2px;
    border-radius:2px;
    background:var(--primary-dark);
    transform:translate(-50%,-50%);
    transition:transform .25s ease;
}

.services-faq__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.services-faq__item[open] .services-faq__plus{
    background:var(--secondary);
}

.services-faq__item[open] .services-faq__plus::after{
    transform:translate(-50%,-50%) rotate(0);
}

.services-faq__answer{
    padding:0 78px 24px 25px;
}

.services-faq__answer p{
    max-width:720px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 08 — RESPONSIVE
========================================================= */

@media(max-width:992px){

    .services-faq__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .services-faq__intro{
        position:static;
        max-width:720px;
    }

}

@media(max-width:767px){

    .services-faq{
        padding:70px 0;
    }

    .services-faq__item summary{
        padding:21px;
        font-size:16px;
    }

    .services-faq__answer{
        padding:0 65px 21px 21px;
    }

}

@media(max-width:575px){

    .services-faq__intro .btn{
        width:100%;
    }

    .services-faq__list{
        gap:10px;
    }

    .services-faq__item{
        border-radius:17px;
    }

    .services-faq__item summary{
        padding:19px;
        font-size:16px;
    }

    .services-faq__plus{
        flex-basis:34px;
        width:34px;
        height:34px;
    }

    .services-faq__answer{
        padding:0 19px 20px;
    }

    .services-faq__answer p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 09 — BOOK YOUR APPOINTMENT
========================================================= */

.services-appointment{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:
        radial-gradient(
            circle at 5% 0%,
            rgba(67,181,160,.22),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #12201d 0%,
            #0f1b18 100%
        );
}

.services-appointment::before{
    content:"";
    position:absolute;
    top:-170px;
    right:-150px;
    width:430px;
    height:430px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}

.services-appointment::after{
    content:"";
    position:absolute;
    right:70px;
    bottom:-220px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.08);
}

.services-appointment__wrap{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:start;
    gap:clamp(50px,6vw,90px);
}


/* =========================================================
   SECTION 09 — LEFT CONTENT
========================================================= */

.services-appointment__content{
    max-width:620px;
}

.services-appointment__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:#7BD1C1;
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.services-appointment__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.services-appointment__content h2{
    margin:0 0 22px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.services-appointment__content h2 strong{
    display:block;
    color:#7BD1C1;
    font-weight:800;
}

.services-appointment__text{
    max-width:580px;
    margin:0 0 30px;
    color:rgba(255,255,255,.64);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 09 — BENEFITS
========================================================= */

.services-appointment__benefits{
    display:grid;
    grid-template-columns:1fr;
    gap:11px;
}

.services-appointment__benefit{
    display:flex;
    align-items:center;
    gap:15px;
    padding:15px 17px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:16px;
    background:rgba(255,255,255,.04);
    backdrop-filter:blur(8px);
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        background .3s ease;
}

.services-appointment__benefit:hover{
    transform:translateX(4px);
    border-color:rgba(67,181,160,.32);
    background:rgba(255,255,255,.065);
}

.services-appointment__benefit>span{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.services-appointment__benefit>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.services-appointment__benefit strong{
    color:#fff;
    font-size:16px;
    line-height:1.35;
}

.services-appointment__benefit small{
    color:rgba(255,255,255,.52);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 09 — PHOTO
========================================================= */

.services-appointment__photo{
    position:relative;
    height:275px;
    margin-top:28px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:23px;
    background:#1a2d28;
    box-shadow:0 20px 50px rgba(0,0,0,.18);
}

.services-appointment__photo img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.services-appointment__photo:hover img{
    transform:scale(1.04);
}

.services-appointment__photo-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(9,22,18,.02) 28%,
            rgba(9,22,18,.18) 52%,
            rgba(9,22,18,.88) 100%
        );
}

.services-appointment__photo-badge{
    position:absolute;
    z-index:2;
    right:22px;
    bottom:21px;
    left:22px;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.services-appointment__photo-badge span{
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.services-appointment__photo-badge strong{
    max-width:420px;
    color:#fff;
    font-size:17px;
    font-weight:800;
    line-height:1.3;
}


/* =========================================================
   SECTION 09 — APPOINTMENT FORM
========================================================= */

.services-appointment__form{
    position:relative;
    overflow:hidden;
    padding:13px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:30px;
    background:#fff;
    box-shadow:0 30px 80px rgba(0,0,0,.24);
}

.services-appointment__form::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:4px;
    background:linear-gradient(
        90deg,
        var(--primary),
        var(--secondary)
    );
}

.services-appointment__form-head{
    padding:27px 25px 19px;
}

.services-appointment__form-head>span{
    display:block;
    margin-bottom:7px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.services-appointment__form-head h3{
    margin:0 0 7px;
    color:var(--ink);
    font-size:26px;
    line-height:1.2;
    letter-spacing:-.03em;
}

.services-appointment__form-head p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}

.services-appointment__iframe{
    overflow:hidden;
    border-radius:20px;
    background:var(--bg-soft);
}

.services-appointment__iframe iframe{
    display:block;
    width:100%;
    min-height:450px;
    border:0;
}


/* =========================================================
   SECTION 09 — RESPONSIVE — 1200px
========================================================= */

@media(max-width:1200px){

    .services-appointment__wrap{
        grid-template-columns:.88fr 1.12fr;
        gap:50px;
    }

}


/* =========================================================
   SECTION 09 — RESPONSIVE — TABLET
========================================================= */

@media(max-width:992px){

    .services-appointment__wrap{
        grid-template-columns:1fr;
        gap:45px;
    }

    .services-appointment__content{
        max-width:780px;
    }

    .services-appointment__photo{
        width:100%;
        max-width:780px;
        height:350px;
    }

    .services-appointment__form{
        width:100%;
        max-width:850px;
    }

}


/* =========================================================
   SECTION 09 — RESPONSIVE — MOBILE
========================================================= */

@media(max-width:767px){

    .services-appointment{
        padding:70px 0;
    }

    .services-appointment__content h2{
        margin-bottom:18px;
    }

    .services-appointment__text{
        margin-bottom:25px;
    }

    .services-appointment__photo{
        height:290px;
        margin-top:24px;
        border-radius:20px;
    }

    .services-appointment__form{
        padding:9px;
        border-radius:23px;
    }

    .services-appointment__form-head{
        padding:21px 18px 16px;
    }

    .services-appointment__form-head h3{
        font-size:22px;
    }

    .services-appointment__iframe{
        border-radius:16px;
    }

}


/* =========================================================
   SECTION 09 — RESPONSIVE — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .services-appointment__eyebrow{
        font-size:16px;
    }

    .services-appointment__eyebrow::before{
        flex-basis:24px;
        width:24px;
    }

    .services-appointment__benefit{
        align-items:flex-start;
        padding:14px;
        border-radius:14px;
    }

    .services-appointment__benefit>span{
        flex-basis:34px;
        width:34px;
        height:34px;
    }

    .services-appointment__photo{
        height:235px;
        border-radius:17px;
    }

    .services-appointment__photo-badge{
        right:17px;
        bottom:17px;
        left:17px;
    }

    .services-appointment__photo-badge strong{
        font-size:16px;
    }

    .services-appointment__form{
        border-radius:19px;
    }

    .services-appointment__form-head{
        padding:20px 15px 15px;
    }

    .services-appointment__iframe{
        border-radius:14px;
    }

    .services-appointment__iframe iframe{
        min-height:520px;
    }

}



























/* =========================================================
   SECTION 01 — BERTAZZONI APPLIANCE REPAIR HERO
========================================================= */

.bertazzoni-hero-new{
    position:relative;
    overflow:hidden;
    padding:clamp(65px,7vw,105px) 0 var(--section-space);
    background:
        radial-gradient(
            circle at 4% 0%,
            rgba(67,181,160,.12),
            transparent 29%
        ),
        #fff;
}

.bertazzoni-hero-new::before{
    content:"";
    position:absolute;
    right:-200px;
    top:-200px;
    width:480px;
    height:480px;
    border-radius:50%;
    background:rgba(255,212,0,.055);
}


/* =========================================================
   SECTION 01 — HERO BOX
========================================================= */

.bertazzoni-hero-new__box{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    min-height:610px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:32px;
    background:var(--bg-soft);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 01 — CONTENT
========================================================= */

.bertazzoni-hero-new__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(40px,5vw,72px);
}

.bertazzoni-hero-new__meta{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:22px;
}

.bertazzoni-hero-new__meta>span{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-hero-new__meta>span::before{
    content:"";
    width:30px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-hero-new__meta small{
    padding-left:15px;
    border-left:1px solid var(--border);
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.bertazzoni-hero-new h1{
    max-width:690px;
    margin:0 0 24px;
    color:var(--ink);
    font-size:var(--fs-h1);
    font-weight:500;
    line-height:1;
    letter-spacing:-.055em;
}

.bertazzoni-hero-new h1 strong{
    display:block;
    margin-top:4px;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-hero-new__content>p{
    max-width:590px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 01 — ACTIONS
========================================================= */

.bertazzoni-hero-new__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.bertazzoni-hero-new__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.bertazzoni-hero-new__link span{
    font-size:17px;
    transition:transform .3s var(--ease);
}

.bertazzoni-hero-new__link:hover{
    color:var(--primary-dark);
}

.bertazzoni-hero-new__link:hover span{
    transform:translateX(5px);
}


/* =========================================================
   SECTION 01 — TRUST
========================================================= */

.bertazzoni-hero-new__trust{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:34px;
}

.bertazzoni-hero-new__trust>div{
    display:flex;
    align-items:center;
    gap:7px;
    padding:9px 11px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#fff;
}

.bertazzoni-hero-new__trust span{
    display:grid;
    place-items:center;
    width:22px;
    height:22px;
    border-radius:50%;
    background:rgba(67,181,160,.13);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-hero-new__trust p{
    margin:0;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}


/* =========================================================
   SECTION 01 — IMAGE
========================================================= */

.bertazzoni-hero-new__visual{
    position:relative;
    overflow:hidden;
    min-height:610px;
}

.bertazzoni-hero-new__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.bertazzoni-hero-new__visual:hover>img{
    transform:scale(1.04);
}

.bertazzoni-hero-new__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,0) 35%,
            rgba(8,20,17,.1) 55%,
            rgba(8,20,17,.78) 100%
        );
}


/* =========================================================
   SECTION 01 — IMAGE LABEL
========================================================= */

.bertazzoni-hero-new__image-label{
    position:absolute;
    z-index:2;
    right:30px;
    bottom:31px;
    left:30px;
}

.bertazzoni-hero-new__image-label span{
    display:block;
    margin-bottom:6px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.bertazzoni-hero-new__image-label strong{
    display:block;
    color:#fff;
    font-size:23px;
    line-height:1.2;
    letter-spacing:-.025em;
}


/* =========================================================
   SECTION 01 — IMAGE CIRCLE
========================================================= */

.bertazzoni-hero-new__circle{
    position:absolute;
    z-index:3;
    top:25px;
    right:25px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:88px;
    height:88px;
    border:6px solid rgba(255,255,255,.9);
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 14px 36px rgba(23,37,34,.17);
}

.bertazzoni-hero-new__circle strong{
    color:var(--ink);
    font-size:17px;
    font-weight:900;
}

.bertazzoni-hero-new__circle span{
    margin-top:1px;
    color:rgba(23,37,34,.6);
    font-size:16px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 01 — APPLIANCE TYPES
========================================================= */

.bertazzoni-hero-new__appliances{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
}

.bertazzoni-hero-new__appliance{
    display:flex;
    align-items:center;
    gap:14px;
    min-height:105px;
    padding:21px 23px;
    transition:background .25s ease;
}

.bertazzoni-hero-new__appliance:hover{
    background:var(--bg-soft);
}

.bertazzoni-hero-new__appliance:not(:last-child){
    border-right:1px solid var(--border);
}

.bertazzoni-hero-new__appliance>span{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:12px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-hero-new__appliance>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.bertazzoni-hero-new__appliance strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.25;
}

.bertazzoni-hero-new__appliance small{
    color:var(--muted);
    font-size:12px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 01 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .bertazzoni-hero-new__box{
        grid-template-columns:.95fr 1.05fr;
    }

    .bertazzoni-hero-new__content{
        padding:45px;
    }

}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-hero-new__box{
        grid-template-columns:1fr;
        min-height:0;
    }

    .bertazzoni-hero-new__content{
        padding:50px 40px;
    }

    .bertazzoni-hero-new__visual{
        min-height:520px;
    }

    .bertazzoni-hero-new__appliances{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .bertazzoni-hero-new__appliance:nth-child(3){
        border-right:0;
    }

    .bertazzoni-hero-new__appliance:nth-child(-n+3){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-hero-new{
        padding:60px 0 70px;
    }

    .bertazzoni-hero-new__box{
        border-radius:23px;
    }

    .bertazzoni-hero-new__content{
        padding:38px 28px;
    }

    .bertazzoni-hero-new__visual{
        min-height:430px;
    }

    .bertazzoni-hero-new__image-label{
        right:24px;
        bottom:24px;
        left:24px;
    }

    .bertazzoni-hero-new__appliances{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .bertazzoni-hero-new__appliance:nth-child(3){
        border-right:1px solid var(--border);
    }

    .bertazzoni-hero-new__appliance:nth-child(even){
        border-right:0;
    }

    .bertazzoni-hero-new__appliance:nth-child(-n+4){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-hero-new__box{
        border-radius:19px;
    }

    .bertazzoni-hero-new__content{
        padding:31px 21px;
    }

    .bertazzoni-hero-new__meta{
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }

    .bertazzoni-hero-new__meta small{
        padding-left:0;
        border-left:0;
    }

    .bertazzoni-hero-new__actions{
        flex-direction:column;
        align-items:stretch;
        gap:17px;
    }

    .bertazzoni-hero-new__actions .btn{
        width:100%;
    }

    .bertazzoni-hero-new__link{
        justify-content:center;
    }

    .bertazzoni-hero-new__visual{
        min-height:350px;
    }

    .bertazzoni-hero-new__circle{
        top:15px;
        right:15px;
        width:70px;
        height:70px;
        border-width:4px;
    }

    .bertazzoni-hero-new__image-label{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .bertazzoni-hero-new__image-label strong{
        font-size:18px;
    }

    .bertazzoni-hero-new__appliances{
        grid-template-columns:1fr;
        border-radius:18px;
    }

    .bertazzoni-hero-new__appliance{
        min-height:82px;
        padding:18px 20px;
        border-right:0 !important;
        border-bottom:1px solid var(--border);
    }

    .bertazzoni-hero-new__appliance:last-child{
        border-bottom:0;
    }

}




/* =========================================================
   SECTION 02 — BERTAZZONI APPLIANCES WE SERVICE
========================================================= */

.bertazzoni-appliances{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.bertazzoni-appliances::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-180px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.bertazzoni-appliances::after{
    content:"";
    position:absolute;
    right:-220px;
    bottom:-220px;
    width:480px;
    height:480px;
    border-radius:50%;
    background:rgba(255,212,0,.045);
}


/* =========================================================
   SECTION 02 — HEADER
========================================================= */

.bertazzoni-appliances__head{
    position:relative;
    z-index:2;
    margin-bottom:42px;
}

.bertazzoni-appliances__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-appliances__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-appliances__head-row{
    display:grid;
    grid-template-columns:1.18fr .82fr;
    align-items:end;
    gap:80px;
}

.bertazzoni-appliances__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.bertazzoni-appliances__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-appliances__head-row p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — MAIN LAYOUT
========================================================= */

.bertazzoni-appliances__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:16px;
}


/* =========================================================
   SECTION 02 — FEATURED PANEL
========================================================= */

.bertazzoni-appliances__featured{
    position:relative;
    min-height:760px;
    overflow:hidden;
    border-radius:28px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.bertazzoni-appliances__featured > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.bertazzoni-appliances__featured:hover > img{
    transform:scale(1.04);
}

.bertazzoni-appliances__featured-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.04) 18%,
            rgba(8,20,17,.16) 45%,
            rgba(8,20,17,.88) 100%
        );
}

.bertazzoni-appliances__featured-badge{
    position:absolute;
    z-index:3;
    top:25px;
    left:25px;
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:13px 15px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:16px;
    background:rgba(13,27,23,.62);
    backdrop-filter:blur(10px);
}

.bertazzoni-appliances__featured-badge span{
    color:rgba(255,255,255,.62);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-appliances__featured-badge strong{
    color:#fff;
    font-size:16px;
    line-height:1.2;
}

.bertazzoni-appliances__featured-content{
    position:absolute;
    z-index:3;
    right:32px;
    bottom:32px;
    left:32px;
}

.bertazzoni-appliances__featured-content > span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-appliances__featured-content > strong{
    display:block;
    max-width:420px;
    margin-bottom:12px;
    color:#fff;
    font-size:28px;
    line-height:1.2;
    letter-spacing:-.03em;
}

.bertazzoni-appliances__featured-content > p{
    max-width:470px;
    margin:0 0 22px;
    color:rgba(255,255,255,.7);
    font-size:16px;
    line-height:1.7;
}

.bertazzoni-appliances__featured-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.bertazzoni-appliances__featured-link span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.bertazzoni-appliances__featured-link:hover span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 02 — CARDS
========================================================= */

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

.bertazzoni-appliance-card{
    position:relative;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    box-shadow:var(--shadow-xs, 0 8px 24px rgba(23,37,34,.04));
    transition:
        transform .3s var(--ease),
        border-color .3s ease,
        box-shadow .3s var(--ease);
}

.bertazzoni-appliance-card:hover{
    transform:translateY(-4px);
    border-color:rgba(67,181,160,.38);
    box-shadow:var(--shadow-sm);
}

.bertazzoni-appliance-card__image{
    position:relative;
    height:170px;
    overflow:hidden;
    background:var(--bg-dark);
}

.bertazzoni-appliance-card__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.bertazzoni-appliance-card:hover .bertazzoni-appliance-card__image img{
    transform:scale(1.05);
}

.bertazzoni-appliance-card__body{
    position:relative;
    padding:20px;
}

.bertazzoni-appliance-card__body span{
    display:block;
    margin-bottom:7px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-appliance-card__body h3{
    margin:0 0 9px;
    color:var(--ink);
    font-size:19px;
    line-height:1.2;
    letter-spacing:-.02em;
}

.bertazzoni-appliance-card__body p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 02 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .bertazzoni-appliances__layout{
        grid-template-columns:1fr;
    }

    .bertazzoni-appliances__featured{
        min-height:520px;
    }

}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-appliances__head-row{
        grid-template-columns:1fr;
        gap:20px;
    }

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

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-appliances{
        padding:70px 0;
    }

    .bertazzoni-appliances__head{
        margin-bottom:30px;
    }

    .bertazzoni-appliances__featured{
        min-height:430px;
        border-radius:22px;
    }

    .bertazzoni-appliances__featured-content{
        right:24px;
        bottom:24px;
        left:24px;
    }

    .bertazzoni-appliances__featured-content > strong{
        font-size:23px;
    }

    .bertazzoni-appliances__cards{
        gap:12px;
    }

    .bertazzoni-appliance-card{
        border-radius:19px;
    }

    .bertazzoni-appliance-card__image{
        height:155px;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-appliances__eyebrow{
        font-size:16px;
    }

    .bertazzoni-appliances__eyebrow::before{
        width:24px;
    }

    .bertazzoni-appliances__cards{
        grid-template-columns:1fr;
    }

    .bertazzoni-appliances__featured{
        min-height:360px;
        border-radius:19px;
    }

    .bertazzoni-appliances__featured-badge{
        top:15px;
        left:15px;
        padding:11px 13px;
        border-radius:14px;
    }

    .bertazzoni-appliances__featured-content{
        right:19px;
        bottom:19px;
        left:19px;
    }

    .bertazzoni-appliances__featured-content > strong{
        font-size:19px;
    }

    .bertazzoni-appliance-card{
        border-radius:17px;
    }

    .bertazzoni-appliance-card__image{
        height:170px;
    }

    .bertazzoni-appliance-card__body{
        padding:18px;
    }

    .bertazzoni-appliance-card__body h3{
        font-size:17px;
    }

}




/* =========================================================
   SECTION 03 — BERTAZZONI SERVICE EXPERTISE
========================================================= */

.bertazzoni-expertise{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.bertazzoni-expertise::before{
    content:"";
    position:absolute;
    right:-190px;
    top:-190px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.06);
}


/* =========================================================
   SECTION 03 — SHELL
========================================================= */

.bertazzoni-expertise__shell{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.16fr .84fr;
    gap:18px;
}


/* =========================================================
   SECTION 03 — IMAGE
========================================================= */

.bertazzoni-expertise__visual{
    position:relative;
    min-height:470px;
    overflow:hidden;
    border-radius:28px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.bertazzoni-expertise__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.bertazzoni-expertise__visual:hover>img{
    transform:scale(1.04);
}

.bertazzoni-expertise__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.02) 35%,
            rgba(8,20,17,.12) 58%,
            rgba(8,20,17,.84) 100%
        );
}

.bertazzoni-expertise__image-meta{
    position:absolute;
    z-index:2;
    right:30px;
    bottom:30px;
    left:30px;
}

.bertazzoni-expertise__image-meta span{
    display:block;
    margin-bottom:7px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-expertise__image-meta strong{
    display:block;
    max-width:430px;
    color:#fff;
    font-size:25px;
    line-height:1.25;
    letter-spacing:-.03em;
}


/* =========================================================
   SECTION 03 — INTRO
========================================================= */

.bertazzoni-expertise__intro{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(35px,4vw,58px);
    border:1px solid var(--border);
    border-radius:28px;
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.12),
            transparent 34%
        ),
        var(--bg-soft);
}

.bertazzoni-expertise__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-expertise__eyebrow::before{
    content:"";
    width:30px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-expertise__intro h2{
    margin:0 0 21px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.bertazzoni-expertise__intro h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-expertise__intro>p{
    max-width:520px;
    margin:0 0 27px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}

.bertazzoni-expertise__intro .btn{
    align-self:flex-start;
}


/* =========================================================
   SECTION 03 — SERVICE ROWS
========================================================= */

.bertazzoni-expertise__rows{
    grid-column:1/-1;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:24px;
    background:#fff;
}

.bertazzoni-expertise__row{
    position:relative;
    display:grid;
    grid-template-columns:70px minmax(220px,.75fr) 1.25fr 42px;
    align-items:center;
    gap:28px;
    min-height:135px;
    padding:26px 28px;
    transition:background .3s ease;
}

.bertazzoni-expertise__row:not(:last-child){
    border-bottom:1px solid var(--border);
}

.bertazzoni-expertise__row:hover{
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 03 — ROW NUMBER
========================================================= */

.bertazzoni-expertise__row-number{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    border-radius:14px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.08em;
}


/* =========================================================
   SECTION 03 — ROW TITLE
========================================================= */

.bertazzoni-expertise__row-title span{
    display:block;
    margin-bottom:5px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-expertise__row-title h3{
    margin:0;
    color:var(--ink);
    font-size:19px;
    line-height:1.3;
    letter-spacing:-.025em;
}

.bertazzoni-expertise__row>p{
    max-width:610px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 03 — ROW ARROW
========================================================= */

.bertazzoni-expertise__row-mark{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    transition:transform .3s var(--ease);
}

.bertazzoni-expertise__row:hover .bertazzoni-expertise__row-mark{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 03 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .bertazzoni-expertise__shell{
        grid-template-columns:1fr 1fr;
    }

    .bertazzoni-expertise__row{
        grid-template-columns:60px minmax(190px,.8fr) 1.2fr 38px;
        gap:20px;
    }

}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-expertise__shell{
        grid-template-columns:1fr;
    }

    .bertazzoni-expertise__visual{
        min-height:500px;
    }

    .bertazzoni-expertise__intro{
        padding:42px;
    }

    .bertazzoni-expertise__rows{
        grid-column:auto;
    }

    .bertazzoni-expertise__row{
        grid-template-columns:55px 1fr 38px;
        gap:18px;
    }

    .bertazzoni-expertise__row>p{
        grid-column:2/3;
        margin-top:-5px;
    }

    .bertazzoni-expertise__row-mark{
        grid-column:3;
        grid-row:1/3;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-expertise{
        padding:70px 0;
    }

    .bertazzoni-expertise__visual{
        min-height:410px;
        border-radius:22px;
    }

    .bertazzoni-expertise__intro{
        padding:32px 27px;
        border-radius:22px;
    }

    .bertazzoni-expertise__rows{
        border-radius:20px;
    }

    .bertazzoni-expertise__row{
        min-height:0;
        padding:22px;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-expertise__visual{
        min-height:340px;
        border-radius:19px;
    }

    .bertazzoni-expertise__image-meta{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .bertazzoni-expertise__image-meta strong{
        font-size:20px;
    }

    .bertazzoni-expertise__intro{
        padding:28px 21px;
        border-radius:19px;
    }

    .bertazzoni-expertise__intro .btn{
        width:100%;
    }

    .bertazzoni-expertise__row{
        grid-template-columns:45px 1fr;
        gap:15px;
        padding:20px;
    }

    .bertazzoni-expertise__row-number{
        width:42px;
        height:42px;
        border-radius:12px;
    }

    .bertazzoni-expertise__row>p{
        grid-column:1/-1;
        margin-top:3px;
    }

    .bertazzoni-expertise__row-mark{
        display:none;
    }

    .bertazzoni-expertise__row-title h3{
        font-size:17px;
    }

}




/* =========================================================
   SECTION 04 — COMMON BERTAZZONI ISSUES
========================================================= */

.bertazzoni-issues{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.bertazzoni-issues::before{
    content:"";
    position:absolute;
    left:-190px;
    top:-190px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.bertazzoni-issues__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    align-items:stretch;
    gap:clamp(45px,6vw,90px);
}


/* =========================================================
   SECTION 04 — CONTENT
========================================================= */

.bertazzoni-issues__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    max-width:700px;
}

.bertazzoni-issues__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-issues__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-issues h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.bertazzoni-issues h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-issues__intro{
    max-width:620px;
    margin:0 0 30px;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — ISSUE LIST
========================================================= */

.bertazzoni-issues__list{
    display:flex;
    flex-direction:column;
    border-top:1px solid var(--border);
}

.bertazzoni-issues__item{
    display:grid;
    grid-template-columns:48px 1fr;
    gap:17px;
    padding:20px 0;
    border-bottom:1px solid var(--border);
}

.bertazzoni-issues__item>span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:12px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    box-shadow:0 7px 20px rgba(23,37,34,.05);
}

.bertazzoni-issues__item strong{
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}

.bertazzoni-issues__item p{
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 04 — ACTIONS
========================================================= */

.bertazzoni-issues__actions{
    display:flex;
    align-items:center;
    gap:22px;
    margin-top:30px;
}

.bertazzoni-issues__actions>span{
    max-width:260px;
    color:var(--muted);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   SECTION 04 — VISUAL
========================================================= */

.bertazzoni-issues__visual{
    position:relative;
    min-height:720px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.bertazzoni-issues__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.bertazzoni-issues__visual:hover>img{
    transform:scale(1.04);
}

.bertazzoni-issues__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.03) 30%,
            rgba(8,20,17,.12) 55%,
            rgba(8,20,17,.85) 100%
        );
}


/* =========================================================
   SECTION 04 — VISUAL TITLE
========================================================= */

.bertazzoni-issues__visual-title{
    position:absolute;
    z-index:2;
    right:32px;
    bottom:105px;
    left:32px;
}

.bertazzoni-issues__visual-title span{
    display:block;
    margin-bottom:7px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-issues__visual-title strong{
    display:block;
    max-width:430px;
    color:#fff;
    font-size:25px;
    line-height:1.24;
    letter-spacing:-.03em;
}


/* =========================================================
   SECTION 04 — INFO CARD
========================================================= */

.bertazzoni-issues__info-card{
    position:absolute;
    z-index:3;
    right:24px;
    bottom:24px;
    left:24px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:17px;
    background:rgba(14,28,24,.72);
    backdrop-filter:blur(12px);
}

.bertazzoni-issues__info-icon{
    display:grid;
    place-items:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:12px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-issues__info-card>div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.bertazzoni-issues__info-card span{
    color:rgba(255,255,255,.58);
    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.bertazzoni-issues__info-card strong{
    color:#fff;
    font-size:16px;
    line-height:1.4;
}


/* =========================================================
   SECTION 04 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .bertazzoni-issues__layout{
        gap:50px;
    }

    .bertazzoni-issues__visual{
        min-height:670px;
    }

}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-issues__layout{
        grid-template-columns:1fr;
    }

    .bertazzoni-issues__content{
        max-width:780px;
    }

    .bertazzoni-issues__visual{
        min-height:520px;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-issues{
        padding:70px 0;
    }

    .bertazzoni-issues__visual{
        min-height:430px;
        border-radius:22px;
    }

    .bertazzoni-issues__visual-title{
        right:24px;
        bottom:98px;
        left:24px;
    }

    .bertazzoni-issues__visual-title strong{
        font-size:22px;
    }

    .bertazzoni-issues__actions{
        flex-direction:column;
        align-items:flex-start;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-issues__item{
        grid-template-columns:42px 1fr;
        gap:13px;
        padding:17px 0;
    }

    .bertazzoni-issues__item>span{
        width:36px;
        height:36px;
    }

    .bertazzoni-issues__actions .btn{
        width:100%;
    }

    .bertazzoni-issues__visual{
        min-height:370px;
        border-radius:19px;
    }

    .bertazzoni-issues__visual-title{
        right:18px;
        bottom:95px;
        left:18px;
    }

    .bertazzoni-issues__visual-title strong{
        font-size:18px;
    }

    .bertazzoni-issues__info-card{
        right:14px;
        bottom:14px;
        left:14px;
        padding:12px 13px;
    }

    .bertazzoni-issues__info-card strong{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 05 — WHY HOMEOWNERS CHOOSE US
========================================================= */

.bertazzoni-trust{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.bertazzoni-trust::before{
    content:"";
    position:absolute;
    right:-180px;
    bottom:-220px;
    width:470px;
    height:470px;
    border-radius:50%;
    background:rgba(67,181,160,.06);
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.bertazzoni-trust__head{
    position:relative;
    z-index:2;
    margin-bottom:42px;
}

.bertazzoni-trust__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-trust__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-trust__head-row{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    align-items:end;
    gap:80px;
}

.bertazzoni-trust__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.bertazzoni-trust__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-trust__head-row>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.bertazzoni-trust__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:16px;
}


/* =========================================================
   SECTION 05 — FEATURED BLOCK
========================================================= */

.bertazzoni-trust__featured{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:575px;
    overflow:hidden;
    padding:34px;
    border-radius:28px;
    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(67,181,160,.28),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            #12201d,
            #172d28
        );
}

.bertazzoni-trust__featured::after{
    content:"WF";
    position:absolute;
    top:60px;
    right:-22px;
    color:rgba(255,255,255,.035);
    font-size:210px;
    font-weight:900;
    line-height:1;
}

.bertazzoni-trust__featured-label{
    position:relative;
    z-index:2;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 05 — FEATURED CONTENT
========================================================= */

.bertazzoni-trust__featured-main{
    position:relative;
    z-index:2;
}

.bertazzoni-trust__big-number{
    display:block;
    margin-bottom:22px;
    color:rgba(255,255,255,.3);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
}

.bertazzoni-trust__featured h3{
    max-width:480px;
    margin:0 0 18px;
    color:#fff;
    font-size:32px;
    font-weight:500;
    line-height:1.1;
    letter-spacing:-.04em;
}

.bertazzoni-trust__featured h3 strong{
    display:block;
    margin-top:4px;
    color:#7bd1c1;
    font-weight:800;
}

.bertazzoni-trust__featured-main p{
    max-width:440px;
    margin:0;
    color:rgba(255,255,255,.64);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 05 — FEATURED BOTTOM
========================================================= */

.bertazzoni-trust__featured-bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:25px;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.12);
}

.bertazzoni-trust__featured-bottom>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.bertazzoni-trust__featured-bottom>div span{
    color:rgba(255,255,255,.45);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-trust__featured-bottom>div strong{
    color:#fff;
    font-size:16px;
}

.bertazzoni-trust__featured-bottom>a{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.bertazzoni-trust__featured-bottom>a>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.bertazzoni-trust__featured-bottom>a:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 05 — BENEFIT LIST
========================================================= */

.bertazzoni-trust__list{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:28px;
    background:var(--bg-soft);
}

.bertazzoni-trust__item{
    position:relative;
    display:grid;
    grid-template-columns:55px 1fr 42px;
    align-items:center;
    gap:20px;
    min-height:143px;
    padding:24px 26px;
    background:var(--bg-soft);
    transition:background .3s ease;
}

.bertazzoni-trust__item:not(:last-child){
    border-bottom:1px solid var(--border);
}

.bertazzoni-trust__item:hover{
    background:#fff;
}


/* =========================================================
   SECTION 05 — ITEM NUMBER
========================================================= */

.bertazzoni-trust__item-number{
    display:grid;
    place-items:center;
    width:45px;
    height:45px;
    border-radius:13px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    box-shadow:0 7px 20px rgba(23,37,34,.05);
}


/* =========================================================
   SECTION 05 — ITEM CONTENT
========================================================= */

.bertazzoni-trust__item-content>span{
    display:block;
    margin-bottom:5px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-trust__item-content h3{
    margin:0 0 7px;
    color:var(--ink);
    font-size:18px;
    line-height:1.3;
    letter-spacing:-.025em;
}

.bertazzoni-trust__item-content p{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 05 — CHECK MARK
========================================================= */

.bertazzoni-trust__mark{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(67,181,160,.12);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 05 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .bertazzoni-trust__layout{
        grid-template-columns:.9fr 1.1fr;
    }

}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-trust__head-row{
        grid-template-columns:1fr;
        gap:20px;
    }

    .bertazzoni-trust__layout{
        grid-template-columns:1fr;
    }

    .bertazzoni-trust__featured{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-trust{
        padding:70px 0;
    }

    .bertazzoni-trust__head{
        margin-bottom:30px;
    }

    .bertazzoni-trust__featured{
        min-height:390px;
        padding:27px;
        border-radius:22px;
    }

    .bertazzoni-trust__featured h3{
        font-size:27px;
    }

    .bertazzoni-trust__list{
        border-radius:22px;
    }

    .bertazzoni-trust__item{
        min-height:0;
        padding:22px;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-trust__featured{
        min-height:370px;
        padding:22px;
        border-radius:19px;
    }

    .bertazzoni-trust__featured h3{
        font-size:24px;
    }

    .bertazzoni-trust__featured-bottom{
        flex-direction:column;
        align-items:flex-start;
    }

    .bertazzoni-trust__list{
        border-radius:19px;
    }

    .bertazzoni-trust__item{
        grid-template-columns:43px 1fr;
        gap:14px;
        padding:20px;
    }

    .bertazzoni-trust__item-number{
        width:39px;
        height:39px;
    }

    .bertazzoni-trust__mark{
        display:none;
    }

    .bertazzoni-trust__item-content h3{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 06 — BERTAZZONI FAQ
========================================================= */

.bertazzoni-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.bertazzoni-faq::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-190px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}

.bertazzoni-faq__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.68fr 1.32fr;
    align-items:start;
    gap:clamp(50px,7vw,105px);
}


/* =========================================================
   SECTION 06 — LEFT INFO
========================================================= */

.bertazzoni-faq__info{
    position:sticky;
    top:120px;
}

.bertazzoni-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.bertazzoni-faq__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.bertazzoni-faq__info h2{
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.bertazzoni-faq__info h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-faq__info>p{
    max-width:480px;
    margin:0;
    color:var(--muted);
    font-size:var(--fs-body);
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — SUMMARY CARD
========================================================= */

.bertazzoni-faq__summary{
    margin-top:30px;
    padding:25px;
    border-radius:22px;
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.24),
            transparent 38%
        ),
        var(--bg-dark);
}

.bertazzoni-faq__summary-label{
    display:block;
    margin-bottom:17px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.bertazzoni-faq__summary-list{
    display:flex;
    flex-direction:column;
    margin-bottom:22px;
}

.bertazzoni-faq__summary-list>div{
    display:flex;
    align-items:center;
    gap:13px;
    padding:13px 0;
    border-bottom:1px solid rgba(255,255,255,.1);
}

.bertazzoni-faq__summary-list span{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:10px;
    background:rgba(255,255,255,.07);
    color:#7bd1c1;
    font-size:16px;
    font-weight:900;
}

.bertazzoni-faq__summary-list strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 06 — FAQ LIST
========================================================= */

.bertazzoni-faq__list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.bertazzoni-faq__item{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
    transition:
        border-color .25s ease,
        box-shadow .25s var(--ease);
}

.bertazzoni-faq__item[open]{
    border-color:rgba(67,181,160,.4);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 06 — SUMMARY
========================================================= */

.bertazzoni-faq__item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    padding:22px 23px;
    cursor:pointer;
    list-style:none;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    line-height:1.4;
}

.bertazzoni-faq__item summary::-webkit-details-marker{
    display:none;
}


/* =========================================================
   SECTION 06 — PLUS
========================================================= */

.bertazzoni-faq__plus{
    position:relative;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(67,181,160,.11);
}

.bertazzoni-faq__plus::before,
.bertazzoni-faq__plus::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:13px;
    height:2px;
    background:var(--primary-dark);
    border-radius:3px;
    transform:translate(-50%,-50%);
    transition:transform .25s ease;
}

.bertazzoni-faq__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.bertazzoni-faq__item[open] .bertazzoni-faq__plus{
    background:var(--secondary);
}

.bertazzoni-faq__item[open] .bertazzoni-faq__plus::after{
    transform:translate(-50%,-50%);
}


/* =========================================================
   SECTION 06 — ANSWERS
========================================================= */

.bertazzoni-faq__answer{
    padding:0 72px 22px 23px;
}

.bertazzoni-faq__answer p{
    max-width:720px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — RESPONSIVE — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-faq__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .bertazzoni-faq__info{
        position:static;
        max-width:760px;
    }

    .bertazzoni-faq__summary{
        max-width:520px;
    }

}


/* =========================================================
   SECTION 06 — RESPONSIVE — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-faq{
        padding:70px 0;
    }

    .bertazzoni-faq__item summary{
        padding:20px;
        font-size:16px;
    }

    .bertazzoni-faq__answer{
        padding:0 60px 20px 20px;
    }

}


/* =========================================================
   SECTION 06 — RESPONSIVE — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-faq__summary{
        padding:21px;
        border-radius:18px;
    }

    .bertazzoni-faq__summary .btn{
        width:100%;
    }

    .bertazzoni-faq__item{
        border-radius:16px;
    }

    .bertazzoni-faq__item summary{
        padding:18px;
        gap:15px;
        font-size:16px;
    }

    .bertazzoni-faq__plus{
        flex-basis:34px;
        width:34px;
        height:34px;
    }

    .bertazzoni-faq__answer{
        padding:0 18px 19px;
    }

    .bertazzoni-faq__answer p{
        font-size:16px;
    }

}




/* =========================================================
   SECTION 07 — SCHEDULE BERTAZZONI SERVICE
========================================================= */

.bertazzoni-book{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:
        radial-gradient(
            circle at 0% 0%,
            rgba(67,181,160,.12),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #f4faf8 0%,
            #ffffff 100%
        );
}

.bertazzoni-book::before{
    content:"";
    position:absolute;
    top:-220px;
    right:-200px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:rgba(255,212,0,.06);
}


/* =========================================================
   SECTION 07 — TOP HEADING
========================================================= */

.bertazzoni-book__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    align-items:end;
    gap:80px;
    margin-bottom:45px;
}

.bertazzoni-book__eyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.bertazzoni-book__eyebrow::before{
    content:"";
    flex:0 0 34px;
    width:34px;
    height:3px;
    border-radius:10px;
    background:var(--secondary);
}

.bertazzoni-book__heading h2{
    max-width:850px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.06;
    letter-spacing:-.045em;
}

.bertazzoni-book__heading h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.bertazzoni-book__head-text{
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 07 — MAIN GRID
========================================================= */

.bertazzoni-book__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 07 — PHOTO
========================================================= */

.bertazzoni-book__visual{
    position:relative;
    min-height:760px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.bertazzoni-book__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.bertazzoni-book__visual:hover>img{
    transform:scale(1.035);
}

.bertazzoni-book__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.08) 0%,
            rgba(8,20,17,.02) 35%,
            rgba(8,20,17,.2) 60%,
            rgba(8,20,17,.92) 100%
        );
}


/* =========================================================
   SECTION 07 — PHOTO BRAND
========================================================= */

.bertazzoni-book__visual-top{
    position:absolute;
    z-index:3;
    top:25px;
    left:25px;
}

.bertazzoni-book__brand{
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 15px 11px 11px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:16px;
    background:rgba(10,23,20,.67);
    backdrop-filter:blur(12px);
}

.bertazzoni-book__brand>span{
    display:grid;
    place-items:center;
    flex:0 0 45px;
    width:45px;
    height:45px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-book__brand>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.bertazzoni-book__brand small{
    color:rgba(255,255,255,.62);
    font-size:16px;
    font-weight:700;
}

.bertazzoni-book__brand strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 07 — PHOTO CONTENT
========================================================= */

.bertazzoni-book__visual-content{
    position:absolute;
    z-index:3;
    right:35px;
    bottom:36px;
    left:35px;
}

.bertazzoni-book__visual-content>span{
    display:block;
    margin-bottom:9px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-book__visual-content h3{
    max-width:520px;
    margin:0 0 12px;
    color:#fff;
    font-size:clamp(28px,2.5vw,40px);
    font-weight:700;
    line-height:1.12;
    letter-spacing:-.035em;
}

.bertazzoni-book__visual-content p{
    max-width:450px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 07 — FORM
========================================================= */

.bertazzoni-book__form{
    position:relative;
    overflow:hidden;
    padding:15px;
    border:1px solid var(--border);
    border-radius:30px;
    background:#fff;
    box-shadow:var(--shadow-md);
}

.bertazzoni-book__form::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:5px;
    background:linear-gradient(
        90deg,
        var(--primary),
        var(--secondary)
    );
}


/* =========================================================
   SECTION 07 — FORM HEADER
========================================================= */

.bertazzoni-book__form-head{
    padding:31px 29px 25px;
}

.bertazzoni-book__form-head>span{
    display:block;
    margin-bottom:8px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.bertazzoni-book__form-head h3{
    margin:0 0 10px;
    color:var(--ink);
    font-size:32px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.035em;
}

.bertazzoni-book__form-head p{
    max-width:600px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 07 — STEPS
========================================================= */

.bertazzoni-book__steps{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    padding:0 29px 25px;
}

.bertazzoni-book__step{
    min-width:0;
    padding:16px;
    border:1px solid var(--border);
    border-radius:16px;
    background:var(--bg-soft);
}

.bertazzoni-book__step>span{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    margin-bottom:15px;
    border-radius:10px;
    background:rgba(67,181,160,.13);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-book__step strong{
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}

.bertazzoni-book__step p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   SECTION 07 — IFRAME
========================================================= */

.bertazzoni-book__iframe{
    overflow:hidden;
    border-radius:20px;
    background:var(--bg-soft);
}

.bertazzoni-book__iframe iframe{
    display:block;
    width:100%;
    min-height:450px;
    border:0;
}


/* =========================================================
   SECTION 07 — BOTTOM SERVICE BAR
========================================================= */

.bertazzoni-book__bottom{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
}

.bertazzoni-book__bottom-item{
    display:grid;
    grid-template-columns:45px 1fr;
    align-items:center;
    gap:15px;
    min-height:120px;
    padding:24px 28px;
}

.bertazzoni-book__bottom-item:not(:last-child){
    border-right:1px solid var(--border);
}

.bertazzoni-book__bottom-item>span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.bertazzoni-book__bottom-item strong{
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}

.bertazzoni-book__bottom-item p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   SECTION 07 — RESPONSIVE 1200px
========================================================= */

@media(max-width:1200px){

    .bertazzoni-book__grid{
        grid-template-columns:.8fr 1.2fr;
    }

    .bertazzoni-book__visual{
        min-height:720px;
    }

    .bertazzoni-book__steps{
        grid-template-columns:1fr;
    }

    .bertazzoni-book__step{
        display:grid;
        grid-template-columns:38px 1fr;
        gap:12px;
    }

    .bertazzoni-book__step>span{
        margin-bottom:0;
    }

}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .bertazzoni-book__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .bertazzoni-book__grid{
        grid-template-columns:1fr;
    }

    .bertazzoni-book__visual{
        min-height:540px;
    }

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

    .bertazzoni-book__step{
        display:block;
    }

    .bertazzoni-book__step>span{
        margin-bottom:15px;
    }

    .bertazzoni-book__bottom{
        grid-template-columns:1fr;
    }

    .bertazzoni-book__bottom-item:not(:last-child){
        border-right:0;
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .bertazzoni-book{
        padding:70px 0;
    }

    .bertazzoni-book__head{
        margin-bottom:30px;
    }

    .bertazzoni-book__head-text{
        font-size:16px;
    }

    .bertazzoni-book__visual{
        min-height:450px;
        border-radius:22px;
    }

    .bertazzoni-book__visual-content{
        right:24px;
        bottom:25px;
        left:24px;
    }

    .bertazzoni-book__form{
        padding:10px;
        border-radius:23px;
    }

    .bertazzoni-book__form-head{
        padding:27px 20px 22px;
    }

    .bertazzoni-book__form-head h3{
        font-size:27px;
    }

    .bertazzoni-book__steps{
        grid-template-columns:1fr;
        padding:0 20px 22px;
    }

    .bertazzoni-book__step{
        display:grid;
        grid-template-columns:42px 1fr;
        gap:13px;
        align-items:start;
    }

    .bertazzoni-book__step>span{
        margin-bottom:0;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .bertazzoni-book__eyebrow{
        font-size:16px;
    }

    .bertazzoni-book__visual{
        min-height:370px;
        border-radius:19px;
    }

    .bertazzoni-book__visual-top{
        top:14px;
        left:14px;
    }

    .bertazzoni-book__brand{
        padding:9px 12px 9px 9px;
    }

    .bertazzoni-book__brand>span{
        width:39px;
        height:39px;
        flex-basis:39px;
    }

    .bertazzoni-book__brand small{
        font-size:16px;
    }

    .bertazzoni-book__brand strong{
        font-size:16px;
    }

    .bertazzoni-book__visual-content{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .bertazzoni-book__visual-content>span{
        font-size:16px;
    }

    .bertazzoni-book__visual-content h3{
        max-width:300px;
        font-size:24px;
    }

    .bertazzoni-book__visual-content p{
        font-size:16px;
    }

    .bertazzoni-book__form{
        border-radius:19px;
    }

    .bertazzoni-book__form-head h3{
        font-size:24px;
    }

    .bertazzoni-book__form-head p{
        font-size:16px;
    }

    .bertazzoni-book__step strong{
        font-size:16px;
    }

    .bertazzoni-book__step p{
        font-size:16px;
    }

    .bertazzoni-book__iframe{
        border-radius:14px;
    }

    .bertazzoni-book__iframe iframe{
        min-height:520px;
    }

    .bertazzoni-book__bottom{
        border-radius:18px;
    }

    .bertazzoni-book__bottom-item{
        min-height:0;
        padding:20px;
    }

    .bertazzoni-book__bottom-item strong{
        font-size:16px;
    }

    .bertazzoni-book__bottom-item p{
        font-size:16px;
    }

}
































/* =========================================================
   SECTION 01 — BRAND APPLIANCE REPAIR HERO
========================================================= */

.brand-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(65px,7vw,105px) 0 var(--section-space);
    background:
        radial-gradient(
            circle at 0% 0%,
            rgba(67,181,160,.12),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #f5fbf9 0%,
            #ffffff 100%
        );
}

.brand-hero::before{
    content:"";
    position:absolute;
    top:-200px;
    right:-210px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:rgba(255,212,0,.055);
}


/* =========================================================
   SECTION 01 — MAIN SHELL
========================================================= */

.brand-hero__shell{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    min-height:650px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:32px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 01 — CONTENT
========================================================= */

.brand-hero__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(42px,5vw,72px);
}


/* =========================================================
   SECTION 01 — TOP LINE
========================================================= */

.brand-hero__topline{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:22px;
}

.brand-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-hero__eyebrow::before{
    content:"";
    flex:0 0 32px;
    width:32px;
    height:2px;
    background:var(--secondary);
}

.brand-hero__location{
    padding-left:16px;
    border-left:1px solid var(--border);
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 01 — HEADING
========================================================= */

.brand-hero h1{
    max-width:720px;
    margin:0 0 23px;
    color:var(--ink);
    font-size:var(--fs-h1);
    font-weight:500;
    line-height:1.01;
    letter-spacing:-.055em;
}

.brand-hero h1 strong{
    display:block;
    margin-top:4px;
    color:var(--primary-dark);
    font-weight:800;
}

.brand-hero__intro{
    max-width:620px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 01 — ACTIONS
========================================================= */

.brand-hero__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.brand-hero__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
    transition:color .25s ease;
}

.brand-hero__link span{
    font-size:16px;
    transition:transform .3s var(--ease);
}

.brand-hero__link:hover{
    color:var(--primary-dark);
}

.brand-hero__link:hover span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 01 — QUICK FEATURES
========================================================= */

.brand-hero__features{
    display:flex;
    flex-direction:column;
    gap:9px;
    margin-top:35px;
}

.brand-hero__feature{
    display:grid;
    grid-template-columns:38px 1fr;
    align-items:center;
    gap:12px;
    max-width:470px;
    padding:11px 0;
    border-bottom:1px solid var(--border);
}

.brand-hero__feature>span{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:10px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.brand-hero__feature>div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.brand-hero__feature strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}

.brand-hero__feature small{
    color:var(--muted);
    font-size:16px;
    line-height:1.4;
}


/* =========================================================
   SECTION 01 — VISUAL
========================================================= */

.brand-hero__visual{
    position:relative;
    min-height:650px;
    overflow:hidden;
    background:var(--bg-dark);
}

.brand-hero__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.brand-hero__visual:hover>img{
    transform:scale(1.04);
}

.brand-hero__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.02) 25%,
            rgba(8,20,17,.13) 55%,
            rgba(8,20,17,.88) 100%
        );
}


/* =========================================================
   SECTION 01 — BRAND CARD
========================================================= */

.brand-hero__brand-card{
    position:absolute;
    z-index:3;
    top:25px;
    left:25px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 15px 11px 11px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:16px;
    background:rgba(12,26,22,.68);
    backdrop-filter:blur(12px);
}

.brand-hero__brand-mark{
    display:grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.brand-hero__brand-card>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.brand-hero__brand-card small{
    color:rgba(255,255,255,.62);
    font-size:16px;
    font-weight:700;
}

.brand-hero__brand-card strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 01 — IMAGE CONTENT
========================================================= */

.brand-hero__visual-content{
    position:absolute;
    z-index:3;
    right:35px;
    bottom:35px;
    left:35px;
}

.brand-hero__visual-content>span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-hero__visual-content h2{
    max-width:520px;
    margin:0;
    color:#fff;
    font-size:clamp(27px,2.4vw,38px);
    font-weight:500;
    line-height:1.12;
    letter-spacing:-.035em;
}

.brand-hero__visual-content h2 strong{
    display:block;
    color:#8ad8c9;
    font-weight:800;
}


/* =========================================================
   SECTION 01 — APPLIANCE STRIP
========================================================= */

.brand-hero__appliances{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
}

.brand-hero__appliance{
    display:flex;
    align-items:center;
    gap:13px;
    min-height:100px;
    padding:21px 23px;
    transition:background .25s ease;
}

.brand-hero__appliance:not(:last-child){
    border-right:1px solid var(--border);
}

.brand-hero__appliance:hover{
    background:var(--bg-soft);
}

.brand-hero__appliance>span{
    display:grid;
    place-items:center;
    flex:0 0 36px;
    width:36px;
    height:36px;
    border-radius:11px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.brand-hero__appliance strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .brand-hero__shell{
        grid-template-columns:1fr 1fr;
    }

    .brand-hero__content{
        padding:45px;
    }

}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-hero__shell{
        grid-template-columns:1fr;
        min-height:0;
    }

    .brand-hero__content{
        padding:50px 40px;
    }

    .brand-hero__visual{
        min-height:520px;
    }

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

    .brand-hero__appliance:nth-child(3){
        border-right:0;
    }

    .brand-hero__appliance:nth-child(-n+3){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-hero{
        padding:60px 0 70px;
    }

    .brand-hero__shell{
        border-radius:23px;
    }

    .brand-hero__content{
        padding:38px 28px;
    }

    .brand-hero__visual{
        min-height:430px;
    }

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

    .brand-hero__appliance:nth-child(3){
        border-right:1px solid var(--border);
    }

    .brand-hero__appliance:nth-child(even){
        border-right:0;
    }

    .brand-hero__appliance:nth-child(-n+4){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-hero__shell{
        border-radius:19px;
    }

    .brand-hero__content{
        padding:31px 21px;
    }

    .brand-hero__topline{
        flex-direction:column;
        align-items:flex-start;
        gap:9px;
    }

    .brand-hero__location{
        padding-left:0;
        border-left:0;
    }

    .brand-hero__intro{
        font-size:16px;
    }

    .brand-hero__actions{
        flex-direction:column;
        align-items:stretch;
        gap:17px;
    }

    .brand-hero__actions .btn{
        width:100%;
    }

    .brand-hero__link{
        justify-content:center;
    }

    .brand-hero__feature>div{
        align-items:flex-start;
        flex-direction:column;
        gap:2px;
    }

    .brand-hero__visual{
        min-height:360px;
    }

    .brand-hero__brand-card{
        top:14px;
        left:14px;
    }

    .brand-hero__visual-content{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .brand-hero__visual-content h2{
        font-size:24px;
    }

    .brand-hero__appliances{
        grid-template-columns:1fr;
        border-radius:18px;
    }

    .brand-hero__appliance{
        min-height:82px;
        padding:18px 20px;
        border-right:0 !important;
        border-bottom:1px solid var(--border);
    }

    .brand-hero__appliance:last-child{
        border-bottom:0;
    }

}




/* =========================================================
   SECTION 02 — APPLIANCES WE SERVICE
========================================================= */

.brand-appliances{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 02 — HEADER
========================================================= */

.brand-appliances__head{
    display:grid;
    grid-template-columns:1.12fr .88fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.brand-appliances__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-appliances__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.brand-appliances__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.brand-appliances__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.brand-appliances__head>p{
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — GRID
========================================================= */

.brand-appliances__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-rows:265px;
    gap:16px;
}


/* =========================================================
   SECTION 02 — CARD
========================================================= */

.brand-appliances__card{
    position:relative;
    overflow:hidden;
    min-width:0;
    border-radius:24px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-sm);
}

.brand-appliances__card--large{
    grid-column:span 2;
    grid-row:span 2;
}

.brand-appliances__card--wide{
    grid-column:span 2;
}

.brand-appliances__card>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.brand-appliances__card:hover>img{
    transform:scale(1.045);
}

.brand-appliances__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(6,16,14,.05) 25%,
            rgba(6,16,14,.24) 58%,
            rgba(6,16,14,.9) 100%
        );
}


/* =========================================================
   SECTION 02 — CARD CONTENT
========================================================= */

.brand-appliances__content{
    position:absolute;
    z-index:2;
    right:24px;
    bottom:24px;
    left:24px;
    display:grid;
    grid-template-columns:40px 1fr;
    align-items:end;
    gap:15px;
}

.brand-appliances__content>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.brand-appliances__content small{
    display:block;
    margin-bottom:5px;
    color:#8bd9ca;
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.brand-appliances__content h3{
    max-width:430px;
    margin:0;
    color:#fff;
    font-size:22px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.03em;
}

.brand-appliances__content p{
    max-width:480px;
    margin:9px 0 0;
    color:rgba(255,255,255,.7);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 02 — LARGE CARD
========================================================= */

.brand-appliances__card--large .brand-appliances__content{
    right:32px;
    bottom:32px;
    left:32px;
}

.brand-appliances__card--large .brand-appliances__content h3{
    max-width:540px;
    font-size:34px;
}

.brand-appliances__card--large .brand-appliances__content p{
    font-size:16px;
}


/* =========================================================
   SECTION 02 — WIDE CARD
========================================================= */

.brand-appliances__card--wide .brand-appliances__content h3{
    max-width:570px;
    font-size:26px;
}


/* =========================================================
   SECTION 02 — RESPONSIVE 1200px
========================================================= */

@media(max-width:1200px){

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

    .brand-appliances__card--large{
        grid-column:span 2;
    }

    .brand-appliances__card--wide{
        grid-column:span 2;
    }

}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-appliances__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .brand-appliances__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-auto-rows:300px;
    }

    .brand-appliances__card--large{
        grid-column:1 / -1;
        grid-row:auto;
        min-height:460px;
    }

    .brand-appliances__card--wide{
        grid-column:1 / -1;
        min-height:340px;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-appliances{
        padding:70px 0;
    }

    .brand-appliances__head{
        margin-bottom:30px;
    }

    .brand-appliances__head>p{
        font-size:16px;
    }

    .brand-appliances__grid{
        grid-template-columns:1fr;
        grid-auto-rows:auto;
        gap:14px;
    }

    .brand-appliances__card,
    .brand-appliances__card--large,
    .brand-appliances__card--wide{
        grid-column:auto;
        grid-row:auto;
        min-height:340px;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-appliances__card,
    .brand-appliances__card--large,
    .brand-appliances__card--wide{
        min-height:310px;
        border-radius:19px;
    }

    .brand-appliances__content,
    .brand-appliances__card--large .brand-appliances__content{
        right:19px;
        bottom:19px;
        left:19px;
        grid-template-columns:35px 1fr;
        gap:12px;
    }

    .brand-appliances__content>span{
        width:34px;
        height:34px;
    }

    .brand-appliances__content h3,
    .brand-appliances__card--large .brand-appliances__content h3,
    .brand-appliances__card--wide .brand-appliances__content h3{
        font-size:22px;
    }

    .brand-appliances__content p,
    .brand-appliances__card--large .brand-appliances__content p{
        font-size:16px;
    }

}




/* =========================================================
   SECTION 03 — BRAND SERVICE EXPERTISE
========================================================= */

.brand-expertise{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.brand-expertise::before{
    content:"";
    position:absolute;
    top:-200px;
    left:-180px;
    width:450px;
    height:450px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}


/* =========================================================
   SECTION 03 — LAYOUT
========================================================= */

.brand-expertise__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.82fr 1.18fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 03 — FEATURED BLOCK
========================================================= */

.brand-expertise__featured{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:620px;
    overflow:hidden;
    padding:clamp(38px,5vw,64px);
    border-radius:30px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(67,181,160,.30),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            #12201d,
            #19332d
        );
    box-shadow:var(--shadow-md);
}

.brand-expertise__featured::after{
    content:"WF";
    position:absolute;
    right:-26px;
    bottom:72px;
    color:rgba(255,255,255,.035);
    font-size:220px;
    font-weight:900;
    line-height:1;
}


/* =========================================================
   SECTION 03 — FEATURED CONTENT
========================================================= */

.brand-expertise__eyebrow{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:19px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-expertise__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:#7bd1c1;
}

.brand-expertise__featured h2{
    position:relative;
    z-index:2;
    max-width:650px;
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(34px,3.2vw,50px);
    font-weight:500;
    line-height:1.06;
    letter-spacing:-.045em;
}

.brand-expertise__featured h2 strong{
    display:block;
    color:#85d5c6;
    font-weight:800;
}

.brand-expertise__featured>p{
    position:relative;
    z-index:2;
    max-width:580px;
    margin:0;
    color:rgba(255,255,255,.68);
    font-size:16px;
    line-height:1.75;
}

.brand-expertise__featured>.btn{
    position:relative;
    z-index:2;
    align-self:flex-start;
    margin-top:30px;
}


/* =========================================================
   SECTION 03 — FEATURED BOTTOM
========================================================= */

.brand-expertise__featured-bottom{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin-top:45px;
    padding-top:25px;
    border-top:1px solid rgba(255,255,255,.12);
}

.brand-expertise__featured-bottom>div{
    padding-right:18px;
}

.brand-expertise__featured-bottom>div:not(:last-child){
    margin-right:18px;
    border-right:1px solid rgba(255,255,255,.12);
}

.brand-expertise__featured-bottom strong{
    display:block;
    margin-bottom:5px;
    color:#fff;
    font-size:16px;
}

.brand-expertise__featured-bottom span{
    display:block;
    color:rgba(255,255,255,.5);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 03 — PROCESS
========================================================= */

.brand-expertise__process{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:30px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 03 — PROCESS HEAD
========================================================= */

.brand-expertise__process-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    min-height:145px;
    padding:30px 32px;
    border-bottom:1px solid var(--border);
}

.brand-expertise__process-head>span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-expertise__process-head>p{
    max-width:430px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 03 — PROCESS ITEM
========================================================= */

.brand-expertise__item{
    display:grid;
    grid-template-columns:62px 1fr 48px;
    align-items:center;
    gap:22px;
    min-height:158px;
    padding:27px 30px;
    transition:
        background .25s ease,
        transform .25s ease;
}

.brand-expertise__item:not(:last-child){
    border-bottom:1px solid var(--border);
}

.brand-expertise__item:hover{
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 03 — NUMBER
========================================================= */

.brand-expertise__number{
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    border-radius:14px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 03 — ITEM CONTENT
========================================================= */

.brand-expertise__item-content>span{
    display:block;
    margin-bottom:6px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.brand-expertise__item-content h3{
    margin:0 0 8px;
    color:var(--ink);
    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.brand-expertise__item-content p{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 03 — ARROW
========================================================= */

.brand-expertise__icon{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    transition:transform .3s var(--ease);
}

.brand-expertise__item:hover .brand-expertise__icon{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 03 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .brand-expertise__layout{
        grid-template-columns:.9fr 1.1fr;
    }

    .brand-expertise__featured{
        padding:40px;
    }

}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-expertise__layout{
        grid-template-columns:1fr;
    }

    .brand-expertise__featured{
        min-height:520px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-expertise{
        padding:70px 0;
    }

    .brand-expertise__featured{
        min-height:0;
        padding:35px 27px;
        border-radius:23px;
    }

    .brand-expertise__featured h2{
        font-size:34px;
    }

    .brand-expertise__featured>p{
        font-size:16px;
    }

    .brand-expertise__featured-bottom{
        grid-template-columns:1fr;
        gap:15px;
    }

    .brand-expertise__featured-bottom>div{
        padding:0 0 15px;
    }

    .brand-expertise__featured-bottom>div:not(:last-child){
        margin:0;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.1);
    }

    .brand-expertise__process{
        border-radius:23px;
    }

    .brand-expertise__process-head{
        align-items:flex-start;
        flex-direction:column;
        min-height:0;
        gap:10px;
        padding:25px;
    }

    .brand-expertise__item{
        grid-template-columns:52px 1fr;
        gap:16px;
        padding:24px;
    }

    .brand-expertise__icon{
        display:none;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-expertise__featured{
        padding:29px 21px;
        border-radius:19px;
    }

    .brand-expertise__featured h2{
        font-size:30px;
    }

    .brand-expertise__eyebrow{
        font-size:16px;
    }

    .brand-expertise__process{
        border-radius:19px;
    }

    .brand-expertise__process-head{
        padding:21px;
    }

    .brand-expertise__process-head>p{
        font-size:16px;
    }

    .brand-expertise__item{
        grid-template-columns:44px 1fr;
        gap:13px;
        padding:21px;
    }

    .brand-expertise__number{
        width:42px;
        height:42px;
    }

    .brand-expertise__item-content h3{
        font-size:18px;
    }

    .brand-expertise__item-content p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 04 — COMMON BRAND APPLIANCE PROBLEMS
========================================================= */

.brand-problems{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.brand-problems::before{
    content:"";
    position:absolute;
    right:-180px;
    bottom:-220px;
    width:470px;
    height:470px;
    border-radius:50%;
    background:rgba(67,181,160,.055);
}


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.brand-problems__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.02fr .98fr;
    align-items:stretch;
    gap:clamp(38px,6vw,85px);
}


/* =========================================================
   SECTION 04 — VISUAL
========================================================= */

.brand-problems__visual{
    position:relative;
    min-height:720px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.brand-problems__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.brand-problems__visual:hover>img{
    transform:scale(1.04);
}

.brand-problems__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.02) 25%,
            rgba(8,20,17,.16) 55%,
            rgba(8,20,17,.88) 100%
        );
}


/* =========================================================
   SECTION 04 — VISUAL CONTENT
========================================================= */

.brand-problems__visual-content{
    position:absolute;
    z-index:2;
    right:32px;
    bottom:135px;
    left:32px;
}

.brand-problems__visual-content>span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.brand-problems__visual-content h3{
    max-width:540px;
    margin:0;
    color:#fff;
    font-size:clamp(28px,2.5vw,39px);
    font-weight:500;
    line-height:1.12;
    letter-spacing:-.035em;
}

.brand-problems__visual-content h3 strong{
    display:block;
    color:#86d6c7;
    font-weight:800;
}


/* =========================================================
   SECTION 04 — VISUAL NOTE
========================================================= */

.brand-problems__visual-note{
    position:absolute;
    z-index:3;
    right:24px;
    bottom:24px;
    left:24px;
    display:grid;
    grid-template-columns:46px 1fr;
    align-items:center;
    gap:14px;
    padding:17px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:18px;
    background:rgba(11,25,22,.72);
    backdrop-filter:blur(14px);
}

.brand-problems__visual-note>span{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    font-weight:900;
}

.brand-problems__visual-note strong{
    display:block;
    margin-bottom:3px;
    color:#fff;
    font-size:16px;
}

.brand-problems__visual-note p{
    margin:0;
    color:rgba(255,255,255,.63);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 04 — CONTENT
========================================================= */

.brand-problems__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:12px 0;
}

.brand-problems__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-problems__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.brand-problems__content h2{
    max-width:650px;
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.brand-problems__content h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.brand-problems__intro{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — PROBLEM LIST
========================================================= */

.brand-problems__list{
    display:flex;
    flex-direction:column;
    margin-top:28px;
    border-top:1px solid var(--border);
}

.brand-problems__item{
    display:grid;
    grid-template-columns:50px 1fr;
    gap:17px;
    padding:20px 0;
    border-bottom:1px solid var(--border);
}

.brand-problems__number{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    background:var(--bg-soft);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.brand-problems__item strong{
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:17px;
    line-height:1.35;
}

.brand-problems__item p{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 04 — ACTION
========================================================= */

.brand-problems__action{
    display:flex;
    align-items:center;
    gap:23px;
    margin-top:27px;
}

.brand-problems__action>p{
    max-width:290px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   SECTION 04 — RESPONSIVE 1100px
========================================================= */

@media(max-width:1100px){

    .brand-problems__layout{
        grid-template-columns:.95fr 1.05fr;
        gap:45px;
    }

}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-problems__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .brand-problems__visual{
        min-height:540px;
    }

    .brand-problems__content{
        padding:0;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-problems{
        padding:70px 0;
    }

    .brand-problems__visual{
        min-height:450px;
        border-radius:23px;
    }

    .brand-problems__visual-content{
        right:24px;
        bottom:138px;
        left:24px;
    }

    .brand-problems__visual-content h3{
        font-size:29px;
    }

    .brand-problems__intro{
        font-size:16px;
    }

    .brand-problems__action{
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-problems__visual{
        min-height:390px;
        border-radius:19px;
    }

    .brand-problems__visual-content{
        right:19px;
        bottom:152px;
        left:19px;
    }

    .brand-problems__visual-content>span{
        font-size:16px;
    }

    .brand-problems__visual-content h3{
        max-width:300px;
        font-size:24px;
    }

    .brand-problems__visual-note{
        right:14px;
        bottom:14px;
        left:14px;
        grid-template-columns:40px 1fr;
        padding:13px;
        border-radius:15px;
    }

    .brand-problems__visual-note>span{
        width:38px;
        height:38px;
    }

    .brand-problems__visual-note strong{
        font-size:16px;
    }

    .brand-problems__visual-note p{
        font-size:16px;
    }

    .brand-problems__item{
        grid-template-columns:44px 1fr;
        gap:13px;
        padding:18px 0;
    }

    .brand-problems__number{
        width:40px;
        height:40px;
    }

    .brand-problems__item strong{
        font-size:16px;
    }

    .brand-problems__item p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 05 — WHY CHOOSE US
========================================================= */

.brand-why{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.brand-why::before{
    content:"";
    position:absolute;
    top:-180px;
    right:-180px;
    width:440px;
    height:440px;
    border-radius:50%;
    background:rgba(67,181,160,.07);
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.brand-why__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.brand-why__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-why__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.brand-why__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.brand-why__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.brand-why__head>p{
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — GRID
========================================================= */

.brand-why__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.08fr .96fr .96fr;
    gap:16px;
}


/* =========================================================
   SECTION 05 — FEATURED CARD
========================================================= */

.brand-why__featured{
    grid-row:span 2;
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-height:560px;
    overflow:hidden;
    padding:34px;
    border-radius:28px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(67,181,160,.28),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #12201d,
            #19342e
        );
    box-shadow:var(--shadow-md);
}

.brand-why__featured::after{
    content:"WF";
    position:absolute;
    right:-25px;
    bottom:65px;
    color:rgba(255,255,255,.04);
    font-size:190px;
    font-weight:900;
    line-height:1;
}


/* =========================================================
   SECTION 05 — FEATURED TOP
========================================================= */

.brand-why__featured-top{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.brand-why__featured-top>span{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.brand-why__featured-top small{
    color:rgba(255,255,255,.52);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 05 — FEATURED CONTENT
========================================================= */

.brand-why__featured-content{
    position:relative;
    z-index:2;
}

.brand-why__featured-content h3{
    max-width:520px;
    margin:0 0 18px;
    color:#fff;
    font-size:clamp(29px,2.7vw,40px);
    font-weight:500;
    line-height:1.1;
    letter-spacing:-.04em;
}

.brand-why__featured-content h3 strong{
    display:block;
    margin-top:3px;
    color:#82d3c4;
    font-weight:800;
}

.brand-why__featured-content p{
    max-width:470px;
    margin:0;
    color:rgba(255,255,255,.67);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 05 — FEATURED LINK
========================================================= */

.brand-why__featured-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:26px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.brand-why__featured-link>span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    transition:transform .3s var(--ease);
}

.brand-why__featured-link:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 05 — FEATURED BOTTOM
========================================================= */

.brand-why__featured-bottom{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    padding-top:23px;
    border-top:1px solid rgba(255,255,255,.12);
}

.brand-why__featured-bottom>div{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.brand-why__featured-bottom span{
    color:rgba(255,255,255,.45);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.brand-why__featured-bottom strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 05 — SMALL CARDS
========================================================= */

.brand-why__card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:272px;
    padding:27px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:24px;
    background:#fff;
    box-shadow:0 10px 30px rgba(23,37,34,.05);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.brand-why__card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 05 — CARD NUMBER
========================================================= */

.brand-why__card-number{
    position:absolute;
    top:22px;
    right:23px;
    color:#c8d5d1;
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 05 — CARD ICON
========================================================= */

.brand-why__card-icon{
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    margin-bottom:auto;
    border-radius:14px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 05 — CARD CONTENT
========================================================= */

.brand-why__card-content{
    padding-top:24px;
}

.brand-why__card-content>span{
    display:block;
    margin-bottom:6px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.brand-why__card-content h3{
    margin:0 0 9px;
    color:var(--ink);
    font-size:20px;
    line-height:1.25;
    letter-spacing:-.025em;
}

.brand-why__card-content p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 05 — RESPONSIVE 1150px
========================================================= */

@media(max-width:1150px){

    .brand-why__grid{
        grid-template-columns:1fr 1fr;
    }

    .brand-why__featured{
        grid-column:1 / -1;
        grid-row:auto;
        min-height:470px;
    }

}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-why__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-why{
        padding:70px 0;
    }

    .brand-why__head{
        margin-bottom:30px;
    }

    .brand-why__head>p{
        font-size:16px;
    }

    .brand-why__grid{
        grid-template-columns:1fr;
    }

    .brand-why__featured{
        grid-column:auto;
        min-height:430px;
        padding:28px;
        border-radius:22px;
    }

    .brand-why__card{
        min-height:240px;
        border-radius:20px;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-why__featured{
        min-height:410px;
        padding:23px;
        border-radius:19px;
    }

    .brand-why__featured-content h3{
        font-size:27px;
    }

    .brand-why__featured-content p{
        font-size:16px;
    }

    .brand-why__featured-bottom{
        grid-template-columns:1fr;
        gap:14px;
    }

    .brand-why__featured-bottom>div:not(:last-child){
        padding-bottom:14px;
        border-bottom:1px solid rgba(255,255,255,.1);
    }

    .brand-why__card{
        min-height:0;
        padding:23px;
        border-radius:18px;
    }

    .brand-why__card-icon{
        margin-bottom:26px;
    }

    .brand-why__card-content{
        padding-top:0;
    }

    .brand-why__card-content h3{
        font-size:18px;
    }

    .brand-why__card-content p{
        font-size:16px;
    }

}







/* =========================================================
   SECTION 06 — BRAND FAQ
========================================================= */

.brand-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.brand-faq::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-200px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.055);
}


/* =========================================================
   SECTION 06 — LAYOUT
========================================================= */

.brand-faq__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.68fr 1.32fr;
    align-items:start;
    gap:clamp(50px,7vw,105px);
}


/* =========================================================
   SECTION 06 — INTRO
========================================================= */

.brand-faq__intro{
    position:sticky;
    top:120px;
}

.brand-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-faq__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.brand-faq__intro h2{
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.brand-faq__intro h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.brand-faq__intro>p{
    max-width:470px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — SUPPORT CARD
========================================================= */

.brand-faq__support{
    margin-top:32px;
    padding:28px;
    overflow:hidden;
    border-radius:24px;
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.25),
            transparent 40%
        ),
        var(--bg-dark);
}

.brand-faq__support>span{
    display:block;
    margin-bottom:10px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.brand-faq__support h3{
    margin:0 0 12px;
    color:#fff;
    font-size:24px;
    line-height:1.2;
    letter-spacing:-.025em;
}

.brand-faq__support p{
    margin:0;
    color:rgba(255,255,255,.65);
    font-size:16px;
    line-height:1.65;
}

.brand-faq__support .btn{
    margin-top:22px;
}


/* =========================================================
   SECTION 06 — FAQ LIST
========================================================= */

.brand-faq__list{
    display:flex;
    flex-direction:column;
    gap:11px;
}


/* =========================================================
   SECTION 06 — FAQ ITEM
========================================================= */

.brand-faq__item{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--bg-soft);
    transition:
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.brand-faq__item[open]{
    border-color:rgba(67,181,160,.42);
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 06 — SUMMARY
========================================================= */

.brand-faq__item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding:23px 24px;
    cursor:pointer;
    list-style:none;
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    line-height:1.4;
}

.brand-faq__item summary::-webkit-details-marker{
    display:none;
}


/* =========================================================
   SECTION 06 — PLUS BUTTON
========================================================= */

.brand-faq__plus{
    position:relative;
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:50%;
    background:rgba(67,181,160,.12);
}

.brand-faq__plus::before,
.brand-faq__plus::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:14px;
    height:2px;
    border-radius:5px;
    background:var(--primary-dark);
    transform:translate(-50%,-50%);
    transition:transform .25s ease;
}

.brand-faq__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.brand-faq__item[open] .brand-faq__plus{
    background:var(--secondary);
}

.brand-faq__item[open] .brand-faq__plus::after{
    transform:translate(-50%,-50%);
}


/* =========================================================
   SECTION 06 — ANSWER
========================================================= */

.brand-faq__answer{
    padding:0 75px 23px 24px;
}

.brand-faq__answer p{
    max-width:760px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-faq__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .brand-faq__intro{
        position:static;
        max-width:760px;
    }

    .brand-faq__support{
        max-width:540px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-faq{
        padding:70px 0;
    }

    .brand-faq__intro>p{
        font-size:16px;
    }

    .brand-faq__item summary{
        padding:20px;
        font-size:16px;
    }

    .brand-faq__answer{
        padding:0 65px 20px 20px;
    }

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-faq__support{
        padding:22px;
        border-radius:19px;
    }

    .brand-faq__support h3{
        font-size:21px;
    }

    .brand-faq__support .btn{
        width:100%;
    }

    .brand-faq__item{
        border-radius:16px;
    }

    .brand-faq__item summary{
        padding:18px;
        gap:15px;
        font-size:16px;
    }

    .brand-faq__plus{
        flex-basis:35px;
        width:35px;
        height:35px;
    }

    .brand-faq__answer{
        padding:0 18px 19px;
    }

    .brand-faq__answer p{
        font-size:16px;
    }

}




/* =========================================================
   SECTION 07 — SCHEDULE SERVICE
========================================================= */

.brand-booking-alt{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 07 — VISUAL HERO
========================================================= */

.brand-booking-alt__hero{
    position:relative;
    min-height:610px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.brand-booking-alt__hero>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.brand-booking-alt__hero:hover>img{
    transform:scale(1.035);
}

.brand-booking-alt__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(7,17,15,.92) 0%,
            rgba(7,17,15,.72) 36%,
            rgba(7,17,15,.22) 68%,
            rgba(7,17,15,.08) 100%
        ),
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(7,17,15,.5) 100%
        );
}


/* =========================================================
   SECTION 07 — HERO CONTENT
========================================================= */

.brand-booking-alt__hero-content{
    position:absolute;
    z-index:3;
    top:50%;
    left:clamp(32px,5vw,72px);
    max-width:650px;
    transform:translateY(-56%);
}

.brand-booking-alt__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.brand-booking-alt__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:#7ed1c2;
}

.brand-booking-alt__hero-content h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(38px,4vw,60px);
    font-weight:500;
    line-height:1.03;
    letter-spacing:-.045em;
}

.brand-booking-alt__hero-content h2 strong{
    display:block;
    color:#87d7c8;
    font-weight:800;
}

.brand-booking-alt__hero-content p{
    max-width:570px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 07 — HERO BADGE
========================================================= */

.brand-booking-alt__hero-badge{
    position:absolute;
    z-index:3;
    top:24px;
    right:24px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 15px 11px 11px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:16px;
    background:rgba(10,24,21,.68);
    backdrop-filter:blur(12px);
}

.brand-booking-alt__hero-badge>span{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.brand-booking-alt__hero-badge>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.brand-booking-alt__hero-badge small{
    color:rgba(255,255,255,.62);
    font-size:16px;
}

.brand-booking-alt__hero-badge strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 07 — HERO BOTTOM
========================================================= */

.brand-booking-alt__hero-bottom{
    position:absolute;
    z-index:3;
    right:24px;
    bottom:24px;
    left:24px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    border-radius:20px;
    background:rgba(10,24,21,.7);
    backdrop-filter:blur(14px);
}

.brand-booking-alt__hero-bottom>div{
    display:grid;
    grid-template-columns:42px 1fr;
    align-items:center;
    gap:13px;
    min-height:92px;
    padding:19px 22px;
}

.brand-booking-alt__hero-bottom>div:not(:last-child){
    border-right:1px solid rgba(255,255,255,.12);
}

.brand-booking-alt__hero-bottom>div>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:rgba(67,181,160,.18);
    color:#8dd9cc;
    font-size:16px;
    font-weight:900;
}

.brand-booking-alt__hero-bottom strong{
    display:block;
    margin-bottom:3px;
    color:#fff;
    font-size:16px;
}

.brand-booking-alt__hero-bottom p{
    margin:0;
    color:rgba(255,255,255,.55);
    font-size:16px;
    line-height:1.45;
}


/* =========================================================
   SECTION 07 — APPOINTMENT PANEL
========================================================= */

.brand-booking-alt__panel{
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:.62fr 1.38fr;
    gap:20px;
    margin:-1px 30px 0;
    padding:18px;
    border:1px solid var(--border);
    border-radius:0 0 28px 28px;
    background:var(--bg-soft);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 07 — PANEL INTRO
========================================================= */

.brand-booking-alt__panel-intro{
    padding:34px 28px;
}

.brand-booking-alt__panel-intro>span{
    display:block;
    margin-bottom:9px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.brand-booking-alt__panel-intro h3{
    margin:0 0 13px;
    color:var(--ink);
    font-size:32px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.035em;
}

.brand-booking-alt__panel-intro>p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 07 — STEPS
========================================================= */

.brand-booking-alt__steps{
    display:flex;
    flex-direction:column;
    margin-top:28px;
    border-top:1px solid var(--border);
}

.brand-booking-alt__steps>div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:13px;
    padding:17px 0;
    border-bottom:1px solid var(--border);
}

.brand-booking-alt__steps>div>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    box-shadow:0 7px 18px rgba(23,37,34,.05);
}

.brand-booking-alt__steps strong{
    display:block;
    margin-bottom:4px;
    color:var(--ink);
    font-size:16px;
}

.brand-booking-alt__steps p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 07 — FORM
========================================================= */

.brand-booking-alt__form{
    overflow:hidden;
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 30px rgba(23,37,34,.06);
}

.brand-booking-alt__form iframe{
    display:block;
    width:100%;
    min-height:450px;
    border:0;
}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .brand-booking-alt__hero{
        min-height:620px;
    }

    .brand-booking-alt__overlay{
        background:
            linear-gradient(
                90deg,
                rgba(7,17,15,.9),
                rgba(7,17,15,.45)
            );
    }

    .brand-booking-alt__panel{
        grid-template-columns:1fr;
        margin:0 18px;
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .brand-booking-alt{
        padding:70px 0;
    }

    .brand-booking-alt__hero{
        min-height:660px;
        border-radius:23px;
    }

    .brand-booking-alt__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,17,15,.35) 0%,
                rgba(7,17,15,.72) 55%,
                rgba(7,17,15,.95) 100%
            );
    }

    .brand-booking-alt__hero-content{
        top:auto;
        right:25px;
        bottom:250px;
        left:25px;
        transform:none;
    }

    .brand-booking-alt__hero-content h2{
        font-size:38px;
    }

    .brand-booking-alt__hero-bottom{
        grid-template-columns:1fr;
    }

    .brand-booking-alt__hero-bottom>div{
        min-height:76px;
    }

    .brand-booking-alt__hero-bottom>div:not(:last-child){
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.1);
    }

    .brand-booking-alt__panel{
        margin:0 10px;
        padding:12px;
        border-radius:0 0 22px 22px;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .brand-booking-alt__hero{
        min-height:780px;
        border-radius:19px;
    }

    .brand-booking-alt__hero-badge{
        top:14px;
        right:14px;
    }

    .brand-booking-alt__hero-content{
        right:20px;
        bottom:345px;
        left:20px;
    }

    .brand-booking-alt__hero-content h2{
        font-size:31px;
    }

    .brand-booking-alt__hero-content p{
        font-size:16px;
    }

    .brand-booking-alt__hero-bottom{
        right:14px;
        bottom:14px;
        left:14px;
        border-radius:16px;
    }

    .brand-booking-alt__hero-bottom>div{
        padding:15px;
    }

    .brand-booking-alt__panel{
        margin:0;
        border-radius:0 0 19px 19px;
    }

    .brand-booking-alt__panel-intro{
        padding:26px 18px;
    }

    .brand-booking-alt__panel-intro h3{
        font-size:26px;
    }

    .brand-booking-alt__panel-intro>p{
        font-size:16px;
    }

    .brand-booking-alt__form{
        border-radius:15px;
    }

    .brand-booking-alt__form iframe{
        min-height:520px;
    }

}


























/* =========================================================
   SECTION 01 — CONTACT HERO
========================================================= */

.contact-hero-unique{
    position:relative;
    overflow:hidden;
    padding:clamp(55px,6vw,90px) 0 var(--section-space);
    background:#fff;
}


/* =========================================================
   SECTION 01 — MAIN VISUAL
========================================================= */

.contact-hero-unique__visual{
    position:relative;
    min-height:720px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.contact-hero-unique__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .9s var(--ease);
}

.contact-hero-unique__visual:hover>img{
    transform:scale(1.035);
}

.contact-hero-unique__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.94) 0%,
            rgba(7,18,15,.78) 35%,
            rgba(7,18,15,.28) 65%,
            rgba(7,18,15,.08) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.03) 0%,
            rgba(0,0,0,.22) 100%
        );
}


/* =========================================================
   SECTION 01 — HERO CONTENT
========================================================= */

.contact-hero-unique__content{
    position:absolute;
    z-index:3;
    top:50%;
    left:clamp(34px,6vw,85px);
    max-width:670px;
    transform:translateY(-50%);
}

.contact-hero-unique__eyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:20px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.contact-hero-unique__eyebrow::before{
    content:"";
    width:36px;
    height:2px;
    background:#7dd1c1;
}

.contact-hero-unique__content h1{
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(46px,5vw,76px);
    font-weight:500;
    line-height:.98;
    letter-spacing:-.055em;
}

.contact-hero-unique__content h1 strong{
    display:block;
    margin-top:6px;
    color:#87d7c8;
    font-weight:800;
}

.contact-hero-unique__content>p{
    max-width:580px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
    line-height:1.75;
}

.contact-hero-unique__content>.btn{
    margin-top:31px;
}


/* =========================================================
   SECTION 01 — SIDE CONTACT PANEL
========================================================= */

.contact-hero-unique__side{
    position:absolute;
    z-index:4;
    top:28px;
    right:28px;
    width:min(360px,34%);
    overflow:hidden;
    border:1px solid rgba(255,255,255,.18);
    border-radius:22px;
    background:rgba(11,25,22,.74);
    backdrop-filter:blur(16px);
}


/* =========================================================
   SECTION 01 — SIDE HEAD
========================================================= */

.contact-hero-unique__side-head{
    display:flex;
    align-items:center;
    gap:13px;
    padding:18px;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.contact-hero-unique__side-head>span{
    display:grid;
    place-items:center;
    flex:0 0 46px;
    width:46px;
    height:46px;
    border-radius:14px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.contact-hero-unique__side-head>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.contact-hero-unique__side-head small{
    color:rgba(255,255,255,.5);
    font-size:16px;
}

.contact-hero-unique__side-head strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 01 — SIDE ITEMS
========================================================= */

.contact-hero-unique__side-list{
    display:flex;
    flex-direction:column;
}

.contact-hero-unique__side-item{
    display:grid;
    grid-template-columns:40px 1fr;
    align-items:start;
    gap:13px;
    padding:17px 18px;
    color:inherit;
}

.contact-hero-unique__side-item:not(:last-child){
    border-bottom:1px solid rgba(255,255,255,.1);
}

.contact-hero-unique__side-item>span{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:11px;
    background:rgba(67,181,160,.17);
    color:#8ad9cb;
    font-size:16px;
    font-weight:900;
}

.contact-hero-unique__side-item small{
    display:block;
    margin-bottom:4px;
    color:rgba(255,255,255,.48);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.contact-hero-unique__side-item strong{
    display:block;
    color:#fff;
    font-size:16px;
    line-height:1.4;
}

.contact-hero-unique__side-item p{
    margin:3px 0 0;
    color:rgba(255,255,255,.55);
    font-size:16px;
    line-height:1.45;
}

a.contact-hero-unique__side-item{
    transition:background .25s ease;
}

a.contact-hero-unique__side-item:hover{
    background:rgba(255,255,255,.055);
}


/* =========================================================
   SECTION 01 — LOCATION LABEL
========================================================= */

.contact-hero-unique__location{
    position:absolute;
    z-index:3;
    right:32px;
    bottom:30px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 17px;
    border-radius:16px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.contact-hero-unique__location>span{
    width:11px;
    height:11px;
    border-radius:50%;
    background:var(--primary);
    box-shadow:0 0 0 6px rgba(67,181,160,.13);
}

.contact-hero-unique__location div{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.contact-hero-unique__location small{
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.contact-hero-unique__location strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 01 — CONTACT OPTIONS
========================================================= */

.contact-hero-unique__options{
    position:relative;
    z-index:5;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin:-22px 34px 0;
}


/* =========================================================
   SECTION 01 — OPTION CARD
========================================================= */

.contact-hero-unique__option{
    display:grid;
    grid-template-columns:46px 1fr 42px;
    align-items:center;
    gap:16px;
    min-height:155px;
    padding:24px;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    box-shadow:var(--shadow-sm);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.contact-hero-unique__option:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-md);
}

.contact-hero-unique__option-number{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:var(--bg-soft);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.contact-hero-unique__option small{
    display:block;
    margin-bottom:4px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.contact-hero-unique__option strong{
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:17px;
    line-height:1.3;
}

.contact-hero-unique__option p{
    max-width:320px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.55;
}

.contact-hero-unique__option>a{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:18px;
    font-weight:800;
    transition:transform .3s var(--ease);
}

.contact-hero-unique__option:hover>a{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 01 — RESPONSIVE 1150px
========================================================= */

@media(max-width:1150px){

    .contact-hero-unique__side{
        width:330px;
    }

    .contact-hero-unique__options{
        grid-template-columns:1fr 1fr;
    }

    .contact-hero-unique__option:last-child{
        grid-column:1 / -1;
    }

}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .contact-hero-unique__visual{
        min-height:760px;
    }

    .contact-hero-unique__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.82) 0%,
                rgba(7,18,15,.58) 48%,
                rgba(7,18,15,.86) 100%
            );
    }

    .contact-hero-unique__content{
        top:85px;
        right:40px;
        left:40px;
        max-width:650px;
        transform:none;
    }

    .contact-hero-unique__side{
        top:auto;
        right:28px;
        bottom:28px;
        left:28px;
        width:auto;
    }

    .contact-hero-unique__side-list{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .contact-hero-unique__side-item{
        border-bottom:0 !important;
    }

    .contact-hero-unique__side-item:not(:last-child){
        border-right:1px solid rgba(255,255,255,.1);
    }

    .contact-hero-unique__location{
        display:none;
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .contact-hero-unique{
        padding:55px 0 70px;
    }

    .contact-hero-unique__visual{
        min-height:850px;
        border-radius:23px;
    }

    .contact-hero-unique__content{
        top:50px;
        right:25px;
        left:25px;
    }

    .contact-hero-unique__content h1{
        font-size:46px;
    }

    .contact-hero-unique__content>p{
        font-size:16px;
    }

    .contact-hero-unique__side{
        right:18px;
        bottom:18px;
        left:18px;
    }

    .contact-hero-unique__side-list{
        grid-template-columns:1fr;
    }

    .contact-hero-unique__side-item:not(:last-child){
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.1) !important;
    }

    .contact-hero-unique__options{
        grid-template-columns:1fr;
        margin:14px 0 0;
    }

    .contact-hero-unique__option:last-child{
        grid-column:auto;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .contact-hero-unique__visual{
        min-height:860px;
        border-radius:19px;
    }

    .contact-hero-unique__content{
        top:40px;
        right:20px;
        left:20px;
    }

    .contact-hero-unique__eyebrow{
        font-size:16px;
    }

    .contact-hero-unique__content h1{
        font-size:38px;
    }

    .contact-hero-unique__content>.btn{
        width:100%;
    }

    .contact-hero-unique__side{
        right:13px;
        bottom:13px;
        left:13px;
        border-radius:18px;
    }

    .contact-hero-unique__side-head{
        padding:15px;
    }

    .contact-hero-unique__side-item{
        padding:15px;
    }

    .contact-hero-unique__option{
        grid-template-columns:42px 1fr;
        gap:14px;
        padding:20px;
        border-radius:18px;
    }

    .contact-hero-unique__option>a{
        display:none;
    }

    .contact-hero-unique__option strong{
        font-size:16px;
    }

}








/* =========================================================
   SECTION 02 — GET IN TOUCH
========================================================= */

.contact-form-section{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.contact-form-section::before{
    content:"";
    position:absolute;
    right:-210px;
    bottom:-230px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:rgba(67,181,160,.065);
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.contact-form-section__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 02 — INTRO
========================================================= */

.contact-form-section__intro{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(38px,5vw,62px);
    border-radius:28px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(67,181,160,.25),
            transparent 36%
        ),
        var(--bg-dark);
}

.contact-form-section__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.contact-form-section__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:#7dd1c1;
}

.contact-form-section__intro h2{
    margin:0 0 20px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.06;
    letter-spacing:-.04em;
}

.contact-form-section__intro h2 strong{
    display:block;
    color:#87d7c8;
    font-weight:800;
}

.contact-form-section__intro>p{
    max-width:560px;
    margin:0;
    color:rgba(255,255,255,.68);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — CONTACT CHANNELS
========================================================= */

.contact-form-section__channels{
    display:flex;
    flex-direction:column;
    margin-top:32px;
    border-top:1px solid rgba(255,255,255,.12);
}

.contact-form-section__channel{
    display:grid;
    grid-template-columns:42px 1fr 34px;
    align-items:center;
    gap:13px;
    padding:18px 0;
    color:inherit;
}

.contact-form-section__channel:not(:last-child){
    border-bottom:1px solid rgba(255,255,255,.1);
}

.contact-form-section__channel>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:rgba(67,181,160,.18);
    color:#8bd9cb;
    font-size:16px;
    font-weight:900;
}

.contact-form-section__channel small{
    display:block;
    margin-bottom:4px;
    color:rgba(255,255,255,.45);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.contact-form-section__channel strong{
    display:block;
    color:#fff;
    font-size:16px;
    line-height:1.4;
}

.contact-form-section__channel p{
    margin:3px 0 0;
    color:rgba(255,255,255,.52);
    font-size:16px;
}

.contact-form-section__channel>b{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

a.contact-form-section__channel:hover>b{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 02 — NOTE
========================================================= */

.contact-form-section__note{
    display:grid;
    grid-template-columns:45px 1fr;
    gap:13px;
    margin-top:30px;
    padding:17px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:17px;
    background:rgba(255,255,255,.045);
}

.contact-form-section__note>span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.contact-form-section__note strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:16px;
}

.contact-form-section__note p{
    margin:0;
    color:rgba(255,255,255,.53);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   SECTION 02 — FORM
========================================================= */

.contact-form-section__form{
    padding:clamp(30px,4vw,52px);
    border:1px solid var(--border);
    border-radius:28px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.contact-form-section__form-head{
    margin-bottom:32px;
}

.contact-form-section__form-head>span{
    display:block;
    margin-bottom:8px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.contact-form-section__form-head h3{
    margin:0 0 10px;
    color:var(--ink);
    font-size:clamp(27px,2.5vw,36px);
    font-weight:800;
    line-height:1.18;
    letter-spacing:-.035em;
}

.contact-form-section__form-head p{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 02 — FIELDS
========================================================= */

.contact-form-section__fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px 16px;
}

.contact-form-section__field{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.contact-form-section__field--full{
    grid-column:1 / -1;
}

.contact-form-section__field label{
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.contact-form-section__field input,
.contact-form-section__field textarea{
    width:100%;
    border:1px solid var(--border);
    border-radius:14px;
    outline:none;
    background:var(--bg-soft);
    color:var(--ink);
    font-family:inherit;
    font-size:16px;
    transition:
        border-color .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

.contact-form-section__field input{
    height:54px;
    padding:0 16px;
}

.contact-form-section__field textarea{
    min-height:150px;
    padding:15px 16px;
    resize:vertical;
}

.contact-form-section__field input::placeholder,
.contact-form-section__field textarea::placeholder{
    color:#9ba6a2;
}

.contact-form-section__field input:focus,
.contact-form-section__field textarea:focus{
    border-color:rgba(67,181,160,.65);
    background:#fff;
    box-shadow:0 0 0 4px rgba(67,181,160,.08);
}


/* =========================================================
   SECTION 02 — CONSENT
========================================================= */

.contact-form-section__consent{
    grid-column:1 / -1;
    display:flex;
    align-items:flex-start;
    gap:11px;
    padding:16px;
    border-radius:14px;
    background:var(--bg-soft);
    cursor:pointer;
}

.contact-form-section__consent input{
    flex:0 0 auto;
    width:17px;
    height:17px;
    margin-top:2px;
    accent-color:var(--primary);
}

.contact-form-section__consent span{
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 02 — SUBMIT
========================================================= */

.contact-form-section__submit{
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    gap:20px;
    padding-top:4px;
}

.contact-form-section__submit .btn{
    min-width:190px;
}

.contact-form-section__submit p{
    max-width:380px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .contact-form-section__layout{
        grid-template-columns:1fr;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .contact-form-section{
        padding:70px 0;
    }

    .contact-form-section__intro,
    .contact-form-section__form{
        border-radius:22px;
    }

    .contact-form-section__intro{
        padding:34px 27px;
    }

    .contact-form-section__form{
        padding:30px 24px;
    }

    .contact-form-section__fields{
        grid-template-columns:1fr;
    }

    .contact-form-section__field--full,
    .contact-form-section__consent,
    .contact-form-section__submit{
        grid-column:auto;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .contact-form-section__intro,
    .contact-form-section__form{
        border-radius:19px;
    }

    .contact-form-section__intro{
        padding:29px 21px;
    }

    .contact-form-section__form{
        padding:25px 19px;
    }

    .contact-form-section__form-head h3{
        font-size:26px;
    }

    .contact-form-section__submit{
        align-items:stretch;
        flex-direction:column;
    }

    .contact-form-section__submit .btn{
        width:100%;
    }

}





/* =========================================================
   SECTION 03 — SERVICE AREA & HOURS
========================================================= */

.contact-area-hours{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 03 — MAIN SHELL
========================================================= */

.contact-area-hours__shell{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}


/* =========================================================
   SECTION 03 — SERVICE AREA
========================================================= */

.contact-area-hours__area{
    position:relative;
    overflow:hidden;
    padding:clamp(40px,5vw,70px);
    background:
        radial-gradient(
            circle at 0% 100%,
            rgba(67,181,160,.24),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            #142722,
            #0f1c19
        );
}

.contact-area-hours__area::after{
    content:"FL";
    position:absolute;
    right:-25px;
    bottom:-25px;
    color:rgba(255,255,255,.035);
    font-size:220px;
    font-weight:900;
    line-height:1;
}


/* =========================================================
   SECTION 03 — EYEBROW
========================================================= */

.contact-area-hours__eyebrow{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.contact-area-hours__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:#7bd1c1;
}


/* =========================================================
   SECTION 03 — TITLE
========================================================= */

.contact-area-hours__area h2{
    position:relative;
    z-index:2;
    max-width:650px;
    margin:0 0 20px;
    color:#fff;
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.06;
    letter-spacing:-.04em;
}

.contact-area-hours__area h2 strong{
    display:block;
    color:#86d6c7;
    font-weight:800;
}

.contact-area-hours__area>p{
    position:relative;
    z-index:2;
    max-width:590px;
    margin:0;
    color:rgba(255,255,255,.67);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 03 — CITY CHIPS
========================================================= */

.contact-area-hours__cities{
    position:relative;
    z-index:2;
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:31px;
}

.contact-area-hours__cities span{
    padding:10px 14px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:100px;
    background:rgba(255,255,255,.055);
    color:#fff;
    font-size:16px;
    font-weight:700;
    transition:
        background .25s ease,
        border-color .25s ease;
}

.contact-area-hours__cities span:hover{
    border-color:rgba(67,181,160,.55);
    background:rgba(67,181,160,.13);
}


/* =========================================================
   SECTION 03 — AREA LINK
========================================================= */

.contact-area-hours__area-link{
    position:relative;
    z-index:2;
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:32px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.contact-area-hours__area-link>span{
    display:grid;
    place-items:center;
    width:39px;
    height:39px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    transition:transform .3s var(--ease);
}

.contact-area-hours__area-link:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 03 — HOURS PANEL
========================================================= */

.contact-area-hours__hours{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(36px,4vw,58px);
    background:#fff;
}


/* =========================================================
   SECTION 03 — HOURS TOP
========================================================= */

.contact-area-hours__hours-top{
    display:flex;
    align-items:center;
    gap:15px;
    padding-bottom:24px;
    border-bottom:1px solid var(--border);
}

.contact-area-hours__hours-number{
    display:grid;
    place-items:center;
    flex:0 0 58px;
    width:58px;
    height:58px;
    border-radius:17px;
    background:var(--secondary);
    color:var(--ink);
    font-size:17px;
    font-weight:900;
}

.contact-area-hours__hours-top>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.contact-area-hours__hours-top small{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.contact-area-hours__hours-top strong{
    color:var(--ink);
    font-size:21px;
    line-height:1.3;
}


/* =========================================================
   SECTION 03 — HOURS LIST
========================================================= */

.contact-area-hours__schedule{
    display:flex;
    flex-direction:column;
    margin-top:9px;
}

.contact-area-hours__schedule>div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:15px 0;
    border-bottom:1px solid var(--border);
}

.contact-area-hours__schedule span{
    color:var(--muted);
    font-size:16px;
}

.contact-area-hours__schedule strong{
    color:var(--ink);
    font-size:16px;
}

.contact-area-hours__schedule-off strong{
    color:var(--primary-dark);
}


/* =========================================================
   SECTION 03 — CTA
========================================================= */

.contact-area-hours__cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:27px;
}

.contact-area-hours__cta>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.contact-area-hours__cta small{
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.contact-area-hours__cta>div>a{
    color:var(--ink);
    font-size:20px;
    font-weight:800;
}


/* =========================================================
   SECTION 03 — BOTTOM MESSAGE
========================================================= */

.contact-area-hours__bottom{
    display:grid;
    grid-template-columns:54px 1fr auto;
    align-items:center;
    gap:18px;
    margin-top:18px;
    padding:22px 26px;
    border:1px solid var(--border);
    border-radius:20px;
    background:var(--bg-soft);
}

.contact-area-hours__bottom-mark{
    display:grid;
    place-items:center;
    width:50px;
    height:50px;
    border-radius:14px;
    background:var(--primary);
    color:#fff;
    font-size:16px;
    font-weight:900;
}

.contact-area-hours__bottom>div:nth-child(2){
    display:flex;
    flex-direction:column;
    gap:3px;
}

.contact-area-hours__bottom>div:nth-child(2)>span{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.contact-area-hours__bottom>div:nth-child(2)>strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.45;
}

.contact-area-hours__bottom>a{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.contact-area-hours__bottom>a>span{
    display:grid;
    place-items:center;
    width:39px;
    height:39px;
    border-radius:50%;
    background:var(--secondary);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.contact-area-hours__bottom>a:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .contact-area-hours__shell{
        grid-template-columns:1fr;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .contact-area-hours{
        padding:70px 0;
    }

    .contact-area-hours__shell{
        border-radius:23px;
    }

    .contact-area-hours__area{
        padding:35px 27px;
    }

    .contact-area-hours__hours{
        padding:35px 27px;
    }

    .contact-area-hours__bottom{
        grid-template-columns:50px 1fr;
    }

    .contact-area-hours__bottom>a{
        grid-column:1 / -1;
        justify-content:flex-end;
        padding-top:15px;
        border-top:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .contact-area-hours__shell{
        border-radius:19px;
    }

    .contact-area-hours__area,
    .contact-area-hours__hours{
        padding:29px 21px;
    }

    .contact-area-hours__cities span{
        padding:9px 12px;
        font-size:16px;
    }

    .contact-area-hours__hours-top strong{
        font-size:18px;
    }

    .contact-area-hours__schedule>div{
        align-items:flex-start;
        flex-direction:column;
        gap:4px;
    }

    .contact-area-hours__cta{
        align-items:stretch;
        flex-direction:column;
    }

    .contact-area-hours__cta .btn{
        width:100%;
    }

    .contact-area-hours__bottom{
        grid-template-columns:1fr;
        padding:20px;
        border-radius:17px;
    }

    .contact-area-hours__bottom-mark{
        width:44px;
        height:44px;
    }

    .contact-area-hours__bottom>a{
        grid-column:auto;
        justify-content:space-between;
    }

}



























/* =========================================================
   SECTION 01 — LOCATIONS HERO
========================================================= */

.locations-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(55px,6vw,90px) 0 var(--section-space);
    background:#fff;
}


/* =========================================================
   SECTION 01 — MAIN HERO
========================================================= */

.locations-hero__visual{
    position:relative;
    min-height:760px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.locations-hero__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .9s var(--ease);
}

.locations-hero__visual:hover>img{
    transform:scale(1.035);
}

.locations-hero__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.93) 0%,
            rgba(7,18,15,.72) 36%,
            rgba(7,18,15,.22) 68%,
            rgba(7,18,15,.05) 100%
        ),
        linear-gradient(
            180deg,
            rgba(7,18,15,.02) 40%,
            rgba(7,18,15,.32) 100%
        );
}


/* =========================================================
   SECTION 01 — HERO CONTENT
========================================================= */

.locations-hero__content{
    position:absolute;
    z-index:3;
    top:50%;
    left:clamp(35px,6vw,85px);
    max-width:690px;
    transform:translateY(-50%);
}

.locations-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:19px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.locations-hero__eyebrow::before{
    content:"";
    width:36px;
    height:2px;
    background:#7dd1c1;
}

.locations-hero__content h1{
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(46px,5vw,76px);
    font-weight:500;
    line-height:.98;
    letter-spacing:-.055em;
}

.locations-hero__content h1 strong{
    display:block;
    margin-top:5px;
    color:#87d7c8;
    font-weight:800;
}

.locations-hero__content>p{
    max-width:600px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:18px;
    line-height:1.75;
}


/* =========================================================
   SECTION 01 — ACTIONS
========================================================= */

.locations-hero__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.locations-hero__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.locations-hero__link span{
    font-size:17px;
    transition:transform .3s var(--ease);
}

.locations-hero__link:hover span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 01 — LOCATION BOARD
========================================================= */

.locations-hero__board{
    position:absolute;
    z-index:4;
    top:28px;
    right:28px;
    width:360px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.17);
    border-radius:22px;
    background:rgba(11,25,22,.75);
    backdrop-filter:blur(16px);
}


/* =========================================================
   SECTION 01 — BOARD HEAD
========================================================= */

.locations-hero__board-head{
    display:flex;
    align-items:center;
    gap:13px;
    padding:18px;
    border-bottom:1px solid rgba(255,255,255,.11);
}

.locations-hero__board-mark{
    display:grid;
    place-items:center;
    flex:0 0 46px;
    width:46px;
    height:46px;
    border-radius:14px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.locations-hero__board-head>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.locations-hero__board-head small{
    color:rgba(255,255,255,.47);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.locations-hero__board-head strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 01 — BOARD LIST
========================================================= */

.locations-hero__board-list{
    display:flex;
    flex-direction:column;
}

.locations-hero__board-list>a{
    display:grid;
    grid-template-columns:35px 1fr 30px;
    align-items:center;
    gap:11px;
    padding:14px 18px;
    color:#fff;
    transition:background .25s ease;
}

.locations-hero__board-list>a:not(:last-child){
    border-bottom:1px solid rgba(255,255,255,.09);
}

.locations-hero__board-list>a:hover{
    background:rgba(255,255,255,.055);
}

.locations-hero__board-list>a>span{
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border-radius:10px;
    background:rgba(67,181,160,.17);
    color:#8bd9cb;
    font-size:16px;
    font-weight:900;
}

.locations-hero__board-list strong{
    font-size:16px;
    line-height:1.4;
}

.locations-hero__board-list b{
    font-size:16px;
    font-weight:700;
    text-align:right;
}


/* =========================================================
   SECTION 01 — BOARD FOOT
========================================================= */

.locations-hero__board-all{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:16px 18px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    border-top:1px solid rgba(255,255,255,.1);
}

.locations-hero__board-all span{
    font-size:16px;
}


/* =========================================================
   SECTION 01 — AREA LABEL
========================================================= */

.locations-hero__area-label{
    position:absolute;
    z-index:3;
    right:32px;
    bottom:30px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 17px;
    border-radius:16px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.locations-hero__area-label>span{
    width:11px;
    height:11px;
    border-radius:50%;
    background:var(--primary);
    box-shadow:0 0 0 6px rgba(67,181,160,.14);
}

.locations-hero__area-label>div{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.locations-hero__area-label small{
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.locations-hero__area-label strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 01 — QUICK LOCATION NAV
========================================================= */

.locations-hero__nav{
    position:relative;
    z-index:5;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    margin:-22px 34px 0;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.locations-hero__nav-item{
    display:grid;
    grid-template-columns:40px 1fr 32px;
    align-items:center;
    gap:12px;
    min-height:110px;
    padding:20px;
    color:inherit;
    transition:background .25s ease;
}

.locations-hero__nav-item:not(:last-child){
    border-right:1px solid var(--border);
}

.locations-hero__nav-item:hover{
    background:var(--bg-soft);
}

.locations-hero__nav-item>span{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:11px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.locations-hero__nav-item>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.locations-hero__nav-item strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}

.locations-hero__nav-item small{
    color:var(--muted);
    font-size:16px;
}

.locations-hero__nav-item>b{
    color:var(--primary-dark);
    font-size:17px;
    text-align:right;
    transition:transform .3s var(--ease);
}

.locations-hero__nav-item:hover>b{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 01 — RESPONSIVE 1150px
========================================================= */

@media(max-width:1150px){

    .locations-hero__board{
        width:330px;
    }

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

    .locations-hero__nav-item:nth-child(2){
        border-right:0;
    }

    .locations-hero__nav-item:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .locations-hero__visual{
        min-height:840px;
    }

    .locations-hero__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.78) 0%,
                rgba(7,18,15,.52) 48%,
                rgba(7,18,15,.86) 100%
            );
    }

    .locations-hero__content{
        top:75px;
        right:40px;
        left:40px;
        max-width:680px;
        transform:none;
    }

    .locations-hero__board{
        top:auto;
        right:28px;
        bottom:28px;
        left:28px;
        width:auto;
    }

    .locations-hero__board-list{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .locations-hero__board-list>a{
        border-bottom:1px solid rgba(255,255,255,.09);
    }

    .locations-hero__board-list>a:nth-child(odd){
        border-right:1px solid rgba(255,255,255,.09);
    }

    .locations-hero__area-label{
        display:none;
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-hero{
        padding:55px 0 70px;
    }

    .locations-hero__visual{
        min-height:930px;
        border-radius:23px;
    }

    .locations-hero__content{
        top:50px;
        right:25px;
        left:25px;
    }

    .locations-hero__content h1{
        font-size:45px;
    }

    .locations-hero__content>p{
        font-size:16px;
    }

    .locations-hero__actions{
        flex-direction:column;
        align-items:flex-start;
        gap:17px;
    }

    .locations-hero__board{
        right:18px;
        bottom:18px;
        left:18px;
    }

    .locations-hero__board-list{
        grid-template-columns:1fr;
    }

    .locations-hero__board-list>a:nth-child(odd){
        border-right:0;
    }

    .locations-hero__nav{
        grid-template-columns:1fr;
        margin:14px 0 0;
    }

    .locations-hero__nav-item{
        border-right:0 !important;
        border-bottom:1px solid var(--border);
    }

    .locations-hero__nav-item:last-child{
        border-bottom:0;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-hero__visual{
        min-height:950px;
        border-radius:19px;
    }

    .locations-hero__content{
        top:40px;
        right:20px;
        left:20px;
    }

    .locations-hero__eyebrow{
        font-size:16px;
    }

    .locations-hero__content h1{
        font-size:38px;
    }

    .locations-hero__actions .btn{
        width:100%;
    }

    .locations-hero__board{
        right:13px;
        bottom:13px;
        left:13px;
        border-radius:18px;
    }

    .locations-hero__board-head{
        padding:15px;
    }

    .locations-hero__board-list>a{
        padding:13px 15px;
    }

    .locations-hero__nav{
        border-radius:18px;
    }

    .locations-hero__nav-item{
        min-height:92px;
        padding:17px;
    }

}






/* =========================================================
   SECTION 02 — SERVICE LOCATIONS GRID
========================================================= */

.locations-grid{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}

.locations-grid::before{
    content:"";
    position:absolute;
    right:-220px;
    bottom:-230px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:rgba(67,181,160,.06);
}


/* =========================================================
   SECTION 02 — HEADER
========================================================= */

.locations-grid__head{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.locations-grid__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.locations-grid__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.locations-grid__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.locations-grid__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.locations-grid__head>p{
    max-width:530px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.locations-grid__layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 02 — FEATURED LOCATION
========================================================= */

.locations-grid__featured{
    position:relative;
    min-height:760px;
    overflow:hidden;
    border-radius:28px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.locations-grid__featured>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.locations-grid__featured:hover>img{
    transform:scale(1.04);
}

.locations-grid__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.05) 20%,
            rgba(7,18,15,.18) 50%,
            rgba(7,18,15,.92) 100%
        );
}


/* =========================================================
   SECTION 02 — FEATURED TOP
========================================================= */

.locations-grid__featured-top{
    position:absolute;
    z-index:3;
    top:25px;
    left:25px;
    display:flex;
    align-items:center;
    gap:12px;
}

.locations-grid__featured-top>span{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.locations-grid__featured-top small{
    padding:10px 13px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:100px;
    background:rgba(11,25,22,.65);
    color:#fff;
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    backdrop-filter:blur(10px);
}


/* =========================================================
   SECTION 02 — FEATURED CONTENT
========================================================= */

.locations-grid__featured-content{
    position:absolute;
    z-index:3;
    right:32px;
    bottom:34px;
    left:32px;
}

.locations-grid__featured-content>span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.locations-grid__featured-content h3{
    margin:0 0 13px;
    color:#fff;
    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.locations-grid__featured-content h3 strong{
    display:block;
    color:#87d7c8;
    font-weight:800;
}

.locations-grid__featured-content p{
    max-width:510px;
    margin:0;
    color:rgba(255,255,255,.69);
    font-size:16px;
    line-height:1.7;
}

.locations-grid__featured-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:25px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.locations-grid__featured-link>span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.locations-grid__featured-link:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 02 — LOCATION CARDS GRID
========================================================= */

.locations-grid__cards{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}


/* =========================================================
   SECTION 02 — CARD
========================================================= */

.locations-grid__card{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:22px;
    background:#fff;
    box-shadow:0 9px 28px rgba(23,37,34,.05);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.locations-grid__card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 02 — CARD IMAGE
========================================================= */

.locations-grid__card-image{
    position:relative;
    height:190px;
    overflow:hidden;
}

.locations-grid__card-image>img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.locations-grid__card:hover .locations-grid__card-image>img{
    transform:scale(1.05);
}

.locations-grid__card-image>span{
    position:absolute;
    top:14px;
    left:14px;
    display:grid;
    place-items:center;
    width:37px;
    height:37px;
    border-radius:11px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 02 — CARD BODY
========================================================= */

.locations-grid__card-body{
    padding:20px;
}

.locations-grid__card-body>small{
    display:block;
    margin-bottom:5px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.locations-grid__card-body h3{
    margin:0 0 8px;
    color:var(--ink);
    font-size:21px;
    line-height:1.25;
    letter-spacing:-.025em;
}

.locations-grid__card-body p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}

.locations-grid__card-body>a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:17px;
    padding-top:15px;
    border-top:1px solid var(--border);
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.locations-grid__card-body>a>span{
    color:var(--primary-dark);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.locations-grid__card:hover .locations-grid__card-body>a>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 02 — RESPONSIVE 1200px
========================================================= */

@media(max-width:1200px){

    .locations-grid__layout{
        grid-template-columns:.85fr 1.15fr;
    }

}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .locations-grid__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .locations-grid__layout{
        grid-template-columns:1fr;
    }

    .locations-grid__featured{
        min-height:550px;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-grid{
        padding:70px 0;
    }

    .locations-grid__head{
        margin-bottom:30px;
    }

    .locations-grid__head>p{
        font-size:16px;
    }

    .locations-grid__featured{
        min-height:470px;
        border-radius:23px;
    }

    .locations-grid__cards{
        grid-template-columns:1fr;
    }

    .locations-grid__card-image{
        height:230px;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-grid__featured{
        min-height:420px;
        border-radius:19px;
    }

    .locations-grid__featured-top{
        top:15px;
        left:15px;
    }

    .locations-grid__featured-content{
        right:20px;
        bottom:21px;
        left:20px;
    }

    .locations-grid__featured-content h3{
        font-size:29px;
    }

    .locations-grid__featured-content p{
        font-size:16px;
    }

    .locations-grid__card{
        border-radius:18px;
    }

    .locations-grid__card-image{
        height:210px;
    }

    .locations-grid__card-body{
        padding:18px;
    }

    .locations-grid__card-body h3{
        font-size:19px;
    }

}








/* =========================================================
   SECTION 03 — HOW LOCAL SERVICE WORKS
========================================================= */

.locations-process{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}

.locations-process::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-210px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:rgba(67,181,160,.055);
}


/* =========================================================
   SECTION 03 — HEADER
========================================================= */

.locations-process__head{
    position:relative;
    z-index:2;
    margin-bottom:44px;
}

.locations-process__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.locations-process__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.locations-process__head-row{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:end;
    gap:70px;
}

.locations-process__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.locations-process__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.locations-process__head-row>p{
    max-width:540px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 03 — PROCESS TRACK
========================================================= */

.locations-process__track{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:28px;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 03 — STEP
========================================================= */

.locations-process__step{
    position:relative;
    min-height:370px;
    padding:31px 28px;
    background:var(--bg-soft);
    transition:background .3s ease;
}

.locations-process__step:not(:last-child){
    border-right:1px solid var(--border);
}

.locations-process__step:hover{
    background:#fff;
}


/* =========================================================
   SECTION 03 — STEP TOP
========================================================= */

.locations-process__step-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:68px;
}

.locations-process__step-top>span{
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    border-radius:14px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    box-shadow:0 8px 22px rgba(23,37,34,.06);
}

.locations-process__step-top small{
    color:var(--muted);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 03 — STEP CONTENT
========================================================= */

.locations-process__step h3{
    max-width:250px;
    margin:0 0 13px;
    color:var(--ink);
    font-size:23px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.03em;
}

.locations-process__step>p{
    max-width:290px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 03 — CONNECTOR LINE
========================================================= */

.locations-process__line{
    position:absolute;
    top:53px;
    right:-1px;
    width:55px;
    height:1px;
    background:var(--primary);
    transform:translateX(50%);
    z-index:3;
}

.locations-process__line::after{
    content:"";
    position:absolute;
    top:50%;
    right:0;
    width:7px;
    height:7px;
    border-top:1px solid var(--primary);
    border-right:1px solid var(--primary);
    transform:translateY(-50%) rotate(45deg);
}


/* =========================================================
   SECTION 03 — ACCENT STEP
========================================================= */

.locations-process__step--accent{
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);
}

.locations-process__step--accent:hover{
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.35),
            transparent 40%
        ),
        #172a26;
}

.locations-process__step--accent .locations-process__step-top>span{
    background:var(--secondary);
    color:var(--ink);
}

.locations-process__step--accent .locations-process__step-top small{
    color:rgba(255,255,255,.5);
}

.locations-process__step--accent h3{
    color:#fff;
}

.locations-process__step--accent>p{
    color:rgba(255,255,255,.62);
}

.locations-process__step--accent>a{
    position:absolute;
    right:28px;
    bottom:28px;
    left:28px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.12);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.locations-process__step--accent>a>span{
    display:grid;
    place-items:center;
    width:39px;
    height:39px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.locations-process__step--accent>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 03 — BOTTOM BAR
========================================================= */

.locations-process__bottom{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:16px;
    padding:21px 25px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
}

.locations-process__bottom>div{
    display:flex;
    align-items:center;
    gap:15px;
}

.locations-process__status{
    flex:0 0 13px;
    width:13px;
    height:13px;
    border-radius:50%;
    background:var(--primary);
    box-shadow:0 0 0 7px rgba(67,181,160,.12);
}

.locations-process__bottom>div>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.locations-process__bottom small{
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.locations-process__bottom strong{
    color:var(--ink);
    font-size:16px;
}

.locations-process__bottom>a{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.locations-process__bottom>a>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--secondary);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.locations-process__bottom>a:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:1100px){

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

    .locations-process__step{
        min-height:330px;
    }

    .locations-process__step:nth-child(2){
        border-right:0;
    }

    .locations-process__step:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

    .locations-process__line{
        display:none;
    }

}


@media(max-width:992px){

    .locations-process__head-row{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-process{
        padding:70px 0;
    }

    .locations-process__head{
        margin-bottom:30px;
    }

    .locations-process__head-row>p{
        font-size:16px;
    }

    .locations-process__track{
        grid-template-columns:1fr;
        border-radius:22px;
    }

    .locations-process__step{
        min-height:0;
        padding:27px;
        border-right:0 !important;
        border-bottom:1px solid var(--border);
    }

    .locations-process__step:last-child{
        min-height:315px;
        border-bottom:0;
    }

    .locations-process__step-top{
        margin-bottom:35px;
    }

    .locations-process__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-process__track{
        border-radius:18px;
    }

    .locations-process__step{
        padding:22px;
    }

    .locations-process__step h3{
        max-width:100%;
        font-size:20px;
    }

    .locations-process__step>p{
        max-width:100%;
        font-size:16px;
    }

    .locations-process__step--accent>a{
        right:22px;
        bottom:22px;
        left:22px;
    }

    .locations-process__bottom{
        padding:20px;
        border-radius:16px;
    }

    .locations-process__bottom>a{
        width:100%;
        justify-content:space-between;
        padding-top:15px;
        border-top:1px solid var(--border);
    }

}




/* =========================================================
   SECTION 04 — LOCAL COVERAGE ADVANTAGE
========================================================= */

.locations-coverage-new{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.locations-coverage-new__layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 04 — MAIN CONTENT
========================================================= */

.locations-coverage-new__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(42px,5vw,70px);
    border-radius:28px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(67,181,160,.28),
            transparent 36%
        ),
        var(--bg-dark);
}

.locations-coverage-new__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.locations-coverage-new__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:#82d3c4;
}

.locations-coverage-new__content h2{
    max-width:680px;
    margin:0 0 22px;
    color:#fff;
    font-size:clamp(36px,3.7vw,54px);
    font-weight:500;
    line-height:1.05;
    letter-spacing:-.045em;
}

.locations-coverage-new__content h2 strong{
    display:block;
    color:#88d8ca;
    font-weight:800;
}

.locations-coverage-new__content>p{
    max-width:620px;
    margin:0;
    color:rgba(255,255,255,.7);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 04 — ACTIONS
========================================================= */

.locations-coverage-new__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.locations-coverage-new__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.locations-coverage-new__link>span{
    font-size:17px;
    transition:transform .3s var(--ease);
}

.locations-coverage-new__link:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 04 — POINTS
========================================================= */

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


/* =========================================================
   SECTION 04 — POINT
========================================================= */

.locations-coverage-new__point{
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-height:270px;
    padding:27px;
    border:1px solid var(--border);
    border-radius:24px;
    background:#fff;
    box-shadow:0 10px 30px rgba(23,37,34,.05);
    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.locations-coverage-new__point:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-sm);
}

.locations-coverage-new__point>span{
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    margin-bottom:auto;
    border-radius:14px;
    background:rgba(67,181,160,.12);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.locations-coverage-new__point small{
    display:block;
    margin-bottom:7px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.locations-coverage-new__point h3{
    margin:0 0 9px;
    color:var(--ink);
    font-size:22px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.025em;
}

.locations-coverage-new__point p{
    max-width:340px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 04 — LOCATION BAR
========================================================= */

.locations-coverage-new__bar{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.locations-coverage-new__bar>div{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:78px;
    padding:17px;
}

.locations-coverage-new__bar>div:not(:last-child){
    border-right:1px solid var(--border);
}

.locations-coverage-new__bar span{
    flex:0 0 9px;
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--primary);
    box-shadow:0 0 0 5px rgba(67,181,160,.1);
}

.locations-coverage-new__bar strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:1100px){

    .locations-coverage-new__layout{
        grid-template-columns:1fr;
    }

    .locations-coverage-new__content{
        min-height:470px;
    }

    .locations-coverage-new__bar{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .locations-coverage-new__bar>div{
        border-bottom:1px solid var(--border);
    }

    .locations-coverage-new__bar>div:nth-child(3n){
        border-right:0;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-coverage-new{
        padding:70px 0;
    }

    .locations-coverage-new__content{
        min-height:0;
        padding:36px 28px;
        border-radius:23px;
    }

    .locations-coverage-new__content>p{
        font-size:16px;
    }

    .locations-coverage-new__points{
        grid-template-columns:1fr;
    }

    .locations-coverage-new__point{
        min-height:220px;
        border-radius:20px;
    }

    .locations-coverage-new__bar{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .locations-coverage-new__bar>div{
        border-bottom:1px solid var(--border);
    }

    .locations-coverage-new__bar>div:nth-child(odd){
        border-right:1px solid var(--border);
    }

    .locations-coverage-new__bar>div:nth-child(even){
        border-right:0;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-coverage-new__content{
        padding:30px 21px;
        border-radius:19px;
    }

    .locations-coverage-new__content h2{
        font-size:32px;
    }

    .locations-coverage-new__actions{
        flex-direction:column;
        align-items:stretch;
        gap:16px;
    }

    .locations-coverage-new__actions .btn{
        width:100%;
    }

    .locations-coverage-new__link{
        justify-content:center;
    }

    .locations-coverage-new__point{
        min-height:0;
        padding:22px;
        border-radius:18px;
    }

    .locations-coverage-new__point>span{
        margin-bottom:30px;
    }

    .locations-coverage-new__point h3{
        font-size:20px;
    }

    .locations-coverage-new__point p{
        font-size:16px;
    }

    .locations-coverage-new__bar{
        grid-template-columns:1fr;
        border-radius:17px;
    }

    .locations-coverage-new__bar>div{
        min-height:64px;
        border-right:0 !important;
        border-bottom:1px solid var(--border) !important;
    }

    .locations-coverage-new__bar>div:last-child{
        border-bottom:0 !important;
    }

}




/* =========================================================
   SECTION 05 — LOCATIONS FAQ
========================================================= */

.locations-faq-photo{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.locations-faq-photo__head{
    margin-bottom:40px;
}

.locations-faq-photo__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.locations-faq-photo__eyebrow::before{
    content:"";
    width:32px;
    height:2px;
    background:var(--secondary);
}

.locations-faq-photo__head-row{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:end;
    gap:70px;
}

.locations-faq-photo__head h2{
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.04em;
}

.locations-faq-photo__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.locations-faq-photo__head-row>p{
    max-width:520px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.locations-faq-photo__layout{
    display:grid;
    grid-template-columns:.82fr 1.18fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 05 — PHOTO
========================================================= */

.locations-faq-photo__visual{
    position:relative;
    min-height:680px;
    overflow:hidden;
    border-radius:28px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.locations-faq-photo__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.locations-faq-photo__visual:hover>img{
    transform:scale(1.04);
}

.locations-faq-photo__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(8,20,17,.04) 15%,
            rgba(8,20,17,.18) 45%,
            rgba(8,20,17,.92) 100%
        );
}


/* =========================================================
   SECTION 05 — PHOTO TOP
========================================================= */

.locations-faq-photo__visual-top{
    position:absolute;
    z-index:3;
    top:24px;
    left:24px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 15px 11px 11px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:16px;
    background:rgba(10,24,21,.68);
    backdrop-filter:blur(12px);
}

.locations-faq-photo__visual-top>span{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.locations-faq-photo__visual-top>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.locations-faq-photo__visual-top small{
    color:rgba(255,255,255,.55);
    font-size:16px;
}

.locations-faq-photo__visual-top strong{
    color:#fff;
    font-size:16px;
}


/* =========================================================
   SECTION 05 — PHOTO CONTENT
========================================================= */

.locations-faq-photo__visual-content{
    position:absolute;
    z-index:3;
    right:30px;
    bottom:100px;
    left:30px;
}

.locations-faq-photo__visual-content>span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.locations-faq-photo__visual-content h3{
    max-width:520px;
    margin:0 0 13px;
    color:#fff;
    font-size:clamp(29px,2.8vw,42px);
    font-weight:500;
    line-height:1.1;
    letter-spacing:-.035em;
}

.locations-faq-photo__visual-content h3 strong{
    display:block;
    color:#88d8ca;
    font-weight:800;
}

.locations-faq-photo__visual-content p{
    max-width:500px;
    margin:0;
    color:rgba(255,255,255,.7);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   SECTION 05 — PHOTO LINK
========================================================= */

.locations-faq-photo__visual-link{
    position:absolute;
    z-index:3;
    right:30px;
    bottom:28px;
    left:30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.13);
    color:#fff;
    font-size:16px;
    font-weight:800;
}

.locations-faq-photo__visual-link>span{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:50%;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    transition:transform .3s var(--ease);
}

.locations-faq-photo__visual-link:hover>span{
    transform:rotate(45deg);
}


/* =========================================================
   SECTION 05 — FAQ LIST
========================================================= */

.locations-faq-photo__list{
    display:flex;
    flex-direction:column;
    gap:11px;
}


/* =========================================================
   SECTION 05 — FAQ ITEM
========================================================= */

.locations-faq-photo__item{
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--bg-soft);
    transition:
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.locations-faq-photo__item[open]{
    border-color:rgba(67,181,160,.4);
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 05 — SUMMARY
========================================================= */

.locations-faq-photo__item summary{
    display:grid;
    grid-template-columns:45px 1fr 40px;
    align-items:center;
    gap:15px;
    min-height:85px;
    padding:20px 22px;
    cursor:pointer;
    list-style:none;
}

.locations-faq-photo__item summary::-webkit-details-marker{
    display:none;
}


/* =========================================================
   SECTION 05 — NUMBER
========================================================= */

.locations-faq-photo__number{
    display:grid;
    place-items:center;
    width:41px;
    height:41px;
    border-radius:12px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    box-shadow:0 6px 18px rgba(23,37,34,.05);
}


/* =========================================================
   SECTION 05 — QUESTION
========================================================= */

.locations-faq-photo__question{
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 05 — PLUS
========================================================= */

.locations-faq-photo__plus{
    position:relative;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(67,181,160,.12);
}

.locations-faq-photo__plus::before,
.locations-faq-photo__plus::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:13px;
    height:2px;
    border-radius:4px;
    background:var(--primary-dark);
    transform:translate(-50%,-50%);
    transition:transform .25s ease;
}

.locations-faq-photo__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.locations-faq-photo__item[open] .locations-faq-photo__plus{
    background:var(--secondary);
}

.locations-faq-photo__item[open] .locations-faq-photo__plus::after{
    transform:translate(-50%,-50%);
}


/* =========================================================
   SECTION 05 — ANSWER
========================================================= */

.locations-faq-photo__answer{
    padding:0 65px 21px 82px;
}

.locations-faq-photo__answer p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .locations-faq-photo__head-row{
        grid-template-columns:1fr;
        gap:20px;
    }

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

    .locations-faq-photo__visual{
        min-height:520px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-faq-photo{
        padding:70px 0;
    }

    .locations-faq-photo__head{
        margin-bottom:30px;
    }

    .locations-faq-photo__head-row>p{
        font-size:16px;
    }

    .locations-faq-photo__visual{
        min-height:440px;
        border-radius:22px;
    }

    .locations-faq-photo__question{
        font-size:16px;
    }

    .locations-faq-photo__answer{
        padding:0 22px 20px 82px;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-faq-photo__visual{
        min-height:390px;
        border-radius:19px;
    }

    .locations-faq-photo__visual-top{
        top:14px;
        left:14px;
    }

    .locations-faq-photo__visual-content{
        right:20px;
        bottom:92px;
        left:20px;
    }

    .locations-faq-photo__visual-content h3{
        font-size:27px;
    }

    .locations-faq-photo__visual-content p{
        font-size:16px;
    }

    .locations-faq-photo__visual-link{
        right:20px;
        bottom:18px;
        left:20px;
    }

    .locations-faq-photo__item{
        border-radius:16px;
    }

    .locations-faq-photo__item summary{
        grid-template-columns:40px 1fr 35px;
        gap:12px;
        min-height:0;
        padding:18px;
    }

    .locations-faq-photo__number{
        width:37px;
        height:37px;
    }

    .locations-faq-photo__plus{
        width:34px;
        height:34px;
    }

    .locations-faq-photo__question{
        font-size:16px;
    }

    .locations-faq-photo__answer{
        padding:0 18px 18px;
    }

    .locations-faq-photo__answer p{
        font-size:16px;
    }

}








/* =========================================================
   SECTION 06 — SCHEDULE SERVICE
========================================================= */

.locations-booking{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 06 — HERO
========================================================= */

.locations-booking__hero{
    position:relative;
    min-height:560px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.locations-booking__hero>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.locations-booking__hero:hover>img{
    transform:scale(1.035);
}

.locations-booking__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.92) 0%,
            rgba(7,18,15,.72) 40%,
            rgba(7,18,15,.18) 75%
        );
}


/* =========================================================
   SECTION 06 — HERO CONTENT
========================================================= */

.locations-booking__content{
    position:absolute;
    z-index:3;
    top:50%;
    left:clamp(35px,6vw,78px);
    max-width:650px;
    transform:translateY(-58%);
}

.locations-booking__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.locations-booking__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:#86d6c7;
}

.locations-booking__content h2{
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(40px,4.5vw,64px);
    font-weight:500;
    line-height:1;
    letter-spacing:-.045em;
}

.locations-booking__content h2 strong{
    display:block;
    color:#87d7c8;
    font-weight:800;
}

.locations-booking__content p{
    max-width:570px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 06 — AREA TAGS
========================================================= */

.locations-booking__areas{
    position:absolute;
    z-index:3;
    right:28px;
    bottom:28px;
    left:28px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.locations-booking__areas span{
    padding:10px 14px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:100px;
    background:rgba(10,24,21,.68);
    color:#fff;
    font-size:16px;
    font-weight:700;
    backdrop-filter:blur(10px);
}


/* =========================================================
   SECTION 06 — BOOKING PANEL
========================================================= */

.locations-booking__panel{
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:.62fr 1.38fr;
    gap:18px;
    margin:-1px 30px 0;
    padding:18px;
    border:1px solid var(--border);
    border-radius:0 0 28px 28px;
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 06 — INTRO
========================================================= */

.locations-booking__intro{
    padding:34px 28px;
}

.locations-booking__intro>span{
    display:block;
    margin-bottom:8px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.locations-booking__intro h3{
    margin:0 0 12px;
    color:var(--ink);
    font-size:32px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.035em;
}

.locations-booking__intro>p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.7;
}


/* =========================================================
   SECTION 06 — STEPS
========================================================= */

.locations-booking__steps{
    display:flex;
    flex-direction:column;
    margin-top:27px;
    border-top:1px solid var(--border);
}

.locations-booking__steps>div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:13px;
    padding:17px 0;
    border-bottom:1px solid var(--border);
}

.locations-booking__steps>div>span{
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:11px;
    background:var(--bg-soft);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.locations-booking__steps strong{
    display:block;
    margin-bottom:4px;
    color:var(--ink);
    font-size:16px;
}

.locations-booking__steps p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.5;
}


/* =========================================================
   SECTION 06 — FORM
========================================================= */

.locations-booking__form{
    overflow:hidden;
    border-radius:20px;
    background:var(--bg-soft);
}

.locations-booking__form iframe{
    display:block;
    width:100%;
    min-height:450px;
    border:0;
}


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .locations-booking__hero{
        min-height:600px;
    }

    .locations-booking__panel{
        grid-template-columns:1fr;
        margin:0 18px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .locations-booking{
        padding:70px 0;
    }

    .locations-booking__hero{
        min-height:620px;
        border-radius:23px;
    }

    .locations-booking__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.35) 0%,
                rgba(7,18,15,.82) 100%
            );
    }

    .locations-booking__content{
        top:70px;
        right:25px;
        left:25px;
        transform:none;
    }

    .locations-booking__content h2{
        font-size:42px;
    }

    .locations-booking__areas{
        right:20px;
        bottom:20px;
        left:20px;
    }

    .locations-booking__panel{
        margin:0 10px;
        border-radius:0 0 22px 22px;
    }

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .locations-booking__hero{
        min-height:650px;
        border-radius:19px;
    }

    .locations-booking__content{
        top:50px;
        right:20px;
        left:20px;
    }

    .locations-booking__content h2{
        font-size:34px;
    }

    .locations-booking__content p{
        font-size:16px;
    }

    .locations-booking__areas span{
        padding:8px 11px;
        font-size:16px;
    }

    .locations-booking__panel{
        margin:0;
        padding:12px;
        border-radius:0 0 19px 19px;
    }

    .locations-booking__intro{
        padding:27px 18px;
    }

    .locations-booking__intro h3{
        font-size:26px;
    }

    .locations-booking__form{
        border-radius:15px;
    }

    .locations-booking__form iframe{
        min-height:520px;
    }

}




























/* =========================================================
   SECTION 01 — LOCATION PAGE HERO
========================================================= */

.location-page-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(58px,6vw,92px) 0 var(--section-space);
    background:
        radial-gradient(
            circle at 4% 0%,
            rgba(67,181,160,.11),
            transparent 27%
        ),
        #fff;
}


/* =========================================================
   SECTION 01 — SHELL
========================================================= */

.location-page-hero__shell{
    position:relative;
    display:grid;
    grid-template-columns:.84fr 1.16fr;
    align-items:stretch;
    min-height:700px;
}


/* =========================================================
   SECTION 01 — CONTENT
========================================================= */

.location-page-hero__content{
    position:relative;
    z-index:4;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:
        clamp(42px,5vw,72px)
        clamp(38px,5vw,68px);
    margin:38px -45px 38px 0;
    border:1px solid var(--border);
    border-radius:30px;
    background:#fff;
    box-shadow:var(--shadow-md);
}


/* =========================================================
   SECTION 01 — META
========================================================= */

.location-page-hero__meta{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:23px;
}

.location-page-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-page-hero__eyebrow::before{
    content:"";
    width:33px;
    height:2px;
    background:var(--secondary);
}

.location-page-hero__area{
    padding-left:16px;
    border-left:1px solid var(--border);
    color:var(--muted);
    font-size:16px;
    font-weight:800;
}


/* =========================================================
   SECTION 01 — TITLE
========================================================= */

.location-page-hero h1{
    max-width:720px;
    margin:0 0 23px;
    color:var(--ink);
    font-size:var(--fs-h1);
    font-weight:500;
    line-height:.98;
    letter-spacing:-.055em;
}

.location-page-hero h1>span{
    color:var(--muted);
    font-weight:400;
}

.location-page-hero h1 strong{
    display:block;
    margin-top:7px;
    color:var(--primary-dark);
    font-weight:800;
}


/* =========================================================
   SECTION 01 — INTRO
========================================================= */

.location-page-hero__intro{
    max-width:610px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SECTION 01 — ACTIONS
========================================================= */

.location-page-hero__actions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-top:31px;
}

.location-page-hero__link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--ink);
    font-size:16px;
    font-weight:800;
}

.location-page-hero__link>span{
    color:var(--primary-dark);
    font-size:17px;
    transition:transform .3s var(--ease);
}

.location-page-hero__link:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 01 — LOCAL DETAILS
========================================================= */

.location-page-hero__details{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:38px;
}

.location-page-hero__details>div{
    display:grid;
    grid-template-columns:38px 1fr;
    align-items:center;
    gap:11px;
    min-width:0;
    padding:13px;
    border:1px solid var(--border);
    border-radius:15px;
    background:var(--bg-soft);
}

.location-page-hero__details>div>span{
    display:grid;
    place-items:center;
    width:35px;
    height:35px;
    border-radius:10px;
    background:#fff;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.location-page-hero__details small{
    display:block;
    margin-bottom:3px;
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.location-page-hero__details strong{
    display:block;
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — VISUAL
========================================================= */

.location-page-hero__visual{
    position:relative;
    min-height:700px;
    overflow:hidden;
    border-radius:32px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.location-page-hero__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .9s var(--ease);
}

.location-page-hero__visual:hover>img{
    transform:scale(1.035);
}

.location-page-hero__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.03) 25%,
            rgba(7,18,15,.13) 52%,
            rgba(7,18,15,.88) 100%
        );
}


/* =========================================================
   SECTION 01 — BADGE
========================================================= */

.location-page-hero__badge{
    position:absolute;
    z-index:3;
    top:26px;
    right:26px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:11px 15px 11px 11px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:16px;
    background:rgba(10,24,21,.69);
    backdrop-filter:blur(12px);
}

.location-page-hero__badge-mark{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:44px;
    height:44px;
    border-radius:13px;
    background:var(--secondary);
    color:var(--ink);
    font-size:16px;
    font-weight:900;
}

.location-page-hero__badge>div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
    min-width:0;
}

.location-page-hero__badge small{
    color:rgba(255,255,255,.57);
    font-size:16px;
    line-height:1.35;
}

.location-page-hero__badge strong{
    color:#fff;
    font-size:16px;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — VISUAL CONTENT
========================================================= */

.location-page-hero__visual-content{
    position:absolute;
    z-index:3;
    right:38px;
    bottom:38px;
    left:85px;
}

.location-page-hero__visual-content>span{
    display:block;
    margin-bottom:8px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-page-hero__visual-content h2{
    max-width:550px;
    margin:0;
    color:#fff;
    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.1;
    letter-spacing:-.04em;
}

.location-page-hero__visual-content h2 strong{
    display:block;
    color:#89d8ca;
    font-weight:800;
}


/* =========================================================
   SECTION 01 — LOCATION STAMP
========================================================= */

.location-page-hero__stamp{
    position:absolute;
    z-index:6;
    right:-14px;
    top:50%;
    display:flex;
    align-items:center;
    gap:13px;
    padding:14px 18px;
    border:1px solid var(--border);
    border-radius:16px;
    background:#fff;
    box-shadow:var(--shadow-sm);
    transform:translateY(-50%);
}

.location-page-hero__stamp-dot{
    width:12px;
    height:12px;
    border-radius:50%;
    background:var(--primary);
    box-shadow:0 0 0 7px rgba(67,181,160,.12);
}

.location-page-hero__stamp>div{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.location-page-hero__stamp small{
    color:var(--muted);
    font-size:16px;
}

.location-page-hero__stamp strong{
    color:var(--ink);
    font-size:16px;
}


/* =========================================================
   SECTION 01 — SERVICE STRIP
========================================================= */

.location-page-hero__strip{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
}

.location-page-hero__strip>div{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:90px;
    padding:19px 21px;
}

.location-page-hero__strip>div:not(:last-child){
    border-right:1px solid var(--border);
}

.location-page-hero__strip span{
    display:grid;
    place-items:center;
    flex:0 0 35px;
    width:35px;
    height:35px;
    border-radius:10px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.location-page-hero__strip strong{
    color:var(--ink);
    font-size:16px;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — RESPONSIVE 1200px
========================================================= */

@media(max-width:1200px){

    .location-page-hero__shell{
        grid-template-columns:.9fr 1.1fr;
    }

    .location-page-hero__content{
        margin-right:-30px;
    }

    .location-page-hero__details{
        grid-template-columns:1fr;
    }

}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .location-page-hero__shell{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .location-page-hero__content{
        margin:0 24px -26px;
        padding:46px 38px;
        border-radius:28px;
    }

    .location-page-hero__visual{
        min-height:570px;
        border-radius:28px;
    }

    .location-page-hero__visual-content{
        right:32px;
        bottom:125px;
        left:32px;
    }

    /*
       FIX:
       badge більше не висить у верхньому правому куті,
       де він конфліктував з білим content block.
    */
    .location-page-hero__badge{
        top:auto;
        right:24px;
        bottom:24px;
        max-width:280px;
    }

    .location-page-hero__stamp{
        display:none;
    }

    .location-page-hero__details{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .location-page-hero__strip{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .location-page-hero__strip>div{
        border-bottom:1px solid var(--border);
    }

    .location-page-hero__strip>div:nth-child(3n){
        border-right:0;
    }

    .location-page-hero__strip>div:nth-last-child(-n+2){
        border-bottom:0;
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-page-hero{
        padding:55px 0 70px;
    }

    .location-page-hero__content{
        margin:0 12px -18px;
        padding:36px 27px;
        border-radius:23px;
    }

    .location-page-hero__intro{
        font-size:16px;
    }

    .location-page-hero__details{
        grid-template-columns:1fr;
    }

    .location-page-hero__visual{
        min-height:500px;
        border-radius:23px;
    }

    .location-page-hero__visual-content{
        right:22px;
        bottom:120px;
        left:22px;
    }

    .location-page-hero__badge{
        top:auto;
        right:18px;
        bottom:18px;
        left:auto;
        max-width:235px;
        padding:10px 12px 10px 10px;
    }

    .location-page-hero__badge-mark{
        width:40px;
        height:40px;
    }

    .location-page-hero__badge strong{
        font-size:16px;
    }

    .location-page-hero__strip{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .location-page-hero__strip>div{
        border-right:0;
        border-bottom:1px solid var(--border);
    }

    .location-page-hero__strip>div:nth-child(odd){
        border-right:1px solid var(--border);
    }

    .location-page-hero__strip>div:last-child{
        border-bottom:0;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-page-hero__content{
        margin:0 7px -14px;
        padding:30px 21px;
        border-radius:19px;
    }

    .location-page-hero__meta{
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }

    .location-page-hero__area{
        padding-left:0;
        border-left:0;
    }

    .location-page-hero__actions{
        align-items:stretch;
        flex-direction:column;
        gap:16px;
    }

    .location-page-hero__actions .btn{
        width:100%;
    }

    .location-page-hero__link{
        justify-content:center;
    }

    .location-page-hero__visual{
        min-height:455px;
        border-radius:19px;
    }

    .location-page-hero__badge{
        top:auto;
        right:14px;
        bottom:14px;
        max-width:210px;
        padding:9px 10px 9px 9px;
        border-radius:14px;
    }

    .location-page-hero__badge-mark{
        width:36px;
        height:36px;
        border-radius:11px;
        font-size:16px;
    }

    .location-page-hero__badge small{
        font-size:16px;
    }

    .location-page-hero__badge strong{
        font-size:16px;
        line-height:1.3;
    }

    .location-page-hero__visual-content{
        right:20px;
        bottom:105px;
        left:20px;
    }

    .location-page-hero__visual-content h2{
        font-size:27px;
    }

    .location-page-hero__strip{
        grid-template-columns:1fr;
        border-radius:17px;
    }

    .location-page-hero__strip>div{
        min-height:72px;
        border-right:0 !important;
        border-bottom:1px solid var(--border) !important;
    }

    .location-page-hero__strip>div:last-child{
        border-bottom:0 !important;
    }

}









/* =========================================================
   SECTION 02 — LOCAL APPLIANCE SERVICE
========================================================= */

.location-local{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.location-local__layout{
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:70px;
    align-items:center;
}


/* =========================================================
   SECTION 02 — CONTENT
========================================================= */

.location-local__content{
    max-width:650px;
}

.location-local__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-local__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.location-local__content h2{
    margin:0 0 22px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.location-local__content h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.location-local__lead{
    margin:0 0 16px !important;
    color:var(--ink) !important;
    font-size:18px !important;
    font-weight:600;
    line-height:1.65 !important;
}

.location-local__content>p{
    max-width:610px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 02 — FEATURES
========================================================= */

.location-local__features{
    display:grid;
    gap:10px;
    margin:32px 0;
}

.location-local__feature{
    display:grid;
    grid-template-columns:48px 1fr;
    align-items:center;
    gap:14px;
    padding:15px 17px;
    border:1px solid var(--border);
    border-radius:16px;
    background:#fff;
}

.location-local__feature>span{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border-radius:12px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.location-local__feature small{
    display:block;
    margin-bottom:3px;
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.location-local__feature strong{
    display:block;
    color:var(--ink);
    font-size:16px;
    line-height:1.4;
}


/* =========================================================
   SECTION 02 — VISUAL
========================================================= */

.location-local__visual{
    position:relative;
    padding:0 0 100px 70px;
}


/* =========================================================
   SECTION 02 — IMAGE
========================================================= */

.location-local__image{
    position:relative;
    min-height:610px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.location-local__image img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.location-local__image:hover img{
    transform:scale(1.04);
}

.location-local__image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.04) 0%,
            rgba(7,18,15,.02) 50%,
            rgba(7,18,15,.38) 100%
        );
}


/* =========================================================
   SECTION 02 — IMAGE LABEL
========================================================= */

.location-local__image-label{
    position:absolute;
    z-index:5;

    top:24px;
    right:24px;
    bottom:auto;
    left:auto;

    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:center;
    gap:13px;

    width:auto;
    max-width:360px;

    padding:14px 17px;

    border:1px solid rgba(255,255,255,.18);
    border-radius:16px;

    background:rgba(11,27,23,.84);
    backdrop-filter:blur(12px);

    box-shadow:
        0 12px 32px rgba(7,18,15,.18);
}

.location-local__image-label-icon{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    background:rgba(255,212,0,.15);
}

.location-local__image-label-icon>span{
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 0 0 5px rgba(255,212,0,.12);
}

.location-local__image-label small{
    display:block;
    margin-bottom:3px;
    color:rgba(255,255,255,.62);
    font-size:16px;
    font-weight:600;
    line-height:1.35;
}

.location-local__image-label strong{
    display:block;
    color:#fff;
    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 02 — AREAS CARD
========================================================= */

.location-local__areas{
    position:absolute;
    z-index:6;

    bottom:0;
    left:0;

    width:min(440px,82%);
    padding:27px;

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

    background:#fff;
    box-shadow:var(--shadow-md);
}

.location-local__areas-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:20px;
}

.location-local__areas-head small{
    display:block;
    margin-bottom:5px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.location-local__areas-head h3{
    margin:0;
    color:var(--ink);
    font-size:24px;
    line-height:1.2;
}

.location-local__areas-head>span{
    display:grid;
    place-items:center;

    flex:0 0 42px;

    width:42px;
    height:42px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:17px;
}


/* =========================================================
   SECTION 02 — AREAS LIST
========================================================= */

.location-local__areas-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.location-local__areas-list span{
    padding:9px 12px;

    border-radius:100px;

    background:var(--bg-soft);
    color:var(--ink);

    font-size:16px;
    font-weight:700;
    line-height:1.35;
}


/* =========================================================
   SECTION 02 — AREAS LINK
========================================================= */

.location-local__areas>a{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:15px;

    margin-top:21px;
    padding-top:18px;

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

    color:var(--ink);

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

.location-local__areas>a>span{
    color:var(--primary-dark);
    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-local__areas>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:1100px){

    .location-local__layout{
        grid-template-columns:1fr;
        gap:50px;
    }

    .location-local__content{
        max-width:850px;
    }


    /* =========================================================
       SECTION 02 — TABLET VISUAL
    ========================================================= */

    .location-local__visual{
        padding:0;
    }

    .location-local__image{
        min-height:560px;
    }


    /* =========================================================
       SECTION 02 — TABLET IMAGE LABEL
    ========================================================= */

    .location-local__image-label{
        top:22px;
        right:22px;
        bottom:auto;
        left:auto;

        max-width:360px;
    }


    /* =========================================================
       SECTION 02 — TABLET AREAS CARD
    ========================================================= */

    .location-local__areas{
        position:relative;

        right:auto;
        bottom:auto;
        left:auto;

        width:calc(100% - 60px);
        max-width:620px;

        margin:-35px 0 0 30px;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-local{
        padding:70px 0;
    }

    .location-local__layout{
        gap:42px;
    }

    .location-local__lead{
        font-size:17px !important;
    }

    .location-local__content>p{
        font-size:16px;
    }


    /* =========================================================
       SECTION 02 — MOBILE VISUAL
    ========================================================= */

    .location-local__visual{
        padding:0;
    }

    .location-local__image{
        min-height:480px;
        border-radius:23px;
    }


    /* =========================================================
       SECTION 02 — MOBILE IMAGE LABEL
    ========================================================= */

    .location-local__image-label{
        top:16px;
        right:16px;
        bottom:auto;
        left:16px;

        width:auto;
        max-width:360px;
    }


    /* =========================================================
       SECTION 02 — MOBILE AREAS CARD
    ========================================================= */

    .location-local__areas{
        position:relative;

        right:auto;
        bottom:auto;
        left:auto;

        width:calc(100% - 24px);
        max-width:none;

        margin:-24px auto 0;

        padding:24px;

        border-radius:21px;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-local__image{
        min-height:420px;
        border-radius:19px;
    }


    /* =========================================================
       SECTION 02 — SMALL MOBILE IMAGE LABEL
    ========================================================= */

    .location-local__image-label{
        top:13px;
        right:13px;
        bottom:auto;
        left:13px;

        grid-template-columns:36px minmax(0,1fr);
        gap:10px;

        width:auto;
        max-width:none;

        padding:11px 12px;

        border-radius:14px;
    }

    .location-local__image-label-icon{
        width:36px;
        height:36px;
        border-radius:10px;
    }

    .location-local__image-label small{
        font-size:16px;
    }

    .location-local__image-label strong{
        font-size:16px;
        line-height:1.3;
    }


    /* =========================================================
       SECTION 02 — SMALL MOBILE AREAS CARD
    ========================================================= */

    .location-local__areas{
        width:calc(100% - 14px);

        margin:-18px auto 0;

        padding:20px;

        border-radius:18px;
    }

    .location-local__areas-head{
        margin-bottom:17px;
    }

    .location-local__areas-head h3{
        font-size:21px;
    }

    .location-local__areas-head>span{
        width:39px;
        height:39px;
        flex-basis:39px;
    }

    .location-local__areas-list{
        gap:6px;
    }

    .location-local__areas-list span{
        padding:8px 10px;
        font-size:16px;
    }

    .location-local__areas>a{
        margin-top:18px;
        padding-top:16px;
        font-size:16px;
    }


    /* =========================================================
       SECTION 02 — SMALL MOBILE FEATURES
    ========================================================= */

    .location-local__feature{
        padding:13px;
    }

    .location-local__feature strong{
        font-size:16px;
    }

}






/* =========================================================
   SECTION 03 — APPLIANCE REPAIR SERVICES
========================================================= */

.location-services{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 03 — HEADER
========================================================= */

.location-services__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.location-services__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-services__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.location-services__head h2{
    max-width:720px;
    margin:0;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.location-services__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}


/* =========================================================
   SECTION 03 — HEADER SIDE
========================================================= */

.location-services__head-side{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.location-services__head-side>p{
    max-width:550px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.location-services__head-side .btn{
    margin-top:24px;
}


/* =========================================================
   SECTION 03 — GRID
========================================================= */

.location-services__grid{
    display:grid;
    grid-template-columns:1.15fr .85fr .85fr;
    gap:14px;
}


/* =========================================================
   SECTION 03 — CARD
========================================================= */

.location-services__card{
    position:relative;
    display:flex;
    flex-direction:column;

    min-width:0;
    min-height:310px;

    padding:27px;

    overflow:hidden;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease);
}

.location-services__card:hover{
    transform:translateY(-4px);
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 03 — FEATURED CARD WITH PHOTO
========================================================= */

.location-services__card--featured{
    grid-row:span 2;

    min-height:634px;

    padding:0;

    background:#edf8f5;
}


/* =========================================================
   SECTION 03 — FEATURED IMAGE
========================================================= */

.location-services__featured-image{
    position:relative;

    min-height:285px;

    overflow:hidden;

    border-radius:24px 24px 0 0;

    background:var(--bg-dark);
}

.location-services__featured-image img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.location-services__card--featured:hover
.location-services__featured-image img{
    transform:scale(1.04);
}

.location-services__featured-overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.02) 35%,
            rgba(7,18,15,.42) 100%
        );
}


/* =========================================================
   SECTION 03 — FEATURED IMAGE BADGE
========================================================= */

.location-services__featured-badge{
    position:absolute;

    right:18px;
    bottom:18px;
    left:18px;

    display:flex;
    align-items:center;
    gap:11px;

    padding:12px 14px;

    border:1px solid rgba(255,255,255,.17);
    border-radius:14px;

    background:rgba(10,24,21,.75);

    backdrop-filter:blur(10px);
}

.location-services__featured-badge>span{
    flex:0 0 9px;

    width:9px;
    height:9px;

    border-radius:50%;

    background:var(--secondary);

    box-shadow:0 0 0 5px rgba(255,212,0,.1);
}

.location-services__featured-badge strong{
    color:#fff;

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


/* =========================================================
   SECTION 03 — FEATURED BODY
========================================================= */

.location-services__featured-body{
    display:flex;
    flex:1;
    flex-direction:column;

    padding:30px 32px 32px;
}


/* =========================================================
   SECTION 03 — CARD TOP
========================================================= */

.location-services__card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.location-services__number{
    display:grid;
    place-items:center;

    flex:0 0 46px;

    width:46px;
    height:46px;

    border-radius:14px;

    background:#fff;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;

    box-shadow:0 6px 18px rgba(23,37,34,.05);
}

.location-services__category{
    padding:7px 11px;

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

    background:#fff;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — CARD CONTENT
========================================================= */

.location-services__card-content{
    margin-top:auto;
    padding-top:50px;
}

.location-services__card h3{
    margin:0 0 13px;

    color:var(--ink);

    font-size:clamp(21px,1.7vw,27px);
    font-weight:500;
    line-height:1.15;
    letter-spacing:-.03em;
}

.location-services__card h3 strong{
    display:block;
    font-weight:800;
}

.location-services__card p{
    max-width:430px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — FEATURED CONTENT
========================================================= */

.location-services__card--featured .location-services__card-content{
    padding-top:45px;
}

.location-services__card--featured h3{
    max-width:430px;

    font-size:clamp(28px,2.8vw,40px);
}

.location-services__card--featured p{
    max-width:460px;

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


/* =========================================================
   SECTION 03 — CARD BOTTOM
========================================================= */

.location-services__card-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

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

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

.location-services__card-bottom>span{
    color:var(--muted);

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

.location-services__card-bottom>b{
    display:grid;
    place-items:center;

    flex:0 0 38px;

    width:38px;
    height:38px;

    border-radius:50%;

    background:#fff;

    color:var(--primary-dark);

    font-size:16px;

    transition:
        background .3s ease,
        transform .3s var(--ease);
}

.location-services__card:hover .location-services__card-bottom>b{
    background:var(--secondary);
    color:var(--ink);

    transform:translateX(3px);
}


/* =========================================================
   SECTION 03 — DARK CARD
========================================================= */

.location-services__card--dark{
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);

    border-color:transparent;
}

.location-services__card--dark:hover{
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.34),
            transparent 40%
        ),
        #172b26;
}

.location-services__card--dark .location-services__number{
    background:var(--secondary);
    color:var(--ink);
}

.location-services__card--dark .location-services__category{
    border-color:rgba(255,255,255,.13);
    background:rgba(255,255,255,.07);
    color:rgba(255,255,255,.72);
}

.location-services__card--dark h3{
    color:#fff;
}

.location-services__card--dark h3 strong{
    color:#88d8ca;
}

.location-services__card--dark p{
    color:rgba(255,255,255,.66);
}


/* =========================================================
   SECTION 03 — SPECIALTIES
========================================================= */

.location-services__specialties{
    display:flex;
    flex-wrap:wrap;
    gap:7px;

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

    border-top:1px solid rgba(255,255,255,.12);
}

.location-services__specialties span{
    padding:8px 11px;

    border:1px solid rgba(255,255,255,.11);
    border-radius:100px;

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

    color:#fff;

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


/* =========================================================
   SECTION 03 — BOTTOM BAR
========================================================= */

.location-services__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.location-services__bottom-status{
    display:flex;
    align-items:center;
    gap:14px;
}

.location-services__bottom-status>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.location-services__bottom-status small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.location-services__bottom-status strong{
    display:block;

    color:var(--ink);

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

.location-services__bottom>a{
    display:flex;
    align-items:center;
    gap:11px;

    flex:0 0 auto;

    color:var(--ink);

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

.location-services__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-services__bottom>a:hover>span{
    transform:translate(3px,-3px);
}


/* =========================================================
   SECTION 03 — SMALL DESKTOP
========================================================= */

@media(max-width:1200px){

    .location-services__grid{
        grid-template-columns:1fr 1fr;
    }

    .location-services__card--featured{
        grid-row:auto;
        grid-column:1 / -1;

        display:grid;
        grid-template-columns:.9fr 1.1fr;

        min-height:420px;
    }

    .location-services__featured-image{
        min-height:420px;

        border-radius:24px 0 0 24px;
    }

}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .location-services__head{
        grid-template-columns:1fr;
        gap:22px;

        margin-bottom:35px;
    }

    .location-services__head-side{
        max-width:720px;
    }

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

    .location-services__card{
        min-height:290px;
    }

    .location-services__card--featured{
        grid-column:1 / -1;

        display:grid;
        grid-template-columns:1fr 1fr;

        min-height:390px;
    }

    .location-services__featured-image{
        min-height:390px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-services{
        padding:70px 0;
    }

    .location-services__head{
        margin-bottom:30px;
    }

    .location-services__head-side>p{
        font-size:16px;
    }

    .location-services__grid{
        grid-template-columns:1fr;
        gap:11px;
    }

    .location-services__card,
    .location-services__card--featured{
        grid-column:auto;
        grid-row:auto;

        display:flex;

        min-height:0;

        padding:25px;

        border-radius:20px;
    }


    /* FEATURED CARD */
    .location-services__card--featured{
        padding:0;
    }

    .location-services__featured-image{
        min-height:300px;

        border-radius:20px 20px 0 0;
    }

    .location-services__featured-body{
        padding:25px;
    }


    /* CARD CONTENT */
    .location-services__card-content,
    .location-services__card--featured .location-services__card-content{
        margin-top:45px;
        padding-top:0;
    }

    .location-services__card--featured h3{
        font-size:31px;
    }

    .location-services__card--featured p{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-services__head-side .btn{
        width:100%;
    }

    .location-services__card{
        padding:21px;
        border-radius:18px;
    }

    .location-services__card--featured{
        padding:0;
    }

    .location-services__featured-image{
        min-height:240px;

        border-radius:18px 18px 0 0;
    }

    .location-services__featured-badge{
        right:12px;
        bottom:12px;
        left:12px;

        padding:10px 12px;
    }

    .location-services__featured-badge strong{
        font-size:16px;
    }

    .location-services__featured-body{
        padding:21px;
    }

    .location-services__number{
        width:41px;
        height:41px;
        flex-basis:41px;

        border-radius:12px;
    }

    .location-services__category{
        padding:6px 9px;

        font-size:16px;
    }

    .location-services__card-content,
    .location-services__card--featured .location-services__card-content{
        margin-top:37px;
    }

    .location-services__card h3{
        font-size:21px;
    }

    .location-services__card--featured h3{
        font-size:28px;
    }

    .location-services__card p,
    .location-services__card--featured p{
        font-size:16px;
    }

    .location-services__bottom{
        align-items:stretch;
        flex-direction:column;

        padding:19px;

        border-radius:16px;
    }

    .location-services__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 04 — BRANDS WE SERVICE
========================================================= */

.location-brands{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 04 — HEADER
========================================================= */

.location-brands__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.location-brands__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-brands__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.location-brands__head h2{
    max-width:720px;
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.location-brands__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}


/* =========================================================
   SECTION 04 — HEADER SIDE
========================================================= */

.location-brands__head-side{
    max-width:540px;
}

.location-brands__head-side>p{
    margin:0;

    color:var(--muted);

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

.location-brands__head-link{
    display:inline-flex;
    align-items:center;
    gap:10px;

    margin-top:21px;

    color:var(--ink);

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

.location-brands__head-link>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-brands__head-link:hover>span{
    transform:translate(3px,-3px);
}


/* =========================================================
   SECTION 04 — BOARD
========================================================= */

.location-brands__board{
    display:grid;
    grid-template-columns:.76fr 1.24fr;
    gap:14px;
    align-items:stretch;
}


/* =========================================================
   SECTION 04 — FEATURE
========================================================= */

.location-brands__feature{
    display:flex;
    flex-direction:column;

    min-height:620px;
    padding:36px;

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.3),
            transparent 38%
        ),
        var(--bg-dark);

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

.location-brands__feature-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.location-brands__feature-number{
    display:grid;
    place-items:center;

    width:66px;
    height:66px;

    border-radius:19px;

    background:var(--secondary);
    color:var(--ink);

    font-size:18px;
    font-weight:900;
}

.location-brands__feature-top small{
    color:rgba(255,255,255,.6);

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


/* =========================================================
   SECTION 04 — FEATURE CONTENT
========================================================= */

.location-brands__feature-content{
    margin-top:auto;
    padding-top:80px;
}

.location-brands__feature-content>span{
    display:block;

    margin-bottom:11px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.location-brands__feature-content h3{
    max-width:500px;
    margin:0 0 17px;

    color:#fff;

    font-size:clamp(31px,3vw,44px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.location-brands__feature-content h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.location-brands__feature-content p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 04 — FEATURE LINK
========================================================= */

.location-brands__feature-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;

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

    border-top:1px solid rgba(255,255,255,.13);

    color:#fff;

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

.location-brands__feature-link>span{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-brands__feature-link:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 04 — BRAND LIST
========================================================= */

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


/* =========================================================
   SECTION 04 — BRAND ITEM
========================================================= */

.location-brands__item{
    display:flex;
    align-items:center;
    gap:13px;

    min-width:0;
    min-height:74px;

    padding:15px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s ease;
}

.location-brands__item:hover{
    transform:translateY(-3px);

    border-color:rgba(67,181,160,.38);

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

.location-brands__item>span{
    display:grid;
    place-items:center;

    flex:0 0 35px;

    width:35px;
    height:35px;

    border-radius:10px;

    background:var(--bg-soft);

    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.location-brands__item strong{
    min-width:0;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.35;

    overflow-wrap:anywhere;
}


/* =========================================================
   SECTION 04 — BOTTOM
========================================================= */

.location-brands__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.location-brands__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.location-brands__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.location-brands__bottom p{
    margin:0;

    color:var(--muted);

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

.location-brands__bottom p strong{
    color:var(--ink);
}

.location-brands__bottom>a{
    display:flex;
    align-items:center;
    gap:10px;

    flex:0 0 auto;

    color:var(--ink);

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

.location-brands__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-brands__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 04 — SMALL DESKTOP
========================================================= */

@media(max-width:1200px){

    .location-brands__board{
        grid-template-columns:.85fr 1.15fr;
    }

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

}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .location-brands__head{
        grid-template-columns:1fr;
        gap:22px;

        margin-bottom:34px;
    }

    .location-brands__head-side{
        max-width:720px;
    }

    .location-brands__board{
        grid-template-columns:1fr;
    }

    .location-brands__feature{
        min-height:430px;
    }

    .location-brands__feature-content{
        padding-top:70px;
    }

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

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-brands{
        padding:70px 0;
    }

    .location-brands__head-side>p{
        font-size:16px;
    }

    .location-brands__feature{
        min-height:400px;

        padding:28px;

        border-radius:22px;
    }

    .location-brands__feature-content{
        padding-top:60px;
    }

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

    .location-brands__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-brands__feature{
        min-height:0;

        padding:23px;

        border-radius:19px;
    }

    .location-brands__feature-number{
        width:55px;
        height:55px;

        border-radius:16px;

        font-size:16px;
    }

    .location-brands__feature-content{
        margin-top:70px;
        padding-top:0;
    }

    .location-brands__feature-content h3{
        font-size:29px;
    }

    .location-brands__feature-content p{
        font-size:16px;
    }

    .location-brands__list{
        grid-template-columns:1fr 1fr;
        gap:7px;
    }

    .location-brands__item{
        gap:9px;

        min-height:65px;

        padding:11px;

        border-radius:14px;
    }

    .location-brands__item>span{
        flex-basis:31px;

        width:31px;
        height:31px;
    }

    .location-brands__item strong{
        font-size:16px;
    }

    .location-brands__bottom{
        padding:19px;

        border-radius:16px;
    }

    .location-brands__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}






/* =========================================================
   SECTION 05 — WHY HOMEOWNERS CHOOSE WE FIX
========================================================= */

.location-why{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.location-why__layout{
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 05 — VISUAL
========================================================= */

.location-why__visual{
    position:relative;
    min-height:720px;
    overflow:hidden;
    border-radius:30px;
    background:var(--bg-dark);
    box-shadow:var(--shadow-md);
}

.location-why__visual>img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .8s var(--ease);
}

.location-why__visual:hover>img{
    transform:scale(1.04);
}

.location-why__overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.04) 20%,
            rgba(7,18,15,.12) 50%,
            rgba(7,18,15,.88) 100%
        );
}


/* =========================================================
   SECTION 05 — VISUAL NOTE
========================================================= */

.location-why__visual-note{
    position:absolute;
    z-index:3;
    top:24px;
    left:24px;

    display:flex;
    align-items:center;
    gap:13px;

    max-width:330px;

    padding:13px 16px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:16px;

    background:rgba(10,24,21,.72);

    backdrop-filter:blur(12px);
}

.location-why__visual-dot{
    flex:0 0 11px;
    width:11px;
    height:11px;
    border-radius:50%;
    background:var(--secondary);
    box-shadow:0 0 0 6px rgba(255,212,0,.11);
}

.location-why__visual-note small{
    display:block;
    margin-bottom:3px;
    color:rgba(255,255,255,.58);
    font-size:16px;
    font-weight:600;
}

.location-why__visual-note strong{
    display:block;
    color:#fff;
    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 05 — VISUAL CONTENT
========================================================= */

.location-why__visual-content{
    position:absolute;
    z-index:3;
    right:32px;
    bottom:32px;
    left:32px;
}

.location-why__visual-content>span{
    display:block;
    margin-bottom:9px;
    color:var(--secondary);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-why__visual-content h3{
    max-width:520px;
    margin:0;
    color:#fff;
    font-size:clamp(31px,3vw,45px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.location-why__visual-content h3 strong{
    display:block;
    color:#89d8ca;
    font-weight:800;
}


/* =========================================================
   SECTION 05 — CONTENT
========================================================= */

.location-why__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(34px,4vw,58px);
    border:1px solid var(--border);
    border-radius:30px;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 05 — CONTENT HEADER
========================================================= */

.location-why__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-why__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.location-why__content>h2{
    max-width:680px;
    margin:0 0 20px;
    color:var(--ink);
    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.location-why__content>h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.location-why__lead{
    max-width:650px;
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.75;
}


/* =========================================================
   SECTION 05 — ADVANTAGES
========================================================= */

.location-why__advantages{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:32px;
}


/* =========================================================
   SECTION 05 — ADVANTAGE ITEM
========================================================= */

.location-why__item{
    display:grid;
    grid-template-columns:48px 1fr;
    align-items:start;
    gap:14px;
    min-width:0;
    min-height:180px;
    padding:21px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
}

.location-why__number{
    display:grid;
    place-items:center;
    width:43px;
    height:43px;
    border-radius:12px;
    background:rgba(67,181,160,.11);
    color:var(--primary-dark);
    font-size:16px;
    font-weight:900;
}

.location-why__item small{
    display:block;
    margin-bottom:5px;
    color:var(--primary-dark);
    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.location-why__item h3{
    margin:0 0 7px;
    color:var(--ink);
    font-size:17px;
    font-weight:800;
    line-height:1.3;
}

.location-why__item p{
    margin:0;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}


/* =========================================================
   SECTION 05 — CTA
========================================================= */

.location-why__cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    margin-top:12px;
    padding:20px 21px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
}

.location-why__cta small{
    display:block;
    margin-bottom:3px;
    color:var(--muted);
    font-size:16px;
    font-weight:700;
}

.location-why__cta strong{
    display:block;
    color:var(--ink);
    font-size:16px;
    line-height:1.4;
}


/* =========================================================
   SECTION 05 — SMALL DESKTOP
========================================================= */

@media(max-width:1200px){

    .location-why__layout{
        grid-template-columns:.82fr 1.18fr;
    }

    .location-why__visual{
        min-height:760px;
    }

    .location-why__item{
        min-height:190px;
    }

}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .location-why__layout{
        grid-template-columns:1fr;
    }

    .location-why__visual{
        min-height:540px;
    }

    .location-why__content{
        padding:42px;
    }

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

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-why{
        padding:70px 0;
    }

    .location-why__visual{
        min-height:480px;
        border-radius:23px;
    }

    .location-why__visual-content{
        right:24px;
        bottom:24px;
        left:24px;
    }

    .location-why__content{
        padding:30px;
        border-radius:23px;
    }

    .location-why__advantages{
        grid-template-columns:1fr;
    }

    .location-why__item{
        min-height:0;
    }

    .location-why__cta{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-why__visual{
        min-height:420px;
        border-radius:19px;
    }

    .location-why__visual-note{
        top:13px;
        right:13px;
        left:13px;
        max-width:none;
        padding:11px 13px;
        border-radius:14px;
    }

    .location-why__visual-note strong{
        font-size:16px;
    }

    .location-why__visual-content{
        right:20px;
        bottom:20px;
        left:20px;
    }

    .location-why__visual-content h3{
        font-size:28px;
    }

    .location-why__content{
        padding:24px 20px;
        border-radius:19px;
    }

    .location-why__lead{
        font-size:16px;
    }

    .location-why__item{
        grid-template-columns:43px 1fr;
        gap:12px;
        padding:18px;
        border-radius:16px;
    }

    .location-why__number{
        width:39px;
        height:39px;
    }

    .location-why__item h3{
        font-size:16px;
    }

    .location-why__item p{
        font-size:16px;
    }

    .location-why__cta{
        padding:18px;
        border-radius:16px;
    }

    .location-why__cta .btn{
        width:100%;
    }

}






/* =========================================================
   SECTION 06 — WHAT TO EXPECT
========================================================= */

.location-expect{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 06 — HEADER
========================================================= */

.location-expect__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:42px;
}

.location-expect__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-expect__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.location-expect__head h2{
    max-width:760px;
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.location-expect__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.location-expect__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — PROCESS
========================================================= */

.location-expect__process{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 06 — STEP
========================================================= */

.location-expect__step{
    position:relative;

    display:flex;
    flex-direction:column;

    min-width:0;
    min-height:390px;

    padding:26px;

    overflow:hidden;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.location-expect__step:hover{
    transform:translateY(-4px);

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


/* =========================================================
   SECTION 06 — STEP HEAD
========================================================= */

.location-expect__step-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.location-expect__step-head>span{
    display:grid;
    place-items:center;

    width:47px;
    height:47px;

    border-radius:14px;

    background:var(--bg-soft);

    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.location-expect__step-head small{
    color:var(--muted);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 06 — STEP CONTENT
========================================================= */

.location-expect__step-content{
    margin-top:auto;
    padding-top:65px;
}

.location-expect__step-content h3{
    margin:0 0 12px;

    color:var(--ink);

    font-size:22px;
    font-weight:800;
    line-height:1.23;
    letter-spacing:-.025em;
}

.location-expect__step-content p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — STEP FOOT
========================================================= */

.location-expect__step-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

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

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

.location-expect__step-foot>span{
    color:var(--muted);

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

.location-expect__step-foot>b{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-expect__step:hover .location-expect__step-foot>b{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 06 — ACCENT STEP
========================================================= */

.location-expect__step--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.3),
            transparent 40%
        ),
        var(--bg-dark);
}

.location-expect__step--accent .location-expect__step-head>span{
    background:var(--secondary);

    color:var(--ink);
}

.location-expect__step--accent .location-expect__step-head small{
    color:rgba(255,255,255,.6);
}

.location-expect__step--accent .location-expect__step-content h3{
    color:#fff;
}

.location-expect__step--accent .location-expect__step-content p{
    color:rgba(255,255,255,.67);
}


/* =========================================================
   SECTION 06 — STEP CTA
========================================================= */

.location-expect__step-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

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

    border-top:1px solid rgba(255,255,255,.13);

    color:#fff;

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

.location-expect__step-cta>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;

    transition:transform .3s var(--ease);
}

.location-expect__step-cta:hover>span{
    transform:translate(3px,-3px);
}


/* =========================================================
   SECTION 06 — BOTTOM
========================================================= */

.location-expect__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.location-expect__bottom-main{
    display:flex;
    align-items:center;
    gap:14px;
}


/* =========================================================
   SECTION 06 — STATUS
========================================================= */

.location-expect__status{
    display:grid;
    place-items:center;

    flex:0 0 42px;

    width:42px;
    height:42px;

    border-radius:12px;

    background:rgba(67,181,160,.1);
}

.location-expect__status>span{
    width:10px;
    height:10px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 5px rgba(67,181,160,.12);
}

.location-expect__bottom-main small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.location-expect__bottom-main strong{
    display:block;

    max-width:650px;

    color:var(--ink);

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


/* =========================================================
   SECTION 06 — BOTTOM LINK
========================================================= */

.location-expect__bottom>a{
    display:flex;
    align-items:center;
    gap:10px;

    flex:0 0 auto;

    color:var(--ink);

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

.location-expect__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.location-expect__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 06 — SMALL DESKTOP
========================================================= */

@media(max-width:1200px){

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

    .location-expect__step{
        min-height:330px;
    }

    .location-expect__step-content{
        padding-top:55px;
    }

}


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .location-expect__head{
        grid-template-columns:1fr;
        gap:21px;

        margin-bottom:34px;
    }

    .location-expect__head>p{
        max-width:750px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-expect{
        padding:70px 0;
    }

    .location-expect__head>p{
        font-size:16px;
    }

    .location-expect__process{
        grid-template-columns:1fr;
        gap:10px;
    }

    .location-expect__step{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .location-expect__step-content{
        margin-top:45px;
        padding-top:0;
    }

    .location-expect__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-expect__step{
        padding:20px;

        border-radius:17px;
    }

    .location-expect__step-head>span{
        width:41px;
        height:41px;

        border-radius:12px;
    }

    .location-expect__step-content{
        margin-top:38px;
    }

    .location-expect__step-content h3{
        font-size:19px;
    }

    .location-expect__step-content p{
        font-size:16px;
    }

    .location-expect__bottom{
        padding:18px;

        border-radius:16px;
    }

    .location-expect__bottom-main{
        align-items:flex-start;
    }

    .location-expect__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 07 — LOCATION FAQ
========================================================= */

.location-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 07 — LAYOUT
========================================================= */

.location-faq__layout{
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:18px;
    align-items:start;
}


/* =========================================================
   SECTION 07 — LEFT SIDE
========================================================= */

.location-faq__side{
    min-width:0;
}


/* =========================================================
   SECTION 07 — VISUAL
========================================================= */

.location-faq__visual{
    position:relative;
    min-height:295px;
    overflow:hidden;

    border-radius:26px 26px 0 0;

    background:var(--bg-dark);
}

.location-faq__visual>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.location-faq__visual:hover>img{
    transform:scale(1.04);
}

.location-faq__visual-overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(7,18,15,.01) 25%,
            rgba(7,18,15,.08) 48%,
            rgba(7,18,15,.68) 100%
        );
}


/* =========================================================
   SECTION 07 — VISUAL BADGE
========================================================= */

.location-faq__visual-badge{
    position:absolute;
    z-index:3;

    right:18px;
    bottom:18px;
    left:18px;

    display:flex;
    align-items:center;
    gap:12px;

    padding:12px 14px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;

    background:rgba(10,24,21,.78);

    backdrop-filter:blur(10px);
}

.location-faq__visual-badge>span{
    flex:0 0 10px;

    width:10px;
    height:10px;

    border-radius:50%;

    background:var(--secondary);

    box-shadow:
        0 0 0 5px rgba(255,212,0,.11);
}

.location-faq__visual-badge small{
    display:block;
    margin-bottom:2px;

    color:rgba(255,255,255,.58);

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

.location-faq__visual-badge strong{
    display:block;

    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 07 — INTRO
========================================================= */

.location-faq__intro{
    padding:32px;

    border-radius:0 0 26px 26px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);
}

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

    margin-bottom:14px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-faq__eyebrow::before{
    content:"";

    flex:0 0 30px;

    width:30px;
    height:2px;

    background:#89d8ca;
}

.location-faq__intro h2{
    margin:0 0 15px;

    color:#fff;

    font-size:clamp(30px,3vw,42px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.location-faq__intro h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.location-faq__intro>p{
    max-width:470px;
    margin:0;

    color:rgba(255,255,255,.66);

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


/* =========================================================
   SECTION 07 — INTRO BOTTOM
========================================================= */

.location-faq__intro-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;

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

    border-top:1px solid rgba(255,255,255,.13);
}

.location-faq__intro-bottom small{
    display:block;

    margin-bottom:3px;

    color:rgba(255,255,255,.53);

    font-size:16px;
}

.location-faq__intro-bottom strong{
    display:block;

    color:#fff;

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

.location-faq__intro-bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:#fff;

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

.location-faq__intro-bottom>a>span{
    display:grid;
    place-items:center;

    width:37px;
    height:37px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;

    transition:transform .3s var(--ease);
}

.location-faq__intro-bottom>a:hover>span{
    transform:translate(3px,-3px);
}


/* =========================================================
   SECTION 07 — FAQ CONTENT
========================================================= */

.location-faq__content{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
    align-items:start;
}

.location-faq__column{
    display:flex;
    flex-direction:column;
    gap:11px;
}


/* =========================================================
   SECTION 07 — FAQ ITEM
========================================================= */

.location-faq__item{
    overflow:hidden;

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

    background:var(--bg-soft);

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

.location-faq__item[open]{
    border-color:rgba(67,181,160,.38);

    background:#fff;

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


/* =========================================================
   SECTION 07 — SUMMARY
========================================================= */

.location-faq__item summary{
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 38px;
    align-items:center;
    gap:14px;

    min-height:100px;
    padding:20px;

    cursor:pointer;
    list-style:none;
}

.location-faq__item summary::-webkit-details-marker{
    display:none;
}

.location-faq__item summary>strong{
    min-width:0;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 07 — NUMBER
========================================================= */

.location-faq__number{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:12px;

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

    font-size:16px;
    font-weight:900;

    box-shadow:0 6px 18px rgba(23,37,34,.05);
}


/* =========================================================
   SECTION 07 — PLUS
========================================================= */

.location-faq__plus{
    position:relative;

    width:37px;
    height:37px;

    border-radius:50%;

    background:rgba(67,181,160,.11);
}

.location-faq__plus::before,
.location-faq__plus::after{
    content:"";

    position:absolute;
    top:50%;
    left:50%;

    width:13px;
    height:2px;

    border-radius:5px;

    background:var(--primary-dark);

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

    transition:transform .25s ease;
}

.location-faq__plus::after{
    transform:
        translate(-50%,-50%)
        rotate(90deg);
}

.location-faq__item[open] .location-faq__plus{
    background:var(--secondary);
}

.location-faq__item[open] .location-faq__plus::after{
    transform:translate(-50%,-50%);
}


/* =========================================================
   SECTION 07 — ANSWER
========================================================= */

.location-faq__answer{
    padding:
        0
        22px
        22px
        78px;
}

.location-faq__answer p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — SMALL DESKTOP
========================================================= */

@media(max-width:1200px){

    .location-faq__layout{
        grid-template-columns:.85fr 1.15fr;
    }

    .location-faq__content{
        grid-template-columns:1fr;
    }

    .location-faq__visual{
        min-height:300px;
    }

}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .location-faq__layout{
        grid-template-columns:1fr;
        gap:18px;
    }

    .location-faq__side{
        display:grid;
        grid-template-columns:.95fr 1.05fr;
    }

    .location-faq__visual{
        min-height:410px;

        border-radius:
            24px
            0
            0
            24px;
    }

    .location-faq__intro{
        display:flex;
        flex-direction:column;
        justify-content:center;

        padding:34px;

        border-radius:
            0
            24px
            24px
            0;
    }

    .location-faq__intro-bottom{
        margin-top:28px;
    }

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

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-faq{
        padding:70px 0;
    }

    .location-faq__side{
        display:block;
    }

    .location-faq__visual{
        min-height:340px;

        border-radius:
            22px
            22px
            0
            0;
    }

    .location-faq__intro{
        display:block;

        padding:28px;

        border-radius:
            0
            0
            22px
            22px;
    }

    .location-faq__content{
        grid-template-columns:1fr;

        margin-top:2px;
    }

    .location-faq__item summary{
        min-height:90px;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-faq__visual{
        min-height:280px;

        border-radius:
            19px
            19px
            0
            0;
    }

    .location-faq__visual-badge{
        right:12px;
        bottom:12px;
        left:12px;

        padding:10px 12px;

        border-radius:13px;
    }

    .location-faq__visual-badge small{
        font-size:16px;
    }

    .location-faq__visual-badge strong{
        font-size:16px;
    }

    .location-faq__intro{
        padding:24px 20px;

        border-radius:
            0
            0
            19px
            19px;
    }

    .location-faq__intro h2{
        font-size:29px;
    }

    .location-faq__intro>p{
        font-size:16px;
    }

    .location-faq__intro-bottom{
        align-items:flex-start;
        flex-direction:column;

        margin-top:25px;
        padding-top:18px;
    }

    .location-faq__intro-bottom>a{
        justify-content:space-between;

        width:100%;
    }


    /* FAQ ITEMS */

    .location-faq__item{
        border-radius:16px;
    }

    .location-faq__item summary{
        grid-template-columns:
            39px
            minmax(0,1fr)
            34px;

        gap:11px;

        min-height:0;

        padding:17px;
    }

    .location-faq__number{
        width:37px;
        height:37px;
    }

    .location-faq__plus{
        width:34px;
        height:34px;
    }

    .location-faq__item summary>strong{
        font-size:16px;
    }

    .location-faq__answer{
        padding:
            0
            17px
            18px;
    }

    .location-faq__answer p{
        font-size:16px;
    }

}




/* =========================================================
   SECTION 08 — SCHEDULE SERVICE
========================================================= */

.location-booking{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 08 — VISUAL
========================================================= */

.location-booking__visual{
    position:relative;
    min-height:560px;
    overflow:hidden;

    border-radius:30px;

    background:var(--bg-dark);

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

.location-booking__visual>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.location-booking__visual:hover>img{
    transform:scale(1.035);
}

.location-booking__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.92) 0%,
            rgba(7,18,15,.72) 42%,
            rgba(7,18,15,.18) 78%
        );
}


/* =========================================================
   SECTION 08 — CONTENT
========================================================= */

.location-booking__content{
    position:absolute;
    z-index:3;

    top:50%;
    left:clamp(34px,6vw,76px);

    max-width:650px;

    transform:translateY(-58%);
}

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

    margin-bottom:18px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.location-booking__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:#89d8ca;
}

.location-booking__content h2{
    margin:0 0 20px;

    color:#fff;

    font-size:clamp(40px,4.4vw,64px);
    font-weight:500;
    line-height:1;
    letter-spacing:-.045em;
}

.location-booking__content h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.location-booking__content p{
    max-width:580px;
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 08 — QUICK INFO
========================================================= */

.location-booking__info{
    position:absolute;
    z-index:4;

    right:28px;
    bottom:28px;
    left:28px;

    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:8px;
}

.location-booking__info>div{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:center;
    gap:12px;

    min-width:0;

    padding:13px 15px;

    border:1px solid rgba(255,255,255,.15);
    border-radius:15px;

    background:rgba(10,24,21,.72);

    backdrop-filter:blur(11px);
}

.location-booking__info>div>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.location-booking__info small{
    display:block;

    margin-bottom:3px;

    color:rgba(255,255,255,.55);

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

.location-booking__info strong{
    display:block;

    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 08 — PANEL
========================================================= */

.location-booking__panel{
    position:relative;
    z-index:5;

    width:calc(100% - 60px);

    margin:-1px auto 0;
    padding:18px;

    border:1px solid var(--border);
    border-radius:0 0 28px 28px;

    background:#fff;

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


/* =========================================================
   SECTION 08 — PANEL HEAD
========================================================= */

.location-booking__panel-head{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:end;
    gap:50px;

    padding:28px 24px 30px;
}

.location-booking__panel-head>div>span{
    display:block;

    margin-bottom:7px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.location-booking__panel-head h3{
    margin:0;

    color:var(--ink);

    font-size:clamp(27px,2.5vw,36px);
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.035em;
}

.location-booking__panel-head>p{
    max-width:600px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 08 — FORM
========================================================= */

.location-booking__form{
    overflow:hidden;

    border-radius:20px;

    background:var(--bg-soft);
}

.location-booking__form iframe{
    display:block;

    width:100%;
    min-height:450px;

    border:0;
}


/* =========================================================
   SECTION 08 — TABLET
========================================================= */

@media(max-width:992px){

    .location-booking__visual{
        min-height:620px;
    }

    .location-booking__content{
        top:70px;
        right:40px;
        left:40px;

        max-width:650px;

        transform:none;
    }

    .location-booking__info{
        grid-template-columns:1fr;

        right:24px;
        bottom:24px;
        left:24px;

        max-width:460px;
    }

    .location-booking__panel{
        width:calc(100% - 36px);
    }

    .location-booking__panel-head{
        grid-template-columns:1fr;
        gap:14px;
    }

}


/* =========================================================
   SECTION 08 — MOBILE
========================================================= */

@media(max-width:767px){

    .location-booking{
        padding:70px 0;
    }

    .location-booking__visual{
        min-height:680px;

        border-radius:23px;
    }

    .location-booking__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.3) 0%,
                rgba(7,18,15,.9) 100%
            );
    }

    .location-booking__content{
        top:48px;
        right:26px;
        left:26px;
    }

    .location-booking__content h2{
        font-size:42px;
    }

    .location-booking__content p{
        font-size:16px;
    }

    .location-booking__info{
        right:20px;
        bottom:20px;
        left:20px;

        max-width:none;
    }

    .location-booking__panel{
        width:calc(100% - 20px);

        padding:14px;

        border-radius:0 0 22px 22px;
    }

    .location-booking__panel-head{
        padding:23px 18px 25px;
    }

}


/* =========================================================
   SECTION 08 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .location-booking__visual{
        min-height:690px;

        border-radius:19px;
    }

    .location-booking__content{
        top:38px;
        right:20px;
        left:20px;
    }

    .location-booking__eyebrow{
        font-size:16px;
    }

    .location-booking__content h2{
        font-size:34px;
    }

    .location-booking__content p{
        font-size:16px;
        line-height:1.65;
    }

    .location-booking__info{
        right:14px;
        bottom:14px;
        left:14px;

        gap:6px;
    }

    .location-booking__info>div{
        grid-template-columns:37px minmax(0,1fr);

        padding:10px 11px;

        border-radius:13px;
    }

    .location-booking__info>div>span{
        width:35px;
        height:35px;

        border-radius:10px;
    }

    .location-booking__info small{
        font-size:16px;
    }

    .location-booking__info strong{
        font-size:16px;
    }

    .location-booking__panel{
        width:100%;

        padding:10px;

        border-radius:0 0 19px 19px;
    }

    .location-booking__panel-head{
        padding:21px 14px;
    }

    .location-booking__panel-head h3{
        font-size:26px;
    }

    .location-booking__panel-head>p{
        font-size:16px;
    }

    .location-booking__form{
        border-radius:15px;
    }

    .location-booking__form iframe{
        min-height:520px;
    }

}

































/* =========================================================
   SECTION 01 — REFUND POLICY HERO
========================================================= */

.refund-policy-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(58px,6vw,88px) 0 var(--section-space);
    background:#fff;
}


/* =========================================================
   SECTION 01 — HEADER
========================================================= */

.refund-policy-hero__head{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:70px;
    margin-bottom:30px;
}


/* =========================================================
   SECTION 01 — TITLE
========================================================= */

.refund-policy-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:15px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-policy-hero__eyebrow::before{
    content:"";

    width:32px;
    height:2px;

    background:var(--secondary);
}

.refund-policy-hero__title h1{
    margin:0;

    color:var(--ink);

    font-size:clamp(54px,6.5vw,96px);
    font-weight:700;
    line-height:.95;
    letter-spacing:-.06em;
}


/* =========================================================
   SECTION 01 — SUMMARY
========================================================= */

.refund-policy-hero__summary{
    max-width:470px;
    padding-left:26px;
    border-left:1px solid var(--border);
}

.refund-policy-hero__summary small{
    display:block;
    margin-bottom:7px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.refund-policy-hero__summary p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 01 — VISUAL
========================================================= */

.refund-policy-hero__visual{
    position:relative;

    min-height:520px;

    overflow:hidden;

    border-radius:28px;

    background:var(--bg-dark);

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

.refund-policy-hero__visual>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.refund-policy-hero__visual:hover>img{
    transform:scale(1.025);
}


/* =========================================================
   SECTION 01 — OVERLAY
========================================================= */

.refund-policy-hero__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.78) 0%,
            rgba(7,18,15,.48) 42%,
            rgba(7,18,15,.08) 80%
        );
}


/* =========================================================
   SECTION 01 — BADGE
========================================================= */

.refund-policy-hero__badge{
    position:absolute;
    z-index:3;

    top:22px;
    right:22px;

    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:center;
    gap:11px;

    max-width:260px;

    padding:10px 13px 10px 10px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;

    background:rgba(10,24,21,.72);

    backdrop-filter:blur(10px);
}

.refund-policy-hero__badge>span{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.refund-policy-hero__badge small{
    display:block;
    margin-bottom:2px;

    color:rgba(255,255,255,.56);

    font-size:16px;
}

.refund-policy-hero__badge strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 01 — VISUAL CONTENT
========================================================= */

.refund-policy-hero__content{
    position:absolute;
    z-index:3;

    top:50%;
    left:clamp(28px,5vw,60px);

    max-width:590px;

    transform:translateY(-50%);
}

.refund-policy-hero__content>span{
    display:block;
    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.refund-policy-hero__content h2{
    margin:0 0 16px;

    color:#fff;

    font-size:clamp(34px,4vw,54px);
    font-weight:500;
    line-height:1.03;
    letter-spacing:-.045em;
}

.refund-policy-hero__content h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.refund-policy-hero__content p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.72);

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

.refund-policy-hero__content .btn{
    margin-top:24px;
}


/* =========================================================
   SECTION 01 — NAV
========================================================= */

.refund-policy-hero__nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));

    margin-top:14px;

    overflow:hidden;

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

    background:#fff;
}

.refund-policy-hero__nav>a{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    gap:11px;

    min-width:0;
    min-height:78px;

    padding:15px 17px;

    color:inherit;

    transition:background .25s ease;
}

.refund-policy-hero__nav>a:not(:last-child){
    border-right:1px solid var(--border);
}

.refund-policy-hero__nav>a:hover{
    background:var(--bg-soft);
}

.refund-policy-hero__nav>a>span{
    display:grid;
    place-items:center;

    width:35px;
    height:35px;

    border-radius:10px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.refund-policy-hero__nav small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.refund-policy-hero__nav strong{
    display:block;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-policy-hero__head{
        grid-template-columns:1fr;
        gap:22px;
    }

    .refund-policy-hero__summary{
        max-width:650px;

        padding-left:0;

        border-left:0;
    }

    .refund-policy-hero__visual{
        min-height:500px;
    }

    .refund-policy-hero__content{
        right:35px;
        left:35px;
    }

    .refund-policy-hero__nav{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .refund-policy-hero__nav>a:nth-child(2){
        border-right:0;
    }

    .refund-policy-hero__nav>a:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-policy-hero{
        padding:55px 0 70px;
    }

    .refund-policy-hero__title h1{
        font-size:clamp(48px,14vw,70px);
    }

    .refund-policy-hero__visual{
        min-height:500px;

        border-radius:22px;
    }

    .refund-policy-hero__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.16) 0%,
                rgba(7,18,15,.82) 100%
            );
    }

    .refund-policy-hero__badge{
        top:15px;
        right:15px;
        left:15px;

        max-width:280px;
    }

    .refund-policy-hero__content{
        top:auto;
        right:24px;
        bottom:28px;
        left:24px;

        max-width:none;

        transform:none;
    }

    .refund-policy-hero__content p{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-policy-hero__head{
        margin-bottom:24px;
    }

    .refund-policy-hero__summary p{
        font-size:16px;
    }

    .refund-policy-hero__visual{
        min-height:470px;

        border-radius:19px;
    }

    .refund-policy-hero__badge{
        top:12px;
        right:12px;
        left:12px;

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

        padding:9px 10px;

        border-radius:12px;
    }

    .refund-policy-hero__badge>span{
        width:36px;
        height:36px;

        border-radius:10px;
    }

    .refund-policy-hero__content{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .refund-policy-hero__content h2{
        font-size:30px;
    }

    .refund-policy-hero__content p{
        font-size:16px;
    }

    .refund-policy-hero__content .btn{
        width:100%;
    }

    .refund-policy-hero__nav{
        grid-template-columns:1fr;

        border-radius:16px;
    }

    .refund-policy-hero__nav>a{
        min-height:68px;

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

    .refund-policy-hero__nav>a:last-child{
        border-bottom:0 !important;
    }

}





/* =========================================================
   SECTION 02 — REFUND POLICY OVERVIEW
========================================================= */

.refund-overview{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.refund-overview__layout{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 02 — INTRO
========================================================= */

.refund-overview__intro{
    padding:clamp(34px,4vw,52px);
    border:1px solid var(--border);
    border-radius:28px;
    background:#fff;
}

.refund-overview__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-overview__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.refund-overview__intro h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-overview__intro h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.refund-overview__intro>p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — HIGHLIGHTS
========================================================= */

.refund-overview__highlights{
    display:grid;
    gap:9px;
    margin-top:30px;
}

.refund-overview__highlights>div{
    display:grid;
    grid-template-columns:43px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

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

    background:var(--bg-soft);
}

.refund-overview__highlights>div>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:#fff;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.refund-overview__highlights small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.refund-overview__highlights strong{
    display:block;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 02 — CONTENT
========================================================= */

.refund-overview__content{
    padding:clamp(36px,4.5vw,58px);
    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.18),
            transparent 33%
        ),
        var(--bg-dark);
}

.refund-overview__content-head{
    padding-bottom:23px;
    margin-bottom:25px;
    border-bottom:1px solid rgba(255,255,255,.13);
}

.refund-overview__content-head>span{
    display:block;
    margin-bottom:7px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-overview__content-head h3{
    margin:0;

    color:#fff;

    font-size:clamp(28px,2.8vw,39px);
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.035em;
}


/* =========================================================
   SECTION 02 — TEXT
========================================================= */

.refund-overview__text{
    display:grid;
    gap:18px;
}

.refund-overview__text p{
    max-width:820px;
    margin:0;

    color:rgba(255,255,255,.72);

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


/* =========================================================
   SECTION 02 — NOTE
========================================================= */

.refund-overview__note{
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    align-items:start;
    gap:14px;

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

    border:1px solid rgba(255,255,255,.13);
    border-radius:17px;

    background:rgba(255,255,255,.06);
}

.refund-overview__note-icon{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:17px;
    font-weight:900;
}

.refund-overview__note small{
    display:block;
    margin-bottom:5px;

    color:#89d8ca;

    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.refund-overview__note p{
    margin:0;

    color:rgba(255,255,255,.72);

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


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-overview__layout{
        grid-template-columns:1fr;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-overview{
        padding:70px 0;
    }

    .refund-overview__intro,
    .refund-overview__content{
        padding:30px;
        border-radius:22px;
    }

    .refund-overview__intro>p,
    .refund-overview__text p{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-overview__intro,
    .refund-overview__content{
        padding:23px 20px;
        border-radius:18px;
    }

    .refund-overview__highlights>div{
        grid-template-columns:39px minmax(0,1fr);
        padding:12px;
    }

    .refund-overview__highlights>div>span{
        width:36px;
        height:36px;
    }

    .refund-overview__note{
        grid-template-columns:39px minmax(0,1fr);
        gap:11px;

        padding:16px;

        border-radius:15px;
    }

    .refund-overview__note-icon{
        width:37px;
        height:37px;
    }

    .refund-overview__note p{
        font-size:16px;
    }

}






/* =========================================================
   SECTION 03 — CANCELLATIONS & REFUND CONDITIONS
========================================================= */

.refund-conditions{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 03 — LAYOUT
========================================================= */

.refund-conditions__layout{
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 03 — INTRO
========================================================= */

.refund-conditions__intro{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:clamp(36px,4vw,54px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 38%
        ),
        var(--bg-dark);
}

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

    margin-bottom:17px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-conditions__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:#89d8ca;
}

.refund-conditions__intro h2{
    margin:0 0 20px;

    color:#fff;

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-conditions__intro h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.refund-conditions__intro>p{
    max-width:520px;
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 03 — INTRO NOTE
========================================================= */

.refund-conditions__intro-note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:start;

    margin-top:30px;
    padding:18px;

    border:1px solid rgba(255,255,255,.13);
    border-radius:16px;

    background:rgba(255,255,255,.06);
}

.refund-conditions__intro-note>span{
    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.refund-conditions__intro-note p{
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 03 — LIST
========================================================= */

.refund-conditions__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 03 — ITEM
========================================================= */

.refund-conditions__item{
    display:flex;
    flex-direction:column;

    min-height:300px;
    padding:26px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease);
}

.refund-conditions__item:hover{
    transform:translateY(-4px);
    background:#fff;
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 03 — ITEM TOP
========================================================= */

.refund-conditions__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.refund-conditions__item-top>span{
    display:grid;
    place-items:center;

    width:44px;
    height:44px;

    border-radius:13px;

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

    font-size:16px;
    font-weight:900;
}

.refund-conditions__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 03 — ITEM CONTENT
========================================================= */

.refund-conditions__item h3{
    margin:auto 0 12px;
    padding-top:50px;

    color:var(--ink);

    font-size:22px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.refund-conditions__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — ACCENT ITEM
========================================================= */

.refund-conditions__item--accent{
    border-color:rgba(67,181,160,.22);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.14),
            transparent 38%
        ),
        #eef8f5;
}

.refund-conditions__item--accent
.refund-conditions__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 03 — BOTTOM
========================================================= */

.refund-conditions__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.refund-conditions__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.refund-conditions__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.refund-conditions__bottom small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.refund-conditions__bottom strong{
    display:block;

    color:var(--ink);

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

.refund-conditions__bottom>a{
    display:flex;
    align-items:center;
    gap:10px;

    flex:0 0 auto;

    color:var(--ink);

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

.refund-conditions__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.refund-conditions__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-conditions__layout{
        grid-template-columns:1fr;
    }

    .refund-conditions__intro{
        min-height:420px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-conditions{
        padding:70px 0;
    }

    .refund-conditions__intro{
        min-height:0;

        padding:30px;

        border-radius:22px;
    }

    .refund-conditions__list{
        grid-template-columns:1fr;
    }

    .refund-conditions__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .refund-conditions__item h3{
        margin-top:45px;
        padding-top:0;
    }

    .refund-conditions__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-conditions__intro{
        padding:24px 20px;

        border-radius:18px;
    }

    .refund-conditions__intro>p{
        font-size:16px;
    }

    .refund-conditions__intro-note{
        grid-template-columns:38px minmax(0,1fr);

        padding:15px;

        border-radius:14px;
    }

    .refund-conditions__intro-note>span{
        width:35px;
        height:35px;
    }

    .refund-conditions__intro-note p{
        font-size:16px;
    }

    .refund-conditions__item{
        padding:20px;

        border-radius:17px;
    }

    .refund-conditions__item h3{
        margin-top:38px;

        font-size:19px;
    }

    .refund-conditions__item p{
        font-size:16px;
    }

    .refund-conditions__bottom{
        padding:18px;

        border-radius:16px;
    }

    .refund-conditions__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}







/* =========================================================
   SECTION 04 — PAYMENTS, PARTS & NON-REFUNDABLE CHARGES
========================================================= */

.refund-payments{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 04 — HEADER
========================================================= */

.refund-payments__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:40px;
}

.refund-payments__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-payments__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.refund-payments__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-payments__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.refund-payments__head>p{
    max-width:540px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.refund-payments__layout{
    display:grid;
    grid-template-columns:.78fr 1.22fr;
    gap:14px;
    align-items:stretch;
}


/* =========================================================
   SECTION 04 — SUMMARY
========================================================= */

.refund-payments__summary{
    display:flex;
    flex-direction:column;

    min-height:610px;
    padding:38px;

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 38%
        ),
        var(--bg-dark);
}

.refund-payments__summary-label{
    display:block;
    margin-bottom:15px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-payments__summary h3{
    max-width:500px;
    margin:0 0 18px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.refund-payments__summary h3 strong{
    display:block;
    color:#89d8ca;
    font-weight:800;
}

.refund-payments__summary>p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 04 — SUMMARY ITEMS
========================================================= */

.refund-payments__summary-items{
    display:grid;
    gap:9px;

    margin-top:auto;
    padding-top:36px;
}

.refund-payments__summary-items>div{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

    border:1px solid rgba(255,255,255,.13);
    border-radius:15px;

    background:rgba(255,255,255,.06);
}

.refund-payments__summary-items>div>span{
    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.refund-payments__summary-items small{
    display:block;
    margin-bottom:3px;

    color:rgba(255,255,255,.55);

    font-size:16px;
}

.refund-payments__summary-items strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 04 — CARDS
========================================================= */

.refund-payments__cards{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 04 — CARD
========================================================= */

.refund-payments__card{
    display:flex;
    flex-direction:column;

    min-height:295px;
    padding:26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.refund-payments__card:hover{
    transform:translateY(-4px);
    box-shadow:var(--shadow-sm);
}

.refund-payments__card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.refund-payments__card-top>span{
    display:grid;
    place-items:center;

    width:44px;
    height:44px;

    border-radius:13px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.refund-payments__card-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.refund-payments__card h3{
    margin:auto 0 11px;
    padding-top:45px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.refund-payments__card p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 04 — ACCENT CARD
========================================================= */

.refund-payments__card--accent{
    border-color:rgba(67,181,160,.24);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.15),
            transparent 42%
        ),
        #edf8f5;
}

.refund-payments__card--accent
.refund-payments__card-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 04 — BOTTOM
========================================================= */

.refund-payments__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.refund-payments__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.refund-payments__bottom>div>span{
    flex:0 0 11px;
    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.refund-payments__bottom p{
    max-width:760px;
    margin:0;

    color:var(--muted);

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

.refund-payments__bottom>a{
    display:flex;
    align-items:center;
    gap:10px;

    flex:0 0 auto;

    color:var(--ink);

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

.refund-payments__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.refund-payments__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-payments__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .refund-payments__layout{
        grid-template-columns:1fr;
    }

    .refund-payments__summary{
        min-height:450px;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-payments{
        padding:70px 0;
    }

    .refund-payments__head>p{
        font-size:16px;
    }

    .refund-payments__summary{
        min-height:0;
        padding:30px;

        border-radius:22px;
    }

    .refund-payments__summary-items{
        margin-top:40px;
        padding-top:0;
    }

    .refund-payments__cards{
        grid-template-columns:1fr;
    }

    .refund-payments__card{
        min-height:0;
        padding:24px;

        border-radius:20px;
    }

    .refund-payments__card h3{
        margin-top:42px;
        padding-top:0;
    }

    .refund-payments__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-payments__summary{
        padding:24px 20px;
        border-radius:18px;
    }

    .refund-payments__summary h3{
        font-size:29px;
    }

    .refund-payments__summary>p{
        font-size:16px;
    }

    .refund-payments__summary-items>div{
        grid-template-columns:38px minmax(0,1fr);
        padding:11px 12px;
    }

    .refund-payments__summary-items>div>span{
        width:35px;
        height:35px;
    }

    .refund-payments__card{
        padding:20px;
        border-radius:17px;
    }

    .refund-payments__card h3{
        margin-top:37px;
        font-size:19px;
    }

    .refund-payments__card p{
        font-size:16px;
    }

    .refund-payments__bottom{
        padding:18px;
        border-radius:16px;
    }

    .refund-payments__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}






/* =========================================================
   SECTION 05 — HOW TO REQUEST A REFUND
========================================================= */

.refund-request{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.refund-request__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:40px;
}

.refund-request__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-request__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.refund-request__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-request__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.refund-request__head>p{
    max-width:540px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — STEPS
========================================================= */

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


/* =========================================================
   SECTION 05 — STEP
========================================================= */

.refund-request__step{
    display:flex;
    flex-direction:column;

    min-height:330px;
    padding:27px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        background .3s ease;
}

.refund-request__step:hover{
    transform:translateY(-4px);
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.refund-request__step-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.refund-request__step-top>span{
    display:grid;
    place-items:center;

    width:45px;
    height:45px;

    border-radius:13px;

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

    font-size:16px;
    font-weight:900;
}

.refund-request__step-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.refund-request__step h3{
    margin:auto 0 12px;
    padding-top:55px;

    color:var(--ink);

    font-size:22px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.refund-request__step p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — ACCENT STEP
========================================================= */

.refund-request__step--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.30),
            transparent 42%
        ),
        var(--bg-dark);
}

.refund-request__step--accent:hover{
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.36),
            transparent 42%
        ),
        #172b26;
}

.refund-request__step--accent
.refund-request__step-top>span{
    background:var(--secondary);
    color:var(--ink);
}

.refund-request__step--accent
.refund-request__step-top small{
    color:rgba(255,255,255,.58);
}

.refund-request__step--accent h3{
    color:#fff;
}

.refund-request__step--accent p{
    color:rgba(255,255,255,.68);
}

.refund-request__step--accent>a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

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

    border-top:1px solid rgba(255,255,255,.13);

    color:#fff;

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

.refund-request__step--accent>a>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;

    transition:transform .3s var(--ease);
}

.refund-request__step--accent>a:hover>span{
    transform:translate(3px,-3px);
}


/* =========================================================
   SECTION 05 — REVIEW PANEL
========================================================= */

.refund-request__review{
    display:grid;
    grid-template-columns:55px minmax(0,1fr);
    align-items:start;
    gap:18px;

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

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

    background:#fff;

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

.refund-request__review-icon{
    display:grid;
    place-items:center;

    width:50px;
    height:50px;

    border-radius:14px;

    background:var(--secondary);
    color:var(--ink);

    font-size:18px;
    font-weight:900;
}

.refund-request__review-content small{
    display:block;
    margin-bottom:5px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.refund-request__review-content h3{
    margin:0 0 8px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.3;
}

.refund-request__review-content p{
    max-width:1000px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-request__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .refund-request__steps{
        grid-template-columns:1fr 1fr;
    }

    .refund-request__step--accent{
        grid-column:1 / -1;
        min-height:280px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-request{
        padding:70px 0;
    }

    .refund-request__head>p{
        font-size:16px;
    }

    .refund-request__steps{
        grid-template-columns:1fr;
    }

    .refund-request__step,
    .refund-request__step--accent{
        grid-column:auto;

        min-height:0;
        padding:24px;

        border-radius:20px;
    }

    .refund-request__step h3{
        margin-top:44px;
        padding-top:0;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-request__step{
        padding:20px;
        border-radius:17px;
    }

    .refund-request__step h3{
        margin-top:38px;
        font-size:19px;
    }

    .refund-request__step p{
        font-size:16px;
    }

    .refund-request__review{
        grid-template-columns:42px minmax(0,1fr);
        gap:13px;

        padding:19px;

        border-radius:17px;
    }

    .refund-request__review-icon{
        width:39px;
        height:39px;

        border-radius:11px;

        font-size:16px;
    }

    .refund-request__review-content h3{
        font-size:18px;
    }

    .refund-request__review-content p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 06 — REFUND POLICY FAQ
========================================================= */

.refund-faq{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 06 — HEADER
========================================================= */

.refund-faq__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:40px;
}

.refund-faq__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-faq__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.refund-faq__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-faq__head h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.refund-faq__head>p{
    max-width:540px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — GRID
========================================================= */

.refund-faq__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.refund-faq__column{
    display:flex;
    flex-direction:column;
    gap:12px;
}


/* =========================================================
   SECTION 06 — FAQ ITEM
========================================================= */

.refund-faq__item{
    overflow:hidden;

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

    background:#fff;

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

.refund-faq__item[open]{
    border-color:rgba(67,181,160,.38);
    box-shadow:var(--shadow-sm);
}


/* =========================================================
   SECTION 06 — SUMMARY
========================================================= */

.refund-faq__item summary{
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 38px;
    align-items:center;
    gap:14px;

    min-height:96px;
    padding:20px;

    cursor:pointer;
    list-style:none;
}

.refund-faq__item summary::-webkit-details-marker{
    display:none;
}

.refund-faq__item summary>strong{
    min-width:0;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 06 — NUMBER
========================================================= */

.refund-faq__number{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 06 — PLUS
========================================================= */

.refund-faq__plus{
    position:relative;

    width:37px;
    height:37px;

    border-radius:50%;

    background:rgba(67,181,160,.11);
}

.refund-faq__plus::before,
.refund-faq__plus::after{
    content:"";

    position:absolute;
    top:50%;
    left:50%;

    width:13px;
    height:2px;

    border-radius:5px;

    background:var(--primary-dark);

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

    transition:transform .25s ease;
}

.refund-faq__plus::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.refund-faq__item[open] .refund-faq__plus{
    background:var(--secondary);
}

.refund-faq__item[open] .refund-faq__plus::after{
    transform:translate(-50%,-50%);
}


/* =========================================================
   SECTION 06 — ANSWER
========================================================= */

.refund-faq__answer{
    padding:0 22px 22px 78px;
}

.refund-faq__answer p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — ACCENT ITEM
========================================================= */

.refund-faq__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.24),
            transparent 42%
        ),
        var(--bg-dark);
}

.refund-faq__item--accent summary>strong{
    color:#fff;
}

.refund-faq__item--accent .refund-faq__number{
    background:var(--secondary);
    color:var(--ink);
}

.refund-faq__item--accent .refund-faq__plus{
    background:rgba(255,255,255,.1);
}

.refund-faq__item--accent .refund-faq__plus::before,
.refund-faq__item--accent .refund-faq__plus::after{
    background:#fff;
}

.refund-faq__item--accent[open] .refund-faq__plus{
    background:var(--secondary);
}

.refund-faq__item--accent[open] .refund-faq__plus::before,
.refund-faq__item--accent[open] .refund-faq__plus::after{
    background:var(--ink);
}

.refund-faq__item--accent .refund-faq__answer p{
    color:rgba(255,255,255,.7);
}


/* =========================================================
   SECTION 06 — BOTTOM
========================================================= */

.refund-faq__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.refund-faq__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.refund-faq__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.refund-faq__bottom small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.refund-faq__bottom strong{
    display:block;

    color:var(--ink);

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

.refund-faq__bottom>a{
    display:flex;
    align-items:center;
    gap:10px;

    flex:0 0 auto;

    color:var(--ink);

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

.refund-faq__bottom>a>span{
    color:var(--primary-dark);
    font-size:17px;

    transition:transform .3s var(--ease);
}

.refund-faq__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-faq__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-faq{
        padding:70px 0;
    }

    .refund-faq__head>p{
        font-size:16px;
    }

    .refund-faq__grid{
        grid-template-columns:1fr;
    }

    .refund-faq__item summary{
        min-height:88px;
    }

    .refund-faq__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-faq__item{
        border-radius:16px;
    }

    .refund-faq__item summary{
        grid-template-columns:39px minmax(0,1fr) 34px;
        gap:11px;

        min-height:0;
        padding:17px;
    }

    .refund-faq__number{
        width:37px;
        height:37px;
    }

    .refund-faq__plus{
        width:34px;
        height:34px;
    }

    .refund-faq__item summary>strong{
        font-size:16px;
    }

    .refund-faq__answer{
        padding:0 17px 18px;
    }

    .refund-faq__answer p{
        font-size:16px;
    }

    .refund-faq__bottom{
        padding:18px;
        border-radius:16px;
    }

    .refund-faq__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}








/* =========================================================
   SECTION 07 — POLICY SUPPORT & CONTACT
========================================================= */

.refund-support{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 07 — LAYOUT
========================================================= */

.refund-support__layout{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 07 — CONTENT
========================================================= */

.refund-support__content{
    padding:clamp(38px,4.5vw,58px);

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

    background:var(--bg-soft);
}

.refund-support__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.refund-support__eyebrow::before{
    content:"";
    width:34px;
    height:2px;
    background:var(--secondary);
}

.refund-support__content h2{
    max-width:700px;
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.refund-support__content h2 strong{
    display:block;
    color:var(--primary-dark);
    font-weight:800;
}

.refund-support__content>p{
    max-width:680px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — POINTS
========================================================= */

.refund-support__points{
    display:grid;
    gap:9px;
    margin-top:30px;
}

.refund-support__points>div{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

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

    background:#fff;
}

.refund-support__points>div>span{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:11px;

    background:rgba(67,181,160,.11);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.refund-support__points small{
    display:block;
    margin-bottom:3px;

    color:var(--muted);

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

.refund-support__points strong{
    display:block;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 07 — CONTACT CARD
========================================================= */

.refund-support__card{
    display:flex;
    flex-direction:column;

    min-height:100%;

    padding:clamp(32px,4vw,48px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.3),
            transparent 40%
        ),
        var(--bg-dark);

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


/* =========================================================
   SECTION 07 — CARD TOP
========================================================= */

.refund-support__card-top{
    display:flex;
    align-items:center;
    gap:13px;
}

.refund-support__mark{
    display:grid;
    place-items:center;

    flex:0 0 46px;

    width:46px;
    height:46px;

    border-radius:13px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.refund-support__card-top small{
    display:block;
    margin-bottom:3px;

    color:rgba(255,255,255,.55);

    font-size:16px;
}

.refund-support__card-top strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 07 — CARD CONTENT
========================================================= */

.refund-support__card-content{
    margin-top:auto;
    padding-top:65px;
}

.refund-support__card-content>span{
    display:block;
    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.refund-support__card-content h3{
    max-width:520px;
    margin:0 0 15px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.refund-support__card-content h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.refund-support__card-content p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 07 — CARD ACTIONS
========================================================= */

.refund-support__card-actions{
    display:flex;
    align-items:center;
    gap:20px;

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

    border-top:1px solid rgba(255,255,255,.13);
}

.refund-support__card-actions>a:not(.btn){
    display:flex;
    align-items:center;
    gap:9px;

    color:#fff;

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

.refund-support__card-actions>a:not(.btn)>span{
    color:#89d8ca;

    font-size:17px;

    transition:transform .3s var(--ease);
}

.refund-support__card-actions>a:not(.btn):hover>span{
    transform:translateY(-3px);
}


/* =========================================================
   SECTION 07 — BOTTOM
========================================================= */

.refund-support__bottom{
    display:flex;
    align-items:flex-start;
    gap:14px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.refund-support__bottom>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.refund-support__bottom p{
    max-width:1050px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .refund-support__layout{
        grid-template-columns:1fr;
    }

    .refund-support__card{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .refund-support{
        padding:70px 0;
    }

    .refund-support__content,
    .refund-support__card{
        padding:30px;
        border-radius:22px;
    }

    .refund-support__content>p{
        font-size:16px;
    }

    .refund-support__card{
        min-height:390px;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .refund-support__content,
    .refund-support__card{
        padding:23px 20px;
        border-radius:18px;
    }

    .refund-support__points>div{
        grid-template-columns:39px minmax(0,1fr);
        padding:12px;
    }

    .refund-support__points>div>span{
        width:36px;
        height:36px;
    }

    .refund-support__card{
        min-height:0;
    }

    .refund-support__card-content{
        margin-top:55px;
        padding-top:0;
    }

    .refund-support__card-content h3{
        font-size:29px;
    }

    .refund-support__card-content p{
        font-size:16px;
    }

    .refund-support__card-actions{
        align-items:stretch;
        flex-direction:column;
        gap:14px;
    }

    .refund-support__card-actions .btn{
        width:100%;
    }

    .refund-support__card-actions>a:not(.btn){
        justify-content:center;
    }

    .refund-support__bottom{
        padding:18px;
        border-radius:16px;
    }

    .refund-support__bottom p{
        font-size:16px;
    }

}





















/* =========================================================
   SECTION 01 — PRIVACY POLICY HERO
========================================================= */

.privacy-policy-hero{
    position:relative;
    overflow:hidden;

    padding:clamp(58px,6vw,88px) 0 var(--section-space);

    background:#fff;
}


/* =========================================================
   SECTION 01 — HEADER
========================================================= */

.privacy-policy-hero__head{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:70px;

    margin-bottom:30px;
}


/* =========================================================
   SECTION 01 — TITLE
========================================================= */

.privacy-policy-hero__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:15px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-policy-hero__eyebrow::before{
    content:"";

    width:32px;
    height:2px;

    background:var(--secondary);
}

.privacy-policy-hero__title h1{
    margin:0;

    color:var(--ink);

    font-size:clamp(54px,6.5vw,96px);
    font-weight:700;
    line-height:.95;
    letter-spacing:-.06em;
}


/* =========================================================
   SECTION 01 — SUMMARY
========================================================= */

.privacy-policy-hero__summary{
    max-width:470px;

    padding-left:26px;

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

.privacy-policy-hero__summary small{
    display:block;

    margin-bottom:7px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-policy-hero__summary p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 01 — VISUAL
========================================================= */

.privacy-policy-hero__visual{
    position:relative;

    min-height:520px;

    overflow:hidden;

    border-radius:28px;

    background:var(--bg-dark);

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

.privacy-policy-hero__visual>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.privacy-policy-hero__visual:hover>img{
    transform:scale(1.025);
}


/* =========================================================
   SECTION 01 — OVERLAY
========================================================= */

.privacy-policy-hero__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.78) 0%,
            rgba(7,18,15,.48) 42%,
            rgba(7,18,15,.08) 80%
        );
}


/* =========================================================
   SECTION 01 — BADGE
========================================================= */

.privacy-policy-hero__badge{
    position:absolute;
    z-index:3;

    top:22px;
    right:22px;

    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:center;
    gap:11px;

    max-width:260px;

    padding:10px 13px 10px 10px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;

    background:rgba(10,24,21,.72);

    backdrop-filter:blur(10px);
}

.privacy-policy-hero__badge>span{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-policy-hero__badge small{
    display:block;

    margin-bottom:2px;

    color:rgba(255,255,255,.56);

    font-size:16px;
}

.privacy-policy-hero__badge strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 01 — VISUAL CONTENT
========================================================= */

.privacy-policy-hero__content{
    position:absolute;
    z-index:3;

    top:50%;
    left:clamp(28px,5vw,60px);

    max-width:600px;

    transform:translateY(-50%);
}

.privacy-policy-hero__content>span{
    display:block;

    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.privacy-policy-hero__content h2{
    margin:0 0 16px;

    color:#fff;

    font-size:clamp(34px,4vw,54px);
    font-weight:500;
    line-height:1.03;
    letter-spacing:-.045em;
}

.privacy-policy-hero__content h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.privacy-policy-hero__content p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.72);

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

.privacy-policy-hero__content .btn{
    margin-top:24px;
}


/* =========================================================
   SECTION 01 — POLICY NAV
========================================================= */

.privacy-policy-hero__nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));

    margin-top:14px;

    overflow:hidden;

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

    background:#fff;
}

.privacy-policy-hero__nav>a{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    gap:11px;

    min-width:0;
    min-height:78px;

    padding:15px 17px;

    color:inherit;

    transition:background .25s ease;
}

.privacy-policy-hero__nav>a:not(:last-child){
    border-right:1px solid var(--border);
}

.privacy-policy-hero__nav>a:hover{
    background:var(--bg-soft);
}

.privacy-policy-hero__nav>a>span{
    display:grid;
    place-items:center;

    width:35px;
    height:35px;

    border-radius:10px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.privacy-policy-hero__nav small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.privacy-policy-hero__nav strong{
    display:block;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-policy-hero__head{
        grid-template-columns:1fr;
        gap:22px;
    }

    .privacy-policy-hero__summary{
        max-width:650px;

        padding-left:0;

        border-left:0;
    }

    .privacy-policy-hero__visual{
        min-height:500px;
    }

    .privacy-policy-hero__content{
        right:35px;
        left:35px;
    }

    .privacy-policy-hero__nav{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .privacy-policy-hero__nav>a:nth-child(2){
        border-right:0;
    }

    .privacy-policy-hero__nav>a:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-policy-hero{
        padding:55px 0 70px;
    }

    .privacy-policy-hero__title h1{
        font-size:clamp(48px,14vw,70px);
    }

    .privacy-policy-hero__visual{
        min-height:500px;

        border-radius:22px;
    }

    .privacy-policy-hero__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.16) 0%,
                rgba(7,18,15,.82) 100%
            );
    }

    .privacy-policy-hero__badge{
        top:15px;
        right:15px;
        left:15px;

        max-width:280px;
    }

    .privacy-policy-hero__content{
        top:auto;
        right:24px;
        bottom:28px;
        left:24px;

        max-width:none;

        transform:none;
    }

    .privacy-policy-hero__content p{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-policy-hero__head{
        margin-bottom:24px;
    }

    .privacy-policy-hero__summary p{
        font-size:16px;
    }

    .privacy-policy-hero__visual{
        min-height:470px;

        border-radius:19px;
    }

    .privacy-policy-hero__badge{
        top:12px;
        right:12px;
        left:12px;

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

        padding:9px 10px;

        border-radius:12px;
    }

    .privacy-policy-hero__badge>span{
        width:36px;
        height:36px;

        border-radius:10px;
    }

    .privacy-policy-hero__content{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .privacy-policy-hero__content h2{
        font-size:30px;
    }

    .privacy-policy-hero__content p{
        font-size:16px;
    }

    .privacy-policy-hero__content .btn{
        width:100%;
    }

    .privacy-policy-hero__nav{
        grid-template-columns:1fr;

        border-radius:16px;
    }

    .privacy-policy-hero__nav>a{
        min-height:68px;

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

    .privacy-policy-hero__nav>a:last-child{
        border-bottom:0 !important;
    }

}




/* =========================================================
   SECTION 02 — INFORMATION WE COLLECT
========================================================= */

.privacy-collect{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.privacy-collect__layout{
    display:grid;
    grid-template-columns:.76fr 1.24fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 02 — INTRO
========================================================= */

.privacy-collect__intro{
    display:flex;
    flex-direction:column;

    padding:clamp(36px,4vw,52px);

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

    background:#fff;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-collect__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-collect__intro h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-collect__intro h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-collect__intro>p{
    max-width:520px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — NOTE
========================================================= */

.privacy-collect__note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:start;
    gap:13px;

    margin-top:auto;
    padding-top:36px;
}

.privacy-collect__note>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-collect__note p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — ITEMS
========================================================= */

.privacy-collect__items{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 02 — ITEM
========================================================= */

.privacy-collect__item{
    display:flex;
    flex-direction:column;

    min-height:290px;
    padding:26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.privacy-collect__item:hover{
    transform:translateY(-4px);

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


/* =========================================================
   SECTION 02 — ITEM HEAD
========================================================= */

.privacy-collect__item-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.privacy-collect__item-head>span{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.privacy-collect__item-head small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}


/* =========================================================
   SECTION 02 — ITEM CONTENT
========================================================= */

.privacy-collect__item h3{
    margin:auto 0 11px;
    padding-top:46px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-collect__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — ACCENT ITEM
========================================================= */

.privacy-collect__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.27),
            transparent 42%
        ),
        var(--bg-dark);
}

.privacy-collect__item--accent
.privacy-collect__item-head>span{
    background:var(--secondary);
    color:var(--ink);
}

.privacy-collect__item--accent
.privacy-collect__item-head small{
    color:#89d8ca;
}

.privacy-collect__item--accent h3{
    color:#fff;
}

.privacy-collect__item--accent p{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   SECTION 02 — BOTTOM
========================================================= */

.privacy-collect__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.privacy-collect__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.privacy-collect__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-collect__bottom small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.privacy-collect__bottom strong{
    display:block;

    max-width:800px;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.45;
}

.privacy-collect__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.privacy-collect__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-collect__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-collect__layout{
        grid-template-columns:1fr;
    }

    .privacy-collect__note{
        margin-top:30px;
        padding-top:0;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-collect{
        padding:70px 0;
    }

    .privacy-collect__intro{
        padding:30px;

        border-radius:22px;
    }

    .privacy-collect__items{
        grid-template-columns:1fr;
    }

    .privacy-collect__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .privacy-collect__item h3{
        margin-top:42px;
        padding-top:0;
    }

    .privacy-collect__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-collect__intro{
        padding:23px 20px;

        border-radius:18px;
    }

    .privacy-collect__intro>p{
        font-size:16px;
    }

    .privacy-collect__note{
        grid-template-columns:38px minmax(0,1fr);
    }

    .privacy-collect__note>span{
        width:36px;
        height:36px;
    }

    .privacy-collect__note p{
        font-size:16px;
    }

    .privacy-collect__item{
        padding:20px;

        border-radius:17px;
    }

    .privacy-collect__item h3{
        margin-top:36px;

        font-size:19px;
    }

    .privacy-collect__item p{
        font-size:16px;
    }

    .privacy-collect__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-collect__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 03 — HOW WE USE INFORMATION
========================================================= */

.privacy-use{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:#fff;
}


/* =========================================================
   SECTION 03 — HEADER
========================================================= */

.privacy-use__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;

    margin-bottom:40px;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-use__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-use__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-use__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-use__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — GRID
========================================================= */

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


/* =========================================================
   SECTION 03 — ITEM
========================================================= */

.privacy-use__item{
    display:flex;
    flex-direction:column;

    min-height:290px;

    padding:26px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease);
}

.privacy-use__item:hover{
    transform:translateY(-4px);

    background:#fff;

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

.privacy-use__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.privacy-use__item-top>span{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

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

    font-size:16px;
    font-weight:900;
}

.privacy-use__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.privacy-use__item h3{
    margin:auto 0 11px;
    padding-top:45px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-use__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — FEATURE
========================================================= */

.privacy-use__feature{
    grid-row:span 2;

    display:flex;
    flex-direction:column;

    min-height:592px;

    padding:34px;

    border-radius:24px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.32),
            transparent 40%
        ),
        var(--bg-dark);

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

.privacy-use__feature-label{
    display:block;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.privacy-use__feature h3{
    margin:auto 0 18px;

    color:#fff;

    font-size:clamp(29px,3vw,42px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.privacy-use__feature h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.privacy-use__feature>p{
    margin:0;

    color:rgba(255,255,255,.68);

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

.privacy-use__feature-line{
    width:100%;
    height:1px;

    margin:28px 0 20px;

    background:rgba(255,255,255,.13);
}

.privacy-use__feature-bottom{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    align-items:center;
    gap:12px;
}

.privacy-use__feature-bottom>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-use__feature-bottom small{
    display:block;

    margin-bottom:3px;

    color:rgba(255,255,255,.54);

    font-size:16px;
}

.privacy-use__feature-bottom strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 03 — BOTTOM
========================================================= */

.privacy-use__bottom{
    display:grid;
    grid-template-columns:11px minmax(0,1fr) auto;
    align-items:center;
    gap:16px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.privacy-use__bottom>span:first-child{
    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-use__bottom>p{
    margin:0;

    color:var(--muted);

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

.privacy-use__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    white-space:nowrap;

    color:var(--ink);

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

.privacy-use__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-use__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-use__head{
        grid-template-columns:1fr;
        gap:20px;
    }

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

    .privacy-use__feature{
        grid-column:1 / -1;
        grid-row:auto;

        min-height:400px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-use{
        padding:70px 0;
    }

    .privacy-use__head>p{
        font-size:16px;
    }

    .privacy-use__grid{
        grid-template-columns:1fr;
    }

    .privacy-use__feature{
        grid-column:auto;

        min-height:380px;

        padding:30px;

        border-radius:22px;
    }

    .privacy-use__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .privacy-use__item h3{
        margin-top:42px;
        padding-top:0;
    }

    .privacy-use__bottom{
        grid-template-columns:11px minmax(0,1fr);
    }

    .privacy-use__bottom>a{
        grid-column:1 / -1;

        justify-content:space-between;

        padding-top:16px;

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

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-use__item{
        padding:20px;

        border-radius:17px;
    }

    .privacy-use__item h3{
        margin-top:36px;

        font-size:19px;
    }

    .privacy-use__item p{
        font-size:16px;
    }

    .privacy-use__feature{
        min-height:350px;

        padding:24px 20px;

        border-radius:18px;
    }

    .privacy-use__feature h3{
        font-size:29px;
    }

    .privacy-use__feature>p{
        font-size:16px;
    }

    .privacy-use__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-use__bottom>p{
        font-size:16px;
    }

}






/* =========================================================
   SECTION 04 — INFORMATION SHARING & SERVICE PROVIDERS
========================================================= */

.privacy-sharing{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:var(--bg-soft);
}


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.privacy-sharing__layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 04 — MAIN
========================================================= */

.privacy-sharing__main{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,58px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);
}

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

    margin-bottom:17px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-sharing__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:#89d8ca;
}

.privacy-sharing__main h2{
    max-width:620px;
    margin:0 0 20px;

    color:#fff;

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-sharing__main h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.privacy-sharing__main>p{
    max-width:600px;
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 04 — PRINCIPLE
========================================================= */

.privacy-sharing__principle{
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    align-items:center;
    gap:13px;

    margin-top:auto;
    padding-top:40px;
}

.privacy-sharing__principle>span{
    display:grid;
    place-items:center;

    width:44px;
    height:44px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-sharing__principle small{
    display:block;

    margin-bottom:4px;

    color:rgba(255,255,255,.5);

    font-size:16px;
}

.privacy-sharing__principle strong{
    display:block;

    max-width:520px;

    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1.5;
}


/* =========================================================
   SECTION 04 — ITEMS
========================================================= */

.privacy-sharing__items{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 04 — ITEM
========================================================= */

.privacy-sharing__item{
    padding:25px 26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.privacy-sharing__item:hover{
    transform:translateY(-3px);
    box-shadow:var(--shadow-sm);
}

.privacy-sharing__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:25px;
}

.privacy-sharing__item-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.privacy-sharing__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-sharing__item h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-sharing__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 04 — ACCENT ITEM
========================================================= */

.privacy-sharing__item--accent{
    border-color:rgba(67,181,160,.24);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.14),
            transparent 40%
        ),
        #edf8f5;
}

.privacy-sharing__item--accent
.privacy-sharing__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 04 — BOTTOM
========================================================= */

.privacy-sharing__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.privacy-sharing__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.privacy-sharing__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-sharing__bottom p{
    max-width:850px;
    margin:0;

    color:var(--muted);

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

.privacy-sharing__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.privacy-sharing__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-sharing__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-sharing__layout{
        grid-template-columns:1fr;
    }

    .privacy-sharing__main{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-sharing{
        padding:70px 0;
    }

    .privacy-sharing__main{
        min-height:0;

        padding:30px;

        border-radius:22px;
    }

    .privacy-sharing__principle{
        margin-top:38px;
        padding-top:0;
    }

    .privacy-sharing__item{
        padding:23px;

        border-radius:19px;
    }

    .privacy-sharing__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-sharing__main{
        padding:24px 20px;

        border-radius:18px;
    }

    .privacy-sharing__main>p{
        font-size:16px;
    }

    .privacy-sharing__principle{
        grid-template-columns:39px minmax(0,1fr);
    }

    .privacy-sharing__principle>span{
        width:37px;
        height:37px;
    }

    .privacy-sharing__principle strong{
        font-size:16px;
    }

    .privacy-sharing__item{
        padding:20px;

        border-radius:17px;
    }

    .privacy-sharing__item-top{
        margin-bottom:22px;
    }

    .privacy-sharing__item h3{
        font-size:19px;
    }

    .privacy-sharing__item p{
        font-size:16px;
    }

    .privacy-sharing__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-sharing__bottom p{
        font-size:16px;
    }

    .privacy-sharing__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}







/* =========================================================
   SECTION 05 — DATA SECURITY & RETENTION
========================================================= */

.privacy-security{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:#fff;
}


/* =========================================================
   SECTION 05 — HEADER
========================================================= */

.privacy-security__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;

    margin-bottom:40px;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-security__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-security__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-security__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-security__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.privacy-security__layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 05 — FEATURE
========================================================= */

.privacy-security__feature{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,56px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);

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

.privacy-security__feature-label{
    display:block;

    margin-bottom:17px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.privacy-security__feature h3{
    max-width:580px;
    margin:0 0 18px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.privacy-security__feature h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.privacy-security__feature>p{
    max-width:560px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 05 — FEATURE LIST
========================================================= */

.privacy-security__feature-list{
    display:grid;
    gap:9px;

    margin-top:auto;
    padding-top:38px;
}

.privacy-security__feature-list>div{
    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

    border:1px solid rgba(255,255,255,.13);
    border-radius:14px;

    background:rgba(255,255,255,.06);
}

.privacy-security__feature-list span{
    display:grid;
    place-items:center;

    width:36px;
    height:36px;

    border-radius:10px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-security__feature-list strong{
    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 05 — CARDS
========================================================= */

.privacy-security__cards{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 05 — CARD
========================================================= */

.privacy-security__card{
    padding:25px 26px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        background .3s ease;
}

.privacy-security__card:hover{
    transform:translateY(-3px);

    background:#fff;

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

.privacy-security__card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:24px;
}

.privacy-security__card-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

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

    font-size:16px;
    font-weight:900;
}

.privacy-security__card-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-security__card h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-security__card p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — ACCENT CARD
========================================================= */

.privacy-security__card--accent{
    border-color:rgba(67,181,160,.25);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.14),
            transparent 42%
        ),
        #edf8f5;
}

.privacy-security__card--accent
.privacy-security__card-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 05 — BOTTOM
========================================================= */

.privacy-security__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.privacy-security__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.privacy-security__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-security__bottom p{
    max-width:850px;
    margin:0;

    color:var(--muted);

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

.privacy-security__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.privacy-security__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-security__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-security__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .privacy-security__layout{
        grid-template-columns:1fr;
    }

    .privacy-security__feature{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-security{
        padding:70px 0;
    }

    .privacy-security__head>p{
        font-size:16px;
    }

    .privacy-security__feature{
        min-height:0;

        padding:30px;

        border-radius:22px;
    }

    .privacy-security__feature-list{
        margin-top:36px;
        padding-top:0;
    }

    .privacy-security__card{
        padding:23px;

        border-radius:19px;
    }

    .privacy-security__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-security__feature{
        padding:24px 20px;

        border-radius:18px;
    }

    .privacy-security__feature h3{
        font-size:29px;
    }

    .privacy-security__feature>p{
        font-size:16px;
    }

    .privacy-security__feature-list>div{
        grid-template-columns:37px minmax(0,1fr);

        padding:11px 12px;
    }

    .privacy-security__feature-list span{
        width:34px;
        height:34px;
    }

    .privacy-security__feature-list strong{
        font-size:16px;
    }

    .privacy-security__card{
        padding:20px;

        border-radius:17px;
    }

    .privacy-security__card-top{
        margin-bottom:21px;
    }

    .privacy-security__card h3{
        font-size:19px;
    }

    .privacy-security__card p{
        font-size:16px;
    }

    .privacy-security__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-security__bottom p{
        font-size:16px;
    }

    .privacy-security__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}







/* =========================================================
   SECTION 06 — YOUR PRIVACY CHOICES & RIGHTS
========================================================= */

.privacy-rights{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 06 — HEADER
========================================================= */

.privacy-rights__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;

    margin-bottom:40px;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-rights__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-rights__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-rights__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-rights__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — GRID
========================================================= */

.privacy-rights__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 06 — ITEM
========================================================= */

.privacy-rights__item{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:20px;

    min-height:245px;

    padding:28px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.privacy-rights__item:hover{
    transform:translateY(-4px);

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


/* =========================================================
   SECTION 06 — NUMBER
========================================================= */

.privacy-rights__number{
    display:grid;
    place-items:center;

    width:50px;
    height:50px;

    border-radius:14px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}


/* =========================================================
   SECTION 06 — CONTENT
========================================================= */

.privacy-rights__item-content{
    display:flex;
    flex-direction:column;
}

.privacy-rights__item-content small{
    display:block;

    margin-bottom:8px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-rights__item-content h3{
    margin:0 0 11px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-rights__item-content p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — ACCENT ITEM
========================================================= */

.privacy-rights__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 42%
        ),
        var(--bg-dark);

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

.privacy-rights__item--accent
.privacy-rights__number{
    background:var(--secondary);
    color:var(--ink);
}

.privacy-rights__item--accent
.privacy-rights__item-content small{
    color:#89d8ca;
}

.privacy-rights__item--accent
.privacy-rights__item-content h3{
    color:#fff;
}

.privacy-rights__item--accent
.privacy-rights__item-content p{
    color:rgba(255,255,255,.68);
}

.privacy-rights__item--accent a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    width:100%;

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

    border-top:1px solid rgba(255,255,255,.13);

    color:#fff;

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

.privacy-rights__item--accent a>span{
    display:grid;
    place-items:center;

    width:36px;
    height:36px;

    border-radius:50%;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;

    transition:transform .3s var(--ease);
}

.privacy-rights__item--accent a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 06 — INFO BAR
========================================================= */

.privacy-rights__info{
    display:grid;
    grid-template-columns:48px minmax(0,1fr);
    align-items:start;
    gap:15px;

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

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

    background:#fff;
}

.privacy-rights__info-mark{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-rights__info small{
    display:block;

    margin-bottom:5px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-rights__info p{
    max-width:1000px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-rights__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-rights{
        padding:70px 0;
    }

    .privacy-rights__head>p{
        font-size:16px;
    }

    .privacy-rights__grid{
        grid-template-columns:1fr;
    }

    .privacy-rights__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-rights__item{
        grid-template-columns:42px minmax(0,1fr);
        gap:14px;

        padding:20px;

        border-radius:17px;
    }

    .privacy-rights__number{
        width:39px;
        height:39px;

        border-radius:11px;
    }

    .privacy-rights__item-content h3{
        font-size:19px;
    }

    .privacy-rights__item-content p{
        font-size:16px;
    }

    .privacy-rights__item--accent a{
        grid-column:1 / -1;

        margin-top:20px;
    }

    .privacy-rights__info{
        grid-template-columns:40px minmax(0,1fr);
        gap:12px;

        padding:18px;

        border-radius:16px;
    }

    .privacy-rights__info-mark{
        width:37px;
        height:37px;

        border-radius:10px;
    }

    .privacy-rights__info p{
        font-size:16px;
    }

}






/* =========================================================
   SECTION 07 — COOKIES & THIRD-PARTY TECHNOLOGIES
========================================================= */

.privacy-cookies{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:#fff;
}


/* =========================================================
   SECTION 07 — LAYOUT
========================================================= */

.privacy-cookies__layout{
    display:grid;
    grid-template-columns:.82fr 1.18fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 07 — MAIN
========================================================= */

.privacy-cookies__main{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,56px);

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

    background:var(--bg-soft);
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-cookies__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-cookies__main h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-cookies__main h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-cookies__main>p{
    max-width:540px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — NOTE
========================================================= */

.privacy-cookies__note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:start;
    gap:13px;

    margin-top:auto;
    padding-top:36px;
}

.privacy-cookies__note>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-cookies__note p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — ITEMS
========================================================= */

.privacy-cookies__items{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 07 — ITEM
========================================================= */

.privacy-cookies__item{
    padding:25px 26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.privacy-cookies__item:hover{
    transform:translateY(-3px);

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

.privacy-cookies__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:24px;
}

.privacy-cookies__item-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.privacy-cookies__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.privacy-cookies__item h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.privacy-cookies__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — ACCENT ITEM
========================================================= */

.privacy-cookies__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 42%
        ),
        var(--bg-dark);
}

.privacy-cookies__item--accent
.privacy-cookies__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}

.privacy-cookies__item--accent
.privacy-cookies__item-top small{
    color:#89d8ca;
}

.privacy-cookies__item--accent h3{
    color:#fff;
}

.privacy-cookies__item--accent p{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   SECTION 07 — BOTTOM
========================================================= */

.privacy-cookies__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.privacy-cookies__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.privacy-cookies__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-cookies__bottom p{
    max-width:820px;
    margin:0;

    color:var(--muted);

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

.privacy-cookies__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.privacy-cookies__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-cookies__bottom>a:hover>span{
    transform:translateX(4px);
}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-cookies__layout{
        grid-template-columns:1fr;
    }

    .privacy-cookies__note{
        margin-top:32px;
        padding-top:0;
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-cookies{
        padding:70px 0;
    }

    .privacy-cookies__main{
        padding:30px;

        border-radius:22px;
    }

    .privacy-cookies__item{
        padding:23px;

        border-radius:19px;
    }

    .privacy-cookies__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-cookies__main{
        padding:24px 20px;

        border-radius:18px;
    }

    .privacy-cookies__main>p{
        font-size:16px;
    }

    .privacy-cookies__note{
        grid-template-columns:38px minmax(0,1fr);
    }

    .privacy-cookies__note>span{
        width:36px;
        height:36px;
    }

    .privacy-cookies__note p{
        font-size:16px;
    }

    .privacy-cookies__item{
        padding:20px;

        border-radius:17px;
    }

    .privacy-cookies__item-top{
        margin-bottom:21px;
    }

    .privacy-cookies__item h3{
        font-size:19px;
    }

    .privacy-cookies__item p{
        font-size:16px;
    }

    .privacy-cookies__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-cookies__bottom p{
        font-size:16px;
    }

    .privacy-cookies__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 08 — PRIVACY QUESTIONS & CONTACT
========================================================= */

.privacy-contact{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 08 — LAYOUT
========================================================= */

.privacy-contact__layout{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 08 — CONTENT
========================================================= */

.privacy-contact__content{
    padding:clamp(38px,4.5vw,58px);

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

    background:#fff;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.privacy-contact__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.privacy-contact__content h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.privacy-contact__content h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.privacy-contact__content>p{
    max-width:650px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 08 — POINTS
========================================================= */

.privacy-contact__points{
    display:grid;
    gap:9px;

    margin-top:30px;
}

.privacy-contact__points>div{
    display:grid;
    grid-template-columns:43px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

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

    background:var(--bg-soft);
}

.privacy-contact__points>div>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

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

    font-size:16px;
    font-weight:900;
}

.privacy-contact__points small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.privacy-contact__points strong{
    display:block;

    color:var(--ink);

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


/* =========================================================
   SECTION 08 — CARD
========================================================= */

.privacy-contact__card{
    display:flex;
    flex-direction:column;

    padding:clamp(32px,4vw,48px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.3),
            transparent 40%
        ),
        var(--bg-dark);

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


/* =========================================================
   SECTION 08 — CARD TOP
========================================================= */

.privacy-contact__card-top{
    display:flex;
    align-items:center;
    gap:13px;
}

.privacy-contact__mark{
    display:grid;
    place-items:center;

    flex:0 0 46px;

    width:46px;
    height:46px;

    border-radius:13px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.privacy-contact__card-top small{
    display:block;

    margin-bottom:3px;

    color:rgba(255,255,255,.54);

    font-size:16px;
}

.privacy-contact__card-top strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 08 — CARD MAIN
========================================================= */

.privacy-contact__card-main{
    margin-top:auto;
    padding-top:60px;
}

.privacy-contact__card-main>span{
    display:block;

    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.privacy-contact__card-main h3{
    margin:0 0 15px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.privacy-contact__card-main h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.privacy-contact__card-main p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 08 — ACTIONS
========================================================= */

.privacy-contact__actions{
    display:flex;
    align-items:center;
    gap:20px;

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

    border-top:1px solid rgba(255,255,255,.13);
}

.privacy-contact__actions>a:not(.btn){
    display:flex;
    align-items:center;
    gap:9px;

    color:#fff;

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

.privacy-contact__actions>a:not(.btn)>span{
    color:#89d8ca;

    font-size:17px;

    transition:transform .3s var(--ease);
}

.privacy-contact__actions>a:not(.btn):hover>span{
    transform:translateY(-3px);
}


/* =========================================================
   SECTION 08 — BOTTOM
========================================================= */

.privacy-contact__bottom{
    display:flex;
    align-items:flex-start;
    gap:14px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.privacy-contact__bottom>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.privacy-contact__bottom p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 08 — TABLET
========================================================= */

@media(max-width:992px){

    .privacy-contact__layout{
        grid-template-columns:1fr;
    }

    .privacy-contact__card{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 08 — MOBILE
========================================================= */

@media(max-width:767px){

    .privacy-contact{
        padding:70px 0;
    }

    .privacy-contact__content,
    .privacy-contact__card{
        padding:30px;

        border-radius:22px;
    }

    .privacy-contact__card{
        min-height:390px;
    }

}


/* =========================================================
   SECTION 08 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .privacy-contact__content,
    .privacy-contact__card{
        padding:23px 20px;

        border-radius:18px;
    }

    .privacy-contact__content>p{
        font-size:16px;
    }

    .privacy-contact__points>div{
        grid-template-columns:39px minmax(0,1fr);

        padding:12px;
    }

    .privacy-contact__points>div>span{
        width:36px;
        height:36px;
    }

    .privacy-contact__card{
        min-height:0;
    }

    .privacy-contact__card-main{
        margin-top:55px;
        padding-top:0;
    }

    .privacy-contact__card-main h3{
        font-size:29px;
    }

    .privacy-contact__card-main p{
        font-size:16px;
    }

    .privacy-contact__actions{
        align-items:stretch;
        flex-direction:column;
        gap:14px;
    }

    .privacy-contact__actions .btn{
        width:100%;
    }

    .privacy-contact__actions>a:not(.btn){
        justify-content:center;
    }

    .privacy-contact__bottom{
        padding:18px;

        border-radius:16px;
    }

    .privacy-contact__bottom p{
        font-size:16px;
    }

}


























/* =========================================================
   SECTION 01 — TERMS OF USE HERO
========================================================= */

.terms-hero{
    position:relative;
    overflow:hidden;

    padding:clamp(58px,6vw,88px) 0 var(--section-space);

    background:#fff;
}


/* =========================================================
   SECTION 01 — HEADER
========================================================= */

.terms-hero__head{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    align-items:end;
    gap:70px;

    margin-bottom:30px;
}


/* =========================================================
   SECTION 01 — TITLE
========================================================= */

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

    margin-bottom:15px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-hero__eyebrow::before{
    content:"";

    width:32px;
    height:2px;

    background:var(--secondary);
}

.terms-hero__title h1{
    margin:0;

    color:var(--ink);

    font-size:clamp(54px,6.5vw,96px);
    font-weight:700;
    line-height:.95;
    letter-spacing:-.06em;
}


/* =========================================================
   SECTION 01 — SUMMARY
========================================================= */

.terms-hero__summary{
    max-width:470px;

    padding-left:26px;

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

.terms-hero__summary small{
    display:block;

    margin-bottom:7px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.terms-hero__summary p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 01 — VISUAL
========================================================= */

.terms-hero__visual{
    position:relative;

    min-height:520px;

    overflow:hidden;

    border-radius:28px;

    background:var(--bg-dark);

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

.terms-hero__visual>img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s var(--ease);
}

.terms-hero__visual:hover>img{
    transform:scale(1.025);
}


/* =========================================================
   SECTION 01 — OVERLAY
========================================================= */

.terms-hero__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(7,18,15,.78) 0%,
            rgba(7,18,15,.48) 42%,
            rgba(7,18,15,.08) 80%
        );
}


/* =========================================================
   SECTION 01 — BADGE
========================================================= */

.terms-hero__badge{
    position:absolute;
    z-index:3;

    top:22px;
    right:22px;

    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:center;
    gap:11px;

    max-width:260px;

    padding:10px 13px 10px 10px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;

    background:rgba(10,24,21,.72);

    backdrop-filter:blur(10px);
}

.terms-hero__badge>span{
    display:grid;
    place-items:center;

    width:40px;
    height:40px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-hero__badge small{
    display:block;

    margin-bottom:2px;

    color:rgba(255,255,255,.56);

    font-size:16px;
}

.terms-hero__badge strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 01 — VISUAL CONTENT
========================================================= */

.terms-hero__content{
    position:absolute;
    z-index:3;

    top:50%;
    left:clamp(28px,5vw,60px);

    max-width:600px;

    transform:translateY(-50%);
}

.terms-hero__content>span{
    display:block;

    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.terms-hero__content h2{
    margin:0 0 16px;

    color:#fff;

    font-size:clamp(34px,4vw,54px);
    font-weight:500;
    line-height:1.03;
    letter-spacing:-.045em;
}

.terms-hero__content h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.terms-hero__content p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.72);

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

.terms-hero__content .btn{
    margin-top:24px;
}


/* =========================================================
   SECTION 01 — TERMS NAV
========================================================= */

.terms-hero__nav{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));

    margin-top:14px;

    overflow:hidden;

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

    background:#fff;
}

.terms-hero__nav>a{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-items:center;
    gap:11px;

    min-width:0;
    min-height:78px;

    padding:15px 17px;

    color:inherit;

    transition:background .25s ease;
}

.terms-hero__nav>a:not(:last-child){
    border-right:1px solid var(--border);
}

.terms-hero__nav>a:hover{
    background:var(--bg-soft);
}

.terms-hero__nav>a>span{
    display:grid;
    place-items:center;

    width:35px;
    height:35px;

    border-radius:10px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.terms-hero__nav small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.terms-hero__nav strong{
    display:block;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.35;
}


/* =========================================================
   SECTION 01 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-hero__head{
        grid-template-columns:1fr;
        gap:22px;
    }

    .terms-hero__summary{
        max-width:650px;

        padding-left:0;

        border-left:0;
    }

    .terms-hero__visual{
        min-height:500px;
    }

    .terms-hero__content{
        right:35px;
        left:35px;
    }

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

    .terms-hero__nav>a:nth-child(2){
        border-right:0;
    }

    .terms-hero__nav>a:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

}


/* =========================================================
   SECTION 01 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-hero{
        padding:55px 0 70px;
    }

    .terms-hero__title h1{
        font-size:clamp(48px,14vw,70px);
    }

    .terms-hero__visual{
        min-height:500px;

        border-radius:22px;
    }

    .terms-hero__overlay{
        background:
            linear-gradient(
                180deg,
                rgba(7,18,15,.16) 0%,
                rgba(7,18,15,.82) 100%
            );
    }

    .terms-hero__badge{
        top:15px;
        right:15px;
        left:15px;

        max-width:280px;
    }

    .terms-hero__content{
        top:auto;
        right:24px;
        bottom:28px;
        left:24px;

        max-width:none;

        transform:none;
    }

    .terms-hero__content p{
        font-size:16px;
    }

}


/* =========================================================
   SECTION 01 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-hero__head{
        margin-bottom:24px;
    }

    .terms-hero__summary p{
        font-size:16px;
    }

    .terms-hero__visual{
        min-height:470px;

        border-radius:19px;
    }

    .terms-hero__badge{
        top:12px;
        right:12px;
        left:12px;

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

        padding:9px 10px;

        border-radius:12px;
    }

    .terms-hero__badge>span{
        width:36px;
        height:36px;

        border-radius:10px;
    }

    .terms-hero__content{
        right:19px;
        bottom:20px;
        left:19px;
    }

    .terms-hero__content h2{
        font-size:30px;
    }

    .terms-hero__content p{
        font-size:16px;
    }

    .terms-hero__content .btn{
        width:100%;
    }

    .terms-hero__nav{
        grid-template-columns:1fr;

        border-radius:16px;
    }

    .terms-hero__nav>a{
        min-height:68px;

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

    .terms-hero__nav>a:last-child{
        border-bottom:0 !important;
    }

}






/* =========================================================
   SECTION 02 — WEBSITE USE & ACCEPTANCE OF TERMS
========================================================= */

.terms-use{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 02 — LAYOUT
========================================================= */

.terms-use__layout{
    display:grid;
    grid-template-columns:.76fr 1.24fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 02 — INTRO
========================================================= */

.terms-use__intro{
    display:flex;
    flex-direction:column;

    padding:clamp(36px,4vw,52px);

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

    background:#fff;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-use__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-use__intro h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-use__intro h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-use__intro>p{
    max-width:520px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — NOTE
========================================================= */

.terms-use__note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:start;

    margin-top:auto;
    padding-top:36px;
}

.terms-use__note>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-use__note p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — ITEMS
========================================================= */

.terms-use__items{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 02 — ITEM
========================================================= */

.terms-use__item{
    display:flex;
    flex-direction:column;

    min-height:290px;
    padding:26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.terms-use__item:hover{
    transform:translateY(-4px);

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

.terms-use__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.terms-use__item-top>span{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.terms-use__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.terms-use__item h3{
    margin:auto 0 11px;
    padding-top:46px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-use__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 02 — ACCENT ITEM
========================================================= */

.terms-use__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.27),
            transparent 42%
        ),
        var(--bg-dark);
}

.terms-use__item--accent
.terms-use__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}

.terms-use__item--accent
.terms-use__item-top small{
    color:#89d8ca;
}

.terms-use__item--accent h3{
    color:#fff;
}

.terms-use__item--accent p{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   SECTION 02 — BOTTOM
========================================================= */

.terms-use__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.terms-use__bottom>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.terms-use__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-use__bottom small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.terms-use__bottom strong{
    display:block;

    max-width:800px;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.45;
}

.terms-use__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.terms-use__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-use__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 02 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-use__layout{
        grid-template-columns:1fr;
    }

    .terms-use__note{
        margin-top:30px;
        padding-top:0;
    }

}


/* =========================================================
   SECTION 02 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-use{
        padding:70px 0;
    }

    .terms-use__intro{
        padding:30px;

        border-radius:22px;
    }

    .terms-use__items{
        grid-template-columns:1fr;
    }

    .terms-use__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .terms-use__item h3{
        margin-top:42px;
        padding-top:0;
    }

    .terms-use__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 02 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-use__intro{
        padding:23px 20px;

        border-radius:18px;
    }

    .terms-use__intro>p{
        font-size:16px;
    }

    .terms-use__note{
        grid-template-columns:38px minmax(0,1fr);
    }

    .terms-use__note>span{
        width:36px;
        height:36px;
    }

    .terms-use__note p{
        font-size:16px;
    }

    .terms-use__item{
        padding:20px;

        border-radius:17px;
    }

    .terms-use__item h3{
        margin-top:36px;

        font-size:19px;
    }

    .terms-use__item p{
        font-size:16px;
    }

    .terms-use__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-use__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 03 — SERVICE INFORMATION & APPOINTMENTS
========================================================= */

.terms-service{
    position:relative;
    overflow:hidden;
    padding:var(--section-space) 0;
    background:#fff;
}


/* =========================================================
   SECTION 03 — HEADER
========================================================= */

.terms-service__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;
    margin-bottom:40px;
}

.terms-service__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-service__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-service__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-service__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-service__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — GRID
========================================================= */

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


/* =========================================================
   SECTION 03 — ITEM
========================================================= */

.terms-service__item{
    display:flex;
    flex-direction:column;

    min-height:290px;
    padding:26px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease);
}

.terms-service__item:hover{
    transform:translateY(-4px);

    background:#fff;

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

.terms-service__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.terms-service__item-top>span{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

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

    font-size:16px;
    font-weight:900;
}

.terms-service__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.terms-service__item h3{
    margin:auto 0 11px;
    padding-top:45px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-service__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 03 — FEATURE
========================================================= */

.terms-service__feature{
    grid-row:span 2;

    display:flex;
    flex-direction:column;

    min-height:592px;
    padding:34px;

    border-radius:24px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.32),
            transparent 40%
        ),
        var(--bg-dark);

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

.terms-service__feature-label{
    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.terms-service__feature h3{
    margin:auto 0 18px;

    color:#fff;

    font-size:clamp(29px,3vw,42px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.terms-service__feature h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.terms-service__feature>p{
    margin:0;

    color:rgba(255,255,255,.68);

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

.terms-service__feature-line{
    width:100%;
    height:1px;

    margin:28px 0 20px;

    background:rgba(255,255,255,.13);
}

.terms-service__feature-bottom{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    align-items:center;
    gap:12px;
}

.terms-service__feature-bottom>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-service__feature-bottom small{
    display:block;
    margin-bottom:3px;

    color:rgba(255,255,255,.54);

    font-size:16px;
}

.terms-service__feature-bottom strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 03 — BOTTOM
========================================================= */

.terms-service__bottom{
    display:grid;
    grid-template-columns:11px minmax(0,1fr) auto;
    align-items:center;
    gap:16px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.terms-service__bottom>span:first-child{
    width:11px;
    height:11px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-service__bottom>p{
    margin:0;

    color:var(--muted);

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

.terms-service__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    white-space:nowrap;

    color:var(--ink);

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

.terms-service__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-service__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 03 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-service__head{
        grid-template-columns:1fr;
        gap:20px;
    }

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

    .terms-service__feature{
        grid-column:1 / -1;
        grid-row:auto;

        min-height:400px;
    }

}


/* =========================================================
   SECTION 03 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-service{
        padding:70px 0;
    }

    .terms-service__head>p{
        font-size:16px;
    }

    .terms-service__grid{
        grid-template-columns:1fr;
    }

    .terms-service__feature{
        grid-column:auto;

        min-height:380px;
        padding:30px;

        border-radius:22px;
    }

    .terms-service__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .terms-service__item h3{
        margin-top:42px;
        padding-top:0;
    }

    .terms-service__bottom{
        grid-template-columns:11px minmax(0,1fr);
    }

    .terms-service__bottom>a{
        grid-column:1 / -1;

        justify-content:space-between;

        padding-top:16px;

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

}


/* =========================================================
   SECTION 03 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-service__item{
        padding:20px;

        border-radius:17px;
    }

    .terms-service__item h3{
        margin-top:36px;

        font-size:19px;
    }

    .terms-service__item p{
        font-size:16px;
    }

    .terms-service__feature{
        min-height:350px;

        padding:24px 20px;

        border-radius:18px;
    }

    .terms-service__feature h3{
        font-size:29px;
    }

    .terms-service__feature>p{
        font-size:16px;
    }

    .terms-service__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-service__bottom>p{
        font-size:16px;
    }

}





/* =========================================================
   SECTION 04 — PAYMENTS, CHARGES & CANCELLATIONS
========================================================= */

.terms-payments{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 04 — HEADER
========================================================= */

.terms-payments__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;

    margin-bottom:40px;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-payments__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-payments__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-payments__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-payments__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 04 — LAYOUT
========================================================= */

.terms-payments__layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 04 — FEATURE
========================================================= */

.terms-payments__feature{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,56px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.30),
            transparent 40%
        ),
        var(--bg-dark);

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

.terms-payments__feature-label{
    display:block;

    margin-bottom:17px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.terms-payments__feature h3{
    max-width:580px;
    margin:0 0 18px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.terms-payments__feature h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.terms-payments__feature>p{
    max-width:560px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 04 — FEATURE LIST
========================================================= */

.terms-payments__feature-list{
    display:grid;
    gap:9px;

    margin-top:auto;
    padding-top:38px;
}

.terms-payments__feature-list>div{
    display:grid;
    grid-template-columns:40px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

    border:1px solid rgba(255,255,255,.13);
    border-radius:14px;

    background:rgba(255,255,255,.06);
}

.terms-payments__feature-list span{
    display:grid;
    place-items:center;

    width:36px;
    height:36px;

    border-radius:10px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-payments__feature-list strong{
    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1.4;
}


/* =========================================================
   SECTION 04 — ITEMS
========================================================= */

.terms-payments__items{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 04 — ITEM
========================================================= */

.terms-payments__item{
    padding:25px 26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.terms-payments__item:hover{
    transform:translateY(-3px);

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

.terms-payments__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:24px;
}

.terms-payments__item-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.terms-payments__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.terms-payments__item h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-payments__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 04 — ACCENT ITEM
========================================================= */

.terms-payments__item--accent{
    border-color:rgba(67,181,160,.24);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.14),
            transparent 42%
        ),
        #edf8f5;
}

.terms-payments__item--accent
.terms-payments__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 04 — BOTTOM
========================================================= */

.terms-payments__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.terms-payments__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.terms-payments__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-payments__bottom p{
    max-width:850px;
    margin:0;

    color:var(--muted);

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

.terms-payments__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.terms-payments__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-payments__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 04 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-payments__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .terms-payments__layout{
        grid-template-columns:1fr;
    }

    .terms-payments__feature{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 04 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-payments{
        padding:70px 0;
    }

    .terms-payments__head>p{
        font-size:16px;
    }

    .terms-payments__feature{
        min-height:0;

        padding:30px;

        border-radius:22px;
    }

    .terms-payments__feature-list{
        margin-top:36px;
        padding-top:0;
    }

    .terms-payments__item{
        padding:23px;

        border-radius:19px;
    }

    .terms-payments__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 04 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-payments__feature{
        padding:24px 20px;

        border-radius:18px;
    }

    .terms-payments__feature h3{
        font-size:29px;
    }

    .terms-payments__feature>p{
        font-size:16px;
    }

    .terms-payments__feature-list>div{
        grid-template-columns:37px minmax(0,1fr);

        padding:11px 12px;
    }

    .terms-payments__feature-list span{
        width:34px;
        height:34px;
    }

    .terms-payments__feature-list strong{
        font-size:16px;
    }

    .terms-payments__item{
        padding:20px;

        border-radius:17px;
    }

    .terms-payments__item h3{
        font-size:19px;
    }

    .terms-payments__item p{
        font-size:16px;
    }

    .terms-payments__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-payments__bottom p{
        font-size:16px;
    }

    .terms-payments__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}









/* =========================================================
   SECTION 05 — DISCLAIMER & LIMITATION OF LIABILITY
========================================================= */

.terms-limitations{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:#fff;
}


/* =========================================================
   SECTION 05 — LAYOUT
========================================================= */

.terms-limitations__layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 05 — MAIN
========================================================= */

.terms-limitations__main{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,58px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 40%
        ),
        var(--bg-dark);

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

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

    margin-bottom:17px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-limitations__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:#89d8ca;
}

.terms-limitations__main h2{
    margin:0 0 20px;

    color:#fff;

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-limitations__main h2 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.terms-limitations__main>p{
    max-width:580px;
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 05 — NOTE
========================================================= */

.terms-limitations__note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    align-items:start;
    gap:13px;

    margin-top:auto;
    padding-top:40px;
}

.terms-limitations__note>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-limitations__note p{
    margin:0;

    color:rgba(255,255,255,.7);

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


/* =========================================================
   SECTION 05 — ITEMS
========================================================= */

.terms-limitations__items{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 05 — ITEM
========================================================= */

.terms-limitations__item{
    padding:25px 26px;

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

    background:var(--bg-soft);

    transition:
        transform .3s var(--ease),
        background .3s ease,
        box-shadow .3s var(--ease);
}

.terms-limitations__item:hover{
    transform:translateY(-3px);

    background:#fff;

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

.terms-limitations__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:24px;
}

.terms-limitations__item-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

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

    font-size:16px;
    font-weight:900;
}

.terms-limitations__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.terms-limitations__item h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-limitations__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 05 — ACCENT ITEM
========================================================= */

.terms-limitations__item--accent{
    border-color:rgba(67,181,160,.24);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.15),
            transparent 42%
        ),
        #edf8f5;
}

.terms-limitations__item--accent
.terms-limitations__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}


/* =========================================================
   SECTION 05 — BOTTOM
========================================================= */

.terms-limitations__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.terms-limitations__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.terms-limitations__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-limitations__bottom p{
    max-width:850px;
    margin:0;

    color:var(--muted);

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

.terms-limitations__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.terms-limitations__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-limitations__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 05 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-limitations__layout{
        grid-template-columns:1fr;
    }

    .terms-limitations__main{
        min-height:420px;
    }

}


/* =========================================================
   SECTION 05 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-limitations{
        padding:70px 0;
    }

    .terms-limitations__main{
        min-height:0;

        padding:30px;

        border-radius:22px;
    }

    .terms-limitations__note{
        margin-top:36px;
        padding-top:0;
    }

    .terms-limitations__item{
        padding:23px;

        border-radius:19px;
    }

    .terms-limitations__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 05 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-limitations__main{
        padding:24px 20px;

        border-radius:18px;
    }

    .terms-limitations__main>p{
        font-size:16px;
    }

    .terms-limitations__note{
        grid-template-columns:38px minmax(0,1fr);
    }

    .terms-limitations__note>span{
        width:36px;
        height:36px;
    }

    .terms-limitations__note p{
        font-size:16px;
    }

    .terms-limitations__item{
        padding:20px;

        border-radius:17px;
    }

    .terms-limitations__item-top{
        margin-bottom:21px;
    }

    .terms-limitations__item h3{
        font-size:19px;
    }

    .terms-limitations__item p{
        font-size:16px;
    }

    .terms-limitations__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-limitations__bottom p{
        font-size:16px;
    }

    .terms-limitations__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}









/* =========================================================
   SECTION 06 — INTELLECTUAL PROPERTY & WEBSITE CONTENT
========================================================= */

.terms-property{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 06 — HEADER
========================================================= */

.terms-property__head{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    align-items:end;
    gap:70px;

    margin-bottom:40px;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-property__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-property__head h2{
    margin:0;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-property__head h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-property__head>p{
    max-width:550px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — GRID
========================================================= */

.terms-property__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}


/* =========================================================
   SECTION 06 — ITEM
========================================================= */

.terms-property__item{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:20px;

    min-height:245px;

    padding:28px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.terms-property__item:hover{
    transform:translateY(-4px);

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

.terms-property__number{
    display:grid;
    place-items:center;

    width:50px;
    height:50px;

    border-radius:14px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.terms-property__item small{
    display:block;

    margin-bottom:8px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.terms-property__item h3{
    margin:0 0 11px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-property__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 06 — ACCENT ITEM
========================================================= */

.terms-property__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 42%
        ),
        var(--bg-dark);

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

.terms-property__item--accent
.terms-property__number{
    background:var(--secondary);
    color:var(--ink);
}

.terms-property__item--accent small{
    color:#89d8ca;
}

.terms-property__item--accent h3{
    color:#fff;
}

.terms-property__item--accent p{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   SECTION 06 — INFO PANEL
========================================================= */

.terms-property__info{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    align-items:center;
    gap:15px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.terms-property__info-mark{
    display:grid;
    place-items:center;

    width:43px;
    height:43px;

    border-radius:12px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-property__info small{
    display:block;

    margin-bottom:4px;

    color:var(--muted);

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

.terms-property__info strong{
    display:block;

    max-width:850px;

    color:var(--ink);

    font-size:16px;
    font-weight:800;
    line-height:1.45;
}

.terms-property__info>a{
    display:flex;
    align-items:center;
    gap:9px;

    white-space:nowrap;

    color:var(--ink);

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

.terms-property__info>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-property__info>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 06 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-property__head{
        grid-template-columns:1fr;
        gap:20px;
    }

}


/* =========================================================
   SECTION 06 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-property{
        padding:70px 0;
    }

    .terms-property__head>p{
        font-size:16px;
    }

    .terms-property__grid{
        grid-template-columns:1fr;
    }

    .terms-property__item{
        min-height:0;

        padding:24px;

        border-radius:20px;
    }

    .terms-property__info{
        grid-template-columns:48px minmax(0,1fr);
    }

    .terms-property__info>a{
        grid-column:1 / -1;

        justify-content:space-between;

        padding-top:16px;

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

}


/* =========================================================
   SECTION 06 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-property__item{
        grid-template-columns:42px minmax(0,1fr);
        gap:14px;

        padding:20px;

        border-radius:17px;
    }

    .terms-property__number{
        width:39px;
        height:39px;

        border-radius:11px;
    }

    .terms-property__item h3{
        font-size:19px;
    }

    .terms-property__item p{
        font-size:16px;
    }

    .terms-property__info{
        grid-template-columns:40px minmax(0,1fr);
        gap:12px;

        padding:18px;

        border-radius:16px;
    }

    .terms-property__info-mark{
        width:37px;
        height:37px;

        border-radius:10px;
    }

    .terms-property__info strong{
        font-size:16px;
    }

}









/* =========================================================
   SECTION 07 — THIRD-PARTY LINKS & EXTERNAL SERVICES
========================================================= */

.terms-third-party{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:#fff;
}


/* =========================================================
   SECTION 07 — LAYOUT
========================================================= */

.terms-third-party__layout{
    display:grid;
    grid-template-columns:.84fr 1.16fr;
    gap:16px;
    align-items:stretch;
}


/* =========================================================
   SECTION 07 — INTRO
========================================================= */

.terms-third-party__intro{
    display:flex;
    flex-direction:column;

    padding:clamp(38px,4.5vw,56px);

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

    background:var(--bg-soft);
}

.terms-third-party__eyebrow{
    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-third-party__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-third-party__intro h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-third-party__intro h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-third-party__intro>p{
    max-width:540px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — NOTE
========================================================= */

.terms-third-party__note{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:13px;
    align-items:start;

    margin-top:auto;
    padding-top:36px;
}

.terms-third-party__note>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-third-party__note p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — ITEMS
========================================================= */

.terms-third-party__items{
    display:grid;
    gap:12px;
}


/* =========================================================
   SECTION 07 — ITEM
========================================================= */

.terms-third-party__item{
    padding:25px 26px;

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

    background:#fff;

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease);
}

.terms-third-party__item:hover{
    transform:translateY(-3px);

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

.terms-third-party__item-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    margin-bottom:24px;
}

.terms-third-party__item-top>span{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    border-radius:12px;

    background:var(--bg-soft);
    color:var(--primary-dark);

    font-size:16px;
    font-weight:900;
}

.terms-third-party__item-top small{
    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.terms-third-party__item h3{
    margin:0 0 10px;

    color:var(--ink);

    font-size:21px;
    font-weight:800;
    line-height:1.25;
    letter-spacing:-.025em;
}

.terms-third-party__item p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 07 — ACCENT ITEM
========================================================= */

.terms-third-party__item--accent{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.28),
            transparent 42%
        ),
        var(--bg-dark);
}

.terms-third-party__item--accent
.terms-third-party__item-top>span{
    background:var(--secondary);
    color:var(--ink);
}

.terms-third-party__item--accent
.terms-third-party__item-top small{
    color:#89d8ca;
}

.terms-third-party__item--accent h3{
    color:#fff;
}

.terms-third-party__item--accent p{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   SECTION 07 — BOTTOM
========================================================= */

.terms-third-party__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    margin-top:16px;
    padding:20px 24px;

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

    background:var(--bg-soft);
}

.terms-third-party__bottom>div{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.terms-third-party__bottom>div>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-third-party__bottom p{
    max-width:850px;
    margin:0;

    color:var(--muted);

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

.terms-third-party__bottom>a{
    display:flex;
    align-items:center;
    gap:9px;

    flex:0 0 auto;

    color:var(--ink);

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

.terms-third-party__bottom>a>span{
    color:var(--primary-dark);

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-third-party__bottom>a:hover>span{
    transform:translateY(4px);
}


/* =========================================================
   SECTION 07 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-third-party__layout{
        grid-template-columns:1fr;
    }

    .terms-third-party__note{
        margin-top:32px;
        padding-top:0;
    }

}


/* =========================================================
   SECTION 07 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-third-party{
        padding:70px 0;
    }

    .terms-third-party__intro{
        padding:30px;

        border-radius:22px;
    }

    .terms-third-party__item{
        padding:23px;

        border-radius:19px;
    }

    .terms-third-party__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


/* =========================================================
   SECTION 07 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-third-party__intro{
        padding:24px 20px;

        border-radius:18px;
    }

    .terms-third-party__intro>p{
        font-size:16px;
    }

    .terms-third-party__note{
        grid-template-columns:38px minmax(0,1fr);
    }

    .terms-third-party__note>span{
        width:36px;
        height:36px;
    }

    .terms-third-party__note p{
        font-size:16px;
    }

    .terms-third-party__item{
        padding:20px;

        border-radius:17px;
    }

    .terms-third-party__item-top{
        margin-bottom:21px;
    }

    .terms-third-party__item h3{
        font-size:19px;
    }

    .terms-third-party__item p{
        font-size:16px;
    }

    .terms-third-party__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-third-party__bottom p{
        font-size:16px;
    }

    .terms-third-party__bottom>a{
        justify-content:space-between;

        width:100%;
        padding-top:16px;

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

}





/* =========================================================
   SECTION 08 — CHANGES TO TERMS & CONTACT
========================================================= */

.terms-contact{
    position:relative;
    overflow:hidden;

    padding:var(--section-space) 0;

    background:var(--bg-soft);
}


/* =========================================================
   SECTION 08 — LAYOUT
========================================================= */

.terms-contact__layout{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:18px;
    align-items:stretch;
}


/* =========================================================
   SECTION 08 — CONTENT
========================================================= */

.terms-contact__content{
    padding:clamp(38px,4.5vw,58px);

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

    background:#fff;
}

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

    margin-bottom:17px;

    color:var(--primary-dark);

    font-size:16px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.terms-contact__eyebrow::before{
    content:"";

    width:34px;
    height:2px;

    background:var(--secondary);
}

.terms-contact__content h2{
    margin:0 0 20px;

    color:var(--ink);

    font-size:var(--fs-h2);
    font-weight:500;
    line-height:1.07;
    letter-spacing:-.045em;
}

.terms-contact__content h2 strong{
    display:block;

    color:var(--primary-dark);

    font-weight:800;
}

.terms-contact__content>p{
    max-width:650px;
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 08 — POINTS
========================================================= */

.terms-contact__points{
    display:grid;
    gap:9px;

    margin-top:30px;
}

.terms-contact__points>div{
    display:grid;
    grid-template-columns:43px minmax(0,1fr);
    align-items:center;
    gap:12px;

    padding:13px 14px;

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

    background:var(--bg-soft);
}

.terms-contact__points>div>span{
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

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

    font-size:16px;
    font-weight:900;
}

.terms-contact__points small{
    display:block;

    margin-bottom:3px;

    color:var(--muted);

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

.terms-contact__points strong{
    display:block;

    color:var(--ink);

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


/* =========================================================
   SECTION 08 — CONTACT CARD
========================================================= */

.terms-contact__card{
    display:flex;
    flex-direction:column;

    padding:clamp(32px,4vw,48px);

    border-radius:28px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(67,181,160,.3),
            transparent 40%
        ),
        var(--bg-dark);

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


/* =========================================================
   SECTION 08 — CARD TOP
========================================================= */

.terms-contact__card-top{
    display:flex;
    align-items:center;
    gap:13px;
}

.terms-contact__mark{
    display:grid;
    place-items:center;

    flex:0 0 46px;

    width:46px;
    height:46px;

    border-radius:13px;

    background:var(--secondary);
    color:var(--ink);

    font-size:16px;
    font-weight:900;
}

.terms-contact__card-top small{
    display:block;

    margin-bottom:3px;

    color:rgba(255,255,255,.54);

    font-size:16px;
}

.terms-contact__card-top strong{
    display:block;

    color:#fff;

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


/* =========================================================
   SECTION 08 — CARD MAIN
========================================================= */

.terms-contact__card-main{
    margin-top:auto;
    padding-top:60px;
}

.terms-contact__card-main>span{
    display:block;

    margin-bottom:10px;

    color:var(--secondary);

    font-size:16px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.terms-contact__card-main h3{
    margin:0 0 15px;

    color:#fff;

    font-size:clamp(30px,3vw,43px);
    font-weight:500;
    line-height:1.08;
    letter-spacing:-.04em;
}

.terms-contact__card-main h3 strong{
    display:block;

    color:#89d8ca;

    font-weight:800;
}

.terms-contact__card-main p{
    max-width:500px;
    margin:0;

    color:rgba(255,255,255,.68);

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


/* =========================================================
   SECTION 08 — ACTIONS
========================================================= */

.terms-contact__actions{
    display:flex;
    align-items:center;
    gap:20px;

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

    border-top:1px solid rgba(255,255,255,.13);
}

.terms-contact__actions>a:not(.btn){
    display:flex;
    align-items:center;
    gap:9px;

    color:#fff;

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

.terms-contact__actions>a:not(.btn)>span{
    color:#89d8ca;

    font-size:17px;

    transition:transform .3s var(--ease);
}

.terms-contact__actions>a:not(.btn):hover>span{
    transform:translateY(-3px);
}


/* =========================================================
   SECTION 08 — BOTTOM
========================================================= */

.terms-contact__bottom{
    display:flex;
    align-items:flex-start;
    gap:14px;

    margin-top:16px;
    padding:20px 24px;

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

    background:#fff;
}

.terms-contact__bottom>span{
    flex:0 0 11px;

    width:11px;
    height:11px;

    margin-top:6px;

    border-radius:50%;

    background:var(--primary);

    box-shadow:0 0 0 6px rgba(67,181,160,.11);
}

.terms-contact__bottom p{
    margin:0;

    color:var(--muted);

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


/* =========================================================
   SECTION 08 — TABLET
========================================================= */

@media(max-width:992px){

    .terms-contact__layout{
        grid-template-columns:1fr;
    }

    .terms-contact__card{
        min-height:430px;
    }

}


/* =========================================================
   SECTION 08 — MOBILE
========================================================= */

@media(max-width:767px){

    .terms-contact{
        padding:70px 0;
    }

    .terms-contact__content,
    .terms-contact__card{
        padding:30px;

        border-radius:22px;
    }

    .terms-contact__card{
        min-height:390px;
    }

}


/* =========================================================
   SECTION 08 — SMALL MOBILE
========================================================= */

@media(max-width:575px){

    .terms-contact__content,
    .terms-contact__card{
        padding:23px 20px;

        border-radius:18px;
    }

    .terms-contact__content>p{
        font-size:16px;
    }

    .terms-contact__points>div{
        grid-template-columns:39px minmax(0,1fr);

        padding:12px;
    }

    .terms-contact__points>div>span{
        width:36px;
        height:36px;
    }

    .terms-contact__card{
        min-height:0;
    }

    .terms-contact__card-main{
        margin-top:55px;
        padding-top:0;
    }

    .terms-contact__card-main h3{
        font-size:29px;
    }

    .terms-contact__card-main p{
        font-size:16px;
    }

    .terms-contact__actions{
        align-items:stretch;
        flex-direction:column;
        gap:14px;
    }

    .terms-contact__actions .btn{
        width:100%;
    }

    .terms-contact__actions>a:not(.btn){
        justify-content:center;
    }

    .terms-contact__bottom{
        padding:18px;

        border-radius:16px;
    }

    .terms-contact__bottom p{
        font-size:16px;
    }

}
