/* ===== ROOT: full control of button and heading styles lives here ===== */
:root{
  --deep:#7a0a16; --deep2:#c8102e; --gold:#d9a93f; --gold2:#f2cf7a; --mist:#fbf0ef; --ink:#25090d; --text:#5b3a3d;
  /* the single BUTTON class: .btn-main */
  --btn-bg:linear-gradient(135deg,var(--gold2),var(--gold)); --btn-color:var(--ink); --btn-radius:50px; --btn-pad:.85rem 1.9rem; --btn-glow:rgba(217,169,63,.45);
  /* the single HEADING class: .heading */
  --h-font:'Plus Jakarta Sans',sans-serif; /* to change the font, edit the name here (and the Google Fonts link above) */ --h-color:#000; --h-size:clamp(1.9rem,3.6vw,2.9rem); --h-weight:800;
}
html{scroll-behavior:smooth}
body{font-family:var(--h-font);color:var(--text);overflow-x:hidden;background:#fff}
.heading{font-family:var(--h-font);color:var(--h-color);font-size:var(--h-size);font-weight:var(--h-weight);letter-spacing:-.025em;line-height:1.12}
.btn-main{position:relative;display:inline-block;background:var(--btn-bg);color:var(--btn-color);font-weight:700;border:0;padding:var(--btn-pad);border-radius:var(--btn-radius);text-decoration:none;overflow:hidden;transition:transform .25s,box-shadow .25s;cursor:pointer}
.btn-main::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-20deg);animation:shine 3.5s infinite}
@keyframes shine{to{left:140%}}
.btn-main:hover{transform:translateY(-3px);box-shadow:0 12px 28px var(--btn-glow);color:var(--btn-color)}
.dark .heading,.hslide .heading{--h-color:#fff}
.sub .heading,.card-x .heading,.badge-x .heading,.step .heading{--h-size:1.15rem}
.kicker{display:inline-block;font-weight:700;font-size:.85rem;color:var(--deep2);margin-bottom:.8rem;padding-left:2.2rem;position:relative}
.kicker::before{content:"";position:absolute;left:0;top:50%;width:1.6rem;height:2px;background:var(--gold)}
section{padding:5.5rem 0;position:relative}
.bg-mist{background:var(--mist)}
#prog{position:fixed;top:0;left:0;height:4px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));z-index:200}
a.navbar-brand img {
    width: 168px;
}

@media (min-width: 768px) and (max-width: 991.98px) {
    button.navbar-toggler {
        background: white !important;
    }
}

/* Keep padding and borders inside every element's declared width. */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
    overflow-x: clip;
}

body {
    min-width: 0;
}

/* All main sections should respect the viewport width. */
main,
main > section,
main > header,
main > div,
section,
header.slider,
.sr-video-section,
.sb-branches {
    max-width: 100%;
    min-width: 0;
}

/* Use one responsive container width throughout the site. */
.container,
.container-fluid,
.sr-video-container {
    width: 100%;
    max-width: 1320px;
    min-width: 0;
    margin-left: auto;
    margin-right: auto;
}

.container {
    padding-left: clamp(12px, 2.5vw, 24px);
    padding-right: clamp(12px, 2.5vw, 24px);
}

.container-fluid {
    padding-left: clamp(12px, 2.5vw, 24px);
    padding-right: clamp(12px, 2.5vw, 24px);
}

.sr-video-container {
    width: calc(100% - 48px);
    padding-left: 0;
    padding-right: 0;
}

/* Prevent Bootstrap rows and columns from forcing horizontal overflow. */
.row,
[class*="col-"],
.float-card,
.float-inner,
.content,
.heading,
.card-x,
.badge-x,
.step,
.t-card,
.accordion,
.accordion-item,
.accordion-button,
.accordion-body,
.sb-branch-card,
.sb-branches-footer,
.sr-video-heading,
.sr-video-heading-text,
.sr-video-slider,
.sr-video-track,
.sr-video-card,
.sr-video-caption,
.cta,
.cta .container {
    min-width: 0;
    max-width: 100%;
}

img,
video,
svg,
iframe {
    max-width: 100%;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
a,
button,
span {
    overflow-wrap: anywhere;
}

/* Full-bleed decorative sections remain full width, while their content stays contained. */
.marq,
.scene {
    max-width: 100%;
}

@media (max-width: 767px) {
    .container,
    .container-fluid {
        width: 100%;
        max-width: 100%;
        padding-left: 14px;
        padding-right: 14px;
    }

    .sr-video-container {
        width: calc(100% - 28px);
        max-width: 100%;
    }

    main > section,
    section {
        max-width: 100%;
    }

    .row {
        --bs-gutter-x: 1rem;
        margin-left: calc(var(--bs-gutter-x) * -.5);
        margin-right: calc(var(--bs-gutter-x) * -.5);
    }

    .float-card {
        width: 100%;
        padding-left: 14px;
        padding-right: 14px;
    }

    .float-inner {
        flex-wrap: wrap;
        gap: 12px;
    }

    .float-inner > * {
        min-width: 0;
        max-width: 100%;
    }

    .content {
        width: 100%;
    }

    .heading {
        overflow-wrap: anywhere;
    }

    .sb-branches-footer {
        width: 100%;
    }

    .sr-video-heading {
        flex-wrap: wrap;
    }

    .sr-video-heading-text {
        flex: 1 1 100%;
    }

    .sr-video-track {
        max-width: none;
    }
}

@media (max-width: 380px) {
    .container,
    .container-fluid {
        padding-left: 12px;
        padding-right: 12px;
    }

    .sr-video-container {
        width: calc(100% - 24px);
    }
}

/* topbar + nav */
.topbar{background:var(--deep);color:#e2c4c6;font-size:.82rem}
.topbar a{color:var(--gold2);text-decoration:none;font-weight:700}
.pay{background:rgba(255,255,255,.12);border-radius:4px;padding:1px 7px;font-size:.7rem;margin-left:4px;color:#fff}
.navbar{background:#030303;transition:box-shadow .3s}
.navbar.scrolled{box-shadow:0 8px 30px rgba(122,10,22,.12)}
.navbar-brand{font-weight:800;color:var(--deep);font-size:1.4rem;letter-spacing:-.03em}
.navbar-brand b{color:var(--gold)}
.nav-link{font-weight:600;color:var(--ink)!important;position:relative}
.nav-link::before{content:"";position:absolute;left:.5rem;right:.5rem;bottom:2px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .3s}
.nav-link:hover::before,.nav-link.show::before{transform:scaleX(1)}
.dropdown-menu{border:0;border-radius:14px;box-shadow:0 16px 40px rgba(122,10,22,.18);padding:.6rem}
.dropdown-item{border-radius:8px;font-weight:500}

.navbar-brand{
    padding: 0px;
    margin: 0px;
}
/* ===== BANNER SLIDER ===== */
.slider{position:relative;width:100%;height:clamp(520px,88vh,780px);overflow:hidden;background:var(--deep)}
.hslide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.1s,visibility 1.1s}
.hslide.active{opacity:1;visibility:visible;z-index:1}
.hslide .bg{position:absolute;inset:0;background-size:cover;background-position:center}
.hslide:nth-child(1) .bg{background-image:var(--img),linear-gradient(125deg,#7a0a16,#a3132a 60%,#d9a93f)}
.hslide:nth-child(2) .bg{background-image:var(--img),linear-gradient(125deg,#3b0a14,#c8102e 60%,#e5455a)}
.hslide.active .bg{animation:kb 9s ease-out forwards}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.15)}}
.hslide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,7,12,.92),rgba(42,7,12,.35) 65%,transparent)}
.orb{position:absolute;border-radius:50%;filter:blur(50px);opacity:.35;z-index:1;animation:orb 9s ease-in-out infinite alternate}
.orb.a{width:340px;height:340px;background:var(--gold);right:8%;top:10%}
.orb.b{width:260px;height:260px;background:#e5455a;right:30%;bottom:5%;animation-delay:-4s}
@keyframes orb{to{transform:translate(-40px,30px) scale(1.2)}}
.hslide .content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:700px;color:#fff;padding-bottom:3rem}
.hslide .heading{--h-size:clamp(2.4rem,5.6vw,4.4rem);margin-bottom:1.1rem}
.hslide .heading .w{display:inline-block;opacity:0;transform:translateY(40px) rotate(3deg)}
.hslide.active .heading .w{animation:up .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i)*.09s + .25s)}
@keyframes up{to{opacity:1;transform:none}}
.hslide .kicker,.hslide p,.hslide .btn-main{opacity:0;transform:translateY(24px)}
.hslide .kicker{color:var(--gold2)}
.hslide.active .kicker{animation:up .7s .05s forwards}
.hslide.active p{animation:up .7s .8s forwards}
.hslide.active .btn-main{animation:up .7s 1s forwards}
.hslide p{color:#f3dede;font-size:1.12rem;max-width:520px;margin-bottom:1.6rem}
.shift{background:linear-gradient(90deg,var(--gold2),#ff9a8a,var(--gold2));background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hue 4s linear infinite}
@keyframes hue{to{background-position:200%}}
.arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.1);backdrop-filter:blur(6px);color:#fff;font-size:1.4rem;transition:.25s}
.arrow:hover{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.arrow.prev{left:20px}.arrow.next{right:20px}
.dots{position:absolute;bottom:92px;left:0;right:0;z-index:5;display:flex;justify-content:center;gap:10px}
.dots button{width:38px;height:4px;border:0;border-radius:3px;background:rgba(255,255,255,.35);padding:0;position:relative;overflow:hidden}
.dots button.on::after{content:"";position:absolute;inset:0;background:var(--gold2);transform-origin:left;animation:prog 6s linear forwards}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.slider.paused .dots button.on::after{animation-play-state:paused}

/* floating overlap card (below hero) */
.float-card{position:relative;z-index:10;margin-top:-62px}
.float-inner{background:#fff;border-radius:20px;box-shadow:0 24px 60px rgba(122,10,22,.2);padding:1.4rem 2rem;display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;justify-content:center;text-align:center;animation:bob 5s ease-in-out infinite alternate}
@keyframes bob{to{transform:translateY(-8px)}}
.float-inner .ic{font-size:2.2rem;background:var(--mist);width:64px;height:64px;border-radius:50%;display:grid;place-items:center}

/* about */
.photo{position:relative;border-radius:24px;aspect-ratio:1/1;max-width:480px;margin:auto;background-size:cover;background-position:center;background-image:var(--img),linear-gradient(135deg,var(--deep),var(--deep2) 60%,var(--gold));box-shadow:0 30px 60px rgba(122,10,22,.25)}
.photo::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:2px solid var(--gold);border-radius:24px;z-index:-1;animation:bob 4s ease-in-out infinite alternate}
.photo .years{position:absolute;right:-18px;bottom:28px;background:var(--gold);color:var(--ink);border-radius:16px;padding:.8rem 1.1rem;font-weight:800;text-align:center;box-shadow:0 14px 30px rgba(0,0,0,.2)}
.photo .years b{font-size:1.9rem;display:block;line-height:1}

/* why: circles with orbit */
.orbit{position:relative;width:380px;max-width:100%;height:380px;margin:auto}
.orbit .ring{position:absolute;inset:20px;border:2px dashed var(--deep2);border-radius:50%;opacity:.4;animation:rot 30s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}}
.orbit .core{position:absolute;inset:110px;border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));animation:pulse2 3s ease-in-out infinite alternate}
@keyframes pulse2{to{transform:scale(1.15)}}
.orbit .c{position:absolute;width:150px;height:150px;border-radius:50%;background:#fff;box-shadow:0 14px 40px rgba(122,10,22,.18);display:grid;place-content:center;text-align:center;font-weight:800;color:var(--deep);animation:fl 4s ease-in-out infinite alternate}
.orbit .c i{font-style:normal;font-size:2rem;display:block;margin-bottom:.2rem}
.orbit .c:nth-of-type(1){left:115px;top:0}
.orbit .c:nth-of-type(2){left:0;top:205px;animation-delay:-1.3s}
.orbit .c:nth-of-type(3){right:0;top:205px;animation-delay:-2.6s}
@keyframes fl{to{transform:translateY(-12px)}}
.badge-x{text-align:center;padding:1.4rem 1rem;border-radius:18px;transition:.3s;height:100%}
.badge-x:hover{background:var(--mist);transform:translateY(-6px)}
.badge-x .ic{font-size:2.8rem;display:inline-block;animation:fl 3s ease-in-out infinite alternate}

/* cards */
.card-x{position:relative;background:#fff;border-radius:20px;padding:2rem 1.7rem;height:100%;border:1px solid #f1dcdc;overflow:hidden;transition:transform .35s,box-shadow .35s;transform-style:preserve-3d}
.card-x::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));transform:scaleX(0);transform-origin:left;transition:transform .4s}
.card-x:hover{box-shadow:0 24px 50px rgba(122,10,22,.16)}
.card-x:hover::before{transform:scaleX(1)}
.card-x .ico{width:58px;height:58px;border-radius:16px;background:var(--mist);display:grid;place-items:center;font-size:1.7rem;margin-bottom:1.1rem;transition:.4s}
.card-x:hover .ico{background:var(--gold);transform:rotate(-8deg) scale(1.1)}

