/*==================================================
ROOT
==================================================*/

:root {
    --primary: #14213d;
    --secondary: #475569;
    --accent: #198754;
    --gold: #d4a437;

    --bg: #fcfbf7;
    --surface: #ffffff;

    --border: #e8e8e8;

    --heading: #0f172a;
    --text: #475569;

    --radius: 18px;

    --shadow: 0 8px 30px rgba(15, 23, 42, 0.06);

    --transition: 0.35s ease;

    --container: 1280px;
}

/*==================================================
RESET
==================================================*/

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--bg);
    color: var(--text);
    font-family: "Inter", sans-serif;
    font-size: 15px;
    line-height: 1.75;
    overflow-x: hidden;
}

/*==================================================
TYPOGRAPHY
==================================================*/
h1,
h2,
h3,
h4,
h5 {
    color: var(--heading);
    font-weight: 700;
    letter-spacing: -0.03em;
}

h1 {
    font-size: clamp(2rem, 3vw, 2.8rem);
    line-height: 1.15;
}

h2 {
    font-size: clamp(1.5rem, 2.2vw, 2rem);
}

h3 {
    font-size: 1.2rem;
}

p {
    margin-bottom: 1rem;
}

a {
    text-decoration: none;
    color: inherit;
    transition: var(--transition);
}

img {
    max-width: 100%;
}

/*==================================================
CONTAINER
==================================================*/
.container-custom {
    max-width: var(--container);
    margin: auto;
    padding: 0 20px;
}

/*==================================================
SECTIONS
==================================================*/
section {
    position: relative;
    padding: 90px 0;
}

/*==================================================
BUTTONS
==================================================*/
.btn-main {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 26px;
    border-radius: 50px;
    background: var(--primary);
    color: #fff;
    font-weight: 600;
    transition: var(--transition);
}

.btn-main:hover {
    transform: translateY(-2px);
    background: #0d1b32;
}

.btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 13px 24px;
    border: 1px solid var(--border);
    border-radius: 50px;
    background: #fff;
}

.btn-outline:hover {
    border-color: var(--primary);
}

/*==================================================
SECTION TITLE
==================================================*/
.section-title {
    max-width: 650px;
    margin: auto;
    text-align: center;
    margin-bottom: 70px;
}

.section-title small {
    display: inline-block;
    color: var(--accent);
    font-weight: 600;
    margin-bottom: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.section-title p {
    margin-top: 15px;
}

/*==================================================
CARDS
==================================================*/
.card-soft {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 30px;
    transition: var(--transition);
}

.card-soft:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow);
}

/*==================================================
BACKGROUND
==================================================*/
body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: 0.04;
    background-image: radial-gradient(
            circle at 10% 20%,
            #198754 1px,
            transparent 1px
        ),
        radial-gradient(circle at 80% 70%, #14213d 1px, transparent 1px);
    background-size: 140px 140px;
}

/*==================================================
HEADER
==================================================*/
.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    background: rgba(252, 251, 247, 0.95);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid transparent;
    transition: 0.35s;
}

.header.scrolled {
    border-color: #ececec;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}

/*==================================================
NAVBAR
==================================================*/
.navbar-custom{
    height:76px;
    display:grid;
    grid-template-columns:220px 1fr auto;
    align-items:center;
    column-gap:32px;
}

/*==================================================
LOGO
==================================================*/
.logo{
    display:flex;
    align-items:center;
    flex-shrink:0;
}

.logo img{
    width:auto;
    height:52px;
    display:block;
    transition:0.3s ease;
}

.header.scrolled .logo img{
    height:48px;
}

/* Logo Tablet */
@media(max-width:991px){
    .logo img{
        height:46px;
    }
}

/* Logo Mobile */
@media(max-width:576px){
    .logo img{
        height:40px;
    }
}

.nav-links{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:38px;
    list-style:none;
    margin:0;
    padding:0;
}

.nav-links a {
    font-size: 14px;
    font-weight: 500;
    color: var(--text);
    position: relative;
}

.nav-links a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 0;
    height: 2px;
    background: var(--accent);
    transition: 0.3s;
}

.nav-links a:hover {
    color: var(--heading);
}

.nav-links a:hover::after {
    width: 100%;
}

/*==================================================
RIGHT
==================================================*/
.nav-right{
    justify-self:end;
    display:flex;
    align-items:center;
    gap:14px;
}

.menu-toggle {
    display: none;
    width: 44px;
    height: 44px;
    border: none;
    background: none;
    cursor: pointer;
}

.menu-toggle svg {
    width: 22px;
    height: 22px;
}

