/* =========================================================
   MEGA APPLIANCE REPAIR — GLOBAL DESIGN SYSTEM
   ========================================================= */

:root{
  --navy:#08264a;
  --navy-2:#0d315e;
  --red:#ce0001;
  --red-dark:#a90001;
  --white:#ffffff;
  --off-white:#f7f6f3;
  --surface:#f3f6f9;
  --surface-blue:#eef3f8;
  --text:#182334;
  --muted:#667085;
  --border:rgba(8,38,74,.12);
  --shadow-sm:0 10px 30px rgba(8,38,74,.08);
  --shadow-md:0 24px 60px rgba(8,38,74,.12);
  --shadow-lg:0 32px 90px rgba(8,38,74,.18);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:28px;
  --container:1440px;
  --header-h:84px;
  --section-space:clamp(76px,8vw,132px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --h1:clamp(42px,4.3vw,72px);
  --h2:clamp(30px,3vw,48px);
  --h3:clamp(19px,1.55vw,24px);
  --body:clamp(16px,1.08vw,18px);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{ font-family: "Carrois Gothic", sans-serif;color:var(--text);background:var(--white);font-size:var(--body);line-height:1.7;overflow-x:hidden}
body.menuOpen{overflow:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4{color:var(--navy);line-height:1.08;letter-spacing:-.035em}
h1{font-size:var(--h1);font-weight:800}
h2{font-size:var(--h2);font-weight:800}
h3{font-size:var(--h3);font-weight:700}
p{color:var(--muted)}
.container{width:100%;max-width:var(--container);padding-inline:20px;margin-inline:auto}
.section{padding-block:var(--section-space);position:relative}
.sectionAnchor{scroll-margin-top:calc(var(--header-h) + 24px)}
.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:16px;top:16px;z-index:9999;background:var(--navy);color:#fff;padding:10px 16px;border-radius:10px;transform:translateY(-160%);transition:.2s}
.skip-link:focus{transform:translateY(0)}

/* Buttons */
.btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;border:1px solid transparent;border-radius:12px;font-weight:800;font-size:15px;letter-spacing:-.01em;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s,color .25s,border-color .25s}
.btn:hover{transform:translateY(-2px)}
.btn--sm{min-height:44px;padding-inline:18px;font-size:14px}
.btn--primary{background:var(--red);color:#fff;box-shadow:0 12px 28px rgba(206,0,1,.22)}
.btn--primary:hover{background:var(--red-dark);box-shadow:0 16px 34px rgba(206,0,1,.3)}
.btn--outline{color:#fff;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.05)}
.btn--outline:hover{background:#fff;color:var(--navy)}
.btn--outlineDark{color:var(--navy);border-color:var(--border);background:#fff}
.btn--outlineDark:hover{border-color:var(--navy)}

/* Header */
.siteHeader{position:fixed;top:0;left:0;width:100%;z-index:1000;color:#fff;border-bottom:1px solid rgba(255,255,255,.1);transition:background .28s,box-shadow .28s,border-color .28s}
.siteHeader.isScrolled{background:rgba(255,255,255,.96);color:var(--navy);border-color:var(--border);box-shadow:0 12px 40px rgba(8,38,74,.08);backdrop-filter:blur(18px)}
.siteHeader__inner{min-height:var(--header-h);display:flex;align-items:center;gap:30px}
.siteHeader__logo{display:inline-flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.025em;white-space:nowrap}
.siteHeader__logoMark{width:38px;height:38px;border-radius:11px;background:var(--red);color:#fff;display:grid;place-items:center;font-size:18px;box-shadow:0 10px 24px rgba(206,0,1,.26)}
.siteHeader__logoText{font-size:16px}
.siteHeader__nav{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:700}
.siteHeader__nav a,.siteHeader__phone{transition:opacity .2s,color .2s}
.siteHeader__nav a:hover,.siteHeader__phone:hover{color:var(--red)}
.siteHeader__actions{display:flex;align-items:center;gap:18px}
.siteHeader__phone{font-size:14px;font-weight:800}
.menuToggle{display:none;width:46px;height:46px;border:1px solid currentColor;border-radius:12px;background:transparent;color:inherit;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.menuToggle span{display:block;width:20px;height:2px;background:currentColor;transition:.25s}
.mobileMenu{display:none}

/* Hero */
.hero{min-height:760px;padding-top:calc(var(--header-h) + 80px);display:flex;align-items:center;overflow:hidden;background:
  radial-gradient(circle at 80% 18%,rgba(206,0,1,.20),transparent 28%),
  radial-gradient(circle at 25% 110%,rgba(87,155,255,.17),transparent 34%),
  linear-gradient(135deg,#061c37 0%,#08264a 52%,#0d315e 100%);
}
.hero::after{content:"";position:absolute;inset:auto -10% -220px 36%;height:520px;background:radial-gradient(ellipse,rgba(255,255,255,.09),transparent 62%);filter:blur(10px)}
.hero__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);gap:clamp(42px,5vw,84px);align-items:center;position:relative;z-index:2}
.hero__content{max-width:690px}
.hero .eyebrow{color:#fff}
.hero h1{color:#fff;margin:18px 0 24px}
.hero__content>p{max-width:640px;color:rgba(255,255,255,.76);font-size:clamp(17px,1.3vw,20px)}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.hero__trust{list-style:none;display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:34px;color:rgba(255,255,255,.78);font-size:14px;font-weight:700}
.hero__trust li{position:relative;padding-left:20px}
.hero__trust li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red);position:absolute;left:0;top:.72em;box-shadow:0 0 0 5px rgba(206,0,1,.12)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.12em;font-size:14px;font-weight:800;color:var(--red)}
.eyebrow::before{content:"";width:28px;height:2px;background:currentColor}
.eyebrow--light{color:#fff}
.hero__media{position:relative}
.hero__imageWrap{position:relative;aspect-ratio:4/3;min-height:440px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background:#dfe6ee}
.hero__image{width:100%;height:100%;object-fit:cover;display:block}
.hero__imageWrap::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,38,74,.02),rgba(8,38,74,.14));pointer-events:none}
.hero__floatingCard{position:absolute;left:-34px;bottom:26px;width:min(290px,72%);background:#fff;color:var(--navy);padding:20px 22px;border-radius:16px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:5px}
.hero__floatingCard strong{font-size:15px}
.hero__floatingCard span{font-size:13px;color:var(--muted);line-height:1.5}
.hero__glow{position:absolute;border-radius:50%;filter:blur(50px);opacity:.38}
.hero__glow--one{width:180px;height:180px;background:var(--red);right:12%;top:14%}
.hero__glow--two{width:260px;height:260px;background:#2c6cae;left:-80px;bottom:-80px}


/* Appointment */
.appointment{background:linear-gradient(180deg,#fff 0%,#f7f6f3 100%)}
.appointment__shell{position:relative;overflow:hidden;border-radius:32px;padding:clamp(28px,4vw,58px);background:
  radial-gradient(circle at 10% 20%,rgba(206,0,1,.18),transparent 26%),
  linear-gradient(135deg,#061c37,#0a2c55);box-shadow:var(--shadow-lg)}
.appointment__shell::after{content:"";position:absolute;width:440px;height:440px;border-radius:50%;right:-180px;top:-180px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 50px rgba(255,255,255,.025),0 0 0 100px rgba(255,255,255,.018)}
.appointment__copy{position:relative;z-index:2;max-width:700px;margin-bottom:30px}
.appointment h2{color:#fff;margin:14px 0}
.appointment p{color:rgba(255,255,255,.72)}
.appointment__form{position:relative;z-index:2;background:#fff;border-radius:22px;padding:14px;overflow:hidden}

/* Footer */
.siteFooter{background:#06182e;color:rgba(255,255,255,.72);padding:76px 0 24px}
.siteFooter__top{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:52px;padding-bottom:50px}
.siteHeader__logo--footer{color:#fff;margin-bottom:18px}
.siteFooter__brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.siteFooter__brand p{max-width:390px;color:rgba(255,255,255,.6)}
.siteFooter__phone{color:#fff;font-size:20px;font-weight:800;margin-top:8px}
.siteFooter__col{display:flex;flex-direction:column;gap:10px}
.siteFooter__col h3{color:#fff;font-size:15px;margin-bottom:7px}
.siteFooter__col a{font-size:14px;transition:color .2s,transform .2s}
.siteFooter__col a:hover{color:#fff;transform:translateX(3px)}
.siteFooter__bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-top:24px;font-size:14px}
.siteFooter__legal{display:flex;flex-wrap:wrap;gap:18px}

/* Cookie banner */
.cookieBanner{position:fixed;z-index:2000;left:20px;right:20px;bottom:20px}
.cookieBanner__inner{max-width:1120px;margin:auto;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg);padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cookieBanner strong{color:var(--navy)}
.cookieBanner p{font-size:13px;margin-top:3px}
.cookieBanner__actions{display:flex;gap:10px;flex-shrink:0}

/* Back to top */
.backToTop{position:fixed;right:22px;bottom:22px;z-index:900;width:48px;height:48px;border:none;border-radius:14px;background:var(--navy);color:#fff;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}
.backToTop.isVisible{opacity:1;visibility:visible;transform:none}
.backToTop:hover{background:var(--red)}











/* ===== SECTION 2: TRUST BAR ===== */
.trustBar{
    position:relative;
    z-index:5;
    background:#fff;
    border-bottom:1px solid var(--border);
    box-shadow:0 14px 40px rgba(8,38,74,.06);
}
.trustBar__grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}
.trustBar__item{
    min-height:112px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    padding:22px 30px;
    position:relative;
}
.trustBar__item:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:28px;
    bottom:28px;
    width:1px;
    background:var(--border);
}
.trustBar__icon{
    width:46px;
    height:46px;
    flex:0 0 46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:var(--red);
    background:rgba(206,0,1,.07);
    box-shadow:inset 0 0 0 1px rgba(206,0,1,.08);
}
.trustBar__icon svg{
    width:21px;
    height:21px;
    fill:currentColor;
}
.trustBar__content{
    display:flex;
    flex-direction:column;
    gap:2px;
}
.trustBar__content strong{
    color:var(--navy);
    font-size:15px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:-.02em;
}
.trustBar__content span{
    color:var(--muted);
    font-size:14px;
    line-height:1.45;
    font-weight:500;
}

/* Responsive */
@media(max-width:1024px){
    .trustBar__item{padding:20px 16px}
    .trustBar__icon{
        width:42px;
        height:42px;
        flex-basis:42px;
    }
}
@media(max-width:768px){
    .trustBar__grid{grid-template-columns:repeat(2,1fr)}
    .trustBar__item{
        justify-content:flex-start;
        min-height:96px;
        padding:18px 20px;
    }
    .trustBar__item:nth-child(2)::after{display:none}
    .trustBar__item:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }
}
@media(max-width:480px){
    .trustBar__item{
        gap:12px;
        padding:16px 10px;
        min-height:90px;
    }
    .trustBar__icon{
        width:38px;
        height:38px;
        flex-basis:38px;
        border-radius:11px;
    }
    .trustBar__icon svg{
        width:18px;
        height:18px;
    }
    .trustBar__content strong{font-size:13px}
    .trustBar__content span{font-size:14px}
}








/* ===== SECTION 3: RELIABLE APPLIANCE REPAIR ===== */

.reliableRepair{
    overflow:hidden;
    background:
        radial-gradient(circle at 94% 18%,rgba(8,38,74,.055),transparent 24%),
        radial-gradient(circle at 5% 90%,rgba(206,0,1,.035),transparent 22%),
        #fff;
}

.reliableRepair__grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);
    align-items:center;
    gap:clamp(60px,7vw,110px);
}

.reliableRepair__content{
    max-width:650px;
}

.reliableRepair h2{
    max-width:620px;
    margin:16px 0 24px;
}

.reliableRepair h2 strong{
    color:var(--red);
    font-weight:800;
}

.reliableRepair__lead{
    color:var(--text);
    font-weight:500;
    margin-bottom:16px;
}

.reliableRepair__content>p{
    font-size:16px;
}

.reliableRepair__benefits{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 24px;
    margin-top:30px;
}

.reliableRepair__benefit{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--navy);
    font-size:14px;
    line-height:1.45;
    font-weight:700;
}

.reliableRepair__check{
    width:24px;
    height:24px;
    flex:0 0 24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:rgba(206,0,1,.09);
    color:var(--red);
    font-size:13px;
    font-weight:800;
}

.reliableRepair__actions{
    display:flex;
    align-items:center;
    gap:28px;
    margin-top:36px;
}

.reliableRepair__phone{
    display:flex;
    align-items:center;
    gap:11px;
}

.reliableRepair__phoneIcon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:var(--surface-blue);
    color:var(--navy);
}

.reliableRepair__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.reliableRepair__phone small{
    color:var(--muted);
    font-size:14px;
    line-height:1.2;
}

.reliableRepair__phone strong{
    color:var(--navy);
    font-size:14px;
    line-height:1.5;
}

.reliableRepair__visual{
    position:relative;
    padding:22px 22px 30px 0;
}

.reliableRepair__image{
    position:relative;
    z-index:2;
    height:clamp(450px,43vw,610px);
    overflow:hidden;
    border-radius:28px;
    box-shadow:0 32px 80px rgba(8,38,74,.16);
}

.reliableRepair__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .7s var(--ease);
}

.reliableRepair__visual:hover .reliableRepair__image img{
    transform:scale(1.025);
}

.reliableRepair__image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 55%,
        rgba(8,38,74,.13)
    );
    pointer-events:none;
}

.reliableRepair__badge{
    position:absolute;
    z-index:4;
    left:-38px;
    bottom:0;
    min-width:260px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:17px 20px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:16px;
    background:rgba(255,255,255,.96);
    box-shadow:0 22px 55px rgba(8,38,74,.16);
    backdrop-filter:blur(14px);
}

.reliableRepair__badgeIcon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:var(--red);
    color:#fff;
}

.reliableRepair__badge div{
    display:flex;
    flex-direction:column;
}

.reliableRepair__badge strong{
    color:var(--navy);
    font-size:14px;
}

.reliableRepair__badge span:last-child{
    color:var(--muted);
    font-size:14px;
}

.reliableRepair__shape{
    position:absolute;
    z-index:1;
    width:230px;
    height:230px;
    right:-45px;
    bottom:-20px;
    border-radius:50%;
    border:1px solid rgba(206,0,1,.10);
    box-shadow:
        0 0 0 35px rgba(206,0,1,.025),
        0 0 0 70px rgba(8,38,74,.018);
}


/* ===== RESPONSIVE ===== */

@media(max-width:1100px){

    .reliableRepair__grid{
        grid-template-columns:1fr 1fr;
        gap:45px;
    }

    .reliableRepair__benefits{
        grid-template-columns:1fr;
    }

    .reliableRepair__badge{
        left:-20px;
    }
}

@media(max-width:900px){

    .reliableRepair__grid{
        grid-template-columns:1fr;
    }

    .reliableRepair__content{
        max-width:720px;
    }

    .reliableRepair__benefits{
        grid-template-columns:repeat(2,1fr);
    }

    .reliableRepair__visual{
        max-width:720px;
        padding-right:0;
    }
}

@media(max-width:576px){

    .reliableRepair h2{
        margin-bottom:18px;
    }

    .reliableRepair__content>p{
        font-size:15px;
    }

    .reliableRepair__benefits{
        grid-template-columns:1fr;
        gap:12px;
        margin-top:24px;
    }

    .reliableRepair__actions{
        align-items:stretch;
        flex-direction:column;
        gap:18px;
        margin-top:28px;
    }

    .reliableRepair__actions .btn{
        width:100%;
    }

    .reliableRepair__phone{
        justify-content:center;
    }

    .reliableRepair__visual{
        padding-bottom:42px;
    }

    .reliableRepair__image{
        height:390px;
        border-radius:20px;
    }

    .reliableRepair__badge{
        left:14px;
        right:14px;
        bottom:12px;
        min-width:0;
    }
}





/* ===== SECTION 4: RESIDENTIAL APPLIANCE SERVICES ===== */

.repairServices{
    background:
        radial-gradient(circle at 8% 12%,rgba(206,0,1,.035),transparent 22%),
        radial-gradient(circle at 90% 82%,rgba(8,38,74,.055),transparent 25%),
        var(--off-white);
}

.repairServices__head{
    max-width:780px;
    margin:0 auto clamp(42px,5vw,68px);
    text-align:center;
}

.repairServices__head .eyebrow{
    justify-content:center;
}

.repairServices__head h2{
    margin:16px 0 18px;
}

.repairServices__head h2 strong{
    color:var(--red);
    font-weight:800;
}

.repairServices__head p{
    max-width:690px;
    margin:auto;
    font-size:16px;
}

.repairServices__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.serviceCard{
    position:relative;
    min-height:290px;
    display:flex;
    flex-direction:column;
    padding:28px;
    overflow:hidden;
    border:1px solid rgba(8,38,74,.08);
    border-radius:20px;
    background:#fff;
    box-shadow:0 10px 35px rgba(8,38,74,.055);
    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease),
        border-color .35s var(--ease);
}

.serviceCard::after{
    content:"";
    position:absolute;
    width:120px;
    height:120px;
    right:-55px;
    bottom:-55px;
    border-radius:50%;
    background:rgba(206,0,1,.035);
    transition:transform .4s var(--ease);
}

.serviceCard:hover{
    transform:translateY(-7px);
    border-color:rgba(206,0,1,.18);
    box-shadow:0 24px 55px rgba(8,38,74,.11);
}

.serviceCard:hover::after{
    transform:scale(1.5);
}

.serviceCard__top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    margin-bottom:26px;
}

.serviceCard__icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:15px;
    color:var(--red);
    background:rgba(206,0,1,.065);
    transition:.3s var(--ease);
}

.serviceCard__icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.serviceCard:hover .serviceCard__icon{
    color:#fff;
    background:var(--red);
    transform:rotate(-4deg);
}

.serviceCard__number{
    color:rgba(8,38,74,.16);
    font-size:13px;
    font-weight:800;
    letter-spacing:.1em;
}

.serviceCard h3{
    max-width:240px;
    margin-bottom:12px;
    font-size:19px;
}

.serviceCard p{
    margin-bottom:22px;
    font-size:13px;
    line-height:1.65;
}

.serviceCard__link{
    display:flex;
    align-items:center;
    gap:7px;
    margin-top:auto;
    color:var(--red);
    font-size:14px;
    font-weight:800;
}

.serviceCard__link b{
    font-size:17px;
    font-weight:500;
    transition:transform .25s;
}

.serviceCard:hover .serviceCard__link b{
    transform:translateX(5px);
}

.repairServices__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:28px;
    padding:25px 28px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 35px rgba(8,38,74,.05);
}

.repairServices__bottom>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.repairServices__bottom strong{
    color:var(--navy);
    font-size:16px;
}

.repairServices__bottom span{
    color:var(--muted);
    font-size:13px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1180px){
    .repairServices__grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media(max-width:900px){
    .repairServices__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .serviceCard{
        min-height:270px;
    }
}

@media(max-width:650px){
    .repairServices__head{
        text-align:left;
    }

    .repairServices__head .eyebrow{
        justify-content:flex-start;
    }

    .repairServices__grid{
        grid-template-columns:1fr;
    }

    .serviceCard{
        min-height:auto;
        padding:24px;
    }

    .repairServices__bottom{
        align-items:stretch;
        flex-direction:column;
        padding:22px;
    }

    .repairServices__bottom .btn{
        width:100%;
    }
}

@media(max-width:390px){
    .serviceCard{
        border-radius:17px;
    }

    .serviceCard__icon{
        width:46px;
        height:46px;
        border-radius:13px;
    }
}








/* ===== SECTION 5: COMMERCIAL APPLIANCE REPAIR ===== */

.commercialRepair{
    position:relative;
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(circle at 88% 15%,rgba(206,0,1,.15),transparent 28%),
        radial-gradient(circle at 10% 100%,rgba(55,111,171,.16),transparent 31%),
        linear-gradient(135deg,#061a33 0%,#08264a 52%,#092d57 100%);
}

.commercialRepair::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.05;
    background-image:
        linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);
    background-size:54px 54px;
    mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 75%,transparent);
}

.commercialRepair__glow{
    position:absolute;
    border-radius:50%;
    filter:blur(70px);
    pointer-events:none;
}

.commercialRepair__glow--1{
    width:300px;
    height:300px;
    top:-150px;
    right:5%;
    background:rgba(206,0,1,.15);
}

.commercialRepair__glow--2{
    width:320px;
    height:320px;
    bottom:-180px;
    left:-80px;
    background:rgba(48,110,183,.14);
}

.commercialRepair .container{
    position:relative;
    z-index:2;
}

.commercialRepair__head{
    max-width:770px;
    margin:0 auto clamp(42px,5vw,66px);
    text-align:center;
}

.commercialRepair__head .eyebrow{
    justify-content:center;
}

.commercialRepair__head h2{
    margin:16px 0 18px;
    color:#fff;
}

.commercialRepair__head h2 strong{
    color:#ff3b3b;
    font-weight:800;
}

.commercialRepair__head p{
    max-width:680px;
    margin:auto;
    color:rgba(255,255,255,.66);
    font-size:16px;
}

.commercialRepair__grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:18px;
}

.commercialCard{
    grid-column:span 2;
    position:relative;
    min-height:340px;
    display:flex;
    flex-direction:column;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.11);
    border-radius:20px;
    background:linear-gradient(
        145deg,
        rgba(255,255,255,.09),
        rgba(255,255,255,.045)
    );
    box-shadow:0 22px 55px rgba(0,0,0,.12);
    backdrop-filter:blur(12px);
    transition:
        transform .35s var(--ease),
        background .35s var(--ease),
        border-color .35s var(--ease);
}

.commercialCard:nth-child(4){
    grid-column:2 / span 2;
}

.commercialCard:nth-child(5){
    grid-column:4 / span 2;
}

.commercialCard::before{
    content:"";
    position:absolute;
    top:0;
    left:28px;
    width:46px;
    height:3px;
    background:var(--red);
    border-radius:0 0 4px 4px;
}

.commercialCard::after{
    content:"";
    position:absolute;
    width:140px;
    height:140px;
    right:-75px;
    bottom:-75px;
    border-radius:50%;
    background:rgba(255,255,255,.035);
    transition:transform .4s var(--ease);
}

.commercialCard:hover{
    transform:translateY(-7px);
    border-color:rgba(255,255,255,.22);
    background:linear-gradient(
        145deg,
        rgba(255,255,255,.12),
        rgba(255,255,255,.06)
    );
}

.commercialCard:hover::after{
    transform:scale(1.7);
}

.commercialCard__icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    margin-bottom:25px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    color:#fff;
    background:rgba(255,255,255,.07);
}

.commercialCard__icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.65;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.commercialCard__label{
    margin-bottom:8px;
    color:#ff6a6a;
    font-size:14px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.commercialCard h3{
    max-width:300px;
    margin-bottom:13px;
    color:#fff;
    font-size:20px;
}

.commercialCard p{
    margin-bottom:23px;
    color:rgba(255,255,255,.59);
    font-size:13px;
    line-height:1.7;
}

.commercialCard a{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:auto;
    color:#fff;
    font-size:14px;
    font-weight:800;
}

.commercialCard a span{
    color:#ff5151;
    font-size:18px;
    transition:transform .25s;
}

.commercialCard:hover a span{
    transform:translateX(5px);
}

.commercialCard--accent{
    background:linear-gradient(
        145deg,
        rgba(206,0,1,.18),
        rgba(255,255,255,.045)
    );
}

.commercialRepair__cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:28px;
    padding:26px 30px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    background:rgba(3,19,38,.42);
    backdrop-filter:blur(12px);
}

.commercialRepair__ctaText{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.commercialRepair__ctaText span{
    color:#ff5959;
    font-size:14px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.commercialRepair__ctaText strong{
    color:#fff;
    font-size:18px;
}

.commercialRepair__ctaActions{
    display:flex;
    align-items:center;
    gap:26px;
}

.commercialRepair__phone{
    display:flex;
    flex-direction:column;
    text-align:right;
}

.commercialRepair__phone small{
    color:rgba(255,255,255,.52);
    font-size:14px;
}

.commercialRepair__phone strong{
    color:#fff;
    font-size:15px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1050px){
    .commercialRepair__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .commercialCard,
    .commercialCard:nth-child(4),
    .commercialCard:nth-child(5){
        grid-column:auto;
    }

    .commercialCard:last-child{
        grid-column:1 / -1;
        min-height:290px;
    }
}

@media(max-width:768px){
    .commercialRepair__cta{
        align-items:flex-start;
        flex-direction:column;
    }

    .commercialRepair__ctaActions{
        width:100%;
        justify-content:space-between;
    }

    .commercialRepair__phone{
        text-align:left;
    }
}

@media(max-width:620px){
    .commercialRepair__head{
        text-align:left;
    }

    .commercialRepair__head .eyebrow{
        justify-content:flex-start;
    }

    .commercialRepair__grid{
        grid-template-columns:1fr;
    }

    .commercialCard,
    .commercialCard:last-child{
        grid-column:auto;
        min-height:auto;
        padding:25px;
    }

    .commercialRepair__cta{
        padding:22px;
    }

    .commercialRepair__ctaActions{
        align-items:stretch;
        flex-direction:column;
        gap:18px;
    }

    .commercialRepair__ctaActions .btn{
        width:100%;
    }
}






/* ===== SECTION 6: WHY CHOOSE US ===== */

.whyChoose{
    overflow:hidden;
    background:
        radial-gradient(circle at 2% 18%,rgba(206,0,1,.035),transparent 22%),
        radial-gradient(circle at 95% 90%,rgba(8,38,74,.05),transparent 25%),
        #fff;
}

.whyChoose__head{
    max-width:780px;
    margin:0 auto clamp(44px,5vw,68px);
    text-align:center;
}

.whyChoose__head .eyebrow{
    justify-content:center;
}

.whyChoose__head h2{
    margin:16px 0 18px;
}

.whyChoose__head h2 strong{
    color:var(--red);
    font-weight:800;
}

.whyChoose__head p{
    max-width:700px;
    margin:auto;
    font-size:16px;
}

.whyChoose__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.whyCard{
    position:relative;
    min-height:250px;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(8,38,74,.08);
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 35px rgba(8,38,74,.05);
    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease),
        border-color .35s var(--ease);
}

.whyCard::after{
    content:"";
    position:absolute;
    right:-55px;
    bottom:-55px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:rgba(206,0,1,.035);
    transition:transform .4s var(--ease);
}

.whyCard:hover{
    transform:translateY(-6px);
    border-color:rgba(206,0,1,.17);
    box-shadow:0 24px 55px rgba(8,38,74,.1);
}

.whyCard:hover::after{
    transform:scale(1.5);
}

.whyCard__icon{
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    margin-bottom:22px;
    border-radius:14px;
    color:var(--red);
    background:rgba(206,0,1,.065);
}

.whyCard__icon svg{
    width:24px;
    height:24px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.whyCard h3{
    margin-bottom:11px;
    font-size:18px;
}

.whyCard p{
    font-size:13px;
    line-height:1.7;
}

.whyCard--featured{
    border-color:rgba(206,0,1,.12);
    background:
        radial-gradient(circle at 100% 0,rgba(206,0,1,.07),transparent 42%),
        #fff;
}

.whyChoose__cta{
    display:flex;
    align-items:center;
    gap:20px;
    margin-top:28px;
    padding:25px 28px;
    border-radius:20px;
    color:#fff;
    background:
        radial-gradient(circle at 88% 20%,rgba(206,0,1,.18),transparent 28%),
        linear-gradient(135deg,#061c37,#08264a);
    box-shadow:0 20px 55px rgba(8,38,74,.14);
}

.whyChoose__ctaIcon{
    width:52px;
    height:52px;
    flex:0 0 52px;
    display:grid;
    place-items:center;
    border-radius:15px;
    color:#fff;
    background:var(--red);
}

.whyChoose__ctaIcon svg{
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.whyChoose__ctaText{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.whyChoose__ctaText span{
    color:rgba(255,255,255,.58);
    font-size:14px;
}

.whyChoose__ctaText strong{
    color:#fff;
    font-size:17px;
}

.whyChoose__ctaActions{
    display:flex;
    align-items:center;
    gap:24px;
    margin-left:auto;
}

.whyChoose__phone{
    color:#fff;
    font-size:15px;
    font-weight:800;
    white-space:nowrap;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1024px){
    .whyChoose__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:768px){
    .whyChoose__cta{
        align-items:flex-start;
        flex-wrap:wrap;
    }

    .whyChoose__ctaActions{
        width:100%;
        margin-left:72px;
    }
}

@media(max-width:620px){
    .whyChoose__head{
        text-align:left;
    }

    .whyChoose__head .eyebrow{
        justify-content:flex-start;
    }

    .whyChoose__grid{
        grid-template-columns:1fr;
    }

    .whyCard{
        min-height:auto;
        padding:24px;
    }

    .whyChoose__cta{
        padding:22px;
    }

    .whyChoose__ctaActions{
        align-items:stretch;
        flex-direction:column;
        gap:16px;
        margin-left:0;
    }

    .whyChoose__ctaActions .btn{
        width:100%;
    }
}







/* ===== SECTION 7: LIFESTYLE GALLERY ===== */

.lifestyle{
    overflow:hidden;
    background:
        radial-gradient(circle at 90% 4%,rgba(206,0,1,.035),transparent 22%),
        linear-gradient(180deg,#f7f6f3 0%,#fff 100%);
}

.lifestyle__head{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr);
    align-items:end;
    gap:60px;
    margin-bottom:clamp(38px,5vw,62px);
}

.lifestyle__head h2{
    max-width:700px;
    margin-top:16px;
}

.lifestyle__head h2 strong{
    color:var(--red);
    font-weight:800;
}

.lifestyle__head>p{
    max-width:520px;
    padding-bottom:5px;
    font-size:15px;
}

.lifestyle__gallery{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
    grid-template-rows:repeat(2,310px);
    gap:18px;
}

.lifestyleCard{
    position:relative;
    min-width:0;
    overflow:hidden;
    border-radius:24px;
    background:var(--surface);
    box-shadow:0 18px 50px rgba(8,38,74,.09);
}

.lifestyleCard--large{
    grid-row:1 / 3;
}

.lifestyleCard img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .7s var(--ease);
}

.lifestyleCard::before{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 36%,
            rgba(4,18,34,.16) 55%,
            rgba(4,18,34,.88) 100%
        );
}

.lifestyleCard::after{
    content:"";
    position:absolute;
    z-index:2;
    top:20px;
    right:20px;
    width:10px;
    height:10px;
    border:3px solid rgba(255,255,255,.82);
    border-radius:50%;
    box-shadow:0 0 0 7px rgba(255,255,255,.12);
}

.lifestyleCard:hover img{
    transform:scale(1.045);
}

.lifestyleCard__overlay{
    position:absolute;
    z-index:3;
    left:0;
    right:0;
    bottom:0;
    padding:clamp(24px,3vw,38px);
    color:#fff;
}

.lifestyleCard__overlay>span{
    display:block;
    margin-bottom:7px;
    color:#ff6262;
    font-size:14px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.lifestyleCard__overlay h3{
    max-width:480px;
    margin-bottom:14px;
    color:#fff;
    font-size:clamp(18px,1.6vw,26px);
}

.lifestyleCard--large .lifestyleCard__overlay h3{
    max-width:520px;
    font-size:clamp(24px,2.2vw,34px);
}

.lifestyleCard__overlay a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#fff;
    font-size:14px;
    font-weight:800;
}

.lifestyleCard__overlay b{
    color:#ff5c5c;
    font-size:18px;
    font-weight:500;
    transition:transform .25s;
}

.lifestyleCard:hover .lifestyleCard__overlay b{
    transform:translateX(5px);
}

.lifestyle__strip{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr;
    align-items:center;
    margin-top:22px;
    padding:26px 30px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 40px rgba(8,38,74,.05);
}

.lifestyle__stripItem{
    display:flex;
    flex-direction:column;
    gap:4px;
    text-align:center;
}

.lifestyle__stripItem strong{
    color:var(--navy);
    font-size:14px;
}

.lifestyle__stripItem span{
    color:var(--muted);
    font-size:14px;
}

.lifestyle__stripDivider{
    width:1px;
    height:36px;
    margin-inline:28px;
    background:var(--border);
}


/* ===== RESPONSIVE ===== */

@media(max-width:1024px){
    .lifestyle__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .lifestyle__head>p{
        max-width:700px;
    }

    .lifestyle__gallery{
        grid-template-columns:1.15fr .85fr;
        grid-template-rows:repeat(2,270px);
    }
}

@media(max-width:768px){
    .lifestyle__gallery{
        grid-template-columns:1fr 1fr;
        grid-template-rows:420px 260px;
    }

    .lifestyleCard--large{
        grid-column:1 / -1;
        grid-row:auto;
    }

    .lifestyle__strip{
        grid-template-columns:1fr;
        gap:20px;
        padding:24px;
    }

    .lifestyle__stripDivider{
        width:100%;
        height:1px;
        margin:0;
    }
}

@media(max-width:576px){
    .lifestyle__gallery{
        display:flex;
        flex-direction:column;
    }

    .lifestyleCard,
    .lifestyleCard--large{
        height:320px;
        border-radius:19px;
    }

    .lifestyleCard--large{
        height:390px;
    }

    .lifestyleCard__overlay{
        padding:24px;
    }
}






/* ===== SECTION 8: REPAIR PROCESS ===== */

.repairProcess{
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 8%,rgba(206,0,1,.035),transparent 22%),
        radial-gradient(circle at 92% 92%,rgba(8,38,74,.05),transparent 24%),
        #fff;
}

.repairProcess__head{
    max-width:760px;
    margin:0 auto clamp(50px,6vw,78px);
    text-align:center;
}

.repairProcess__head .eyebrow{
    justify-content:center;
}

.repairProcess__head h2{
    margin:16px 0 18px;
}

.repairProcess__head h2 strong{
    color:var(--red);
    font-weight:800;
}

.repairProcess__head p{
    max-width:680px;
    margin:auto;
    font-size:16px;
}

.repairProcess__steps{
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:24px;
}

.repairProcess__steps::before{
    content:"";
    position:absolute;
    top:47px;
    left:9%;
    right:9%;
    height:1px;
    background:linear-gradient(
        90deg,
        rgba(206,0,1,.12),
        rgba(206,0,1,.55),
        rgba(206,0,1,.12)
    );
}

.processStep{
    position:relative;
    z-index:2;
    text-align:center;
}

.processStep__top{
    position:relative;
    width:94px;
    height:94px;
    margin:0 auto 25px;
}

.processStep__icon{
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    border:1px solid rgba(8,38,74,.09);
    border-radius:50%;
    color:var(--red);
    background:#fff;
    box-shadow:
        0 14px 35px rgba(8,38,74,.08),
        inset 0 0 0 8px rgba(206,0,1,.035);
    transition:
        transform .35s var(--ease),
        color .35s,
        background .35s;
}

.processStep__icon svg{
    width:27px;
    height:27px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.6;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.processStep__number{
    position:absolute;
    z-index:3;
    top:-7px;
    right:-4px;
    width:29px;
    height:29px;
    display:grid;
    place-items:center;
    border:4px solid #fff;
    border-radius:50%;
    color:#fff;
    background:var(--red);
    font-size:14px;
    font-weight:800;
}

.processStep:hover .processStep__icon{
    transform:translateY(-6px);
    color:#fff;
    background:var(--navy);
}

.processStep h3{
    margin-bottom:10px;
    font-size:17px;
}

.processStep p{
    max-width:220px;
    margin:auto;
    font-size:14px;
    line-height:1.7;
}

.repairProcess__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:clamp(48px,6vw,72px);
    padding:25px 28px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:19px;
    background:var(--off-white);
}

.repairProcess__bottomText{
    display:flex;
    align-items:center;
    gap:14px;
}

.repairProcess__status{
    position:relative;
    width:12px;
    height:12px;
    flex:0 0 12px;
    border-radius:50%;
    background:#28a86b;
}

.repairProcess__status::after{
    content:"";
    position:absolute;
    inset:-5px;
    border-radius:50%;
    border:1px solid rgba(40,168,107,.3);
}

.repairProcess__bottomText>div{
    display:flex;
    flex-direction:column;
}

.repairProcess__bottomText strong{
    color:var(--navy);
    font-size:15px;
}

.repairProcess__bottomText span{
    color:var(--muted);
    font-size:14px;
}

.repairProcess__actions{
    display:flex;
    align-items:center;
    gap:26px;
}

.repairProcess__phone{
    display:flex;
    flex-direction:column;
    text-align:right;
}

.repairProcess__phone small{
    color:var(--muted);
    font-size:14px;
}

.repairProcess__phone strong{
    color:var(--navy);
    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1050px){

    .repairProcess__steps{
        grid-template-columns:repeat(3,1fr);
        gap:45px 28px;
    }

    .repairProcess__steps::before{
        display:none;
    }
}

@media(max-width:768px){

    .repairProcess__steps{
        grid-template-columns:1fr;
        gap:0;
        max-width:600px;
        margin:auto;
    }

    .processStep{
        display:grid;
        grid-template-columns:76px 1fr;
        column-gap:20px;
        padding-bottom:32px;
        text-align:left;
    }

    .processStep:not(:last-child)::after{
        content:"";
        position:absolute;
        left:37px;
        top:76px;
        bottom:0;
        width:1px;
        background:rgba(206,0,1,.18);
    }

    .processStep__top{
        grid-row:1 / 3;
        width:76px;
        height:76px;
        margin:0;
    }

    .processStep h3{
        align-self:end;
        margin-bottom:7px;
    }

    .processStep p{
        max-width:none;
        margin:0;
    }

    .repairProcess__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

    .repairProcess__actions{
        width:100%;
        justify-content:space-between;
    }
}

@media(max-width:576px){

    .repairProcess__head{
        text-align:left;
    }

    .repairProcess__head .eyebrow{
        justify-content:flex-start;
    }

    .repairProcess__bottom{
        padding:21px;
    }

    .repairProcess__actions{
        align-items:stretch;
        flex-direction:column;
        gap:16px;
    }

    .repairProcess__phone{
        text-align:left;
    }

    .repairProcess__actions .btn{
        width:100%;
    }
}







/* ===== SECTION 9: FINAL CTA ===== */

.finalCta{
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 0%,rgba(206,0,1,.045),transparent 26%),
        linear-gradient(180deg,#f7f6f3 0%,#fff 100%);
}

.finalCta__wrap{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);
    gap:clamp(40px,5vw,76px);
    padding:clamp(38px,5vw,68px);
    overflow:hidden;
    border-radius:32px;
    background:
        radial-gradient(circle at 10% 20%,rgba(206,0,1,.17),transparent 26%),
        radial-gradient(circle at 98% 100%,rgba(63,132,202,.14),transparent 28%),
        linear-gradient(135deg,#061a33,#08264a 58%,#0a315f);
    box-shadow:0 30px 80px rgba(8,38,74,.18);
}

.finalCta__wrap::before{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    left:-180px;
    bottom:-180px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.07);
    box-shadow:
        0 0 0 55px rgba(255,255,255,.02),
        0 0 0 110px rgba(255,255,255,.012);
}

.finalCta__content{
    position:relative;
    z-index:2;
    align-self:center;
}

.finalCta__content h2{
    max-width:520px;
    margin:16px 0 20px;
    color:#fff;
}

.finalCta__content>p{
    max-width:540px;
    color:rgba(255,255,255,.66);
    font-size:16px;
}

.finalCta__contact{
    display:flex;
    align-items:center;
    gap:30px;
    margin-top:34px;
}

.finalCta__phone{
    display:flex;
    align-items:center;
    gap:13px;
}

.finalCta__phoneIcon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:var(--red);
    color:#fff;
}

.finalCta__phone>span:last-child,
.finalCta__hours{
    display:flex;
    flex-direction:column;
}

.finalCta__phone small,
.finalCta__hours small{
    color:rgba(255,255,255,.48);
    font-size:14px;
}

.finalCta__phone strong,
.finalCta__hours strong{
    color:#fff;
    font-size:14px;
}

.finalCta__features{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:32px;
}

.finalCta__features span{
    position:relative;
    padding-left:20px;
    color:rgba(255,255,255,.7);
    font-size:14px;
    font-weight:700;
}

.finalCta__features span::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#ff5555;
    font-weight:800;
}

.finalCta__form{
    position:relative;
    z-index:2;
    overflow:hidden;
    padding:16px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:24px;
    background:#fff;
    box-shadow:0 24px 60px rgba(0,0,0,.18);
}

.finalCta__formHead{
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:10px 10px 17px;
}

.finalCta__formHead span{
    color:var(--red);
    font-size:14px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.finalCta__formHead strong{
    color:var(--navy);
    font-size:19px;
}

.finalCta__iframe{
    overflow:hidden;
    border-radius:15px;
    background:#fff;
}

.finalCta__iframe iframe{
    display:block;
}

@media(max-width: 767px){
    .finalCta__wrap{display: block;}
    .finalCta__wrap .finalCta__form{margin-top: 20px;}
    .finalCta__wrap .finalCta__contact{flex-direction: column;gap: 20px;align-items: flex-start;}
    .hero  .hero__imageWrap{        min-height: 0;    aspect-ratio: auto;}
}





















/* ===== QUOTE PAGE — SECTION 1: HERO ===== */

.quoteHero{
    position:relative;
    min-height:690px;
    display:flex;
    align-items:center;
    padding:
        calc(var(--header-h) + clamp(65px,7vw,105px))
        0
        clamp(80px,8vw,120px);
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(circle at 82% 18%,rgba(206,0,1,.17),transparent 26%),
        radial-gradient(circle at 12% 100%,rgba(61,124,194,.16),transparent 30%),
        linear-gradient(135deg,#05182f 0%,#08264a 54%,#0b315e 100%);
}

.quoteHero::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.05;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);
    background-size:58px 58px;
    mask-image:linear-gradient(
        90deg,
        #000 0%,
        rgba(0,0,0,.7) 38%,
        transparent 78%
    );
}

.quoteHero::after{
    content:"";
    position:absolute;
    top:-220px;
    right:-170px;
    width:620px;
    height:620px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:50%;
    box-shadow:
        0 0 0 75px rgba(255,255,255,.018),
        0 0 0 150px rgba(255,255,255,.012);
}

.quoteHero .container{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(390px,.55fr);
    align-items:center;
    gap:clamp(60px,8vw,120px);
}

.quoteHero__content{
    max-width:790px;
}

.quoteHero .eyebrow{
    color:#ff6464;
}

.quoteHero h1{
    max-width:800px;
    margin:18px 0 24px;
    color:#fff;
}

.quoteHero h1 strong{
    display:block;
    color:#ff4545;
    font-weight:800;
}

.quoteHero__lead{
    max-width:730px;
    color:rgba(255,255,255,.69);
    font-size:clamp(16px,1.2vw,18px);
    line-height:1.75;
}

.quoteHero__benefits{
    display:flex;
    flex-wrap:wrap;
    gap:12px 25px;
    margin-top:28px;
    list-style:none;
}

.quoteHero__benefits li{
    display:flex;
    align-items:center;
    gap:9px;
    color:rgba(255,255,255,.77);
    font-size:14px;
    font-weight:700;
}

.quoteHero__benefits li span{
    width:21px;
    height:21px;
    display:grid;
    place-items:center;
    flex:0 0 21px;
    border-radius:50%;
    color:#fff;
    background:var(--red);
    font-size:14px;
    box-shadow:0 0 0 5px rgba(206,0,1,.08);
}

.quoteHero__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:28px;
    margin-top:36px;
}

.quoteHero__phone{
    display:flex;
    align-items:center;
    gap:12px;
}

.quoteHero__phoneIcon{
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.14);
    border-radius:13px;
    background:rgba(255,255,255,.07);
}

.quoteHero__phoneIcon svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:#fff;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.quoteHero__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.quoteHero__phone small{
    color:rgba(255,255,255,.47);
    font-size:14px;
}

.quoteHero__phone strong{
    color:#fff;
    font-size:14px;
}


/* RIGHT CARD */

.quoteHero__side{
    position:relative;
}

.quoteHero__card{
    position:relative;
    z-index:3;
    padding:32px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:24px;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.115),
            rgba(255,255,255,.055)
        );
    box-shadow:0 30px 70px rgba(0,0,0,.2);
    backdrop-filter:blur(16px);
}

.quoteHero__card::before{
    content:"";
    position:absolute;
    top:0;
    left:32px;
    width:56px;
    height:3px;
    border-radius:0 0 4px 4px;
    background:var(--red);
}

.quoteHero__cardLabel{
    display:block;
    margin-bottom:8px;
    color:#ff6464;
    font-size:14px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.quoteHero__card>strong{
    display:block;
    max-width:330px;
    color:#fff;
    font-size:21px;
    line-height:1.35;
}

.quoteHero__cardLine{
    width:100%;
    height:1px;
    margin:23px 0;
    background:rgba(255,255,255,.11);
}

.quoteHero__cardItem{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding:10px 0;
    border-bottom:1px solid rgba(255,255,255,.07);
}

.quoteHero__cardItem span{
    color:rgba(255,255,255,.44);
    font-size:14px;
}

.quoteHero__cardItem b{
    color:rgba(255,255,255,.86);
    font-size:14px;
    font-weight:700;
    text-align:right;
}

.quoteHero__card .btn{
    width:100%;
    margin-top:24px;
}

.quoteHero__trust{
    position:absolute;
    z-index:4;
    left:-38px;
    bottom:-52px;
    min-width:270px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:17px 19px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:16px;
    background:#fff;
    box-shadow:0 24px 60px rgba(0,0,0,.2);
}

.quoteHero__trustIcon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:var(--red);
}

.quoteHero__trust>div{
    display:flex;
    flex-direction:column;
}

.quoteHero__trust strong{
    color:var(--navy);
    font-size:13px;
}

.quoteHero__trust span:last-child{
    color:var(--muted);
    font-size:14px;
}


/* DECOR */

.quoteHero__glow{
    position:absolute;
    border-radius:50%;
    filter:blur(70px);
    pointer-events:none;
}

.quoteHero__glow--red{
    width:250px;
    height:250px;
    top:4%;
    right:15%;
    background:rgba(206,0,1,.11);
}

.quoteHero__glow--blue{
    width:320px;
    height:320px;
    left:-130px;
    bottom:-150px;
    background:rgba(62,132,204,.12);
}


/* ===== RESPONSIVE ===== */

@media(max-width:1050px){

    .quoteHero .container{
        grid-template-columns:minmax(0,1fr) 360px;
        gap:45px;
    }

    .quoteHero__card{
        padding:27px;
    }
}

@media(max-width:900px){

    .quoteHero{
        min-height:auto;
    }

    .quoteHero .container{
        grid-template-columns:1fr;
    }

    .quoteHero__content{
        max-width:760px;
    }

    .quoteHero__side{
        max-width:600px;
    }

    .quoteHero__trust{
        left:20px;
        bottom:-42px;
    }
}

@media(max-width:620px){

    .quoteHero{
        padding-top:calc(var(--header-h) + 48px);
        padding-bottom:90px;
    }

    .quoteHero h1 strong{
        display:inline;
    }

    .quoteHero__benefits{
        display:grid;
        grid-template-columns:1fr;
    }

    .quoteHero__actions{
        align-items:stretch;
        flex-direction:column;
        gap:18px;
    }

    .quoteHero__actions .btn{
        width:100%;
    }

    .quoteHero__phone{
        justify-content:center;
    }

    .quoteHero__card{
        padding:25px 20px;
        border-radius:20px;
    }

    .quoteHero__trust{
        position:relative;
        left:auto;
        bottom:auto;
        min-width:0;
        margin:14px;
        margin-top:-1px;
    }
}

@media(max-width:390px){

    .quoteHero__cardItem{
        flex-direction:column;
        gap:4px;
    }

    .quoteHero__cardItem b{
        text-align:left;
    }
}






/* ==================================================
   QUOTE PAGE — SECTION 2
   REQUEST APPLIANCE REPAIR
================================================== */

.quoteRequest{
    background:
        radial-gradient(
            circle at 94% 10%,
            rgba(8,38,74,.045),
            transparent 23%
        ),
        radial-gradient(
            circle at 4% 80%,
            rgba(206,0,1,.025),
            transparent 20%
        ),
        #f7f6f3;
}


/* ===== HEAD ===== */

.quoteRequest__head{
    max-width:760px;
    margin:0 auto clamp(42px,5vw,65px);
    text-align:center;
}

.quoteRequest__head .eyebrow{
    justify-content:center;
}

.quoteRequest__head h2{
    margin:16px 0 18px;
}

.quoteRequest__head h2 strong{
    color:var(--red);
    font-weight:800;
}

.quoteRequest__head p{
    max-width:670px;
    margin:auto;
    font-size:15px;
}


/* ===== LAYOUT ===== */

.quoteRequest__layout{
    display:grid;
    grid-template-columns:
        minmax(0,1fr)
        minmax(300px,350px);
    align-items:start;
    gap:28px;
}


/* ===== FORM CARD ===== */

.quoteRequest__formCard{
    padding:clamp(25px,3vw,40px);
    border:1px solid rgba(8,38,74,.08);
    border-radius:24px;
    background:#fff;
    box-shadow:
        0 18px 55px rgba(8,38,74,.07);
}

.quoteRequest__formHead{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:30px;
    padding-bottom:25px;
    border-bottom:1px solid var(--border);
}

.quoteRequest__formHead>div{
    display:flex;
    flex-direction:column;
}

.quoteRequest__formStep{
    margin-bottom:5px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.quoteRequest__formHead h3{
    font-size:21px;
}

.quoteRequest__required{
    color:var(--muted);
    font-size:14px;
    white-space:nowrap;
}


/* ===== FORM SECTIONS ===== */

.quoteForm__section{
    padding:30px 0;
    border-bottom:1px solid var(--border);
}

.quoteForm__sectionTitle{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:22px;
}

.quoteForm__sectionTitle>span{
    width:34px;
    height:34px;
    flex:0 0 34px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:var(--red);
    background:rgba(206,0,1,.07);

    font-size:14px;
    font-weight:800;
}

.quoteForm__sectionTitle>div{
    display:flex;
    flex-direction:column;
}

.quoteForm__sectionTitle strong{
    color:var(--navy);
    font-size:14px;
}

.quoteForm__sectionTitle small{
    margin-top:1px;
    color:var(--muted);
    font-size:14px;
}


/* ===== FORM GRID ===== */

.quoteForm__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}

.quoteForm__field{
    display:flex;
    flex-direction:column;
    gap:7px;
}

.quoteForm__field label{
    color:var(--navy);
    font-size:14px;
    font-weight:800;
}

.quoteForm__field label b{
    color:var(--red);
}

.quoteForm__field input,
.quoteForm__field select,
.quoteForm__field textarea{
    width:100%;
    outline:none;

    border:1px solid rgba(8,38,74,.12);
    border-radius:11px;

    color:var(--navy);
    background:#fafafa;

    font-family:inherit;
    font-size:13px;

    transition:
        border-color .2s,
        background .2s,
        box-shadow .2s;
}

.quoteForm__field input,
.quoteForm__field select{
    height:49px;
    padding:0 14px;
}

.quoteForm__field textarea{
    min-height:140px;
    padding:14px;
    resize:vertical;
    line-height:1.6;
}

.quoteForm__field input::placeholder,
.quoteForm__field textarea::placeholder{
    color:#9aa2ab;
}

.quoteForm__field input:focus,
.quoteForm__field select:focus,
.quoteForm__field textarea:focus{
    border-color:rgba(206,0,1,.42);
    background:#fff;

    box-shadow:
        0 0 0 4px rgba(206,0,1,.055);
}


/* ===== SUBMIT ===== */

.quoteForm__submit{
    width:100%;
    margin-top:30px;
}

.quoteForm__submit span{
    margin-left:7px;
    font-size:18px;
    transition:transform .2s;
}

.quoteForm__submit:hover span{
    transform:translateX(4px);
}

.quoteForm__notice{
    margin-top:12px;
    color:var(--muted);
    font-size:14px;
    text-align:center;
}


/* ===== SIDEBAR ===== */

.quoteRequest__sidebar{
    position:sticky;
    top:calc(var(--header-h) + 25px);

    display:flex;
    flex-direction:column;
    gap:16px;
}

.quoteSideCard{
    padding:24px;

    border:1px solid rgba(8,38,74,.08);
    border-radius:18px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(8,38,74,.055);
}

.quoteSideCard--primary{
    color:#fff;

    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.2),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #061b35,
            #08264a
        );

    box-shadow:
        0 20px 50px rgba(8,38,74,.16);
}

.quoteSideCard__eyebrow{
    display:block;
    margin-bottom:7px;

    color:#ff5a5a;

    font-size:14px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.quoteSideCard--primary h3{
    margin-bottom:9px;
    color:#fff;
    font-size:19px;
}

.quoteSideCard--primary p{
    margin-bottom:20px;
    color:rgba(255,255,255,.6);
    font-size:14px;
}

.quoteSideCard--primary .btn{
    width:100%;
}


/* SIDEBAR STANDARD */

.quoteSideCard__title{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:18px;
}

.quoteSideCard__title h3{
    font-size:15px;
}

.quoteSideCard__icon{
    width:35px;
    height:35px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:var(--red);
    background:rgba(206,0,1,.07);

    font-size:13px;
}

.quoteSideCard__list{
    display:flex;
    flex-direction:column;
    gap:11px;
    list-style:none;
}

.quoteSideCard__list li{
    position:relative;

    padding-left:19px;

    color:var(--text);
    font-size:14px;
    font-weight:600;
}

.quoteSideCard__list li::before{
    content:"✓";

    position:absolute;
    left:0;

    color:var(--red);
    font-weight:800;
}

.quoteSideCard>p{
    color:var(--muted);
    font-size:14px;
    line-height:1.7;
}

.quoteSideCard__link{
    display:inline-flex;
    align-items:center;
    gap:7px;

    margin-top:15px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.quoteSideCard__link span{
    font-size:16px;
    transition:transform .2s;
}

.quoteSideCard__link:hover span{
    transform:translateX(4px);
}


/* ===== RESPONSIVE ===== */

@media(max-width:1000px){

    .quoteRequest__layout{
        grid-template-columns:minmax(0,1fr) 290px;
    }
}


@media(max-width:850px){

    .quoteRequest__layout{
        grid-template-columns:1fr;
    }

    .quoteRequest__sidebar{
        position:static;

        display:grid;
        grid-template-columns:repeat(2,1fr);
    }

    .quoteSideCard--primary{
        grid-column:1 / -1;
    }
}


@media(max-width:620px){

    .quoteRequest__head{
        text-align:left;
    }

    .quoteRequest__head .eyebrow{
        justify-content:flex-start;
    }

    .quoteRequest__formCard{
        padding:22px 18px;
        border-radius:19px;
    }

    .quoteRequest__formHead{
        flex-direction:column;
        gap:7px;
    }

    .quoteForm__grid{
        grid-template-columns:1fr;
        gap:16px;
    }

    .quoteRequest__sidebar{
        display:flex;
    }
}







/* ===== QUOTE PAGE — SECTION 3: APPLIANCES WE REPAIR ===== */

.quoteAppliances{
    background:
        radial-gradient(circle at 90% 12%,rgba(206,0,1,.028),transparent 22%),
        #fff;
}

.quoteAppliances__head{
    max-width:760px;
    margin:0 auto clamp(42px,5vw,64px);
    text-align:center;
}

.quoteAppliances__head .eyebrow{
    justify-content:center;
}

.quoteAppliances__head h2{
    margin:16px 0 18px;
}

.quoteAppliances__head h2 strong{
    color:var(--red);
}

.quoteAppliances__head p{
    max-width:660px;
    margin:auto;
    font-size:15px;
}

.quoteAppliances__layout{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:clamp(30px,4vw,58px);
    align-items:start;
}

.quoteAppliances__column{
    display:flex;
    flex-direction:column;
}

.quoteAppliances__columnLabel{
    margin-bottom:15px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.quoteAppliances__divider{
    width:1px;
    height:100%;
    background:var(--border);
}

.quoteApplianceItem{
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:15px;
    padding:19px 0;
    border-bottom:1px solid var(--border);
    transition:transform .25s var(--ease);
}

.quoteApplianceItem:hover{
    transform:translateX(5px);
}

.quoteApplianceItem__icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:var(--red);
    background:rgba(206,0,1,.065);
    font-size:14px;
    font-weight:800;
}

.quoteApplianceItem>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.quoteApplianceItem strong{
    color:var(--navy);
    font-size:14px;
}

.quoteApplianceItem span{
    color:var(--muted);
    font-size:14px;
}

.quoteApplianceItem>b{
    color:var(--red);
    font-size:17px;
    font-weight:500;
    transition:transform .2s;
}

.quoteApplianceItem:hover>b{
    transform:translateX(4px);
}

.quoteAppliances__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:36px;
    padding:24px 26px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:18px;
    background:var(--off-white);
}

.quoteAppliances__bottom>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.quoteAppliances__bottom strong{
    color:var(--navy);
    font-size:15px;
}

.quoteAppliances__bottom span{
    color:var(--muted);
    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:768px){

    .quoteAppliances__layout{
        grid-template-columns:1fr;
        gap:30px;
    }

    .quoteAppliances__divider{
        width:100%;
        height:1px;
    }
}

@media(max-width:620px){

    .quoteAppliances__head{
        text-align:left;
    }

    .quoteAppliances__head .eyebrow{
        justify-content:flex-start;
    }

    .quoteApplianceItem{
        grid-template-columns:38px 1fr auto;
        gap:12px;
    }

    .quoteApplianceItem__icon{
        width:38px;
        height:38px;
    }

    .quoteAppliances__bottom{
        align-items:stretch;
        flex-direction:column;
        padding:21px;
    }

    .quoteAppliances__bottom .btn{
        width:100%;
    }
}







/* ===== QUOTE PAGE — SECTION 4: WHAT HAPPENS NEXT ===== */

.quoteSteps{
    background:
        radial-gradient(circle at 8% 12%,rgba(206,0,1,.03),transparent 22%),
        radial-gradient(circle at 92% 88%,rgba(8,38,74,.045),transparent 24%),
        var(--off-white);
}

.quoteSteps__head{
    max-width:760px;
    margin:0 auto clamp(44px,5vw,66px);
    text-align:center;
}

.quoteSteps__head .eyebrow{
    justify-content:center;
}

.quoteSteps__head h2{
    margin:16px 0 18px;
}

.quoteSteps__head h2 strong{
    color:var(--red);
}

.quoteSteps__head p{
    max-width:650px;
    margin:auto;
    font-size:15px;
}

.quoteSteps__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.quoteStep{
    position:relative;
    min-height:250px;
    padding:28px;
    overflow:hidden;
    border:1px solid rgba(8,38,74,.08);
    border-radius:19px;
    background:#fff;
    box-shadow:0 12px 35px rgba(8,38,74,.05);
    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease),
        border-color .35s var(--ease);
}

.quoteStep::after{
    content:"";
    position:absolute;
    right:-60px;
    bottom:-60px;
    width:135px;
    height:135px;
    border-radius:50%;
    background:rgba(206,0,1,.035);
    transition:transform .4s var(--ease);
}

.quoteStep:hover{
    transform:translateY(-6px);
    border-color:rgba(206,0,1,.17);
    box-shadow:0 24px 55px rgba(8,38,74,.1);
}

.quoteStep:hover::after{
    transform:scale(1.5);
}

.quoteStep__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:24px;
}

.quoteStep__number{
    color:rgba(8,38,74,.18);
    font-size:14px;
    font-weight:800;
    letter-spacing:.12em;
}

.quoteStep__icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    color:var(--red);
    background:rgba(206,0,1,.065);
    transition:.3s var(--ease);
}

.quoteStep__icon svg{
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.quoteStep:hover .quoteStep__icon{
    color:#fff;
    background:var(--navy);
    transform:rotate(-4deg);
}

.quoteStep h3{
    margin-bottom:11px;
    font-size:18px;
}

.quoteStep p{
    max-width:300px;
    font-size:14px;
    line-height:1.7;
}

.quoteStep--accent{
    border-color:rgba(206,0,1,.12);
    background:
        radial-gradient(circle at 100% 0,rgba(206,0,1,.07),transparent 38%),
        #fff;
}


/* ===== RESPONSIVE ===== */

@media(max-width:950px){
    .quoteSteps__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:620px){
    .quoteSteps__head{
        text-align:left;
    }

    .quoteSteps__head .eyebrow{
        justify-content:flex-start;
    }

    .quoteSteps__grid{
        grid-template-columns:1fr;
    }

    .quoteStep{
        min-height:auto;
        padding:24px;
    }
}








/* ===== QUOTE PAGE — SECTION 5: PRICING ===== */

.quotePricing{
    overflow:hidden;
    background:
        radial-gradient(circle at 5% 10%,rgba(206,0,1,.03),transparent 22%),
        radial-gradient(circle at 95% 88%,rgba(8,38,74,.05),transparent 24%),
        #fff;
}

.quotePricing__head{
    max-width:760px;
    margin:0 auto clamp(44px,5vw,66px);
    text-align:center;
}

.quotePricing__head .eyebrow{
    justify-content:center;
}

.quotePricing__head h2{
    margin:16px 0 18px;
}

.quotePricing__head h2 strong{
    color:var(--red);
}

.quotePricing__head p{
    max-width:650px;
    margin:auto;
    font-size:15px;
}

.quotePricing__layout{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(500px,1.15fr);
    align-items:center;
    gap:clamp(46px,6vw,90px);
}

.quotePricing__info{
    max-width:560px;
}

.quotePricing__label{
    display:block;
    margin-bottom:9px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.quotePricing__info h3{
    max-width:520px;
    margin-bottom:18px;
    font-size:clamp(22px,2vw,30px);
}

.quotePricing__info>p{
    font-size:14px;
    line-height:1.75;
}

.quotePricing__list{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:26px;
    list-style:none;
}

.quotePricing__list li{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--navy);
    font-size:13px;
    font-weight:700;
}

.quotePricing__list li span{
    width:24px;
    height:24px;
    flex:0 0 24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--red);
    background:rgba(206,0,1,.07);
    font-size:14px;
    font-weight:800;
}

.quotePricing__link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:30px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
}

.quotePricing__link span{
    font-size:18px;
    transition:transform .2s;
}

.quotePricing__link:hover span{
    transform:translateX(5px);
}


/* ===== PRICE CARDS ===== */

.quotePricing__cards{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.pricingCard{
    position:relative;
    min-height:410px;
    padding:30px;
    overflow:hidden;
    border-radius:22px;
    color:#fff;
    box-shadow:0 24px 60px rgba(8,38,74,.14);
}

.pricingCard::after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    right:-80px;
    bottom:-80px;
    border-radius:50%;
    background:rgba(255,255,255,.05);
}

.pricingCard--navy{
    background:
        radial-gradient(circle at 90% 10%,rgba(72,133,200,.18),transparent 28%),
        linear-gradient(145deg,#061a33,#08264a);
}

.pricingCard--red{
    background:
        radial-gradient(circle at 90% 10%,rgba(255,255,255,.12),transparent 30%),
        linear-gradient(145deg,#a90001,#ce0001);
}

.pricingCard__tag{
    display:block;
    margin-bottom:24px;
    color:rgba(255,255,255,.65);
    font-size:14px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.pricingCard__price{
    display:flex;
    align-items:flex-start;
    gap:2px;
}

.pricingCard__price span{
    margin-top:10px;
    color:rgba(255,255,255,.75);
    font-size:18px;
    font-weight:700;
}

.pricingCard__price strong{
    color:#fff;
    font-size:56px;
    line-height:1;
    letter-spacing:-.05em;
}

.pricingCard__priceLabel{
    display:block;
    margin-top:6px;
    color:#fff;
    font-size:14px;
    font-weight:800;
}

.pricingCard>p{
    margin-top:16px;
    color:rgba(255,255,255,.63);
    font-size:14px;
    line-height:1.65;
}

.pricingCard__line{
    height:1px;
    margin:22px 0;
    background:rgba(255,255,255,.13);
}

.pricingCard ul{
    display:flex;
    flex-direction:column;
    gap:10px;
    list-style:none;
}

.pricingCard li{
    position:relative;
    padding-left:18px;
    color:rgba(255,255,255,.78);
    font-size:14px;
}

.pricingCard li::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#fff;
    font-weight:800;
}


/* ===== NOTICE ===== */

.quotePricing__notice{
    display:flex;
    align-items:flex-start;
    gap:14px;
    margin-top:30px;
    padding:20px 22px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:16px;
    background:var(--off-white);
}

.quotePricing__noticeIcon{
    width:30px;
    height:30px;
    flex:0 0 30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--red);
    background:rgba(206,0,1,.07);
    font-size:14px;
    font-weight:800;
}

.quotePricing__notice>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.quotePricing__notice strong{
    color:var(--navy);
    font-size:13px;
}

.quotePricing__notice p{
    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1000px){
    .quotePricing__layout{
        grid-template-columns:1fr;
    }

    .quotePricing__info{
        max-width:700px;
    }
}

@media(max-width:620px){
    .quotePricing__head{
        text-align:left;
    }

    .quotePricing__head .eyebrow{
        justify-content:flex-start;
    }

    .quotePricing__cards{
        grid-template-columns:1fr;
    }

    .pricingCard{
        min-height:auto;
        padding:26px 24px;
    }

    .quotePricing__notice{
        padding:18px;
    }
}






/* ===== QUOTE PAGE — SECTION 6: FAQ ===== */

.quoteFaq{
    overflow:hidden;
    background:
        radial-gradient(circle at 90% 8%,rgba(206,0,1,.03),transparent 23%),
        radial-gradient(circle at 4% 90%,rgba(8,38,74,.04),transparent 24%),
        var(--off-white);
}

.quoteFaq__head{
    max-width:760px;
    margin:0 auto clamp(44px,5vw,66px);
    text-align:center;
}

.quoteFaq__head .eyebrow{
    justify-content:center;
}

.quoteFaq__head h2{
    margin:16px 0 18px;
}

.quoteFaq__head h2 strong{
    color:var(--red);
}

.quoteFaq__head p{
    max-width:650px;
    margin:auto;
    font-size:15px;
}

.quoteFaq__layout{
    display:grid;
    grid-template-columns:minmax(280px,.55fr) minmax(0,1fr);
    align-items:start;
    gap:clamp(40px,6vw,85px);
}

.quoteFaq__intro{
    position:sticky;
    top:calc(var(--header-h) + 30px);
    padding:30px;
    border:1px solid rgba(8,38,74,.08);
    border-radius:22px;
    background:
        radial-gradient(circle at 100% 0,rgba(206,0,1,.07),transparent 35%),
        #fff;
    box-shadow:0 16px 45px rgba(8,38,74,.065);
}

.quoteFaq__label{
    display:block;
    margin-bottom:10px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.quoteFaq__intro h3{
    margin-bottom:15px;
    font-size:clamp(21px,2vw,28px);
}

.quoteFaq__intro>p{
    font-size:13px;
    line-height:1.75;
}

.quoteFaq__help{
    display:flex;
    align-items:center;
    gap:13px;
    margin:26px 0 22px;
    padding-top:22px;
    border-top:1px solid var(--border);
}

.quoteFaq__helpIcon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:var(--navy);
    font-size:16px;
    font-weight:800;
}

.quoteFaq__help>div:last-child{
    display:flex;
    flex-direction:column;
}

.quoteFaq__help span{
    color:var(--muted);
    font-size:14px;
}

.quoteFaq__help strong{
    color:var(--navy);
    font-size:13px;
}

.quoteFaq__intro .btn{
    width:100%;
}

/* ACCORDION */

.quoteFaq__accordion{
    border-top:1px solid var(--border);
}

.faqItem{
    border-bottom:1px solid var(--border);
}

.faqItem__button{
    width:100%;
    min-height:84px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    padding:20px 4px;
    border:0;
    outline:none;
    background:transparent;
    text-align:left;
}

.faqItem__button>span{
    color:var(--navy);
    font-size:15px;
    font-weight:800;
    letter-spacing:-.015em;
}

.faqItem__button b{
    position:relative;
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:10px;
    background:#fff;
    border:1px solid rgba(8,38,74,.09);
    box-shadow:0 5px 15px rgba(8,38,74,.04);
}

.faqItem__button b::before,
.faqItem__button b::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:12px;
    height:1.5px;
    border-radius:3px;
    background:var(--red);
    transform:translate(-50%,-50%);
    transition:transform .25s var(--ease);
}

.faqItem__button b::after{
    transform:translate(-50%,-50%) rotate(90deg);
}

.faqItem.isOpen .faqItem__button b{
    background:var(--navy);
    border-color:var(--navy);
}

.faqItem.isOpen .faqItem__button b::before,
.faqItem.isOpen .faqItem__button b::after{
    background:#fff;
}

.faqItem.isOpen .faqItem__button b::after{
    transform:translate(-50%,-50%) rotate(0);
}

.faqItem__content{
    display:grid;
    grid-template-rows:0fr;
    transition:grid-template-rows .35s var(--ease);
}

.faqItem__content>div{
    overflow:hidden;
}

.faqItem__content p{
    max-width:720px;
    padding:0 60px 0 4px;
    color:var(--muted);
    font-size:14px;
    line-height:1.75;
}

.faqItem.isOpen .faqItem__content{
    grid-template-rows:1fr;
}

.faqItem.isOpen .faqItem__content p{
    padding-bottom:25px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){
    .quoteFaq__layout{
        grid-template-columns:1fr;
    }

    .quoteFaq__intro{
        position:static;
        max-width:650px;
    }
}

@media(max-width:620px){
    .quoteFaq__head{
        text-align:left;
    }

    .quoteFaq__head .eyebrow{
        justify-content:flex-start;
    }

    .quoteFaq__intro{
        padding:24px;
        border-radius:19px;
    }

    .faqItem__button{
        min-height:76px;
        gap:18px;
    }

    .faqItem__button>span{
        font-size:14px;
    }

    .faqItem__content p{
        padding-right:10px;
    }
}





/* ==================================================
   QUOTE PAGE — SECTION 7
   FINAL CTA
================================================== */

.quoteFinalCta{
    overflow:hidden;

    background:
        radial-gradient(
            circle at 10% 100%,
            rgba(206,0,1,.035),
            transparent 25%
        ),
        linear-gradient(
            180deg,
            #fff,
            #f7f6f3
        );
}

.quoteFinalCta__wrap{
    position:relative;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(360px,.55fr);

    align-items:center;

    gap:clamp(50px,7vw,100px);

    padding:clamp(38px,5vw,68px);

    overflow:hidden;

    border-radius:30px;

    color:#fff;

    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(206,0,1,.19),
            transparent 27%
        ),
        radial-gradient(
            circle at 4% 100%,
            rgba(74,139,207,.15),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #05182f 0%,
            #08264a 58%,
            #0b315e 100%
        );

    box-shadow:
        0 30px 80px rgba(8,38,74,.17);
}

.quoteFinalCta__wrap::before{
    content:"";

    position:absolute;

    width:420px;
    height:420px;

    left:-230px;
    bottom:-230px;

    border:1px solid rgba(255,255,255,.055);

    border-radius:50%;

    box-shadow:
        0 0 0 60px rgba(255,255,255,.018),
        0 0 0 120px rgba(255,255,255,.012);
}

.quoteFinalCta__content{
    position:relative;
    z-index:2;

    max-width:720px;
}

.quoteFinalCta .eyebrow{
    color:#ff6262;
}

.quoteFinalCta h2{
    max-width:690px;

    margin:16px 0 21px;

    color:#fff;
}

.quoteFinalCta h2 strong{
    color:#ff4848;
    font-weight:800;
}

.quoteFinalCta__content>p{
    max-width:650px;

    color:rgba(255,255,255,.65);

    font-size:15px;
    line-height:1.75;
}


/* ===== BENEFITS ===== */

.quoteFinalCta__benefits{
    display:flex;
    flex-wrap:wrap;

    gap:10px 22px;

    margin-top:26px;
}

.quoteFinalCta__benefits span{
    color:rgba(255,255,255,.75);

    font-size:14px;
    font-weight:700;
}


/* ===== ACTIONS ===== */

.quoteFinalCta__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:28px;

    margin-top:34px;
}

.quoteFinalCta__phone{
    display:flex;
    align-items:center;

    gap:12px;
}

.quoteFinalCta__phoneIcon{
    width:45px;
    height:45px;

    flex:0 0 45px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.13);

    border-radius:13px;

    background:rgba(255,255,255,.07);
}

.quoteFinalCta__phoneIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:#fff;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.quoteFinalCta__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.quoteFinalCta__phone small{
    color:rgba(255,255,255,.47);
    font-size:14px;
}

.quoteFinalCta__phone strong{
    color:#fff;
    font-size:14px;
}


/* ===== LOCATION PANEL ===== */

.quoteFinalCta__panel{
    position:relative;
    z-index:2;

    padding:28px;

    border:1px solid rgba(255,255,255,.13);

    border-radius:22px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.115),
            rgba(255,255,255,.055)
        );

    box-shadow:
        0 24px 60px rgba(0,0,0,.18);

    backdrop-filter:blur(16px);
}

.quoteFinalCta__panel::before{
    content:"";

    position:absolute;

    top:0;
    left:28px;

    width:52px;
    height:3px;

    border-radius:0 0 4px 4px;

    background:var(--red);
}

.quoteFinalCta__panelTop{
    display:flex;
    flex-direction:column;

    gap:3px;

    padding-bottom:20px;

    border-bottom:1px solid rgba(255,255,255,.1);
}

.quoteFinalCta__panelTop span{
    color:#ff5d5d;

    font-size:14px;
    font-weight:800;

    letter-spacing:.11em;
    text-transform:uppercase;
}

.quoteFinalCta__panelTop strong{
    color:#fff;
    font-size:18px;
}


/* LOCATION */

.quoteFinalCta__location{
    display:flex;
    align-items:center;

    gap:13px;

    padding:21px 0;
}

.quoteFinalCta__locationIcon{
    width:44px;
    height:44px;

    flex:0 0 44px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:#fff;

    background:var(--red);
}

.quoteFinalCta__locationIcon svg{
    width:21px;
    height:21px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.quoteFinalCta__location>div{
    display:flex;
    flex-direction:column;
}

.quoteFinalCta__location small{
    color:rgba(255,255,255,.43);
    font-size:14px;
}

.quoteFinalCta__location strong{
    color:#fff;
    font-size:14px;
}


/* AREAS */

.quoteFinalCta__areas{
    display:flex;
    flex-wrap:wrap;

    gap:7px;
}

.quoteFinalCta__areas span{
    padding:6px 9px;

    border:1px solid rgba(255,255,255,.1);

    border-radius:7px;

    color:rgba(255,255,255,.68);

    background:rgba(255,255,255,.045);

    font-size:14px;
    font-weight:600;
}

.quoteFinalCta__areaLink{
    display:inline-flex;
    align-items:center;

    gap:7px;

    margin-top:20px;

    color:#fff;

    font-size:14px;
    font-weight:800;
}

.quoteFinalCta__areaLink>span{
    color:#ff5b5b;

    font-size:16px;

    transition:transform .2s;
}

.quoteFinalCta__areaLink:hover>span{
    transform:translateX(4px);
}


/* ===== RESPONSIVE ===== */

@media(max-width:950px){

    .quoteFinalCta__wrap{
        grid-template-columns:1fr;
    }

    .quoteFinalCta__panel{
        max-width:650px;
    }
}


@media(max-width:620px){

    .quoteFinalCta__wrap{
        padding:30px 20px;

        border-radius:22px;
    }

    .quoteFinalCta h2 strong{
        display:inline;
    }

    .quoteFinalCta__benefits{
        flex-direction:column;

        gap:9px;
    }

    .quoteFinalCta__actions{
        align-items:stretch;
        flex-direction:column;

        gap:18px;
    }

    .quoteFinalCta__actions .btn{
        width:100%;
    }

    .quoteFinalCta__phone{
        justify-content:center;
    }

    .quoteFinalCta__panel{
        padding:23px 20px;

        border-radius:18px;
    }
}





/* ==================================================
   BRANDS PAGE — SECTION 1
   HERO
================================================== */

.brandsHero{
    position:relative;

    min-height:650px;

    display:flex;
    align-items:center;

    padding:
        calc(var(--header-h) + clamp(70px,8vw,115px))
        0
        clamp(110px,10vw,145px);

    overflow:hidden;

    color:#fff;

    background:
        radial-gradient(
            circle at 15% 100%,
            rgba(48,112,184,.14),
            transparent 30%
        ),
            #061a34;;
}


/* ===== IMAGE ===== */

.brandsHero__media{
    position:absolute;

    z-index:1;

    top:0;
    right:0;

    width:57%;
    height:100%;
}

.brandsHero__media img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;

    filter:
        saturate(.75)
        contrast(1.04)
        brightness(.65);
}

.brandsHero__media::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            #061a34 0%,
            rgba(6,26,52,.92) 12%,
            rgba(6,26,52,.55) 42%,
            rgba(6,26,52,.15) 75%,
            rgba(6,26,52,.32) 100%
        );
}


/* ===== OVERLAY ===== */

.brandsHero__overlay{
    position:absolute;
    z-index:2;
    inset:0;

    pointer-events:none;

    background:
        radial-gradient(
            circle at 83% 20%,
            rgba(206,0,1,.13),
            transparent 23%
        );
}

.brandsHero__overlay::before{
    content:"";

    position:absolute;

    width:520px;
    height:520px;

    right:-250px;
    top:-260px;

    border-radius:50%;

    border:1px solid rgba(255,255,255,.045);

    box-shadow:
        0 0 0 70px rgba(255,255,255,.012),
        0 0 0 140px rgba(255,255,255,.008);
}


/* ===== CONTENT ===== */

.brandsHero>.container{
    position:relative;
    z-index:3;

    width:100%;
}

.brandsHero__content{
    max-width:700px;
}

.brandsHero .eyebrow{
    color:#ff5e5e;
}

.brandsHero h1{
    max-width:680px;

    margin:17px 0 23px;

    color:#fff;

    font-size:
        clamp(44px,5.2vw,74px);

    line-height:.98;

    letter-spacing:-.055em;
}

.brandsHero h1 strong{
    display:block;

    color:#ff4545;

    font-weight:800;
}

.brandsHero__lead{
    max-width:650px;

    color:rgba(255,255,255,.67);

    font-size:
        clamp(15px,1.2vw,17px);

    line-height:1.75;
}


/* ===== ACTIONS ===== */

.brandsHero__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:28px;

    margin-top:34px;
}

.brandsHero__phone{
    display:flex;
    align-items:center;

    gap:12px;
}

.brandsHero__phoneIcon{
    width:45px;
    height:45px;

    flex:0 0 45px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.14);

    border-radius:13px;

    background:
        rgba(255,255,255,.07);

    backdrop-filter:blur(8px);
}

.brandsHero__phoneIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:#fff;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandsHero__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.brandsHero__phone small{
    color:rgba(255,255,255,.45);

    font-size:14px;
}

.brandsHero__phone strong{
    color:#fff;

    font-size:14px;
}


/* ===== TRUST ===== */

.brandsHero__trust{
    display:flex;
    align-items:center;

    gap:0;

    margin-top:42px;
}

.brandsHero__trustItem{
    display:flex;
    flex-direction:column;

    padding:0 25px;

    border-right:
        1px solid rgba(255,255,255,.11);
}

.brandsHero__trustItem:first-child{
    padding-left:0;
}

.brandsHero__trustItem:last-child{
    border-right:0;
}

.brandsHero__trustItem strong{
    color:#fff;

    font-size:17px;
    font-weight:800;
}

.brandsHero__trustItem span{
    margin-top:2px;

    color:rgba(255,255,255,.42);

    font-size:14px;
}


/* ===== BOTTOM BAR ===== */

.brandsHero__bottom{
    position:absolute;

    z-index:5;

    left:0;
    right:0;
    bottom:0;

    min-height:54px;

    display:flex;
    align-items:center;

    border-top:
        1px solid rgba(255,255,255,.08);

    background:
        rgba(3,17,34,.76);

    backdrop-filter:blur(15px);
}

.brandsHero__bottom .container{
    display:flex;
    align-items:center;

    gap:28px;
}

.brandsHero__bottom .container>span{
    flex:0 0 auto;

    color:#ff5555;

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.brandsHero__popular{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:8px 25px;
}

.brandsHero__popular a{
    position:relative;

    color:rgba(255,255,255,.55);

    font-size:14px;
    font-weight:700;

    transition:color .2s;
}

.brandsHero__popular a::before{
    content:"";

    position:absolute;

    left:-13px;
    top:50%;

    width:3px;
    height:3px;

    border-radius:50%;

    background:
        rgba(255,255,255,.22);

    transform:
        translateY(-50%);
}

.brandsHero__popular a:first-child::before{
    display:none;
}

.brandsHero__popular a:hover{
    color:#fff;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .brandsHero__media{
        width:70%;
    }

    .brandsHero__media::after{
        background:
            linear-gradient(
                90deg,
                #061a34 0%,
                rgba(6,26,52,.9) 35%,
                rgba(6,26,52,.42) 100%
            );
    }

    .brandsHero__content{
        max-width:620px;
    }
}


@media(max-width:700px){

    .brandsHero{
        min-height:auto;

        padding-top:
            calc(var(--header-h) + 55px);

        padding-bottom:125px;
    }

    .brandsHero__media{
        width:100%;

        opacity:.38;
    }

    .brandsHero__media::after{
        background:
            linear-gradient(
                90deg,
                rgba(5,24,47,.95),
                rgba(5,24,47,.72)
            );
    }

    .brandsHero h1{
        font-size:
            clamp(42px,13vw,60px);
    }

    .brandsHero__actions{
        align-items:stretch;
        flex-direction:column;

        gap:18px;
    }

    .brandsHero__actions .btn{
        width:100%;
    }

    .brandsHero__phone{
        justify-content:center;
    }

    .brandsHero__trust{
        flex-wrap:wrap;

        gap:20px 0;
    }

    .brandsHero__trustItem{
        padding:0 17px;
    }

    .brandsHero__bottom{
        padding:13px 0;
    }

    .brandsHero__bottom .container{
        align-items:flex-start;
        flex-direction:column;

        gap:8px;
    }

}


@media(max-width:480px){

    .brandsHero h1 strong{
        display:inline;
    }

    .brandsHero__trustItem{
        width:33.333%;

        padding:0 10px;
    }

    .brandsHero__trustItem strong{
        font-size:14px;
    }

    .brandsHero__trustItem span{
        font-size:14px;
    }

    .brandsHero__popular{
        gap:7px 18px;
    }
}








/* ==================================================
   BRANDS PAGE — SECTION 2
   BRAND APPLIANCE REPAIR INTRO
================================================== */

.brandsIntro{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 92% 15%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        #fff;
}


/* ===== LAYOUT ===== */

.brandsIntro__layout{
    display:grid;

    grid-template-columns:
        minmax(300px,.72fr)
        minmax(0,1fr);

    align-items:start;

    gap:clamp(55px,8vw,120px);
}


/* ===== TITLE ===== */

.brandsIntro__title{
    position:relative;

    max-width:500px;
}

.brandsIntro__title::after{
    content:"";

    display:block;

    width:58px;
    height:3px;

    margin-top:28px;

    border-radius:5px;

    background:var(--red);
}

.brandsIntro__title h2{
    margin-top:16px;

    max-width:470px;
}

.brandsIntro__title h2 strong{
    display:block;

    color:var(--red);

    font-weight:800;
}


/* ===== CONTENT ===== */

.brandsIntro__content{
    max-width:720px;
}

.brandsIntro__lead{
    margin-bottom:17px;

    color:var(--navy);

    font-size:16px;
    font-weight:600;

    line-height:1.75;
}

.brandsIntro__content>p:not(.brandsIntro__lead){
    color:var(--muted);

    font-size:13px;
    line-height:1.8;
}


/* ===== FEATURES ===== */

.brandsIntro__features{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:15px;

    margin-top:30px;
}

.brandsIntro__feature{
    display:flex;
    align-items:flex-start;

    gap:13px;

    padding:18px;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:14px;

    background:var(--off-white);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease),
        background .3s var(--ease);
}

.brandsIntro__feature:hover{
    transform:translateY(-3px);

    border-color:
        rgba(206,0,1,.14);

    background:#fff;
}

.brandsIntro__featureIcon{
    width:38px;
    height:38px;

    flex:0 0 38px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);
}

.brandsIntro__featureIcon svg{
    width:19px;
    height:19px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandsIntro__feature>div{
    display:flex;
    flex-direction:column;

    gap:3px;
}

.brandsIntro__feature strong{
    color:var(--navy);

    font-size:14px;
}

.brandsIntro__feature span{
    color:var(--muted);

    font-size:14px;
    line-height:1.5;
}


/* ===== LINK ===== */

.brandsIntro__link{
    display:inline-flex;
    align-items:center;

    gap:8px;

    margin-top:25px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.brandsIntro__link span{
    font-size:17px;

    transition:
        transform .2s;
}

.brandsIntro__link:hover span{
    transform:
        translateX(5px);
}


/* ===== STATS ===== */

.brandsIntro__stats{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    margin-top:
        clamp(50px,6vw,75px);

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:18px;

    background:
        var(--off-white);
}

.brandsIntro__stat{
    position:relative;

    display:flex;
    flex-direction:column;

    align-items:center;
    justify-content:center;

    min-height:105px;

    padding:20px;

    text-align:center;
}

.brandsIntro__stat:not(:last-child)::after{
    content:"";

    position:absolute;

    top:25%;
    right:0;

    width:1px;
    height:50%;

    background:
        rgba(8,38,74,.09);
}

.brandsIntro__stat strong{
    color:var(--navy);

    font-size:22px;
    font-weight:800;

    letter-spacing:-.035em;
}

.brandsIntro__stat:first-child strong{
    color:var(--red);
}

.brandsIntro__stat span{
    margin-top:3px;

    color:var(--muted);

    font-size:14px;
    font-weight:600;
}


/* ===== RESPONSIVE ===== */

@media(max-width:850px){

    .brandsIntro__layout{
        grid-template-columns:1fr;

        gap:35px;
    }

    .brandsIntro__title{
        max-width:650px;
    }

    .brandsIntro__title h2{
        max-width:600px;
    }

    .brandsIntro__stats{
        grid-template-columns:
            repeat(2,1fr);
    }

    .brandsIntro__stat:nth-child(2)::after{
        display:none;
    }

    .brandsIntro__stat:nth-child(-n+2){
        border-bottom:
            1px solid rgba(8,38,74,.08);
    }
}


@media(max-width:580px){

    .brandsIntro__title h2 strong{
        display:inline;
    }

    .brandsIntro__features{
        grid-template-columns:1fr;
    }

    .brandsIntro__stats{
        grid-template-columns:1fr 1fr;
    }

    .brandsIntro__stat{
        min-height:95px;

        padding:15px 10px;
    }

    .brandsIntro__stat strong{
        font-size:19px;
    }

    .brandsIntro__stat span{
        max-width:110px;
    }
}








/* ==================================================
   BRANDS PAGE — SECTION 3
   BRANDS CATALOG
================================================== */

.brandsCatalog{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 10%,
            rgba(206,0,1,.03),
            transparent 23%
        ),
        radial-gradient(
            circle at 94% 90%,
            rgba(8,38,74,.045),
            transparent 25%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.brandsCatalog__head{
    max-width:760px;

    margin:
        0 auto
        clamp(42px,5vw,65px);

    text-align:center;
}

.brandsCatalog__head .eyebrow{
    justify-content:center;
}

.brandsCatalog__head h2{
    margin:16px 0 18px;
}

.brandsCatalog__head h2 strong{
    color:var(--red);
}

.brandsCatalog__head p{
    max-width:680px;

    margin:auto;

    font-size:15px;
}


/* ===== GRID ===== */

.brandsCatalog__grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:14px;
}


/* ===== BRAND CARD ===== */

.brandCard{
    position:relative;

    min-height:118px;

    display:grid;

    grid-template-columns:
        34px 1fr auto;

    align-items:center;

    gap:15px;

    padding:20px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:16px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(8,38,74,.04);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease),
        box-shadow .3s var(--ease);
}

.brandCard::after{
    content:"";

    position:absolute;

    right:-45px;
    bottom:-45px;

    width:90px;
    height:90px;

    border-radius:50%;

    background:
        rgba(206,0,1,.025);

    transition:
        transform .35s var(--ease);
}

.brandCard:hover{
    transform:
        translateY(-5px);

    border-color:
        rgba(206,0,1,.17);

    box-shadow:
        0 18px 42px rgba(8,38,74,.09);
}

.brandCard:hover::after{
    transform:scale(1.6);
}


/* NUMBER */

.brandCard__number{
    color:
        rgba(8,38,74,.2);

    font-size:14px;
    font-weight:800;

    letter-spacing:.09em;
}


/* NAME */

.brandCard__name{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;

    gap:3px;
}

.brandCard__name strong{
    color:var(--navy);

    font-size:15px;
    font-weight:800;

    letter-spacing:-.02em;
}

.brandCard__name span{
    color:var(--muted);

    font-size:14px;
}


/* ARROW */

.brandCard__arrow{
    position:relative;
    z-index:2;

    width:32px;
    height:32px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:var(--red);

    background:
        rgba(206,0,1,.06);

    font-size:16px;

    transition:
        color .25s,
        background .25s,
        transform .25s;
}

.brandCard:hover .brandCard__arrow{
    color:#fff;

    background:var(--red);

    transform:
        translateX(3px);
}


/* ===== BOTTOM CTA ===== */

.brandsCatalog__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    margin-top:28px;

    padding:25px 28px;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:18px;

    background:#fff;

    box-shadow:
        0 10px 32px rgba(8,38,74,.045);
}

.brandsCatalog__bottom>div{
    display:flex;
    flex-direction:column;

    gap:3px;
}

.brandsCatalog__bottom strong{
    color:var(--navy);

    font-size:15px;
}

.brandsCatalog__bottom span{
    max-width:680px;

    color:var(--muted);

    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1150px){

    .brandsCatalog__grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

}


@media(max-width:850px){

    .brandsCatalog__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


@media(max-width:620px){

    .brandsCatalog__head{
        text-align:left;
    }

    .brandsCatalog__head .eyebrow{
        justify-content:flex-start;
    }

    .brandsCatalog__grid{
        grid-template-columns:1fr;
    }

    .brandCard{
        min-height:92px;

        padding:17px 18px;
    }

    .brandsCatalog__bottom{
        align-items:stretch;
        flex-direction:column;

        padding:21px;
    }

    .brandsCatalog__bottom .btn{
        width:100%;
    }

}




/* ==================================================
   BRANDS PAGE — SECTION 4
   PREMIUM APPLIANCE EXPERTISE
================================================== */

.brandExpertise{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 3% 90%,rgba(206,0,1,.028),transparent 22%),
        radial-gradient(circle at 94% 8%,rgba(8,38,74,.045),transparent 24%),
        #fff;
}

.brandExpertise__grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);
    align-items:center;
    gap:clamp(55px,7vw,105px);
}

/* CONTENT */

.brandExpertise__content{
    max-width:640px;
}

.brandExpertise__content h2{
    max-width:610px;
    margin:16px 0 22px;
}

.brandExpertise__content h2 strong{
    display:block;
    color:var(--red);
    font-weight:800;
}

.brandExpertise__lead{
    margin-bottom:15px;
    color:var(--navy);
    font-size:15px;
    font-weight:600;
    line-height:1.75;
}

.brandExpertise__content>p:not(.brandExpertise__lead){
    color:var(--muted);
    font-size:13px;
    line-height:1.8;
}

/* FEATURES */

.brandExpertise__features{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin-top:27px;
}

.brandExpertise__feature{
    display:flex;
    align-items:flex-start;
    gap:12px;
}

.brandExpertise__feature>span{
    width:25px;
    height:25px;
    flex:0 0 25px;
    display:grid;
    place-items:center;
    margin-top:1px;
    border-radius:50%;
    color:var(--red);
    background:rgba(206,0,1,.07);
    font-size:14px;
    font-weight:800;
}

.brandExpertise__feature>div{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.brandExpertise__feature strong{
    color:var(--navy);
    font-size:14px;
}

.brandExpertise__feature small{
    color:var(--muted);
    font-size:14px;
}

/* ACTIONS */

.brandExpertise__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:25px;
    margin-top:33px;
}

.brandExpertise__link{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:var(--red);
    font-size:14px;
    font-weight:800;
}

.brandExpertise__link span{
    font-size:17px;
    transition:transform .2s;
}

.brandExpertise__link:hover span{
    transform:translateX(5px);
}

/* IMAGE */

.brandExpertise__visual{
    position:relative;
    padding:20px 20px 35px 0;
}

.brandExpertise__image{
    position:relative;
    z-index:2;
    height:clamp(450px,42vw,600px);
    overflow:hidden;
    border-radius:27px;
    background:var(--surface);
    box-shadow:0 30px 75px rgba(8,38,74,.14);
}

.brandExpertise__image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
    transition:transform .7s var(--ease);
}

.brandExpertise__visual:hover .brandExpertise__image img{
    transform:scale(1.03);
}

.brandExpertise__image::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(
            180deg,
            transparent 58%,
            rgba(8,38,74,.12)
        );
}

/* FLOATING CARD */

.brandExpertise__card{
    position:absolute;
    z-index:4;
    left:-38px;
    bottom:0;
    width:min(330px,75%);
    display:flex;
    align-items:flex-start;
    gap:13px;
    padding:19px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:17px;
    color:#fff;
    background:
        radial-gradient(circle at 100% 0,rgba(206,0,1,.18),transparent 38%),
        linear-gradient(145deg,#061a33,#08264a);
    box-shadow:0 24px 60px rgba(8,38,74,.2);
}

.brandExpertise__cardIcon{
    width:43px;
    height:43px;
    flex:0 0 43px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:var(--red);
}

.brandExpertise__cardIcon svg{
    width:21px;
    height:21px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandExpertise__card>div{
    display:flex;
    flex-direction:column;
}

.brandExpertise__card small{
    margin-bottom:2px;
    color:rgba(255,255,255,.45);
    font-size:14px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.brandExpertise__card strong{
    color:#fff;
    font-size:13px;
}

.brandExpertise__card span:last-child{
    margin-top:3px;
    color:rgba(255,255,255,.55);
    font-size:14px;
    line-height:1.5;
}

/* DECORATION */

.brandExpertise__decoration{
    position:absolute;
    z-index:1;
    right:-45px;
    bottom:-15px;
    width:220px;
    height:220px;
    border-radius:50%;
    border:1px solid rgba(206,0,1,.09);
    box-shadow:
        0 0 0 35px rgba(206,0,1,.02),
        0 0 0 70px rgba(8,38,74,.015);
}

/* ===== RESPONSIVE ===== */

@media(max-width:1050px){
    .brandExpertise__grid{
        grid-template-columns:1fr 1fr;
        gap:45px;
    }

    .brandExpertise__card{
        left:-20px;
    }
}

@media(max-width:850px){
    .brandExpertise__grid{
        grid-template-columns:1fr;
    }

    .brandExpertise__content{
        max-width:700px;
    }

    .brandExpertise__visual{
        max-width:720px;
        padding-right:0;
    }
}

@media(max-width:576px){
    .brandExpertise__content h2 strong{
        display:inline;
    }

    .brandExpertise__actions{
        align-items:stretch;
        flex-direction:column;
        gap:18px;
    }

    .brandExpertise__actions .btn{
        width:100%;
    }

    .brandExpertise__image{
        height:390px;
        border-radius:20px;
    }

    .brandExpertise__visual{
        padding-bottom:48px;
    }

    .brandExpertise__card{
        left:14px;
        right:14px;
        bottom:5px;
        width:auto;
    }
}





/* ==================================================
   BRANDS PAGE — SECTION 5
   APPLIANCE TYPES BY BRAND
================================================== */

.brandTypes{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 95% 8%,
            rgba(8,38,74,.045),
            transparent 23%
        ),
        radial-gradient(
            circle at 3% 90%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.brandTypes__head{
    display:grid;

    grid-template-columns:
        minmax(300px,.75fr)
        minmax(0,1fr);

    align-items:end;

    gap:clamp(50px,8vw,120px);

    margin-bottom:
        clamp(42px,5vw,65px);
}

.brandTypes__head h2{
    max-width:590px;

    margin-top:16px;
}

.brandTypes__head h2 strong{
    display:block;

    color:var(--red);

    font-weight:800;
}

.brandTypes__head>p{
    max-width:620px;

    padding-bottom:5px;

    font-size:13px;
    line-height:1.8;
}


/* ===== GRID ===== */

.brandTypes__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:16px;
}


/* ===== CARD ===== */

.brandTypeCard{
    position:relative;

    min-height:415px;

    display:flex;
    flex-direction:column;

    padding:27px;

    overflow:hidden;

    border-radius:19px;

    color:#fff;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(59,126,198,.12),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #061a33,
            #08264a
        );

    box-shadow:
        0 15px 40px rgba(8,38,74,.1);

    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease);
}

.brandTypeCard::after{
    content:"";

    position:absolute;

    right:-70px;
    bottom:-70px;

    width:160px;
    height:160px;

    border-radius:50%;

    background:
        rgba(255,255,255,.025);

    transition:
        transform .4s var(--ease);
}

.brandTypeCard:hover{
    transform:
        translateY(-6px);

    box-shadow:
        0 25px 55px rgba(8,38,74,.17);
}

.brandTypeCard:hover::after{
    transform:
        scale(1.5);
}


/* ===== CARD TOP ===== */

.brandTypeCard__head{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:24px;
}

.brandTypeCard__number{
    color:
        rgba(255,255,255,.28);

    font-size:14px;
    font-weight:800;

    letter-spacing:.12em;
}

.brandTypeCard__icon{
    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:#ff5b5b;

    background:
        rgba(255,255,255,.075);

    border:
        1px solid rgba(255,255,255,.08);

    transition:
        color .3s,
        background .3s;
}

.brandTypeCard:hover .brandTypeCard__icon{
    color:#fff;

    background:var(--red);
}

.brandTypeCard__icon svg{
    width:22px;
    height:22px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ===== CONTENT ===== */

.brandTypeCard h3{
    position:relative;
    z-index:2;

    margin-bottom:10px;

    color:#fff;

    font-size:18px;
}

.brandTypeCard>p{
    position:relative;
    z-index:2;

    min-height:58px;

    color:
        rgba(255,255,255,.56);

    font-size:14px;
    line-height:1.65;
}


/* ===== LIST ===== */

.brandTypeCard ul{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;

    gap:8px;

    margin:21px 0;

    padding-top:18px;

    border-top:
        1px solid rgba(255,255,255,.09);

    list-style:none;
}

.brandTypeCard li{
    position:relative;

    padding-left:17px;

    color:
        rgba(255,255,255,.7);

    font-size:14px;
}

.brandTypeCard li::before{
    content:"";

    position:absolute;

    left:0;
    top:5px;

    width:5px;
    height:5px;

    border-radius:50%;

    background:#ff5050;

    box-shadow:
        0 0 0 3px rgba(206,0,1,.1);
}


/* ===== LINKS ===== */

.brandTypeCard>a,
.brandTypeCard__links a{
    position:relative;
    z-index:3;

    display:inline-flex;
    align-items:center;

    gap:7px;

    color:#ff5b5b;

    font-size:14px;
    font-weight:800;
}

.brandTypeCard>a{
    margin-top:auto;
}

.brandTypeCard>a span,
.brandTypeCard__links a span{
    color:#fff;

    font-size:15px;

    transition:
        transform .2s;
}

.brandTypeCard>a:hover span,
.brandTypeCard__links a:hover span{
    transform:
        translateX(4px);
}

.brandTypeCard__links{
    position:relative;
    z-index:3;

    display:flex;
    flex-wrap:wrap;

    gap:8px 18px;

    margin-top:auto;
}


/* ===== NOTE ===== */

.brandTypes__note{
    display:grid;

    grid-template-columns:
        auto 1fr auto;

    align-items:center;

    gap:15px;

    margin-top:25px;

    padding:20px 23px;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:16px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(8,38,74,.04);
}

.brandTypes__noteIcon{
    width:34px;
    height:34px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);

    font-size:14px;
    font-weight:800;
}

.brandTypes__note>div{
    display:flex;
    flex-direction:column;

    gap:2px;
}

.brandTypes__note strong{
    color:var(--navy);

    font-size:14px;
}

.brandTypes__note p{
    max-width:750px;

    color:var(--muted);

    font-size:14px;
}

.brandTypes__note>a{
    display:inline-flex;
    align-items:center;

    gap:7px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    white-space:nowrap;
}

.brandTypes__note>a span{
    font-size:15px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:950px){

    .brandTypes__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


@media(max-width:760px){

    .brandTypes__head{
        grid-template-columns:1fr;

        gap:20px;
    }

}


@media(max-width:620px){

    .brandTypes__head h2 strong{
        display:inline;
    }

    .brandTypes__grid{
        grid-template-columns:1fr;
    }

    .brandTypeCard{
        min-height:auto;

        padding:24px;
    }

    .brandTypeCard>p{
        min-height:0;
    }

    .brandTypes__note{
        grid-template-columns:auto 1fr;
    }

    .brandTypes__note>a{
        grid-column:1 / -1;

        margin-left:49px;
    }

}






/* ==================================================
   BRANDS PAGE — SECTION 6
   OEM / QUALITY PARTS
================================================== */

.oemParts{
    position:relative;
    overflow:hidden;
    color:#fff;

    background:
        radial-gradient(
            circle at 12% 100%,
            rgba(65,130,201,.15),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 10%,
            rgba(206,0,1,.14),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #05182f 0%,
            #08264a 58%,
            #0a315d 100%
        );
}

.oemParts::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.045;

    background-image:
        linear-gradient(
            rgba(255,255,255,.12) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.12) 1px,
            transparent 1px
        );

    background-size:58px 58px;

    mask-image:
        linear-gradient(
            90deg,
            #000,
            rgba(0,0,0,.6),
            transparent 85%
        );
}

.oemParts__glow{
    position:absolute;
    right:-120px;
    top:-120px;

    width:360px;
    height:360px;

    border-radius:50%;

    background:
        rgba(206,0,1,.08);

    filter:blur(70px);
}

.oemParts .container{
    position:relative;
    z-index:2;
}


/* ===== GRID ===== */

.oemParts__grid{
    display:grid;

    grid-template-columns:
        minmax(0,.95fr)
        minmax(480px,1.05fr);

    align-items:center;

    gap:clamp(55px,7vw,105px);
}


/* ===== CONTENT ===== */

.oemParts__content{
    max-width:650px;
}

.oemParts .eyebrow{
    color:#ff6262;
}

.oemParts h2{
    max-width:620px;

    margin:16px 0 22px;

    color:#fff;
}

.oemParts h2 strong{
    display:block;

    color:#ff4b4b;
    font-weight:800;
}

.oemParts__lead{
    margin-bottom:15px;

    color:rgba(255,255,255,.78);

    font-size:15px;
    font-weight:600;

    line-height:1.75;
}

.oemParts__content>p:not(.oemParts__lead){
    color:rgba(255,255,255,.54);

    font-size:14px;
    line-height:1.8;
}


/* ===== FEATURES ===== */

.oemParts__features{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:12px;

    margin-top:30px;
}

.oemParts__feature{
    padding:17px;

    border:
        1px solid rgba(255,255,255,.09);

    border-radius:14px;

    background:
        rgba(255,255,255,.045);

    backdrop-filter:blur(10px);
}

.oemParts__featureIcon{
    width:30px;
    height:30px;

    display:grid;
    place-items:center;

    margin-bottom:13px;

    border-radius:9px;

    color:#fff;

    background:var(--red);

    font-size:14px;
    font-weight:800;
}

.oemParts__feature strong{
    display:block;

    margin-bottom:5px;

    color:#fff;

    font-size:14px;
}

.oemParts__feature p{
    color:rgba(255,255,255,.46);

    font-size:14px;
    line-height:1.55;
}


/* ===== ACTIONS ===== */

.oemParts__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:26px;

    margin-top:32px;
}

.oemParts__link{
    display:inline-flex;
    align-items:center;

    gap:8px;

    color:#fff;

    font-size:14px;
    font-weight:800;
}

.oemParts__link>span{
    color:#ff5454;

    font-size:17px;

    transition:transform .2s;
}

.oemParts__link:hover>span{
    transform:translateX(5px);
}


/* ===== IMAGE ===== */

.oemParts__visual{
    position:relative;
    padding:20px 0 35px 20px;
}

.oemParts__image{
    position:relative;

    height:clamp(410px,39vw,560px);

    overflow:hidden;

    border:
        1px solid rgba(255,255,255,.1);

    border-radius:26px;

    background:
        rgba(255,255,255,.06);

    box-shadow:
        0 30px 75px rgba(0,0,0,.22);
}

.oemParts__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}

.oemParts__visual:hover .oemParts__image img{
    transform:scale(1.035);
}

.oemParts__image::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(5,24,47,.04),
            rgba(5,24,47,.25)
        );

    pointer-events:none;
}


/* ===== FLOAT CARD ===== */

.oemParts__floating{
    position:absolute;

    left:-20px;
    bottom:0;

    width:min(330px,78%);

    display:flex;
    align-items:flex-start;

    gap:13px;

    padding:18px;

    border:
        1px solid rgba(255,255,255,.1);

    border-radius:17px;

    background:
        rgba(4,18,36,.94);

    box-shadow:
        0 24px 60px rgba(0,0,0,.25);

    backdrop-filter:blur(16px);
}

.oemParts__floatingIcon{
    width:42px;
    height:42px;

    flex:0 0 42px;

    display:grid;
    place-items:center;

    border-radius:12px;

    color:#fff;

    background:var(--red);
}

.oemParts__floatingIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.oemParts__floating>div{
    display:flex;
    flex-direction:column;
}

.oemParts__floating small{
    color:rgba(255,255,255,.4);

    font-size:14px;

    text-transform:uppercase;
    letter-spacing:.08em;
}

.oemParts__floating strong{
    margin-top:2px;

    color:#fff;

    font-size:14px;
}

.oemParts__floating span:last-child{
    margin-top:3px;

    color:rgba(255,255,255,.48);

    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:950px){

    .oemParts__grid{
        grid-template-columns:1fr;
    }

    .oemParts__content{
        max-width:720px;
    }

    .oemParts__visual{
        max-width:720px;

        padding-left:0;
    }

}


@media(max-width:650px){

    .oemParts h2 strong{
        display:inline;
    }

    .oemParts__features{
        grid-template-columns:1fr;
    }

    .oemParts__feature{
        display:grid;

        grid-template-columns:35px 1fr;

        column-gap:12px;
    }

    .oemParts__featureIcon{
        grid-row:1 / 3;

        margin-bottom:0;
    }

    .oemParts__feature strong,
    .oemParts__feature p{
        grid-column:2;
    }

    .oemParts__actions{
        align-items:stretch;
        flex-direction:column;

        gap:18px;
    }

    .oemParts__actions .btn{
        width:100%;
    }

    .oemParts__image{
        height:370px;

        border-radius:20px;
    }

    .oemParts__visual{
        padding-bottom:48px;
    }

    .oemParts__floating{
        left:14px;
        right:14px;
        bottom:4px;

        width:auto;
    }

}







/* ==================================================
   BRANDS PAGE — SECTION 7
   WHY CHOOSE US
================================================== */

.brandWhy{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 8%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        radial-gradient(
            circle at 95% 90%,
            rgba(8,38,74,.04),
            transparent 24%
        ),
        #fff;
}


/* ===== HEAD ===== */

.brandWhy__head{
    max-width:760px;

    margin:0 auto clamp(44px,5vw,65px);

    text-align:center;
}

.brandWhy__head .eyebrow{
    justify-content:center;
}

.brandWhy__head h2{
    margin:16px 0 18px;
}

.brandWhy__head h2 strong{
    color:var(--red);
}

.brandWhy__head p{
    max-width:670px;

    margin:auto;

    font-size:14px;
    line-height:1.75;
}


/* ===== GRID ===== */

.brandWhy__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:16px;
}


/* ===== CARD ===== */

.brandWhyCard{
    position:relative;

    min-height:245px;

    padding:26px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:18px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(8,38,74,.045);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease),
        box-shadow .3s var(--ease);
}

.brandWhyCard::after{
    content:"";

    position:absolute;

    right:-60px;
    bottom:-60px;

    width:130px;
    height:130px;

    border-radius:50%;

    background:
        rgba(206,0,1,.025);

    transition:
        transform .4s var(--ease);
}

.brandWhyCard:hover{
    transform:translateY(-5px);

    border-color:
        rgba(206,0,1,.15);

    box-shadow:
        0 20px 45px rgba(8,38,74,.085);
}

.brandWhyCard:hover::after{
    transform:scale(1.5);
}


/* ===== TOP ===== */

.brandWhyCard__top{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:23px;
}

.brandWhyCard__icon{
    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);

    transition:
        color .3s,
        background .3s,
        transform .3s;
}

.brandWhyCard:hover .brandWhyCard__icon{
    color:#fff;

    background:var(--navy);

    transform:rotate(-4deg);
}

.brandWhyCard__icon svg{
    width:22px;
    height:22px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandWhyCard__number{
    color:
        rgba(8,38,74,.16);

    font-size:14px;
    font-weight:800;

    letter-spacing:.12em;
}


/* ===== CONTENT ===== */

.brandWhyCard h3{
    position:relative;
    z-index:2;

    margin-bottom:10px;

    color:var(--navy);

    font-size:16px;
}

.brandWhyCard p{
    position:relative;
    z-index:2;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== ACCENT CARD ===== */

.brandWhyCard--accent{
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.065),
            transparent 38%
        ),
        var(--off-white);
}

.brandWhyCard--accent .brandWhyCard__icon{
    color:#fff;

    background:var(--red);
}


/* ===== BOTTOM CTA ===== */

.brandWhy__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:35px;

    margin-top:26px;

    padding:25px 28px;

    border-radius:18px;

    background:
        radial-gradient(
            circle at 90% 50%,
            rgba(206,0,1,.12),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #061a33,
            #08264a
        );

    box-shadow:
        0 16px 40px rgba(8,38,74,.12);
}

.brandWhy__bottomContent{
    display:flex;
    flex-direction:column;

    gap:3px;
}

.brandWhy__bottomContent span{
    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.08em;
    text-transform:uppercase;
}

.brandWhy__bottomContent strong{
    color:#fff;

    font-size:15px;
}


/* ===== CTA ACTIONS ===== */

.brandWhy__actions{
    display:flex;
    align-items:center;

    gap:24px;

    flex:0 0 auto;
}

.brandWhy__phone{
    display:flex;
    flex-direction:column;
}

.brandWhy__phone span{
    color:
        rgba(255,255,255,.42);

    font-size:14px;
}

.brandWhy__phone strong{
    color:#fff;

    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .brandWhy__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .brandWhy__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


@media(max-width:620px){

    .brandWhy__head{
        text-align:left;
    }

    .brandWhy__head .eyebrow{
        justify-content:flex-start;
    }

    .brandWhy__grid{
        grid-template-columns:1fr;
    }

    .brandWhyCard{
        min-height:auto;

        padding:23px;
    }

    .brandWhy__bottom{
        padding:22px;
    }

    .brandWhy__actions{
        width:100%;

        align-items:stretch;
        flex-direction:column;

        gap:16px;
    }

    .brandWhy__actions .btn{
        width:100%;
    }

    .brandWhy__phone{
        align-items:center;
    }

}






/* ==================================================
   BRANDS PAGE — SECTION 8
   DIAGNOSTIC FEES
================================================== */

.brandFees{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 90%,
            rgba(206,0,1,.025),
            transparent 24%
        ),
        radial-gradient(
            circle at 95% 10%,
            rgba(8,38,74,.04),
            transparent 25%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.brandFees__head{
    max-width:740px;

    margin:
        0 auto
        clamp(42px,5vw,62px);

    text-align:center;
}

.brandFees__head .eyebrow{
    justify-content:center;
}

.brandFees__head h2{
    margin:16px 0 18px;
}

.brandFees__head h2 strong{
    color:var(--red);
}

.brandFees__head p{
    max-width:650px;

    margin:auto;

    font-size:13px;
    line-height:1.75;
}


/* ===== MAIN LAYOUT ===== */

.brandFees__wrap{
    display:grid;

    grid-template-columns:
        minmax(260px,.72fr)
        minmax(260px,.72fr)
        minmax(330px,1fr);

    gap:16px;

    align-items:stretch;
}


/* ==================================================
   PRICE CARDS
================================================== */

.brandFeeCard{
    position:relative;

    min-height:430px;

    display:flex;
    flex-direction:column;

    padding:28px;

    overflow:hidden;

    border-radius:20px;
}


/* ===== LIGHT ===== */

.brandFeeCard--light{
    border:
        1px solid rgba(8,38,74,.08);

    background:#fff;

    box-shadow:
        0 15px 40px rgba(8,38,74,.055);
}


/* ===== PREMIUM ===== */

.brandFeeCard--premium{
    color:#fff;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.18),
            transparent 33%
        ),
        linear-gradient(
            145deg,
            #061a33,
            #08264a
        );

    box-shadow:
        0 20px 50px rgba(8,38,74,.16);
}

.brandFeeCard--premium::after{
    content:"";

    position:absolute;

    right:-80px;
    bottom:-80px;

    width:190px;
    height:190px;

    border-radius:50%;

    background:
        rgba(255,255,255,.025);
}


/* ===== POPULAR ===== */

.brandFeeCard__popular{
    position:absolute;

    top:0;
    right:25px;

    padding:7px 11px;

    border-radius:0 0 8px 8px;

    color:#fff;

    background:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}


/* ===== CARD TOP ===== */

.brandFeeCard__top{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:25px;
}

.brandFeeCard__label{
    color:var(--red);

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.brandFeeCard--premium .brandFeeCard__label{
    color:#ff5b5b;
}

.brandFeeCard__icon{
    width:42px;
    height:42px;

    display:grid;
    place-items:center;

    border-radius:12px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);
}

.brandFeeCard--premium .brandFeeCard__icon{
    color:#fff;

    border:
        1px solid rgba(255,255,255,.1);

    background:
        rgba(255,255,255,.07);
}

.brandFeeCard__icon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ===== PRICE ===== */

.brandFeeCard__price{
    position:relative;
    z-index:2;

    display:flex;
    align-items:flex-start;

    margin-bottom:4px;
}

.brandFeeCard__price sup{
    margin-top:10px;
    margin-right:2px;

    color:var(--red);

    font-size:18px;
    font-weight:800;
}

.brandFeeCard__price strong{
    color:var(--navy);

    font-size:58px;
    font-weight:800;

    line-height:1;

    letter-spacing:-.055em;
}

.brandFeeCard--premium .brandFeeCard__price sup,
.brandFeeCard--premium .brandFeeCard__price strong{
    color:#fff;
}


/* ===== CONTENT ===== */

.brandFeeCard h3{
    position:relative;
    z-index:2;

    margin-bottom:10px;

    color:var(--navy);

    font-size:16px;
}

.brandFeeCard--premium h3{
    color:#fff;
}

.brandFeeCard>p{
    position:relative;
    z-index:2;

    min-height:55px;

    color:var(--muted);

    font-size:14px;
    line-height:1.65;
}

.brandFeeCard--premium>p{
    color:
        rgba(255,255,255,.52);
}


/* ===== LIST ===== */

.brandFeeCard ul{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;

    gap:9px;

    margin:21px 0;

    padding-top:19px;

    border-top:
        1px solid rgba(8,38,74,.08);

    list-style:none;
}

.brandFeeCard--premium ul{
    border-color:
        rgba(255,255,255,.1);
}

.brandFeeCard li{
    position:relative;

    padding-left:17px;

    color:var(--muted);

    font-size:14px;
}

.brandFeeCard--premium li{
    color:
        rgba(255,255,255,.67);
}

.brandFeeCard li::before{
    content:"✓";

    position:absolute;

    left:0;

    color:var(--red);

    font-weight:800;
}

.brandFeeCard--premium li::before{
    color:#ff5b5b;
}


/* ===== CARD LINK ===== */

.brandFeeCard>a{
    position:relative;
    z-index:3;

    display:inline-flex;
    align-items:center;

    gap:7px;

    margin-top:auto;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.brandFeeCard--premium>a{
    color:#ff5b5b;
}

.brandFeeCard>a span{
    font-size:15px;

    transition:
        transform .2s;
}

.brandFeeCard>a:hover span{
    transform:
        translateX(4px);
}


/* ==================================================
   INFO CARD
================================================== */

.brandFees__info{
    position:relative;

    display:grid;

    grid-template-columns:auto 1fr;

    align-items:start;

    gap:16px;

    padding:30px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:20px;

    background:#fff;

    box-shadow:
        0 15px 40px rgba(8,38,74,.05);
}

.brandFees__info::after{
    content:"";

    position:absolute;

    right:-80px;
    bottom:-80px;

    width:190px;
    height:190px;

    border-radius:50%;

    background:
        rgba(206,0,1,.025);
}

.brandFees__infoIcon{
    position:relative;
    z-index:2;

    width:45px;
    height:45px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:#fff;

    background:var(--navy);
}

.brandFees__infoIcon svg{
    width:21px;
    height:21px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;
}

.brandFees__info>div{
    position:relative;
    z-index:2;
}

.brandFees__infoLabel{
    display:block;

    margin-bottom:7px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.brandFees__info h3{
    max-width:330px;

    margin-bottom:13px;

    font-size:19px;
}

.brandFees__info p{
    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ===== POINTS ===== */

.brandFees__points{
    display:flex;
    flex-direction:column;

    gap:8px;

    margin:20px 0 24px;
}

.brandFees__points span{
    color:var(--navy);

    font-size:14px;
    font-weight:700;
}


/* ===== NOTE ===== */

.brandFees__note{
    display:flex;
    align-items:flex-start;

    gap:9px;

    max-width:850px;

    margin:
        22px auto 0;

    text-align:center;
}

.brandFees__note>span{
    color:var(--red);

    font-weight:800;
}

.brandFees__note p{
    color:var(--muted);

    font-size:14px;
    line-height:1.6;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1000px){

    .brandFees__wrap{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .brandFees__info{
        grid-column:1 / -1;
    }

}


@media(max-width:620px){

    .brandFees__head{
        text-align:left;
    }

    .brandFees__head .eyebrow{
        justify-content:flex-start;
    }

    .brandFees__wrap{
        grid-template-columns:1fr;
    }

    .brandFees__info{
        grid-column:auto;
    }

    .brandFeeCard{
        min-height:auto;

        padding:24px;
    }

    .brandFeeCard>p{
        min-height:0;
    }

    .brandFees__info{
        grid-template-columns:1fr;

        padding:24px;
    }

}






/* ==================================================
   BRANDS PAGE — SECTION 9
   BRAND REPAIR FAQ
================================================== */

.brandFaq{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 95% 10%,
            rgba(206,0,1,.025),
            transparent 23%
        ),
        radial-gradient(
            circle at 4% 90%,
            rgba(8,38,74,.04),
            transparent 24%
        ),
        #fff;
}


/* ===== HEAD ===== */

.brandFaq__head{
    max-width:750px;

    margin:
        0 auto
        clamp(44px,5vw,66px);

    text-align:center;
}

.brandFaq__head .eyebrow{
    justify-content:center;
}

.brandFaq__head h2{
    margin:16px 0 18px;
}

.brandFaq__head h2 strong{
    color:var(--red);
}

.brandFaq__head p{
    max-width:660px;

    margin:auto;

    font-size:13px;
    line-height:1.75;
}


/* ===== LAYOUT ===== */

.brandFaq__layout{
    display:grid;

    grid-template-columns:
        minmax(280px,.55fr)
        minmax(0,1fr);

    align-items:start;

    gap:clamp(45px,7vw,90px);
}


/* ==================================================
   LEFT CARD
================================================== */

.brandFaq__intro{
    position:sticky;

    top:
        calc(var(--header-h) + 28px);

    padding:30px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:21px;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.065),
            transparent 37%
        ),
        var(--off-white);

    box-shadow:
        0 15px 40px rgba(8,38,74,.055);
}

.brandFaq__intro::after{
    content:"";

    position:absolute;

    right:-75px;
    bottom:-75px;

    width:170px;
    height:170px;

    border-radius:50%;

    background:
        rgba(8,38,74,.025);
}

.brandFaq__intro>*{
    position:relative;
    z-index:2;
}

.brandFaq__label{
    display:block;

    margin-bottom:9px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.brandFaq__intro h3{
    max-width:350px;

    margin-bottom:14px;

    font-size:
        clamp(20px,2vw,27px);
}

.brandFaq__intro>p{
    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== SUPPORT ===== */

.brandFaq__support{
    display:flex;
    align-items:center;

    gap:12px;

    margin:
        25px 0 21px;

    padding-top:21px;

    border-top:
        1px solid rgba(8,38,74,.08);
}

.brandFaq__supportIcon{
    width:42px;
    height:42px;

    flex:0 0 42px;

    display:grid;
    place-items:center;

    border-radius:12px;

    color:#fff;

    background:var(--navy);
}

.brandFaq__supportIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandFaq__support>div{
    display:flex;
    flex-direction:column;
}

.brandFaq__support small{
    color:var(--muted);

    font-size:14px;
}

.brandFaq__support strong{
    color:var(--navy);

    font-size:14px;
}

.brandFaq__intro .btn{
    width:100%;
}


/* ==================================================
   FAQ
================================================== */

.brandFaq__accordion{
    border-top:
        1px solid rgba(8,38,74,.09);
}

.brandFaqItem{
    border-bottom:
        1px solid rgba(8,38,74,.09);
}


/* ===== BUTTON ===== */

.brandFaqItem__button{
    width:100%;

    min-height:80px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    padding:19px 3px;

    border:0;

    outline:none;

    background:transparent;

    text-align:left;
}

.brandFaqItem__button>span{
    max-width:700px;

    color:var(--navy);

    font-size:13px;
    font-weight:800;

    line-height:1.45;

    letter-spacing:-.015em;
}


/* ===== PLUS ===== */

.brandFaqItem__button b{
    position:relative;

    width:34px;
    height:34px;

    flex:0 0 34px;

    border:
        1px solid rgba(8,38,74,.09);

    border-radius:10px;

    background:var(--off-white);

    transition:
        background .25s,
        border-color .25s;
}

.brandFaqItem__button b::before,
.brandFaqItem__button b::after{
    content:"";

    position:absolute;

    top:50%;
    left:50%;

    width:12px;
    height:1.5px;

    border-radius:3px;

    background:var(--red);

    transform:
        translate(-50%,-50%);

    transition:
        transform .25s,
        background .25s;
}

.brandFaqItem__button b::after{
    transform:
        translate(-50%,-50%)
        rotate(90deg);
}


/* OPEN */

.brandFaqItem.isOpen
.brandFaqItem__button b{
    border-color:var(--navy);

    background:var(--navy);
}

.brandFaqItem.isOpen
.brandFaqItem__button b::before,
.brandFaqItem.isOpen
.brandFaqItem__button b::after{
    background:#fff;
}

.brandFaqItem.isOpen
.brandFaqItem__button b::after{
    transform:
        translate(-50%,-50%)
        rotate(0);
}


/* ===== CONTENT ===== */

.brandFaqItem__content{
    display:grid;

    grid-template-rows:0fr;

    transition:
        grid-template-rows
        .35s var(--ease);
}

.brandFaqItem__content>div{
    overflow:hidden;
}

.brandFaqItem__content p{
    max-width:720px;

    padding:
        0 65px 0 3px;

    color:var(--muted);

    font-size:14px;
    line-height:1.8;
}

.brandFaqItem.isOpen
.brandFaqItem__content{
    grid-template-rows:1fr;
}

.brandFaqItem.isOpen
.brandFaqItem__content p{
    padding-bottom:24px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .brandFaq__layout{
        grid-template-columns:1fr;
    }

    .brandFaq__intro{
        position:static;

        max-width:650px;
    }

}


@media(max-width:620px){

    .brandFaq__head{
        text-align:left;
    }

    .brandFaq__head .eyebrow{
        justify-content:flex-start;
    }

    .brandFaq__intro{
        padding:24px;

        border-radius:18px;
    }

    .brandFaqItem__button{
        min-height:74px;

        gap:18px;
    }

    .brandFaqItem__button>span{
        font-size:14px;
    }

    .brandFaqItem__content p{
        padding-right:8px;
    }

}





/* ==================================================
   BRANDS PAGE — SECTION 10
   FINAL CTA
================================================== */

.brandFinalCta{
    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 100%,
            rgba(206,0,1,.035),
            transparent 24%
        ),
        var(--off-white);
}

.brandFinalCta__wrap{
    position:relative;

    display:grid;

    grid-template-columns:
        minmax(0,.92fr)
        minmax(480px,1.08fr);

    overflow:hidden;

    border-radius:30px;

    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(206,0,1,.15),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #05182f,
            #08264a 60%,
            #0a315d
        );

    box-shadow:
        0 30px 80px rgba(8,38,74,.17);
}


/* ===== CONTENT ===== */

.brandFinalCta__content{
    position:relative;
    z-index:3;

    align-self:center;

    padding:
        clamp(38px,5vw,68px);

    color:#fff;
}

.brandFinalCta .eyebrow{
    color:#ff6262;
}

.brandFinalCta h2{
    max-width:610px;

    margin:16px 0 21px;

    color:#fff;
}

.brandFinalCta h2 strong{
    display:block;

    color:#ff4949;

    font-weight:800;
}

.brandFinalCta__content>p{
    max-width:600px;

    color:rgba(255,255,255,.64);

    font-size:13px;
    line-height:1.8;
}


/* ===== BENEFITS ===== */

.brandFinalCta__benefits{
    display:flex;
    flex-direction:column;

    gap:10px;

    margin-top:27px;
}

.brandFinalCta__benefits span{
    color:rgba(255,255,255,.75);

    font-size:14px;
    font-weight:700;
}


/* ===== ACTIONS ===== */

.brandFinalCta__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:27px;

    margin-top:34px;
}

.brandFinalCta__phone{
    display:flex;
    align-items:center;

    gap:12px;
}

.brandFinalCta__phoneIcon{
    width:44px;
    height:44px;

    flex:0 0 44px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.13);

    border-radius:12px;

    background:rgba(255,255,255,.07);
}

.brandFinalCta__phoneIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:#fff;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.brandFinalCta__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.brandFinalCta__phone small{
    color:rgba(255,255,255,.44);

    font-size:14px;
}

.brandFinalCta__phone strong{
    color:#fff;

    font-size:13px;
}


/* ===== IMAGE ===== */

.brandFinalCta__visual{
    position:relative;

    min-height:520px;

    overflow:hidden;
}

.brandFinalCta__visual img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;

    transition:
        transform .8s var(--ease);
}

.brandFinalCta__wrap:hover
.brandFinalCta__visual img{
    transform:scale(1.035);
}

.brandFinalCta__overlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(8,38,74,.55) 0%,
            rgba(8,38,74,.12) 40%,
            rgba(8,38,74,.05) 100%
        );
}


/* ===== FLOATING CARD ===== */

.brandFinalCta__card{
    position:absolute;

    right:24px;
    bottom:24px;

    min-width:260px;

    display:flex;
    align-items:center;

    gap:13px;

    padding:17px 19px;

    border:
        1px solid rgba(255,255,255,.11);

    border-radius:16px;

    color:#fff;

    background:
        rgba(5,24,47,.9);

    box-shadow:
        0 20px 55px rgba(0,0,0,.22);

    backdrop-filter:blur(15px);
}

.brandFinalCta__cardIcon{
    width:40px;
    height:40px;

    flex:0 0 40px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:#fff;

    background:var(--red);
}

.brandFinalCta__card>div{
    display:flex;
    flex-direction:column;
}

.brandFinalCta__card small{
    color:rgba(255,255,255,.42);

    font-size:7px;

    text-transform:uppercase;
    letter-spacing:.08em;
}

.brandFinalCta__card strong{
    margin-top:2px;

    color:#fff;

    font-size:14px;
}

.brandFinalCta__card span:last-child{
    margin-top:2px;

    color:rgba(255,255,255,.48);

    font-size:14px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:950px){

    .brandFinalCta__wrap{
        grid-template-columns:1fr;
    }

    .brandFinalCta__visual{
        min-height:430px;
    }

}

@media(max-width:620px){

    .brandFinalCta__wrap{
        border-radius:22px;
    }

    .brandFinalCta__content{
        padding:30px 20px;
    }

    .brandFinalCta h2 strong{
        display:inline;
    }

    .brandFinalCta__actions{
        align-items:stretch;
        flex-direction:column;

        gap:18px;
    }

    .brandFinalCta__actions .btn{
        width:100%;
    }

    .brandFinalCta__phone{
        justify-content:center;
    }

    .brandFinalCta__visual{
        min-height:350px;
    }

    .brandFinalCta__card{
        left:14px;
        right:14px;
        bottom:14px;

        min-width:0;
    }

}













/* ==================================================
   SERVICES PAGE — SECTION 1
   HERO
================================================== */

.servicesHero{
    position:relative;
    min-height:650px;
    display:flex;
    align-items:center;
    padding:
        calc(var(--header-h) + clamp(70px,8vw,115px))
        0
        clamp(110px,10vw,145px);
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(circle at 10% 100%,rgba(55,121,190,.15),transparent 30%),
           #061a34;;
}


/* ===== IMAGE ===== */

.servicesHero__media{
    position:absolute;
    z-index:1;
    top:0;
    right:0;
    width:58%;
    height:100%;
}

.servicesHero__media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center;
    filter:
        saturate(.78)
        contrast(1.05)
        brightness(.65);
}

.servicesHero__media::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            #061a34 0%,
            rgba(6,26,52,.94) 12%,
            rgba(6,26,52,.58) 43%,
            rgba(6,26,52,.14) 78%,
            rgba(6,26,52,.28) 100%
        );
}


/* ===== OVERLAY ===== */

.servicesHero__overlay{
    position:absolute;
    z-index:2;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 83% 18%,rgba(206,0,1,.13),transparent 24%);
}

.servicesHero__overlay::after{
    content:"";
    position:absolute;
    width:550px;
    height:550px;
    top:-275px;
    right:-220px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.045);
    box-shadow:
        0 0 0 70px rgba(255,255,255,.012),
        0 0 0 140px rgba(255,255,255,.008);
}


/* ===== CONTENT ===== */

.servicesHero>.container{
    position:relative;
    z-index:3;
    width:100%;
}

.servicesHero__content{
    max-width:710px;
}

.servicesHero .eyebrow{
    color:#ff5e5e;
}

.servicesHero h1{
    max-width:700px;
    margin:17px 0 23px;
    color:#fff;
    font-size:clamp(44px,5.2vw,74px);
    line-height:.98;
    letter-spacing:-.055em;
}

.servicesHero h1 strong{
    display:block;
    color:#ff4545;
    font-weight:800;
}

.servicesHero__lead{
    max-width:660px;
    color:rgba(255,255,255,.68);
    font-size:clamp(15px,1.2vw,17px);
    line-height:1.75;
}


/* ===== ACTIONS ===== */

.servicesHero__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:28px;
    margin-top:34px;
}

.servicesHero__phone{
    display:flex;
    align-items:center;
    gap:12px;
}

.servicesHero__phoneIcon{
    width:45px;
    height:45px;
    flex:0 0 45px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.14);
    border-radius:13px;
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(8px);
}

.servicesHero__phoneIcon svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:#fff;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.servicesHero__phone>span:last-child{
    display:flex;
    flex-direction:column;
}

.servicesHero__phone small{
    color:rgba(255,255,255,.45);
    font-size:14px;
}

.servicesHero__phone strong{
    color:#fff;
    font-size:14px;
}


/* ===== BENEFITS ===== */

.servicesHero__benefits{
    display:flex;
    flex-wrap:wrap;
    gap:11px 24px;
    margin-top:31px;
}

.servicesHero__benefits span{
    color:rgba(255,255,255,.7);
    font-size:14px;
    font-weight:700;
}

.servicesHero__benefits span::first-letter{
    color:#ff5050;
}


/* ===== BOTTOM BAR ===== */

.servicesHero__bar{
    position:absolute;
    z-index:5;
    left:0;
    right:0;
    bottom:0;
    min-height:62px;
    display:flex;
    align-items:center;
    border-top:1px solid rgba(255,255,255,.08);
    background:rgba(3,17,34,.78);
    backdrop-filter:blur(16px);
}

.servicesHero__bar .container{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
}

.servicesHero__barItem{
    position:relative;
    min-height:61px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:12px 18px;
}

.servicesHero__barItem:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:25%;
    width:1px;
    height:50%;
    background:rgba(255,255,255,.09);
}

.servicesHero__barItem strong{
    color:#ff5050;
    font-size:14px;
    font-weight:800;
}

.servicesHero__barItem span{
    color:rgba(255,255,255,.52);
    font-size:14px;
    font-weight:600;
}


/* ===== DECORATIVE GLOWS ===== */

.servicesHero__glow{
    position:absolute;
    border-radius:50%;
    filter:blur(70px);
    pointer-events:none;
}

.servicesHero__glow--red{
    width:250px;
    height:250px;
    top:7%;
    right:15%;
    background:rgba(206,0,1,.09);
}

.servicesHero__glow--blue{
    width:300px;
    height:300px;
    left:-130px;
    bottom:-140px;
    background:rgba(64,130,200,.11);
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .servicesHero__media{
        width:72%;
    }

    .servicesHero__content{
        max-width:620px;
    }

    .servicesHero__bar .container{
        grid-template-columns:repeat(3,1fr);
    }

    .servicesHero__barItem:nth-child(n+4){
        display:none;
    }

}

@media(max-width:700px){

    .servicesHero{
        min-height:auto;
        padding-top:calc(var(--header-h) + 55px);
        padding-bottom:130px;
    }

    .servicesHero__media{
        width:100%;
        opacity:.38;
    }

    .servicesHero__media::after{
        background:
            linear-gradient(
                90deg,
                rgba(5,24,47,.95),
                rgba(5,24,47,.7)
            );
    }

    .servicesHero h1{
        font-size:clamp(42px,13vw,60px);
    }

    .servicesHero__actions{
        align-items:stretch;
        flex-direction:column;
        gap:18px;
    }

    .servicesHero__actions .btn{
        width:100%;
    }

    .servicesHero__phone{
        justify-content:center;
    }

}

@media(max-width:480px){

    .servicesHero h1 strong{
        display:inline;
    }

    .servicesHero__bar .container{
        grid-template-columns:repeat(2,1fr);
    }

    .servicesHero__barItem:nth-child(3){
        display:none;
    }

}





/* ==================================================
   SERVICES PAGE — SECTION 2
   RESIDENTIAL SERVICES
================================================== */

.residentialServices{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 95% 8%,
            rgba(8,38,74,.045),
            transparent 24%
        ),
        radial-gradient(
            circle at 4% 90%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.residentialServices__head{
    max-width:780px;

    margin:
        0 auto
        clamp(44px,5vw,68px);

    text-align:center;
}

.residentialServices__head .eyebrow{
    justify-content:center;
}

.residentialServices__head h2{
    margin:16px 0 18px;
}

.residentialServices__head h2 strong{
    color:var(--red);
}

.residentialServices__head p{
    max-width:680px;

    margin:auto;

    font-size:14px;
    line-height:1.75;
}


/* ===== GRID ===== */

.residentialServices__grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:18px;
}


/* ==================================================
   SERVICE CARD
================================================== */

.serviceImageCard{
    display:flex;
    flex-direction:column;

    min-width:0;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:19px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(8,38,74,.05);

    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease),
        border-color .35s var(--ease);
}

.serviceImageCard:hover{
    transform:translateY(-6px);

    border-color:
        rgba(206,0,1,.15);

    box-shadow:
        0 23px 52px rgba(8,38,74,.1);
}


/* ===== IMAGE ===== */

.serviceImageCard__image{
    position:relative;

    height:205px;

    display:block;

    overflow:hidden;

    background:var(--surface);
}

.serviceImageCard__image::after{
    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(5,24,47,.2) 100%
        );

    pointer-events:none;
}

.serviceImageCard__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .65s var(--ease);
}

.serviceImageCard:hover
.serviceImageCard__image img{
    transform:scale(1.045);
}


/* NUMBER */

.serviceImageCard__number{
    position:absolute;

    z-index:3;

    top:14px;
    left:14px;

    width:34px;
    height:34px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(255,255,255,.22);

    border-radius:10px;

    color:#fff;

    background:
        rgba(5,24,47,.72);

    backdrop-filter:blur(10px);

    font-size:14px;
    font-weight:800;
}


/* ===== CONTENT ===== */

.serviceImageCard__content{
    flex:1;

    display:flex;
    flex-direction:column;

    padding:22px;
}

.serviceImageCard__category{
    margin-bottom:7px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.serviceImageCard h3{
    max-width:240px;

    margin-bottom:10px;

    color:var(--navy);

    font-size:16px;
}

.serviceImageCard p{
    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ===== ISSUE TAGS ===== */

.serviceImageCard__issues{
    display:flex;
    flex-wrap:wrap;

    gap:6px;

    margin-top:17px;
}

.serviceImageCard__issues span{
    padding:5px 7px;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:6px;

    color:var(--muted);

    background:var(--off-white);

    font-size:7px;
    font-weight:600;
}


/* ===== LINK ===== */

.serviceImageCard__link{
    display:inline-flex;
    align-items:center;

    gap:7px;

    margin-top:auto;
    padding-top:19px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.serviceImageCard__link>span{
    font-size:15px;

    transition:
        transform .2s;
}

.serviceImageCard__link:hover>span{
    transform:translateX(4px);
}


/* ==================================================
   BOTTOM DIAGNOSTIC CTA
================================================== */

.residentialServices__bottom{
    display:grid;

    grid-template-columns:
        1fr auto auto;

    align-items:center;

    gap:30px;

    margin-top:28px;

    padding:25px 28px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:18px;

    background:#fff;

    box-shadow:
        0 10px 32px rgba(8,38,74,.045);
}

.residentialServices__bottom>div:first-child{
    display:flex;
    flex-direction:column;
}

.residentialServices__bottomLabel{
    margin-bottom:3px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    letter-spacing:.09em;

    text-transform:uppercase;
}

.residentialServices__bottom strong{
    color:var(--navy);

    font-size:14px;
}

.residentialServices__bottom p{
    max-width:620px;

    margin-top:3px;

    color:var(--muted);

    font-size:14px;
}


/* PRICE */

.residentialServices__price{
    min-width:110px;

    padding-left:28px;

    border-left:
        1px solid rgba(8,38,74,.08);
}

.residentialServices__price small{
    display:block;

    margin-bottom:2px;

    color:var(--muted);

    font-size:14px;
}

.residentialServices__price>span{
    display:flex;
    align-items:flex-start;
}

.residentialServices__price sup{
    margin-top:5px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.residentialServices__price strong{
    color:var(--navy);

    font-size:35px;

    line-height:1;
    letter-spacing:-.05em;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1150px){

    .residentialServices__grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

}


@media(max-width:850px){

    .residentialServices__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .residentialServices__bottom{
        grid-template-columns:1fr auto;
    }

    .residentialServices__bottom .btn{
        grid-column:1 / -1;

        width:100%;
    }

}


@media(max-width:620px){

    .residentialServices__head{
        text-align:left;
    }

    .residentialServices__head .eyebrow{
        justify-content:flex-start;
    }

    .residentialServices__grid{
        grid-template-columns:1fr;
    }

    .serviceImageCard__image{
        height:240px;
    }

    .residentialServices__bottom{
        grid-template-columns:1fr;

        padding:22px;
    }

    .residentialServices__price{
        padding:
            18px 0 0;

        border-left:0;

        border-top:
            1px solid rgba(8,38,74,.08);
    }

}




/* ==================================================
   SERVICES PAGE — SECTION 3
   COMMERCIAL SERVICES
================================================== */

.commercialServices{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(8,38,74,.045),
            transparent 27%
        ),
        #f4f7fa;
}


/* ===== HEAD ===== */

.commercialServices__head{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(300px,.7fr);

    align-items:end;

    gap:60px;

    margin-bottom:
        clamp(44px,5vw,65px);
}

.commercialServices__head h2{
    max-width:650px;

    margin-top:15px;
}

.commercialServices__head h2 strong{
    color:var(--red);
}

.commercialServices__head>p{
    max-width:500px;

    padding-bottom:5px;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== GRID ===== */

.commercialServices__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:18px;
}


/* ===== CARD ===== */

.commercialServiceCard{
    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:19px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(8,38,74,.045);

    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease);
}

.commercialServiceCard:hover{
    transform:translateY(-5px);

    box-shadow:
        0 22px 48px rgba(8,38,74,.095);
}


/* ===== IMAGE ===== */

.commercialServiceCard__image{
    position:relative;

    height:230px;

    display:block;

    overflow:hidden;

    background:#e9edf1;
}

.commercialServiceCard__image::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(5,24,47,.28)
        );
}

.commercialServiceCard__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .65s var(--ease);
}

.commercialServiceCard:hover
.commercialServiceCard__image img{
    transform:scale(1.045);
}


/* TYPE */

.commercialServiceCard__type{
    position:absolute;

    z-index:3;

    left:15px;
    bottom:15px;

    padding:7px 10px;

    border:
        1px solid rgba(255,255,255,.17);

    border-radius:7px;

    color:#fff;

    background:
        rgba(5,24,47,.8);

    backdrop-filter:blur(10px);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}


/* ===== CONTENT ===== */

.commercialServiceCard__content{
    position:relative;

    padding:24px;
}

.commercialServiceCard__number{
    position:absolute;

    top:25px;
    right:24px;

    color:
        rgba(8,38,74,.14);

    font-size:14px;
    font-weight:800;
}

.commercialServiceCard h3{
    max-width:270px;

    padding-right:25px;
    margin-bottom:10px;

    color:var(--navy);

    font-size:16px;
}

.commercialServiceCard p{
    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ===== LIST ===== */

.commercialServiceCard ul{
    display:flex;
    flex-wrap:wrap;

    gap:6px;

    margin-top:17px;

    list-style:none;
}

.commercialServiceCard li{
    padding:5px 7px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:6px;

    color:var(--muted);

    background:var(--off-white);

    font-size:7px;
}


/* ===== LINK ===== */

.commercialServiceCard__link{
    display:inline-flex;
    align-items:center;

    gap:7px;

    margin-top:19px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.commercialServiceCard__link span{
    font-size:15px;

    transition:transform .2s;
}

.commercialServiceCard__link:hover span{
    transform:translateX(4px);
}


/* ==================================================
   DIAGNOSTIC
================================================== */

.commercialServices__diagnostic{
    display:grid;

    grid-template-columns:
        auto 1fr auto auto;

    align-items:center;

    gap:22px;

    margin-top:27px;

    padding:24px 27px;

    border-radius:18px;

    color:#fff;

    background:
        radial-gradient(
            circle at 85% 50%,
            rgba(206,0,1,.13),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #061a33,
            #08264a
        );

    box-shadow:
        0 18px 45px rgba(8,38,74,.12);
}


/* ICON */

.commercialServices__diagnosticIcon{
    width:48px;
    height:48px;

    display:grid;
    place-items:center;

    border-radius:13px;

    color:#fff;

    background:
        rgba(255,255,255,.07);

    border:
        1px solid rgba(255,255,255,.1);
}

.commercialServices__diagnosticIcon svg{
    width:22px;
    height:22px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* CONTENT */

.commercialServices__diagnosticContent{
    display:flex;
    flex-direction:column;
}

.commercialServices__diagnosticContent>span{
    margin-bottom:3px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    text-transform:uppercase;
    letter-spacing:.08em;
}

.commercialServices__diagnosticContent strong{
    color:#fff;

    font-size:13px;
}

.commercialServices__diagnosticContent p{
    margin-top:3px;

    color:
        rgba(255,255,255,.45);

    font-size:14px;
}


/* PRICE */

.commercialServices__price{
    min-width:100px;

    padding-left:22px;

    border-left:
        1px solid rgba(255,255,255,.1);
}

.commercialServices__price small{
    display:block;

    color:
        rgba(255,255,255,.4);

    font-size:7px;
}

.commercialServices__price>span{
    display:flex;
    align-items:flex-start;
}

.commercialServices__price sup{
    margin-top:5px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;
}

.commercialServices__price strong{
    color:#fff;

    font-size:34px;
    line-height:1;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1000px){

    .commercialServices__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .commercialServices__diagnostic{
        grid-template-columns:
            auto 1fr auto;
    }

    .commercialServices__diagnostic .btn{
        grid-column:1 / -1;

        width:100%;
    }

}


@media(max-width:750px){

    .commercialServices__head{
        grid-template-columns:1fr;

        gap:18px;
    }

}


@media(max-width:620px){

    .commercialServices__grid{
        grid-template-columns:1fr;
    }

    .commercialServiceCard__image{
        height:245px;
    }

    .commercialServices__diagnostic{
        grid-template-columns:1fr;

        padding:22px;
    }

    .commercialServices__price{
        padding:
            17px 0 0;

        border-left:0;

        border-top:
            1px solid rgba(255,255,255,.1);
    }

}






/* ==================================================
   SERVICES PAGE — SECTION 4
   WHY CHOOSE US
================================================== */

.servicesWhy{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 8% 0%,
            rgba(206,0,1,.035),
            transparent 24%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.servicesWhy__head{
    max-width:760px;
    margin:0 auto clamp(42px,5vw,64px);
    text-align:center;
}

.servicesWhy__head .eyebrow{
    justify-content:center;
}

.servicesWhy__head h2{
    margin:15px 0 17px;
}

.servicesWhy__head h2 strong{
    color:var(--red);
}

.servicesWhy__head p{
    max-width:650px;
    margin:auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== GRID ===== */

.servicesWhy__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}


/* ===== CARD ===== */

.servicesWhyCard{
    position:relative;

    min-height:225px;

    padding:25px;

    overflow:hidden;

    border:1px solid rgba(8,38,74,.07);
    border-radius:17px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(8,38,74,.035);

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s var(--ease);
}

.servicesWhyCard::after{
    content:"";

    position:absolute;

    width:100px;
    height:100px;

    right:-50px;
    bottom:-50px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(206,0,1,.055),
            transparent 70%
        );

    transition:transform .4s var(--ease);
}

.servicesWhyCard:hover{
    transform:translateY(-5px);

    border-color:rgba(206,0,1,.14);

    box-shadow:
        0 20px 44px rgba(8,38,74,.075);
}

.servicesWhyCard:hover::after{
    transform:scale(1.5);
}


/* ===== TOP ===== */

.servicesWhyCard__top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-bottom:22px;
}

.servicesWhyCard__number{
    color:rgba(8,38,74,.2);

    font-size:14px;
    font-weight:800;
}

.servicesWhyCard__icon{
    width:42px;
    height:42px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:var(--red);

    background:rgba(206,0,1,.06);
}

.servicesWhyCard__icon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.55;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ===== TEXT ===== */

.servicesWhyCard h3{
    position:relative;
    z-index:2;

    margin-bottom:9px;

    color:var(--navy);

    font-size:15px;
}

.servicesWhyCard p{
    position:relative;
    z-index:2;

    max-width:340px;

    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ==================================================
   BOTTOM CTA
================================================== */

.servicesWhy__bottom{
    display:flex;
    align-items:center;

    gap:24px;

    margin-top:25px;

    padding:20px 23px;

    border:1px solid rgba(8,38,74,.07);
    border-radius:15px;

    background:#fff;
}

.servicesWhy__bottomText{
    flex:0 0 auto;

    display:flex;
    flex-direction:column;
}

.servicesWhy__bottomText span{
    margin-bottom:2px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.servicesWhy__bottomText strong{
    color:var(--navy);

    font-size:14px;
}

.servicesWhy__bottomLine{
    flex:1;

    height:1px;

    background:
        rgba(8,38,74,.08);
}

.servicesWhy__bottomMeta{
    display:flex;
    gap:7px;
}

.servicesWhy__bottomMeta span{
    padding:6px 8px;

    border-radius:6px;

    color:var(--muted);

    background:var(--off-white);

    font-size:7px;
    font-weight:700;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .servicesWhy__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .servicesWhy__bottomLine{
        display:none;
    }

    .servicesWhy__bottom{
        flex-wrap:wrap;
    }

    .servicesWhy__bottomMeta{
        margin-left:auto;
    }

}


@media(max-width:620px){

    .servicesWhy__head{
        text-align:left;
    }

    .servicesWhy__head .eyebrow{
        justify-content:flex-start;
    }

    .servicesWhy__grid{
        grid-template-columns:1fr;
    }

    .servicesWhyCard{
        min-height:auto;
    }

    .servicesWhy__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

    .servicesWhy__bottomMeta{
        margin-left:0;

        flex-wrap:wrap;
    }

    .servicesWhy__bottom .btn{
        width:100%;
    }

}







/* ==================================================
   SERVICES PAGE — SECTION 5
   BRANDS WE SERVICE
================================================== */

.servicesBrands{
    position:relative;
    overflow:hidden;

    background:#f4f7fa;
}


/* ===== HEAD ===== */

.servicesBrands__head{
    max-width:720px;

    margin:
        0 auto
        clamp(35px,4vw,48px);

    text-align:center;
}

.servicesBrands__head .eyebrow{
    justify-content:center;
}

.servicesBrands__head h2{
    margin:14px 0 16px;
}

.servicesBrands__head h2 strong{
    color:var(--red);
}

.servicesBrands__head p{
    max-width:630px;

    margin:auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   BRAND LIST
================================================== */

.servicesBrands__list{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;

    gap:9px;

    max-width:1100px;

    margin:auto;
}


/* ===== ITEM ===== */

.servicesBrands__item{
    min-width:105px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:18px;

    padding:11px 13px;

    border:
        1px solid rgba(8,38,74,.08);

    border-radius:8px;

    color:var(--navy);

    background:#fff;

    box-shadow:
        0 5px 15px rgba(8,38,74,.025);

    transition:
        color .25s,
        background .25s,
        border-color .25s,
        transform .25s,
        box-shadow .25s;
}

.servicesBrands__item span{
    font-size:14px;
    font-weight:700;
}

.servicesBrands__item i{
    color:
        rgba(8,38,74,.25);

    font-size:14px;
    font-style:normal;

    transition:
        color .25s,
        transform .25s;
}


/* HOVER */

.servicesBrands__item:hover{
    transform:translateY(-2px);

    color:#fff;

    border-color:var(--navy);

    background:var(--navy);

    box-shadow:
        0 10px 25px rgba(8,38,74,.1);
}

.servicesBrands__item:hover i{
    color:#ff5757;

    transform:translateX(3px);
}


/* ==================================================
   BOTTOM
================================================== */

.servicesBrands__bottom{
    max-width:900px;

    display:grid;

    grid-template-columns:
        auto 1fr auto;

    align-items:center;

    gap:18px;

    margin:
        35px auto 0;

    padding:18px 20px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:14px;

    background:#fff;
}


/* ICON */

.servicesBrands__bottomIcon{
    width:43px;
    height:43px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:var(--red);

    background:
        rgba(206,0,1,.06);
}

.servicesBrands__bottomIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* TEXT */

.servicesBrands__bottom>div:nth-child(2){
    display:flex;
    flex-direction:column;
}

.servicesBrands__bottom strong{
    color:var(--navy);

    font-size:14px;
}

.servicesBrands__bottom p{
    max-width:520px;

    margin-top:3px;

    color:var(--muted);

    font-size:14px;
    line-height:1.55;
}


/* CONTACT */

.servicesBrands__contact{
    min-width:145px;

    padding-left:20px;

    border-left:
        1px solid rgba(8,38,74,.08);
}

.servicesBrands__contact small{
    display:block;

    margin-bottom:2px;

    color:var(--muted);

    font-size:7px;
}

.servicesBrands__contact strong{
    color:var(--red);

    font-size:14px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:700px){

    .servicesBrands__head{
        text-align:left;
    }

    .servicesBrands__head .eyebrow{
        justify-content:flex-start;
    }

    .servicesBrands__list{
        display:grid;

        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .servicesBrands__item{
        min-width:0;
    }

    .servicesBrands__bottom{
        grid-template-columns:
            auto 1fr;
    }

    .servicesBrands__contact{
        grid-column:1 / -1;

        padding:
            15px 0 0;

        border-left:0;

        border-top:
            1px solid rgba(8,38,74,.08);
    }

}


@media(max-width:420px){

    .servicesBrands__list{
        grid-template-columns:1fr 1fr;
    }

}






/* ==================================================
   SERVICES PAGE — SECTION 6
   SERVICE AREAS
================================================== */

.servicesAreas{
    position:relative;
    overflow:hidden;
    background:#fff;
}

.servicesAreas__wrap{
    position:relative;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(320px,.48fr);

    align-items:center;

    gap:clamp(50px,7vw,95px);

    padding:
        clamp(38px,5vw,65px);

    overflow:hidden;

    border-radius:28px;

    color:#fff;

    background:
        radial-gradient(
            circle at 88% 15%,
            rgba(206,0,1,.17),
            transparent 25%
        ),
        radial-gradient(
            circle at 8% 100%,
            rgba(60,125,195,.14),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #05182f,
            #08264a 58%,
            #0a315d
        );

    box-shadow:
        0 28px 75px rgba(8,38,74,.15);
}

.servicesAreas__wrap::before{
    content:"";

    position:absolute;

    width:420px;
    height:420px;

    left:-230px;
    bottom:-230px;

    border-radius:50%;

    border:
        1px solid rgba(255,255,255,.05);

    box-shadow:
        0 0 0 60px rgba(255,255,255,.015),
        0 0 0 120px rgba(255,255,255,.01);
}


/* ===== CONTENT ===== */

.servicesAreas__content{
    position:relative;
    z-index:2;

    max-width:700px;
}

.servicesAreas .eyebrow{
    color:#ff5c5c;
}

.servicesAreas h2{
    max-width:650px;

    margin:16px 0 20px;

    color:#fff;
}

.servicesAreas h2 strong{
    color:#ff4d4d;
    font-weight:800;
}

.servicesAreas__content>p{
    max-width:620px;

    color:rgba(255,255,255,.62);

    font-size:14px;
    line-height:1.8;
}


/* ===== CITIES ===== */

.servicesAreas__cities{
    display:flex;
    flex-wrap:wrap;

    gap:8px;

    margin-top:27px;
}

.servicesAreas__cities a{
    padding:8px 11px;

    border:
        1px solid rgba(255,255,255,.1);

    border-radius:7px;

    color:rgba(255,255,255,.7);

    background:
        rgba(255,255,255,.045);

    font-size:14px;
    font-weight:700;

    transition:
        color .2s,
        background .2s,
        border-color .2s;
}

.servicesAreas__cities a:hover{
    color:#fff;

    border-color:
        rgba(255,255,255,.23);

    background:
        rgba(255,255,255,.09);
}


/* ===== ACTIONS ===== */

.servicesAreas__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:25px;

    margin-top:31px;
}

.servicesAreas__phone{
    display:flex;
    flex-direction:column;
}

.servicesAreas__phone small{
    color:rgba(255,255,255,.4);

    font-size:14px;
}

.servicesAreas__phone strong{
    color:#fff;

    font-size:13px;
}


/* ==================================================
   SIDE CARD
================================================== */

.servicesAreas__side{
    position:relative;
    z-index:2;

    padding:27px;

    border:
        1px solid rgba(255,255,255,.12);

    border-radius:20px;

    background:
        rgba(255,255,255,.06);

    box-shadow:
        0 20px 50px rgba(0,0,0,.14);

    backdrop-filter:blur(14px);
}

.servicesAreas__sideHead{
    display:flex;
    flex-direction:column;

    gap:2px;

    padding-bottom:18px;

    border-bottom:
        1px solid rgba(255,255,255,.1);
}

.servicesAreas__sideHead span{
    color:#ff5959;

    font-size:14px;
    font-weight:800;

    letter-spacing:.09em;

    text-transform:uppercase;
}

.servicesAreas__sideHead strong{
    color:#fff;

    font-size:17px;
}


/* ===== LOCATION ===== */

.servicesAreas__location{
    display:flex;
    align-items:center;

    gap:12px;

    padding:20px 0;
}

.servicesAreas__locationIcon{
    width:43px;
    height:43px;

    flex:0 0 43px;

    display:grid;
    place-items:center;

    border-radius:12px;

    color:#fff;

    background:var(--red);
}

.servicesAreas__locationIcon svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.servicesAreas__location>div{
    display:flex;
    flex-direction:column;
}

.servicesAreas__location small{
    color:
        rgba(255,255,255,.4);

    font-size:7px;
}

.servicesAreas__location strong{
    color:#fff;

    font-size:14px;
}


/* ===== FACTS ===== */

.servicesAreas__facts{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:9px;
}

.servicesAreas__facts>div{
    display:flex;
    flex-direction:column;

    padding:12px;

    border:
        1px solid rgba(255,255,255,.08);

    border-radius:9px;

    background:
        rgba(255,255,255,.035);
}

.servicesAreas__facts strong{
    color:#fff;

    font-size:14px;
}

.servicesAreas__facts span{
    margin-top:2px;

    color:
        rgba(255,255,255,.4);

    font-size:7px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:900px){

    .servicesAreas__wrap{
        grid-template-columns:1fr;
    }

    .servicesAreas__side{
        max-width:600px;
    }

}


@media(max-width:620px){

    .servicesAreas__wrap{
        padding:30px 20px;

        border-radius:21px;
    }

    .servicesAreas__actions{
        align-items:stretch;
        flex-direction:column;

        gap:16px;
    }

    .servicesAreas__actions .btn{
        width:100%;
    }

    .servicesAreas__phone{
        align-items:center;
    }

    .servicesAreas__side{
        padding:22px;
    }

}





/* ==================================================
   SERVICES PAGE — SECTION 7
   FINAL CTA
================================================== */

.servicesFinalCta{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 5% 90%,
            rgba(206,0,1,.03),
            transparent 22%
        ),
        #fff;
}


/* ===== WRAP ===== */

.servicesFinalCta__wrap{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(320px,.5fr);

    align-items:center;

    gap:clamp(50px,7vw,95px);

    padding:
        clamp(36px,5vw,60px);

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:27px;

    background:
        radial-gradient(
            circle at 92% 10%,
            rgba(206,0,1,.055),
            transparent 25%
        ),
        var(--off-white);

    box-shadow:
        0 20px 60px rgba(8,38,74,.07);
}


/* ==================================================
   CONTENT
================================================== */

.servicesFinalCta__content{
    max-width:700px;
}

.servicesFinalCta h2{
    max-width:650px;

    margin:15px 0 18px;
}

.servicesFinalCta h2 strong{
    color:var(--red);
}

.servicesFinalCta__content>p{
    max-width:620px;

    color:var(--muted);

    font-size:14px;
    line-height:1.8;
}


/* ===== BENEFITS ===== */

.servicesFinalCta__benefits{
    display:flex;
    flex-wrap:wrap;

    gap:10px 20px;

    margin-top:24px;
}

.servicesFinalCta__benefits span{
    color:var(--navy);

    font-size:14px;
    font-weight:700;
}


/* ===== ACTIONS ===== */

.servicesFinalCta__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:24px;

    margin-top:31px;
}

.servicesFinalCta__call{
    display:flex;
    align-items:center;

    gap:11px;
}

.servicesFinalCta__callIcon{
    width:42px;
    height:42px;

    flex:0 0 42px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(8,38,74,.08);

    border-radius:11px;

    color:var(--navy);

    background:#fff;
}

.servicesFinalCta__callIcon svg{
    width:19px;
    height:19px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.servicesFinalCta__call>span:last-child{
    display:flex;
    flex-direction:column;
}

.servicesFinalCta__call small{
    color:var(--muted);

    font-size:7px;
}

.servicesFinalCta__call strong{
    color:var(--navy);

    font-size:14px;
}


/* ==================================================
   SIDE PANEL
================================================== */

.servicesFinalCta__panel{
    position:relative;

    padding:27px;

    overflow:hidden;

    border-radius:19px;

    color:#fff;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.16),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            #061a33,
            #08264a
        );

    box-shadow:
        0 20px 50px rgba(8,38,74,.14);
}

.servicesFinalCta__panel::after{
    content:"";

    position:absolute;

    width:150px;
    height:150px;

    right:-70px;
    bottom:-70px;

    border-radius:50%;

    background:
        rgba(255,255,255,.025);
}

.servicesFinalCta__panel>*{
    position:relative;
    z-index:2;
}

.servicesFinalCta__panelLabel{
    display:block;

    margin-bottom:8px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.servicesFinalCta__panel h3{
    max-width:300px;

    margin-bottom:22px;

    color:#fff;

    font-size:20px;
}


/* ===== STEPS ===== */

.servicesFinalCta__steps{
    display:flex;
    flex-direction:column;

    gap:12px;
}

.servicesFinalCta__steps>div{
    display:grid;

    grid-template-columns:
        32px 1fr;

    align-items:center;

    gap:11px;

    padding:11px 0;

    border-bottom:
        1px solid rgba(255,255,255,.08);
}

.servicesFinalCta__steps>div>span{
    width:32px;
    height:32px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#ff5757;

    background:
        rgba(255,255,255,.06);

    font-size:14px;
    font-weight:800;
}

.servicesFinalCta__steps p{
    color:
        rgba(255,255,255,.65);

    font-size:14px;
}


/* ===== LINK ===== */

.servicesFinalCta__panelLink{
    display:inline-flex;
    align-items:center;

    gap:7px;

    margin-top:21px;

    color:#fff;

    font-size:14px;
    font-weight:800;
}

.servicesFinalCta__panelLink>span{
    color:#ff5757;

    font-size:15px;

    transition:
        transform .2s;
}

.servicesFinalCta__panelLink:hover>span{
    transform:
        translateX(4px);
}


/* ===== RESPONSIVE ===== */

@media(max-width:850px){

    .servicesFinalCta__wrap{
        grid-template-columns:1fr;
    }

    .servicesFinalCta__panel{
        max-width:600px;
    }

}


@media(max-width:620px){

    .servicesFinalCta__wrap{
        padding:27px 20px;

        border-radius:20px;
    }

    .servicesFinalCta__actions{
        align-items:stretch;
        flex-direction:column;

        gap:17px;
    }

    .servicesFinalCta__actions .btn{
        width:100%;
    }

    .servicesFinalCta__call{
        justify-content:center;
    }

    .servicesFinalCta__panel{
        padding:23px;
    }

}

















/* ==================================================
   SERVICE AREAS PAGE — SECTION 1
   HERO
================================================== */

.areasHero{
    position:relative;

    min-height:610px;

    display:flex;
    align-items:stretch;

    overflow:hidden;

    background:#061a33;

    color:#fff;
}


/* ==================================================
   BACKGROUND IMAGE
================================================== */

.areasHero__media{
    position:absolute;

    inset:0;
}

.areasHero__media img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;
}


.areasHero__overlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(4,20,39,.98) 0%,
            rgba(5,25,48,.94) 34%,
            rgba(5,25,48,.68) 60%,
            rgba(5,25,48,.27) 100%
        ),
        linear-gradient(
            0deg,
            rgba(4,20,39,.45),
            transparent 45%
        );
}


/* ==================================================
   CONTAINER
================================================== */

.areasHero__container{
    position:relative;
    z-index:3;

    width:100%;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        315px;

    align-items:center;

    gap:80px;

    padding-top:85px;
    padding-bottom:110px;
}


/* ==================================================
   CONTENT
================================================== */

.areasHero__content{
    max-width:710px;
}


.areasHero__eyebrow{
    display:inline-flex;
    align-items:center;

    gap:9px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;
}


.areasHero__eyebrow::before{
    content:"";

    width:24px;
    height:2px;

    background:var(--red);
}


.areasHero h1{
    max-width:670px;

    margin:17px 0 20px;

    color:#fff;

    font-size:
        clamp(40px,5vw,68px);

    line-height:.98;

    letter-spacing:-.045em;
}


.areasHero h1 strong{
    display:block;

    color:#ff4e4e;

    font-weight:800;
}


.areasHero__intro{
    max-width:610px;

    color:
        rgba(255,255,255,.68);

    font-size:13px;
    line-height:1.75;
}


/* ==================================================
   FEATURES
================================================== */

.areasHero__features{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:11px;

    margin-top:28px;
}


.areasHeroFeature{
    display:flex;
    align-items:center;

    gap:10px;

    padding:11px;

    border:
        1px solid rgba(255,255,255,.1);

    border-radius:10px;

    background:
        rgba(255,255,255,.045);

    backdrop-filter:blur(8px);
}


.areasHeroFeature__icon{
    width:34px;
    height:34px;

    flex:0 0 34px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#ff5757;

    background:
        rgba(206,0,1,.12);
}


.areasHeroFeature__icon svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.areasHeroFeature>div{
    display:flex;
    flex-direction:column;
}


.areasHeroFeature strong{
    color:#fff;

    font-size:14px;
}


.areasHeroFeature span{
    color:
        rgba(255,255,255,.42);

    font-size:7px;
}


/* ==================================================
   BUTTONS
================================================== */

.areasHero__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:11px;

    margin-top:28px;
}


.btn--outlineLight{
    border:
        1px solid rgba(255,255,255,.25);

    color:#fff;

    background:
        rgba(255,255,255,.025);
}


.btn--outlineLight:hover{
    border-color:#fff;

    background:
        rgba(255,255,255,.08);
}


/* ==================================================
   LOCATION CARD
================================================== */

.areasHero__locationCard{
    padding:24px;

    border:
        1px solid rgba(255,255,255,.13);

    border-radius:18px;

    background:
        rgba(5,25,48,.74);

    box-shadow:
        0 24px 60px rgba(0,0,0,.22);

    backdrop-filter:blur(14px);
}


.areasHero__locationLabel{
    display:block;

    padding-bottom:13px;

    border-bottom:
        1px solid rgba(255,255,255,.1);

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}


/* LOCATION */

.areasHero__locationMain{
    display:flex;
    align-items:center;

    gap:12px;

    padding:20px 0;
}


.areasHero__pin{
    width:44px;
    height:44px;

    flex:0 0 44px;

    display:grid;
    place-items:center;

    border-radius:12px;

    color:#fff;

    background:var(--red);
}


.areasHero__pin svg{
    width:20px;
    height:20px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;
}


.areasHero__locationMain>div{
    display:flex;
    flex-direction:column;
}


.areasHero__locationMain small{
    color:
        rgba(255,255,255,.4);

    font-size:7px;
}


.areasHero__locationMain strong{
    margin-top:2px;

    color:#fff;

    font-size:15px;
}


/* ==================================================
   STATS
================================================== */

.areasHero__locationStats{
    display:grid;

    grid-template-columns:
        repeat(3,1fr);

    gap:7px;
}


.areasHero__locationStats>div{
    display:flex;
    flex-direction:column;

    padding:11px 8px;

    border:
        1px solid rgba(255,255,255,.08);

    border-radius:8px;

    background:
        rgba(255,255,255,.035);
}


.areasHero__locationStats strong{
    color:#fff;

    font-size:14px;
}


.areasHero__locationStats span{
    margin-top:1px;

    color:
        rgba(255,255,255,.38);

    font-size:6px;
}


/* LINK */

.areasHero__locationLink{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:16px;
    padding-top:15px;

    border-top:
        1px solid rgba(255,255,255,.08);

    color:#fff;

    font-size:14px;
    font-weight:800;
}


.areasHero__locationLink span{
    color:#ff5757;

    font-size:14px;

    transition:transform .2s;
}


.areasHero__locationLink:hover span{
    transform:translateX(4px);
}


/* ==================================================
   BOTTOM BAR
================================================== */

.areasHero__bar{
    position:absolute;

    z-index:4;

    left:0;
    right:0;
    bottom:0;

    min-height:48px;

    display:flex;
    align-items:center;

    background:var(--red);
}


.areasHero__barItems{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;
}


.areasHero__barItems span{
    position:relative;

    color:#fff;

    font-size:7px;
    font-weight:700;
}


.areasHero__barItems span:not(:last-child)::after{
    content:"";

    position:absolute;

    top:50%;
    right:-35px;

    width:3px;
    height:3px;

    border-radius:50%;

    background:
        rgba(255,255,255,.5);
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:1000px){

    .areasHero__container{
        grid-template-columns:1fr;

        gap:35px;

        padding-top:80px;
        padding-bottom:105px;
    }

    .areasHero__locationCard{
        max-width:500px;
    }

}


@media(max-width:700px){

    .areasHero{
        min-height:auto;
    }

    .areasHero__overlay{
        background:
            linear-gradient(
                90deg,
                rgba(4,20,39,.97),
                rgba(4,20,39,.82)
            );
    }

    .areasHero__features{
        grid-template-columns:1fr;
    }

    .areasHero__barItems{
        justify-content:flex-start;

        overflow:hidden;
    }

    .areasHero__barItems span:nth-child(n+5){
        display:none;
    }

}


@media(max-width:520px){

    .areasHero__container{
        padding-top:65px;
    }

    .areasHero h1{
        font-size:40px;
    }

    .areasHero__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .areasHero__actions .btn{
        width:100%;
    }

    .areasHero__locationStats{
        grid-template-columns:1fr;
    }

}




/* ==================================================
   SERVICE AREAS PAGE — SECTION 2
   COMMUNITIES
================================================== */

.locationCities{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 95% 5%,
            rgba(8,38,74,.04),
            transparent 23%
        ),
        radial-gradient(
            circle at 5% 92%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        var(--off-white);
}


/* ===== HEAD ===== */

.locationCities__head{
    max-width:780px;

    margin:
        0 auto
        clamp(45px,5vw,68px);

    text-align:center;
}

.locationCities__head .eyebrow{
    justify-content:center;
}

.locationCities__head h2{
    margin:16px 0 18px;
}

.locationCities__head h2 strong{
    color:var(--red);
}

.locationCities__head p{
    max-width:680px;

    margin:auto;

    color:var(--muted);

    font-size:13px;
    line-height:1.75;
}


/* ===== GRID ===== */

.locationCities__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:18px;
}


/* ==================================================
   CARD
================================================== */

.locationCityCard{
    min-width:0;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:19px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(8,38,74,.045);

    transition:
        transform .35s var(--ease),
        border-color .35s var(--ease),
        box-shadow .35s var(--ease);
}

.locationCityCard:hover{
    transform:translateY(-6px);

    border-color:
        rgba(206,0,1,.15);

    box-shadow:
        0 24px 52px rgba(8,38,74,.095);
}


/* ===== IMAGE ===== */

.locationCityCard__image{
    position:relative;

    height:215px;

    display:block;

    overflow:hidden;

    background:#e9edf1;
}

.locationCityCard__image::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(5,24,47,.28)
        );

    pointer-events:none;
}

.locationCityCard__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}

.locationCityCard:hover
.locationCityCard__image img{
    transform:scale(1.045);
}


/* NUMBER */

.locationCityCard__number{
    position:absolute;

    z-index:3;

    top:14px;
    left:14px;

    width:34px;
    height:34px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(255,255,255,.2);

    border-radius:10px;

    color:#fff;

    background:
        rgba(5,24,47,.72);

    backdrop-filter:blur(10px);

    font-size:14px;
    font-weight:800;
}


/* ===== CONTENT ===== */

.locationCityCard__content{
    padding:22px;
}

.locationCityCard__label{
    display:block;

    margin-bottom:6px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.locationCityCard h3{
    margin-bottom:9px;

    color:var(--navy);

    font-size:18px;
}

.locationCityCard p{
    min-height:48px;

    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ===== TAGS ===== */

.locationCityCard__tags{
    display:flex;
    flex-wrap:wrap;

    gap:6px;

    margin-top:16px;
}

.locationCityCard__tags span{
    padding:5px 7px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:6px;

    color:var(--muted);

    background:var(--off-white);

    font-size:7px;
    font-weight:600;
}


/* ===== LINK ===== */

.locationCityCard__link{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:19px;
    padding-top:16px;

    border-top:
        1px solid rgba(8,38,74,.07);

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.locationCityCard__link>span{
    font-size:15px;

    transition:transform .2s;
}

.locationCityCard__link:hover>span{
    transform:translateX(4px);
}


/* ==================================================
   BOTTOM
================================================== */

.locationCities__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    margin-top:28px;

    padding:23px 26px;

    border:
        1px solid rgba(8,38,74,.075);

    border-radius:17px;

    background:#fff;
}

.locationCities__bottom>div{
    display:flex;
    flex-direction:column;
}

.locationCities__bottom span{
    margin-bottom:3px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.locationCities__bottom strong{
    color:var(--navy);

    font-size:13px;
}


/* ===== RESPONSIVE ===== */

@media(max-width:1050px){

    .locationCities__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


@media(max-width:650px){

    .locationCities__head{
        text-align:left;
    }

    .locationCities__head .eyebrow{
        justify-content:flex-start;
    }

    .locationCities__grid{
        grid-template-columns:1fr;
    }

    .locationCityCard__image{
        height:245px;
    }

    .locationCityCard p{
        min-height:0;
    }

    .locationCities__bottom{
        align-items:stretch;
        flex-direction:column;
    }

    .locationCities__bottom .btn{
        width:100%;
    }

}






/* ==================================================
   SERVICE AREAS PAGE — SECTION 3
   SERVICES ACROSS ALL AREAS
================================================== */

.areasServices{
    position:relative;
    overflow:hidden;

    background:#f4f7fa;
}


/* ==================================================
   HEAD
================================================== */

.areasServices__head{
    max-width:760px;

    margin:
        0 auto
        clamp(42px,5vw,62px);

    text-align:center;
}

.areasServices__head .eyebrow{
    justify-content:center;
}

.areasServices__head h2{
    margin:15px 0 17px;
}

.areasServices__head h2 strong{
    color:var(--red);
}

.areasServices__head p{
    max-width:650px;

    margin:auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   GRID
================================================== */

.areasServices__grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:13px;
}


/* ==================================================
   CARD
================================================== */

.areasServiceCard{
    position:relative;

    min-height:205px;

    display:flex;
    flex-direction:column;

    padding:21px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:15px;

    color:var(--navy);

    background:#fff;

    box-shadow:
        0 8px 25px rgba(8,38,74,.035);

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s var(--ease);
}

.areasServiceCard:hover{
    transform:translateY(-5px);

    border-color:
        rgba(206,0,1,.16);

    box-shadow:
        0 18px 40px rgba(8,38,74,.08);
}


/* ==================================================
   ICON
================================================== */

.areasServiceCard__icon{
    width:43px;
    height:43px;

    display:grid;
    place-items:center;

    margin-bottom:20px;

    border-radius:11px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);
}

.areasServiceCard__icon svg{
    width:21px;
    height:21px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.55;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ==================================================
   CONTENT
================================================== */

.areasServiceCard__content{
    flex:1;
}

.areasServiceCard__content>span{
    display:block;

    margin-bottom:5px;

    color:
        rgba(8,38,74,.28);

    font-size:7px;
    font-weight:800;
}

.areasServiceCard h3{
    margin-bottom:8px;

    color:var(--navy);

    font-size:14px;
    line-height:1.25;
}

.areasServiceCard p{
    color:var(--muted);

    font-size:14px;
    line-height:1.65;
}


/* ==================================================
   ARROW
================================================== */

.areasServiceCard__arrow{
    position:absolute;

    right:18px;
    top:20px;

    color:
        rgba(8,38,74,.18);

    font-size:17px;

    transition:
        color .25s,
        transform .25s;
}

.areasServiceCard:hover
.areasServiceCard__arrow{
    color:var(--red);

    transform:translateX(4px);
}


/* ==================================================
   RED LINE
================================================== */

.areasServiceCard::after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:0;
    height:3px;

    background:var(--red);

    transition:
        width .35s var(--ease);
}

.areasServiceCard:hover::after{
    width:100%;
}


/* ==================================================
   BOTTOM CTA
================================================== */

.areasServices__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    margin-top:25px;

    padding:22px 25px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:15px;

    background:#fff;
}

.areasServices__bottomContent{
    display:flex;
    flex-direction:column;
}

.areasServices__bottomContent>span{
    margin-bottom:3px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.areasServices__bottomContent strong{
    color:var(--navy);

    font-size:14px;
}

.areasServices__bottomContent p{
    margin-top:3px;

    color:var(--muted);

    font-size:14px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:1000px){

    .areasServices__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


@media(max-width:600px){

    .areasServices__head{
        text-align:left;
    }

    .areasServices__head .eyebrow{
        justify-content:flex-start;
    }

    .areasServices__grid{
        grid-template-columns:1fr;
    }

    .areasServiceCard{
        min-height:auto;
    }

    .areasServices__bottom{
        align-items:stretch;
        flex-direction:column;
    }

    .areasServices__bottom .btn{
        width:100%;
    }

}





/* ==================================================
   SERVICE AREAS PAGE
   WHY HOUSTON HOMEOWNERS CHOOSE US
================================================== */

.areasWhy{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 4% 8%,
            rgba(206,0,1,.025),
            transparent 22%
        ),
        #fff;
}


/* ==================================================
   INTRO
================================================== */

.areasWhy__intro{
    display:grid;

    grid-template-columns:
        minmax(0,.85fr)
        minmax(380px,1.15fr);

    align-items:center;

    gap:clamp(45px,6vw,90px);

    margin-bottom:
        clamp(42px,5vw,62px);
}


/* ===== HEAD ===== */

.areasWhy__head{
    max-width:600px;
}

.areasWhy__head h2{
    margin:15px 0 17px;
}

.areasWhy__head h2 strong{
    color:var(--red);
}

.areasWhy__head>p{
    max-width:560px;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== INTRO FEATURES ===== */

.areasWhy__introFeatures{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:10px;

    margin-top:24px;
}

.areasWhy__introFeatures>div{
    display:flex;
    flex-direction:column;

    padding:13px 14px;

    border-left:
        2px solid var(--red);

    background:var(--off-white);
}

.areasWhy__introFeatures strong{
    color:var(--navy);

    font-size:14px;
}

.areasWhy__introFeatures span{
    margin-top:2px;

    color:var(--muted);

    font-size:7px;
}


/* ==================================================
   MAIN VISUAL
================================================== */

.areasWhy__visual{
    position:relative;

    height:340px;

    overflow:hidden;

    border-radius:22px;

    background:#e8edf2;

    box-shadow:
        0 22px 55px rgba(8,38,74,.12);
}

.areasWhy__visual img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}

.areasWhy__visual:hover img{
    transform:scale(1.04);
}


/* OVERLAY */

.areasWhy__visualOverlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(5,24,47,.43)
        );

    pointer-events:none;
}


/* BADGE */

.areasWhy__visualBadge{
    position:absolute;

    z-index:2;

    left:18px;
    bottom:18px;

    display:flex;
    align-items:center;

    gap:11px;

    padding:12px 15px;

    border:
        1px solid rgba(255,255,255,.15);

    border-radius:12px;

    background:
        rgba(5,24,47,.84);

    box-shadow:
        0 10px 30px rgba(0,0,0,.15);

    backdrop-filter:blur(12px);
}

.areasWhy__visualBadgeIcon{
    width:34px;
    height:34px;

    flex:0 0 34px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#fff;

    background:var(--red);
}

.areasWhy__visualBadgeIcon svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.areasWhy__visualBadge>div{
    display:flex;
    flex-direction:column;
}

.areasWhy__visualBadge strong{
    color:#fff;

    font-size:14px;
}

.areasWhy__visualBadge span{
    margin-top:2px;

    color:
        rgba(255,255,255,.5);

    font-size:7px;
}


/* ==================================================
   BENEFITS GRID
================================================== */

.areasWhy__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:16px;
}


/* ==================================================
   BENEFIT CARD
================================================== */

.areasWhyCard{
    position:relative;

    min-height:220px;

    padding:25px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:17px;

    background:var(--off-white);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease),
        box-shadow .3s var(--ease);
}

.areasWhyCard:hover{
    transform:translateY(-5px);

    border-color:
        rgba(206,0,1,.14);

    box-shadow:
        0 18px 42px rgba(8,38,74,.07);
}


/* NUMBER */

.areasWhyCard__number{
    position:absolute;

    top:22px;
    right:22px;

    color:
        rgba(8,38,74,.16);

    font-size:14px;
    font-weight:800;
}


/* ICON */

.areasWhyCard__icon{
    width:44px;
    height:44px;

    display:grid;
    place-items:center;

    margin-bottom:20px;

    border-radius:12px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);
}

.areasWhyCard__icon svg{
    width:21px;
    height:21px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* TEXT */

.areasWhyCard h3{
    margin-bottom:9px;

    color:var(--navy);

    font-size:15px;
}

.areasWhyCard p{
    max-width:330px;

    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ACCENT CARD */

.areasWhyCard--accent{
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.07),
            transparent 34%
        ),
        var(--off-white);
}

.areasWhyCard--accent
.areasWhyCard__icon{
    color:#fff;

    background:var(--red);
}


/* ==================================================
   DIAGNOSTIC VISUAL
================================================== */

.areasWhy__serviceVisual{
    display:grid;

    grid-template-columns:
        minmax(280px,.72fr)
        minmax(0,1fr);

    align-items:stretch;

    gap:0;

    margin-top:28px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:20px;

    background:var(--off-white);

    box-shadow:
        0 12px 35px rgba(8,38,74,.045);
}


/* IMAGE */

.areasWhy__serviceImage{
    min-height:250px;

    overflow:hidden;
}

.areasWhy__serviceImage img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}

.areasWhy__serviceVisual:hover
.areasWhy__serviceImage img{
    transform:scale(1.035);
}


/* CONTENT */

.areasWhy__serviceContent{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:
        clamp(28px,4vw,48px);
}

.areasWhy__serviceContent>span{
    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}

.areasWhy__serviceContent h3{
    max-width:520px;

    margin:7px 0 10px;

    color:var(--navy);

    font-size:
        clamp(20px,2vw,28px);

    line-height:1.15;
}

.areasWhy__serviceContent h3 strong{
    color:var(--red);
}

.areasWhy__serviceContent>p{
    max-width:580px;

    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* POINTS */

.areasWhy__servicePoints{
    display:flex;
    flex-wrap:wrap;

    gap:7px;

    margin-top:17px;
}

.areasWhy__servicePoints span{
    position:relative;

    padding:
        7px 9px
        7px 20px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:7px;

    color:var(--navy);

    background:#fff;

    font-size:7px;
    font-weight:700;
}

.areasWhy__servicePoints span::before{
    content:"";

    position:absolute;

    left:8px;
    top:50%;

    width:5px;
    height:5px;

    border-radius:50%;

    background:var(--red);

    transform:
        translateY(-50%);
}


/* ==================================================
   FEES
================================================== */

.areasWhy__fees{
    display:grid;

    grid-template-columns:
        minmax(210px,.6fr)
        minmax(210px,.6fr)
        1fr;

    gap:14px;

    margin-top:25px;
}


/* ==================================================
   FEE CARD
================================================== */

.areasWhyFee{
    padding:23px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:16px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(8,38,74,.035);
}

.areasWhyFee__label{
    display:block;

    margin-bottom:13px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}


/* PRICE */

.areasWhyFee__price{
    display:flex;
    align-items:flex-start;

    margin-bottom:8px;
}

.areasWhyFee__price sup{
    margin-top:7px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.areasWhyFee__price strong{
    color:var(--navy);

    font-size:44px;
    line-height:1;

    letter-spacing:-.055em;
}

.areasWhyFee p{
    color:var(--muted);

    font-size:14px;
}


/* PREMIUM */

.areasWhyFee--premium{
    color:#fff;

    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.16),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #061a33,
            #08264a
        );
}

.areasWhyFee--premium
.areasWhyFee__label{
    color:#ff5b5b;
}

.areasWhyFee--premium
.areasWhyFee__price strong,
.areasWhyFee--premium
.areasWhyFee__price sup{
    color:#fff;
}

.areasWhyFee--premium p{
    color:
        rgba(255,255,255,.5);
}


/* ==================================================
   PRICING CTA
================================================== */

.areasWhy__feesCta{
    display:flex;
    flex-direction:column;

    align-items:flex-start;
    justify-content:center;

    padding:24px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:16px;

    background:var(--off-white);
}

.areasWhy__feesCta>span{
    margin-bottom:3px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.areasWhy__feesCta>strong{
    max-width:330px;

    margin-bottom:17px;

    color:var(--navy);

    font-size:13px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .areasWhy__intro{
        grid-template-columns:1fr;

        gap:30px;
    }

    .areasWhy__visual{
        max-width:750px;
    }

    .areasWhy__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .areasWhy__fees{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .areasWhy__feesCta{
        grid-column:1 / -1;
    }

}


@media(max-width:700px){

    .areasWhy__serviceVisual{
        grid-template-columns:1fr;
    }

    .areasWhy__serviceImage{
        min-height:240px;
        height:240px;
    }

}


@media(max-width:600px){

    .areasWhy__introFeatures{
        grid-template-columns:1fr;
    }

    .areasWhy__visual{
        height:280px;
    }

    .areasWhy__grid,
    .areasWhy__fees{
        grid-template-columns:1fr;
    }

    .areasWhyCard{
        min-height:auto;
    }

    .areasWhy__feesCta{
        grid-column:auto;
    }

    .areasWhy__feesCta .btn{
        width:100%;
    }

    .areasWhy__serviceContent{
        padding:25px 20px;
    }

}





/* ==================================================
   SERVICE AREAS PAGE — FINAL CTA
================================================== */

.areasCta{
    position:relative;

    min-height:480px;

    display:flex;
    align-items:center;

    overflow:hidden;

    color:#fff;

    background:#061a33;
}


/* ==================================================
   BACKGROUND IMAGE
================================================== */

.areasCta__media{
    position:absolute;

    inset:0 0 0 48%;
}

.areasCta__media img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;
}


/* ==================================================
   OVERLAY
================================================== */

.areasCta__overlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            #061a33 0%,
            #061a33 38%,
            rgba(6,26,51,.94) 55%,
            rgba(6,26,51,.65) 75%,
            rgba(6,26,51,.48) 100%
        );
}


/* ==================================================
   CONTAINER
================================================== */

.areasCta__container{
    position:relative;

    z-index:3;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        330px;

    align-items:center;

    gap:80px;

    padding-top:
        clamp(65px,7vw,95px);

    padding-bottom:
        clamp(65px,7vw,95px);
}


/* ==================================================
   CONTENT
================================================== */

.areasCta__content{
    max-width:680px;
}


.areasCta__eyebrow{
    display:flex;
    align-items:center;

    gap:9px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;
}


.areasCta__eyebrow::before{
    content:"";

    width:24px;
    height:2px;

    background:var(--red);
}


.areasCta h2{
    max-width:620px;

    margin:15px 0 17px;

    color:#fff;

    font-size:
        clamp(34px,4vw,53px);

    line-height:1.02;

    letter-spacing:-.04em;
}


.areasCta h2 strong{
    display:block;

    color:#ff5151;
}


.areasCta__content>p{
    max-width:590px;

    color:
        rgba(255,255,255,.62);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   ACTIONS
================================================== */

.areasCta__actions{
    display:flex;
    align-items:center;

    gap:18px;

    margin-top:25px;
}


.areasCta__secondary{
    display:flex;
    align-items:center;

    gap:10px;

    color:#fff;

    font-size:14px;
    font-weight:800;
}


.areasCta__secondary span{
    color:#ff5151;

    font-size:15px;

    transition:
        transform .2s;
}


.areasCta__secondary:hover span{
    transform:
        translateX(4px);
}


/* ==================================================
   FEATURES
================================================== */

.areasCta__features{
    display:flex;
    flex-wrap:wrap;

    gap:25px;

    margin-top:31px;
    padding-top:24px;

    border-top:
        1px solid rgba(255,255,255,.1);
}


.areasCtaFeature{
    display:flex;
    align-items:center;

    gap:9px;
}


.areasCtaFeature__icon{
    width:31px;
    height:31px;

    flex:0 0 31px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:#ff5757;

    background:
        rgba(206,0,1,.11);
}


.areasCtaFeature__icon svg{
    width:15px;
    height:15px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.areasCtaFeature>div{
    display:flex;
    flex-direction:column;
}


.areasCtaFeature strong{
    color:#fff;

    font-size:14px;
}


.areasCtaFeature span{
    margin-top:1px;

    color:
        rgba(255,255,255,.4);

    font-size:6px;
}


/* ==================================================
   CONTACT CARD
================================================== */

.areasCta__card{
    padding:26px;

    border:
        1px solid rgba(255,255,255,.13);

    border-radius:18px;

    background:
        rgba(5,23,45,.82);

    box-shadow:
        0 25px 60px rgba(0,0,0,.24);

    backdrop-filter:
        blur(15px);
}


.areasCta__cardLabel{
    display:block;

    color:#ff5757;

    font-size:7px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}


.areasCta__card h3{
    margin:7px 0 8px;

    color:#fff;

    font-size:18px;

    line-height:1.2;
}


.areasCta__card>p{
    color:
        rgba(255,255,255,.48);

    font-size:14px;
    line-height:1.65;
}


/* ==================================================
   CARD ROWS
================================================== */

.areasCta__cardRows{
    margin-top:19px;
}


.areasCta__cardRow{
    display:flex;
    align-items:center;

    gap:10px;

    padding:12px 0;

    border-top:
        1px solid rgba(255,255,255,.08);
}


.areasCta__cardIcon{
    width:33px;
    height:33px;

    flex:0 0 33px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#fff;

    background:var(--red);
}


.areasCta__cardIcon svg{
    width:15px;
    height:15px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.areasCta__cardRow>div{
    display:flex;
    flex-direction:column;
}


.areasCta__cardRow small{
    color:
        rgba(255,255,255,.35);

    font-size:6px;
}


.areasCta__cardRow strong{
    margin-top:1px;

    color:#fff;

    font-size:14px;
}


/* ==================================================
   CARD BUTTON
================================================== */

.areasCta__cardButton{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:15px;

    padding:12px 14px;

    border-radius:8px;

    color:#fff;

    background:var(--red);

    font-size:14px;
    font-weight:800;

    transition:
        transform .2s,
        opacity .2s;
}


.areasCta__cardButton span{
    font-size:14px;

    transition:
        transform .2s;
}


.areasCta__cardButton:hover{
    transform:
        translateY(-2px);
}


.areasCta__cardButton:hover span{
    transform:
        translateX(3px);
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .areasCta__container{
        grid-template-columns:1fr;

        gap:35px;
    }

    .areasCta__card{
        max-width:500px;
    }

    .areasCta__media{
        inset:0;
    }

    .areasCta__overlay{
        background:
            rgba(6,26,51,.91);
    }

}


@media(max-width:600px){

    .areasCta__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .areasCta__actions .btn{
        width:100%;
    }

    .areasCta__secondary{
        justify-content:center;

        min-height:42px;

        border:
            1px solid rgba(255,255,255,.15);

        border-radius:8px;
    }

    .areasCta__features{
        flex-direction:column;

        gap:13px;
    }

    .areasCta__card{
        padding:21px;
    }

}












/* ==================================================
   LOCATION PAGE
   CYPRESS HERO
================================================== */

.locationHero{
    position:relative;

    min-height:620px;

    display:flex;
    align-items:stretch;

    overflow:hidden;

    color:#fff;

    background:#061a33;
}


/* ==================================================
   BACKGROUND IMAGE
================================================== */

.locationHero__media{
    position:absolute;

    inset:0;
}

.locationHero__media img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;
}


/* ==================================================
   OVERLAY
================================================== */

.locationHero__overlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(4,18,35,.99) 0%,
            rgba(5,23,44,.96) 35%,
            rgba(5,23,44,.73) 61%,
            rgba(5,23,44,.31) 100%
        ),
        linear-gradient(
            0deg,
            rgba(4,18,35,.45),
            transparent 55%
        );
}


/* ==================================================
   CONTAINER
================================================== */

.locationHero__container{
    position:relative;

    z-index:3;

    width:100%;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        320px;

    align-items:center;

    gap:75px;

    padding-top:105px;
    padding-bottom:115px;
}


/* ==================================================
   CONTENT
================================================== */

.locationHero__content{
    max-width:720px;
}


/* EYEBROW */

.locationHero__eyebrow{
    display:flex;
    align-items:center;

    gap:9px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;
}

.locationHero__eyebrow::before{
    content:"";

    width:24px;
    height:2px;

    background:var(--red);
}


/* TITLE */

.locationHero h1{
    max-width:680px;

    margin:16px 0 19px;

    color:#fff;

    font-size:
        clamp(42px,5vw,67px);

    line-height: 1.2;

    letter-spacing:-.045em;
}

.locationHero h1 strong{
    display:block;

    color:#ff5151;

    font-weight:800;
}


/* DESCRIPTION */

.locationHero__intro{
    max-width:610px;

    color:
        rgba(255,255,255,.67);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   FEATURES
================================================== */

.locationHero__features{
    max-width:650px;

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:9px;

    margin-top:26px;
}


.locationHeroFeature{
    display:flex;
    align-items:center;

    gap:9px;

    min-height:53px;

    padding:9px 10px;

    border:
        1px solid rgba(255,255,255,.09);

    border-radius:9px;

    background:
        rgba(255,255,255,.035);

    backdrop-filter:
        blur(7px);
}


/* ICON */

.locationHeroFeature__icon{
    width:31px;
    height:31px;

    flex:0 0 31px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:#ff5757;

    background:
        rgba(206,0,1,.11);
}

.locationHeroFeature__icon svg{
    width:15px;
    height:15px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.65;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* TEXT */

.locationHeroFeature>div{
    display:flex;
    flex-direction:column;
}

.locationHeroFeature strong{
    color:#fff;

    font-size:7px;
    line-height:1.25;
}

.locationHeroFeature span{
    margin-top:2px;

    color:
        rgba(255,255,255,.4);

    font-size:6px;
}


/* ==================================================
   ACTIONS
================================================== */

.locationHero__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:11px;

    margin-top:25px;
}


.btn--outlineLight{
    border:
        1px solid rgba(255,255,255,.24);

    color:#fff;

    background:
        rgba(255,255,255,.025);
}

.btn--outlineLight:hover{
    border-color:
        rgba(255,255,255,.5);

    background:
        rgba(255,255,255,.07);
}


/* ==================================================
   LOCATION CARD
================================================== */

.locationHero__card{
    padding:24px;

    border:
        1px solid rgba(255,255,255,.13);

    border-radius:18px;

    background:
        rgba(5,23,45,.76);

    box-shadow:
        0 25px 60px rgba(0,0,0,.24);

    backdrop-filter:
        blur(15px);
}


.locationHero__cardEyebrow{
    display:block;

    padding-bottom:13px;

    border-bottom:
        1px solid rgba(255,255,255,.09);

    color:#ff5757;

    font-size:7px;
    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;
}


/* LOCATION */

.locationHero__cardLocation{
    display:flex;
    align-items:center;

    gap:12px;

    padding:19px 0;
}


.locationHero__pin{
    width:43px;
    height:43px;

    flex:0 0 43px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:#fff;

    background:var(--red);
}


.locationHero__pin svg{
    width:19px;
    height:19px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.locationHero__cardLocation>div{
    display:flex;
    flex-direction:column;
}


.locationHero__cardLocation small{
    color:
        rgba(255,255,255,.38);

    font-size:7px;
}


.locationHero__cardLocation strong{
    margin-top:2px;

    color:#fff;

    font-size:16px;
}


/* ==================================================
   CARD INFO
================================================== */

.locationHero__cardInfo{
    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    gap:7px;
}


.locationHero__cardInfo>div{
    display:flex;
    flex-direction:column;

    padding:10px;

    border:
        1px solid rgba(255,255,255,.07);

    border-radius:8px;

    background:
        rgba(255,255,255,.035);
}


.locationHero__cardInfo span{
    color:
        rgba(255,255,255,.34);

    font-size:6px;
}


.locationHero__cardInfo strong{
    margin-top:2px;

    color:#fff;

    font-size:14px;
}


/* ==================================================
   CARD BOTTOM
================================================== */

.locationHero__cardBottom{
    display:flex;
    flex-direction:column;

    margin-top:16px;
    padding-top:14px;

    border-top:
        1px solid rgba(255,255,255,.08);
}


.locationHero__cardBottom>span{
    margin-bottom:7px;

    color:
        rgba(255,255,255,.38);

    font-size:7px;
}


.locationHero__cardBottom a{
    display:flex;
    align-items:center;
    justify-content:space-between;

    color:#fff;

    font-size:14px;
    font-weight:800;
}


.locationHero__cardBottom a strong{
    color:#ff5757;

    font-size:14px;

    transition:
        transform .2s;
}


.locationHero__cardBottom a:hover strong{
    transform:
        translateX(4px);
}


/* ==================================================
   BOTTOM BAR
================================================== */

.locationHero__bar{
    position:absolute;

    z-index:5;

    left:0;
    right:0;
    bottom:0;

    min-height:48px;

    display:flex;
    align-items:center;

    background:var(--red);
}


.locationHero__barInner{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:25px;
}


.locationHero__barInner span{
    position:relative;

    color:#fff;

    font-size:7px;
    font-weight:700;
}


.locationHero__barInner span:not(:last-child)::after{
    content:"";

    position:absolute;

    top:50%;
    right:-38px;

    width:3px;
    height:3px;

    border-radius:50%;

    background:
        rgba(255,255,255,.55);

    transform:
        translateY(-50%);
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:1000px){

    .locationHero__container{
        grid-template-columns:1fr;

        gap:35px;

        padding-top:80px;
        padding-bottom:105px;
    }

    .locationHero__card{
        max-width:500px;
    }

}


@media(max-width:700px){

    .locationHero{
        min-height:auto;
    }

    .locationHero__overlay{
        background:
            linear-gradient(
                90deg,
                rgba(4,18,35,.97),
                rgba(4,18,35,.82)
            );
    }

    .locationHero__features{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .locationHero__barInner{
        justify-content:flex-start;

        overflow:hidden;
    }

    .locationHero__barInner span:nth-child(n+3){
        display:none;
    }

}


@media(max-width:520px){

    .locationHero h1{
        font-size:40px;
    }

    .locationHero__features{
        grid-template-columns:1fr;
    }

    .locationHero__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .locationHero__actions .btn{
        width:100%;
    }

}









/* ==================================================
   CYPRESS LOCATION PAGE — SECTION 2
   SERVING CYPRESS HOMEOWNERS & BUSINESSES
================================================== */

.cypressIntro{
    position:relative;
    overflow:hidden;

    background:#fff;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressIntro__layout{
    display:grid;

    grid-template-columns:
        minmax(380px,.9fr)
        minmax(0,1fr);

    align-items:center;

    gap:
        clamp(45px,6vw,90px);
}


/* ==================================================
   IMAGE
================================================== */

.cypressIntro__visual{
    position:relative;

    height:430px;

    overflow:hidden;

    border-radius:22px;

    background:#e9edf1;

    box-shadow:
        0 22px 55px rgba(8,38,74,.11);
}


.cypressIntro__visual img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}


.cypressIntro__visual:hover img{
    transform:scale(1.035);
}


/* OVERLAY */

.cypressIntro__visualOverlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(5,24,47,.43)
        );

    pointer-events:none;
}


/* LOCATION BADGE */

.cypressIntro__location{
    position:absolute;

    z-index:2;

    left:18px;
    bottom:18px;

    display:flex;
    align-items:center;

    gap:11px;

    padding:12px 15px;

    border:
        1px solid rgba(255,255,255,.15);

    border-radius:12px;

    background:
        rgba(5,24,47,.86);

    box-shadow:
        0 10px 30px rgba(0,0,0,.14);

    backdrop-filter:
        blur(12px);
}


.cypressIntro__locationIcon{
    width:35px;
    height:35px;

    flex:0 0 35px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#fff;

    background:var(--red);
}


.cypressIntro__locationIcon svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.cypressIntro__location>div{
    display:flex;
    flex-direction:column;
}


.cypressIntro__location small{
    color:
        rgba(255,255,255,.43);

    font-size:6px;
}


.cypressIntro__location strong{
    margin-top:1px;

    color:#fff;

    font-size:14px;
}


/* ==================================================
   CONTENT
================================================== */

.cypressIntro__content{
    max-width:650px;
}


.cypressIntro__content h2{
    max-width:580px;

    margin:15px 0 17px;
}


.cypressIntro__content h2 strong{
    display:block;

    color:var(--red);
}


.cypressIntro__content>p{
    max-width:610px;

    margin-bottom:11px;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   STATS
================================================== */

.cypressIntro__stats{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:10px;

    margin-top:25px;
}


.cypressIntroStat{
    position:relative;

    display:flex;
    flex-direction:column;

    min-height:82px;

    justify-content:center;

    padding:14px 17px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:12px;

    background:var(--off-white);
}


.cypressIntroStat::before{
    content:"";

    position:absolute;

    left:0;
    top:0;
    bottom:0;

    width:3px;

    background:var(--red);
}


.cypressIntroStat strong{
    color:var(--navy);

    font-size:22px;

    line-height:1;
}


.cypressIntroStat span{
    margin-top:5px;

    color:var(--muted);

    font-size:7px;
    font-weight:600;
}


/* ==================================================
   BOTTOM
================================================== */

.cypressIntro__bottom{
    display:flex;
    align-items:center;

    gap:22px;

    margin-top:24px;
}


/* AVAILABILITY */

.cypressIntro__availability{
    display:flex;
    align-items:center;

    gap:9px;
}


.cypressIntro__availability>span{
    position:relative;

    width:9px;
    height:9px;

    flex:0 0 9px;

    border-radius:50%;

    background:#29a568;
}


.cypressIntro__availability>span::after{
    content:"";

    position:absolute;

    inset:-4px;

    border:
        1px solid rgba(41,165,104,.25);

    border-radius:50%;
}


.cypressIntro__availability>div{
    display:flex;
    flex-direction:column;
}


.cypressIntro__availability strong{
    color:var(--navy);

    font-size:14px;
}


.cypressIntro__availability small{
    margin-top:1px;

    color:var(--muted);

    font-size:6px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:900px){

    .cypressIntro__layout{
        grid-template-columns:1fr;

        gap:35px;
    }

    .cypressIntro__visual{
        max-width:720px;
    }

    .cypressIntro__content{
        max-width:720px;
    }

}


@media(max-width:600px){

    .cypressIntro__visual{
        height:320px;
    }

    .cypressIntro__stats{
        grid-template-columns:1fr 1fr;
    }

    .cypressIntro__bottom{
        align-items:flex-start;
        flex-direction:column;
    }

}


@media(max-width:430px){

    .cypressIntro__visual{
        height:280px;
    }

    .cypressIntro__stats{
        grid-template-columns:1fr;
    }

    .cypressIntro__bottom .btn{
        width:100%;
    }

}






/* ==================================================
   CYPRESS LOCATION PAGE — SECTION 3
   APPLIANCE SERVICES
================================================== */

.cypressServices{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 96% 7%,
            rgba(8,38,74,.04),
            transparent 24%
        ),
        #f4f7fa;
}


/* ===== HEAD ===== */

.cypressServices__head{
    max-width:760px;

    margin:0 auto clamp(44px,5vw,65px);

    text-align:center;
}

.cypressServices__head .eyebrow{
    justify-content:center;
}

.cypressServices__head h2{
    margin:15px 0 17px;
}

.cypressServices__head h2 strong{
    display:block;

    color:var(--red);
}

.cypressServices__head p{
    max-width:650px;

    margin:auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ===== GRID ===== */

.cypressServices__grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:17px;
}


/* ==================================================
   CARD
================================================== */

.cypressServiceCard{
    display:flex;
    flex-direction:column;

    min-width:0;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:18px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(8,38,74,.04);

    transition:
        transform .35s var(--ease),
        box-shadow .35s var(--ease),
        border-color .35s var(--ease);
}

.cypressServiceCard:hover{
    transform:translateY(-6px);

    border-color:
        rgba(206,0,1,.15);

    box-shadow:
        0 22px 48px rgba(8,38,74,.09);
}


/* ==================================================
   IMAGE
================================================== */

.cypressServiceCard__image{
    position:relative;

    height:185px;

    display:block;

    overflow:hidden;

    background:#e9edf1;
}

.cypressServiceCard__image::after{
    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(5,24,47,.28)
        );
}

.cypressServiceCard__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .65s var(--ease);
}

.cypressServiceCard:hover
.cypressServiceCard__image img{
    transform:scale(1.045);
}


/* NUMBER */

.cypressServiceCard__number{
    position:absolute;

    z-index:3;

    top:13px;
    left:13px;

    width:32px;
    height:32px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(255,255,255,.2);

    border-radius:9px;

    color:#fff;

    background:
        rgba(5,24,47,.75);

    backdrop-filter:blur(9px);

    font-size:14px;
    font-weight:800;
}


/* ==================================================
   CONTENT
================================================== */

.cypressServiceCard__content{
    flex:1;

    display:flex;
    flex-direction:column;

    padding:20px;
}

.cypressServiceCard__label{
    margin-bottom:6px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.09em;

    text-transform:uppercase;
}

.cypressServiceCard h3{
    margin-bottom:9px;

    color:var(--navy);

    font-size:15px;

    line-height:1.25;
}

.cypressServiceCard p{
    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ===== TAGS ===== */

.cypressServiceCard__tags{
    display:flex;
    flex-wrap:wrap;

    gap:5px;

    margin-top:15px;
}

.cypressServiceCard__tags span{
    padding:5px 7px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:6px;

    color:var(--muted);

    background:var(--off-white);

    font-size:6px;
    font-weight:600;
}


/* ===== LINK ===== */

.cypressServiceCard__link{
    display:flex;
    align-items:center;
    justify-content:space-between;

    margin-top:auto;
    padding-top:17px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.cypressServiceCard__link>span{
    font-size:14px;

    transition:transform .2s;
}

.cypressServiceCard__link:hover>span{
    transform:translateX(4px);
}


/* ==================================================
   BOTTOM CTA
================================================== */

.cypressServices__bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    margin-top:27px;

    padding:22px 25px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:16px;

    background:#fff;
}

.cypressServices__bottom>div{
    display:flex;
    flex-direction:column;
}

.cypressServices__bottom span{
    margin-bottom:3px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}

.cypressServices__bottom strong{
    color:var(--navy);

    font-size:14px;
}

.cypressServices__bottom p{
    margin-top:3px;

    color:var(--muted);

    font-size:14px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:1100px){

    .cypressServices__grid{
        grid-template-columns:
            repeat(3,minmax(0,1fr));
    }

}

@media(max-width:850px){

    .cypressServices__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}

@media(max-width:620px){

    .cypressServices__head{
        text-align:left;
    }

    .cypressServices__head .eyebrow{
        justify-content:flex-start;
    }

    .cypressServices__head h2 strong{
        display:inline;
    }

    .cypressServices__grid{
        grid-template-columns:1fr;
    }

    .cypressServiceCard__image{
        height:240px;
    }

    .cypressServices__bottom{
        align-items:stretch;
        flex-direction:column;
    }

    .cypressServices__bottom .btn{
        width:100%;
    }

}












/* ==================================================
   CYPRESS LOCATION PAGE — SECTION 4
   COMMERCIAL APPLIANCE REPAIR
================================================== */

.cypressCommercial{
    position:relative;
    overflow:hidden;

    background:#fff;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressCommercial__layout{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(400px,.85fr);

    align-items:center;

    gap:clamp(50px,7vw,95px);
}


/* ==================================================
   CONTENT
================================================== */

.cypressCommercial__content{
    max-width:680px;
}


.cypressCommercial__content h2{
    max-width:620px;

    margin:15px 0 18px;
}


.cypressCommercial__content h2 strong{
    display:block;

    color:var(--red);
}


.cypressCommercial__content>p{
    max-width:620px;

    margin-bottom:11px;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   SERVICES
================================================== */

.cypressCommercial__services{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:10px;

    margin-top:25px;
}


.cypressCommercial__services>div{
    display:grid;

    grid-template-columns:
        30px 1fr;

    align-items:start;

    gap:10px;

    padding:13px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:11px;

    background:var(--off-white);

    transition:
        border-color .25s,
        background .25s,
        transform .25s;
}


.cypressCommercial__services>div:hover{
    transform:translateY(-2px);

    border-color:
        rgba(206,0,1,.14);

    background:#fff;
}


/* NUMBER */

.cypressCommercial__services>div>span{
    width:30px;
    height:30px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:var(--red);

    background:
        rgba(206,0,1,.07);

    font-size:7px;
    font-weight:800;
}


/* TEXT */

.cypressCommercial__services strong{
    display:block;

    margin-bottom:3px;

    color:var(--navy);

    font-size:14px;
}


.cypressCommercial__services p{
    color:var(--muted);

    font-size:7px;
    line-height:1.5;
}


/* ==================================================
   ACTIONS
================================================== */

.cypressCommercial__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:22px;

    margin-top:25px;
}


.cypressCommercial__phone{
    display:flex;
    flex-direction:column;
}


.cypressCommercial__phone small{
    color:var(--muted);

    font-size:7px;
}


.cypressCommercial__phone strong{
    margin-top:2px;

    color:var(--navy);

    font-size:14px;
}


/* ==================================================
   IMAGE
================================================== */

.cypressCommercial__visual{
    position:relative;

    min-height:520px;

    overflow:hidden;

    border-radius:23px;

    background:#e9edf1;

    box-shadow:
        0 24px 60px rgba(8,38,74,.12);
}


.cypressCommercial__visual img{
    width:100%;
    height:100%;

    position:absolute;
    inset:0;

    display:block;

    object-fit:cover;

    transition:
        transform .75s var(--ease);
}


.cypressCommercial__visual:hover img{
    transform:scale(1.04);
}


/* OVERLAY */

.cypressCommercial__visualOverlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(5,24,47,.5)
        );
}


/* ==================================================
   LOCATION BADGE
================================================== */

.cypressCommercial__badge{
    position:absolute;

    z-index:2;

    left:18px;
    bottom:18px;

    display:flex;
    align-items:center;

    gap:10px;

    padding:11px 14px;

    border:
        1px solid rgba(255,255,255,.15);

    border-radius:11px;

    background:
        rgba(5,24,47,.86);

    backdrop-filter:
        blur(12px);
}


.cypressCommercial__badgeIcon{
    width:34px;
    height:34px;

    flex:0 0 34px;

    display:grid;
    place-items:center;

    border-radius:9px;

    color:#fff;

    background:var(--red);
}


.cypressCommercial__badgeIcon svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.cypressCommercial__badge>div{
    display:flex;
    flex-direction:column;
}


.cypressCommercial__badge small{
    color:
        rgba(255,255,255,.42);

    font-size:6px;
}


.cypressCommercial__badge strong{
    margin-top:1px;

    color:#fff;

    font-size:14px;
}


/* ==================================================
   PRICE
================================================== */

.cypressCommercial__price{
    position:absolute;

    z-index:2;

    top:18px;
    right:18px;

    min-width:115px;

    padding:13px;

    border:
        1px solid rgba(255,255,255,.14);

    border-radius:12px;

    color:#fff;

    background:
        rgba(5,24,47,.82);

    backdrop-filter:
        blur(12px);
}


.cypressCommercial__price>small{
    display:block;

    color:
        rgba(255,255,255,.43);

    font-size:6px;
}


.cypressCommercial__price>div{
    display:flex;
    align-items:flex-start;

    margin-top:4px;
}


.cypressCommercial__price sup{
    margin-top:4px;

    color:#ff5757;

    font-size:14px;
    font-weight:800;
}


.cypressCommercial__price strong{
    color:#fff;

    font-size:29px;

    line-height:1;

    letter-spacing:-.04em;
}


.cypressCommercial__price>span{
    display:block;

    margin-top:2px;

    color:
        rgba(255,255,255,.38);

    font-size:6px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .cypressCommercial__layout{
        grid-template-columns:1fr;

        gap:35px;
    }

    .cypressCommercial__visual{
        max-width:720px;
        min-height:450px;
    }

}


@media(max-width:620px){

    .cypressCommercial__services{
        grid-template-columns:1fr;
    }

    .cypressCommercial__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .cypressCommercial__actions .btn{
        width:100%;
    }

    .cypressCommercial__phone{
        align-items:center;
    }

    .cypressCommercial__visual{
        min-height:380px;
    }

}





/* ==================================================
   CYPRESS LOCATION PAGE — SECTION 5
   WHY CHOOSE US
================================================== */

.cypressWhy{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.025),
            transparent 25%
        ),
        #f4f7fa;
}


/* ==================================================
   HEAD
================================================== */

.cypressWhy__head{
    max-width:720px;

    margin:0 auto 45px;

    text-align:center;
}


.cypressWhy__head .eyebrow{
    justify-content:center;
}


.cypressWhy__head h2{
    margin:14px 0 15px;
}


.cypressWhy__head h2 strong{
    color:var(--red);
}


.cypressWhy__head p{
    max-width:620px;

    margin:0 auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.75;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressWhy__layout{
    display:grid;

    grid-template-columns:
        minmax(330px,.72fr)
        minmax(0,1.28fr);

    gap:22px;

    align-items:stretch;
}


/* ==================================================
   IMAGE
================================================== */

.cypressWhy__visual{
    position:relative;

    min-height:510px;

    overflow:hidden;

    border-radius:20px;

    background:#dfe5ea;

    box-shadow:
        0 18px 45px rgba(8,38,74,.1);
}


.cypressWhy__visual img{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:
        transform .7s var(--ease);
}


.cypressWhy__visual:hover img{
    transform:scale(1.04);
}


.cypressWhy__visualOverlay{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 38%,
            rgba(5,24,47,.78) 100%
        );
}


/* ==================================================
   IMAGE CONTENT
================================================== */

.cypressWhy__visualContent{
    position:absolute;

    z-index:2;

    left:23px;
    right:23px;
    bottom:25px;

    display:flex;
    flex-direction:column;
}


.cypressWhy__visualContent>span{
    margin-bottom:5px;

    color:#ff5a5a;

    font-size:7px;
    font-weight:800;

    letter-spacing:.09em;

    text-transform:uppercase;
}


.cypressWhy__visualContent>strong{
    max-width:320px;

    color:#fff;

    font-size:20px;
    line-height:1.15;
}


.cypressWhy__visualContent>p{
    margin-top:5px;

    color:
        rgba(255,255,255,.5);

    font-size:7px;
}


/* ==================================================
   IMAGE BADGE
================================================== */

.cypressWhy__visualBadge{
    position:absolute;

    z-index:3;

    top:17px;
    left:17px;

    display:flex;
    align-items:center;

    gap:9px;

    padding:9px 11px;

    border:
        1px solid rgba(255,255,255,.15);

    border-radius:10px;

    background:
        rgba(5,24,47,.82);

    backdrop-filter:blur(10px);
}


.cypressWhy__badgeIcon{
    width:30px;
    height:30px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:#fff;

    background:var(--red);
}


.cypressWhy__badgeIcon svg{
    width:15px;
    height:15px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


.cypressWhy__visualBadge>div{
    display:flex;
    flex-direction:column;
}


.cypressWhy__visualBadge small{
    color:
        rgba(255,255,255,.4);

    font-size:6px;
}


.cypressWhy__visualBadge strong{
    margin-top:1px;

    color:#fff;

    font-size:14px;
}


/* ==================================================
   BENEFITS GRID
================================================== */

.cypressWhy__grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:12px;
}


/* ==================================================
   CARD
================================================== */

.cypressWhyCard{
    position:relative;

    display:grid;

    grid-template-columns:
        42px 1fr;

    align-items:start;

    gap:13px;

    min-height:155px;

    padding:21px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:15px;

    background:#fff;

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease),
        box-shadow .3s var(--ease);
}


.cypressWhyCard:hover{
    transform:translateY(-4px);

    border-color:
        rgba(206,0,1,.15);

    box-shadow:
        0 15px 35px rgba(8,38,74,.07);
}


/* NUMBER */

.cypressWhyCard__number{
    position:absolute;

    top:14px;
    right:15px;

    color:
        rgba(8,38,74,.12);

    font-size:7px;
    font-weight:800;
}


/* ICON */

.cypressWhyCard__icon{
    width:42px;
    height:42px;

    display:grid;
    place-items:center;

    border-radius:11px;

    color:var(--red);

    background:
        rgba(206,0,1,.065);
}


.cypressWhyCard__icon svg{
    width:19px;
    height:19px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.6;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* TEXT */

.cypressWhyCard h3{
    padding-right:20px;

    margin-bottom:7px;

    color:var(--navy);

    font-size:14px;
}


.cypressWhyCard p{
    color:var(--muted);

    font-size:7px;
    line-height:1.65;
}


/* ACCENT */

.cypressWhyCard--accent{
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.07),
            transparent 40%
        ),
        #fff;
}


.cypressWhyCard--accent
.cypressWhyCard__icon{
    color:#fff;

    background:var(--red);
}


/* ==================================================
   BOTTOM CTA
================================================== */

.cypressWhy__bottom{
    display:grid;

    grid-template-columns:
        1fr auto auto;

    align-items:center;

    gap:35px;

    margin-top:22px;

    padding:20px 23px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:15px;

    background:#fff;
}


.cypressWhy__bottomText{
    display:flex;
    flex-direction:column;
}


.cypressWhy__bottomText span{
    margin-bottom:3px;

    color:var(--red);

    font-size:7px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}


.cypressWhy__bottomText strong{
    color:var(--navy);

    font-size:14px;
}


/* FEATURES */

.cypressWhy__bottomFeatures{
    display:flex;
    align-items:center;

    gap:17px;
}


.cypressWhy__bottomFeatures span{
    display:flex;
    align-items:center;

    gap:6px;

    color:var(--muted);

    font-size:7px;
    font-weight:600;
}


.cypressWhy__bottomFeatures i{
    width:5px;
    height:5px;

    flex:0 0 5px;

    border-radius:50%;

    background:var(--red);
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .cypressWhy__layout{
        grid-template-columns:1fr;
    }

    .cypressWhy__visual{
        min-height:430px;
    }

    .cypressWhy__bottom{
        grid-template-columns:1fr;
        gap:15px;
    }

}


@media(max-width:620px){

    .cypressWhy__head{
        text-align:left;
    }

    .cypressWhy__head .eyebrow{
        justify-content:flex-start;
    }

    .cypressWhy__grid{
        grid-template-columns:1fr;
    }

    .cypressWhy__visual{
        min-height:390px;
    }

    .cypressWhy__bottomFeatures{
        align-items:flex-start;
        flex-direction:column;

        gap:8px;
    }

    .cypressWhy__bottom .btn{
        width:100%;
    }

}







/* ==================================================
   CYPRESS — APPLIANCE REPAIR PROCESS
================================================== */

.cypressProcess{
    position:relative;
    overflow:hidden;

    color:#fff;
    background:#082b50;
}


/* subtle background details */

.cypressProcess::before{
    content:"";

    position:absolute;
    width:480px;
    height:480px;

    top:-300px;
    left:-180px;

    border-radius:50%;

    background:
        rgba(255,255,255,.025);
}


.cypressProcess::after{
    content:"";

    position:absolute;
    width:400px;
    height:400px;

    right:-220px;
    bottom:-280px;

    border-radius:50%;

    background:
        rgba(206,0,1,.07);
}


/* ==================================================
   HEAD
================================================== */

.cypressProcess__head{
    position:relative;
    z-index:2;

    max-width:670px;

    margin:0 auto 50px;

    text-align:center;
}


.cypressProcess__eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    color:#ff5757;

    font-size:7px;
    font-weight:800;

    letter-spacing:.12em;

    text-transform:uppercase;
}


.cypressProcess__eyebrow::before,
.cypressProcess__eyebrow::after{
    content:"";

    width:22px;
    height:1px;

    background:
        rgba(255,87,87,.65);
}


.cypressProcess__head h2{
    margin:12px 0 13px;

    color:#fff;
}


.cypressProcess__head h2 strong{
    color:#ff5757;
}


.cypressProcess__head p{
    max-width:570px;

    margin:auto;

    color:
        rgba(255,255,255,.5);

    font-size:14px;
    line-height:1.7;
}


/* ==================================================
   STEPS
================================================== */

.cypressProcess__steps{
    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:
        repeat(5,minmax(0,1fr));

    gap:0;
}


/* CONNECTING LINE */

.cypressProcess__steps::before{
    content:"";

    position:absolute;

    top:33px;
    left:9%;
    right:9%;

    height:1px;

    background:
        rgba(255,255,255,.12);
}


/* ==================================================
   STEP
================================================== */

.cypressProcessStep{
    position:relative;

    padding:0 20px;

    text-align:center;
}


/* ICON TOP */

.cypressProcessStep__top{
    position:relative;

    width:66px;
    height:66px;

    margin:0 auto 20px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(255,255,255,.13);

    border-radius:50%;

    background:#082b50;

    transition:
        transform .3s,
        border-color .3s,
        background .3s;
}


.cypressProcessStep:hover
.cypressProcessStep__top{
    transform:translateY(-4px);

    border-color:
        rgba(255,82,82,.5);

    background:#0a315b;
}


/* ICON */

.cypressProcessStep__icon{
    width:38px;
    height:38px;

    display:grid;
    place-items:center;

    border-radius:50%;

    color:#fff;

    background:var(--red);

    box-shadow:
        0 8px 20px rgba(206,0,1,.22);
}


.cypressProcessStep__icon svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* NUMBER */

.cypressProcessStep__number{
    position:absolute;

    z-index:3;

    top:-5px;
    right:-3px;

    width:20px;
    height:20px;

    display:grid;
    place-items:center;

    border:
        2px solid #082b50;

    border-radius:50%;

    color:var(--navy);

    background:#fff;

    font-size:6px;
    font-weight:900;
}


/* ==================================================
   TEXT
================================================== */

.cypressProcessStep h3{
    margin-bottom:8px;

    color:#fff;

    font-size:14px;
}


.cypressProcessStep p{
    max-width:180px;

    margin:auto;

    color:
        rgba(255,255,255,.43);

    font-size:7px;
    line-height:1.65;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .cypressProcess__steps{
        grid-template-columns:
            repeat(3,1fr);

        gap:40px 10px;
    }

    .cypressProcess__steps::before{
        display:none;
    }

}


@media(max-width:650px){

    .cypressProcess__head{
        text-align:left;
    }

    .cypressProcess__eyebrow{
        justify-content:flex-start;
    }

    .cypressProcess__eyebrow::after{
        display:none;
    }

    .cypressProcess__steps{
        grid-template-columns:1fr;

        gap:12px;
    }

    .cypressProcessStep{
        display:grid;

        grid-template-columns:60px 1fr;

        gap:0 15px;

        padding:15px;

        text-align:left;

        border:
            1px solid rgba(255,255,255,.08);

        border-radius:12px;

        background:
            rgba(255,255,255,.025);
    }

    .cypressProcessStep__top{
        grid-row:1 / 3;

        width:54px;
        height:54px;

        margin:0;
    }

    .cypressProcessStep__icon{
        width:32px;
        height:32px;
    }

    .cypressProcessStep h3{
        align-self:end;

        margin-bottom:5px;
    }

    .cypressProcessStep p{
        max-width:none;

        margin:0;
    }

}






/* ==================================================
   CYPRESS — DIAGNOSTIC FEES
================================================== */

.cypressDiagnostic{
    position:relative;
    overflow:hidden;

    background:#f5f7f9;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressDiagnostic__layout{
    display:grid;

    grid-template-columns:
        minmax(360px,.82fr)
        minmax(0,1.18fr);

    align-items:center;

    gap:clamp(45px,6vw,85px);
}


/* ==================================================
   IMAGE
================================================== */

.cypressDiagnostic__visual{
    position:relative;

    min-height:540px;

    overflow:hidden;

    border-radius:22px;

    background:#e3e8ec;

    box-shadow:
        0 22px 55px rgba(8,38,74,.1);
}

.cypressDiagnostic__visual img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:transform .7s var(--ease);
}

.cypressDiagnostic__visual:hover img{
    transform:scale(1.04);
}

.cypressDiagnostic__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(5,24,47,.52)
        );
}


/* ==================================================
   IMAGE BADGE
================================================== */

.cypressDiagnostic__imageBadge{
    position:absolute;
    z-index:2;

    left:20px;
    bottom:20px;

    display:flex;
    align-items:center;

    gap:12px;

    padding:13px 16px;

    border:
        1px solid rgba(255,255,255,.16);

    border-radius:12px;

    background:
        rgba(5,24,47,.86);

    backdrop-filter:blur(12px);
}

.cypressDiagnostic__imageIcon{
    width:38px;
    height:38px;

    flex:0 0 38px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:#fff;

    background:var(--red);
}

.cypressDiagnostic__imageIcon svg{
    width:18px;
    height:18px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.cypressDiagnostic__imageBadge>div{
    display:flex;
    flex-direction:column;
}

.cypressDiagnostic__imageBadge small{
    color:rgba(255,255,255,.5);

    font-size:14px;
    line-height:1.3;
}

.cypressDiagnostic__imageBadge strong{
    margin-top:2px;

    color:#fff;

    font-size:15px;
    line-height:1.3;
}


/* ==================================================
   CONTENT
================================================== */

.cypressDiagnostic__content{
    max-width:700px;
}

.cypressDiagnostic__content h2{
    max-width:590px;

    margin:15px 0 18px;
}

.cypressDiagnostic__content h2 strong{
    display:block;

    color:var(--red);
}

.cypressDiagnostic__intro{
    max-width:620px;

    color:var(--muted);

    font-size:15px;
    line-height:1.75;
}


/* ==================================================
   PRICE CARDS
================================================== */

.cypressDiagnostic__prices{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:16px;

    margin-top:30px;
}

.diagnosticPriceCard{
    position:relative;

    padding:24px;

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.08);

    border-radius:17px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(8,38,74,.045);
}


/* ===== TOP ===== */

.diagnosticPriceCard__top{
    display:flex;
    align-items:center;

    gap:11px;

    margin-bottom:18px;
}

.diagnosticPriceCard__icon{
    width:40px;
    height:40px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:var(--red);

    background:
        rgba(206,0,1,.07);
}

.diagnosticPriceCard__icon svg{
    width:18px;
    height:18px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.diagnosticPriceCard__type{
    color:var(--navy);

    font-size:14px;
    font-weight:800;

    text-transform:uppercase;

    letter-spacing:.06em;
}


/* ===== PRICE ===== */

.diagnosticPriceCard__price{
    display:flex;
    align-items:flex-start;
}

.diagnosticPriceCard__price sup{
    margin-top:7px;

    color:var(--red);

    font-size:17px;
    font-weight:900;
}

.diagnosticPriceCard__price strong{
    color:var(--navy);

    font-size:52px;
    line-height:.95;

    letter-spacing:-.05em;
}

.diagnosticPriceCard__label{
    display:block;

    margin-top:6px;

    color:var(--muted);

    font-size:14px;
    font-weight:700;
}

.diagnosticPriceCard>p{
    margin-top:15px;

    color:var(--muted);

    font-size:14px;
    line-height:1.65;
}


/* ===== LIST ===== */

.diagnosticPriceCard ul{
    display:flex;
    flex-direction:column;

    gap:8px;

    margin-top:16px;
}

.diagnosticPriceCard li{
    position:relative;

    padding-left:16px;

    color:var(--muted);

    font-size:13px;
    line-height:1.5;
}

.diagnosticPriceCard li::before{
    content:"";

    position:absolute;

    left:0;
    top:.58em;

    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--red);
}


/* ==================================================
   DARK COMMERCIAL CARD
================================================== */

.diagnosticPriceCard--dark{
    border-color:transparent;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206,0,1,.13),
            transparent 38%
        ),
        #082b50;
}

.diagnosticPriceCard--dark
.diagnosticPriceCard__icon{
    color:#fff;

    background:var(--red);
}

.diagnosticPriceCard--dark
.diagnosticPriceCard__type,
.diagnosticPriceCard--dark
.diagnosticPriceCard__price strong{
    color:#fff;
}

.diagnosticPriceCard--dark
.diagnosticPriceCard__label,
.diagnosticPriceCard--dark>p,
.diagnosticPriceCard--dark li{
    color:rgba(255,255,255,.62);
}


/* ==================================================
   NOTE
================================================== */

.cypressDiagnostic__note{
    display:flex;
    align-items:flex-start;

    gap:12px;

    margin:17px 0 22px;

    padding:15px 17px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:11px;

    background:#fff;
}

.cypressDiagnostic__note>span{
    width:30px;
    height:30px;

    flex:0 0 30px;

    display:grid;
    place-items:center;

    border-radius:8px;

    color:var(--red);

    background:
        rgba(206,0,1,.06);
}

.cypressDiagnostic__note svg{
    width:16px;
    height:16px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.cypressDiagnostic__note p{
    color:var(--muted);

    font-size:13px;
    line-height:1.65;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:950px){

    .cypressDiagnostic__layout{
        grid-template-columns:1fr;

        gap:35px;
    }

    .cypressDiagnostic__visual{
        max-width:720px;
        min-height:440px;
    }

}

@media(max-width:600px){

    .cypressDiagnostic__prices{
        grid-template-columns:1fr;
    }

    .cypressDiagnostic__visual{
        min-height:360px;
    }

    .cypressDiagnostic__intro{
        font-size:14px;
    }

    .diagnosticPriceCard>p,
    .diagnosticPriceCard li,
    .cypressDiagnostic__note p{
        font-size:13px;
    }

    .cypressDiagnostic__content .btn{
        width:100%;
    }

}

























/* ==================================================
   CYPRESS PAGE — TYPOGRAPHY FIX
   Keep text sizes consistent with main website
================================================== */


/* =========================
   HERO
========================= */

.locationHero__eyebrow{
    font-size:14px;
}

.locationHero__intro{
    font-size:15px;
}

.locationHeroFeature strong{
    font-size:14px;
}

.locationHeroFeature span{
    font-size:14px;
}

.locationHero__cardEyebrow{
    font-size:14px;
}

.locationHero__cardLocation small{
    font-size:14px;
}

.locationHero__cardLocation strong{
    font-size:18px;
}

.locationHero__cardInfo span{
    font-size:14px;
}

.locationHero__cardInfo strong{
    font-size:14px;
}

.locationHero__cardBottom>span{
    font-size:14px;
}

.locationHero__cardBottom a{
    font-size:14px;
}

.locationHero__barInner span{
    font-size:14px;
}


/* =========================
   SERVING CYPRESS
========================= */

.cypressIntro__content>p{
    font-size:15px;
}

.cypressIntro__location small{
    font-size:14px;
}

.cypressIntro__location strong{
    font-size:14px;
}

.cypressIntroStat span{
    font-size:14px;
}

.cypressIntro__availability strong{
    font-size:14px;
}

.cypressIntro__availability small{
    font-size:14px;
}


/* =========================
   RESIDENTIAL SERVICES
========================= */

.cypressServices__head p{
    font-size:15px;
}

.cypressServiceCard__number{
    font-size:14px;
}

.cypressServiceCard__label{
    font-size:14px;
}

.cypressServiceCard h3{
    font-size:17px;
}

.cypressServiceCard p{
    font-size:13px;
}

.cypressServiceCard__tags span{
    font-size:14px;
}

.cypressServiceCard__link{
    font-size:14px;
}

.cypressServices__bottom span{
    font-size:14px;
}

.cypressServices__bottom strong{
    font-size:15px;
}

.cypressServices__bottom p{
    font-size:13px;
}


/* =========================
   COMMERCIAL SECTION
========================= */

.cypressCommercial__content>p{
    font-size:15px;
}

.cypressCommercial__services>div>span{
    font-size:14px;
}

.cypressCommercial__services strong{
    font-size:13px;
}

.cypressCommercial__services p{
    font-size:14px;
}

.cypressCommercial__phone small{
    font-size:14px;
}

.cypressCommercial__phone strong{
    font-size:14px;
}

.cypressCommercial__badge small{
    font-size:14px;
}

.cypressCommercial__badge strong{
    font-size:13px;
}

.cypressCommercial__price>small{
    font-size:14px;
}

.cypressCommercial__price>span{
    font-size:14px;
}


/* =========================
   WHY CHOOSE US
========================= */

.cypressWhy__head p{
    font-size:15px;
}

.cypressWhy__visualContent>span{
    font-size:14px;
}

.cypressWhy__visualContent>p{
    font-size:14px;
}

.cypressWhy__visualBadge small{
    font-size:14px;
}

.cypressWhy__visualBadge strong{
    font-size:14px;
}

.cypressWhyCard__number{
    font-size:14px;
}

.cypressWhyCard h3{
    font-size:15px;
}

.cypressWhyCard p{
    font-size:14px;
}

.cypressWhy__bottomText span{
    font-size:14px;
}

.cypressWhy__bottomText strong{
    font-size:14px;
}

.cypressWhy__bottomFeatures span{
    font-size:14px;
}


/* =========================
   REPAIR PROCESS
========================= */

.cypressProcess__eyebrow{
    font-size:14px;
}

.cypressProcess__head p{
    font-size:13px;
}

.cypressProcessStep__number{
    font-size:10px;
}

.cypressProcessStep h3{
    font-size:14px;
}

.cypressProcessStep p{
    font-size:14px;
}


/* =========================
   DIAGNOSTIC FEES
========================= */

.cypressDiagnostic__intro{
    font-size:15px;
}

.cypressDiagnostic__imageBadge small{
    font-size:14px;
}

.cypressDiagnostic__imageBadge strong{
    font-size:15px;
}

.diagnosticPriceCard__type{
    font-size:14px;
}

.diagnosticPriceCard__label{
    font-size:14px;
}

.diagnosticPriceCard>p{
    font-size:14px;
}

.diagnosticPriceCard li{
    font-size:13px;
}

.cypressDiagnostic__note p{
    font-size:13px;
}


/* =========================
   MOBILE
========================= */

@media(max-width:600px){

    .locationHero__intro,
    .cypressIntro__content>p,
    .cypressServices__head p,
    .cypressCommercial__content>p,
    .cypressWhy__head p,
    .cypressDiagnostic__intro{
        font-size:14px;
    }

    .cypressServiceCard p,
    .cypressCommercial__services p,
    .cypressWhyCard p,
    .cypressProcessStep p,
    .cypressDiagnostic__note p{
        font-size:14px;
    }

}








/* ==================================================
   SERVICE AREAS PAGE — TYPOGRAPHY FIX
   Consistent readable type scale
================================================== */


/* =========================
   HERO
========================= */

.areasHero__eyebrow{
    font-size:14px;
}

.areasHero__intro{
    font-size:15px;
}

.areasHeroFeature strong{
    font-size:14px;
}

.areasHeroFeature span{
    font-size:14px;
}

.areasHero__locationLabel{
    font-size:14px;
}

.areasHero__locationMain small{
    font-size:14px;
}

.areasHero__locationMain strong{
    font-size:18px;
}

.areasHero__locationStats strong{
    font-size:17px;
}

.areasHero__locationStats span{
    font-size:14px;
}

.areasHero__locationLink{
    font-size:14px;
}

.areasHero__barItems span{
    font-size:14px;
}


/* =========================
   COMMUNITIES / CITIES
========================= */

.locationCities__head p{
    font-size:15px;
}

.locationCityCard__number{
    font-size:14px;
}

.locationCityCard__label{
    font-size:14px;
}

.locationCityCard h3{
    font-size:19px;
}

.locationCityCard p{
    font-size:13px;
}

.locationCityCard__tags span{
    font-size:14px;
}

.locationCityCard__link{
    font-size:14px;
}

.locationCities__bottom span{
    font-size:14px;
}

.locationCities__bottom strong{
    font-size:15px;
}


/* =========================
   SERVICES ACROSS ALL AREAS
========================= */

.areasServices__head p{
    font-size:15px;
}

.areasServiceCard__content>span{
    font-size:14px;
}

.areasServiceCard h3{
    font-size:16px;
}

.areasServiceCard p{
    font-size:13px;
}

.areasServices__bottomContent>span{
    font-size:14px;
}

.areasServices__bottomContent strong{
    font-size:15px;
}

.areasServices__bottomContent p{
    font-size:14px;
}


/* =========================
   WHY HOUSTON HOMEOWNERS CHOOSE US
========================= */

.areasWhy__head>p{
    font-size:15px;
}

.areasWhy__introFeatures strong{
    font-size:14px;
}

.areasWhy__introFeatures span{
    font-size:14px;
}

.areasWhy__visualBadge strong{
    font-size:13px;
}

.areasWhy__visualBadge span{
    font-size:14px;
}

.areasWhyCard__number{
    font-size:14px;
}

.areasWhyCard h3{
    font-size:16px;
}

.areasWhyCard p{
    font-size:13px;
}

.areasWhy__serviceContent>span{
    font-size:14px;
}

.areasWhy__serviceContent>p{
    font-size:13px;
}

.areasWhy__servicePoints span{
    font-size:14px;
}


/* =========================
   DIAGNOSTIC / FEES BLOCK
========================= */

.areasWhyFee__label{
    font-size:14px;
}

.areasWhyFee p{
    font-size:14px;
}

.areasWhy__feesCta>span{
    font-size:14px;
}

.areasWhy__feesCta>strong{
    font-size:15px;
}


/* =========================
   FINAL CTA
========================= */

.areasCta__eyebrow{
    font-size:14px;
}

.areasCta__content>p{
    font-size:14px;
}

.areasCta__secondary{
    font-size:14px;
}

.areasCtaFeature strong{
    font-size:14px;
}

.areasCtaFeature span{
    font-size:14px;
}

.areasCta__cardLabel{
    font-size:14px;
}

.areasCta__card>p{
    font-size:14px;
}

.areasCta__cardRow small{
    font-size:14px;
}

.areasCta__cardRow strong{
    font-size:14px;
}

.areasCta__cardButton{
    font-size:14px;
}


/* =========================
   MOBILE
========================= */

@media(max-width:600px){

    .areasHero__intro,
    .locationCities__head p,
    .areasServices__head p,
    .areasWhy__head>p,
    .areasCta__content>p{
        font-size:14px;
    }

    .locationCityCard p,
    .areasServiceCard p,
    .areasWhyCard p,
    .areasWhy__serviceContent>p,
    .areasCta__card>p{
        font-size:14px;
    }

}






/* ==================================================
   CYPRESS — AREAS WE SERVE
================================================== */

.cypressAreas{
    position:relative;
    overflow:hidden;

    background:#fff;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressAreas__layout{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(390px,.85fr);

    align-items:center;

    gap:clamp(50px,7vw,95px);
}


/* ==================================================
   CONTENT
================================================== */

.cypressAreas__content{
    max-width:690px;
}

.cypressAreas__content h2{
    max-width:620px;

    margin:15px 0 18px;
}

.cypressAreas__content h2 strong{
    display:block;

    color:var(--red);
}

.cypressAreas__content>p{
    max-width:610px;

    color:var(--muted);

    font-size:15px;
    line-height:1.75;
}


/* ==================================================
   COMMUNITIES
================================================== */

.cypressAreas__communities{
    display:flex;
    flex-wrap:wrap;

    gap:9px;

    margin-top:28px;
}

.cypressAreaTag{
    padding:9px 12px;

    border:1px solid rgba(8,38,74,.08);
    border-radius:8px;

    color:var(--navy);

    background:var(--off-white);

    font-size:14px;
    font-weight:700;

    transition:
        color .2s,
        background .2s,
        border-color .2s,
        transform .2s;
}

.cypressAreaTag:hover{
    transform:translateY(-2px);

    color:#fff;

    border-color:var(--navy);

    background:var(--navy);
}


/* ==================================================
   ZIP CODES
================================================== */

.cypressAreas__zipWrap{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:15px;

    margin-top:26px;
    padding-top:22px;

    border-top:
        1px solid rgba(8,38,74,.08);
}

.cypressAreas__zipLabel{
    color:var(--navy);

    font-size:13px;
    font-weight:800;
}

.cypressAreas__zips{
    display:flex;
    flex-wrap:wrap;

    gap:7px;
}

.cypressAreas__zips span{
    padding:7px 10px;

    border-radius:7px;

    color:var(--red);

    background:rgba(206,0,1,.065);

    font-size:14px;
    font-weight:800;
}


/* ==================================================
   ACTIONS
================================================== */

.cypressAreas__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:22px;

    margin-top:28px;
}

.cypressAreas__allLink{
    display:inline-flex;
    align-items:center;

    gap:8px;

    color:var(--red);

    font-size:14px;
    font-weight:800;
}

.cypressAreas__allLink span{
    font-size:17px;

    transition:transform .2s;
}

.cypressAreas__allLink:hover span{
    transform:translateX(4px);
}


/* ==================================================
   IMAGE
================================================== */

.cypressAreas__visual{
    position:relative;

    min-height:500px;

    overflow:hidden;

    border-radius:22px;

    background:#e7ebee;

    box-shadow:
        0 22px 55px rgba(8,38,74,.11);
}

.cypressAreas__visual img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    transition:transform .7s var(--ease);
}

.cypressAreas__visual:hover img{
    transform:scale(1.04);
}

.cypressAreas__overlay{
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(5,24,47,.5)
        );
}


/* ==================================================
   IMAGE CARD
================================================== */

.cypressAreas__card{
    position:absolute;
    z-index:2;

    left:18px;
    right:18px;
    bottom:18px;

    display:flex;
    align-items:center;

    gap:12px;

    padding:14px 16px;

    border:1px solid rgba(255,255,255,.14);
    border-radius:12px;

    color:#fff;

    background:rgba(5,24,47,.86);

    backdrop-filter:blur(12px);
}

.cypressAreas__cardIcon{
    width:40px;
    height:40px;

    flex:0 0 40px;

    display:grid;
    place-items:center;

    border-radius:10px;

    color:#fff;

    background:var(--red);
}

.cypressAreas__cardIcon svg{
    width:19px;
    height:19px;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}

.cypressAreas__card>div{
    display:flex;
    flex-direction:column;
}

.cypressAreas__card small{
    color:rgba(255,255,255,.47);

    font-size:14px;
}

.cypressAreas__card strong{
    margin-top:2px;

    color:#fff;

    font-size:14px;
}

.cypressAreas__card span:last-child{
    margin-top:2px;

    color:rgba(255,255,255,.55);

    font-size:14px;
}


/* ==================================================
   RESPONSIVE
================================================== */

@media(max-width:900px){

    .cypressAreas__layout{
        grid-template-columns:1fr;

        gap:35px;
    }

    .cypressAreas__visual{
        max-width:720px;
        min-height:420px;
    }

}


@media(max-width:600px){

    .cypressAreas__content>p{
        font-size:14px;
    }

    .cypressAreas__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .cypressAreas__actions .btn{
        width:100%;
    }

    .cypressAreas__allLink{
        justify-content:center;
    }

    .cypressAreas__visual{
        min-height:350px;
    }

}
















/* ==================================================
   SECTION 9 — BRANDS WE SERVICE IN CYPRESS
================================================== */

.cypressBrands{
    position:relative;
    overflow:hidden;

    background:#f5f7f9;
}


/* ==================================================
   HEAD
================================================== */

.cypressBrands__head{
    max-width:720px;

    margin:0 auto 38px;

    text-align:center;
}


.cypressBrands__head .eyebrow{
    justify-content:center;
}


.cypressBrands__head h2{
    margin:14px 0 15px;
}


.cypressBrands__head h2 strong{
    color:var(--red);
}


.cypressBrands__head p{
    max-width:620px;

    margin:0 auto;

    color:var(--muted);

    font-size:14px;
    line-height:1.7;
}


/* ==================================================
   BRANDS GRID
================================================== */

.cypressBrands__grid{
    display:grid;

    grid-template-columns:
        repeat(8,minmax(0,1fr));

    overflow:hidden;

    border:
        1px solid rgba(8,38,74,.08);

    border-radius:18px;

    background:#fff;

    box-shadow:
        0 15px 40px rgba(8,38,74,.04);
}


/* ==================================================
   BRAND ITEM
================================================== */

.cypressBrand {
    position: relative;

    min-height: 100px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 21px 12px;

    border-right: 1px solid rgba(8, 38, 74, 0.07);
    border-bottom: 1px solid rgba(8, 38, 74, 0.07);
}

.cypressBrand:hover {
    z-index: 2;
    background: var(--navy);
}


.cypressBrand:nth-child(8n){
    border-right:0;
}


.cypressBrand:nth-last-child(-n+8){
    border-bottom:0;
}


.cypressBrand:hover{
    z-index:2;

    background:var(--navy);
}


/* ==================================================
   BRAND NUMBER
================================================== */

.cypressBrand>span{
    position:absolute;

    top:9px;
    left:10px;

    color:rgba(8,38,74,.25);

    font-size:14px;
    font-weight:800;

    line-height:1;

    transition:color .25s;
}


.cypressBrand:hover>span{
    color:rgba(255,255,255,.35);
}


/* ==================================================
   BRAND NAME
================================================== */

.cypressBrand strong{
    color:var(--navy);

    font-size:14px;
    font-weight:800;

    line-height:1.3;

    text-align:center;

    transition:
        color .25s,
        transform .25s;
}


.cypressBrand:hover strong{
    color:#fff;

    transform:translateY(-1px);
}


/* ==================================================
   RED DETAIL
================================================== */

.cypressBrand::after{
    content:"";

    position:absolute;

    left:50%;
    bottom:13px;

    width:18px;
    height:2px;

    border-radius:2px;

    background:var(--red);

    transform:
        translateX(-50%)
        scaleX(.45);

    transition:transform .25s;
}


.cypressBrand:hover::after{
    transform:
        translateX(-50%)
        scaleX(1);
}


/* ==================================================
   BOTTOM CTA
================================================== */

.cypressBrands__bottom{
    display:grid;

    grid-template-columns:
        46px minmax(0,1fr) auto;

    align-items:center;

    gap:15px;

    margin-top:20px;

    padding:18px 20px;

    border:
        1px solid rgba(8,38,74,.07);

    border-radius:15px;

    background:#fff;
}


/* ==================================================
   BOTTOM CTA ICON
================================================== */

.cypressBrands__bottomIcon{
    width:46px;
    height:46px;

    flex:0 0 46px;

    display:grid;
    place-items:center;

    overflow:hidden;

    border-radius:11px;

    color:#fff;

    background:var(--red);
}


.cypressBrands__bottomIcon svg{
    width:20px;
    height:20px;

    display:block;

    fill:none;

    stroke:currentColor;
    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ==================================================
   BOTTOM CTA CONTENT
================================================== */

.cypressBrands__bottomContent{
    min-width:0;

    display:flex;
    flex-direction:column;
}


.cypressBrands__bottomContent>span{
    margin-bottom:3px;

    color:var(--red);

    font-size:14px;
    font-weight:800;

    line-height:1.35;

    letter-spacing:.04em;

    text-transform:uppercase;
}


.cypressBrands__bottomContent>strong{
    color:var(--navy);

    font-size:14px;
    font-weight:800;

    line-height:1.4;
}


.cypressBrands__bottomContent>p{
    max-width:650px;

    margin:3px 0 0;

    color:var(--muted);

    font-size:14px;
    line-height:1.55;
}


/* ==================================================
   BOTTOM CTA BUTTON
================================================== */

.cypressBrands__bottom .btn{
    flex-shrink:0;

    white-space:nowrap;
}


/* ==================================================
   TABLET — 1100px
================================================== */

@media(max-width:1100px){

    .cypressBrands__grid{
        grid-template-columns:
            repeat(4,minmax(0,1fr));
    }


    .cypressBrand:nth-child(8n){
        border-right:
            1px solid rgba(8,38,74,.07);
    }


    .cypressBrand:nth-child(4n){
        border-right:0;
    }


    .cypressBrand:nth-last-child(-n+8){
        border-bottom:
            1px solid rgba(8,38,74,.07);
    }


    .cypressBrand:nth-last-child(-n+4){
        border-bottom:0;
    }

}


/* ==================================================
   TABLET / MOBILE — 700px
================================================== */

@media(max-width:700px){

    .cypressBrands__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }


    .cypressBrand:nth-child(4n){
        border-right:
            1px solid rgba(8,38,74,.07);
    }


    .cypressBrand:nth-child(2n){
        border-right:0;
    }


    .cypressBrand:nth-last-child(-n+4){
        border-bottom:
            1px solid rgba(8,38,74,.07);
    }


    .cypressBrand:nth-last-child(-n+2){
        border-bottom:0;
    }


    .cypressBrands__bottom{
        grid-template-columns:
            46px minmax(0,1fr);

        gap:13px;
    }


    .cypressBrands__bottom .btn{
        grid-column:1 / -1;

        width:100%;

        margin-top:2px;
    }

}


/* ==================================================
   MOBILE — 600px
================================================== */

@media(max-width:600px){

    .cypressBrands__head{
        margin-bottom:30px;

        text-align:left;
    }


    .cypressBrands__head .eyebrow{
        justify-content:flex-start;
    }


    .cypressBrands__head p{
        font-size:13px;
    }


    .cypressBrands__grid{
        border-radius:14px;
    }


    .cypressBrand{
        min-height:92px;

        padding:
            20px 10px;
    }


    .cypressBrand strong{
        font-size:13px;
    }


    .cypressBrands__bottom{
        padding:16px;
    }


    .cypressBrands__bottomContent>strong{
        font-size:13px;
    }


    .cypressBrands__bottomContent>p{
        font-size:14px;
    }

}


/* ==================================================
   SMALL MOBILE — 420px
================================================== */

@media(max-width:420px){

    .cypressBrand{
        min-height:88px;
    }


    .cypressBrand>span{
        top:8px;
        left:8px;

        font-size:14px;
    }


    .cypressBrands__bottom{
        grid-template-columns:
            40px minmax(0,1fr);
    }


    .cypressBrands__bottomIcon{
        width:40px;
        height:40px;

        flex-basis:40px;
    }


    .cypressBrands__bottomIcon svg{
        width:18px;
        height:18px;
    }

}






/* ==================================================
   SECTION 10 — LOCAL APPLIANCE REPAIR
================================================== */

.cypressLocal {
    position: relative;
    overflow: hidden;
    background: #fff;
}


/* ==================================================
   LAYOUT
================================================== */

.cypressLocal__layout {
    display: grid;
    grid-template-columns: minmax(360px, .9fr) minmax(0, 1.1fr);
    align-items: center;
    gap: clamp(45px, 6vw, 80px);
}


/* ==================================================
   IMAGE
================================================== */

.cypressLocal__visual {
    position: relative;

    min-height: 480px;

    overflow: hidden;

    border-radius: 20px;

    background: #e4e8eb;

    box-shadow: 0 20px 50px rgba(8, 38, 74, .1);
}


.cypressLocal__visual img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s var(--ease);
}


.cypressLocal__visual:hover img {
    transform: scale(1.035);
}


.cypressLocal__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(5, 24, 47, .58)
        );
}


/* ==================================================
   LOCATION CARD
================================================== */

.cypressLocal__location {
    position: absolute;
    z-index: 2;

    left: 18px;
    bottom: 18px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 13px;

    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 10px;

    background: rgba(5, 24, 47, .88);

    backdrop-filter: blur(12px);
}


.cypressLocal__locationIcon {
    width: 36px;
    height: 36px;

    flex: 0 0 36px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: #fff;

    background: var(--red);
}


.cypressLocal__locationIcon svg {
    width: 17px;
    height: 17px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.cypressLocal__location > div {
    display: flex;
    flex-direction: column;
}


.cypressLocal__location small {
    color: rgba(255, 255, 255, .48);

    font-size: 14px;
    line-height: 1.3;
}


.cypressLocal__location strong {
    margin-top: 1px;

    color: #fff;

    font-size: 13px;
    line-height: 1.3;
}


.cypressLocal__location div > span {
    margin-top: 1px;

    color: rgba(255, 255, 255, .57);

    font-size: 14px;
    line-height: 1.3;
}


/* ==================================================
   AVAILABILITY
================================================== */

.cypressLocal__availability {
    position: absolute;
    z-index: 2;

    top: 16px;
    right: 16px;

    display: flex;
    align-items: center;

    gap: 7px;

    padding: 8px 10px;

    border-radius: 8px;

    color: #fff;

    background: rgba(5, 24, 47, .84);

    backdrop-filter: blur(10px);

    font-size: 14px;
    font-weight: 700;
}


.cypressLocal__availability i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #51d27c;

    box-shadow: 0 0 0 3px rgba(81, 210, 124, .13);
}


/* ==================================================
   CONTENT
================================================== */

.cypressLocal__content {
    max-width: 650px;
}


.cypressLocal__content h2 {
    max-width: 590px;

    margin: 14px 0 16px;
}


.cypressLocal__content h2 strong {
    display: block;

    color: var(--red);
}


.cypressLocal__lead {
    max-width: 590px;

    margin-bottom: 9px;

    color: var(--navy) !important;

    font-size: 14px !important;
    font-weight: 600;

    line-height: 1.65;
}


.cypressLocal__content > p {
    max-width: 600px;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.7;
}


/* ==================================================
   FEATURES
================================================== */

.cypressLocal__features {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;

    margin-top: 23px;
}


.cypressLocalFeature {
    display: grid;

    grid-template-columns: 38px 1fr;

    align-items: start;

    gap: 10px;

    padding: 14px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 11px;

    background: #f6f8fa;

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        background-color .25s var(--ease);
}


.cypressLocalFeature:hover {
    transform: translateY(-2px);

    border-color: rgba(206, 0, 1, .14);

    background-color: #fff;
}


/* ==================================================
   FEATURE ICON
================================================== */

.cypressLocalFeature__icon {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);

    transition:
        color .25s var(--ease),
        background-color .25s var(--ease),
        transform .25s var(--ease);
}


.cypressLocalFeature:hover .cypressLocalFeature__icon {
    color: #fff;

    background-color: var(--red);

    transform: translateY(-1px);
}


.cypressLocalFeature__icon svg {
    width: 17px;
    height: 17px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   FEATURE TEXT
================================================== */

.cypressLocalFeature strong {
    display: block;

    margin: 1px 0 4px;

    color: var(--navy);

    font-size: 13px;
    font-weight: 800;

    line-height: 1.35;
}


.cypressLocalFeature p {
    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.55;
}


/* ==================================================
   ACTIONS
================================================== */

.cypressLocal__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 24px;
}


.cypressLocal__phone {
    display: flex;
    flex-direction: column;
}


.cypressLocal__phone small {
    color: var(--muted);

    font-size: 14px;
    line-height: 1.3;
}


.cypressLocal__phone strong {
    margin-top: 2px;

    color: var(--navy);

    font-size: 14px;
    line-height: 1.3;

    transition: color .2s var(--ease);
}


.cypressLocal__phone:hover strong {
    color: var(--red);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .cypressLocal__layout {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .cypressLocal__visual {
        max-width: 700px;
        min-height: 420px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .cypressLocal__layout {
        gap: 30px;
    }


    .cypressLocal__visual {
        min-height: 350px;

        border-radius: 16px;
    }


    .cypressLocal__features {
        grid-template-columns: 1fr;
    }


    .cypressLocal__lead {
        font-size: 14px !important;
    }


    .cypressLocal__content > p {
        font-size: 13px;
    }


    .cypressLocalFeature p {
        font-size: 14px;
    }


    .cypressLocal__actions {
        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .cypressLocal__actions .btn {
        width: 100%;
    }


    .cypressLocal__phone {
        align-items: center;

        text-align: center;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 420px) {

    .cypressLocal__visual {
        min-height: 320px;
    }


    .cypressLocal__location {
        left: 12px;
        right: 12px;
        bottom: 12px;

        padding: 10px 11px;
    }


    .cypressLocal__availability {
        top: 12px;
        right: 12px;
    }


    .cypressLocalFeature {
        padding: 13px;
    }

}











/* ==================================================
   SECTION 11 — FINAL CTA
================================================== */

.cypressFinalCta {
    position: relative;
    overflow: hidden;

    background: #061a33;
    color: #fff;
}


/* ==================================================
   BACKGROUND IMAGE
================================================== */

.cypressFinalCta__media {
    position: absolute;
    inset: 0 0 0 43%;

    overflow: hidden;
}


.cypressFinalCta__media img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform .8s var(--ease);
}


.cypressFinalCta:hover .cypressFinalCta__media img {
    transform: scale(1.025);
}


/* ==================================================
   OVERLAY
================================================== */

.cypressFinalCta__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            #061a33 0%,
            #061a33 38%,
            rgba(6, 26, 51, .95) 52%,
            rgba(6, 26, 51, .76) 72%,
            rgba(6, 26, 51, .58) 100%
        );
}


/* ==================================================
   LAYOUT
================================================== */

.cypressFinalCta__layout {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(290px, 330px);

    align-items: center;

    gap: clamp(45px, 6vw, 75px);

    padding-top: clamp(65px, 7vw, 90px);
    padding-bottom: clamp(65px, 7vw, 90px);
}


/* ==================================================
   CONTENT
================================================== */

.cypressFinalCta__content {
    max-width: 650px;
}


.cypressFinalCta__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5b5b;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.cypressFinalCta__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.cypressFinalCta__content h2 {
    max-width: 590px;

    margin: 14px 0 16px;

    color: #fff;
}


.cypressFinalCta__content h2 strong {
    display: block;

    color: #ff5757;
}


.cypressFinalCta__content > p {
    max-width: 580px;

    margin: 0;

    color: rgba(255, 255, 255, .65);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   BENEFITS
================================================== */

.cypressFinalCta__benefits {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 9px 20px;

    margin-top: 22px;
}


.cypressFinalCta__benefits span {
    display: flex;
    align-items: center;

    gap: 7px;

    color: rgba(255, 255, 255, .72);

    font-size: 14px;
    font-weight: 600;
}


.cypressFinalCta__benefits i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   ACTIONS
================================================== */

.cypressFinalCta__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 26px;
}


.cypressFinalCta__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: #fff;

    font-size: 14px;
    font-weight: 800;
}


.cypressFinalCta__link > span {
    color: #ff5757;

    font-size: 16px;

    transition: transform .2s var(--ease);
}


.cypressFinalCta__link:hover > span {
    transform: translateX(4px);
}


/* ==================================================
   SERVICE CARD
================================================== */

.cypressFinalCta__card {
    padding: 23px;

    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 17px;

    background: rgba(5, 23, 45, .86);

    box-shadow: 0 20px 50px rgba(0, 0, 0, .2);

    backdrop-filter: blur(14px);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease);
}


.cypressFinalCta__card:hover {
    transform: translateY(-3px);

    border-color: rgba(255, 255, 255, .2);
}


.cypressFinalCta__cardLabel {
    display: block;

    margin-bottom: 7px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.cypressFinalCta__card h3 {
    margin: 0 0 8px;

    color: #fff;

    font-size: 19px;
    line-height: 1.3;
}


.cypressFinalCta__card > p {
    margin: 0;

    color: rgba(255, 255, 255, .56);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   CARD DETAILS
================================================== */

.cypressFinalCta__details {
    margin-top: 17px;

    border-top: 1px solid rgba(255, 255, 255, .08);
}


.cypressFinalCtaDetail {
    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 0;

    border-bottom: 1px solid rgba(255, 255, 255, .08);
}


.cypressFinalCtaDetail__icon {
    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);

    transition:
        transform .25s var(--ease),
        background-color .25s var(--ease);
}


.cypressFinalCtaDetail:hover .cypressFinalCtaDetail__icon {
    transform: translateY(-1px);

    background-color: #e40002;
}


.cypressFinalCtaDetail__icon svg {
    width: 16px;
    height: 16px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.cypressFinalCtaDetail > div {
    display: flex;
    flex-direction: column;
}


.cypressFinalCtaDetail small {
    color: rgba(255, 255, 255, .4);

    font-size: 14px;
    line-height: 1.3;
}


.cypressFinalCtaDetail strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
    line-height: 1.35;
}


/* ==================================================
   CARD BUTTON
================================================== */

.cypressFinalCta__cardButton {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-top: 16px;

    padding: 12px 14px;

    border-radius: 8px;

    color: #fff;

    background: var(--red);

    font-size: 14px;
    font-weight: 800;

    transition:
        transform .25s var(--ease),
        box-shadow .25s var(--ease),
        background-color .25s var(--ease);
}


.cypressFinalCta__cardButton > span {
    font-size: 16px;

    transition: transform .2s var(--ease);
}


.cypressFinalCta__cardButton:hover {
    transform: translateY(-2px);

    background-color: #e40002;

    box-shadow: 0 10px 25px rgba(206, 0, 1, .2);
}


.cypressFinalCta__cardButton:hover > span {
    transform: translateX(3px);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .cypressFinalCta__media {
        inset: 0;
    }


    .cypressFinalCta__overlay {
        background: rgba(6, 26, 51, .9);
    }


    .cypressFinalCta__layout {
        grid-template-columns: 1fr;

        gap: 32px;
    }


    .cypressFinalCta__card {
        max-width: 500px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .cypressFinalCta__layout {
        padding-top: 55px;
        padding-bottom: 55px;
    }


    .cypressFinalCta__content > p {
        font-size: 13px;
    }


    .cypressFinalCta__benefits {
        align-items: flex-start;
        flex-direction: column;
    }


    .cypressFinalCta__actions {
        align-items: stretch;
        flex-direction: column;

        gap: 13px;
    }


    .cypressFinalCta__actions .btn {
        width: 100%;
    }


    .cypressFinalCta__link {
        justify-content: center;

        min-height: 42px;

        border: 1px solid rgba(255, 255, 255, .14);
        border-radius: 8px;
    }


    .cypressFinalCta__card {
        padding: 20px;
    }


    .cypressFinalCta__card h3 {
        font-size: 18px;
    }

}



























/* ==================================================
   SECTION 1 — REFRIGERATOR REPAIR HERO
================================================== */

.refrigeratorHero {
    position: relative;

    min-height: 620px;

    display: flex;
    align-items: stretch;

    overflow: hidden;

    color: #fff;

    background: #061a33;
}


/* ==================================================
   IMAGE
================================================== */

.refrigeratorHero__media {
    position: absolute;
    inset: 0;
}


.refrigeratorHero__media img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform .8s var(--ease);
}


.refrigeratorHero:hover .refrigeratorHero__media img {
    transform: scale(1.02);
}


/* ==================================================
   OVERLAY
================================================== */

.refrigeratorHero__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(4, 18, 35, .99) 0%,
            rgba(5, 23, 44, .97) 37%,
            rgba(5, 23, 44, .78) 62%,
            rgba(5, 23, 44, .34) 100%
        ),
        linear-gradient(
            0deg,
            rgba(4, 18, 35, .38),
            transparent 55%
        );
}


/* ==================================================
   LAYOUT
================================================== */

.refrigeratorHero__container {
    position: relative;
    z-index: 3;

    width: 100%;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(280px, 320px);

    align-items: center;

    gap: clamp(50px, 6vw, 80px);

    padding-top: 105px;
    padding-bottom: 110px;
}


/* ==================================================
   CONTENT
================================================== */

.refrigeratorHero__content {
    max-width: 720px;
}


.refrigeratorHero__eyebrow {
    display: flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.refrigeratorHero__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.refrigeratorHero h1 {
    max-width: 680px;

    margin: 15px 0 18px;

    color: #fff;

    font-size: clamp(42px, 5vw, 66px);
    line-height: .98;

    letter-spacing: -.045em;
}


.refrigeratorHero h1 strong {
    display: block;

    color: #ff5757;
}


.refrigeratorHero__lead {
    max-width: 620px;

    margin: 0;

    color: rgba(255, 255, 255, .66);

    font-size: 14px;
    line-height: 1.72;
}


/* ==================================================
   FEATURES
================================================== */

.refrigeratorHero__features {
    max-width: 650px;

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 9px;

    margin-top: 25px;
}


.refrigeratorHeroFeature {
    display: flex;
    align-items: center;

    gap: 10px;

    min-height: 56px;

    padding: 10px 11px;

    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 9px;

    background: rgba(255, 255, 255, .035);

    backdrop-filter: blur(7px);

    transition:
        transform .25s var(--ease),
        background-color .25s var(--ease),
        border-color .25s var(--ease);
}


.refrigeratorHeroFeature:hover {
    transform: translateY(-2px);

    border-color: rgba(255, 87, 87, .22);

    background-color: rgba(255, 255, 255, .055);
}


.refrigeratorHeroFeature__icon {
    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #ff5757;

    background: rgba(206, 0, 1, .12);
}


.refrigeratorHeroFeature__icon svg {
    width: 16px;
    height: 16px;

    display: block;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorHeroFeature > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorHeroFeature strong {
    color: #fff;

    font-size: 14px;
    line-height: 1.3;
}


.refrigeratorHeroFeature span {
    margin-top: 2px;

    color: rgba(255, 255, 255, .44);

    font-size: 14px;
    line-height: 1.3;
}


/* ==================================================
   ACTIONS
================================================== */

.refrigeratorHero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 11px;

    margin-top: 25px;
}


.btn--outlineLight {
    border: 1px solid rgba(255, 255, 255, .24);

    color: #fff;

    background: rgba(255, 255, 255, .025);

    transition:
        background-color .25s var(--ease),
        border-color .25s var(--ease);
}


.btn--outlineLight:hover {
    border-color: rgba(255, 255, 255, .48);

    background-color: rgba(255, 255, 255, .07);
}


/* ==================================================
   SERVICE CARD
================================================== */

.refrigeratorHero__card {
    padding: 23px;

    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 17px;

    background: rgba(5, 23, 45, .82);

    box-shadow: 0 24px 55px rgba(0, 0, 0, .22);

    backdrop-filter: blur(14px);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease);
}


.refrigeratorHero__card:hover {
    transform: translateY(-3px);

    border-color: rgba(255, 255, 255, .2);
}


.refrigeratorHero__cardLabel {
    display: block;

    margin-bottom: 7px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.refrigeratorHero__card h3 {
    margin: 0 0 9px;

    color: #fff;

    font-size: 19px;
    line-height: 1.3;
}


.refrigeratorHero__card > p {
    margin: 0;

    color: rgba(255, 255, 255, .55);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   CARD LIST
================================================== */

.refrigeratorHero__cardList {
    display: flex;
    flex-direction: column;

    gap: 10px;

    margin-top: 17px;
    padding-top: 15px;

    border-top: 1px solid rgba(255, 255, 255, .08);
}


.refrigeratorHero__cardList > div {
    display: flex;
    align-items: center;

    gap: 8px;

    color: rgba(255, 255, 255, .72);

    font-size: 14px;
    line-height: 1.4;
}


.refrigeratorHero__cardList > div > span {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   CARD LINK
================================================== */

.refrigeratorHero__cardLink {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;

    margin-top: 18px;

    padding: 12px 14px;

    border-radius: 8px;

    color: #fff;

    background: var(--red);

    font-size: 14px;
    font-weight: 800;

    transition:
        transform .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorHero__cardLink > span {
    font-size: 16px;

    transition: transform .2s var(--ease);
}


.refrigeratorHero__cardLink:hover {
    transform: translateY(-2px);

    background-color: #e40002;
}


.refrigeratorHero__cardLink:hover > span {
    transform: translateX(3px);
}


/* ==================================================
   BOTTOM BAR
================================================== */

.refrigeratorHero__bar {
    position: absolute;
    z-index: 5;

    left: 0;
    right: 0;
    bottom: 0;

    min-height: 46px;

    display: flex;
    align-items: center;

    background: var(--red);
}


.refrigeratorHero__barInner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 25px;
}


.refrigeratorHero__barInner span {
    color: #fff;

    font-size: 14px;
    font-weight: 700;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorHero__container {
        grid-template-columns: 1fr;

        gap: 32px;

        padding-top: 80px;
        padding-bottom: 100px;
    }


    .refrigeratorHero__card {
        max-width: 500px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorHero {
        min-height: auto;
    }


    .refrigeratorHero__overlay {
        background: rgba(4, 18, 35, .9);
    }


    .refrigeratorHero h1 {
        font-size: 40px;
    }


    .refrigeratorHero__lead {
        font-size: 13px;
    }


    .refrigeratorHero__features {
        grid-template-columns: 1fr;
    }


    .refrigeratorHero__actions {
        align-items: stretch;
        flex-direction: column;
    }


    .refrigeratorHero__actions .btn {
        width: 100%;
    }


    .refrigeratorHero__barInner {
        justify-content: flex-start;
        overflow: hidden;
    }


    .refrigeratorHero__barInner span:nth-child(n+3) {
        display: none;
    }

}


/* ==================================================
   END SECTION 1 — REFRIGERATOR REPAIR HERO
================================================== */







/* ==================================================
   SECTION 2 — RELIABLE REFRIGERATOR REPAIR SERVICE
================================================== */

.refrigeratorReliable {
    position: relative;
    overflow: hidden;

    background: #fff;
}


/* ==================================================
   LAYOUT
================================================== */

.refrigeratorReliable__layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(380px, .95fr);

    align-items: center;

    gap: clamp(50px, 7vw, 90px);
}


/* ==================================================
   CONTENT
================================================== */

.refrigeratorReliable__content {
    max-width: 680px;
}


.refrigeratorReliable__content h2 {
    max-width: 620px;

    margin: 14px 0 17px;
}


.refrigeratorReliable__content h2 strong {
    display: block;

    color: var(--red);
}


.refrigeratorReliable__lead {
    max-width: 620px;

    margin: 0 0 11px;

    color: var(--navy) !important;

    font-size: 15px !important;
    font-weight: 600;

    line-height: 1.7;
}


.refrigeratorReliable__content > p {
    max-width: 620px;

    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.75;
}

.seoContent .refrigeratorReliable__layout {
    display: block;
}

.seoContent .refrigeratorReliable__content,
.seoContent .refrigeratorReliable__content h2,
.seoContent .refrigeratorReliable__lead,
.seoContent .refrigeratorReliable__content > p {
    max-width: none;
}


/* ==================================================
   FEATURES
================================================== */

.refrigeratorReliable__features {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 11px;

    margin-top: 25px;
}


.refrigeratorReliableFeature {
    display: grid;

    grid-template-columns: 40px 1fr;

    align-items: start;

    gap: 11px;

    padding: 15px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 11px;

    background: #f6f8fa;

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorReliableFeature:hover {
    transform: translateY(-2px);

    border-color: rgba(206, 0, 1, .14);

    background-color: #fff;
}


/* ==================================================
   FEATURE ICON
================================================== */

.refrigeratorReliableFeature__icon {
    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);

    transition:
        color .25s var(--ease),
        background-color .25s var(--ease),
        transform .25s var(--ease);
}


.refrigeratorReliableFeature:hover
.refrigeratorReliableFeature__icon {
    color: #fff;

    background-color: var(--red);

    transform: translateY(-1px);
}


.refrigeratorReliableFeature__icon svg {
    width: 18px;
    height: 18px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   FEATURE TEXT
================================================== */

.refrigeratorReliableFeature strong {
    display: block;

    margin: 1px 0 4px;

    color: var(--navy);

    font-size: 13px;
    font-weight: 800;

    line-height: 1.35;
}


.refrigeratorReliableFeature p {
    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.55;
}


/* ==================================================
   ACTIONS
================================================== */

.refrigeratorReliable__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 27px;
}


.refrigeratorReliable__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.refrigeratorReliable__link span {
    font-size: 17px;

    transition: transform .2s var(--ease);
}


.refrigeratorReliable__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   IMAGE
================================================== */

.refrigeratorReliable__visual {
    position: relative;

    min-height: 455px;

    overflow: hidden;

    border-radius: 20px;

    background: #e6eaed;

    box-shadow: 0 20px 50px rgba(8, 38, 74, .1);
}


.refrigeratorReliable__visual > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s var(--ease);
}


.refrigeratorReliable__visual:hover > img {
    transform: scale(1.035);
}


/* ==================================================
   IMAGE CARD
================================================== */

.refrigeratorReliable__imageCard {
    position: absolute;
    z-index: 2;

    left: 17px;
    right: 17px;
    bottom: 17px;

    display: flex;
    align-items: center;

    gap: 11px;

    padding: 13px 14px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 11px;

    background: rgba(5, 24, 47, .88);

    backdrop-filter: blur(12px);
}


.refrigeratorReliable__imageIcon {
    width: 40px;
    height: 40px;

    flex: 0 0 40px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: #fff;

    background: var(--red);
}


.refrigeratorReliable__imageIcon svg {
    width: 18px;
    height: 18px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorReliable__imageCard > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorReliable__imageCard small {
    color: rgba(255, 255, 255, .45);

    font-size: 14px;
    line-height: 1.3;
}


.refrigeratorReliable__imageCard strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.35;
}


.refrigeratorReliable__imageCard div > span {
    margin-top: 2px;

    color: rgba(255, 255, 255, .55);

    font-size: 14px;
    line-height: 1.3;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorReliable__layout {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .refrigeratorReliable__visual {
        max-width: 720px;
        min-height: 420px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorReliable__lead {
        font-size: 14px !important;
    }


    .refrigeratorReliable__content > p {
        font-size: 13px;
    }


    .refrigeratorReliable__features {
        grid-template-columns: 1fr;
    }


    .refrigeratorReliable__actions {
        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .refrigeratorReliable__actions .btn {
        width: 100%;
    }


    .refrigeratorReliable__link {
        justify-content: center;
    }


    .refrigeratorReliable__visual {
        min-height: 350px;

        border-radius: 16px;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 420px) {

    .refrigeratorReliable__visual {
        min-height: 320px;
    }


    .refrigeratorReliable__imageCard {
        left: 12px;
        right: 12px;
        bottom: 12px;
    }

}


/* ==================================================
   END SECTION 2 — RELIABLE REFRIGERATOR REPAIR SERVICE
================================================== */





/* ==================================================
   SECTION 3 — COMMON REFRIGERATOR PROBLEMS WE REPAIR
================================================== */

.refrigeratorProblems {
    position: relative;
    overflow: hidden;

    background: #f5f7f9;
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorProblems__head {
    max-width: 750px;

    margin: 0 auto 42px;

    text-align: center;
}


.refrigeratorProblems__head .eyebrow {
    justify-content: center;
}


.refrigeratorProblems__head h2 {
    margin: 14px 0 16px;
}


.refrigeratorProblems__head h2 strong {
    color: var(--red);
}


.refrigeratorProblems__head p {
    max-width: 640px;

    margin: 0 auto;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   GRID
================================================== */

.refrigeratorProblems__grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 14px;
}


/* ==================================================
   CARD
================================================== */

.refrigeratorProblemCard {
    position: relative;

    min-height: 225px;

    padding: 22px;

    overflow: hidden;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #fff;

    box-shadow: 0 8px 25px rgba(8, 38, 74, .035);

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        box-shadow .25s var(--ease);
}


.refrigeratorProblemCard:hover {
    transform: translateY(-4px);

    border-color: rgba(206, 0, 1, .14);

    box-shadow: 0 16px 36px rgba(8, 38, 74, .07);
}


/* ==================================================
   NUMBER
================================================== */

.refrigeratorProblemCard__number {
    position: absolute;

    top: 15px;
    right: 16px;

    color: rgba(8, 38, 74, .18);

    font-size: 14px;
    font-weight: 800;
}


/* ==================================================
   ICON
================================================== */

.refrigeratorProblemCard__icon {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    margin-bottom: 18px;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);

    transition:
        color .25s var(--ease),
        background-color .25s var(--ease),
        transform .25s var(--ease);
}


.refrigeratorProblemCard:hover
.refrigeratorProblemCard__icon {
    color: #fff;

    background-color: var(--red);

    transform: translateY(-1px);
}


.refrigeratorProblemCard__icon svg {
    width: 19px;
    height: 19px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   TEXT
================================================== */

.refrigeratorProblemCard h3 {
    max-width: 220px;

    margin: 0 0 8px;

    color: var(--navy);

    font-size: 15px;
    font-weight: 800;

    line-height: 1.35;
}


.refrigeratorProblemCard p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   BOTTOM CTA
================================================== */

.refrigeratorProblems__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-top: 22px;

    padding: 20px 22px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;
}


.refrigeratorProblems__bottom > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorProblems__bottom span {
    margin-bottom: 3px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .05em;

    text-transform: uppercase;
}


.refrigeratorProblems__bottom strong {
    color: var(--navy);

    font-size: 15px;
    line-height: 1.4;
}


.refrigeratorProblems__bottom p {
    max-width: 620px;

    margin: 3px 0 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.55;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 1050px) {

    .refrigeratorProblems__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorProblems__head {
        margin-bottom: 32px;

        text-align: left;
    }


    .refrigeratorProblems__head .eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorProblems__head p {
        font-size: 13px;
    }


    .refrigeratorProblems__grid {
        grid-template-columns: 1fr;
    }


    .refrigeratorProblemCard {
        min-height: auto;
    }


    .refrigeratorProblemCard p {
        font-size: 13px;
    }


    .refrigeratorProblems__bottom {
        align-items: stretch;
        flex-direction: column;
    }


    .refrigeratorProblems__bottom p {
        font-size: 13px;
    }


    .refrigeratorProblems__bottom .btn {
        width: 100%;
    }

}


/* ==================================================
   END SECTION 3 — COMMON REFRIGERATOR PROBLEMS WE REPAIR
================================================== */





/* ==================================================
   SECTION 4 — TYPES OF REFRIGERATORS WE SERVICE
================================================== */

.refrigeratorTypes {
    position: relative;
    overflow: hidden;

    background: #fff;
}


/* ==================================================
   LAYOUT
================================================== */

.refrigeratorTypes__layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.08fr)
        minmax(380px, .92fr);

    align-items: center;

    gap: clamp(50px, 7vw, 90px);
}


/* ==================================================
   CONTENT
================================================== */

.refrigeratorTypes__content {
    max-width: 700px;
}


.refrigeratorTypes__content h2 {
    max-width: 620px;

    margin: 14px 0 16px;
}


.refrigeratorTypes__content h2 strong {
    display: block;

    color: var(--red);
}


.refrigeratorTypes__lead {
    max-width: 620px;

    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   TYPES LIST
================================================== */

.refrigeratorTypes__list {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 11px;

    margin-top: 26px;
}


/* ==================================================
   TYPE ITEM
================================================== */

.refrigeratorTypeItem {
    position: relative;

    display: grid;

    grid-template-columns:
        32px minmax(0, 1fr);

    gap: 11px;

    padding: 15px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 11px;

    background: #f6f8fa;

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        background-color .25s var(--ease),
        box-shadow .25s var(--ease);
}


.refrigeratorTypeItem:hover {
    transform: translateY(-2px);

    border-color: rgba(206, 0, 1, .14);

    background-color: #fff;

    box-shadow: 0 10px 28px rgba(8, 38, 74, .05);
}


/* ==================================================
   NUMBER
================================================== */

.refrigeratorTypeItem__number {
    width: 32px;
    height: 32px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);

    font-size: 14px;
    font-weight: 800;

    transition:
        color .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorTypeItem:hover
.refrigeratorTypeItem__number {
    color: #fff;

    background-color: var(--red);
}


/* ==================================================
   TYPE TEXT
================================================== */

.refrigeratorTypeItem h3 {
    margin: 1px 0 5px;

    color: var(--navy);

    font-size: 14px;
    font-weight: 800;

    line-height: 1.35;
}


.refrigeratorTypeItem p {
    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   ACTIONS
================================================== */

.refrigeratorTypes__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 26px;
}


.refrigeratorTypes__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.refrigeratorTypes__link span {
    font-size: 17px;

    transition: transform .2s var(--ease);
}


.refrigeratorTypes__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   VISUAL
================================================== */

.refrigeratorTypes__visual {
    position: relative;

    min-height: 525px;

    overflow: hidden;

    border-radius: 20px;

    background: #e5e9ec;

    box-shadow: 0 20px 50px rgba(8, 38, 74, .1);
}


.refrigeratorTypes__visual > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s var(--ease);
}


.refrigeratorTypes__visual:hover > img {
    transform: scale(1.035);
}


.refrigeratorTypes__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(5, 24, 47, .56)
        );
}


/* ==================================================
   VISUAL CARD
================================================== */

.refrigeratorTypes__visualCard {
    position: absolute;
    z-index: 2;

    left: 17px;
    right: 17px;
    bottom: 17px;

    display: flex;
    align-items: center;

    gap: 11px;

    padding: 13px 14px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 11px;

    background: rgba(5, 24, 47, .88);

    backdrop-filter: blur(12px);
}


.refrigeratorTypes__visualIcon {
    width: 40px;
    height: 40px;

    flex: 0 0 40px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: #fff;

    background: var(--red);
}


.refrigeratorTypes__visualIcon svg {
    width: 18px;
    height: 18px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorTypes__visualCard > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorTypes__visualCard small {
    color: rgba(255, 255, 255, .45);

    font-size: 14px;
}


.refrigeratorTypes__visualCard strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.35;
}


.refrigeratorTypes__visualCard div > span {
    margin-top: 2px;

    color: rgba(255, 255, 255, .55);

    font-size: 14px;
}


/* ==================================================
   PREMIUM BADGE
================================================== */

.refrigeratorTypes__premium {
    position: absolute;
    z-index: 2;

    top: 17px;
    right: 17px;

    display: flex;
    flex-direction: column;

    padding: 10px 12px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 9px;

    background: rgba(5, 24, 47, .84);

    backdrop-filter: blur(10px);
}


.refrigeratorTypes__premium small {
    color: rgba(255, 255, 255, .43);

    font-size: 14px;
}


.refrigeratorTypes__premium strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorTypes__layout {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .refrigeratorTypes__visual {
        max-width: 720px;
        min-height: 430px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorTypes__lead {
        font-size: 13px;
    }


    .refrigeratorTypes__list {
        grid-template-columns: 1fr;
    }


    .refrigeratorTypeItem p {
        font-size: 14px;
    }


    .refrigeratorTypes__actions {
        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .refrigeratorTypes__actions .btn {
        width: 100%;
    }


    .refrigeratorTypes__link {
        justify-content: center;
    }


    .refrigeratorTypes__visual {
        min-height: 350px;

        border-radius: 16px;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 420px) {

    .refrigeratorTypes__visual {
        min-height: 320px;
    }


    .refrigeratorTypes__visualCard {
        left: 12px;
        right: 12px;
        bottom: 12px;
    }

}


/* ==================================================
   END SECTION 4 — TYPES OF REFRIGERATORS WE SERVICE
================================================== */






/* ==================================================
   SECTION 5 — REFRIGERATOR BRANDS WE SERVICE
================================================== */

.refrigeratorBrands {
    position: relative;
    overflow: hidden;

    background: #f5f7f9;
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorBrands__head {
    max-width: 760px;

    margin: 0 auto 40px;

    text-align: center;
}


.refrigeratorBrands__head .eyebrow {
    justify-content: center;
}


.refrigeratorBrands__head h2 {
    margin: 14px 0 16px;
}


.refrigeratorBrands__head h2 strong {
    color: var(--red);
}


.refrigeratorBrands__head p {
    max-width: 650px;

    margin: 0 auto;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   BRANDS GRID
================================================== */

.refrigeratorBrands__grid {
    display: grid;

    grid-template-columns:
        repeat(8, minmax(0, 1fr));

    overflow: hidden;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #fff;

    box-shadow: 0 10px 30px rgba(8, 38, 74, .035);
}


/* ==================================================
   BRAND ITEM
================================================== */

.refrigeratorBrand {
    position: relative;

    min-height: 105px;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;

    gap: 7px;

    padding: 20px 10px;

    border-right: 1px solid rgba(8, 38, 74, .07);
    border-bottom: 1px solid rgba(8, 38, 74, .07);

    transition:
        background-color .25s var(--ease),
        transform .25s var(--ease);
}


.refrigeratorBrand:nth-child(8n) {
    border-right: 0;
}


.refrigeratorBrand:nth-last-child(-n + 8) {
    border-bottom: 0;
}


.refrigeratorBrand:hover {
    z-index: 2;

    transform: translateY(-2px);

    background-color: #f8fafb;
}


/* ==================================================
   BRAND NUMBER
================================================== */

.refrigeratorBrand span {
    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    line-height: 1;
}


/* ==================================================
   BRAND NAME
================================================== */

.refrigeratorBrand strong {
    color: var(--navy);

    font-size: 14px;
    font-weight: 800;

    line-height: 1.3;

    text-align: center;

    transition: color .25s var(--ease);
}


.refrigeratorBrand:hover strong {
    color: var(--red);
}


/* ==================================================
   BOTTOM CTA
================================================== */

.refrigeratorBrands__bottom {
    display: grid;

    grid-template-columns:
        44px minmax(0, 1fr) auto;

    align-items: center;

    gap: 15px;

    margin-top: 20px;

    padding: 19px 20px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;
}


/* ==================================================
   BOTTOM ICON
================================================== */

.refrigeratorBrands__bottomIcon {
    width: 44px;
    height: 44px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);
}


.refrigeratorBrands__bottomIcon svg {
    width: 20px;
    height: 20px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   BOTTOM CONTENT
================================================== */

.refrigeratorBrands__bottomContent {
    display: flex;
    flex-direction: column;
}


.refrigeratorBrands__bottomContent span {
    margin-bottom: 3px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .05em;

    text-transform: uppercase;
}


.refrigeratorBrands__bottomContent strong {
    color: var(--navy);

    font-size: 15px;
    font-weight: 800;

    line-height: 1.4;
}


.refrigeratorBrands__bottomContent p {
    max-width: 650px;

    margin: 3px 0 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.55;
}


/* ==================================================
   LARGE TABLET
================================================== */

@media (max-width: 1100px) {

    .refrigeratorBrands__grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));
    }


    .refrigeratorBrand:nth-child(8n) {
        border-right: 1px solid rgba(8, 38, 74, .07);
    }


    .refrigeratorBrand:nth-child(4n) {
        border-right: 0;
    }


    .refrigeratorBrand:nth-last-child(-n + 8) {
        border-bottom: 1px solid rgba(8, 38, 74, .07);
    }


    .refrigeratorBrand:nth-last-child(-n + 4) {
        border-bottom: 0;
    }

}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 760px) {

    .refrigeratorBrands__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    .refrigeratorBrand:nth-child(4n) {
        border-right: 1px solid rgba(8, 38, 74, .07);
    }


    .refrigeratorBrand:nth-child(2n) {
        border-right: 0;
    }


    .refrigeratorBrand:nth-last-child(-n + 4) {
        border-bottom: 1px solid rgba(8, 38, 74, .07);
    }


    .refrigeratorBrand:nth-last-child(-n + 2) {
        border-bottom: 0;
    }


    .refrigeratorBrands__bottom {
        grid-template-columns:
            44px minmax(0, 1fr);
    }


    .refrigeratorBrands__bottom .btn {
        grid-column: 1 / -1;

        width: 100%;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 520px) {

    .refrigeratorBrands__head {
        margin-bottom: 30px;

        text-align: left;
    }


    .refrigeratorBrands__head .eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorBrands__head p {
        font-size: 13px;
    }


    .refrigeratorBrand {
        min-height: 90px;

        padding: 17px 8px;
    }


    .refrigeratorBrand strong {
        font-size: 13px;
    }


    .refrigeratorBrands__bottom {
        grid-template-columns: 1fr;

        padding: 18px;
    }


    .refrigeratorBrands__bottomIcon {
        width: 40px;
        height: 40px;
    }


    .refrigeratorBrands__bottomContent p {
        font-size: 13px;
    }

}


/* ==================================================
   END SECTION 5 — REFRIGERATOR BRANDS WE SERVICE
================================================== */





/* ==================================================
   SECTION 6 — WHY CHOOSE MEGA APPLIANCE REPAIR
================================================== */

.refrigeratorWhy {
    position: relative;
    overflow: hidden;

    background: #fff;
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorWhy__head {
    max-width: 760px;

    margin: 0 auto 42px;

    text-align: center;
}


.refrigeratorWhy__head .eyebrow {
    justify-content: center;
}


.refrigeratorWhy__head h2 {
    margin: 14px 0 16px;
}


.refrigeratorWhy__head h2 strong {
    color: var(--red);
}


.refrigeratorWhy__head p {
    max-width: 650px;

    margin: 0 auto;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   GRID
================================================== */

.refrigeratorWhy__grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 14px;
}


/* ==================================================
   CARD
================================================== */

.refrigeratorWhyCard {
    position: relative;

    min-height: 230px;

    padding: 22px;

    overflow: hidden;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #f6f8fa;

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        background-color .25s var(--ease),
        box-shadow .25s var(--ease);
}


.refrigeratorWhyCard:hover {
    transform: translateY(-4px);

    border-color: rgba(206, 0, 1, .14);

    background-color: #fff;

    box-shadow: 0 15px 35px rgba(8, 38, 74, .07);
}


/* ==================================================
   NUMBER
================================================== */

.refrigeratorWhyCard__number {
    position: absolute;

    top: 17px;
    right: 18px;

    color: rgba(8, 38, 74, .18);

    font-size: 14px;
    font-weight: 800;
}


/* ==================================================
   ICON
================================================== */

.refrigeratorWhyCard__icon {
    width: 44px;
    height: 44px;

    display: grid;
    place-items: center;

    margin-bottom: 18px;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);

    transition:
        color .25s var(--ease),
        background-color .25s var(--ease),
        transform .25s var(--ease);
}


.refrigeratorWhyCard:hover
.refrigeratorWhyCard__icon {
    color: #fff;

    background-color: var(--red);

    transform: translateY(-2px);
}


.refrigeratorWhyCard__icon svg {
    width: 20px;
    height: 20px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   CARD TEXT
================================================== */

.refrigeratorWhyCard h3 {
    max-width: 270px;

    margin: 0 0 8px;

    color: var(--navy);

    font-size: 15px;
    font-weight: 800;

    line-height: 1.4;
}


.refrigeratorWhyCard p {
    max-width: 310px;

    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   BOTTOM CTA
================================================== */

.refrigeratorWhy__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-top: 22px;

    padding: 20px 22px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #f6f8fa;
}


.refrigeratorWhy__bottomContent {
    display: flex;
    flex-direction: column;
}


.refrigeratorWhy__bottomContent > span {
    margin-bottom: 3px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .05em;

    text-transform: uppercase;
}


.refrigeratorWhy__bottomContent > strong {
    color: var(--navy);

    font-size: 15px;
    font-weight: 800;

    line-height: 1.4;
}


.refrigeratorWhy__bottomContent > p {
    margin: 3px 0 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.55;
}


/* ==================================================
   BOTTOM ACTIONS
================================================== */

.refrigeratorWhy__bottomActions {
    display: flex;
    align-items: center;

    gap: 22px;

    flex-shrink: 0;
}


.refrigeratorWhy__phone {
    display: flex;
    flex-direction: column;

    text-align: right;
}


.refrigeratorWhy__phone small {
    color: var(--muted);

    font-size: 14px;
    line-height: 1.3;
}


.refrigeratorWhy__phone strong {
    margin-top: 2px;

    color: var(--navy);

    font-size: 14px;
    line-height: 1.3;

    transition: color .2s var(--ease);
}


.refrigeratorWhy__phone:hover strong {
    color: var(--red);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorWhy__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    .refrigeratorWhy__bottom {
        align-items: flex-start;
        flex-direction: column;
    }


    .refrigeratorWhy__phone {
        text-align: left;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorWhy__head {
        margin-bottom: 32px;

        text-align: left;
    }


    .refrigeratorWhy__head .eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorWhy__head p {
        font-size: 13px;
    }


    .refrigeratorWhy__grid {
        grid-template-columns: 1fr;
    }


    .refrigeratorWhyCard {
        min-height: auto;
    }


    .refrigeratorWhyCard p {
        font-size: 13px;
    }


    .refrigeratorWhy__bottom {
        padding: 18px;
    }


    .refrigeratorWhy__bottomActions {
        width: 100%;

        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .refrigeratorWhy__phone {
        text-align: center;
    }


    .refrigeratorWhy__bottomActions .btn {
        width: 100%;
    }

}


/* ==================================================
   END SECTION 6 — WHY CHOOSE MEGA APPLIANCE REPAIR
================================================== */






/* ==================================================
   SECTION 7 — OUR TECHNICIANS IN ACTION
================================================== */

.refrigeratorTechnicians {
    position: relative;
    overflow: hidden;

    background: #f5f7f9;
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorTechnicians__head {
    max-width: 740px;

    margin: 0 auto 38px;

    text-align: center;
}


.refrigeratorTechnicians__head .eyebrow {
    justify-content: center;
}


.refrigeratorTechnicians__head h2 {
    margin: 14px 0 15px;
}


.refrigeratorTechnicians__head h2 strong {
    color: var(--red);
}


.refrigeratorTechnicians__head p {
    max-width: 620px;

    margin: 0 auto;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   GALLERY GRID
================================================== */

.refrigeratorTechnicians__grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 12px;
}


/* ==================================================
   PHOTO CARD
================================================== */

.refrigeratorTechnicianPhoto {
    position: relative;

    width: 100%;

    aspect-ratio: 1 / 1;

    min-width: 0;

    overflow: hidden;

    border: 1px solid rgba(8, 38, 74, .06);
    border-radius: 14px;

    background: #e8edf1;

    box-shadow:
        0 8px 24px rgba(8, 38, 74, .05);

    transition:
        transform .3s var(--ease),
        box-shadow .3s var(--ease),
        border-color .3s var(--ease);
}


.refrigeratorTechnicianPhoto:hover {
    transform: translateY(-3px);

    border-color: rgba(206, 0, 1, .12);

    box-shadow:
        0 14px 32px rgba(8, 38, 74, .08);
}


/* ==================================================
   IMAGE
================================================== */

.refrigeratorTechnicianPhoto img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .5s var(--ease);
}


.refrigeratorTechnicianPhoto:hover img {
    transform: scale(1.025);
}


/* ==================================================
   INDIVIDUAL IMAGE POSITION
   Підганяємо кожне фото окремо
================================================== */

.refrigeratorTechnicianPhoto:nth-child(1) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(2) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(3) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(4) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(5) img {
    object-position: center 35%;
}


.refrigeratorTechnicianPhoto:nth-child(6) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(7) img {
    object-position: center center;
}


.refrigeratorTechnicianPhoto:nth-child(8) img {
    object-position: center center;
}


/* ==================================================
   SUBTLE OVERLAY
================================================== */

.refrigeratorTechnicianPhoto::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 78%,
            rgba(5, 24, 47, .08)
        );

    pointer-events: none;
}


/* ==================================================
   BOTTOM CTA
================================================== */

.refrigeratorTechnicians__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-top: 20px;

    padding: 20px 22px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;
}


.refrigeratorTechnicians__bottom > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorTechnicians__bottom span {
    margin-bottom: 3px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .05em;

    text-transform: uppercase;
}


.refrigeratorTechnicians__bottom strong {
    color: var(--navy);

    font-size: 15px;
    font-weight: 800;

    line-height: 1.4;
}


.refrigeratorTechnicians__bottom p {
    max-width: 680px;

    margin: 3px 0 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.55;
}


/* ==================================================
   LARGE TABLET
================================================== */

@media (max-width: 1100px) {

    .refrigeratorTechnicians__grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 850px) {

    .refrigeratorTechnicians__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;
    }


    .refrigeratorTechnicians__bottom {
        align-items: flex-start;
        flex-direction: column;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorTechnicians__head {
        margin-bottom: 30px;

        text-align: left;
    }


    .refrigeratorTechnicians__head .eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorTechnicians__head p {
        font-size: 13px;
    }


    .refrigeratorTechnicians__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;
    }


    .refrigeratorTechnicianPhoto {
        border-radius: 10px;
    }


    .refrigeratorTechnicians__bottom {
        margin-top: 16px;

        padding: 18px;
    }


    .refrigeratorTechnicians__bottom p {
        font-size: 13px;
    }


    .refrigeratorTechnicians__bottom .btn {
        width: 100%;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 420px) {

    .refrigeratorTechnicians__grid {
        grid-template-columns: 1fr;
    }


    .refrigeratorTechnicianPhoto {
        aspect-ratio: 4 / 3;
    }

}


/* ==================================================
   END SECTION 7 — OUR TECHNICIANS IN ACTION
================================================== */









/* ==================================================
   SECTION 8 — OUR REFRIGERATOR REPAIR PROCESS
================================================== */

.refrigeratorProcess {
    position: relative;
    overflow: hidden;

    color: #fff;

    background: #082b50;
}


/* subtle background */

.refrigeratorProcess::before {
    content: "";

    position: absolute;

    width: 460px;
    height: 460px;

    top: -300px;
    left: -190px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .025);
}


.refrigeratorProcess::after {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    right: -240px;
    bottom: -290px;

    border-radius: 50%;

    background: rgba(206, 0, 1, .07);
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorProcess__head {
    position: relative;
    z-index: 2;

    max-width: 700px;

    margin: 0 auto 46px;

    text-align: center;
}


.refrigeratorProcess__eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.refrigeratorProcess__eyebrow::before,
.refrigeratorProcess__eyebrow::after {
    content: "";

    width: 22px;
    height: 1px;

    background: rgba(255, 87, 87, .7);
}


.refrigeratorProcess__head h2 {
    margin: 13px 0 14px;

    color: #fff;
}


.refrigeratorProcess__head h2 strong {
    color: #ff5757;
}


.refrigeratorProcess__head p {
    max-width: 600px;

    margin: 0 auto;

    color: rgba(255, 255, 255, .56);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   STEPS
================================================== */

.refrigeratorProcess__steps {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 0;
}


/* connecting line */

.refrigeratorProcess__steps::before {
    content: "";

    position: absolute;

    top: 34px;
    left: 9%;
    right: 9%;

    height: 1px;

    background: rgba(255, 255, 255, .13);
}


/* ==================================================
   STEP
================================================== */

.refrigeratorProcessStep {
    position: relative;

    padding: 0 20px;

    text-align: center;
}


/* ==================================================
   STEP TOP
================================================== */

.refrigeratorProcessStep__top {
    position: relative;

    width: 68px;
    height: 68px;

    margin: 0 auto 19px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50%;

    background: #082b50;

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorProcessStep:hover
.refrigeratorProcessStep__top {
    transform: translateY(-4px);

    border-color: rgba(255, 87, 87, .5);

    background-color: #0a315b;
}


/* ==================================================
   ICON
================================================== */

.refrigeratorProcessStep__icon {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    border-radius: 50%;

    color: #fff;

    background: var(--red);

    box-shadow:
        0 8px 20px rgba(206, 0, 1, .22);

    transition:
        transform .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorProcessStep:hover
.refrigeratorProcessStep__icon {
    transform: scale(1.04);

    background-color: #e40002;
}


.refrigeratorProcessStep__icon svg {
    width: 17px;
    height: 17px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   NUMBER
================================================== */

.refrigeratorProcessStep__number {
    position: absolute;
    z-index: 3;

    top: -5px;
    right: -3px;

    width: 21px;
    height: 21px;

    display: grid;
    place-items: center;

    border: 2px solid #082b50;
    border-radius: 50%;

    color: var(--navy);

    background: #fff;

    font-size: 9px;
    font-weight: 900;
}


/* ==================================================
   STEP TEXT
================================================== */

.refrigeratorProcessStep h3 {
    margin: 0 0 8px;

    color: #fff;

    font-size: 14px;
    font-weight: 800;

    line-height: 1.4;
}


.refrigeratorProcessStep p {
    max-width: 190px;

    margin: 0 auto;

    color: rgba(255, 255, 255, .5);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorProcess__steps {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 38px 10px;
    }


    .refrigeratorProcess__steps::before {
        display: none;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorProcess__head {
        margin-bottom: 30px;

        text-align: left;
    }


    .refrigeratorProcess__eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorProcess__eyebrow::after {
        display: none;
    }


    .refrigeratorProcess__head p {
        font-size: 13px;
    }


    .refrigeratorProcess__steps {
        grid-template-columns: 1fr;

        gap: 10px;
    }


    .refrigeratorProcessStep {
        display: grid;

        grid-template-columns:
            58px minmax(0, 1fr);

        gap: 0 14px;

        padding: 15px;

        text-align: left;

        border: 1px solid rgba(255, 255, 255, .08);
        border-radius: 12px;

        background: rgba(255, 255, 255, .025);
    }


    .refrigeratorProcessStep__top {
        grid-row: 1 / 3;

        width: 54px;
        height: 54px;

        margin: 0;
    }


    .refrigeratorProcessStep__icon {
        width: 32px;
        height: 32px;
    }


    .refrigeratorProcessStep h3 {
        align-self: end;

        margin-bottom: 4px;
    }


    .refrigeratorProcessStep p {
        max-width: none;

        margin: 0;

        font-size: 14px;
    }

}


/* ==================================================
   END SECTION 8 — OUR REFRIGERATOR REPAIR PROCESS
================================================== */





/* ==================================================
   SECTION 9 — REFRIGERATOR REPAIR DIAGNOSTIC FEE
================================================== */

.refrigeratorFees {
    position: relative;
    overflow: hidden;

    background: #f5f7f9;
}


/* ==================================================
   TOP LAYOUT
================================================== */

.refrigeratorFees__top {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(280px, .58fr);

    align-items: center;

    gap: clamp(30px, 5vw, 60px);

    max-width: 980px;

    margin: 0 auto 34px;
}


/* ==================================================
   HEAD
================================================== */

.refrigeratorFees__head {
    max-width: 640px;
}


.refrigeratorFees__head h2 {
    margin: 14px 0 16px;
}


.refrigeratorFees__head h2 strong {
    display: block;

    color: var(--red);
}


.refrigeratorFees__head p {
    max-width: 620px;

    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   DIAGNOSTIC IMAGE
================================================== */

.refrigeratorFees__visual {
    position: relative;

    min-height: 230px;

    overflow: hidden;

    border-radius: 16px;

    background: #e5e9ec;

    box-shadow:
        0 14px 35px rgba(8, 38, 74, .08);
}


.refrigeratorFees__visual img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .6s var(--ease);
}


.refrigeratorFees__visual:hover img {
    transform: scale(1.035);
}


.refrigeratorFees__visualOverlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 52%,
            rgba(5, 24, 47, .45)
        );
}


/* ==================================================
   IMAGE BADGE
================================================== */

.refrigeratorFees__visualBadge {
    position: absolute;
    z-index: 2;

    left: 14px;
    bottom: 14px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 10px 12px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 10px;

    background: rgba(5, 24, 47, .86);

    backdrop-filter: blur(10px);
}


.refrigeratorFees__visualIcon {
    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);
}


.refrigeratorFees__visualIcon svg {
    width: 16px;
    height: 16px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorFees__visualBadge > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorFees__visualBadge small {
    color: rgba(255, 255, 255, .45);

    font-size: 14px;
    line-height: 1.3;
}


.refrigeratorFees__visualBadge strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
    line-height: 1.35;
}


/* ==================================================
   PRICING LAYOUT
================================================== */

.refrigeratorFees__layout {
    max-width: 820px;

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 16px;
}


/* ==================================================
   FEE CARD
================================================== */

.refrigeratorFeeCard {
    position: relative;

    padding: 25px;

    overflow: hidden;

    border: 1px solid rgba(8, 38, 74, .08);
    border-radius: 16px;

    background: #fff;

    box-shadow:
        0 12px 32px rgba(8, 38, 74, .05);

    transition:
        transform .25s var(--ease),
        border-color .25s var(--ease),
        box-shadow .25s var(--ease);
}


.refrigeratorFeeCard:hover {
    transform: translateY(-4px);

    border-color: rgba(206, 0, 1, .14);

    box-shadow:
        0 18px 40px rgba(8, 38, 74, .08);
}


/* ==================================================
   CARD TOP
================================================== */

.refrigeratorFeeCard__top {
    display: flex;
    align-items: center;

    gap: 11px;

    margin-bottom: 18px;
}


.refrigeratorFeeCard__icon {
    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);
}


.refrigeratorFeeCard__icon svg {
    width: 18px;
    height: 18px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorFeeCard__type {
    color: var(--navy);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .05em;

    text-transform: uppercase;
}


/* ==================================================
   PRICE
================================================== */

.refrigeratorFeeCard__price {
    display: flex;
    align-items: flex-start;
}


.refrigeratorFeeCard__price sup {
    margin-top: 7px;

    color: var(--red);

    font-size: 17px;
    font-weight: 900;
}


.refrigeratorFeeCard__price strong {
    color: var(--navy);

    font-size: 52px;
    line-height: .95;

    letter-spacing: -.05em;
}


.refrigeratorFeeCard__label {
    display: block;

    margin-top: 6px;

    color: var(--muted);

    font-size: 14px;
    font-weight: 700;
}


/* ==================================================
   CARD TEXT
================================================== */

.refrigeratorFeeCard > p {
    margin: 15px 0 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   LIST
================================================== */

.refrigeratorFeeCard ul {
    display: flex;
    flex-direction: column;

    gap: 8px;

    margin: 17px 0 0;
}


.refrigeratorFeeCard li {
    position: relative;

    padding-left: 16px;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.5;
}


.refrigeratorFeeCard li::before {
    content: "";

    position: absolute;

    left: 0;
    top: .55em;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--red);
}


/* ==================================================
   CARD LINK
================================================== */

.refrigeratorFeeCard__link {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;

    margin-top: 20px;

    padding-top: 16px;

    border-top:
        1px solid rgba(8, 38, 74, .08);

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.refrigeratorFeeCard__link span {
    font-size: 17px;

    transition:
        transform .2s var(--ease);
}


.refrigeratorFeeCard__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   DARK COMMERCIAL CARD
================================================== */

.refrigeratorFeeCard--dark {
    border-color: transparent;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(206, 0, 1, .13),
            transparent 38%
        ),
        #082b50;
}


.refrigeratorFeeCard--dark
.refrigeratorFeeCard__icon {
    color: #fff;

    background: var(--red);
}


.refrigeratorFeeCard--dark
.refrigeratorFeeCard__type,
.refrigeratorFeeCard--dark
.refrigeratorFeeCard__price strong {
    color: #fff;
}


.refrigeratorFeeCard--dark
.refrigeratorFeeCard__label,
.refrigeratorFeeCard--dark > p,
.refrigeratorFeeCard--dark li {
    color: rgba(255, 255, 255, .62);
}


.refrigeratorFeeCard--dark
.refrigeratorFeeCard__link {
    border-color: rgba(255, 255, 255, .1);

    color: #fff;
}


/* ==================================================
   NOTE
================================================== */

.refrigeratorFees__note {
    max-width: 820px;

    margin: 16px auto 0;

    display: flex;
    align-items: flex-start;

    gap: 11px;

    padding: 14px 16px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 11px;

    background: #fff;
}


.refrigeratorFees__noteIcon {
    width: 30px;
    height: 30px;

    flex: 0 0 30px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .06);
}


.refrigeratorFees__noteIcon svg {
    width: 16px;
    height: 16px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorFees__note p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.6;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 850px) {

    .refrigeratorFees__top {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .refrigeratorFees__visual {
        max-width: 620px;

        min-height: 280px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 700px) {

    .refrigeratorFees__head {
        text-align: left;
    }


    .refrigeratorFees__head .eyebrow {
        justify-content: flex-start;
    }


    .refrigeratorFees__head p {
        font-size: 13px;
    }


    .refrigeratorFees__layout {
        grid-template-columns: 1fr;
    }


    .refrigeratorFeeCard__price strong {
        font-size: 46px;
    }


    .refrigeratorFees__visual {
        min-height: 240px;
    }

}


/* ==================================================
   END SECTION 9 — REFRIGERATOR REPAIR DIAGNOSTIC FEE
================================================== */





/* ==================================================
   SECTION 10 — FINAL REFRIGERATOR REPAIR CTA
================================================== */

.refrigeratorFinalCta {
    position: relative;
    overflow: hidden;

    color: #fff;
    background: #061a33;
}


/* ==================================================
   BACKGROUND IMAGE
================================================== */

.refrigeratorFinalCta__media {
    position: absolute;

    inset: 0 0 0 43%;

    overflow: hidden;
}


.refrigeratorFinalCta__media img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
    object-position: center;

    transition: transform .8s var(--ease);
}


.refrigeratorFinalCta:hover
.refrigeratorFinalCta__media img {
    transform: scale(1.025);
}


/* ==================================================
   OVERLAY
================================================== */

.refrigeratorFinalCta__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            #061a33 0%,
            #061a33 38%,
            rgba(6, 26, 51, .95) 53%,
            rgba(6, 26, 51, .76) 72%,
            rgba(6, 26, 51, .56) 100%
        );
}


/* ==================================================
   LAYOUT
================================================== */

.refrigeratorFinalCta__layout {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(290px, 330px);

    align-items: center;

    gap: clamp(45px, 6vw, 75px);

    padding-top: clamp(65px, 7vw, 90px);
    padding-bottom: clamp(65px, 7vw, 90px);
}


/* ==================================================
   CONTENT
================================================== */

.refrigeratorFinalCta__content {
    max-width: 650px;
}


.refrigeratorFinalCta__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.refrigeratorFinalCta__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.refrigeratorFinalCta__content h2 {
    max-width: 590px;

    margin: 14px 0 16px;

    color: #fff;
}


.refrigeratorFinalCta__content h2 strong {
    display: block;

    color: #ff5757;
}


.refrigeratorFinalCta__content > p {
    max-width: 580px;

    margin: 0;

    color: rgba(255, 255, 255, .65);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   BENEFITS
================================================== */

.refrigeratorFinalCta__benefits {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 9px 20px;

    margin-top: 22px;
}


.refrigeratorFinalCta__benefits span {
    display: flex;
    align-items: center;

    gap: 7px;

    color: rgba(255, 255, 255, .72);

    font-size: 14px;
    font-weight: 600;
}


.refrigeratorFinalCta__benefits i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   ACTIONS
================================================== */

.refrigeratorFinalCta__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 26px;
}


.refrigeratorFinalCta__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: #fff;

    font-size: 14px;
    font-weight: 800;
}


.refrigeratorFinalCta__link span {
    color: #ff5757;

    font-size: 17px;

    transition: transform .2s var(--ease);
}


.refrigeratorFinalCta__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   SERVICE CARD
================================================== */

.refrigeratorFinalCta__card {
    padding: 23px;

    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 17px;

    background: rgba(5, 23, 45, .86);

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .2);

    backdrop-filter: blur(14px);

    transition:
        transform .3s var(--ease),
        border-color .3s var(--ease);
}


.refrigeratorFinalCta__card:hover {
    transform: translateY(-3px);

    border-color: rgba(255, 255, 255, .2);
}


.refrigeratorFinalCta__cardLabel {
    display: block;

    margin-bottom: 7px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.refrigeratorFinalCta__card h3 {
    margin: 0 0 8px;

    color: #fff;

    font-size: 19px;
    line-height: 1.3;
}


.refrigeratorFinalCta__card > p {
    margin: 0;

    color: rgba(255, 255, 255, .56);

    font-size: 13px;
    line-height: 1.6;
}


/* ==================================================
   DETAILS
================================================== */

.refrigeratorFinalCta__details {
    margin-top: 17px;

    border-top:
        1px solid rgba(255, 255, 255, .08);
}


.refrigeratorFinalCtaDetail {
    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 0;

    border-bottom:
        1px solid rgba(255, 255, 255, .08);
}


.refrigeratorFinalCtaDetail__icon {
    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);

    transition:
        transform .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorFinalCtaDetail:hover
.refrigeratorFinalCtaDetail__icon {
    transform: translateY(-1px);

    background-color: #e40002;
}


.refrigeratorFinalCtaDetail__icon svg {
    width: 16px;
    height: 16px;

    display: block;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refrigeratorFinalCtaDetail > div {
    display: flex;
    flex-direction: column;
}


.refrigeratorFinalCtaDetail small {
    color: rgba(255, 255, 255, .42);

    font-size: 14px;
    line-height: 1.3;
}


.refrigeratorFinalCtaDetail strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.35;
}


/* ==================================================
   CARD BUTTON
================================================== */

.refrigeratorFinalCta__cardButton {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-top: 16px;

    padding: 12px 14px;

    border-radius: 8px;

    color: #fff;

    background: var(--red);

    font-size: 14px;
    font-weight: 800;

    transition:
        transform .25s var(--ease),
        box-shadow .25s var(--ease),
        background-color .25s var(--ease);
}


.refrigeratorFinalCta__cardButton span {
    font-size: 16px;

    transition: transform .2s var(--ease);
}


.refrigeratorFinalCta__cardButton:hover {
    transform: translateY(-2px);

    background-color: #e40002;

    box-shadow:
        0 10px 25px rgba(206, 0, 1, .2);
}


.refrigeratorFinalCta__cardButton:hover span {
    transform: translateX(3px);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .refrigeratorFinalCta__media {
        inset: 0;
    }


    .refrigeratorFinalCta__overlay {
        background: rgba(6, 26, 51, .9);
    }


    .refrigeratorFinalCta__layout {
        grid-template-columns: 1fr;

        gap: 32px;
    }


    .refrigeratorFinalCta__card {
        max-width: 500px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refrigeratorFinalCta__layout {
        padding-top: 55px;
        padding-bottom: 55px;
    }


    .refrigeratorFinalCta__content > p {
        font-size: 13px;
    }


    .refrigeratorFinalCta__benefits {
        align-items: flex-start;
        flex-direction: column;
    }


    .refrigeratorFinalCta__actions {
        align-items: stretch;
        flex-direction: column;

        gap: 13px;
    }


    .refrigeratorFinalCta__actions .btn {
        width: 100%;
    }


    .refrigeratorFinalCta__link {
        justify-content: center;

        min-height: 42px;

        border:
            1px solid rgba(255, 255, 255, .14);

        border-radius: 8px;
    }


    .refrigeratorFinalCta__card {
        padding: 20px;
    }


    .refrigeratorFinalCta__card h3 {
        font-size: 18px;
    }

}


/* ==================================================
   END SECTION 10 — FINAL REFRIGERATOR REPAIR CTA
================================================== */






















/* ==================================================
   PRIVACY POLICY — HERO
================================================== */

.privacyHero {
    position: relative;
    overflow: hidden;

    color: #fff;

    background:
        radial-gradient(
            circle at 82% 25%,
            rgba(206, 0, 1, .12),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #061a33 0%,
            #082b50 100%
        );
}


/* decorative glow */

.privacyHero::before {
    content: "";

    position: absolute;

    width: 480px;
    height: 480px;

    top: -290px;
    left: -190px;

    border: 1px solid rgba(255, 255, 255, .04);
    border-radius: 50%;
}


.privacyHero::after {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    right: -150px;
    bottom: -240px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .018);
}


/* ==================================================
   LAYOUT
================================================== */

.privacyHero__inner {
    position: relative;
    z-index: 2;

    min-height: 480px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(320px, .72fr);

    align-items: center;

    gap: clamp(55px, 8vw, 110px);

    padding-top: clamp(70px, 8vw, 105px);
    padding-bottom: clamp(70px, 8vw, 105px);
}


/* ==================================================
   CONTENT
================================================== */

.privacyHero__content {
    max-width: 680px;
}


.privacyHero__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.privacyHero__eyebrow::before {
    content: "";

    width: 25px;
    height: 2px;

    background: var(--red);
}


.privacyHero__content h1 {
    margin: 15px 0 18px;

    color: #fff;

    font-size: clamp(42px, 5vw, 68px);
    font-weight: 800;

    line-height: 1.02;

    letter-spacing: -.04em;
}


.privacyHero__content h1 strong {
    color: #ff5757;
}


.privacyHero__content > p {
    max-width: 610px;

    margin: 0;

    color: rgba(255, 255, 255, .65);

    font-size: 14px;
    line-height: 1.75;
}


/* ==================================================
   META
================================================== */

.privacyHero__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    margin-top: 28px;
}


.privacyHeroMeta {
    min-width: 190px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 14px;

    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 10px;

    background: rgba(255, 255, 255, .035);
}


.privacyHeroMeta__icon {
    width: 35px;
    height: 35px;

    flex: 0 0 35px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);
}


.privacyHeroMeta__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.privacyHeroMeta > div {
    display: flex;
    flex-direction: column;
}


.privacyHeroMeta small {
    color: rgba(255, 255, 255, .43);

    font-size: 14px;
    line-height: 1.3;
}


.privacyHeroMeta strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.3;
}


/* ==================================================
   VISUAL
================================================== */

.privacyHero__visual {
    position: relative;

    min-height: 330px;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* ==================================================
   SHIELD
================================================== */

.privacyHero__shield {
    position: relative;

    width: 210px;
    height: 210px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;

    background: rgba(255, 255, 255, .025);
}


.privacyHero__shieldRing {
    position: absolute;

    inset: 22px;

    border:
        1px solid rgba(255, 255, 255, .07);

    border-radius: 50%;
}


.privacyHero__shieldIcon {
    position: relative;
    z-index: 2;

    width: 92px;
    height: 92px;

    display: grid;
    place-items: center;

    border-radius: 25px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            #e52920,
            var(--red)
        );

    box-shadow:
        0 20px 45px rgba(206, 0, 1, .24);
}


.privacyHero__shieldIcon svg {
    width: 45px;
    height: 45px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.4;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   FLOATING CARD
================================================== */

.privacyHero__card {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 230px;

    padding: 15px 16px;

    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 12px;

    background: rgba(5, 23, 45, .88);

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .18);

    backdrop-filter: blur(12px);
}


.privacyHero__card span {
    display: block;

    margin-bottom: 4px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.privacyHero__card strong {
    display: block;

    color: #fff;

    font-size: 14px;
    line-height: 1.4;
}


.privacyHero__card p {
    margin: 5px 0 0;

    color: rgba(255, 255, 255, .5);

    font-size: 14px;
    line-height: 1.55;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .privacyHero__inner {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .privacyHero__visual {
        max-width: 500px;

        justify-content: flex-start;
    }


    .privacyHero__card {
        right: auto;
        left: 160px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .privacyHero__inner {
        min-height: auto;

        padding-top: 60px;
        padding-bottom: 60px;
    }


    .privacyHero__content h1 {
        font-size: 42px;
    }


    .privacyHero__content > p {
        font-size: 13px;
    }


    .privacyHero__meta {
        align-items: stretch;
        flex-direction: column;
    }


    .privacyHeroMeta {
        width: 100%;
    }


    .privacyHero__visual {
        min-height: 290px;
    }


    .privacyHero__shield {
        width: 180px;
        height: 180px;
    }


    .privacyHero__shieldIcon {
        width: 78px;
        height: 78px;

        border-radius: 21px;
    }


    .privacyHero__shieldIcon svg {
        width: 38px;
        height: 38px;
    }


    .privacyHero__card {
        left: 90px;
        bottom: 5px;

        width: 215px;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 390px) {

    .privacyHero__card {
        left: 60px;

        width: 205px;
    }

}


/* ==================================================
   END PRIVACY POLICY — HERO
================================================== */





/* ==================================================
   PRIVACY POLICY — MAIN CONTENT
================================================== */

.privacyContent {
    position: relative;

    background: #f5f7f9;
}


/* ==================================================
   LAYOUT
================================================== */

.privacyContent__layout {
    display: grid;

    grid-template-columns:
        minmax(220px, 260px)
        minmax(0, 1fr);

    align-items: start;

    gap: clamp(40px, 6vw, 80px);

    max-width: 1120px;

    margin: 0 auto;
}


/* ==================================================
   SIDEBAR
================================================== */

.privacyContent__sidebar {
    position: relative;
}


.privacyContent__nav {
    position: sticky;

    top: 110px;

    padding: 20px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 12px 32px rgba(8, 38, 74, .045);
}


.privacyContent__navLabel {
    display: block;

    margin-bottom: 4px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.privacyContent__nav > strong {
    display: block;

    margin-bottom: 15px;

    color: var(--navy);

    font-size: 16px;
    line-height: 1.35;
}


.privacyContent__nav nav {
    display: flex;
    flex-direction: column;
}


.privacyContent__nav a {
    display: grid;

    grid-template-columns:
        24px minmax(0, 1fr);

    align-items: center;

    gap: 7px;

    padding: 9px 0;

    border-bottom:
        1px solid rgba(8, 38, 74, .06);

    color: var(--muted);

    font-size: 14px;
    font-weight: 600;

    line-height: 1.4;

    transition:
        color .2s var(--ease),
        padding-left .2s var(--ease);
}


.privacyContent__nav a:last-child {
    border-bottom: 0;
}


.privacyContent__nav a span {
    color: rgba(8, 38, 74, .3);

    font-size: 14px;
    font-weight: 800;
}


.privacyContent__nav a:hover,
.privacyContent__nav a.active {
    padding-left: 4px;

    color: var(--red);
}


.privacyContent__nav a.active span {
    color: var(--red);
}


/* ==================================================
   MAIN
================================================== */

.privacyContent__main {
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 14px;
}


/* ==================================================
   POLICY BLOCK
================================================== */

.privacyPolicyBlock {
    position: relative;

    display: grid;

    grid-template-columns:
        42px minmax(0, 1fr);

    gap: 18px;

    padding: 28px;

    scroll-margin-top: 120px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 25px rgba(8, 38, 74, .035);
}


/* ==================================================
   NUMBER
================================================== */

.privacyPolicyBlock__number {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);

    font-size: 14px;
    font-weight: 900;
}


/* ==================================================
   CONTENT
================================================== */

.privacyPolicyBlock__content {
    min-width: 0;
}


.privacyPolicyBlock__label {
    display: block;

    margin-bottom: 5px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.privacyPolicyBlock h2 {
    margin: 0 0 13px;

    color: var(--navy);

    font-size: clamp(22px, 2.4vw, 30px);

    line-height: 1.2;

    letter-spacing: -.025em;
}


.privacyPolicyBlock h2 strong {
    color: var(--red);
}


.privacyPolicyBlock__content > p {
    max-width: 720px;

    margin: 0 0 11px;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.75;
}


.privacyPolicyBlock__content > p:last-child {
    margin-bottom: 0;
}


/* ==================================================
   NOTICE
================================================== */

.privacyPolicyNotice {
    display: flex;
    align-items: flex-start;

    gap: 11px;

    margin-top: 18px;

    padding: 14px 15px;

    border-left: 3px solid var(--red);
    border-radius: 0 9px 9px 0;

    background: #f7f9fb;
}


.privacyPolicyNotice__icon {
    width: 31px;
    height: 31px;

    flex: 0 0 31px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);
}


.privacyPolicyNotice__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.privacyPolicyNotice p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   INFORMATION CARDS
================================================== */

.privacyInfoGrid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;

    margin-top: 20px;
}


.privacyInfoCard {
    display: grid;

    grid-template-columns:
        37px minmax(0, 1fr);

    align-items: start;

    gap: 10px;

    padding: 14px;

    border: 1px solid rgba(8, 38, 74, .06);
    border-radius: 10px;

    background: #f7f9fb;
}


.privacyInfoCard__icon {
    width: 37px;
    height: 37px;

    display: grid;
    place-items: center;

    border-radius: 9px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);
}


.privacyInfoCard__icon svg {
    width: 17px;
    height: 17px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.privacyInfoCard strong {
    display: block;

    margin: 1px 0 4px;

    color: var(--navy);

    font-size: 13px;
    line-height: 1.4;
}


.privacyInfoCard p {
    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   POLICY LIST
================================================== */

.privacyPolicyList {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 9px 20px;

    margin: 18px 0 0;
}


.privacyPolicyList li {
    position: relative;

    padding: 10px 12px 10px 31px;

    border-radius: 8px;

    color: var(--muted);

    background: #f7f9fb;

    font-size: 13px;
    line-height: 1.55;
}


.privacyPolicyList li::before {
    content: "✓";

    position: absolute;

    left: 11px;
    top: 10px;

    color: var(--red);

    font-size: 14px;
    font-weight: 900;
}


/* ==================================================
   CONTACT BLOCK
================================================== */

.privacyPolicyBlock--contact {
    border-color: rgba(206, 0, 1, .11);

    background:
        linear-gradient(
            135deg,
            #fff 0%,
            #fff 70%,
            rgba(206, 0, 1, .035) 100%
        );
}


.privacyContactActions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 20px;
}


.privacyContactActions__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.privacyContactActions__link span {
    font-size: 17px;

    transition:
        transform .2s var(--ease);
}


.privacyContactActions__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .privacyContent__layout {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .privacyContent__nav {
        position: relative;

        top: auto;
    }


    .privacyContent__nav nav {
        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 0 20px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .privacyContent__nav nav {
        grid-template-columns: 1fr;
    }


    .privacyPolicyBlock {
        grid-template-columns: 1fr;

        gap: 13px;

        padding: 20px;
    }


    .privacyPolicyBlock__number {
        width: 36px;
        height: 36px;
    }


    .privacyPolicyBlock__content > p {
        font-size: 13px;
    }


    .privacyInfoGrid {
        grid-template-columns: 1fr;
    }


    .privacyPolicyList {
        grid-template-columns: 1fr;
    }


    .privacyContactActions {
        align-items: stretch;
        flex-direction: column;

        gap: 12px;
    }


    .privacyContactActions .btn {
        width: 100%;
    }


    .privacyContactActions__link {
        justify-content: center;
    }

}


/* ==================================================
   END PRIVACY POLICY — MAIN CONTENT
================================================== */





/* ==================================================
   SECTION 3 — PRIVACY CONTACT CTA
================================================== */

.privacyContactCta {
    position: relative;
    overflow: hidden;

    background: #061a33;
}


/* decorative accent */

.privacyContactCta::before {
    content: "";

    position: absolute;

    width: 340px;
    height: 340px;

    right: -170px;
    top: -190px;

    border-radius: 50%;

    background: rgba(206, 0, 1, .08);
}


.privacyContactCta::after {
    content: "";

    position: absolute;

    width: 260px;
    height: 260px;

    left: -150px;
    bottom: -190px;

    border-radius: 50%;

    border:
        1px solid rgba(255, 255, 255, .035);
}


/* ==================================================
   INNER
================================================== */

.privacyContactCta__inner {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: clamp(40px, 6vw, 80px);

    padding-top: clamp(55px, 6vw, 75px);
    padding-bottom: clamp(55px, 6vw, 75px);
}


/* ==================================================
   CONTENT
================================================== */

.privacyContactCta__content {
    max-width: 700px;
}


.privacyContactCta__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.privacyContactCta__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.privacyContactCta__content h2 {
    margin: 13px 0 15px;

    color: #fff;
}


.privacyContactCta__content h2 strong {
    color: #ff5757;
}


.privacyContactCta__content > p {
    max-width: 620px;

    margin: 0;

    color: rgba(255, 255, 255, .62);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   FEATURES
================================================== */

.privacyContactCta__features {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px 20px;

    margin-top: 20px;
}


.privacyContactCta__features span {
    display: flex;
    align-items: center;

    gap: 7px;

    color: rgba(255, 255, 255, .7);

    font-size: 14px;
    font-weight: 600;
}


.privacyContactCta__features i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   ACTIONS
================================================== */

.privacyContactCta__actions {
    display: flex;
    align-items: center;

    gap: 22px;

    flex-shrink: 0;
}


.privacyContactCta__phone {
    display: flex;
    flex-direction: column;
}


.privacyContactCta__phone small {
    color: rgba(255, 255, 255, .42);

    font-size: 14px;
    line-height: 1.3;
}


.privacyContactCta__phone strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
    line-height: 1.3;

    transition: color .2s var(--ease);
}


.privacyContactCta__phone:hover strong {
    color: #ff5757;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 850px) {

    .privacyContactCta__inner {
        grid-template-columns: 1fr;

        gap: 28px;
    }


    .privacyContactCta__actions {
        justify-content: flex-start;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .privacyContactCta__content > p {
        font-size: 13px;
    }


    .privacyContactCta__features {
        align-items: flex-start;
        flex-direction: column;
    }


    .privacyContactCta__actions {
        width: 100%;

        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .privacyContactCta__actions .btn {
        width: 100%;
    }


    .privacyContactCta__phone {
        align-items: center;

        text-align: center;
    }

}


/* ==================================================
   END SECTION 3 — PRIVACY CONTACT CTA
================================================== */





















/* ==================================================
   SECTION 1 — TERMS OF USE HERO
================================================== */

.termsHero {
    position: relative;
    overflow: hidden;

    color: #fff;

    background:
        radial-gradient(
            circle at 82% 25%,
            rgba(206, 0, 1, .12),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #061a33 0%,
            #082b50 100%
        );
}


/* decorative elements */

.termsHero::before {
    content: "";

    position: absolute;

    width: 480px;
    height: 480px;

    top: -290px;
    left: -190px;

    border: 1px solid rgba(255, 255, 255, .04);
    border-radius: 50%;
}


.termsHero::after {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    right: -150px;
    bottom: -240px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .018);
}


/* ==================================================
   LAYOUT
================================================== */

.termsHero__inner {
    position: relative;
    z-index: 2;

    min-height: 480px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(320px, .72fr);

    align-items: center;

    gap: clamp(55px, 8vw, 110px);

    padding-top: clamp(70px, 8vw, 105px);
    padding-bottom: clamp(70px, 8vw, 105px);
}


/* ==================================================
   CONTENT
================================================== */

.termsHero__content {
    max-width: 680px;
}


.termsHero__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.termsHero__eyebrow::before {
    content: "";

    width: 25px;
    height: 2px;

    background: var(--red);
}


.termsHero__content h1 {
    margin: 15px 0 18px;

    color: #fff;

    font-size: clamp(42px, 5vw, 68px);
    font-weight: 800;

    line-height: 1.02;

    letter-spacing: -.04em;
}


.termsHero__content h1 strong {
    color: #ff5757;
}


.termsHero__content > p {
    max-width: 610px;

    margin: 0;

    color: rgba(255, 255, 255, .65);

    font-size: 14px;
    line-height: 1.75;
}


/* ==================================================
   META
================================================== */

.termsHero__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    margin-top: 28px;
}


.termsHeroMeta {
    min-width: 190px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 14px;

    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 10px;

    background: rgba(255, 255, 255, .035);
}


.termsHeroMeta__icon {
    width: 35px;
    height: 35px;

    flex: 0 0 35px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);
}


.termsHeroMeta__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.termsHeroMeta > div {
    display: flex;
    flex-direction: column;
}


.termsHeroMeta small {
    color: rgba(255, 255, 255, .43);

    font-size: 14px;
    line-height: 1.3;
}


.termsHeroMeta strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.3;
}


/* ==================================================
   VISUAL
================================================== */

.termsHero__visual {
    position: relative;

    min-height: 330px;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* ==================================================
   DOCUMENT
================================================== */

.termsHero__document {
    position: relative;

    width: 210px;
    height: 210px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;

    background: rgba(255, 255, 255, .025);
}


.termsHero__documentRing {
    position: absolute;

    inset: 22px;

    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 50%;
}


.termsHero__documentIcon {
    position: relative;
    z-index: 2;

    width: 92px;
    height: 92px;

    display: grid;
    place-items: center;

    border-radius: 25px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            #e52920,
            var(--red)
        );

    box-shadow:
        0 20px 45px rgba(206, 0, 1, .24);
}


.termsHero__documentIcon svg {
    width: 45px;
    height: 45px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.4;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   FLOATING CARD
================================================== */

.termsHero__card {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 230px;

    padding: 15px 16px;

    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 12px;

    background: rgba(5, 23, 45, .88);

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .18);

    backdrop-filter: blur(12px);
}


.termsHero__card span {
    display: block;

    margin-bottom: 4px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.termsHero__card strong {
    display: block;

    color: #fff;

    font-size: 14px;
    line-height: 1.4;
}


.termsHero__card p {
    margin: 5px 0 0;

    color: rgba(255, 255, 255, .5);

    font-size: 14px;
    line-height: 1.55;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .termsHero__inner {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .termsHero__visual {
        max-width: 500px;

        justify-content: flex-start;
    }


    .termsHero__card {
        right: auto;
        left: 160px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .termsHero__inner {
        min-height: auto;

        padding-top: 60px;
        padding-bottom: 60px;
    }


    .termsHero__content h1 {
        font-size: 42px;
    }


    .termsHero__content > p {
        font-size: 13px;
    }


    .termsHero__meta {
        align-items: stretch;
        flex-direction: column;
    }


    .termsHeroMeta {
        width: 100%;
    }


    .termsHero__visual {
        min-height: 290px;
    }


    .termsHero__document {
        width: 180px;
        height: 180px;
    }


    .termsHero__documentIcon {
        width: 78px;
        height: 78px;

        border-radius: 21px;
    }


    .termsHero__documentIcon svg {
        width: 38px;
        height: 38px;
    }


    .termsHero__card {
        left: 90px;
        bottom: 5px;

        width: 215px;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 390px) {

    .termsHero__card {
        left: 60px;

        width: 205px;
    }

}


/* ==================================================
   END SECTION 1 — TERMS OF USE HERO
================================================== */





/* ==================================================
   SECTION 2 — TERMS OF USE MAIN CONTENT
================================================== */

.termsContent {
    position: relative;

    background: #f5f7f9;
}


/* ==================================================
   LAYOUT
================================================== */

.termsContent__layout {
    display: grid;

    grid-template-columns:
        minmax(220px, 260px)
        minmax(0, 1fr);

    align-items: start;

    gap: clamp(40px, 6vw, 80px);

    max-width: 1120px;

    margin: 0 auto;
}


/* ==================================================
   SIDEBAR
================================================== */

.termsContent__sidebar {
    position: relative;
}


.termsContent__nav {
    position: sticky;

    top: 110px;

    padding: 20px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 12px 32px rgba(8, 38, 74, .045);
}


.termsContent__navLabel {
    display: block;

    margin-bottom: 4px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.termsContent__nav > strong {
    display: block;

    margin-bottom: 15px;

    color: var(--navy);

    font-size: 16px;
    line-height: 1.35;
}


.termsContent__nav nav {
    display: flex;
    flex-direction: column;
}


.termsContent__nav a {
    display: grid;

    grid-template-columns:
        24px minmax(0, 1fr);

    align-items: center;

    gap: 7px;

    padding: 9px 0;

    border-bottom:
        1px solid rgba(8, 38, 74, .06);

    color: var(--muted);

    font-size: 14px;
    font-weight: 600;

    line-height: 1.4;

    transition:
        color .2s var(--ease),
        padding-left .2s var(--ease);
}


.termsContent__nav a:last-child {
    border-bottom: 0;
}


.termsContent__nav a span {
    color: rgba(8, 38, 74, .3);

    font-size: 14px;
    font-weight: 800;
}


.termsContent__nav a:hover,
.termsContent__nav a.active {
    padding-left: 4px;

    color: var(--red);
}


.termsContent__nav a.active span {
    color: var(--red);
}


/* ==================================================
   MAIN
================================================== */

.termsContent__main {
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 14px;
}


/* ==================================================
   POLICY BLOCK
================================================== */

.termsPolicyBlock {
    position: relative;

    display: grid;

    grid-template-columns:
        42px minmax(0, 1fr);

    gap: 18px;

    padding: 28px;

    scroll-margin-top: 120px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 25px rgba(8, 38, 74, .035);
}


/* ==================================================
   NUMBER
================================================== */

.termsPolicyBlock__number {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);

    font-size: 14px;
    font-weight: 900;
}


/* ==================================================
   CONTENT
================================================== */

.termsPolicyBlock__content {
    min-width: 0;
}


.termsPolicyBlock__label {
    display: block;

    margin-bottom: 5px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.termsPolicyBlock h2 {
    margin: 0 0 13px;

    color: var(--navy);

    font-size: clamp(22px, 2.4vw, 30px);

    line-height: 1.2;

    letter-spacing: -.025em;
}


.termsPolicyBlock h2 strong {
    color: var(--red);
}


.termsPolicyBlock__content > p {
    max-width: 720px;

    margin: 0 0 11px;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.75;
}


.termsPolicyBlock__content > p:last-child {
    margin-bottom: 0;
}


/* ==================================================
   NOTICE
================================================== */

.termsPolicyNotice {
    display: flex;
    align-items: flex-start;

    gap: 11px;

    margin-top: 18px;

    padding: 14px 15px;

    border-left: 3px solid var(--red);
    border-radius: 0 9px 9px 0;

    background: #f7f9fb;
}


.termsPolicyNotice__icon {
    width: 31px;
    height: 31px;

    flex: 0 0 31px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);
}


.termsPolicyNotice__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.termsPolicyNotice p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   TERMS LIST
================================================== */

.termsPolicyList {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 9px 20px;

    margin: 18px 0 0;

    padding: 0;

    list-style: none;
}


.termsPolicyList li {
    position: relative;

    padding: 10px 12px 10px 31px;

    border-radius: 8px;

    color: var(--muted);

    background: #f7f9fb;

    font-size: 13px;
    line-height: 1.55;
}


.termsPolicyList li::before {
    content: "✓";

    position: absolute;

    left: 11px;
    top: 10px;

    color: var(--red);

    font-size: 14px;
    font-weight: 900;
}


/* ==================================================
   CONTACT BLOCK
================================================== */

.termsPolicyBlock--contact {
    border-color: rgba(206, 0, 1, .11);

    background:
        linear-gradient(
            135deg,
            #fff 0%,
            #fff 70%,
            rgba(206, 0, 1, .035) 100%
        );
}


.termsContactActions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 20px;
}


.termsContactActions__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.termsContactActions__link span {
    font-size: 17px;

    transition:
        transform .2s var(--ease);
}


.termsContactActions__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .termsContent__layout {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .termsContent__nav {
        position: relative;

        top: auto;
    }


    .termsContent__nav nav {
        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 0 20px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .termsContent__nav nav {
        grid-template-columns: 1fr;
    }


    .termsPolicyBlock {
        grid-template-columns: 1fr;

        gap: 13px;

        padding: 20px;
    }


    .termsPolicyBlock__number {
        width: 36px;
        height: 36px;
    }


    .termsPolicyBlock__content > p {
        font-size: 13px;
    }


    .termsPolicyList {
        grid-template-columns: 1fr;
    }


    .termsContactActions {
        align-items: stretch;
        flex-direction: column;

        gap: 12px;
    }


    .termsContactActions .btn {
        width: 100%;
    }


    .termsContactActions__link {
        justify-content: center;
    }

}


/* ==================================================
   END SECTION 2 — TERMS OF USE MAIN CONTENT
================================================== */





/* ==================================================
   SECTION 3 — TERMS OF USE CONTACT CTA
================================================== */

.termsContactCta {
    position: relative;
    overflow: hidden;

    background: #061a33;
}


/* decorative red glow */

.termsContactCta::before {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    right: -170px;
    top: -210px;

    border-radius: 50%;

    background: rgba(206, 0, 1, .08);
}


/* decorative circle */

.termsContactCta::after {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    left: -170px;
    bottom: -210px;

    border: 1px solid rgba(255, 255, 255, .035);
    border-radius: 50%;
}


/* ==================================================
   INNER
================================================== */

.termsContactCta__inner {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: clamp(40px, 6vw, 80px);

    padding-top: clamp(55px, 6vw, 75px);
    padding-bottom: clamp(55px, 6vw, 75px);
}


/* ==================================================
   CONTENT
================================================== */

.termsContactCta__content {
    max-width: 700px;
}


.termsContactCta__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.termsContactCta__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.termsContactCta__content h2 {
    margin: 13px 0 15px;

    color: #fff;
}


.termsContactCta__content h2 strong {
    color: #ff5757;
}


.termsContactCta__content > p {
    max-width: 630px;

    margin: 0;

    color: rgba(255, 255, 255, .62);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   FEATURES
================================================== */

.termsContactCta__features {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px 20px;

    margin-top: 20px;
}


.termsContactCta__features span {
    display: flex;
    align-items: center;

    gap: 7px;

    color: rgba(255, 255, 255, .7);

    font-size: 14px;
    font-weight: 600;
}


.termsContactCta__features i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   ACTIONS
================================================== */

.termsContactCta__actions {
    display: flex;
    align-items: center;

    gap: 22px;

    flex-shrink: 0;
}


.termsContactCta__phone {
    display: flex;
    flex-direction: column;
}


.termsContactCta__phone small {
    color: rgba(255, 255, 255, .42);

    font-size: 14px;
    line-height: 1.3;
}


.termsContactCta__phone strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
    line-height: 1.3;

    transition: color .2s var(--ease);
}


.termsContactCta__phone:hover strong {
    color: #ff5757;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 850px) {

    .termsContactCta__inner {
        grid-template-columns: 1fr;

        gap: 28px;
    }


    .termsContactCta__actions {
        justify-content: flex-start;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .termsContactCta__inner {
        padding-top: 50px;
        padding-bottom: 50px;
    }


    .termsContactCta__content > p {
        font-size: 13px;
    }


    .termsContactCta__features {
        align-items: flex-start;
        flex-direction: column;
    }


    .termsContactCta__actions {
        width: 100%;

        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .termsContactCta__actions .btn {
        width: 100%;
    }


    .termsContactCta__phone {
        align-items: center;

        text-align: center;
    }

}


/* ==================================================
   END SECTION 3 — TERMS OF USE CONTACT CTA
================================================== */



























/* ==================================================
   SECTION 1 — REFUND POLICY HERO
================================================== */

.refundHero {
    position: relative;
    overflow: hidden;

    color: #fff;

    background:
        radial-gradient(
            circle at 82% 25%,
            rgba(206, 0, 1, .12),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #061a33 0%,
            #082b50 100%
        );
}


/* ==================================================
   DECORATIVE ELEMENTS
================================================== */

.refundHero::before {
    content: "";

    position: absolute;

    width: 480px;
    height: 480px;

    top: -290px;
    left: -190px;

    border: 1px solid rgba(255, 255, 255, .04);
    border-radius: 50%;
}


.refundHero::after {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    right: -150px;
    bottom: -240px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .018);
}


/* ==================================================
   LAYOUT
================================================== */

.refundHero__inner {
    position: relative;
    z-index: 2;

    min-height: 480px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(320px, .72fr);

    align-items: center;

    gap: clamp(55px, 8vw, 110px);

    padding-top: clamp(70px, 8vw, 105px);
    padding-bottom: clamp(70px, 8vw, 105px);
}


/* ==================================================
   CONTENT
================================================== */

.refundHero__content {
    max-width: 680px;
}


.refundHero__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .1em;
    text-transform: uppercase;
}


.refundHero__eyebrow::before {
    content: "";

    width: 25px;
    height: 2px;

    background: var(--red);
}


.refundHero__content h1 {
    margin: 15px 0 18px;

    color: #fff;

    font-size: clamp(42px, 5vw, 68px);
    font-weight: 800;

    line-height: 1.02;

    letter-spacing: -.04em;
}


.refundHero__content h1 strong {
    color: #ff5757;
}


.refundHero__content > p {
    max-width: 620px;

    margin: 0;

    color: rgba(255, 255, 255, .65);

    font-size: 14px;
    line-height: 1.75;
}


/* ==================================================
   META
================================================== */

.refundHero__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    margin-top: 28px;
}


.refundHeroMeta {
    min-width: 190px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding: 11px 14px;

    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 10px;

    background: rgba(255, 255, 255, .035);
}


.refundHeroMeta__icon {
    width: 35px;
    height: 35px;

    flex: 0 0 35px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: #fff;

    background: var(--red);
}


.refundHeroMeta__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refundHeroMeta > div {
    display: flex;
    flex-direction: column;
}


.refundHeroMeta small {
    color: rgba(255, 255, 255, .43);

    font-size: 14px;
    line-height: 1.3;
}


.refundHeroMeta strong {
    margin-top: 2px;

    color: #fff;

    font-size: 13px;
    line-height: 1.3;
}


/* ==================================================
   VISUAL
================================================== */

.refundHero__visual {
    position: relative;

    min-height: 330px;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* ==================================================
   REFUND SYMBOL
================================================== */

.refundHero__symbol {
    position: relative;

    width: 210px;
    height: 210px;

    display: grid;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;

    background: rgba(255, 255, 255, .025);
}


.refundHero__symbolRing {
    position: absolute;

    inset: 22px;

    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 50%;
}


.refundHero__symbolIcon {
    position: relative;
    z-index: 2;

    width: 92px;
    height: 92px;

    display: grid;
    place-items: center;

    border-radius: 25px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            #e52920,
            var(--red)
        );

    box-shadow:
        0 20px 45px rgba(206, 0, 1, .24);
}


.refundHero__symbolIcon svg {
    width: 45px;
    height: 45px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.4;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   FLOATING CARD
================================================== */

.refundHero__card {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 230px;

    padding: 15px 16px;

    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 12px;

    background: rgba(5, 23, 45, .88);

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .18);

    backdrop-filter: blur(12px);
}


.refundHero__card span {
    display: block;

    margin-bottom: 4px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.refundHero__card strong {
    display: block;

    color: #fff;

    font-size: 14px;
    line-height: 1.4;
}


.refundHero__card p {
    margin: 5px 0 0;

    color: rgba(255, 255, 255, .5);

    font-size: 14px;
    line-height: 1.55;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .refundHero__inner {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .refundHero__visual {
        max-width: 500px;

        justify-content: flex-start;
    }


    .refundHero__card {
        right: auto;
        left: 160px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refundHero__inner {
        min-height: auto;

        padding-top: 60px;
        padding-bottom: 60px;
    }


    .refundHero__content h1 {
        font-size: 42px;
    }


    .refundHero__content > p {
        font-size: 13px;
    }


    .refundHero__meta {
        align-items: stretch;
        flex-direction: column;
    }


    .refundHeroMeta {
        width: 100%;
    }


    .refundHero__visual {
        min-height: 290px;
    }


    .refundHero__symbol {
        width: 180px;
        height: 180px;
    }


    .refundHero__symbolIcon {
        width: 78px;
        height: 78px;

        border-radius: 21px;
    }


    .refundHero__symbolIcon svg {
        width: 38px;
        height: 38px;
    }


    .refundHero__card {
        left: 90px;
        right: auto;
        bottom: 5px;

        width: 215px;
    }

}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 390px) {

    .refundHero__card {
        left: 60px;

        width: 205px;
    }

}


/* ==================================================
   END SECTION 1 — REFUND POLICY HERO
================================================== */










/* ==================================================
   SECTION 2 — REFUND POLICY MAIN CONTENT
================================================== */

.refundContent {
    position: relative;

    background: #f5f7f9;
}


/* ==================================================
   LAYOUT
================================================== */

.refundContent__layout {
    display: grid;

    grid-template-columns:
        minmax(220px, 260px)
        minmax(0, 1fr);

    align-items: start;

    gap: clamp(40px, 6vw, 80px);

    max-width: 1120px;

    margin: 0 auto;
}


/* ==================================================
   SIDEBAR
================================================== */

.refundContent__sidebar {
    position: relative;
}


.refundContent__nav {
    position: sticky;

    top: 110px;

    padding: 20px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 12px 32px rgba(8, 38, 74, .045);
}


.refundContent__navLabel {
    display: block;

    margin-bottom: 4px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .07em;
    text-transform: uppercase;
}


.refundContent__nav > strong {
    display: block;

    margin-bottom: 15px;

    color: var(--navy);

    font-size: 16px;
    line-height: 1.35;
}


.refundContent__nav nav {
    display: flex;
    flex-direction: column;
}


.refundContent__nav a {
    display: grid;

    grid-template-columns:
        24px minmax(0, 1fr);

    align-items: center;

    gap: 7px;

    padding: 9px 0;

    border-bottom:
        1px solid rgba(8, 38, 74, .06);

    color: var(--muted);

    font-size: 14px;
    font-weight: 600;

    line-height: 1.4;

    transition:
        color .2s var(--ease),
        padding-left .2s var(--ease);
}


.refundContent__nav a:last-child {
    border-bottom: 0;
}


.refundContent__nav a span {
    color: rgba(8, 38, 74, .3);

    font-size: 14px;
    font-weight: 800;
}


.refundContent__nav a:hover,
.refundContent__nav a.active {
    padding-left: 4px;

    color: var(--red);
}


.refundContent__nav a.active span {
    color: var(--red);
}


/* ==================================================
   MAIN
================================================== */

.refundContent__main {
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 14px;
}


/* ==================================================
   POLICY BLOCK
================================================== */

.refundPolicyBlock {
    position: relative;

    display: grid;

    grid-template-columns:
        42px minmax(0, 1fr);

    gap: 18px;

    padding: 28px;

    scroll-margin-top: 120px;

    border: 1px solid rgba(8, 38, 74, .07);
    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 25px rgba(8, 38, 74, .035);
}


.refundPolicyBlock__number {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    color: var(--red);

    background: rgba(206, 0, 1, .065);

    font-size: 14px;
    font-weight: 900;
}


.refundPolicyBlock__content {
    min-width: 0;
}


.refundPolicyBlock__label {
    display: block;

    margin-bottom: 5px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .06em;
    text-transform: uppercase;
}


.refundPolicyBlock h2 {
    margin: 0 0 13px;

    color: var(--navy);

    font-size: clamp(22px, 2.4vw, 30px);

    line-height: 1.2;

    letter-spacing: -.025em;
}


.refundPolicyBlock h2 strong {
    color: var(--red);
}


.refundPolicyBlock__content > p {
    max-width: 720px;

    margin: 0 0 11px;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.75;
}


.refundPolicyBlock__content > p:last-child {
    margin-bottom: 0;
}


/* ==================================================
   NOTICE
================================================== */

.refundPolicyNotice {
    display: flex;
    align-items: flex-start;

    gap: 11px;

    margin-top: 18px;

    padding: 14px 15px;

    border-left: 3px solid var(--red);
    border-radius: 0 9px 9px 0;

    background: #f7f9fb;
}


.refundPolicyNotice__icon {
    width: 31px;
    height: 31px;

    flex: 0 0 31px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);
}


.refundPolicyNotice__icon svg {
    width: 16px;
    height: 16px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.refundPolicyNotice p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.65;
}


/* ==================================================
   ELIGIBILITY LIST
================================================== */

.refundPolicyList {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 9px 20px;

    margin: 18px 0 0;

    padding: 0;

    list-style: none;
}


.refundPolicyList li {
    position: relative;

    padding: 10px 12px 10px 31px;

    border-radius: 8px;

    color: var(--muted);

    background: #f7f9fb;

    font-size: 13px;
    line-height: 1.55;
}


.refundPolicyList li::before {
    content: "✓";

    position: absolute;

    left: 11px;
    top: 10px;

    color: var(--red);

    font-size: 14px;
    font-weight: 900;
}


/* ==================================================
   REFUND REQUEST STEPS
================================================== */

.refundRequestGrid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;

    margin-top: 19px;
}


.refundRequestItem {
    display: grid;

    grid-template-columns:
        34px minmax(0, 1fr);

    align-items: start;

    gap: 10px;

    padding: 14px;

    border: 1px solid rgba(8, 38, 74, .06);
    border-radius: 10px;

    background: #f7f9fb;
}


.refundRequestItem > span {
    width: 34px;
    height: 34px;

    display: grid;
    place-items: center;

    border-radius: 8px;

    color: var(--red);

    background: rgba(206, 0, 1, .07);

    font-size: 14px;
    font-weight: 900;
}


.refundRequestItem strong {
    display: block;

    margin-bottom: 3px;

    color: var(--navy);

    font-size: 13px;
    line-height: 1.4;
}


.refundRequestItem p {
    margin: 0;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.6;
}


/* ==================================================
   CONTACT BLOCK
================================================== */

.refundPolicyBlock--contact {
    border-color: rgba(206, 0, 1, .11);

    background:
        linear-gradient(
            135deg,
            #fff 0%,
            #fff 70%,
            rgba(206, 0, 1, .035) 100%
        );
}


.refundContactActions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 20px;

    margin-top: 20px;
}


.refundContactActions__link {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    color: var(--red);

    font-size: 14px;
    font-weight: 800;
}


.refundContactActions__link span {
    font-size: 17px;

    transition:
        transform .2s var(--ease);
}


.refundContactActions__link:hover span {
    transform: translateX(4px);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .refundContent__layout {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .refundContent__nav {
        position: relative;

        top: auto;
    }


    .refundContent__nav nav {
        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 0 20px;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refundContent__nav nav {
        grid-template-columns: 1fr;
    }


    .refundPolicyBlock {
        grid-template-columns: 1fr;

        gap: 13px;

        padding: 20px;
    }


    .refundPolicyBlock__number {
        width: 36px;
        height: 36px;
    }


    .refundPolicyBlock__content > p {
        font-size: 13px;
    }


    .refundPolicyList,
    .refundRequestGrid {
        grid-template-columns: 1fr;
    }


    .refundContactActions {
        align-items: stretch;
        flex-direction: column;

        gap: 12px;
    }


    .refundContactActions .btn {
        width: 100%;
    }


    .refundContactActions__link {
        justify-content: center;
    }

}


/* ==================================================
   END SECTION 2 — REFUND POLICY MAIN CONTENT
================================================== */






/* ==================================================
   SECTION 3 — REFUND POLICY CONTACT CTA
================================================== */

.refundContactCta {
    position: relative;
    overflow: hidden;

    background: #061a33;
}


/* decorative red glow */

.refundContactCta::before {
    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    right: -170px;
    top: -210px;

    border-radius: 50%;

    background: rgba(206, 0, 1, .08);
}


/* decorative circle */

.refundContactCta::after {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    left: -170px;
    bottom: -210px;

    border: 1px solid rgba(255, 255, 255, .035);
    border-radius: 50%;
}


/* ==================================================
   INNER
================================================== */

.refundContactCta__inner {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: center;

    gap: clamp(40px, 6vw, 80px);

    padding-top: clamp(55px, 6vw, 75px);
    padding-bottom: clamp(55px, 6vw, 75px);
}


/* ==================================================
   CONTENT
================================================== */

.refundContactCta__content {
    max-width: 700px;
}


.refundContactCta__eyebrow {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    color: #ff5757;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: .09em;
    text-transform: uppercase;
}


.refundContactCta__eyebrow::before {
    content: "";

    width: 24px;
    height: 2px;

    background: var(--red);
}


.refundContactCta__content h2 {
    margin: 13px 0 15px;

    color: #fff;
}


.refundContactCta__content h2 strong {
    color: #ff5757;
}


.refundContactCta__content > p {
    max-width: 640px;

    margin: 0;

    color: rgba(255, 255, 255, .62);

    font-size: 14px;
    line-height: 1.7;
}


/* ==================================================
   FEATURES
================================================== */

.refundContactCta__features {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px 20px;

    margin-top: 20px;
}


.refundContactCta__features span {
    display: flex;
    align-items: center;

    gap: 7px;

    color: rgba(255, 255, 255, .7);

    font-size: 14px;
    font-weight: 600;
}


.refundContactCta__features i {
    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: #ff5757;
}


/* ==================================================
   ACTIONS
================================================== */

.refundContactCta__actions {
    display: flex;
    align-items: center;

    gap: 22px;

    flex-shrink: 0;
}


.refundContactCta__phone {
    display: flex;
    flex-direction: column;
}


.refundContactCta__phone small {
    color: rgba(255, 255, 255, .42);

    font-size: 14px;
    line-height: 1.3;
}


.refundContactCta__phone strong {
    margin-top: 2px;

    color: #fff;

    font-size: 14px;
    line-height: 1.3;

    transition: color .2s var(--ease);
}


.refundContactCta__phone:hover strong {
    color: #ff5757;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 850px) {

    .refundContactCta__inner {
        grid-template-columns: 1fr;

        gap: 28px;
    }


    .refundContactCta__actions {
        justify-content: flex-start;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .refundContactCta__inner {
        padding-top: 50px;
        padding-bottom: 50px;
    }


    .refundContactCta__content > p {
        font-size: 13px;
    }


    .refundContactCta__features {
        align-items: flex-start;
        flex-direction: column;
    }


    .refundContactCta__actions {
        width: 100%;

        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    .refundContactCta__actions .btn {
        width: 100%;
    }


    .refundContactCta__phone {
        align-items: center;

        text-align: center;
    }

}


/* ==================================================
   END SECTION 3 — REFUND POLICY CONTACT CTA
================================================== */























/* ==================================================
   LEGAL HERO — COMPLETE RESPONSIVE FIX
   Privacy Policy / Terms of Use / Refund Policy
================================================== */


/* ==================================================
   SMALL DESKTOP / TABLET
   1360px and below
================================================== */

@media (max-width: 1360px) {

    /* ----------------------------------------------
       HERO LAYOUT
    ---------------------------------------------- */

    .privacyHero__inner,
    .termsHero__inner,
    .refundHero__inner {
        grid-template-columns: 1fr;

        gap: 38px;

        padding-top: 70px;
        padding-bottom: 70px;
    }


    /* ----------------------------------------------
       CONTENT
    ---------------------------------------------- */

    .privacyHero__content,
    .termsHero__content,
    .refundHero__content {
        width: 100%;
        max-width: 860px;

        margin-left: auto;
        margin-right: auto;

        text-align: center;
    }


    /* ----------------------------------------------
       EYEBROW
    ---------------------------------------------- */

    .privacyHero__eyebrow,
    .termsHero__eyebrow,
    .refundHero__eyebrow {
        justify-content: center;
    }


    /* ----------------------------------------------
       DESCRIPTION
    ---------------------------------------------- */

    .privacyHero__content > p,
    .termsHero__content > p,
    .refundHero__content > p {
        max-width: 680px;

        margin-left: auto;
        margin-right: auto;
    }


    /* ----------------------------------------------
       META CARDS
    ---------------------------------------------- */

    .privacyHero__meta,
    .termsHero__meta,
    .refundHero__meta {
        justify-content: center;
    }


    .privacyHeroMeta,
    .termsHeroMeta,
    .refundHeroMeta {
        text-align: left;
    }


    /* ----------------------------------------------
       VISUAL AREA
    ---------------------------------------------- */

    .privacyHero__visual,
    .termsHero__visual,
    .refundHero__visual {
        width: 100%;
        max-width: 700px;

        min-height: auto;

        margin-left: auto;
        margin-right: auto;

        display: flex;
        align-items: center;
        justify-content: center;

        gap: 28px;
    }


    /* ----------------------------------------------
       MAIN DECORATIVE CIRCLE
    ---------------------------------------------- */

    .privacyHero__shield,
    .termsHero__document,
    .refundHero__symbol {
        width: 150px;
        height: 150px;

        flex: 0 0 150px;
    }


    /* ----------------------------------------------
       INNER RING
    ---------------------------------------------- */

    .privacyHero__shieldRing,
    .termsHero__documentRing,
    .refundHero__symbolRing {
        inset: 18px;
    }


    /* ----------------------------------------------
       RED ICON
    ---------------------------------------------- */

    .privacyHero__shieldIcon,
    .termsHero__documentIcon,
    .refundHero__symbolIcon {
        width: 70px;
        height: 70px;

        border-radius: 20px;
    }


    .privacyHero__shieldIcon svg,
    .termsHero__documentIcon svg,
    .refundHero__symbolIcon svg {
        width: 34px;
        height: 34px;
    }


    /* ----------------------------------------------
       FLOATING CARD
       becomes normal layout element
    ---------------------------------------------- */

    .privacyHero__card,
    .termsHero__card,
    .refundHero__card {
        position: relative;

        top: auto;
        right: auto;
        bottom: auto;
        left: auto;

        width: 330px;
        max-width: 330px;
        min-width: 0;

        margin: 0;

        flex: 0 1 330px;

        text-align: left;
    }

}


/* ==================================================
   TABLET
   900px and below
================================================== */

@media (max-width: 900px) {

    /* ----------------------------------------------
       HERO
    ---------------------------------------------- */

    .privacyHero__inner,
    .termsHero__inner,
    .refundHero__inner {
        gap: 34px;

        padding-top: 60px;
        padding-bottom: 60px;
    }


    /* ----------------------------------------------
       CONTENT
    ---------------------------------------------- */

    .privacyHero__content,
    .termsHero__content,
    .refundHero__content {
        max-width: 760px;
    }


    /* ----------------------------------------------
       DESCRIPTION
    ---------------------------------------------- */

    .privacyHero__content > p,
    .termsHero__content > p,
    .refundHero__content > p {
        max-width: 650px;
    }


    /* ----------------------------------------------
       VISUAL
    ---------------------------------------------- */

    .privacyHero__visual,
    .termsHero__visual,
    .refundHero__visual {
        max-width: 620px;

        gap: 24px;
    }


    /* ----------------------------------------------
       CIRCLE
    ---------------------------------------------- */

    .privacyHero__shield,
    .termsHero__document,
    .refundHero__symbol {
        width: 140px;
        height: 140px;

        flex: 0 0 140px;
    }


    /* ----------------------------------------------
       ICON
    ---------------------------------------------- */

    .privacyHero__shieldIcon,
    .termsHero__documentIcon,
    .refundHero__symbolIcon {
        width: 66px;
        height: 66px;

        border-radius: 19px;
    }


    .privacyHero__shieldIcon svg,
    .termsHero__documentIcon svg,
    .refundHero__symbolIcon svg {
        width: 32px;
        height: 32px;
    }


    /* ----------------------------------------------
       CARD
    ---------------------------------------------- */

    .privacyHero__card,
    .termsHero__card,
    .refundHero__card {
        width: 310px;
        max-width: 310px;

        flex-basis: 310px;
    }

}


/* ==================================================
   MOBILE
   620px and below
================================================== */

@media (max-width: 620px) {

    /* ----------------------------------------------
       HERO
    ---------------------------------------------- */

    .privacyHero__inner,
    .termsHero__inner,
    .refundHero__inner {
        gap: 26px;

        padding-top: 50px;
        padding-bottom: 50px;
    }


    /* ----------------------------------------------
       CONTENT
       Return to left alignment on mobile
    ---------------------------------------------- */

    .privacyHero__content,
    .termsHero__content,
    .refundHero__content {
        width: 100%;
        max-width: 100%;

        margin-left: 0;
        margin-right: 0;

        text-align: left;
    }


    /* ----------------------------------------------
       EYEBROW
    ---------------------------------------------- */

    .privacyHero__eyebrow,
    .termsHero__eyebrow,
    .refundHero__eyebrow {
        justify-content: flex-start;
    }


    /* ----------------------------------------------
       DESCRIPTION
    ---------------------------------------------- */

    .privacyHero__content > p,
    .termsHero__content > p,
    .refundHero__content > p {
        max-width: 100%;

        margin-left: 0;
        margin-right: 0;
    }


    /* ----------------------------------------------
       META CARDS
    ---------------------------------------------- */

    .privacyHero__meta,
    .termsHero__meta,
    .refundHero__meta {
        justify-content: flex-start;
    }


    /* ----------------------------------------------
       VISUAL
    ---------------------------------------------- */

    .privacyHero__visual,
    .termsHero__visual,
    .refundHero__visual {
        width: 100%;
        max-width: 100%;

        min-height: auto;

        margin-left: 0;
        margin-right: 0;

        display: flex;
        align-items: center;
        justify-content: flex-start;

        gap: 15px;
    }


    /* ----------------------------------------------
       MAIN CIRCLE
    ---------------------------------------------- */

    .privacyHero__shield,
    .termsHero__document,
    .refundHero__symbol {
        width: 105px;
        height: 105px;

        flex: 0 0 105px;
    }


    /* ----------------------------------------------
       INNER RING
    ---------------------------------------------- */

    .privacyHero__shieldRing,
    .termsHero__documentRing,
    .refundHero__symbolRing {
        inset: 13px;
    }


    /* ----------------------------------------------
       RED ICON
    ---------------------------------------------- */

    .privacyHero__shieldIcon,
    .termsHero__documentIcon,
    .refundHero__symbolIcon {
        width: 56px;
        height: 56px;

        border-radius: 16px;
    }


    .privacyHero__shieldIcon svg,
    .termsHero__documentIcon svg,
    .refundHero__symbolIcon svg {
        width: 27px;
        height: 27px;
    }


    /* ----------------------------------------------
       CARD
    ---------------------------------------------- */

    .privacyHero__card,
    .termsHero__card,
    .refundHero__card {
        position: relative;

        top: auto;
        right: auto;
        bottom: auto;
        left: auto;

        width: auto;
        max-width: none;
        min-width: 0;

        flex: 1;

        margin: 0;

        padding: 13px 14px;

        text-align: left;
    }


    .privacyHero__card strong,
    .termsHero__card strong,
    .refundHero__card strong {
        font-size: 13px;
    }


    .privacyHero__card p,
    .termsHero__card p,
    .refundHero__card p {
        font-size: 14px;
        line-height: 1.5;
    }

}


/* ==================================================
   VERY SMALL MOBILE
   430px and below
================================================== */

@media (max-width: 430px) {

    /* ----------------------------------------------
       VISUAL STACK
    ---------------------------------------------- */

    .privacyHero__visual,
    .termsHero__visual,
    .refundHero__visual {
        align-items: stretch;
        flex-direction: column;

        gap: 14px;
    }


    /* ----------------------------------------------
       CIRCLE
    ---------------------------------------------- */

    .privacyHero__shield,
    .termsHero__document,
    .refundHero__symbol {
        width: 95px;
        height: 95px;

        flex: 0 0 95px;
    }


    /* ----------------------------------------------
       INNER RING
    ---------------------------------------------- */

    .privacyHero__shieldRing,
    .termsHero__documentRing,
    .refundHero__symbolRing {
        inset: 12px;
    }


    /* ----------------------------------------------
       ICON
    ---------------------------------------------- */

    .privacyHero__shieldIcon,
    .termsHero__documentIcon,
    .refundHero__symbolIcon {
        width: 52px;
        height: 52px;

        border-radius: 15px;
    }


    .privacyHero__shieldIcon svg,
    .termsHero__documentIcon svg,
    .refundHero__symbolIcon svg {
        width: 25px;
        height: 25px;
    }


    /* ----------------------------------------------
       CARD
    ---------------------------------------------- */

    .privacyHero__card,
    .termsHero__card,
    .refundHero__card {
        width: 100%;
        max-width: 100%;

        flex: none;
    }

}


/* ==================================================
   END LEGAL HERO — COMPLETE RESPONSIVE FIX
================================================== */




























































/* ==================================================
   SERVICES PAGE — TYPOGRAPHY FIX
   Consistent readable type scale
================================================== */


/* =========================
   RESIDENTIAL SERVICES
========================= */

.residentialServices__head p{
    font-size:15px;
}

.serviceImageCard__category{
    font-size:14px;
}

.serviceImageCard h3{
    font-size:17px;
}

.serviceImageCard p{
    font-size:13px;
}

.serviceImageCard__issues span{
    font-size:14px;
}

.serviceImageCard__link{
    font-size:14px;
}

.serviceImageCard__number{
    font-size:14px;
}

.residentialServices__bottomLabel{
    font-size:14px;
}

.residentialServices__bottom strong{
    font-size:15px;
}

.residentialServices__bottom p{
    font-size:14px;
}

.residentialServices__price small{
    font-size:14px;
}


/* =========================
   COMMERCIAL SERVICES
========================= */

.commercialServices__head>p{
    font-size:15px;
}

.commercialServiceCard__type{
    font-size:14px;
}

.commercialServiceCard__number{
    font-size:14px;
}

.commercialServiceCard h3{
    font-size:17px;
}

.commercialServiceCard p{
    font-size:13px;
}

.commercialServiceCard li{
    font-size:14px;
}

.commercialServiceCard__link{
    font-size:14px;
}


/* COMMERCIAL DIAGNOSTIC */

.commercialServices__diagnosticContent>span{
    font-size:14px;
}

.commercialServices__diagnosticContent strong{
    font-size:15px;
}

.commercialServices__diagnosticContent p{
    font-size:14px;
}

.commercialServices__price small{
    font-size:14px;
}


/* =========================
   WHY CHOOSE US
========================= */

.servicesWhy__head p{
    font-size:15px;
}

.servicesWhyCard__number{
    font-size:14px;
}

.servicesWhyCard h3{
    font-size:16px;
}

.servicesWhyCard p{
    font-size:13px;
}

.servicesWhy__bottomText span{
    font-size:14px;
}

.servicesWhy__bottomText strong{
    font-size:14px;
}

.servicesWhy__bottomMeta span{
    font-size:14px;
}


/* =========================
   BRANDS WE SERVICE
========================= */

.servicesBrands__head p{
    font-size:15px;
}

.servicesBrands__item span{
    font-size:14px;
}

.servicesBrands__item i{
    font-size:14px;
}

.servicesBrands__bottom strong{
    font-size:14px;
}

.servicesBrands__bottom p{
    font-size:14px;
}

.servicesBrands__contact small{
    font-size:14px;
}

.servicesBrands__contact strong{
    font-size:13px;
}


/* =========================
   SERVICE AREAS
========================= */

.servicesAreas__content>p{
    font-size:15px;
}

.servicesAreas__cities a{
    font-size:14px;
}

.servicesAreas__phone small{
    font-size:14px;
}

.servicesAreas__phone strong{
    font-size:14px;
}

.servicesAreas__sideHead span{
    font-size:14px;
}

.servicesAreas__sideHead strong{
    font-size:18px;
}

.servicesAreas__location small{
    font-size:14px;
}

.servicesAreas__location strong{
    font-size:14px;
}

.servicesAreas__facts strong{
    font-size:14px;
}

.servicesAreas__facts span{
    font-size:14px;
}


/* =========================
   FINAL CTA
========================= */

.servicesFinalCta__content>p{
    font-size:15px;
}

.servicesFinalCta__benefits span{
    font-size:14px;
}

.servicesFinalCta__call small{
    font-size:14px;
}

.servicesFinalCta__call strong{
    font-size:14px;
}

.servicesFinalCta__panelLabel{
    font-size:14px;
}

.servicesFinalCta__panel h3{
    font-size:22px;
}

.servicesFinalCta__steps>div>span{
    font-size:14px;
}

.servicesFinalCta__steps p{
    font-size:14px;
}

.servicesFinalCta__panelLink{
    font-size:14px;
}


/* =========================
   MOBILE
========================= */

@media(max-width:620px){

    .residentialServices__head p,
    .commercialServices__head>p,
    .servicesWhy__head p,
    .servicesBrands__head p,
    .servicesAreas__content>p,
    .servicesFinalCta__content>p{
        font-size:14px;
    }

    .serviceImageCard p,
    .commercialServiceCard p,
    .servicesWhyCard p,
    .servicesBrands__bottom p,
    .servicesFinalCta__steps p{
        font-size:14px;
    }

    .serviceImageCard h3,
    .commercialServiceCard h3{
        font-size:16px;
    }

}








/* ==================================================
   BRANDS PAGE — TYPOGRAPHY FIX
   Consistent readable type scale
================================================== */


/* =========================
   HERO
========================= */

.brandsHero__lead{
    font-size:15px;
}

.brandsHero__phone small{
    font-size:14px;
}

.brandsHero__phone strong{
    font-size:14px;
}

.brandsHero__trustItem strong{
    font-size:18px;
}

.brandsHero__trustItem span{
    font-size:14px;
}

.brandsHero__bottom .container>span{
    font-size:14px;
}

.brandsHero__popular a{
    font-size:14px;
}


/* =========================
   BRAND INTRO
========================= */

.brandsIntro__lead{
    font-size:16px;
}

.brandsIntro__content>p:not(.brandsIntro__lead){
    font-size:14px;
}

.brandsIntro__feature strong{
    font-size:13px;
}

.brandsIntro__feature span{
    font-size:14px;
}

.brandsIntro__link{
    font-size:14px;
}

.brandsIntro__stat strong{
    font-size:23px;
}

.brandsIntro__stat span{
    font-size:14px;
}


/* =========================
   BRANDS CATALOG
========================= */

.brandsCatalog__head p{
    font-size:15px;
}

.brandCard__number{
    font-size:14px;
}

.brandCard__name strong{
    font-size:16px;
}

.brandCard__name span{
    font-size:14px;
}

.brandsCatalog__bottom strong{
    font-size:15px;
}

.brandsCatalog__bottom span{
    font-size:14px;
}


/* =========================
   PREMIUM APPLIANCE EXPERTISE
========================= */

.brandExpertise__lead{
    font-size:15px;
}

.brandExpertise__content>p:not(.brandExpertise__lead){
    font-size:14px;
}

.brandExpertise__feature strong{
    font-size:13px;
}

.brandExpertise__feature small{
    font-size:14px;
}

.brandExpertise__link{
    font-size:14px;
}

.brandExpertise__card small{
    font-size:14px;
}

.brandExpertise__card strong{
    font-size:14px;
}

.brandExpertise__card span:last-child{
    font-size:14px;
}


/* =========================
   APPLIANCE TYPES BY BRAND
========================= */

.brandTypes__head>p{
    font-size:15px;
}

.brandTypeCard__number{
    font-size:14px;
}

.brandTypeCard h3{
    font-size:18px;
}

.brandTypeCard>p{
    font-size:13px;
}

.brandTypeCard li{
    font-size:14px;
}

.brandTypeCard>a,
.brandTypeCard__links a{
    font-size:14px;
}

.brandTypes__note strong{
    font-size:13px;
}

.brandTypes__note p{
    font-size:14px;
}

.brandTypes__note>a{
    font-size:14px;
}


/* =========================
   OEM / QUALITY PARTS
========================= */

.oemParts__lead{
    font-size:15px;
}

.oemParts__content>p:not(.oemParts__lead){
    font-size:14px;
}

.oemParts__feature strong{
    font-size:13px;
}

.oemParts__feature p{
    font-size:14px;
}

.oemParts__link{
    font-size:14px;
}

.oemParts__floating small{
    font-size:14px;
}

.oemParts__floating strong{
    font-size:13px;
}

.oemParts__floating span:last-child{
    font-size:14px;
}


/* =========================
   WHY CHOOSE US
========================= */

.brandWhy__head p{
    font-size:15px;
}

.brandWhyCard__number{
    font-size:14px;
}

.brandWhyCard h3{
    font-size:16px;
}

.brandWhyCard p{
    font-size:13px;
}

.brandWhy__bottomContent span{
    font-size:14px;
}

.brandWhy__bottomContent strong{
    font-size:15px;
}

.brandWhy__phone span{
    font-size:14px;
}

.brandWhy__phone strong{
    font-size:13px;
}


/* =========================
   DIAGNOSTIC FEES
========================= */

.brandFees__head p{
    font-size:15px;
}

.brandFeeCard__popular{
    font-size:14px;
}

.brandFeeCard__label{
    font-size:14px;
}

.brandFeeCard h3{
    font-size:17px;
}

.brandFeeCard>p{
    font-size:13px;
}

.brandFeeCard li{
    font-size:14px;
}

.brandFeeCard>a{
    font-size:14px;
}

.brandFees__infoLabel{
    font-size:14px;
}

.brandFees__info h3{
    font-size:20px;
}

.brandFees__info p{
    font-size:13px;
}

.brandFees__points span{
    font-size:14px;
}

.brandFees__note p{
    font-size:14px;
}


/* =========================
   BRAND FAQ
========================= */

.brandFaq__head p{
    font-size:15px;
}

.brandFaq__label{
    font-size:14px;
}

.brandFaq__intro>p{
    font-size:13px;
}

.brandFaq__support small{
    font-size:14px;
}

.brandFaq__support strong{
    font-size:13px;
}

.brandFaqItem__button>span{
    font-size:14px;
}

.brandFaqItem__content p{
    font-size:13px;
}


/* =========================
   FINAL CTA
========================= */

.brandFinalCta__content>p{
    font-size:15px;
}

.brandFinalCta__benefits span{
    font-size:14px;
}

.brandFinalCta__phone small{
    font-size:14px;
}

.brandFinalCta__phone strong{
    font-size:14px;
}

.brandFinalCta__card small{
    font-size:14px;
}

.brandFinalCta__card strong{
    font-size:13px;
}

.brandFinalCta__card span:last-child{
    font-size:14px;
}


/* =========================
   MOBILE
========================= */

@media(max-width:620px){

    .brandsHero__lead,
    .brandsCatalog__head p,
    .brandTypes__head>p,
    .brandWhy__head p,
    .brandFees__head p,
    .brandFaq__head p,
    .brandFinalCta__content>p{
        font-size:14px;
    }

    .brandsIntro__content>p:not(.brandsIntro__lead),
    .brandExpertise__content>p:not(.brandExpertise__lead),
    .oemParts__content>p:not(.oemParts__lead),
    .brandWhyCard p,
    .brandFeeCard>p,
    .brandFaqItem__content p{
        font-size:13px;
    }

}

/* ==================================================
   LEGAL PAGE LAYOUT
================================================== */

.legalHero {
    position: relative;
    overflow: hidden;
    padding: clamp(120px, 13vw, 170px) 0 clamp(70px, 8vw, 110px);
    color: #fff;
    background:
        radial-gradient(circle at 16% 18%, rgba(206, 0, 1, .28), transparent 32%),
        linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 100%);
}

.legalHero::after {
    content: "";
    position: absolute;
    inset: auto -10% -35% 45%;
    height: 260px;
    background: rgba(255, 255, 255, .08);
    border-radius: 999px;
    filter: blur(12px);
    transform: rotate(-8deg);
}

.legalHero__content {
    position: relative;
    z-index: 1;
    max-width: 860px;
}

.legalHero .eyebrow {
    color: rgba(255, 255, 255, .78);
}

.legalHero h1 {
    margin: 14px 0 16px;
    color: #fff;
    font-size: clamp(44px, 6vw, 76px);
    line-height: .98;
    letter-spacing: -.055em;
}

.legalHero p {
    max-width: 720px;
    margin: 0;
    color: rgba(255, 255, 255, .78);
    font-size: clamp(16px, 2vw, 19px);
    line-height: 1.75;
}

.legalContent {
    background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.legalContent__body {
    width: min(100%, 980px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.legalContent .privacyPolicyBlock__content > p,
.legalContent .refundPolicyBlock__content > p,
.legalContent .termsPolicyBlock__content > p {
    max-width: 760px;
}

@media (max-width: 700px) {
    .legalHero {
        padding: 105px 0 66px;
    }

    .legalContent__body {
        gap: 14px;
    }
}