/* marquee */
.marq{background:var(--deep);padding:1.1rem 0;overflow:hidden;white-space:nowrap}
.marq div{display:inline-block;animation:mq 28s linear infinite;color:#fff;font-weight:700;font-size:1.1rem}
.marq span{margin:0 1.6rem}.marq i{color:var(--gold);font-style:normal}
@keyframes mq{to{transform:translateX(-50%)}}

/* process */
.steps{position:relative}
.step{text-align:center;padding:1rem 1.5rem}
.step .n{width:84px;height:84px;border-radius:50%;background:#fff;border:3px solid var(--gold);display:grid;place-items:center;margin:0 auto 1.2rem;font-size:2rem;position:relative;z-index:1;transition:.4s;box-shadow:0 10px 30px rgba(122,10,22,.12)}
.step:hover .n{background:var(--gold);transform:scale(1.1) rotate(-8deg)}
@media(min-width:768px){.steps::before{content:"";position:absolute;top:57px;left:18%;right:18%;border-top:3px dashed var(--deep2);opacity:.3}}

/* city tiles */
.city{display:block;position:relative;aspect-ratio:4/3;border-radius:16px;overflow:hidden;color:#fff;text-decoration:none;font-weight:700;background-size:cover;background-position:center;background-image:var(--img),linear-gradient(135deg,var(--deep),var(--c,#a3132a))}
.city span{position:absolute;left:0;right:0;bottom:0;padding:1.4rem .9rem .7rem;background:linear-gradient(transparent,rgba(0,0,0,.7));transition:padding .3s}
.city::after{content:"→" !important;position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--ink);display:grid;place-items:center;opacity:0;transform:translateY(-8px);transition:.3s}
.city:hover::after{opacity:1;transform:none}.city:hover span{padding-bottom:1.1rem}
.city{transition:transform .4s}.city:hover{transform:scale(1.045)}

/* band + accordion */
.band{background:linear-gradient(120deg,var(--deep),var(--deep2));border-radius:24px;padding:2.5rem 1rem;color:#f0d4d4;position:relative;overflow:hidden}
.stat{font-weight:800;font-size:3rem;color:var(--gold2);line-height:1}
.accordion-item{border:0;border-bottom:1px solid #ecd5d5;background:transparent}
.accordion-button{font-weight:700;color:var(--deep);background:transparent;padding:1.2rem .5rem}
.accordion-button:not(.collapsed){background:transparent;color:var(--deep);box-shadow:none}
.accordion-button:focus{box-shadow:none}

/* testimonials */
.t-card{max-width:680px;margin:auto;text-align:center;padding:2.2rem 3.5rem;background:#fff;border-radius:24px;box-shadow:0 20px 50px rgba(122,10,22,.1)}
.stars{color:var(--gold);font-size:1.4rem;letter-spacing:4px}
.carousel-control-prev,.carousel-control-next{width:50px;filter:invert(1)}

/* cta + footer */
.cta{background:linear-gradient(120deg,var(--gold),var(--gold2),var(--gold));background-size:200%;animation:hue2 6s ease-in-out infinite alternate}
@keyframes hue2{to{background-position:100%}}
.cta .btn-main{--btn-bg:var(--deep);--btn-color:#fff;--btn-glow:rgba(122,10,22,.4)}
footer{background:#2a070c;color:#d9b3b6;padding:4rem 0 1.5rem}
footer a{color:#d9b3b6;text-decoration:none;transition:.2s}footer a:hover{color:var(--gold2);padding-left:4px}
footer .heading{--h-size:1.1rem}
.float-btns{position:fixed;right:16px;bottom:16px;z-index:99;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.fb{display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;font-weight:700;padding:.75rem 1.2rem;border-radius:40px;box-shadow:0 8px 22px rgba(0,0,0,.28)}
.fb.call{background:var(--deep2);animation:ring 2s infinite}.fb.wa{background:#25d366}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(200,16,46,.6)}70%{box-shadow:0 0 0 18px rgba(200,16,46,0)}100%{box-shadow:0 0 0 0 rgba(200,16,46,0)}}


/* bootstrap-icons styling */
.bi{line-height:1;vertical-align:-.125em}
.card-x .ico,.badge-x .ic,.step .n,.float-inner .ic,.orbit .c i{color:var(--deep2)}
.card-x:hover .ico{color:var(--ink)}.step:hover .n{color:var(--ink)}
.orbit .c i{font-size:2.2rem}
.badge-x .ic{font-size:2.8rem}.step .n{font-size:2.1rem}

.thumb {
    width: 100%;
    margin: 0 0 25px 0px;
    height: 170px;
    object-fit: cover;
    display: block;
    display: block;
    background: var(--mist);
}

.card-x:hover .thumb{transform:scale(1.07)}
.card-x{overflow:hidden}
.av{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid var(--gold);margin:-4.2rem auto .8rem;display:block;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.t-card{margin-top:3rem}
.marq i{font-size:1rem}
.arrow i{font-size:1.2rem}
footer .bi-facebook,footer .bi-instagram,footer .bi-twitter-x,footer .bi-youtube{transition:.25s}
.stars i{margin:0 2px}

nav#nav {
    padding: 0;
    margin: 0;
}
a.nav-link {
    color: white !important;
}





/* Mobile Navbar Toggle Icon - White */
@media (max-width: 767.98px) {
    .navbar-toggler .navbar-toggler-icon {
        filter: brightness(0) invert(1) !important;
    }
div#menu {
    background: black !important;
}
    .navbar-toggler {
        border-color: rgba(255, 255, 255, 0.6) !important;
    }

    /* Offcanvas Close Button - White */
    .offcanvas .btn-close {
        filter: invert(1) grayscale(100%) brightness(200%) !important;
        opacity: 1 !important;
    }
}
@media (max-width: 991.98px) {
    .navbar .offcanvas,
    .offcanvas {
        width: 86vw !important;
        max-width: 86vw !important;
        background-color: #17263a !important;
    }
}
/* ===== NAV: mega menu, dropdowns, left drawer on phones ===== */
.navbar .dropdown-toggle::after{transition:transform .25s}
.navbar .nav-link.show{color:var(--deep2)!important}
.dropdown-item i{color:var(--gold);margin-right:.5rem}
.dropdown-item:hover{background:var(--mist);color:var(--deep)}
.mega-h{font-weight:800;color:var(--deep);font-size:.9rem;margin-bottom:.8rem;padding-bottom:.5rem;border-bottom:2px solid var(--gold2)}
.mega-item{display:flex;gap:.8rem;align-items:flex-start;padding:.55rem .6rem;border-radius:12px;text-decoration:none;color:var(--ink);transition:background .2s,transform .2s}
.mega-item i{flex:0 0 40px;height:40px;border-radius:10px;background:var(--mist);color:var(--deep2);display:grid;place-items:center;font-size:1.15rem;transition:.25s}
.mega-item b{display:block;font-size:.95rem}
.mega-item small{display:block;color:#94696d;font-size:.78rem;font-weight:500}
.mega-item:hover{background:var(--mist);transform:translateX(4px)}
.mega-item:hover i{background:var(--gold);color:var(--ink)}
.mega-promo{height:100%;min-height:220px;border-radius:18px;padding:1.4rem;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;background-size:cover;background-position:center;background-image:linear-gradient(0deg,rgba(42,7,12,.9),rgba(42,7,12,.2)),var(--img),linear-gradient(135deg,var(--deep),var(--deep2));position:relative;overflow:hidden}
.mega-promo b{font-size:1.2rem}.mega-promo span{font-size:.85rem;color:#f0d4d4}
.mega-promo .btn-main{align-self:flex-start;padding:.55rem 1.3rem;font-size:.9rem}
@media(min-width:992px){
  .navbar{background:rgba(0, 0, 0, 0.92);backdrop-filter:blur(12px)}
  .navbar .offcanvas-body{flex-grow:1}
  .navbar .dropdown>.dropdown-menu{display:block;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .25s,transform .25s,visibility .25s;margin-top:0}
  .navbar .dropdown:hover>.dropdown-menu,.navbar .dropdown>.dropdown-menu.show{opacity:1;visibility:visible;transform:none}
  .navbar .dropdown:hover>.nav-link{color:var(--car-accent)!important}
  .navbar .dropdown.mega{position:static}
  .mega-menu{left:0;right:0;width:100%;border-radius:0 0 24px 24px;padding:1.8rem 0;border-top:3px solid var(--gold)}
  .two-col{min-width:470px;padding:.8rem}
  .dd-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
}


@media(max-width:991.98px){
  .navbar.sticky-top{z-index:1050}
 .navbar .offcanvas {
    max-width: 86vw;
    background: #17263a !important;
}
  .offcanvas-header{border-bottom:1px solid #f1dcdc}
  .offcanvas-body{padding:1rem 1.2rem 2rem}
  .navbar .nav-link{padding:.85rem .2rem;border-bottom:1px solid #f6eaea;font-size:1.02rem}
  .navbar .nav-link::before{display:none}
  .navbar .dropdown-toggle::after{float:right;margin-top:.55rem}
  .navbar .dropdown-menu{border:0;box-shadow:none;background:var(--mist);border-radius:14px;margin:.3rem 0 .6rem;padding:.5rem}
  .navbar .dropdown-menu.show{animation:ddIn .3s ease}
  @keyframes ddIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
  .mega-menu .container{padding:0}
  .mega-menu .row{--bs-gutter-y:.4rem}
  .mega-h{margin:.6rem .4rem .3rem}
}

/* ===== PHONE: topbar + banner ===== */
.tb-right{display:flex;flex-wrap:wrap;gap:.3rem 1rem;align-items:center}
@media(max-width:767.98px){
  .topbar{font-size:.78rem}
  .topbar .container{justify-content:center!important}
  .tb-right{justify-content:center;gap:.2rem .9rem}
  section{padding:3.5rem 0}
  .slider{height:clamp(540px,86vh,680px)}
  .hslide::after{background:linear-gradient(0deg,rgba(42,7,12,.95) 5%,rgba(42,7,12,.55) 60%,rgba(42,7,12,.3))}
  .hslide .content{justify-content:flex-end;padding-bottom:8.5rem}
  .hslide .heading{--h-size:clamp(2rem,9vw,2.7rem)}
  .hslide p{font-size:1rem;margin-bottom:1.2rem}
  .arrow{top:auto;bottom:80px;transform:none;width:42px;height:42px}
  .arrow.prev{left:auto;right:66px}.arrow.next{right:16px}
  .dots{justify-content:flex-start;padding-left:16px;bottom:98px}
  .dots button{width:28px}
  .orb{display:none}
  .float-inner{padding:1.1rem;gap:.9rem}
  .float-inner .text-start{text-align:center!important}
  .scene{height:200px}
  .truck2{width:230px;bottom:36px}
  .photo .years{right:8px}
  .t-card{padding:2.2rem 1.3rem}
  .carousel-control-prev,.carousel-control-next{display:none}
}
.carousel-indicators{position:static;margin:1.4rem 0 0}
.carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%;background:var(--deep2);border:0;opacity:.3;margin:0 5px}
.carousel-indicators .active{opacity:1;background:var(--gold)}


/* ===== POLISH ===== */
html{scroll-padding-top:84px}
::selection{background:var(--gold2);color:var(--ink)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--mist)}::-webkit-scrollbar-thumb{background:var(--deep2);border-radius:10px}
.carousel-fade .carousel-item{transition:opacity .8s ease}
.t-card{position:relative;background:#fff;border:1px solid #f1dcdc;border-radius:28px;padding:3rem 3.5rem 2.4rem;box-shadow:0 24px 60px rgba(122,10,22,.12)}
.t-card::after{content:"";position:absolute;left:50%;bottom:-1px;width:90px;height:4px;transform:translateX(-50%);background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:4px}
.t-card .qm{position:absolute;right:26px;top:14px;font-size:4.2rem;color:var(--gold);opacity:.35;line-height:1}
.t-card p{font-size:1.12rem;font-style:italic;color:var(--ink)}
.t-card b{color:var(--deep)}
.stars{margin-top:.2rem}
.hero-sep{height:6px;background:linear-gradient(90deg,var(--deep),var(--deep2),var(--gold),var(--deep2),var(--deep))}
footer{border-top:5px solid var(--gold)}
footer h3.heading{position:relative;padding-bottom:.6rem}
footer h3.heading::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:3px;background:var(--gold);border-radius:3px}
.badge-x,.card-x,.city,.photo{will-change:transform}
.photo{transition:transform .5s}.photo:hover{transform:scale(1.02) rotate(-.6deg)}
.btn-main:active{transform:translateY(0) scale(.97)}
.to-top{position:fixed;left:16px;bottom:16px;z-index:98;width:46px;height:46px;border-radius:50%;border:0;background:var(--deep2);color:#fff;font-size:1.2rem;display:grid;place-items:center;box-shadow:0 8px 22px rgba(0,0,0,.28);opacity:0;visibility:hidden;transform:translateY(14px);transition:.3s}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:var(--gold);color:var(--ink)}
@media(max-width:575.98px){.t-card{padding:2.8rem 1.3rem 2rem}.t-card .qm{font-size:3rem}.fb{padding:.85rem;border-radius:50%}}

/* reveal */
.rv{opacity:0;transform:translateY(34px) scale(.98);transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv,.hslide .heading .w,.hslide .kicker,.hslide p,.hslide .btn-main{opacity:1;transform:none}}

/* ===== TRUCK + ROAD SCENE (below hero) ===== */
.scene{position:relative;height:230px;margin-top:2rem;overflow:hidden;background:linear-gradient(180deg,#fbe3e1 0%,#fff8f7 70%)}
.scene .sun{position:absolute;right:9%;top:22px;width:62px;height:62px;border-radius:50%;background:radial-gradient(circle,var(--gold2),var(--gold));box-shadow:0 0 0 14px rgba(217,169,63,.18),0 0 0 30px rgba(217,169,63,.1);animation:pulse2 4s ease-in-out infinite alternate}
.cloud{position:absolute;height:22px;width:90px;border-radius:30px;background:#fff;opacity:.9;animation:cl 40s linear infinite}
.cloud::before,.cloud::after{content:"";position:absolute;background:#fff;border-radius:50%}
.cloud::before{width:38px;height:38px;left:12px;top:-18px}.cloud::after{width:28px;height:28px;left:46px;top:-12px}
.cloud.c1{top:34px;left:-120px}.cloud.c2{top:78px;left:-120px;animation-duration:58s;animation-delay:-20s;transform:scale(.7)}
@keyframes cl{to{left:105%}}
.skyline{position:absolute;left:0;bottom:62px;height:110px;width:200%;display:flex;align-items:flex-end;gap:6px;animation:sky 50s linear infinite}
.skyline i{display:block;flex:0 0 auto;background:linear-gradient(180deg,#e6b9bc,#f0cfd1);border-radius:4px 4px 0 0}
@keyframes sky{to{transform:translateX(-50%)}}
.scene .tagline{position:absolute;z-index:3;top:18px;left:0;right:0;text-align:center}
.scene .tagline .heading{--h-size:clamp(1.1rem,2.4vw,1.6rem)}
.road2{position:absolute;left:0;right:0;bottom:0;height:62px;background:#2b0d11}
.road2::before{content:"";position:absolute;top:50%;left:0;right:0;height:4px;margin-top:-2px;background:repeating-linear-gradient(90deg,var(--gold2) 0 46px,transparent 46px 92px);animation:dash2 .9s linear infinite}
.road2::after{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:#f7e6e4}
@keyframes dash2{to{background-position:-92px 0}}
.truck2{position:absolute;bottom:34px;left:-340px;width:300px;z-index:4;animation:drive2 11s linear infinite}
@keyframes drive2{0%{left:-340px}100%{left:105%}}
.truck2 svg{width:100%;display:block;animation:bump .45s ease-in-out infinite alternate}
@keyframes bump{to{transform:translateY(-2px)}}
.wheel{transform-box:fill-box;transform-origin:center;animation:spin .5s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.speed{position:absolute;left:-60px;top:30px;width:50px;height:3px;border-radius:3px;background:rgba(122,10,22,.25);animation:sp .6s linear infinite}
.speed:nth-child(2){top:52px;width:36px;animation-delay:-.2s}.speed:nth-child(3){top:74px;width:44px;animation-delay:-.4s}
@keyframes sp{from{opacity:.8;transform:translateX(0)}to{opacity:0;transform:translateX(-50px)}}







/* ================================================================================================ */



/* About page only — uses shared .heading, .kicker, .btn-main, .rv, .bg-mist and Bootstrap classes */
.about-page { overflow: hidden; }
.about-page section { padding: 5rem 0; }
.about-page p { line-height: 1.85; }
.about-page .heading { line-height: 1.18; }
.about-page .kicker { margin-bottom: .65rem; }

.about-hero {
    position: relative;
    min-height: 270px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background-image: var(--about-hero-img), linear-gradient(120deg, var(--deep), var(--deep2));
    background-size: cover;
    background-position: center 42%;
    isolation: isolate;
}
.about-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, rgba(37,9,13,.88), rgba(37,9,13,.56));
}
.about-hero__content { padding-top: 3.2rem; padding-bottom: 3.2rem; color: #fff; }
.about-hero .heading { color: #fff; --h-size: clamp(2.2rem, 4vw, 3.4rem); margin: 0 0 .9rem; }
.about-hero .kicker { color: var(--gold2); }
.about-breadcrumb { display: flex; gap: .55rem; align-items: center; color: #f7e7e7; font-size: .9rem; }
.about-breadcrumb a { color: var(--gold2); text-decoration: none; }
.about-breadcrumb a:hover { color: #fff; }

.about-intro__image, .about-features__image, .about-purpose__image {
    position: relative;
    overflow: visible;
}
.about-intro__image { max-width: 430px; margin: 0 auto; padding: 0 15px 15px 0; }
.about-intro__image img {
    width: 100%; aspect-ratio: 1 / .92; object-fit: cover; display: block;
    border-radius: 4px; position: relative; z-index: 1;
}
.about-intro__corner {
    position: absolute; top: -12px; left: 0; width: 38%; height: 42%;
    border-top: 4px solid var(--deep2); border-left: 4px solid var(--deep2); z-index: 0;
}
.about-intro__label {
    position: absolute; z-index: 2; left: -5px; bottom: 0;
    display: flex; align-items: center; gap: .7rem; padding: .8rem 1rem;
    background: #fff; color: var(--ink); box-shadow: 0 12px 32px rgba(37,9,13,.15);
    border-left: 3px solid var(--gold);
}
.about-intro__label i { font-size: 1.7rem; color: var(--deep2); }
.about-intro__label span { font-size: .82rem; line-height: 1.35; }
.about-intro__label strong { font-size: .95rem; }

.about-features__image img, .about-purpose__image img {
    display: block; width: 100%; height: 100%; min-height: 340px; object-fit: cover;
    border-radius: 3px; box-shadow: 0 18px 45px rgba(37,9,13,.12);
}
.about-features__image { padding: 0 12px 12px 0; }
.about-features__image::before {
    content: ""; position: absolute; inset: 14px 0 0 14px;
    border: 2px solid var(--gold); z-index: -1;
}
.about-features__image-note {
    position: absolute; right: -8px; bottom: 25px; display: flex; align-items: center; gap: .6rem;
    padding: .85rem 1rem; background: var(--deep); color: #fff; font-weight: 700;
    box-shadow: 0 12px 28px rgba(37,9,13,.2);
}
.about-features__image-note i { color: var(--gold2); font-size: 1.35rem; }
.about-feature-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem 1.2rem; margin-top: 1.5rem; }
.about-feature-list > div { display: flex; align-items: flex-start; gap: .65rem; font-size: .92rem; color: var(--ink); }
.about-feature-list i { color: var(--gold); font-size: 1.05rem; flex: 0 0 auto; margin-top: .15rem; }

.about-purpose__image { padding: 0 0 14px 14px; }
.about-purpose__image img { min-height: 330px; }
.about-purpose__image::before {
    content: ""; position: absolute; left: 0; bottom: 0; width: 42%; height: 48%;
    border-left: 3px solid var(--deep2); border-bottom: 3px solid var(--deep2); z-index: -1;
}
.about-purpose__image-tag {
    position: absolute; right: -8px; bottom: 30px; background: var(--deep2); color: #fff;
    padding: .7rem 1.2rem; font-weight: 700; box-shadow: 0 10px 24px rgba(37,9,13,.2);
}
.about-vision__image { padding: 0 14px 0 0; }
.about-vision__image::before { left: auto; right: 0; border-left: 0; border-right: 3px solid var(--gold); border-bottom: 3px solid var(--gold); }
.about-vision__image .about-purpose__image-tag { right: auto; left: -8px; background: var(--gold); color: var(--ink); }

.about-values .badge-x { border: 1px solid rgba(122,10,22,.08); background: #fff; box-shadow: 0 10px 28px rgba(37,9,13,.04); }
.about-values .badge-x .heading { margin: .8rem 0 .55rem; }
.about-contact { overflow: hidden; }
.about-contact .kicker { color: var(--deep); }
.about-contact .heading { max-width: 800px; margin: 0 auto; }
.about-contact__copy { max-width: 650px; }
.about-contact .btn-main { --btn-bg: var(--deep); --btn-color: #fff; --btn-glow: rgba(122,10,22,.25); }

@media (max-width: 767.98px) {
    .about-page section { padding: 3.3rem 0; }
    .about-hero { min-height: 220px; background-position: center; }
    .about-hero__content { padding-top: 2.5rem; padding-bottom: 2.5rem; }
    .about-intro__image { max-width: 390px; margin-bottom: .8rem; }
    .about-intro__label { left: 0; }
    .about-features__image img, .about-purpose__image img { min-height: 250px; }
    .about-features__image-note { right: 0; }
    .about-feature-list { gap: .85rem .7rem; }
    .about-feature-list > div { font-size: .84rem; }
    .about-purpose__image-tag { right: 0; }
    .about-vision__image .about-purpose__image-tag { left: 0; }
}
@media (max-width: 420px) {
    .about-feature-list { grid-template-columns: 1fr; }
    .about-intro__label { padding: .65rem .8rem; }
    .about-page .btn-main { padding: .75rem 1.25rem; }
}


/* Premium visual refinement */
.about-hero {
    min-height: 390px;
    background-position: center 38%;
}
.about-hero__overlay {
    background:
      linear-gradient(90deg, rgba(37,9,13,.94) 0%, rgba(37,9,13,.76) 47%, rgba(37,9,13,.30) 100%),
      linear-gradient(0deg, rgba(37,9,13,.28), transparent 55%);
}
.about-hero__content { padding-top: 4.5rem; padding-bottom: 4.5rem; }
.about-hero__eyebrow {
    display: flex; align-items: center; gap: .65rem; margin-bottom: 1rem;
    color: var(--gold2); font-size: .78rem; font-weight: 800; letter-spacing: .16em;
}
.about-hero__eyebrow span { width: 34px; height: 2px; background: var(--gold); display: inline-block; }
.about-hero .heading {
    max-width: 800px; font-size: clamp(2.6rem, 5.2vw, 4.5rem);
    letter-spacing: -.045em; line-height: 1.05; margin-bottom: 1.1rem;
}
.about-hero .heading em { color: var(--gold2); font-style: normal; }
.about-hero__lead { color: rgba(255,255,255,.86); max-width: 570px; font-size: 1.05rem; margin-bottom: 1.3rem; }
.about-hero__stamp {
    position: absolute; right: max(4%, calc((100% - 1140px)/2)); bottom: 32px;
    display: flex; align-items: center; gap: .8rem; padding: 1rem 1.25rem;
    color: var(--ink); background: var(--gold2); border-radius: 4px;
    box-shadow: 0 18px 42px rgba(0,0,0,.2); font-size: .82rem; line-height: 1.4;
}
.about-hero__stamp i { font-size: 1.8rem; }
.about-hero__stamp strong { font-size: .96rem; }

.about-intro { padding-top: 6rem !important; padding-bottom: 6rem !important; }
.about-intro .heading, .about-features .heading, .about-purpose .heading, .about-vision .heading {
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    letter-spacing: -.035em;
}
.about-intro p, .about-features p, .about-purpose p, .about-vision p {
    color: #665256; font-size: .97rem;
}
.about-intro__image img { box-shadow: 18px 18px 0 var(--mist), 0 22px 50px rgba(37,9,13,.14); }
.about-intro__corner { width: 40%; height: 38%; border-width: 3px; }
.about-intro__label { bottom: -8px; }

.about-features { background: linear-gradient(135deg, #fff8f7 0%, var(--mist) 100%); }
.about-features__image img { box-shadow: 0 25px 55px rgba(37,9,13,.15); }
.about-feature-list > div { padding: .7rem .65rem; background: rgba(255,255,255,.72); border: 1px solid rgba(122,10,22,.06); border-radius: 8px; }
.about-feature-list i { color: var(--deep2); }
.about-purpose__rule { width: 64px; height: 3px; margin: 0 0 1.2rem; background: linear-gradient(90deg, var(--deep2), var(--gold)); }
.about-purpose__image img { box-shadow: 14px 14px 0 var(--mist), 0 22px 50px rgba(37,9,13,.12); }
.about-vision__image img { box-shadow: -14px 14px 0 #fff, 0 22px 50px rgba(37,9,13,.12); }

.about-values .badge-x { padding: 1.8rem 1.15rem; border-radius: 12px; transition: transform .3s, box-shadow .3s, border-color .3s; }
.about-values .badge-x:hover { background: #fff; border-color: rgba(200,16,46,.2); box-shadow: 0 18px 40px rgba(37,9,13,.09); }
.about-values .badge-x .ic { width: 66px; height: 66px; display: grid; place-items: center; margin: 0 auto; border-radius: 50%; background: var(--mist); color: var(--deep2); }
.about-values .badge-x .heading { font-size: 1.05rem; }

.about-contact {
    background: linear-gradient(120deg, #fff0ee 0%, #f7dfe0 52%, #f8e8c7 100%);
    border-top: 1px solid rgba(122,10,22,.08);
}
.about-contact .kicker { color: var(--deep2); }
.about-contact .heading { max-width: 850px; font-size: clamp(2rem, 3.5vw, 3rem); }
.about-contact__copy { color: #665256; }
.about-contact .btn-main { --btn-bg: var(--deep2); }
.about-contact .btn-main + .btn-main { --btn-bg: var(--deep); }

@media (max-width: 767.98px) {
    .about-hero { min-height: 360px; }
    .about-hero__content { padding-top: 3.3rem; padding-bottom: 4.2rem; }
    .about-hero .heading { font-size: clamp(2.25rem, 9vw, 3.2rem); }
    .about-hero__lead { font-size: .95rem; max-width: 95%; }
    .about-hero__stamp { right: 16px; bottom: 12px; padding: .65rem .85rem; }
    .about-hero__stamp i { font-size: 1.4rem; }
    .about-intro { padding-top: 4rem !important; }
}


/* Visibility fix: keep banner overlay behind all banner content */
.about-page .about-hero {
    position: relative;
    isolation: isolate;
    background-color: var(--deep);
}
.about-page .about-hero__overlay {
    z-index: 0;
    pointer-events: none;
}
.about-page .about-hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
}
.about-page .about-hero__stamp {
    z-index: 2;
}
.about-page .about-hero .heading {
    color: #fff !important;
    visibility: visible;
    opacity: 1;
}
.about-page .about-hero__eyebrow,
.about-page .about-hero__lead,
.about-page .about-breadcrumb {
    position: relative;
    z-index: 2;
    visibility: visible;
    opacity: 1;
}
.about-page .rv {
    opacity: 1;
    transform: none;
}


/* ==================================================================================================== */





/* Contact page only — shared site classes remain unchanged */
.contact-page { overflow: hidden; }
.contact-page section { padding: 5rem 0; }
.contact-page p { line-height: 1.8; }
.contact-hero {
    position: relative; isolation: isolate; min-height: 340px; display: flex; align-items: center;
    background-image: var(--contact-hero-img), linear-gradient(120deg, var(--deep), var(--deep2));
    background-size: cover; background-position: center 42%; color: #fff;
}
.contact-hero__overlay {
    position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(90deg, rgba(37,9,13,.94), rgba(37,9,13,.72) 55%, rgba(37,9,13,.32));
}
.contact-hero__content { position: relative; z-index: 2; padding-top: 4rem; padding-bottom: 4rem; }
.contact-hero .kicker { color: var(--gold2); }
.contact-hero .heading { color: #fff !important; max-width: 760px; font-size: clamp(2.3rem, 4.8vw, 4rem); line-height: 1.08; margin: 0 0 1rem; }
.contact-hero .heading em { color: var(--gold2); font-style: normal; }
.contact-hero__content > p { color: rgba(255,255,255,.85); max-width: 620px; margin-bottom: 1.2rem; }
.contact-breadcrumb { display: flex; align-items: center; gap: .55rem; color: #f5dddd; font-size: .9rem; }
.contact-breadcrumb a { color: var(--gold2); text-decoration: none; }
.contact-breadcrumb a:hover { color: #fff; }

.contact-main { padding-top: 5.5rem !important; padding-bottom: 5.5rem !important; }
.contact-panel {
    height: 100%; padding: 2rem; border-radius: 16px; color: #fff;
    background: linear-gradient(145deg, var(--deep), #4b0912);
    box-shadow: 0 22px 55px rgba(37,9,13,.16); position: relative; overflow: hidden;
}
.contact-panel::after {
    content: ""; position: absolute; width: 220px; height: 220px; border-radius: 50%;
    right: -100px; bottom: -105px; border: 35px solid rgba(242,207,122,.1); pointer-events: none;
}
.contact-panel .kicker { color: var(--gold2); }
.contact-panel .heading { color: #fff; font-size: clamp(1.7rem, 2.7vw, 2.35rem); }
.contact-panel__intro { color: rgba(255,255,255,.75); font-size: .94rem; margin-bottom: 1.7rem; }
.contact-detail { display: flex; gap: .9rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.13); position: relative; z-index: 1; }
.contact-detail__icon {
    width: 44px; height: 44px; flex: 0 0 44px; display: grid; place-items: center;
    border-radius: 12px; background: rgba(242,207,122,.14); color: var(--gold2); font-size: 1.15rem;
}
.contact-detail strong, .contact-detail a, .contact-detail p, .contact-detail small { display: block; }
.contact-detail strong { color: #fff; margin-bottom: .15rem; }
.contact-detail a { color: var(--gold2); text-decoration: none; overflow-wrap: anywhere; }
.contact-detail a:hover { color: #fff; }
.contact-detail p { color: rgba(255,255,255,.9); font-size: .9rem; }
.contact-detail small { color: rgba(255,255,255,.62); margin-top: .15rem; font-size: .78rem; }
.contact-panel__note { display: flex; gap: .7rem; margin-top: 1.5rem; padding: 1rem; border-radius: 10px; background: rgba(255,255,255,.08); color: rgba(255,255,255,.85); font-size: .86rem; position: relative; z-index: 1; }
.contact-panel__note i { color: var(--gold2); font-size: 1.2rem; }

.contact-form-card { padding: 2.3rem; border: 1px solid #f0dede; border-radius: 16px; background: #fff; box-shadow: 0 20px 55px rgba(37,9,13,.07); }
.contact-form-card__top { margin-bottom: 1.5rem; }
.contact-form-card__top .heading { font-size: clamp(1.7rem, 2.7vw, 2.35rem); }
.contact-form-card__top p { color: #826b6e; font-size: .9rem; margin-bottom: 0; }
.contact-form label { display: block; color: var(--ink); font-weight: 700; font-size: .84rem; margin-bottom: .45rem; }
.contact-form input, .contact-form select, .contact-form textarea {
    width: 100%; min-height: 48px; border: 1px solid #ead9d9; border-radius: 8px; padding: .75rem .85rem;
    background: #fff; color: var(--ink); font: inherit; font-size: .9rem; outline: none; transition: border-color .2s, box-shadow .2s;
}
.contact-form textarea { min-height: 120px; resize: vertical; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus {
    border-color: var(--deep2); box-shadow: 0 0 0 3px rgba(200,16,46,.09);
}
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #a58e91; }
.contact-form .btn-main { --btn-bg: var(--deep2); --btn-color: #fff; --btn-glow: rgba(200,16,46,.2); }
.contact-form__disclaimer { margin: .9rem 0 0; color: #8c777a; font-size: .76rem; line-height: 1.6 !important; }

.contact-steps .text-center .heading { font-size: clamp(1.8rem, 3vw, 2.7rem); }
.contact-step { position: relative; height: 100%; padding: 2rem; border-radius: 14px; background: #fff; border: 1px solid rgba(122,10,22,.08); box-shadow: 0 12px 32px rgba(37,9,13,.04); }
.contact-step > span { position: absolute; right: 1.2rem; top: 1rem; font-size: 2.3rem; line-height: 1; font-weight: 800; color: rgba(200,16,46,.12); }
.contact-step > i { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 1.2rem; border-radius: 14px; background: var(--mist); color: var(--deep2); font-size: 1.5rem; }
.contact-step .heading { font-size: 1.15rem; margin-bottom: .6rem; }
.contact-step p { color: #786165; font-size: .9rem; margin-bottom: 0; }
.contact-cta { background: linear-gradient(120deg, #fff0ee, #f7dfe0 55%, #f8e8c7); }
.contact-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.contact-cta__inner .kicker { color: var(--deep2); }
.contact-cta__inner .heading { max-width: 650px; font-size: clamp(1.8rem, 3.4vw, 2.7rem); }
.contact-cta .btn-main { --btn-bg: var(--deep2); --btn-color: #fff; }
.contact-cta .btn-main + .btn-main { --btn-bg: var(--deep); }

.contact-page .rv { opacity: 1; transform: none; }

@media (max-width: 991.98px) {
    .contact-panel { padding: 1.7rem; }
    .contact-form-card { padding: 1.8rem; }
    .contact-cta__inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 767.98px) {
    .contact-page section { padding: 3.3rem 0; }
    .contact-hero { min-height: 300px; background-position: center; }
    .contact-hero__content { padding-top: 3rem; padding-bottom: 3rem; }
    .contact-hero .heading { font-size: clamp(2.1rem, 8.5vw, 3rem); }
    .contact-hero__content > p { font-size: .92rem; }
    .contact-main { padding-top: 3.5rem !important; }
    .contact-form-card { padding: 1.25rem; }
    .contact-panel { padding: 1.4rem; }
    .contact-step { padding: 1.5rem; }
}





/* ===================================================================================================================== */


/* Scoped styles for the Packing & Moving Services page */
.moving-service-page{overflow:hidden}
.moving-service-page section{padding:2.7rem 0}
.moving-service-page p{line-height:1.7}
.moving-service-hero{min-height:175px;display:flex;align-items:center;position:relative;isolation:isolate;background:var(--moving-hero-img) center/cover no-repeat,linear-gradient(120deg,var(--deep),var(--deep2))}
.moving-service-hero__overlay{position:absolute;inset:0;z-index:0;background:rgba(20,8,10,.62)}
.moving-service-hero__content{position:relative;z-index:1;text-align:center;color:#fff;padding:2rem 0}
.moving-service-hero .heading{color:#fff;font-size:clamp(1.5rem,3vw,2.4rem);margin-bottom:.7rem}
.moving-service-breadcrumb{display:flex;justify-content:center;align-items:center;gap:.5rem;font-size:.78rem;color:#fff}
.moving-service-breadcrumb a{color:#fff;text-decoration:none}
.moving-service-intro{padding-top:2.2rem!important;padding-bottom:1rem!important}
.moving-service-intro .heading{font-size:clamp(1.3rem,2vw,1.75rem);margin-bottom:1.2rem}
.moving-service-intro p{font-size:.84rem;color:#4f3c3f}
.moving-service-intro__image{display:block;width:100%;max-height:340px;object-fit:cover;border:1px solid #eee;padding:4px;background:#fff;box-shadow:0 8px 22px #25090d14}
.moving-service-showcase{padding:.7rem 0 1.2rem!important}
.moving-service-showcase__visual{min-height:310px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #eee;box-shadow:0 12px 28px #25090d1a}
.moving-service-showcase__photo,.moving-service-showcase__photo img{min-height:310px;height:100%}
.moving-service-showcase__photo{overflow:hidden;background:#eaded2}
.moving-service-showcase__photo img{display:block;width:100%;object-fit:cover}
.moving-service-showcase__poster{position:relative;overflow:hidden;background:#f4c72e;padding:1.2rem 1.5rem;display:flex;flex-direction:column;justify-content:space-between}
.moving-service-showcase__brand{display:flex;align-items:center;gap:.5rem;position:relative;z-index:1;color:#d10c1a}
.moving-service-showcase__brand-icon{width:36px;height:36px;display:grid;place-items:center;background:#fff;border:2px solid #1c6e9b;border-radius:50%;color:#1c6e9b}
.moving-service-showcase__brand strong,.moving-service-showcase__brand small{display:block}
.moving-service-showcase__brand strong{font-size:.92rem;line-height:1.1}
.moving-service-showcase__brand small{font-size:.55rem;font-weight:800}
.moving-service-showcase__poster h2{position:relative;z-index:1;color:#d20d1e;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.2rem);line-height:.98;margin:1.5rem 0}
.moving-service-showcase__circle{position:absolute;width:150px;height:150px;border-radius:50%;background:#d20d1e;top:-35px;right:-35px}
.moving-service-showcase__poster-bottom{position:relative;z-index:1;font-size:.63rem;font-weight:800;color:#7a0a16;letter-spacing:.04em}
.moving-service-rates{padding:.5rem 0 1.8rem!important}
.moving-service-section-title h2{font-size:clamp(1.15rem,2.2vw,1.65rem);color:#e00012;margin-bottom:.6rem}
.moving-service-section-title p{font-size:.8rem;margin-bottom:1rem}
.moving-service-table-wrap{border:1px solid #e8e8e8;box-shadow:0 4px 12px #0000000d}
.moving-service-table{min-width:790px;font-size:.72rem;text-align:center}
.moving-service-table thead th{background:#d20d1e;color:#fff;font-weight:700;padding:.7rem .55rem;border-color:#ffffff40}
.moving-service-table tbody td{padding:.55rem .5rem;color:#3e3032;border-color:#eee}
.moving-service-table tbody td:first-child{color:#d20d1e;font-weight:600}
.moving-service-table tbody tr:nth-child(even){background:#fff7f7}
.moving-service-note{color:#777;font-size:.72rem;margin-top:.65rem}
.moving-service-note strong{color:#2675b9}
.moving-service-blogs{padding:2rem 0!important;background:#fff!important}
.moving-service-blog{display:block;height:100%;color:inherit;text-decoration:none;background:#fff;border:1px solid #eee;border-radius:5px;overflow:hidden;box-shadow:0 4px 12px #0000000d;transition:transform .25s,box-shadow .25s}
.moving-service-blog:hover{transform:translateY(-4px);box-shadow:0 10px 24px #0000001a}
.moving-service-blog img{display:block;width:100%;height:105px;object-fit:cover}
.moving-service-blog>div{padding:.75rem}
.moving-service-blog h3{font-size:.82rem;line-height:1.35;color:#201719;margin-bottom:.45rem}
.moving-service-blog p{color:#76686a;font-size:.72rem;line-height:1.5;margin-bottom:0}
.moving-service-services{background:#f3f6fc;padding:2.2rem 0!important}
.moving-service-services .heading{color:#e00012;font-size:1.65rem}
.moving-service-service-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:145px;height:100%;padding:1.2rem .8rem;text-align:center;text-decoration:none;color:#1f191a;background:#fff;border-radius:8px;box-shadow:0 5px 18px #1b2b4e12;transition:transform .25s,box-shadow .25s}
.moving-service-service-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #1b2b4e1f;color:var(--deep2)}
.moving-service-service-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e9edf7;color:#d20d1e;font-size:1.15rem;margin-bottom:.7rem}
.moving-service-service-card h3{font-size:.85rem;font-weight:700;margin-bottom:.35rem}
.moving-service-service-card p{font-size:.74rem;margin-bottom:.2rem;color:#5f5557}
.moving-service-service-card small{font-size:.72rem;color:#8a7d7f}
.moving-service-clients{padding:1.5rem 0 2rem!important}
.moving-service-clients .heading{font-size:1.3rem;margin-bottom:.3rem}
.moving-service-clients p{color:#e00012;font-size:1.05rem;font-weight:700;margin-bottom:1rem}
.moving-service-client-logos{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.moving-service-client-logos img{display:block;max-width:90px;width:auto;height:36px;object-fit:contain}
.moving-service-page .rv{opacity:1;transform:none}
@media(max-width:767.98px){
.moving-service-page section{padding:2rem 0}
.moving-service-hero{min-height:145px}
.moving-service-hero .heading{font-size:1.35rem}
.moving-service-intro{padding-top:1.5rem!important}
.moving-service-intro p{font-size:.82rem}
.moving-service-showcase__visual{min-height:220px}
.moving-service-showcase__photo,.moving-service-showcase__photo img{min-height:220px}
.moving-service-showcase__poster{padding:.8rem}
.moving-service-showcase__brand-icon{width:28px;height:28px;font-size:.8rem}
.moving-service-showcase__brand strong{font-size:.72rem}
.moving-service-showcase__brand small{font-size:.43rem}
.moving-service-showcase__poster h2{font-size:clamp(1.4rem,6vw,2rem)}
.moving-service-showcase__circle{width:90px;height:90px;top:-25px;right:-25px}
.moving-service-showcase__poster-bottom{font-size:.48rem}
.moving-service-section-title h2{font-size:1.15rem}
.moving-service-section-title p{font-size:.78rem}
.moving-service-blog img{height:95px}
.moving-service-blog h3{font-size:.75rem}
.moving-service-blog p{font-size:.68rem}
.moving-service-service-card{min-height:135px;padding:1rem .55rem}
.moving-service-service-card h3{font-size:.78rem}
.moving-service-client-logos{justify-content:center}
}


/* =======================================================================car */
   :root {
            --car-primary: #142b4a;
            --car-accent: #f5a623;
            --car-text: #243247;
            --car-muted: #64748b;
            --car-light: #f4f7fb;
            --car-border: #e1e8f0;
        }

        .car-transport-page { color: var(--car-text); overflow: hidden; }
        .car-transport-page .container { position: relative; z-index: 1; }
        .car-transport-page h1,
        .car-transport-page h2,
        .car-transport-page h3 { color: var(--car-primary); font-weight: 700; }
        .car-transport-page p { color: var(--car-muted); line-height: 1.8; }
        .car-transport-page .car-eyebrow {
            display: inline-flex; align-items: center; gap: 9px;
            color: var(--car-primary); background: #fff; border: 1px solid var(--car-border);
            border-radius: 50px; padding: 8px 14px; font-size: .82rem;
            font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
        }
        .car-transport-page .car-eyebrow:before {
            content: ""; width: 8px; height: 8px; border-radius: 50%;
            background: var(--car-accent); display: inline-block;
        }

        .car-transport-hero {
            position: relative; isolation: isolate; min-height: 510px; display: flex;
            align-items: center; padding: 85px 0;
            background: linear-gradient(100deg, rgba(10, 26, 48, .94) 0%, rgba(10, 26, 48, .78) 48%, rgba(10, 26, 48, .2) 100%),
                url('../img/car-baneer.jpg') center/cover no-repeat;
        }
        .car-transport-hero h1 { color: #fff; font-size: clamp(2.3rem, 5vw, 4.4rem); line-height: 1.08; max-width: 760px; margin: 20px 0; }
        .car-transport-hero p { color: rgba(255,255,255,.82); max-width: 650px; font-size: 1.08rem; }
        .car-transport-hero .car-eyebrow { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.3); color: #fff; }
        .car-transport-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: rgba(255,255,255,.8); font-size: .92rem; margin-top: 28px; }
        .car-transport-breadcrumb a { color: #fff; text-decoration: none; }
        .car-transport-breadcrumb a:hover { color: var(--car-accent); }
        .car-transport-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
        .car-transport-btn {
            display: inline-flex; align-items: center; justify-content: center; gap: 9px;
            min-height: 48px; padding: 12px 22px; border-radius: 8px;
            background: var(--car-accent); color: #172033; text-decoration: none; font-weight: 700;
            border: 1px solid var(--car-accent); transition: transform .2s ease, background .2s ease;
        }
        .car-transport-btn:hover { transform: translateY(-2px); background: #ffb83f; color: #172033; }
        .car-transport-btn--outline { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }
        .car-transport-btn--outline:hover { color: #fff; background: rgba(255,255,255,.12); }

        .car-transport-trust { margin-top: -34px; position: relative; z-index: 2; }
        .car-transport-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); background: #fff; border: 1px solid var(--car-border); border-radius: 16px; box-shadow: 0 18px 45px rgba(20,43,74,.09); overflow: hidden; }
        .car-transport-trust-item { display: flex; gap: 13px; align-items: center; padding: 24px 20px; border-right: 1px solid var(--car-border); }
        .car-transport-trust-item:last-child { border-right: 0; }
        .car-transport-trust-icon { flex: 0 0 46px; width: 46px; height: 46px; display: grid; place-items: center; background: #fff5e2; color: var(--car-primary); border-radius: 12px; font-size: 1.35rem; }
        .car-transport-trust-item strong { display: block; color: var(--car-primary); font-size: .98rem; }
        .car-transport-trust-item small { display: block; color: var(--car-muted); margin-top: 4px; line-height: 1.4; }

        .car-transport-section { padding: 86px 0; }
        .car-transport-section--light { background: var(--car-light); }
        .car-transport-heading { max-width: 760px; margin: 0 auto 42px; text-align: center; }
        .car-transport-heading h2 { font-size: clamp(1.8rem, 3vw, 2.7rem); margin: 15px 0; }
        .car-transport-heading p { margin: 0; }
        .car-transport-about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
        .car-transport-about-image { position: relative; }
        .car-transport-about-image img { width: 100%; min-height: 380px; height: 100%; max-height: 510px; object-fit: cover; border-radius: 18px; display: block; }
        .car-transport-image-note { position: absolute; left: 18px; bottom: 18px; max-width: 270px; background: #fff; border-radius: 12px; padding: 16px 18px; box-shadow: 0 10px 30px rgba(0,0,0,.12); }
        .car-transport-image-note strong { display: block; color: var(--car-primary); }
        .car-transport-image-note span { color: var(--car-muted); font-size: .9rem; }
        .car-transport-about-copy h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); margin: 16px 0; }
        .car-transport-checklist { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 24px 0 0; padding: 0; list-style: none; }
        .car-transport-checklist li { display: flex; gap: 10px; align-items: flex-start; color: var(--car-text); font-weight: 600; }
        .car-transport-checklist i { color: #198754; margin-top: 4px; }

        .car-transport-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
        .car-transport-step { background: #fff; padding: 28px 24px; border: 1px solid var(--car-border); border-radius: 14px; height: 100%; transition: transform .2s ease, box-shadow .2s ease; }
        .car-transport-step:hover { transform: translateY(-5px); box-shadow: 0 16px 35px rgba(20,43,74,.08); }
        .car-transport-step-number { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: var(--car-primary); color: #fff; font-weight: 800; margin-bottom: 20px; }
        .car-transport-step h3 { font-size: 1.12rem; margin-bottom: 10px; }
        .car-transport-step p { font-size: .95rem; margin: 0; }

        .car-transport-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
        .car-transport-service-card { background: #fff; border: 1px solid var(--car-border); border-radius: 15px; padding: 28px; height: 100%; transition: border-color .2s ease, transform .2s ease; }
        .car-transport-service-card:hover { transform: translateY(-4px); border-color: var(--car-accent); }
        .car-transport-service-icon { display: grid; place-items: center; width: 54px; height: 54px; background: #fff5e2; color: var(--car-primary); border-radius: 14px; font-size: 1.5rem; margin-bottom: 18px; }
        .car-transport-service-card h3 { font-size: 1.15rem; }
        .car-transport-service-card p { margin: 0; font-size: .95rem; }

        .car-transport-cost-wrap { overflow: hidden; border: 1px solid var(--car-border); border-radius: 14px; background: #fff; }
        .car-transport-cost-table { width: 100%; border-collapse: collapse; margin: 0; }
        .car-transport-cost-table th { background: var(--car-primary); color: #fff; text-align: left; padding: 17px 20px; font-size: .9rem; }
        .car-transport-cost-table td { padding: 17px 20px; border-bottom: 1px solid var(--car-border); color: var(--car-text); }
        .car-transport-cost-table tbody tr:last-child td { border-bottom: 0; }
        .car-transport-cost-table tbody tr:nth-child(even) { background: #f8fafc; }
        .car-transport-note { margin: 16px 0 0; font-size: .9rem; }

        .car-transport-prep-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
        .car-transport-prep-card { padding: 28px; border-radius: 14px; background: #fff; border: 1px solid var(--car-border); }
        .car-transport-prep-card h3 { margin-bottom: 14px; font-size: 1.2rem; }
        .car-transport-prep-card ul { margin: 0; padding-left: 20px; color: var(--car-muted); line-height: 1.9; }

        .car-transport-faq { max-width: 900px; margin: 0 auto; }
        .car-transport-faq details { background: #fff; border: 1px solid var(--car-border); border-radius: 10px; margin-bottom: 12px; padding: 18px 20px; }
        .car-transport-faq summary { cursor: pointer; font-weight: 700; color: var(--car-primary); }
        .car-transport-faq details p { margin: 12px 0 0; }
        .car-transport-cta { padding: 60px 0; background: var(--car-primary); }
        .car-transport-cta-inner { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
        .car-transport-cta h2 { color: #fff; font-size: clamp(1.8rem, 3vw, 2.5rem); margin-bottom: 10px; }
        .car-transport-cta p { color: rgba(255,255,255,.76); margin: 0; max-width: 700px; }

        @media (max-width: 991px) {
            .car-transport-trust-grid { grid-template-columns: repeat(2, 1fr); }
            .car-transport-trust-item:nth-child(2) { border-right: 0; }
            .car-transport-trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--car-border); }
            .car-transport-about-grid { gap: 30px; }
            .car-transport-steps { grid-template-columns: repeat(2, 1fr); }
            .car-transport-services-grid { grid-template-columns: repeat(2, 1fr); }
        }
        @media (max-width: 767px) {
            .car-transport-hero { min-height: 470px; padding: 70px 0; background-position: 58% center; }
            .car-transport-hero h1 { font-size: clamp(2.1rem, 9vw, 3.2rem); }
            .car-transport-section { padding: 60px 0; }
            .car-transport-trust { margin-top: -20px; }
            .car-transport-trust-item { padding: 17px 13px; gap: 10px; }
            .car-transport-trust-icon { flex-basis: 38px; width: 38px; height: 38px; font-size: 1.1rem; }
            .car-transport-trust-item strong { font-size: .88rem; }
            .car-transport-trust-item small { font-size: .78rem; }
            .car-transport-about-grid, .car-transport-prep-grid { grid-template-columns: 1fr; }
            .car-transport-about-image img { min-height: 280px; }
            .car-transport-checklist { grid-template-columns: 1fr; }
            .car-transport-steps, .car-transport-services-grid { grid-template-columns: 1fr; }
            .car-transport-cost-wrap { overflow-x: auto; }
            .car-transport-cost-table { min-width: 680px; }
            .car-transport-cta-inner { align-items: flex-start; flex-direction: column; }
            .car-transport-hero-actions { flex-direction: column; align-items: stretch; }
            .car-transport-btn { width: 100%; }
        }



        /* All India Services - Box Fix */
.all-india-section {
    padding: 40px 0;
    background: #fbf0ee;
    overflow: hidden;
}

.all-india-section .container {
    max-width: 1140px;
    width: 100%;
    margin: 0 auto;
}

.all-india-section .row {
    --bs-gutter-x: 14px;
    --bs-gutter-y: 14px;
    margin-top: 0;
}

.all-india-section .city {
    display: block;
    position: relative;
    width: 100%;
    height: 145px;
    border-radius: 8px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    text-decoration: none;
    box-sizing: border-box;
}

.all-india-section .city span {
    position: absolute;
    left: -1px;
    bottom: 1px;
    right: -3px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
}

/* Tablet */
@media (max-width: 991px) {
    .all-india-section .container {
        max-width: 720px;
    }

    .all-india-section .city {
        height: 125px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .all-india-section {
        padding: 30px 0;
    }

    .all-india-section .container {
        max-width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .all-india-section .row {
        --bs-gutter-x: 10px;
        --bs-gutter-y: 10px;
    }

    .all-india-section .city {
        height: 115px;
        border-radius: 6px;
    }

    .all-india-section .city span {
        left: 7px;
        bottom: 7px;
        font-size: 11px;
    }
}

@media (max-width: 767px) {
    .all-india-section {
        padding: 30px 0;
    }

    .all-india-section .heading {
        font-size: 23px;
    }

    .all-india-section .city {
        height: 110px;
        border-radius: 6px;
    }

    .all-india-section .city span {
        font-size: 10px;
        bottom: 7px;
        left: 7px;
    }
}



  /* ===== GALLERY PAGE ===== */
    

        .gallery-page .heading {
            font-family: var(--h-font, 'Plus Jakarta Sans', sans-serif);
            color: var(--h-color, #000);
            font-size: var(--h-size, clamp(1.9rem, 3.6vw, 2.9rem));
            font-weight: var(--h-weight, 800);
            letter-spacing: -.025em;
            line-height: 1.15;
        }

        .gallery-page .btn-main {
            display: inline-block;
            background: linear-gradient(135deg, var(--gold2), var(--gold));
            color: var(--ink);
            font-weight: 700;
            border: 0;
            padding: .85rem 1.9rem;
            border-radius: 50px;
            text-decoration: none;
            transition: .3s ease;
        }

        .gallery-page .btn-main:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 28px rgba(217,169,63,.3);
            color: var(--ink);
        }

        /* HERO */
        .gallery-hero {
            padding: 85px 0 75px;
            background: linear-gradient(135deg, #fff 0%, #fbf0ef 100%);
            position: relative;
            overflow: hidden;
        }

        .gallery-hero::after {
            content: "";
            position: absolute;
            width: 300px;
            height: 300px;
            right: -130px;
            bottom: -190px;
            border: 1px solid rgba(122,10,22,.13);
            border-radius: 50%;
            box-shadow: 0 0 0 35px rgba(122,10,22,.025),
                        0 0 0 70px rgba(122,10,22,.02);
        }

        .gallery-kicker {
            display: inline-block;
            color: #c8102e;
            font-size: 13px;
            font-weight: 800;
            letter-spacing: 1px;
            text-transform: uppercase;
            margin-bottom: 15px;
        }

        .gallery-kicker i {
            color: #d9a93f;
            margin-right: 7px;
        }

        .gallery-hero .heading {
            font-size: clamp(35px, 5vw, 62px);
            letter-spacing: -.05em;
            margin-bottom: 20px;
        }

        .gallery-hero .heading span {
            color: #c8102e;
        }

        .gallery-hero p {
            max-width: 670px;
            margin: auto;
            color: #77595b;
            font-size: 15px;
            line-height: 1.9;
        }

        .gallery-hero-stats {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 32px;
            margin-top: 32px;
        }

        .gallery-stat strong {
            display: block;
            font-size: 17px;
            color: #7a0a16;
            font-weight: 800;
        }

        .gallery-stat span {
            display: block;
            font-size: 12px;
            color: #866d6e;
            margin-top: 4px;
        }

        .gallery-stat-divider {
            height: 38px;
            width: 1px;
            background: #e7cdca;
        }

        /* GALLERY */
        .gallery-section {
            padding: 75px 0 20px;
        }

        .gallery-section-heading {
            margin-bottom: 35px;
            text-align: center;
        }

        .gallery-section-heading p {
            color: #806365;
            font-size: 14px;
            line-height: 1.8;
            max-width: 620px;
            margin: 0px auto
        }

        .gallery-filters {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 10px;
            margin-bottom: 35px;
        }

        .gallery-filter {
            border: 1px solid #eee0df;
            background: #fff;
            color: #77595b;
            padding: 11px 21px;
            border-radius: 50px;
            font-size: 13px;
            font-weight: 700;
            cursor: pointer;
            transition: .25s ease;
        }

        .gallery-filter:hover,
        .gallery-filter.active {
            background: #7a0a16;
            border-color: #7a0a16;
            color: #fff;
        }

        .gallery-item {
            margin-bottom: 25px;
        }

        .gallery-card {
            height: 100%;
            border: 1px solid #f0e4e3;
            border-radius: 15px;
            overflow: hidden;
            background: #fff;
            box-shadow: 0 6px 25px rgba(37,9,13,.045);
            transition: transform .3s ease, box-shadow .3s ease;
        }

        .gallery-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 16px 35px rgba(37,9,13,.12);
        }

        .gallery-card-image {
            height: 265px;
            position: relative;
            overflow: hidden;
            cursor: pointer;
            background: #fbf0ef;
        }

        .gallery-card-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform .55s ease;
        }

        .gallery-card:hover .gallery-card-image img {
            transform: scale(1.07);
        }

        .gallery-card-image::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, transparent 50%, rgba(37,9,13,.35));
            pointer-events: none;
        }

        .gallery-zoom {
            position: absolute;
            top: 14px;
            right: 14px;
            z-index: 2;
            width: 40px;
            height: 40px;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%;
            background: #fff;
            color: #7a0a16;
            font-size: 17px;
        }

        .gallery-card-content {
            padding: 19px;
        }

        .gallery-category {
            display: block;
            color: #c8102e;
            text-transform: uppercase;
            font-size: 10px;
            letter-spacing: 1px;
            font-weight: 800;
            margin-bottom: 8px;
        }

        .gallery-card-content h3 {
            font-size: 17px;
            line-height: 1.4;
            font-weight: 800;
            color: #25090d;
            margin-bottom: 8px;
        }

        .gallery-card-content p {
            color: #806365;
            font-size: 13px;
            line-height: 1.7;
            margin-bottom: 0;
        }

        .gallery-item[hidden] {
            display: none !important;
        }

        /* CTA */
        .gallery-cta {
            background: #7a0a16;
            padding: 55px 25px;
            border-radius: 20px;
            margin-top: 60px;
        }

        .gallery-cta h2 {
            color: #fff !important;
        }

        .gallery-cta p {
            color: rgba(255,255,255,.78);
            line-height: 1.8;
            max-width: 600px;
            margin: 0 auto 25px;
            font-size: 14px;
        }

        /* LIGHTBOX */
        .gallery-lightbox {
            position: fixed;
            inset: 0;
            z-index: 99999;
            background: rgba(18,4,6,.94);
            display: none;
            align-items: center;
            justify-content: center;
            padding: 65px 20px 30px;
        }

        .gallery-lightbox.open {
            display: flex;
        }

        .gallery-lightbox-inner {
            max-width: 1050px;
            width: 100%;
            text-align: center;
        }

        .gallery-lightbox-inner img {
            max-width: 100%;
            max-height: 75vh;
            width: auto;
            height: auto;
            object-fit: contain;
            border-radius: 8px;
        }

        .gallery-lightbox-caption {
            color: #fff;
            margin-top: 15px;
            font-weight: 700;
        }

        .gallery-lightbox-caption small {
            display: block;
            margin-top: 5px;
            color: #d5bfc0;
            font-weight: 400;
        }

        .gallery-lightbox button {
            position: absolute;
            width: 44px;
            height: 44px;
            border: 1px solid rgba(255,255,255,.2);
            border-radius: 50%;
            color: #fff;
            background: rgba(255,255,255,.1);
            font-size: 20px;
            cursor: pointer;
        }

        .gallery-lightbox button:hover {
            background: #c8102e;
        }

        .gallery-lightbox-close {
            top: 18px;
            right: 20px;
        }

        .gallery-lightbox-prev {
            left: 25px;
            top: 50%;
            transform: translateY(-50%);
        }

        .gallery-lightbox-next {
            right: 25px;
            top: 50%;
            transform: translateY(-50%);
        }

        body.gallery-modal-open {
            overflow: hidden;
        }

        @media(max-width: 991px) {
            .gallery-card-image {
                height: 230px;
            }
        }

        @media(max-width: 767px) {
            .gallery-hero {
                padding: 55px 0 45px;
            }

            .gallery-hero .heading {
                font-size: clamp(32px, 8vw, 43px);
            }

            .gallery-hero p {
                font-size: 13px;
            }

            .gallery-hero-stats {
                gap: 15px;
            }

            .gallery-stat strong {
                font-size: 13px;
            }

            .gallery-stat span {
                font-size: 10px;
            }

            .gallery-section {
                padding-top: 50px;
            }

            .gallery-filters {
                gap: 7px;
                margin-bottom: 25px;
            }

            .gallery-filter {
                padding: 9px 13px;
                font-size: 11px;
            }

            .gallery-item {
                margin-bottom: 15px;
            }

            .gallery-card {
                border-radius: 11px;
            }

            .gallery-card-image {
                height: 185px;
            }

            .gallery-card-content {
                padding: 12px;
            }

            .gallery-card-content h3 {
                font-size: 13px;
            }

            .gallery-card-content p {
                font-size: 11px;
            }

            .gallery-category {
                font-size: 9px;
            }

            .gallery-zoom {
                width: 32px;
                height: 32px;
                top: 9px;
                right: 9px;
                font-size: 13px;
            }

            .gallery-cta {
                margin-top: 35px;
                padding: 40px 18px;
                border-radius: 14px;
            }

            .gallery-lightbox-prev {
                left: 8px;
            }

            .gallery-lightbox-next {
                right: 8px;
            }

            .gallery-lightbox button {
                width: 36px;
                height: 36px;
                font-size: 16px;
            }
        }

        @media(max-width: 380px) {
            .gallery-card-image {
                height: 155px;
            }

            .gallery-card-content {
                padding: 10px;
            }

            .gallery-card-content h3 {
                font-size: 12px;
            }

            .gallery-card-content p {
                font-size: 10px;
            }
        }


           .lu-page {
            color: #273449;
            overflow: hidden;
        }

        .lu-hero {
            position: relative;
            isolation: isolate;
            min-height: 390px;
            display: flex;
            align-items: center;
            padding: 75px 0;
            color: #fff;
            background:
                linear-gradient(90deg, rgba(8, 24, 43, .94), rgba(8, 24, 43, .67)),
                url('../img/banner.webp') center/cover no-repeat;
        }

        .lu-hero-content {
            max-width: 850px;
        }

        .lu-eyebrow {
            display: inline-block;
            margin-bottom: 15px;
            color: #ffb547;
            font-size: 13px;
            font-weight: 800;
            letter-spacing: 2px;
            text-transform: uppercase;
        }

        .lu-hero h1 {
            max-width: 800px;
            margin: 0 0 20px;
            color: #fff;
            font-size: clamp(34px, 5vw, 58px);
            font-weight: 800;
            line-height: 1.13;
        }

        .lu-hero p {
            max-width: 690px;
            margin-bottom: 25px;
            color: #edf2f7;
            font-size: 17px;
            line-height: 1.8;
        }

        .lu-breadcrumb {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 10px;
            margin-top: 28px;
            font-size: 14px;
        }

        .lu-breadcrumb a {
            color: #ffbd59;
            text-decoration: none;
        }

        .lu-breadcrumb span {
            color: #e1e8f0;
        }

        .lu-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 9px;
            min-height: 48px;
            padding: 12px 22px;
            border: 1px solid #f4a62a;
            border-radius: 6px;
            background: #f4a62a;
            color: #17263a;
            font-weight: 800;
            text-decoration: none;
            transition: .25s ease;
        }

        .lu-btn:hover {
            border-color: #fff;
            background: #fff;
            color: #17263a;
            transform: translateY(-2px);
        }

        .lu-btn-outline {
            border-color: rgba(255,255,255,.65);
            background: transparent;
            color: #fff;
        }

        .lu-btn-outline:hover {
            border-color: #fff;
            background: #fff;
            color: #17263a;
        }

        .lu-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
        }

        .lu-trust {
            position: relative;
            z-index: 2;
            margin-top: -1px;
            padding: 25px 0;
            background: #f5f7fa;
            border-bottom: 1px solid #e5eaf0;
        }

        .lu-trust-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 18px;
        }

        .lu-trust-item {
            display: flex;
            align-items: center;
            gap: 13px;
            padding: 12px;
        }

        .lu-trust-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 48px;
            width: 48px;
            height: 48px;
            border-radius: 12px;
            background: #fff0d7;
            color: #bd7410;
            font-size: 22px;
        }

        .lu-trust-item strong {
            display: block;
            color: #17263a;
            font-size: 14px;
        }

        .lu-trust-item small {
            display: block;
            margin-top: 4px;
            color: #68768a;
            font-size: 12px;
            line-height: 1.5;
        }

        .lu-section {
            padding: 75px 0;
        }

        .lu-section-light {
            background: #f6f8fb;
        }

        .lu-about-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            gap: 45px;
        }

        .lu-about-image {
            position: relative;
            min-width: 0;
        }

        .lu-about-image img {
            display: block;
            width: 100%;
            min-height: 340px;
            max-height: 460px;
            border-radius: 14px;
            object-fit: cover;
        }

        .lu-image-caption {
            position: relative;
            width: calc(100% - 34px);
            margin: -48px auto 0;
            padding: 18px 20px;
            border-radius: 10px;
            background: #fff;
            box-shadow: 0 10px 30px rgba(20, 38, 62, .12);
        }

        .lu-image-caption strong {
            display: block;
            color: #17263a;
            font-size: 17px;
        }

        .lu-image-caption span {
            display: block;
            margin-top: 5px;
            color: #657286;
            font-size: 14px;
            line-height: 1.6;
        }

        .lu-copy h2,
        .lu-section-heading h2 {
            margin: 0 0 18px;
            color: #17263a;
            font-size: clamp(27px, 3vw, 38px);
            font-weight: 800;
            line-height: 1.25;
        }

        .lu-copy p,
        .lu-section-heading p {
            color: #637186;
            font-size: 15px;
            line-height: 1.9;
        }

        .lu-checklist {
            display: grid;
            gap: 12px;
            margin: 22px 0 27px;
            padding: 0;
            list-style: none;
        }

        .lu-checklist li {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            color: #35445a;
            font-size: 15px;
            line-height: 1.6;
        }

        .lu-checklist i {
            margin-top: 4px;
            color: #d78a17;
        }

        .lu-section-heading {
            max-width: 780px;
            margin: 0 auto 38px;
            text-align: center;
        }

        .lu-section-heading .lu-eyebrow {
            color: #c47a11;
        }

        .lu-cards {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 22px;
        }

        .lu-card {
            height: 100%;
            padding: 27px 24px;
            border: 1px solid #e7ebf1;
            border-radius: 12px;
            background: #fff;
            box-shadow: 0 8px 24px rgba(20, 38, 62, .045);
            transition: transform .25s ease, box-shadow .25s ease;
        }

        .lu-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 14px 32px rgba(20, 38, 62, .10);
        }

        .lu-card-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 54px;
            height: 54px;
            margin-bottom: 19px;
            border-radius: 12px;
            background: #fff0d7;
            color: #bd7410;
            font-size: 25px;
        }

        .lu-card h3 {
            margin: 0 0 12px;
            color: #17263a;
            font-size: 19px;
            font-weight: 800;
            line-height: 1.4;
        }

        .lu-card p {
            margin: 0;
            color: #667489;
            font-size: 14px;
            line-height: 1.85;
        }

        .lu-process-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 20px;
        }

        .lu-process-card {
            position: relative;
            padding: 25px 21px;
            border: 1px solid #e4eaf1;
            border-radius: 12px;
            background: #fff;
        }

        .lu-step {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 45px;
            height: 45px;
            margin-bottom: 18px;
            border-radius: 50%;
            background: #17263a;
            color: #fff;
            font-size: 15px;
            font-weight: 800;
        }

        .lu-process-card h3 {
            margin-bottom: 10px;
            color: #17263a;
            font-size: 18px;
            font-weight: 800;
        }

        .lu-process-card p {
            margin: 0;
            color: #667489;
            font-size: 14px;
            line-height: 1.8;
        }

        .lu-table-wrap {
            overflow-x: auto;
            border: 1px solid #e3e8ef;
            border-radius: 10px;
            background: #fff;
        }

        .lu-table {
            width: 100%;
            min-width: 680px;
            margin: 0;
            border-collapse: collapse;
        }

        .lu-table th {
            padding: 17px 18px;
            background: #17263a;
            color: #fff;
            text-align: left;
            font-size: 14px;
        }

        .lu-table td {
            padding: 16px 18px;
            border-bottom: 1px solid #e8edf2;
            color: #526176;
            font-size: 14px;
            line-height: 1.65;
        }

        .lu-table tbody tr:last-child td {
            border-bottom: 0;
        }

        .lu-note {
            margin: 16px 0 0;
            color: #68768a;
            font-size: 13px;
            line-height: 1.8;
        }

        .lu-faq {
            max-width: 900px;
            margin: 0 auto;
        }

        .lu-faq details {
            margin-bottom: 13px;
            padding: 19px 21px;
            border: 1px solid #e2e8f0;
            border-radius: 9px;
            background: #fff;
        }

        .lu-faq summary {
            position: relative;
            padding-right: 24px;
            color: #17263a;
            font-size: 16px;
            font-weight: 800;
            cursor: pointer;
            line-height: 1.6;
        }

        .lu-faq details p {
            margin: 13px 0 0;
            color: #667489;
            font-size: 14px;
            line-height: 1.85;
        }

        .lu-cta {
            padding: 55px 0;
            background: #17263a;
            color: #fff;
        }

        .lu-cta-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 30px;
        }

        .lu-cta h2 {
            margin: 0 0 12px;
            color: #fff;
            font-size: clamp(26px, 3vw, 36px);
            font-weight: 800;
        }

        .lu-cta p {
            max-width: 700px;
            margin: 0;
            color: #d7e0ea;
            font-size: 15px;
            line-height: 1.8;
        }

        .lu-contact-details {
            margin-top: 16px !important;
        }

        @media (max-width: 991px) {
            .lu-trust-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .lu-about-grid {
                grid-template-columns: 1fr;
                gap: 32px;
            }

            .lu-cards {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .lu-process-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .lu-cta-inner {
                align-items: flex-start;
                flex-direction: column;
            }
        }

        @media (max-width: 575px) {
            .lu-hero {
                min-height: 350px;
                padding: 55px 0;
            }

            .lu-hero h1 {
                font-size: 34px;
            }

            .lu-hero p {
                font-size: 15px;
            }

            .lu-actions {
                align-items: stretch;
                flex-direction: column;
            }

            .lu-btn {
                width: 100%;
            }

            .lu-trust-grid {
                gap: 7px;
            }

            .lu-trust-item {
                align-items: flex-start;
                gap: 9px;
                padding: 8px 2px;
            }

            .lu-trust-icon {
                flex-basis: 39px;
                width: 39px;
                height: 39px;
                font-size: 18px;
            }

            .lu-trust-item strong {
                font-size: 12px;
            }

            .lu-trust-item small {
                font-size: 11px;
            }

            .lu-section {
                padding: 48px 0;
            }

            .lu-about-image img {
                min-height: 240px;
            }

            .lu-cards,
            .lu-process-grid {
                grid-template-columns: 1fr;
            }

            .lu-card,
            .lu-process-card {
                padding: 23px 20px;
            }

            .lu-section-heading {
                margin-bottom: 27px;
            }

            .lu-image-caption {
                margin-top: -35px;
                padding: 15px;
            }

            .lu-cta {
                padding: 42px 0;
            }
        }














        
:root {
    --sr-primary: #123b67;
    --sr-primary-dark: #0b2848;
    --sr-secondary: #f28c28;
    --sr-text: #333d49;
    --sr-muted: #657180;
    --sr-light: #f5f8fc;
    --sr-white: #ffffff;
    --sr-border: #e3e9f0;
    --sr-shadow: 0 12px 35px rgba(15, 45, 78, 0.10);
}

/* General */
.moving-service-hero,
.moving-service-intro,
.moving-service-types,
.moving-service-process,
.moving-service-why,
.moving-service-pricing,
.moving-service-faq,
.moving-service-cta {
    box-sizing: border-box;
}

.moving-service-hero *,
.moving-service-intro *,
.moving-service-types *,
.moving-service-process *,
.moving-service-why *,
.moving-service-pricing *,
.moving-service-faq *,
.moving-service-cta * {
    box-sizing: border-box;
}

.moving-service-hero img,
.moving-service-intro img,
.moving-service-why img {
    display: block;
    max-width: 100%;
}

.moving-service-hero a,
.moving-service-intro a,
.moving-service-types a,
.moving-service-process a,
.moving-service-why a,
.moving-service-pricing a,
.moving-service-faq a,
.moving-service-cta a {
    transition: all 0.3s ease;
}

.section-padding {
    padding: 80px 0;
}

.section-subtitle {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--sr-secondary);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 1.5px;
    line-height: 1.5;
    text-transform: uppercase;
}

.section-heading {
    max-width: 800px;
    margin: 0 auto 45px;
}

.section-heading h2 {
    margin: 0 0 16px;
    color: var(--sr-primary-dark);
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 800;
    line-height: 1.25;
}

.section-heading > p {
    max-width: 720px;
    margin: 0 auto;
    color: var(--sr-muted);
    font-size: 16px;
    line-height: 1.8;
}

/* =========================================
   HERO BANNER
========================================= */

.moving-service-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 530px;
    padding: 90px 0;
    overflow: hidden;
    isolation: isolate;
    background-color: var(--sr-primary-dark);
    background-image: var(--moving-hero-img);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.moving-service-hero::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: "";
    background: linear-gradient(
        90deg,
        rgba(6, 25, 47, 0.94) 0%,
        rgba(8, 34, 61, 0.82) 48%,
        rgba(8, 34, 61, 0.32) 100%
    );
}

.moving-service-hero-content {
    max-width: 760px;
    color: var(--sr-white);
}

.moving-service-tag {
    display: inline-block;
    margin-bottom: 20px;
    padding: 9px 16px;
    border: 1px solid rgba(255, 255, 255, 0.38);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.10);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.moving-service-hero h1 {
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(34px, 4.5vw, 58px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.8px;
}

.moving-service-hero p {
    max-width: 680px;
    margin: 0 0 28px;
    color: rgba(255, 255, 255, 0.91);
    font-size: 17px;
    line-height: 1.9;
}

.moving-service-hero-buttons,
.moving-service-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
}

.moving-service-hero .btn,
.moving-service-intro .btn,
.moving-service-why .btn,
.moving-service-cta .btn {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 13px 24px;
    border: 2px solid transparent;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

.moving-service-hero .btn-primary,
.moving-service-intro .btn-primary,
.moving-service-why .btn-primary,
.moving-service-cta .btn-primary {
    border-color: var(--sr-secondary);
    background: var(--sr-secondary);
    color: #ffffff;
}

.moving-service-hero .btn-primary:hover,
.moving-service-intro .btn-primary:hover,
.moving-service-why .btn-primary:hover,
.moving-service-cta .btn-primary:hover {
    border-color: #d97516;
    background: #d97516;
    color: #ffffff;
    transform: translateY(-2px);
}

.moving-service-hero .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.75);
    background: transparent;
    color: #ffffff;
}

.moving-service-hero .btn-outline-light:hover {
    border-color: #ffffff;
    background: #ffffff;
    color: var(--sr-primary-dark);
}

/* =========================================
   INTRODUCTION SECTION
========================================= */

.moving-service-intro {
    background: #ffffff;
}

.moving-service-intro-image {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: var(--sr-light);
    box-shadow: var(--sr-shadow);
}

.moving-service-intro-image img {
    width: 100%;
    height: 430px;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.moving-service-intro-image:hover img {
    transform: scale(1.04);
}

.moving-service-intro-content h2,
.moving-service-why-content h2 {
    margin: 0 0 20px;
    color: var(--sr-primary-dark);
    font-size: clamp(27px, 3vw, 38px);
    font-weight: 800;
    line-height: 1.3;
}

.moving-service-intro-content p,
.moving-service-why-content p {
    margin-bottom: 17px;
    color: var(--sr-muted);
    font-size: 16px;
    line-height: 1.9;
}

.moving-service-intro-content .btn {
    margin-top: 8px;
}

/* =========================================
   TRANSPORTATION SERVICE CARDS
========================================= */

.moving-service-types {
    background: var(--sr-light);
}

.moving-service-types .row {
    align-items: stretch;
}

.moving-service-card {
    position: relative;
    height: 100%;
    padding: 30px 26px;
    overflow: hidden;
    border: 1px solid var(--sr-border);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 5px 20px rgba(15, 45, 78, 0.04);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.moving-service-card::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 0;
    content: "";
    background: var(--sr-secondary);
    transition: height 0.3s ease;
}

.moving-service-card:hover {
    transform: translateY(-7px);
    border-color: rgba(242, 140, 40, 0.55);
    box-shadow: var(--sr-shadow);
}

.moving-service-card:hover::before {
    height: 100%;
}

.moving-service-card-content {
    position: relative;
    z-index: 1;
}

.moving-service-card h3 {
    margin: 0 0 15px;
    color: var(--sr-primary);
    font-size: 21px;
    font-weight: 800;
    line-height: 1.4;
}

.moving-service-card p {
    margin: 0;
    color: var(--sr-muted);
    font-size: 15px;
    line-height: 1.85;
}

/* =========================================
   PROCESS SECTION
========================================= */

.moving-service-process {
    background: #ffffff;
}

.moving-process-card {
    position: relative;
    height: 100%;
    padding: 30px 24px;
    border: 1px solid var(--sr-border);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 5px 22px rgba(15, 45, 78, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.moving-process-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sr-shadow);
}

.moving-process-number {
    display: inline-flex;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border-radius: 50%;
    background: var(--sr-primary);
    color: #ffffff;
    font-size: 19px;
    font-weight: 800;
}

.moving-process-card h3 {
    margin: 0 0 13px;
    color: var(--sr-primary-dark);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.4;
}

.moving-process-card p {
    margin: 0;
    color: var(--sr-muted);
    font-size: 15px;
    line-height: 1.8;
}

/* =========================================
   WHY CHOOSE US
========================================= */

.moving-service-why {
    background: var(--sr-light);
}

.moving-service-why-content ul {
    display: grid;
    gap: 13px;
    margin: 23px 0;
    padding: 0;
    list-style: none;
}

.moving-service-why-content li {
    position: relative;
    padding-left: 32px;
    color: var(--sr-text);
    font-size: 15px;
    line-height: 1.7;
}

.moving-service-why-content li::before {
    position: absolute;
    top: 1px;
    left: 0;
    display: flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e3f4e9;
    color: #198754;
    content: "✓";
    font-size: 13px;
    font-weight: 800;
}

.moving-service-why-image {
    overflow: hidden;
    border-radius: 14px;
    background: #e9eef5;
    box-shadow: var(--sr-shadow);
}

.moving-service-why-image img {
    width: 100%;
    height: 440px;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.moving-service-why-image:hover img {
    transform: scale(1.04);
}

.sr-trust-section {
    width: 100%;
    padding: 35px 0;
    background: #ffffff;
    overflow: hidden;
   
}

.sr-trust-section .container {
    max-width: 1320px;
    margin: 0 auto;
}

.sr-trust-row {
    align-items: stretch;
    row-gap: 30px;
}

.sr-trust-row > div {
    display: flex;
    min-width: 0;
}

.sr-trust-card {
    width: 100%;
    text-align: center;
    padding: 5px 10px 8px;
    background: #ffffff;
    transition: transform .3s ease;
}

.sr-trust-card:hover {
    transform: translateY(-4px);
}

/* Image */
.sr-trust-image {
    height: 105px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

.sr-trust-image img {
    display: block;
    width: 125px;
    height: 105px;
    object-fit: contain;
    object-position: center;
}

/* Heading */
.sr-trust-card h3 {
    margin: 0 0 12px;
    color: #171717;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
}

/* Description */
.sr-trust-card p {
    margin: 0;
    color: #353535;
    font-size: 13px;
    line-height: 1.8;
}

/* Tablet */
@media (max-width: 991px) {
    .sr-trust-section {
        padding: 30px 0;
    }

    .sr-trust-image {
        height: 95px;
    }

    .sr-trust-image img {
        width: 110px;
        height: 95px;
    }

    .sr-trust-card h3 {
        font-size: 15px;
    }

    .sr-trust-card p {
        font-size: 12px;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .sr-trust-section {
        padding: 25px 0;
    }

    .sr-trust-section .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .sr-trust-row {
        --bs-gutter-x: 12px;
        row-gap: 25px;
    }

    .sr-trust-card {
        padding: 5px 4px;
    }

    .sr-trust-image {
        height: 78px;
        margin-bottom: 10px;
    }

    .sr-trust-image img {
        width: 90px;
        height: 78px;
    }

    .sr-trust-card h3 {
        font-size: 13px;
        line-height: 1.5;
        margin-bottom: 8px;
    }

    .sr-trust-card p {
        font-size: 11px;
        line-height: 1.65;
    }
}
/* =========================================
   PRICING TABLE
========================================= */

.moving-service-pricing {
    background: #ffffff;
}

.moving-service-pricing .table-responsive {
    overflow-x: auto;
    border: 1px solid var(--sr-border);
    border-radius: 10px;
    box-shadow: 0 5px 22px rgba(15, 45, 78, 0.05);
}

.moving-service-pricing table {
    width: 100%;
    min-width: 600px;
    margin: 0;
    border-collapse: collapse;
    background: #ffffff;
}

.moving-service-pricing table th {
    padding: 18px 20px;
    border-color: rgba(255, 255, 255, 0.16);
    background: var(--sr-primary);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    vertical-align: middle;
}

.moving-service-pricing table td {
    padding: 17px 20px;
    border-color: var(--sr-border);
    color: var(--sr-text);
    font-size: 14px;
    line-height: 1.7;
    vertical-align: middle;
}

.moving-service-pricing tbody tr:nth-child(even) {
    background: #f7f9fc;
}

.moving-service-pricing tbody tr:hover {
    background: #fff7ef;
}

.moving-service-pricing table td a {
    display: inline-block;
    padding: 8px 15px;
    border-radius: 5px;
    background: var(--sr-secondary);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.moving-service-pricing table td a:hover {
    background: var(--sr-primary);
    color: #ffffff;
}

.moving-service-pricing > .container > p {
    color: var(--sr-muted);
    line-height: 1.7;
}

/* =========================================
   FAQ SECTION
========================================= */

.moving-service-faq {
    background: var(--sr-light);
}

.moving-service-faq .accordion {
    max-width: 900px;
    margin: 0 auto;
}

.moving-service-faq .accordion-item {
    margin-bottom: 14px;
    overflow: hidden;
    border: 1px solid var(--sr-border);
    border-radius: 9px;
    background: #ffffff;
    box-shadow: 0 3px 12px rgba(15, 45, 78, 0.035);
}

.moving-service-faq .accordion-button {
    padding: 20px 23px;
    background: #ffffff;
    color: var(--sr-primary-dark);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    box-shadow: none;
}

.moving-service-faq .accordion-button:not(.collapsed) {
    background: var(--sr-primary);
    color: #ffffff;
}

.moving-service-faq .accordion-button::after {
    flex-shrink: 0;
}

.moving-service-faq .accordion-body {
    padding: 22px 23px;
    color: var(--sr-muted);
    font-size: 15px;
    line-height: 1.9;
}

.moving-service-faq .accordion-body a {
    color: var(--sr-primary);
    font-weight: 700;
    overflow-wrap: anywhere;
}

/* =========================================
   CONTACT CTA SECTION
========================================= */

.moving-service-cta {
    position: relative;
    overflow: hidden;
    background: linear-gradient(
        135deg,
        var(--sr-primary-dark),
        var(--sr-primary)
    );
}

.moving-service-cta-content {
    max-width: 900px;
    margin: 0 auto;
    color: #ffffff;
}

.moving-service-cta .section-subtitle {
    color: #ffb866;
}

.moving-service-cta h2 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: clamp(28px, 3.5vw, 42px);
    font-weight: 800;
    line-height: 1.3;
}

.moving-service-cta-content > p {
    margin: 0 auto 24px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 16px;
    line-height: 1.8;
}

.moving-service-cta-buttons {
    justify-content: center;
    margin-bottom: 20px;
}

.moving-service-cta .btn-success {
    border-color: #198754;
    background: #198754;
    color: #ffffff;
}

.moving-service-cta .btn-success:hover {
    border-color: #146c43;
    background: #146c43;
    color: #ffffff;
    transform: translateY(-2px);
}

.moving-service-cta-content > p a {
    color: #ffffff;
    font-weight: 700;
    overflow-wrap: anywhere;
}

/* =========================================
   RESPONSIVE TABLET
========================================= */

@media (max-width: 991.98px) {
    .section-padding {
        padding: 65px 0;
    }

    .moving-service-hero {
        min-height: 470px;
        padding: 75px 0;
        background-position: center;
    }

    .moving-service-hero::before {
        background: linear-gradient(
            90deg,
            rgba(6, 25, 47, 0.93),
            rgba(8, 34, 61, 0.70)
        );
    }

    .moving-service-hero-content {
        max-width: 700px;
    }

    .moving-service-intro-image img,
    .moving-service-why-image img {
        height: 360px;
    }

    .section-heading {
        margin-bottom: 35px;
    }

    .moving-service-card {
        padding: 25px 22px;
    }
}

/* =========================================
   RESPONSIVE MOBILE
========================================= */

@media (max-width: 767.98px) {
    .section-padding {
        padding: 48px 0;
    }

    .section-heading {
        margin-bottom: 28px;
    }

    .section-heading h2 {
        font-size: 29px;
        line-height: 1.3;
    }

    .section-heading > p {
        font-size: 14px;
        line-height: 1.8;
    }

    .section-subtitle {
        margin-bottom: 9px;
        font-size: 12px;
        letter-spacing: 1px;
    }

    .moving-service-hero {
        min-height: 450px;
        padding: 65px 0;
        background-position: center;
    }

    .moving-service-hero::before {
        background: rgba(6, 25, 47, 0.78);
    }

    .moving-service-tag {
        margin-bottom: 16px;
        padding: 8px 12px;
        font-size: 11px;
    }

    .moving-service-hero h1 {
        margin-bottom: 17px;
        font-size: clamp(31px, 8vw, 42px);
        line-height: 1.2;
        letter-spacing: -0.4px;
    }

    .moving-service-hero p {
        margin-bottom: 23px;
        font-size: 15px;
        line-height: 1.8;
    }

    .moving-service-hero-buttons {
        align-items: stretch;
        gap: 10px;
    }

    .moving-service-hero .btn,
    .moving-service-intro .btn,
    .moving-service-why .btn,
    .moving-service-cta .btn {
        min-height: 46px;
        padding: 12px 17px;
        font-size: 14px;
    }

    .moving-service-intro-image img,
    .moving-service-why-image img {
        height: 280px;
    }

    .moving-service-intro-content h2,
    .moving-service-why-content h2 {
        font-size: 28px;
        line-height: 1.35;
    }

    .moving-service-intro-content p,
    .moving-service-why-content p {
        font-size: 14px;
        line-height: 1.85;
    }

    .moving-service-card {
        padding: 24px 22px;
    }

    .moving-service-card h3 {
        font-size: 19px;
    }

    .moving-service-card p {
        font-size: 14px;
        line-height: 1.8;
    }

    .moving-process-card {
        padding: 25px 22px;
    }

    .moving-process-card h3 {
        font-size: 19px;
    }

    .moving-process-card p {
        font-size: 14px;
    }

    .moving-service-why-content li {
        font-size: 14px;
    }

    .moving-service-pricing table th,
    .moving-service-pricing table td {
        padding: 13px 12px;
        font-size: 13px;
    }

    .moving-service-faq .accordion-button {
        padding: 16px;
        font-size: 14px;
        line-height: 1.55;
    }

    .moving-service-faq .accordion-body {
        padding: 17px;
        font-size: 14px;
        line-height: 1.8;
    }

    .moving-service-cta h2 {
        font-size: 29px;
    }

    .moving-service-cta-content > p {
        font-size: 14px;
        line-height: 1.8;
    }

    .moving-service-cta-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .moving-service-cta-buttons .btn {
        width: 100%;
    }
}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 420px) {
    .moving-service-hero {
        min-height: 420px;
        padding: 50px 0;
    }

    .moving-service-hero h1 {
        font-size: 30px;
    }

    .moving-service-hero p {
        font-size: 14px;
    }

    .moving-service-hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .moving-service-hero-buttons .btn {
        width: 100%;
    }

    .moving-service-intro-image img,
    .moving-service-why-image img {
        height: 230px;
    }

    .moving-service-intro-content h2,
    .moving-service-why-content h2,
    .section-heading h2 {
        font-size: 26px;
    }

    .moving-service-card,
    .moving-process-card {
        padding: 22px 18px;
    }
}

/* Reduced Motion Accessibility */
@media (prefers-reduced-motion: reduce) {
    .moving-service-hero *,
    .moving-service-intro *,
    .moving-service-types *,
    .moving-service-process *,
    .moving-service-why *,
    .moving-service-pricing *,
    .moving-service-faq *,
    .moving-service-cta * {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}



/* Floating WhatsApp */
.sb-whatsapp-float {
    position: fixed;
    right: 24px;
    bottom: 25px;
    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 62px;
    height: 62px;
    border: 3px solid rgba(255, 255, 255, .9);
    border-radius: 50%;

    background: linear-gradient(145deg, #25d366, #0b9f50);
    color: #ffffff !important;
    font-size: 34px;
    text-decoration: none !important;

    box-shadow: 0 7px 22px rgba(0, 0, 0, .22);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sb-whatsapp-float:hover {
    transform: translateY(-5px) scale(1.05);
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(37, 211, 102, .4);
}

.sb-whatsapp-float > i {
    position: relative;
    z-index: 2;
    line-height: 1;
}

.sb-whatsapp-pulse {
    position: absolute;
    inset: -5px;
    border: 2px solid #25d366;
    border-radius: 50%;
    animation: sbWhatsappPulse 2s infinite;
    pointer-events: none;
}

@keyframes sbWhatsappPulse {
    0% {
        transform: scale(.9);
        opacity: .9;
    }
    100% {
        transform: scale(1.35);
        opacity: 0;
    }
}

/* Hover tooltip */
.sb-whatsapp-tooltip {
    position: absolute;
    right: 75px;
    padding: 10px 15px;
    border-radius: 7px;
    background: #142f49;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateX(8px);
    transition: all .25s ease;
}

.sb-whatsapp-float:hover .sb-whatsapp-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

/* Mobile */
@media (max-width: 767px) {
    .sb-whatsapp-float {
        right: 16px;
        bottom: 18px;
        width: 55px;
        height: 55px;
        font-size: 30px;
    }

    .sb-whatsapp-tooltip {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sb-whatsapp-pulse {
        animation: none;
    }

    .sb-whatsapp-float,
    .sb-whatsapp-tooltip {
        transition: none;
    }
}













/* <!-- Shreebalaji Roadlines Packers & Movers Enquiry Popup --> */






.moving-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 12px;
    background: rgba(10, 20, 35, 0.72);
    backdrop-filter: blur(5px);
}
.moving-modal.show {
    display: flex;
}
.moving-modal-box {
    position: relative;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
    padding: 22px 25px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0,0,0,.25);
    animation: movingPopupIn .3s ease;
}
@keyframes movingPopupIn {
    from { opacity: 0; transform: translateY(16px) scale(.98); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}
.moving-modal-close {
    position: absolute;
    top: 10px;
    right: 12px;
    z-index: 5;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 50%;
    background: #f1f3f5;
    color: #17243a;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}
.moving-modal-header {
    margin-bottom: 14px;
    padding-right: 22px;
}
.moving-modal-tag {
    display: inline-block;
    margin-bottom: 7px;
    color: #c47a16;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}
.moving-modal-header h2 {
    margin: 0 0 5px;
    color: #17243a;
    font-size: 25px;
    line-height: 1.2;
    font-weight: 800;
}
.moving-modal-header p {
    margin: 0;
    color: #687386;
    font-size: 13px;
    line-height: 1.45;
}
.moving-modal-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
}
.moving-field { min-width: 0; }
.moving-field label {
    display: block;
    margin-bottom: 5px;
    color: #263247;
    font-size: 12px;
    font-weight: 700;
}
.moving-field input,
.moving-field textarea {
    box-sizing: border-box;
    display: block;
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #dce2ea;
    border-radius: 8px;
    outline: none;
    background: #fafbfd;
    color: #17243a;
    font: inherit;
    font-size: 13px;
    transition: border-color .2s, box-shadow .2s;
}
.moving-field input { height: 42px; }
.moving-field textarea {
    min-height: 65px;
    height: 65px;
    resize: vertical;
}
.moving-field input:focus,
.moving-field textarea:focus {
    border-color: #c47a16;
    box-shadow: 0 0 0 3px rgba(196,122,22,.12);
}
.moving-modal-form .moving-field:nth-child(5),
.moving-modal-form .moving-submit-btn,
.moving-modal-form .moving-modal-note {
    grid-column: 1 / -1;
}
.moving-submit-btn {
    width: 100%;
    padding: 12px 16px;
    border: 0;
    border-radius: 9px;
    background: #c47a16;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition: background .2s;
}
.moving-submit-btn:hover { background: #a7630c; }
.moving-submit-btn span { margin-left: 8px; }
.moving-modal-note {
    margin: -3px 0 0;
    color: #7b8493;
    font-size: 11px;
    text-align: center;
}
@media (max-width: 480px) {
    .moving-modal { padding: 12px; }
    .moving-modal-box {
        max-height: 92vh;
        padding: 20px 16px;
        border-radius: 14px;
    }
    .moving-modal-header h2 { font-size: 23px; }
    .moving-modal-form {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .moving-modal-form .moving-field,
    .moving-modal-form .moving-submit-btn,
    .moving-modal-form .moving-modal-note {
        grid-column: 1 / -1;
    }
}