/*==================================================
MOBILE MENU
==================================================*/
.mobile-menu {
    position: fixed;
    top: 76px;
    left: 0;
    width: 100%;
    background: #fff;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
    transform: translateY(-120%);
    transition: 0.35s;
    z-index: 998;
}

.mobile-menu.active {
    transform: translateY(0);
}

.mobile-menu-inner {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.mobile-menu a {
    font-size: 15px;
    color: var(--heading);
}

.mobile-menu .btn-main {
    width: 100%;
    justify-content: center;
}

/*==================================================
RESPONSIVE
==================================================*/
@media (max-width: 991px) {
    .nav-links {
        display: none;
    }

    .menu-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .nav-right .btn-main {
        display: none;
    }
}

@media (max-width: 576px) {
    .navbar-custom {
        height: 70px;
    }

    .header {
        background: #fcfbf7;
    }

    .mobile-menu {
        top: 70px;
    }
}


/*==================================================
HERO
==================================================*/
.hero{
    padding-top:100px;
    padding-bottom:110px;
    overflow:hidden;
    position:relative;
}

/* subtle vector pattern */
.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        radial-gradient(circle at 15% 30%, rgba(20,33,61,.045) 1px, transparent 1px),
        radial-gradient(circle at 80% 65%, rgba(25,135,84,.05) 1px, transparent 1px);
    background-size:140px 140px;
    pointer-events:none;
    opacity:.7;
}

.hero-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:70px;
    align-items:center;
    position:relative;
    z-index:2;
}

/*==================================================
LEFT
==================================================*/
.hero-content{
    max-width:620px;
}

.hero-tag{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:9px 18px;
    border:1px solid var(--border);
    border-radius:999px;
    background:#fff;
    font-size:13px;
    font-weight:600;
    color:var(--accent);
    margin-bottom:26px;
}

.hero-tag svg{
    width:16px;
    height:16px;
}

.hero h1{
    max-width:560px;
    margin-bottom:22px;
    font-size:clamp(2.2rem,4vw,3.2rem);
    line-height:1.08;
    letter-spacing:-.04em;
}

.hero-text{
    max-width:560px;
    font-size:15px;
    line-height:1.9;
    color:var(--secondary);
    margin-bottom:36px;
}

/*==================================================
HIGHLIGHTS
==================================================*/
.hero-highlights{
    display:grid;
    grid-template-columns:repeat(2,minmax(150px,1fr));
    gap:14px;
    margin-bottom:38px;
}

.hero-highlights div{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:14px;
    color:var(--heading);
    font-weight:500;
}

.hero-highlights svg{
    width:18px;
    height:18px;
    color:var(--accent);
}

/*==================================================
BUTTONS
==================================================*/
.hero-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    margin-bottom:46px;
}

/*==================================================
STATS
==================================================*/
.hero-stats{
    display:flex;
    gap:42px;
    padding-top:28px;
    border-top:1px solid var(--border);
}

.hero-stats strong{
    display:block;
    margin-bottom:6px;
    color:var(--heading);
    font-size:28px;
    font-weight:700;
}

.hero-stats span{
    font-size:13px;
    color:var(--secondary);
}

/*==================================================
RIGHT
==================================================*/
.hero-visual{
    display:flex;
    justify-content:center;
}

.orbit-wrapper{
    position:relative;
    width:680px;
    height:680px;
}

/*==================================================
CENTER IMAGE
==================================================*/
.hero-person{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:290px;
    height:430px;
    display:flex;
    justify-content:center;
    align-items:flex-end;
    z-index:5;
}

.hero-person img{
    width:100%;
    height:auto;
    display:block;
}

/*==================================================
SVG CONNECTIONS
==================================================*/
.orbit-lines{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:2;
    pointer-events:none;
}

.orbit-lines path{
    fill:none;
    stroke:#d7dde6;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-dasharray:8 8;
    opacity:.9;
}

.line{
    stroke-dasharray:800;
    stroke-dashoffset:800;
    animation:drawLine 1.4s ease forwards;
}
.line1{
    animation-delay:.2s;
}
.line2{
    animation-delay:.35s;
}
.line3{
    animation-delay:.50s;
}
.line4{
    animation-delay:.65s;
}
.line5{
    animation-delay:.80s;
}
.line6{
    animation-delay:.95s;
}
.line7{
    animation-delay:1.10s;
}
.line8{
    animation-delay:1.25s;
}

@keyframes drawLine{
    to{
        stroke-dashoffset:0;
    }
}

