:root {
            --ink: #24233d;
            --ink-2: #17162a;
            --purple: #454262;
            --purple-soft: #77738e;
            --gold: #f2b544;
            --cream: #f7f5ef;
            --white: #fff;
            --muted: #777589;
            --line: #e7e4de;
            --green: #25d366;
            --shadow: 0 24px 70px rgba(27, 24, 48, .12);
            --radius: 26px;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box
        }

        html {
            scroll-behavior: smooth
        }

        body {
            font-family: "Inter", sans-serif;
            color: var(--ink);
            background: #fff;
            line-height: 1.65;
            overflow-x: hidden;
        }

        body.menu-open {
            overflow: hidden
        }

        img {
            display: block;
            max-width: 100%
        }

        a {
            text-decoration: none;
            color: inherit
        }

        button,
        input,
        textarea,
        select {
            font: inherit
        }

        button {
            cursor: pointer
        }

        .container {
            width: min(1180px, 92%);
            margin-inline: auto
        }

        .section {
            padding: 105px 0
        }

        .section-label {
            display: inline-block;
            font-size: 10px;
            font-weight: 800;
            letter-spacing: 2px;
            color: #9a7a2b;
            margin-bottom: 12px
        }

        h1,
        h2,
        h3 {
            font-family: "Poppins", sans-serif
        }

        em {
            font-style: normal;
            color: #817d98
        }

        /* loader/progress */
        .page-loader {
            position: fixed;
            inset: 0;
            z-index: 5000;
            background: var(--ink);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            color: #fff;
            transition: .6s ease
        }

        .page-loader.hidden {
            opacity: 0;
            visibility: hidden
        }

        .loader-logo {
            width: 64px;
            height: 64px;
            border: 1px solid var(--gold);
            border-radius: 18px;
            display: grid;
            place-items: center;
            font: 800 21px Poppins
        }

        .loader-name {
            margin-top: 12px;
            font: 700 12px Poppins;
            letter-spacing: 2px
        }

        .loader-bar {
            width: 110px;
            height: 2px;
            background: #ffffff28;
            margin-top: 18px;
            overflow: hidden
        }

        .loader-bar span {
            display: block;
            width: 50%;
            height: 100%;
            background: var(--gold);
            animation: loader 1.1s infinite
        }

        @keyframes loader {
            from {
                transform: translateX(-120%)
            }

            to {
                transform: translateX(230%)
            }
        }

        .scroll-progress {
            position: fixed;
            top: 0;
            left: 0;
            width: 0;
            height: 3px;
            background: var(--gold);
            z-index: 6000
        }

        /* navbar */
        .navbar {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 78px;
            padding: 0 4%;
            z-index: 2000;
            display: flex;
            align-items: center;
            justify-content: space-between;
            color: #fff;
            background: #22213bce;
            backdrop-filter: blur(18px);
            border-bottom: 1px solid #ffffff12;
            transition: .35s
        }

        .navbar.scrolled {
            height: 68px;
            background: #24233df5;
            box-shadow: 0 15px 45px #00000020
        }

        .brand {
            display: flex;
            align-items: center;
            gap: 10px;
            color: #fff;
            white-space: nowrap
        }

        .brand-mark {
            width: 39px;
            height: 39px;
            display: grid;
            place-items: center;
            border: 1px solid #ffffffaa;
            border-radius: 12px;
            font: 800 13px Poppins;
            transition: .3s
        }

        .brand:hover .brand-mark {
            background: var(--gold);
            color: var(--ink);
            border-color: var(--gold)
        }

        .brand-text {
            font: 600 14px Poppins;
            letter-spacing: .5px
        }

        .brand-text strong {
            font-weight: 800
        }

        .nav-menu {
            display: flex;
            align-items: center;
            height: 100%;
            gap: 1px
        }

        .nav-item {
            position: relative;
            height: 100%;
            display: flex;
            align-items: center
        }

        .nav-link {
            position: relative;
            border: 0;
            background: none;
            color: #fff;
            padding: 10px 9px;
            font-size: 11px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 5px
        }

        .nav-link:after {
            content: "";
            position: absolute;
            left: 9px;
            right: 9px;
            bottom: 5px;
            height: 2px;
            border-radius: 20px;
            background: var(--gold);
            transform: scaleX(0);
            transition: .3s
        }

        .nav-link:hover:after {
            transform: scaleX(1)
        }

        .arrow {
            opacity: .7;
            font-size: 12px;
            transition: .3s
        }

        .nav-item:hover .arrow {
            transform: rotate(180deg);
            color: var(--gold)
        }

        .nav-call {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            margin-left: 8px;
            padding: 10px 16px;
            border-radius: 999px;
            background: var(--gold);
            color: #201f35;
            font-size: 11px;
            font-weight: 800;
            transition: .3s
        }

        .nav-call:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 25px #f2b54440
        }

        .dropdown,
        .mega-menu {
            position: absolute;
            top: calc(100% - 1px);
            left: 50%;
            opacity: 0;
            visibility: hidden;
            transform: translate(-50%, 15px);
            transition: .25s ease;
            background: #282740fa;
            border: 1px solid #ffffff14;
            box-shadow: 0 25px 60px #00000038;
            backdrop-filter: blur(18px)
        }

        .nav-item:hover>.dropdown,
        .nav-item:hover>.mega-menu {
            opacity: 1;
            visibility: visible;
            transform: translate(-50%, 0)
        }

        .dropdown {
            min-width: 190px;
            padding: 8px;
            border-radius: 14px
        }

        .dropdown a {
            display: block;
            padding: 9px 11px;
            color: #eee;
            font-size: 11px;
            border-radius: 7px;
            transition: .2s
        }

        .dropdown a:hover {
            color: var(--gold);
            background: #ffffff0d;
            padding-left: 15px
        }

        .mega-menu {
            width: 720px;
            padding: 23px;
            border-radius: 18px;
            max-height: 75vh;
            overflow: auto
        }

        .mega-title {
            margin-bottom: 18px
        }

        .mega-title span {
            display: block;
            color: var(--gold);
            font-size: 9px;
            font-weight: 800;
            letter-spacing: 1.8px
        }

        .mega-title h3 {
            color: #fff;
            font: 700 19px Poppins
        }

        .mega-columns {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 22px
        }

        .mega-column {
            display: flex;
            flex-direction: column
        }

        .mega-column h4 {
            color: #fff;
            font: 700 12px Poppins;
            margin-bottom: 8px
        }

        .mega-column a,
        .location-area-menu a {
            color: #d9d7e0;
            font-size: 10px;
            padding: 5px 7px;
            border-radius: 6px;
            transition: .2s
        }

        .mega-column a:hover,
        .location-area-menu a:hover {
            color: var(--gold);
            background: #f2b54414
        }

        .location-menu {
            width: 700px
        }

        .location-services {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 8px
        }

        .location-service {
            border: 1px solid #ffffff10;
            border-radius: 10px;
            overflow: hidden
        }

        .location-service-btn {
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px 11px;
            background: #ffffff08;
            border: 0;
            color: #fff;
            font-size: 11px;
            font-weight: 700
        }

        .location-area-menu {
            display: grid;
            grid-template-columns: 1fr 1fr;
            max-height: 260px;
            overflow: auto;
            padding: 5px
        }

        .location-area-menu a {
            font-size: 9px
        }

        .service-arrow {
            transition: .25s
        }

        .location-service.open .service-arrow {
            transform: rotate(90deg);
            color: var(--gold)
        }

        .location-area-menu {
            display: none
        }

        .location-service.open .location-area-menu {
            display: grid
        }

        .menu-toggle {
            display: none;
            border: 0;
            background: none;
            width: 42px;
            height: 42px
        }

        .menu-toggle span {
            display: block;
            width: 25px;
            height: 2px;
            margin: 5px auto;
            background: #fff;
            transition: .3s
        }

        .menu-toggle.active span:nth-child(1) {
            transform: translateY(7px) rotate(45deg)
        }

        .menu-toggle.active span:nth-child(2) {
            opacity: 0
        }

        .menu-toggle.active span:nth-child(3) {
            transform: translateY(-7px) rotate(-45deg)
        }

        /* hero */
        .hero {
            position: relative;
            min-height: 760px;
            height: 100svh;
            overflow: hidden;
            background: var(--ink)
        }

        .hero-media-stack,
        .hero-media-stack:after {
            position: absolute;
            inset: 0
        }

        .hero-media {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            transform: scale(1.08);
            transition: opacity 1s, transform 7s
        }

        .hero-media.is-active {
            opacity: 1;
            transform: scale(1)
        }

        .hero-shade {
            position: absolute;
            inset: 0;
            background: linear-gradient(90deg, #121123d9 0%, #18172a96 45%, #16152652 100%)
        }

        .hero-glow {
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 80% 35%, #f2b5442a, transparent 25%)
        }

        .hero-content {
            height: 100%;
            position: relative;
            z-index: 2;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            padding-bottom: 105px
        }

        .hero-copy {
            max-width: 720px;
            color: #fff
        }

        .hero-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 9px;
            padding: 7px 12px;
            border: 1px solid #ffffff3d;
            border-radius: 999px;
            font-size: 9px;
            font-weight: 800;
            letter-spacing: 1.6px;
            background: #ffffff0b
        }

        .hero-eyebrow i {
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: var(--gold);
            box-shadow: 0 0 0 5px #f2b5441a
        }

        .hero h1 {
            font-size: clamp(46px, 7vw, 88px);
            line-height: 1.02;
            margin: 20px 0 18px;
            letter-spacing: -2px
        }

        .hero h1 em {
            color: #f4f0e7
        }

        .hero-copy>p {
            max-width: 650px;
            color: #ffffffbd;
            font-size: 15px
        }

        .hero-actions {
            display: flex;
            gap: 12px;
            margin-top: 28px
        }

        .hero-primary,
        .hero-secondary {
            min-width: 205px;
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 13px 16px;
            border-radius: 13px;
            transition: .3s
        }

        .hero-primary {
            background: var(--gold);
            color: #211f34
        }

        .hero-secondary {
            background: #25d366e8;
            color: #05230f
        }

        .hero-primary:hover,
        .hero-secondary:hover {
            transform: translateY(-4px)
        }

        .action-icon {
            width: 39px;
            height: 39px;
            display: grid;
            place-items: center;
            border-radius: 11px;
            background: #00000010;
            font-size: 17px
        }

        .hero-actions small {
            display: block;
            font-size: 8px;
            letter-spacing: 1.3px;
            opacity: .7
        }

        .hero-actions span:last-child {
            font-size: 12px;
            font-weight: 800
        }

        .hero-meta {
            display: flex;
            gap: 12px;
            flex-wrap: wrap;
            margin-top: 28px;
            color: #ffffff8f;
            font-size: 10px;
            letter-spacing: .4px
        }

        .hero-side-card {
            width: 220px;
            padding: 22px;
            border: 1px solid #ffffff2a;
            background: #ffffff0d;
            backdrop-filter: blur(16px);
            color: #fff;
            border-radius: 20px;
            margin-bottom: 8px
        }

        .mini-label {
            display: block;
            color: var(--gold);
            font-size: 8px;
            font-weight: 800;
            letter-spacing: 1.7px;
            margin-bottom: 9px
        }

        .hero-side-card strong {
            display: block;
            font: 600 15px/1.5 Poppins
        }

        .hero-side-card a {
            display: block;
            margin-top: 17px;
            color: #fff;
            font-size: 10px;
            font-weight: 800
        }

        .hero-dots {
            position: absolute;
            right: 4%;
            bottom: 38px;
            z-index: 4;
            display: flex;
            gap: 6px
        }

        .hero-dots button {
            width: 8px;
            height: 8px;
            border: 0;
            border-radius: 50%;
            background: #ffffff66;
            transition: .3s
        }

        .hero-dots button.active {
            width: 28px;
            border-radius: 20px;
            background: var(--gold)
        }

        .hero-scroll {
            position: absolute;
            left: 4%;
            bottom: 38px;
            z-index: 4;
            color: #ffffff9c;
            font-size: 9px;
            letter-spacing: 1.2px
        }

        .hero-scroll span {
            display: inline-block;
            width: 1px;
            height: 28px;
            background: var(--gold);
            vertical-align: middle;
            margin-right: 9px;
            animation: pulse 1.5s infinite
        }

        @keyframes pulse {

            0%,
            100% {
                transform: scaleY(.4)
            }

            50% {
                transform: scaleY(1)
            }
        }

        /* trust */
        .trust-strip {
            background: var(--gold);
            color: var(--ink)
        }

        .trust-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr)
        }

        .trust-grid div {
            display: flex;
            align-items: center;
            gap: 15px;
            padding: 22px 15px;
            border-right: 1px solid #24233d1c
        }

        .trust-grid div:last-child {
            border: 0
        }

        .trust-grid strong {
            font: 800 11px Poppins;
            opacity: .5
        }

        .trust-grid span {
            font-size: 12px;
            font-weight: 800
        }

        /* headings */
        .section-heading {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 30px;
            margin-bottom: 42px
        }

        .section-heading h2,
        .about-copy h2,
        .why-copy h2,
        .faq-intro h2,
        .contact-copy h2 {
            font-size: clamp(34px, 4.4vw, 56px);
            line-height: 1.08;
            letter-spacing: -1.2px
        }

        .section-heading>p {
            max-width: 390px;
            color: var(--muted);
            font-size: 13px
        }

        .section-heading.center {
            display: block;
            text-align: center
        }

        .section-heading.center h2 {
            margin-top: 2px
        }

        /* about */
        .about-section {
            background: #fff
        }

        .about-grid-new {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
            align-items: center
        }

        .about-visual {
            position: relative;
            padding: 0 28px 28px 0
        }

        .about-main-image {
            position: relative;
            overflow: hidden;
            border-radius: 28px;
            box-shadow: var(--shadow)
        }

        .about-main-image img {
            width: 100%;
            aspect-ratio: 1/1;
            object-fit: cover
        }

        .about-accent {
            position: absolute;
            right: 0;
            bottom: 0;
            width: 45%;
            height: 45%;
            border: 2px solid var(--gold);
            border-radius: 25px;
            z-index: -1
        }

        .experience-card {
            position: absolute;
            left: -18px;
            bottom: 22px;
            padding: 18px 20px;
            background: var(--ink);
            color: #fff;
            border-radius: 18px;
            display: flex;
            align-items: center;
            gap: 12px;
            box-shadow: 0 20px 40px #0003
        }

        .experience-card strong {
            font: 800 32px Poppins;
            color: var(--gold)
        }

        .experience-card span {
            font-size: 10px;
            line-height: 1.35;
            text-transform: uppercase;
            letter-spacing: 1px
        }

        .about-copy>p {
            color: var(--muted);
            font-size: 14px;
            margin-top: 17px;
            max-width: 560px
        }

        .check-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
            margin: 25px 0
        }

        .check-grid span {
            font-size: 11px;
            font-weight: 800
        }

        .check-grid span::first-letter {
            color: #9a7a2b
        }

        .dark-button,
        .outline-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 18px;
            padding: 13px 18px;
            border-radius: 11px;
            font-size: 11px;
            font-weight: 800;
            transition: .3s
        }

        .dark-button {
            background: var(--ink);
            color: #fff
        }

        .dark-button:hover {
            transform: translateY(-3px);
            box-shadow: 0 14px 30px #24233d25
        }

        .outline-button {
            border: 1px solid var(--ink);
            color: var(--ink)
        }

        .outline-button:hover {
            background: var(--ink);
            color: #fff
        }

        /* services */
        .services-section {
            background: var(--cream)
        }

        .service-grid-new {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px
        }

        .service-card {
            background: #fff;
            border: 1px solid var(--line);
            border-radius: 22px;
            overflow: hidden;
            transition: .35s;
            box-shadow: 0 5px 20px #24233d08
        }

        .service-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 25px 55px #24233d15
        }

        .service-image-wrap {
            position: relative;
            overflow: hidden
        }

        .service-image-wrap img {
            width: 100%;
            height: 225px;
            object-fit: cover;
            transition: .5s
        }

        .service-card:hover img {
            transform: scale(1.05)
        }

        .service-number {
            position: absolute;
            top: 13px;
            right: 13px;
            background: #24233de8;
            color: #fff;
            border-radius: 999px;
            padding: 5px 9px;
            font: 700 9px Poppins
        }

        .service-card-body {
            padding: 22px
        }

        .card-kicker {
            font-size: 8px;
            font-weight: 800;
            letter-spacing: 1.6px;
            color: #a18438
        }

        .service-card h3 {
            font-size: 20px;
            line-height: 1.25;
            margin: 7px 0 9px
        }

        .service-card p {
            font-size: 12px;
            color: var(--muted);
            min-height: 42px
        }

        .service-card a {
            display: inline-flex;
            gap: 8px;
            margin-top: 17px;
            font-size: 10px;
            font-weight: 800;
            color: var(--ink)
        }

        .service-card a span {
            color: #a18438
        }

        /* process */
        .process-section {
            background: var(--ink);
            color: #fff;
            padding: 100px 0
        }

        .section-heading.light .section-label {
            color: var(--gold)
        }

        .section-heading.light h2 {
            color: #fff
        }

        .section-heading.light>p {
            color: #ffffff85
        }

        .process-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 16px
        }

        .process-card {
            padding: 28px;
            border: 1px solid #ffffff18;
            border-radius: 22px;
            background: #ffffff08
        }

        .process-card span {
            display: block;
            color: var(--gold);
            font: 800 12px Poppins;
            margin-bottom: 32px
        }

        .process-card strong {
            font: 600 19px Poppins;
            display: block
        }

        .process-card p {
            font-size: 12px;
            color: #ffffff82;
            margin-top: 9px
        }

        /* gallery */
        .gallery-section {
            background: #fff
        }

        .gallery-filters {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
            margin: -15px 0 25px
        }

        .gallery-filters button {
            border: 1px solid var(--line);
            background: #fff;
            color: var(--muted);
            padding: 9px 14px;
            border-radius: 999px;
            font-size: 10px;
            font-weight: 800
        }

        .gallery-filters button.active,
        .gallery-filters button:hover {
            background: var(--ink);
            color: #fff;
            border-color: var(--ink)
        }

        .gallery-grid-new {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 14px
        }

        .gallery-card {
            position: relative;
            min-height: 245px;
            border-radius: 18px;
            overflow: hidden;
            background: var(--ink)
        }

        .gallery-card img {
            width: 100%;
            height: 100%;
            min-height: 245px;
            object-fit: cover;
            transition: .5s
        }

        .gallery-card:after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, transparent 35%, #11101fce)
        }

        .gallery-card:hover img {
            transform: scale(1.06)
        }

        .gallery-overlay {
            position: absolute;
            left: 17px;
            right: 17px;
            bottom: 16px;
            z-index: 2;
            color: #fff
        }

        .gallery-overlay span {
            display: block;
            color: var(--gold);
            font-size: 8px;
            font-weight: 800;
            letter-spacing: 1.5px;
            text-transform: uppercase
        }

        .gallery-overlay strong {
            display: block;
            font: 600 14px Poppins;
            margin-top: 3px
        }

        .gallery-card.is-hidden {
            display: none
        }

        /* why */
        .why-section {
            background: var(--cream)
        }

        .why-grid {
            display: grid;
            grid-template-columns: .9fr 1.1fr;
            gap: 80px;
            align-items: center
        }

        .why-copy>p {
            color: var(--muted);
            font-size: 14px;
            max-width: 550px;
            margin: 20px 0 25px
        }

        .feature-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 14px
        }

        .feature-card {
            background: #fff;
            border: 1px solid var(--line);
            border-radius: 20px;
            padding: 25px;
            min-height: 175px
        }

        .feature-card span {
            color: #a18438;
            font: 800 11px Poppins
        }

        .feature-card strong {
            display: block;
            font: 600 17px Poppins;
            margin-top: 25px
        }

        .feature-card p {
            color: var(--muted);
            font-size: 11px;
            margin-top: 6px
        }

        /* reviews */
        .reviews-section {
            background: #fff
        }

        .review-wrap {
            display: grid;
            grid-template-columns: 45px minmax(0, 700px) 45px;
            justify-content: center;
            align-items: center;
            gap: 18px
        }

        .review-track {
            position: relative;
            min-height: 245px
        }

        .review-card {
            display: none;
            text-align: center;
            padding: 45px 35px;
            border: 1px solid var(--line);
            border-radius: 25px;
            background: #fbfaf7;
            box-shadow: var(--shadow)
        }

        .review-card.active {
            display: block
        }

        .stars {
            color: #c0922e;
            letter-spacing: 4px;
            font-size: 12px
        }

        .review-card p {
            font: 500 20px/1.55 Poppins;
            margin: 18px auto;
            max-width: 610px
        }

        .review-card strong {
            display: block;
            font-size: 11px
        }

        .review-card span {
            display: block;
            color: var(--muted);
            font-size: 9px;
            margin-top: 3px
        }

        .review-arrow {
            width: 44px;
            height: 44px;
            border: 1px solid var(--line);
            border-radius: 50%;
            background: #fff;
            color: var(--ink)
        }

        .review-dots {
            display: flex;
            justify-content: center;
            gap: 6px;
            margin-top: 20px
        }

        .review-dots button {
            width: 7px;
            height: 7px;
            border: 0;
            border-radius: 50%;
            background: #d5d2ca
        }

        .review-dots button.active {
            width: 25px;
            border-radius: 20px;
            background: var(--gold)
        }

        /* faq */
        .faq-section {
            background: var(--cream)
        }

        .faq-grid {
            display: grid;
            grid-template-columns: .8fr 1.2fr;
            gap: 80px
        }

        .faq-intro>p {
            color: var(--muted);
            font-size: 13px;
            margin: 18px 0 25px;
            max-width: 350px
        }

        .faq-item {
            border-bottom: 1px solid #dcd8cf
        }

        .faq-question {
            width: 100%;
            border: 0;
            background: none;
            text-align: left;
            padding: 19px 0;
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: var(--ink);
            font: 600 14px Poppins
        }

        .faq-question span {
            font-size: 20px;
            color: #9a7a2b;
            transition: .25s
        }

        .faq-item.open .faq-question span {
            transform: rotate(45deg)
        }

        .faq-answer {
            display: grid;
            grid-template-rows: 0fr;
            transition: .3s
        }

        .faq-answer p {
            overflow: hidden;
            color: var(--muted);
            font-size: 12px
        }

        .faq-item.open .faq-answer {
            grid-template-rows: 1fr
        }

        .faq-item.open .faq-answer p {
            padding-bottom: 17px
        }

        /* contact */
        .contact-section {
            background: var(--ink);
            color: #fff;
            padding: 105px 0
        }

        .contact-grid {
            display: grid;
            grid-template-columns: .85fr 1.15fr;
            gap: 75px;
            align-items: start
        }

        .contact-copy .section-label {
            color: var(--gold)
        }

        .contact-copy h2 {
            color: #fff
        }

        .contact-copy>p {
            color: #ffffff8c;
            font-size: 13px;
            max-width: 470px;
            margin: 20px 0 30px
        }

        .contact-list {
            display: grid;
            gap: 10px
        }

        .contact-list>a,
        .contact-list>div {
            display: flex;
            align-items: center;
            gap: 13px;
            color: #fff
        }

        .contact-list>a>span,
        .contact-list>div>span {
            width: 39px;
            height: 39px;
            border: 1px solid #ffffff18;
            border-radius: 12px;
            display: grid;
            place-items: center;
            color: var(--gold)
        }

        .contact-list small {
            display: block;
            color: #ffffff60;
            font-size: 8px;
            letter-spacing: 1.3px
        }

        .contact-list strong {
            font-size: 11px
        }

        .inspection-form {
            background: #fff;
            color: var(--ink);
            border-radius: 26px;
            padding: 30px;
            box-shadow: 0 30px 70px #0004
        }

        .form-top span {
            display: block;
            color: #a18438;
            font-size: 9px;
            font-weight: 800;
            letter-spacing: 1.7px
        }

        .form-top strong {
            display: block;
            font: 600 24px Poppins;
            margin: 3px 0 22px
        }

        .form-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 13px
        }

        .inspection-form label {
            display: block;
            font-size: 10px;
            font-weight: 800;
            margin-bottom: 13px
        }

        .inspection-form input,
        .inspection-form select,
        .inspection-form textarea {
            width: 100%;
            margin-top: 6px;
            border: 1px solid var(--line);
            border-radius: 10px;
            padding: 12px 13px;
            outline: none;
            background: #fff;
            color: var(--ink);
            font-size: 11px;
            resize: vertical
        }

        .inspection-form input:focus,
        .inspection-form select:focus,
        .inspection-form textarea:focus {
            border-color: #b0924a;
            box-shadow: 0 0 0 3px #f2b54420
        }

        .form-submit {
            width: 100%;
            border: 0;
            border-radius: 11px;
            background: var(--gold);
            color: var(--ink);
            padding: 14px;
            font-size: 11px;
            font-weight: 800;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 15px
        }

        .form-status {
            font-size: 10px;
            margin-top: 12px;
            color: #716e7e;
            min-height: 16px
        }

        /* footer */
        .footer {
            background: #17162a;
            color: #fff;
            padding-top: 80px
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 1.15fr .9fr .95fr;
            gap: 50px;
            padding-bottom: 55px
        }

        .footer-column>h4 {
            font: 700 12px Poppins;
            margin-bottom: 15px
        }

        .footer-brand {
            display: flex;
            align-items: center;
            gap: 10px;
            font: 600 14px Poppins;
            margin-bottom: 23px
        }

        .footer-brand strong {
            font-weight: 800
        }

        .footer-about>h4 {
            color: #fff;
            margin-top: 18px
        }

        .footer-about>p {
            color: #ffffff70;
            font-size: 11px;
            max-width: 340px
        }

        .footer-contact {
            display: grid;
            gap: 7px
        }

        .footer-contact a {
            color: #ffffffb0;
            font-size: 10px
        }

        .quick-links {
            display: flex;
            flex-wrap: wrap;
            gap: 7px 12px
        }

        .quick-links a {
            color: #ffffff80;
            font-size: 10px
        }

        .social-links {
            display: flex;
            gap: 7px;
            margin-top: 18px
        }

        .social {
            width: 32px;
            height: 32px;
            display: grid;
            place-items: center;
            border: 1px solid #ffffff16;
            border-radius: 50%
        }

        .branch-item {
            padding: 15px 0;
            border-bottom: 1px solid #ffffff12
        }

        .branch-item strong {
            display: block;
            font-size: 11px
        }

        .branch-item span {
            display: block;
            color: #ffffff70;
            font-size: 10px;
            margin: 3px 0 5px
        }

        .branch-item a {
            display: inline-block;
            color: var(--gold);
            font-size: 9px;
            margin-right: 12px
        }

        .footer-services {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 7px
        }

        .footer-services a {
            color: #ffffff78;
            font-size: 9px
        }

        .footer-services a:hover,
        .quick-links a:hover,
        .footer-contact a:hover {
            color: var(--gold)
        }

        .footer-bottom {
            border-top: 1px solid #ffffff12;
            padding: 20px 0;
            display: flex;
            justify-content: space-between;
            gap: 20px;
            color: #ffffff55;
            font-size: 9px
        }

        .footer-bottom a {
            color: #ffffff8a
        }

        /* reveal */
        .reveal {
            opacity: 0;
            transform: translateY(22px);
            transition: opacity .7s ease, transform .7s ease
        }

        .reveal.visible {
            opacity: 1;
            transform: none
        }

        /* floating actions */
        .floating-actions {
            position: fixed;
            right: 18px;
            bottom: 18px;
            z-index: 1800;
            display: grid;
            gap: 9px
        }

        .float-btn {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            display: grid;
            place-items: center;
            box-shadow: 0 14px 35px #0002;
            font-size: 18px
        }

        .float-top {
            background: #fff;
            color: var(--ink);
            border: 1px solid var(--line);
            display: none
        }

        .float-wa {
            background: var(--green);
            color: #05230f
        }

        .float-call {
            background: var(--ink);
            color: #fff
        }

        .float-top.show {
            display: grid
        }

        /* mobile */
        @media(max-width:1100px) {
            .nav-menu {
                gap: 0
            }

            .nav-link {
                padding-inline: 7px
            }

            .nav-call {
                padding-inline: 12px
            }
        }

        @media(max-width:900px) {
            .navbar {
                height: 70px
            }

            .menu-toggle {
                display: block
            }

            .nav-menu {
                position: fixed;
                top: 70px;
                right: 0;
                width: min(390px, 100%);
                height: calc(100svh - 70px);
                background: #24233dfd;
                backdrop-filter: blur(20px);
                display: block;
                padding: 12px 16px 35px;
                overflow-y: auto;
                transform: translateX(105%);
                transition: .35s;
                box-shadow: -20px 0 50px #0004
            }

            .nav-menu.open {
                transform: none
            }

            .nav-item {
                height: auto;
                display: block;
                border-bottom: 1px solid #ffffff10
            }

            .nav-link {
                width: 100%;
                justify-content: space-between;
                padding: 15px 4px;
                font-size: 12px
            }

            .nav-link:after {
                display: none
            }

            .nav-item:hover>.dropdown,
            .nav-item:hover>.mega-menu {
                opacity: 0;
                visibility: hidden;
                transform: none
            }

            .nav-item.mobile-open>.dropdown,
            .nav-item.mobile-open>.mega-menu {
                opacity: 1;
                visibility: visible;
                transform: none
            }

            .dropdown,
            .mega-menu {
                position: static;
                width: 100%;
                min-width: 0;
                max-height: none;
                box-shadow: none;
                border: 0;
                background: #ffffff06;
                backdrop-filter: none
            }

            .dropdown {
                display: none;
                padding: 5px 8px;
                border-radius: 10px
            }

            .nav-item.mobile-open>.dropdown {
                display: block
            }

            .mega-menu {
                display: none;
                padding: 10px;
                border-radius: 12px
            }

            .nav-item.mobile-open>.mega-menu {
                display: block
            }

            .mega-columns {
                grid-template-columns: 1fr;
                gap: 12px
            }

            .location-services {
                grid-template-columns: 1fr
            }

            .location-area-menu {
                grid-template-columns: 1fr;
                max-height: 220px
            }

            .nav-call {
                display: flex;
                margin: 12px 0 0;
                justify-content: center
            }

            .hero {
                min-height: 720px
            }

            .hero-content {
                padding-bottom: 85px
            }

            .hero-side-card {
                display: none
            }

            .trust-grid {
                grid-template-columns: 1fr 1fr
            }

            .trust-grid div:nth-child(2) {
                border-right: 0
            }

            .about-grid-new,
            .why-grid,
            .faq-grid,
            .contact-grid {
                grid-template-columns: 1fr;
                gap: 45px
            }

            .service-grid-new {
                grid-template-columns: 1fr 1fr
            }

            .gallery-grid-new {
                grid-template-columns: 1fr 1fr
            }

            .process-grid {
                grid-template-columns: 1fr
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr
            }

            .footer-about {
                grid-column: 1/-1
            }
        }

        @media(max-width:600px) {
            .container {
                width: min(100% - 28px, 1180px)
            }

            .section {
                padding: 75px 0
            }

            .navbar {
                padding: 0 14px
            }

            .brand-text {
                font-size: 12px
            }

            .brand-mark {
                width: 36px;
                height: 36px
            }

            .hero {
                min-height: 690px;
                height: 100svh
            }

            .hero-shade {
                background: linear-gradient(180deg, #121123c4 0%, #16152690 45%, #111020ef 100%)
            }

            .hero-content {
                align-items: flex-end;
                padding-bottom: 72px
            }

            .hero h1 {
                font-size: clamp(42px, 13vw, 60px);
                letter-spacing: -1.5px
            }

            .hero-copy>p {
                font-size: 13px
            }

            .hero-actions {
                display: grid;
                grid-template-columns: 1fr;
                gap: 8px
            }

            .hero-primary,
            .hero-secondary {
                width: 100%;
                min-width: 0
            }

            .hero-meta {
                font-size: 9px;
                gap: 7px
            }

            .hero-scroll {
                left: 14px;
                bottom: 24px
            }

            .hero-dots {
                right: 14px;
                bottom: 27px
            }

            .trust-grid {
                grid-template-columns: 1fr 1fr
            }

            .trust-grid div {
                padding: 17px 8px;
                gap: 8px;
                border-right: 1px solid #24233d1c
            }

            .trust-grid span {
                font-size: 10px
            }

            .section-heading {
                display: block
            }

            .section-heading>p {
                margin-top: 15px
            }

            .about-visual {
                padding: 0 14px 14px 0
            }

            .experience-card {
                left: -5px;
                bottom: 8px
            }

            .about-copy h2,
            .why-copy h2,
            .faq-intro h2,
            .contact-copy h2 {
                font-size: 39px
            }

            .check-grid {
                grid-template-columns: 1fr
            }

            .service-grid-new {
                grid-template-columns: 1fr
            }

            .service-image-wrap img {
                height: 220px
            }

            .process-section {
                padding: 75px 0
            }

            .gallery-grid-new {
                grid-template-columns: 1fr 1fr;
                gap: 8px
            }

            .gallery-card,
            .gallery-card img {
                min-height: 180px
            }

            .gallery-overlay {
                left: 11px;
                right: 8px;
                bottom: 10px
            }

            .gallery-overlay strong {
                font-size: 11px
            }

            .review-wrap {
                grid-template-columns: 35px minmax(0, 1fr) 35px;
                gap: 7px
            }

            .review-card {
                padding: 30px 16px;
                min-height: 250px
            }

            .review-card p {
                font-size: 16px
            }

            .review-arrow {
                width: 34px;
                height: 34px
            }

            .footer-grid {
                grid-template-columns: 1fr
            }

            .footer-about {
                grid-column: auto
            }

            .footer-bottom {
                display: block
            }

            .footer-bottom span {
                display: block;
                margin-bottom: 7px
            }

            .footer-services {
                grid-template-columns: 1fr 1fr
            }

            .floating-actions {
                right: 12px;
                bottom: 12px
            }

            .float-btn {
                width: 46px;
                height: 46px
            }
        }

        @media(max-width:360px) {
            .brand-text {
                font-size: 11px
            }

            .hero h1 {
                font-size: 40px
            }

            .trust-grid span {
                font-size: 9px
            }

            .gallery-grid-new {
                grid-template-columns: 1fr
            }

            .gallery-card,
            .gallery-card img {
                min-height: 210px
            }
        }



        /* =========================================
   FLOATING ACTION BUTTONS
   ========================================= */

.floating-actions {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 1800;

    display: flex;
    flex-direction: column;
    gap: 10px;

    align-items: center;
}

.float-btn {
    width: 54px;
    height: 54px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;
    text-decoration: none;

    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        opacity .25s ease;
}

.float-btn svg {
    width: 25px;
    height: 25px;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.float-btn:hover {
    transform: translateY(-4px) scale(1.04);

    box-shadow:
        0 16px 35px rgba(0, 0, 0, .25);
}

/* Back To Top */

.float-top {
    background: #ffffff;
    color: #272640;

    border: 1px solid #e7e6ed;

    display: none;
}

.float-top.show {
    display: flex;
}

/* WhatsApp */

.float-wa {
    background: #25D366;
    color: #ffffff;
}

.float-wa svg {
    width: 27px;
    height: 27px;

    stroke-width: 1.8;
}

/* Call */

.float-call {
    background: #272640;
    color: #ffffff;
}

.float-call svg {
    width: 24px;
    height: 24px;
}

/* Mobile */

@media (max-width: 600px) {

    .floating-actions {
        right: 12px;
        bottom: 12px;
        gap: 8px;
    }

    .float-btn {
        width: 48px;
        height: 48px;
    }

    .float-btn svg {
        width: 22px;
        height: 22px;
    }

    .float-wa svg {
        width: 24px;
        height: 24px;
    }
}

/* Very small screens */

@media (max-width: 360px) {

    .floating-actions {
        right: 9px;
        bottom: 9px;
    }

    .float-btn {
        width: 45px;
        height: 45px;
    }
}