/*==================================================
PILLS
==================================================*/
.orbit-pill{
    position:absolute;
    display:flex;
    align-items:center;
    gap:10px;
    padding:13px 18px;
    background:#fff;
    border:1px solid var(--border);
    border-radius:999px;
    box-shadow:0 8px 28px rgba(15,23,42,.06);
    font-size:13px;
    font-weight:600;
    color:var(--heading);
    white-space:nowrap;
    transition:.35s;
    z-index:3;
}

.orbit-pill svg{
    width:18px;
    height:18px;
    color:var(--accent);
}

.orbit-pill:hover{
    transform:translateY(-5px);
    box-shadow:0 18px 40px rgba(15,23,42,.08);
}

/*==================================================
PILL POSITIONS
==================================================*/
.pill-1{
    top:18px;
    left:50%;
    transform:translateX(-50%);
}

.pill-2{
    top:115px;
    right:45px;
}

.pill-3{
    top:50%;
    right:0;
    transform:translateY(-50%);
}

.pill-4{
    right:50px;
    bottom:115px;
}

.pill-5{
    bottom:18px;
    left:50%;
    transform:translateX(-50%);
}

.pill-6{
    left:45px;
    bottom:115px;
}

.pill-7{
    top:50%;
    left:0;
    transform:translateY(-50%);
}

.pill-8{
    top:115px;
    left:45px;
}

/*==================================================
REVEAL
==================================================*/
.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.reveal.show{
    opacity:1;
    transform:none;
}

/*==================================================
TABLET
==================================================*/
@media(max-width:1199px){
    .hero-grid{
        grid-template-columns:1fr;
        gap:70px;
    }

    .hero-content{
        max-width:100%;
        text-align:center;
        margin:auto;
    }

    .hero h1,
    .hero-text{
        margin-left:auto;
        margin-right:auto;
    }

    .hero-buttons{
        justify-content:center;
    }

    .hero-highlights{
        max-width:520px;
        margin-left:auto;
        margin-right:auto;
    }

    .hero-stats{
        justify-content:center;
    }
}

/*==================================================
MOBILE
==================================================*/
@media(max-width:768px){
    .hero{
        padding-top:120px;
        padding-bottom:70px;
    }

    .hero h1{
        font-size:2.2rem;
    }

    .hero-highlights{
        grid-template-columns:1fr;
    }

    .hero-stats{
        flex-wrap:wrap;
        gap:24px;
    }

    .orbit-wrapper{
        width:100%;
        max-width:420px;
        height:420px;
    }

    .hero-person{
        width:170px;
        height:260px;
    }

    .orbit-pill{
        padding:8px 12px;
        font-size:11px;
        gap:8px;
    }

    .orbit-pill svg{
        width:14px;
        height:14px;
    }

    .pill-2,
    .pill-4{
        right:8px;
    }

    .pill-6,
    .pill-8{
        left:8px;
    }
}

/*==================================================
OVERRIDE orbit-pill FOR MOBILE
==================================================*/
@media(max-width:768px){
    .orbit-pill{
        white-space:normal;
        max-width:95px;
        text-align:center;
    }
}

/*==================================================
SMALL MOBILE
==================================================*/
@media(max-width:480px){
    .orbit-wrapper{
        max-width:340px;
        height:340px;
    }

    .hero-person{
        width:145px;
        height:215px;
    }

    .orbit-pill{
        padding:7px 10px;
        font-size:10px;
    }
}


/*==================================================
TRUST SECTION
==================================================*/
.trusted{
    padding:110px 0;
    background:#ffffff;
    border-top:1px solid #f0f2f4;
    border-bottom:1px solid #f0f2f4;
}

.trusted-wrapper{
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:80px;
    align-items:center;
}

.section-label{
    display:inline-block;
    font-size:12px;
    font-weight:700;
    color:var(--accent);
    letter-spacing:.14em;
    margin-bottom:18px;
}

.trusted-left h2{
    max-width:520px;
    margin-bottom:22px;
    font-size:clamp(2rem,3vw,2.6rem);
    line-height:1.15;
}

.trusted-left p{
    max-width:520px;
    color:#64748B;
    line-height:1.9;
    font-size:15px;
}

/*========================*/
.trusted-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}
/*========================*/

.trust-card{
    background:#fff;
    border:1px solid #ECECEC;
    border-radius:20px;
    padding:34px;
    transition:.35s;
    min-height:220px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
}

.trust-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(15,23,42,.06);
}

.number{
    font-size:42px;
    font-weight:700;
    color:var(--primary);
    line-height:1;
    margin-bottom:18px;
}

.trust-card h4{
    font-size:17px;
    margin-bottom:12px;
    color:#0F172A;
}

.trust-card p{
    font-size:14px;
    color:#64748B;
    line-height:1.8;
}


/*==================================================
SERVICES GRID
==================================================*/
.services-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
    margin-top:70px;
}

.service-item{
    display:flex;
    gap:22px;
    padding:30px;
    border:1px solid var(--border);
    border-radius:20px;
    background:#fff;
    transition:.35s;
    height:100%;
}

.service-item:hover{
    transform:translateY(-6px);
    border-color:#dfe7e3;
    box-shadow:0 18px 45px rgba(15,23,42,.05);
}

.service-icon{
    width:60px;
    height:60px;
    min-width:60px;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:16px;
    background:#F7FAF8;
    border:1px solid #E6ECE8;
}

.service-icon svg{
    width:24px;
    height:24px;
    color:var(--accent);
}

.service-content{
    flex:1;
}

.service-content h3{
    font-size:20px;
    margin-bottom:10px;
}

.service-content p{
    font-size:14px;
    color:#64748B;
    line-height:1.8;
    margin-bottom:18px;
}

.service-features{
    list-style:none;
    padding:0;
    margin:0;
}

.service-features li{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:8px;
    font-size:13px;
    color:#334155;
}

.service-features li::before{
    content:"";
    width:6px;
    height:6px;
    background:var(--accent);
    border-radius:50%;
    flex-shrink:0;
}


/*==================================
PROPERTY JOURNEY
==================================*/
.journey-section{
    padding:120px 0;
    background:#F8FAFC;
}

.journey-row{
    margin-top:70px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:0;
}

.journey-step{
    flex:1;
    text-align:center;
    position:relative;
}

.journey-icon{
    width:72px;
    height:72px;
    margin:0 auto 20px;
    border-radius:20px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:#fff;
    border:1px solid var(--border);
    box-shadow:0 10px 30px rgba(15,23,42,.05);
}

.journey-icon svg{
    width:30px;
    height:30px;
    color:var(--accent);
}

.journey-step h3{
    font-size:18px;
    margin-bottom:10px;
}

.journey-step p{
    font-size:14px;
    color:#64748B;
    line-height:1.7;
    max-width:170px;
    margin:auto;
}

.journey-line{
    width:80px;
    height:2px;
    background:#D7E3DB;
    margin-top:36px;
    flex-shrink:0;
}

/* CTA */
.journey-cta{
    margin-top:90px;
    max-width:900px;
    margin-inline:auto;
    background:#fff;
    border:1px solid var(--border);
    border-radius:24px;
    padding:60px;
    text-align:center;
    box-shadow:0 20px 50px rgba(15,23,42,.04);
}

.journey-cta h3{
    font-size:42px;
    line-height:1.25;
    margin:20px 0;
    color:var(--heading);
}

.journey-cta h3 span{
    color:var(--accent);
}

.journey-cta p{
    max-width:650px;
    margin:0 auto 40px;
    color:#64748B;
    line-height:1.9;
}

.promise-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px 40px;
    max-width:650px;
    margin:0 auto 45px;
    text-align:left;
}

.promise-item{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:15px;
    font-weight:500;
    color:#334155;
}

.promise-item svg{
    width:18px;
    height:18px;
    color:var(--accent);
    flex-shrink:0;
}

@media(max-width:768px){
    .journey-cta{
        padding:40px 28px;
    }

    .journey-cta h3{
        font-size:30px;
    }

    .promise-list{
        grid-template-columns:1fr;
        gap:16px;
    }
}


/*==================================
FAQ SECTION
==================================*/
.faq-section{
    padding:120px 0;
    background:#FFFFFF;
    position:relative;
}

/*==================================
FAQ HEADER
==================================*/
.faq-header{
    text-align:center;
    max-width:760px;
    margin:0 auto 70px;
}

.faq-header h2{
    font-size:clamp(2rem,4vw,2.8rem);
    line-height:1.2;
    color:var(--heading);
    margin:18px 0;
}

.faq-header p{
    color:#64748B;
    line-height:1.8;
    max-width:640px;
    margin:auto;
}

/*==================================
FAQ WRAPPER
==================================*/
.faq-wrapper{
    max-width:900px;
    margin:auto;
}

/*==================================
FAQ CARD
==================================*/
.faq-item{
    background:#F3F4F6;
    border:1px solid #E5E7EB;
    border-radius:18px;
    margin-bottom:18px;
    overflow:hidden;
    transition:all .3s ease;
}

.faq-item:hover{
    border-color:#D1D5DB;
    box-shadow:0 10px 30px rgba(15,23,42,.05);
    transform:translateY(-2px);
}

/*==================================
FAQ QUESTION
==================================*/
.faq-question{
    width:100%;
    background:none;
    border:none;
    padding:24px 28px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    text-align:left;
    font-size:17px;
    font-weight:600;
    color:var(--heading);
}

.faq-question svg{
    width:20px;
    height:20px;
    color:var(--accent);
    transition:.3s ease;
    flex-shrink:0;
}

/*==================================
FAQ ANSWER
==================================*/
.faq-answer{
    display:none;
    padding:0 28px 26px;
}

.faq-answer p{
    margin:0;
    color:#64748B;
    line-height:1.9;
    font-size:15px;
}

/*==================================
FAQ ACTIVE
==================================*/
.faq-item.active{
    border-color:rgba(25,135,84,.25);
    box-shadow:0 12px 35px rgba(25,135,84,.08);
}

.faq-item.active .faq-answer{
    display:block;
}

.faq-item.active .faq-question svg{
    transform:rotate(45deg);
}

/*==================================
FAQ MOBILE
==================================*/
@media (max-width:768px){
    .faq-section{
        padding:90px 0;
    }

    .faq-header{
        margin-bottom:45px;
    }

    .faq-question{
        font-size:16px;
        padding:20px;
    }

    .faq-answer{
        padding:0 20px 20px;
    }
}


/*==================================
LOCATION
==================================*/
.areas-served{
    padding:45px 0;
    background:#F8FAFC;
    border-top:1px solid #ECEFF3;
    border-bottom:1px solid #ECEFF3;
}

.areas-wrap{
    text-align:center;
    max-width:1100px;
    margin:auto;
}

.areas-label{
    display:block;
    margin-bottom:18px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
    color:var(--accent);
    text-transform:uppercase;
}

.areas-list{
    margin:0;
    line-height:2.1;
    font-size:14px;
    color:#64748B;
}

.areas-list a{
    color:#475569;
    text-decoration:none;
    transition:.25s;
    white-space:nowrap;
}

.areas-list a:hover{
    color:var(--accent);
}

.areas-list span{
    color:#CBD5E1;
    margin:0 8px;
}

@media(max-width:768px){
    .areas-served{
        padding:35px 0;
    }
    .areas-list{
        font-size:13px;
        line-height:2;
    }
    .areas-list span{
        margin:0 6px;
    }
}


/*==================================
FOOTER
==================================*/
.footer {
    background: #1f242a;
    color: #d6d9de;
}

/*============================*/
.footer-top {
    padding: 80px 0 50px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1.2fr 1.4fr;
    gap: 60px;
}

.footer-logo {
    height: 52px;
    margin-bottom: 25px;
}

.footer-about p {
    color: #aeb6c2;
    line-height: 1.7;
	font-size: .85rem;
}

.footer-col h4 {
    color: #fff;
    font-size: 18px;
    margin-bottom: 22px;
}

.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-col li {
    margin-bottom: 14px;
	line-height: 1.7;
}

.footer-col a {
    color: #aeb6c2;
    text-decoration: none;
    transition: 0.3s;
	font-size: .85rem;
}

.footer-col a:hover {
    color: #fff;
}

.footer-contact li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
	font-size: .85rem;
}

.footer-contact svg {
    width: 18px;
    color: var(--accent);
    flex-shrink: 0;
    margin-top: 2px;
}

/*============================*/
.footer-middle {
    padding: 35px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-middle h5 {
    color: #fff;
    margin-bottom: 18px;
    font-size: 18px;
}

.footer-locations {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
	line-height: 1.0;
}

.footer-locations a {
    color: #aeb6c2;
    text-decoration: none;
    font-size: .83rem;
    padding-right: 12px;
    border-right: 1px solid rgba(255, 255, 255, 0.15);
}

.footer-locations a:last-child {
    border: none;
}
/*============================*/

.footer-bottom {
    padding: 22px 0;
}

.footer-bottom-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.footer-bottom p {
    margin: 0;
    color: #aeb6c2;
    font-size: 14px;
}

.footer-bottom a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.footer-bottom a:hover {
    color: var(--accent);
}

/*============================
Responsive Footer
============================*/
@media (max-width: 992px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
}

@media (max-width: 768px) {
    .footer-top {
        padding: 60px 0 40px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .footer-bottom-wrap {
        flex-direction: column;
        text-align: center;
    }

    .footer-locations {
        gap: 10px;
    }

    .footer-locations a {
        border: none;
        padding: 0;
    }
}
