@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Inter:wght@400;500;600;700&display=swap');
@import url('variables.css');
/* CSS Reset */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    padding:0;
    font-family:var(--font-body);
    background:#000;
    color:var(--gray-700);
    line-height:1.6;
    overflow-x:hidden;
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


a {
    text-decoration: none;
    color: inherit;
}

img {
    max-width: 100%;
    display: block;
}

.container {
    width: min(100% - 32px, var(--container));
    margin: 0 auto;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    border-radius: var(--radius-sm);
    font-weight: 600;
    transition: var(--transition);
}

.btn-gold {
    background: var(--gold);
    color: var(--white);
}

.btn-gold:hover {
    background: var(--gold-dark);
    transform: translateY(-2px);
}

.btn-outline {
    border: 1px solid var(--white);
    color: var(--white);
}

.btn-outline:hover {
    background: var(--white);
    color: var(--navy);
}

.section {
    padding: 100px 0;
}

.section-title {
    text-align: center;
    margin-bottom: 60px;
}

.section-title h2 {
    font-family: var(--font-display);
    font-size: 42px;
    color: var(--navy);
    margin-bottom: 15px;
}

.section-title p {
    max-width: 650px;
    margin: 0 auto;
    color: var(--gray-500);
}

/* ==========================================
   HERO SECTION
========================================== */

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    background:url("../images/hero/hero-bg.jpg") center center/cover no-repeat;
    overflow:hidden;
    margin-top:0;
    padding-top:100px;
}

.hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(0,0,0,.80) 0%,
        rgba(0,0,0,.55) 45%,
        rgba(0,0,0,.75) 100%
    );
}

.hero-container{
    position:relative;
    z-index:10;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:60px;
    align-items:center;
    padding:120px 0 80px;
}

.hero-content{
    color:#fff;
}

.hero-tag{
    display:inline-block;
    padding:10px 22px;
    margin-bottom:25px;
    border-radius:50px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(10px);
    color:#d4af37;
    font-size:14px;
    font-weight:600;
    letter-spacing:.5px;
}

.hero h1{
    font-size:62px;
    line-height:1.1;
    margin-bottom:25px;
    font-weight:700;
    max-width:700px;
}

.hero p{
    font-size:18px;
    line-height:1.8;
    color:#ddd;
    max-width:650px;
    margin-bottom:40px;
}

.hero-buttons{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.btn{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    padding:16px 36px;
    border-radius:8px;
    text-decoration:none;
    font-weight:600;
    transition:.35s;
    cursor:pointer;
}

.btn-primary{
    background:#d4af37;
    color:#111;
}

.btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(212,175,55,.35);
}

.btn-secondary{
    border:2px solid #fff;
    color:#fff;
}

.btn-secondary:hover{
    background:#fff;
    color:#111;
}

.booking-card{
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.20);
    border-radius:22px;
    padding:40px;
    color:#fff;
    box-shadow:0 30px 60px rgba(0,0,0,.35);
}

.booking-card h2{
    margin-bottom:30px;
    font-size:30px;
}

.form-group{
    margin-bottom:20px;
}

.form-group label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    color:#ddd;
}

.form-group input,
.form-group select{
    width:100%;
    height:54px;
    padding:0 18px;
    border:none;
    outline:none;
    border-radius:10px;
    background:#fff;
    font-size:15px;
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.full-btn{
    width:100%;
    margin-top:10px;
    border:none;
    font-size:16px;
}


.site-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:90px;
    z-index:9999;
    background:rgba(0,0,0,.45);
    backdrop-filter:blur(12px);
    transition:.3s;
    display:flex;
    align-items:center;
    padding:0;
}

.site-header.scrolled {
    background: rgba(11,18,32,0.96);
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow-sm);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.logo img {
    height: 50px;
}

.nav-links {
    display: flex;
    gap: 30px;
    color: var(--white);
    font-weight: 500;
}

/* HEADER */

.site-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:90px;
    display:flex;
    align-items:center;
    z-index:9999;
    background:rgba(0,0,0,.45);
    backdrop-filter:blur(14px);
}

.header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    height:90px;
}

.logo img{
    height:55px;
}

.nav-links{
    display:flex;
    gap:35px;
}

.nav-links a{
    color:#fff;
    font-weight:600;
    transition:.3s;
}

.nav-links a:hover{
    color:#d4af37;
}

/*=========================================
        FLEET SECTION
=========================================*/

.fleet-section{
    padding:120px 0;
    background:#f7f7f7;
}

.section-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:60px;
}

.section-subtitle{
    display:inline-block;
    color:#c89b2b;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:10px;
}

.section-header h2{
    font-size:48px;
    color:#111;
    margin-bottom:15px;
}

.section-header p{
    color:#666;
    max-width:650px;
}

.fleet-controls{
    display:flex;
    gap:15px;
}

.fleet-controls button{
    width:55px;
    height:55px;
    border-radius:50%;
    border:none;
    background:#fff;
    cursor:pointer;
    font-size:22px;
    transition:.35s;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.fleet-controls button:hover{
    background:#c89b2b;
    color:#fff;
}

.fleet-slider{
    display:flex;
    gap:30px;
    overflow-x:auto;
    scroll-behavior:smooth;
    scrollbar-width:none;
}

.fleet-slider::-webkit-scrollbar{
    display:none;
}

.fleet-card{
    min-width:340px;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.35s;
    flex-shrink:0;
}

.fleet-card:hover{
    transform:translateY(-10px);
    box-shadow:0 30px 60px rgba(0,0,0,.15);
}

.fleet-image{
    background:#fafafa;
    padding:35px;
    display:flex;
    justify-content:center;
    align-items:center;
    height:230px;
}

.fleet-image img{
    max-width:100%;
    max-height:170px;
    transition:.4s;
}

.fleet-card:hover .fleet-image img{
    transform:scale(1.08);
}

.fleet-content{
    padding:28px;
}

.fleet-content h3{
    font-size:26px;
    margin-bottom:8px;
    color:#111;
}

.fleet-content p{
    color:#666;
    margin-bottom:20px;
}

.fleet-info{
    display:flex;
    justify-content:space-between;
    margin-bottom:25px;
    color:#555;
    font-size:15px;
}

.fleet-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-top:1px solid #eee;
    padding-top:22px;
}

.fleet-bottom small{
    color:#888;
}

.fleet-bottom h4{
    font-size:28px;
    color:#111;
    margin-top:5px;
}

.fleet-bottom .btn{
    padding:12px 22px;
    background:#c89b2b;
    color:#fff;
    border-radius:8px;
    font-size:15px;
    font-weight:600;
}

.fleet-bottom .btn:hover{
    background:#111;
}

@media(max-width:991px){

.section-header{
flex-direction:column;
align-items:flex-start;
gap:25px;
}

.section-header h2{
font-size:38px;
}

.fleet-card{
min-width:300px;
}

}

@media(max-width:768px){

.fleet-section{
padding:80px 0;
}

.section-header h2{
font-size:32px;
}

.fleet-card{
min-width:280px;
}

}

/* ===========================
ABOUT COMPANY
=========================== */

.about-company{
    background:#ffffff;
    padding:110px 0;
}

.about-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:70px;
    align-items:center;
}

.section-tag{
    display:inline-block;
    color:#c89b2b;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
    margin-bottom:18px;
    font-size:14px;
}

.about-content h2{
    font-size:54px;
    line-height:1.15;
    color:#0f172a;
    margin-bottom:28px;
    font-weight:800;
}

.about-content h2 span{
    color:#c89b2b;
}

.about-content p{
    font-size:18px;
    color:#5b6473;
    margin-bottom:28px;
    line-height:1.9;
}

.coverage-card{
    background:#fff;
    border:1px solid #ececec;
    border-radius:22px;
    padding:40px;
    box-shadow:0 15px 45px rgba(0,0,0,.08);
}

.coverage-card h3{
    font-size:34px;
    margin-bottom:30px;
    color:#111827;
}

.coverage-group{
    margin-bottom:30px;
}

.coverage-group h4{
    margin-bottom:15px;
    font-size:16px;
    text-transform:uppercase;
    color:#666;
    letter-spacing:1px;
}

.coverage-tags{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.coverage-tags span{
    padding:10px 18px;
    border:1px solid #ddd;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
    cursor:pointer;
    background:#fff;
}

.coverage-tags span:hover{
    background:#c89b2b;
    color:#fff;
    border-color:#c89b2b;
}

.coverage-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:40px;
}

.stat-box{
    background:#fafafa;
    border-radius:18px;
    padding:28px 15px;
    text-align:center;
}

.stat-box strong{
    display:block;
    font-size:38px;
    color:#c89b2b;
    margin-bottom:10px;
}

.stat-box span{
    font-size:15px;
    color:#555;
    font-weight:600;
}

@media(max-width:991px){

.about-grid{
grid-template-columns:1fr;
}

.about-content h2{
font-size:40px;
}

.coverage-stats{
grid-template-columns:1fr;
}

}

/*=========================
WHY CHOOSE
=========================*/

.why-choose{
    padding:110px 0;
    background:#fafafa;
}

.why-choose .section-title{
    text-align:center;
    margin-bottom:70px;
}

.why-choose .section-title h2{
    font-size:52px;
    color:#111827;
    margin:20px 0;
    font-weight:800;
}

.why-choose .section-title h2 span{
    color:#c89b2b;
}

.why-choose .section-title p{
    max-width:700px;
    margin:auto;
    font-size:19px;
    color:#666;
}

.why-grid{

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;

}

.why-card{

    background:#fff;
    border-radius:22px;
    padding:50px 35px;
    text-align:center;
    transition:.35s;
    box-shadow:0 10px 35px rgba(0,0,0,.05);

}

.why-card:hover{

    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.why-icon{

    width:95px;
    height:95px;
    margin:auto;
    margin-bottom:30px;

    background:linear-gradient(180deg,#fff,#f7f1e1);

    border-radius:25px;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:42px;

}

.why-card h3{

    font-size:30px;
    margin-bottom:18px;
    color:#111827;

}

.why-card p{

    font-size:17px;
    line-height:1.8;
    color:#666;

}

@media(max-width:1200px){

.why-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.why-grid{

grid-template-columns:1fr;

}

.why-choose .section-title h2{

font-size:38px;

}

}

/*==============================
SERVICES
==============================*/

.services{
    background:#fafafa;
}

.section-heading{
    text-align:center;
    max-width:760px;
    margin:0 auto 70px;
}

.section-heading span{
    display:inline-block;
    color:#c79b2c;
    font-weight:700;
    letter-spacing:3px;
    margin-bottom:15px;
}

.section-heading h2{
    font-size:48px;
    color:#111;
    margin-bottom:20px;
}

.section-heading p{
    font-size:18px;
    color:#666;
    line-height:1.8;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.service-card{
    background:#fff;
    padding:40px;
    border-radius:20px;
    transition:.35s;
    box-shadow:0 10px 35px rgba(0,0,0,.05);
}

.service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.service-icon{
    width:75px;
    height:75px;
    border-radius:18px;
    background:#f7f1df;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
    margin-bottom:30px;
}

.service-card h3{
    font-size:28px;
    margin-bottom:15px;
    color:#111;
}

.service-card p{
    color:#666;
    line-height:1.8;
    margin-bottom:25px;
}

.service-card a{
    color:#c79b2c;
    font-weight:700;
    transition:.3s;
}

.service-card a:hover{
    letter-spacing:1px;
}

@media(max-width:991px){

.services-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.services-grid{
grid-template-columns:1fr;
}

.section-heading h2{
font-size:38px;
}

}
/* =========================================
   HOW IT WORKS
========================================= */

.how-it-works {
    padding: 120px 0;
    background:
        radial-gradient(
            circle at 50% 20%,
            rgba(119, 83, 114, 0.12),
            transparent 38%
        ),
        #221c22;
    color: #ffffff;
}

.how-heading {
    max-width: 760px;
    margin: 0 auto 70px;
    text-align: center;
}

.how-heading h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(42px, 5vw, 62px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -1.5px;
}

.how-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.56);
    font-size: 20px;
    line-height: 1.6;
}

.how-divider {
    display: block;
    width: 74px;
    height: 3px;
    margin: 28px auto 0;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        transparent,
        #bd8600,
        transparent
    );
}

.how-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
    align-items: start;
}

.how-step {
    text-align: center;
}

.how-icon {
    width: 112px;
    height: 112px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 28px;
    border-radius: 50%;
    background: #dfa000;
    border: 10px solid rgba(223, 160, 0, 0.13);
    box-shadow:
        0 0 0 1px rgba(223, 160, 0, 0.18),
        0 12px 28px rgba(0, 0, 0, 0.25);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.how-step:hover .how-icon {
    transform: translateY(-7px);
    box-shadow:
        0 0 0 1px rgba(223, 160, 0, 0.26),
        0 18px 36px rgba(0, 0, 0, 0.34);
}

.how-icon span {
    color: #241e24;
    font-size: 38px;
    font-weight: 800;
    line-height: 1;
}

.how-step h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.25;
}

.how-step p {
    max-width: 410px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.58);
    font-size: 17px;
    line-height: 1.75;
}

@media (max-width: 991px) {
    .how-steps {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .how-step p {
        max-width: 540px;
    }
}

@media (max-width: 600px) {
    .how-it-works {
        padding: 85px 0;
    }

    .how-heading {
        margin-bottom: 55px;
    }

    .how-heading p {
        font-size: 17px;
    }

    .how-icon {
        width: 96px;
        height: 96px;
    }

    .how-icon span {
        font-size: 32px;
    }
}
/* =========================================
   CTA STRIP
========================================= */

.cta-strip {
    position: relative;
    padding: 88px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 82% 20%,
            rgba(139, 104, 140, 0.18),
            transparent 42%
        ),
        linear-gradient(
            115deg,
            #171217 0%,
            #211921 48%,
            #2b2230 100%
        );
}

.cta-strip::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.015),
            transparent 40%,
            rgba(255, 255, 255, 0.025)
        );
    pointer-events: none;
}

.cta-strip-content {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
}

.cta-strip h2 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: var(--font-body);
    font-size: clamp(36px, 4vw, 54px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1.5px;
}

.cta-strip h2 span {
    color: #bd8600;
}

.cta-strip p {
    max-width: 760px;
    margin: 0 auto 38px;
    color: rgba(255, 255, 255, 0.63);
    font-size: 18px;
    line-height: 1.7;
}

.cta-strip-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.cta-rate-btn,
.cta-call-btn {
    min-width: 280px;
    min-height: 70px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    font-size: 17px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.cta-rate-btn {
    background: #bd8600;
    color: #ffffff;
    border: 2px solid #bd8600;
    box-shadow: 0 12px 28px rgba(189, 134, 0, 0.2);
}

.cta-rate-btn:hover {
    transform: translateY(-3px);
    background: #d09a16;
    border-color: #d09a16;
    box-shadow: 0 18px 34px rgba(189, 134, 0, 0.3);
}

.cta-call-btn {
    gap: 10px;
    color: #ffffff;
    border: 3px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.015);
}

.cta-call-btn:hover {
    transform: translateY(-3px);
    border-color: #bd8600;
    background: rgba(189, 134, 0, 0.08);
}

.cta-phone-icon {
    font-size: 22px;
    line-height: 1;
}

@media (max-width: 768px) {
    .cta-strip {
        padding: 68px 0;
    }

    .cta-strip h2 {
        font-size: 38px;
    }

    .cta-strip p {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .cta-strip-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .cta-rate-btn,
    .cta-call-btn {
        width: 100%;
        min-width: 0;
        min-height: 62px;
    }
}

/* =========================================
   COMPACT FAQ SECTION
========================================= */

.faq-section {
    padding: 80px 0;
    background: #ffffff;
}

.faq-heading {
    max-width: 760px;
    margin: 0 auto 48px;
    text-align: center;
}

.faq-heading h2 {
    margin: 0 0 12px;
    color: #211c23;
    font-size: clamp(34px, 4vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1px;
}

.faq-heading h2 span {
    color: #a97700;
}

.faq-heading p {
    margin: 0;
    color: #747985;
    font-size: 17px;
    line-height: 1.55;
}

.faq-divider {
    display: block;
    width: 64px;
    height: 3px;
    margin: 20px auto 0;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        #a97700,
        rgba(169, 119, 0, 0.08)
    );
}

.faq-list {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    gap: 10px;
}

.faq-item {
    overflow: hidden;
    border: 1px solid #e6e1dc;
    border-radius: 9px;
    background: #ffffff;
}

.faq-item summary {
    position: relative;
    min-height: 74px;
    padding: 20px 72px 20px 24px;
    display: flex;
    align-items: center;
    color: #171219;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    cursor: pointer;
    list-style: none;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-icon {
    position: absolute;
    top: 50%;
    right: 22px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #faf9f7;
    transform: translateY(-50%);
}

.faq-icon::before,
.faq-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #777b84;
    transform: translate(-50%, -50%);
}

.faq-icon::before {
    width: 14px;
    height: 2px;
}

.faq-icon::after {
    width: 2px;
    height: 14px;
}

.faq-item[open] .faq-icon {
    background: #a97700;
}

.faq-item[open] .faq-icon::before,
.faq-item[open] .faq-icon::after {
    background: #ffffff;
}

.faq-item[open] .faq-icon::after {
    opacity: 0;
}

.faq-answer {
    padding: 18px 72px 22px 24px;
    color: #626875;
    font-size: 15.5px;
    line-height: 1.7;
    border-top: 1px solid #f0ece8;
}

@media (max-width: 768px) {
    .faq-section {
        padding: 65px 0;
    }

    .faq-heading {
        margin-bottom: 38px;
    }

    .faq-heading h2 {
        font-size: 34px;
    }

    .faq-heading p {
        font-size: 15.5px;
    }

    .faq-item summary {
        min-height: 68px;
        padding: 18px 62px 18px 18px;
        font-size: 16px;
    }

    .faq-icon {
        right: 15px;
        width: 34px;
        height: 34px;
    }

    .faq-answer {
        padding: 16px 18px 20px;
        font-size: 15px;
    }
}

/* =========================================
   FOOTER
========================================= */

.site-footer {
    background: #171318;
    color: #a9a5ad;
    padding-top: 78px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.35fr 1fr 1fr 1fr;
    gap: 70px;
    padding-bottom: 65px;
}

.footer-column h3 {
    margin: 0;
    color: #ffffff;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.3;
}

.footer-line {
    display: block;
    width: 42px;
    height: 3px;
    margin: 14px 0 28px;
    background: #b98300;
    border-radius: 999px;
}

.footer-brand p {
    max-width: 470px;
    margin: 0;
    font-size: 16px;
    line-height: 1.9;
    color: #aaa5ad;
}

.footer-socials {
    display: flex;
    gap: 12px;
    margin-top: 30px;
}

.footer-socials a {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #252126;
    color: #a8a4aa;
    font-size: 19px;
    font-weight: 800;
    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;
}

.footer-socials a:hover {
    color: #ffffff;
    background: #b98300;
    transform: translateY(-3px);
}

.footer-column ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-column li {
    margin-bottom: 15px;
}

.footer-column li:last-child {
    margin-bottom: 0;
}

.footer-column li a {
    color: #a9a5ad;
    font-size: 16px;
    line-height: 1.45;
    transition:
        color 0.2s ease,
        padding-left 0.2s ease;
}

.footer-column li a:hover {
    color: #ffffff;
    padding-left: 4px;
}

.footer-column li a.footer-gold-link {
    color: #b98300;
}

.footer-phone {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 30px;
}

.footer-phone-icon {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #272025;
    color: #c18b00;
    font-size: 21px;
}

.footer-phone div:last-child {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.footer-phone a {
    color: #b5b0b8;
    font-size: 16px;
}

.footer-phone span {
    color: #8c8790;
    font-size: 14px;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    background: #141015;
}

.footer-bottom-inner {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}

.footer-bottom p {
    margin: 0;
    color: #8f8a93;
    font-size: 14px;
}

.footer-legal {
    display: flex;
    gap: 24px;
}

.footer-legal a {
    color: #8f8a93;
    font-size: 14px;
}

.footer-legal a:hover {
    color: #b98300;
}

@media (max-width: 1100px) {
    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 55px;
    }
}

@media (max-width: 680px) {
    .site-footer {
        padding-top: 60px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 48px;
        padding-bottom: 50px;
    }

    .footer-bottom-inner {
        padding: 22px 0;
        flex-direction: column;
        text-align: center;
    }

    .footer-legal {
        flex-wrap: wrap;
        justify-content: center;
        gap: 14px 20px;
    }
}

/* =========================================================
   SKY1 WORLDWIDE BOOKING PAGE
========================================================= */

.booking-page {
    min-height: 100vh;
    background: #f7f7f7;
    color: #211d22;
}

/* =========================================================
   BOOKING HERO
========================================================= */

.booking-hero {
    position: relative;
    padding: 155px 0 75px;
    overflow: hidden;
    text-align: center;
    color: #ffffff;
    background:
        linear-gradient(
            110deg,
            rgba(13, 11, 14, 0.96),
            rgba(37, 28, 37, 0.91)
        ),
        url("../images/hero/hero-bg.jpg") center center / cover no-repeat;
}

.booking-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            circle at 75% 20%,
            rgba(185, 131, 0, 0.14),
            transparent 38%
        );
    pointer-events: none;
}

.booking-hero .container {
    position: relative;
    z-index: 2;
}

.booking-hero span {
    display: inline-block;
    margin-bottom: 14px;
    color: #c69422;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.booking-hero h1 {
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(42px, 5vw, 62px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.5px;
}

.booking-hero p {
    max-width: 720px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.68);
    font-size: 18px;
    line-height: 1.7;
}

/* =========================================================
   BOOKING FORM CONTAINER
========================================================= */

.booking-section {
    padding: 75px 0 110px;
}

.booking-form {
    max-width: 1320px;
    margin: 0 auto;
}

.booking-step {
    display: none;
    animation: bookingFade 0.35s ease;
}

.booking-step.active {
    display: block;
}

@keyframes bookingFade {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================================
   STEP HEADING
========================================================= */

.step-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 20px;
    margin-bottom: 36px;
    border-left: 4px solid #b98300;
    background: #e8e8e8;
    color: #9b6612;
    font-size: 17px;
    line-height: 1.3;
}

.step-heading strong {
    font-weight: 800;
}

.step-circle {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    border: 2px solid #b98300;
    border-radius: 50%;
    background: transparent;
}

/* =========================================================
   STEP 1 LAYOUT
========================================================= */

.booking-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 52px;
    align-items: start;
}

.booking-fields {
    display: grid;
    gap: 23px;
}

.form-row,
.counter-row,
.final-details-grid,
.billing-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.form-group.full-width {
    grid-column: 1 / -1;
}

.form-group label,
.counter-group label {
    color: #272228;
    font-size: 15.5px;
    font-weight: 750;
    line-height: 1.4;
}

.required-mark {
    color: #b94a35;
}

/* =========================================================
   INPUTS
========================================================= */

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    border: 1px solid #cfcfcf;
    border-radius: 5px;
    outline: none;
    background: #ffffff;
    color: #29242a;
    font-family: inherit;
    font-size: 15.5px;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.form-group input,
.form-group select {
    min-height: 53px;
    padding: 0 15px;
}

.form-group textarea {
    min-height: 130px;
    padding: 15px;
    resize: vertical;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #a0a0a0;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: #b98300;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.11);
}

.form-group input:invalid:not(:placeholder-shown) {
    border-color: #c65b48;
}

/* =========================================================
   ADD STOP AND CHILD SEAT
========================================================= */

.add-option-btn {
    width: fit-content;
    padding: 4px 0;
    border: 0;
    background: transparent;
    color: #ae741b;
    font-family: inherit;
    font-size: 15px;
    font-weight: 650;
    cursor: pointer;
    transition: color 0.2s ease;
}

.add-option-btn:hover {
    color: #7e4e06;
}

.add-option-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

#extraStops,
#childSeatArea {
    display: grid;
    gap: 18px;
}

/* =========================================================
   COUNTERS
========================================================= */

.counter-group {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.counter-control {
    display: grid;
    grid-template-columns: 52px 1fr 52px;
    overflow: hidden;
    border: 1px solid #cecece;
    border-radius: 5px;
    background: #ffffff;
}

.counter-control button,
.counter-control input {
    min-width: 0;
    height: 52px;
    border: 0;
    outline: 0;
    background: #ffffff;
    color: #29242a;
    text-align: center;
    font-family: inherit;
    font-size: 19px;
}

.counter-control button {
    cursor: pointer;
    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.counter-control button:first-child {
    border-right: 1px solid #d8d8d8;
}

.counter-control button:last-child {
    border-left: 1px solid #d8d8d8;
}

.counter-control button:hover {
    background: #b98300;
    color: #ffffff;
}

.counter-control input {
    appearance: textfield;
}

.counter-control input::-webkit-inner-spin-button,
.counter-control input::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
}

/* =========================================================
   ACCESSIBILITY SWITCH
========================================================= */

.switch-row {
    display: flex;
    align-items: center;
    gap: 13px;
    width: fit-content;
    color: #29242a;
    font-size: 15.5px;
    font-weight: 650;
    cursor: pointer;
}

.switch-row input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.switch-slider {
    position: relative;
    width: 54px;
    height: 29px;
    flex-shrink: 0;
    border-radius: 999px;
    background: #b8b8b8;
    transition: background 0.25s ease;
}

.switch-slider::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.18);
    transition: transform 0.25s ease;
}

.switch-row input:checked + .switch-slider {
    background: #b98300;
}

.switch-row input:checked + .switch-slider::before {
    transform: translateX(25px);
}

/* =========================================================
   MAP PLACEHOLDER
========================================================= */

.booking-map {
    min-height: 540px;
}

/* =========================================
   TEST ROUTE MAP
========================================= */

.booking-map {
    position: relative;
}

.route-map {
    width: 100%;
    min-height: 540px;
    border: 1px solid #c9c9c9;
    border-radius: 8px;
    background: #e7edf4;
    z-index: 1;
}

.preview-route-btn {
    width: 100%;
    min-height: 52px;
    margin-top: 14px;
    padding: 12px 20px;
    border: 0;
    border-radius: 6px;
    background: #b98336;
    color: #ffffff;
    font-family: inherit;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
    transition:
        background 0.25s ease,
        transform 0.25s ease;
}

.preview-route-btn:hover {
    background: #96651f;
    transform: translateY(-2px);
}

.preview-route-btn:disabled {
    opacity: 0.65;
    cursor: wait;
    transform: none;
}

.map-message {
    margin-top: 12px;
    padding: 13px 16px;
    border: 1px solid #e3d4bb;
    border-radius: 7px;
    background: #fffaf1;
    color: #66616a;
    font-size: 14px;
    line-height: 1.55;
}

.map-message.success {
    border-color: #b9d6b7;
    background: #f4fff3;
    color: #426640;
}

.map-message.error {
    border-color: #e4aaa2;
    background: #fff3f1;
    color: #a13d31;
}

.route-summary {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.route-summary > div {
    padding: 16px;
    border: 1px solid #e1d6c3;
    border-radius: 8px;
    background: #ffffff;
}

.route-summary span {
    display: block;
    margin-bottom: 5px;
    color: #77727b;
    font-size: 13px;
}

.route-summary strong {
    color: #211d22;
    font-size: 18px;
}

.leaflet-container {
    font-family: inherit;
}

@media (max-width: 780px) {
    .route-map {
        min-height: 400px;
    }
}

@media (max-width: 520px) {
    .route-map {
        min-height: 330px;
    }

    .route-summary {
        grid-template-columns: 1fr;
    }
}

.map-placeholder span {
    color: #a96f12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
}

.map-placeholder h3 {
    margin: 12px 0 10px;
    color: #272228;
    font-size: 27px;
    line-height: 1.25;
}

.map-placeholder p {
    max-width: 430px;
    margin: 0;
    color: #68717c;
    font-size: 15px;
    line-height: 1.7;
}

/* =========================================================
   STEP BUTTONS
========================================================= */

.step-actions {
    margin-top: 45px;
}

.step-actions.two-buttons {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.booking-next,
.booking-back,
.booking-submit {
    min-width: 260px;
    min-height: 54px;
    padding: 12px 26px;
    border: 0;
    border-radius: 5px;
    font-family: inherit;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.booking-next,
.booking-submit {
    background: #b98336;
    color: #ffffff;
    box-shadow: 0 10px 25px rgba(185, 131, 54, 0.18);
}

.booking-next:hover,
.booking-submit:hover {
    transform: translateY(-2px);
    background: #9f6d25;
    box-shadow: 0 14px 30px rgba(185, 131, 54, 0.25);
}

.booking-back {
    background: #29242a;
    color: #ffffff;
}

.booking-back:hover {
    transform: translateY(-2px);
    background: #100d11;
}

/* =========================================================
   VEHICLE SELECTION
========================================================= */

.vehicle-selection {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.vehicle-option {
    display: block;
    height: 100%;
}

.vehicle-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.vehicle-option-card {
    position: relative;
    height: 100%;
    min-height: 330px;
    display: flex;
    flex-direction: column;
    padding: 22px;
    border: 2px solid transparent;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(27, 21, 28, 0.07);
    cursor: pointer;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.vehicle-option-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 42px rgba(27, 21, 28, 0.12);
}

.vehicle-option-card img {
    width: 100%;
    height: 190px;
    margin-bottom: 20px;
    object-fit: contain;
}

.vehicle-option-card strong {
    color: #211d22;
    font-size: 19px;
    line-height: 1.35;
}

.vehicle-option-card small {
    display: block;
    margin-top: 7px;
    color: #74717a;
    font-size: 14px;
    line-height: 1.45;
}

.vehicle-option input:checked + .vehicle-option-card {
    border-color: #b98300;
    transform: translateY(-5px);
    box-shadow:
        0 0 0 3px rgba(185, 131, 0, 0.1),
        0 18px 42px rgba(27, 21, 28, 0.12);
}

.vehicle-option input:checked + .vehicle-option-card::after {
    content: "Selected";
    position: absolute;
    top: 15px;
    right: 15px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #b98300;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
}

/* =========================================================
   FINAL DETAILS
========================================================= */

.final-details-grid {
    margin-bottom: 15px;
}

/* =========================================================
   BILLING INFORMATION
========================================================= */

.billing-section {
    margin-top: 50px;
    padding-top: 40px;
    border-top: 1px solid #dfd8d0;
}

.billing-heading {
    margin-bottom: 30px;
}

.billing-heading h3 {
    margin: 0 0 11px;
    color: #211d22;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.25;
}

.billing-heading p {
    max-width: 980px;
    margin: 0;
    color: #737783;
    font-size: 15.5px;
    line-height: 1.7;
}

.billing-grid .form-group input,
.billing-grid .form-group select {
    min-height: 58px;
    border-color: #d8c8a8;
    border-radius: 8px;
    background: #fffdf8;
    font-size: 16px;
}

.billing-grid .form-group input:focus,
.billing-grid .form-group select:focus {
    border-color: #b98300;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.11);
}

/* =========================================================
   SECURE PAYMENT PLACEHOLDER
========================================================= */

.secure-payment-box {
    margin-top: 34px;
}

.security-notice {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 18px 22px;
    margin-bottom: 22px;
    border: 1px solid #e6d5b6;
    border-radius: 9px;
    background: #fffaf2;
}

.security-icon {
    flex-shrink: 0;
    font-size: 21px;
    line-height: 1.3;
}

.security-notice p {
    margin: 0;
    color: #525966;
    font-size: 14.5px;
    line-height: 1.65;
}

.secure-payment-placeholder {
    min-height: 190px;
    display: grid;
    place-content: center;
    padding: 35px;
    border: 2px dashed #dac8a8;
    border-radius: 10px;
    background: #ffffff;
    text-align: center;
}

.secure-payment-placeholder span {
    color: #aa7117;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.secure-payment-placeholder h4 {
    margin: 10px 0;
    color: #241f25;
    font-size: 22px;
}

.secure-payment-placeholder p {
    max-width: 580px;
    margin: 0 auto;
    color: #737783;
    font-size: 14.5px;
    line-height: 1.65;
}

/* =========================================================
   SIGNATURE AND AUTHORIZATION
========================================================= */

.reservation-authorization {
    margin-top: 45px;
}

.signature-section {
    margin-bottom: 35px;
}

.signature-label {
    display: block;
    margin-bottom: 14px;
    color: #17131a;
    font-size: 18px;
    font-weight: 750;
}

.signature-wrapper {
    width: 100%;
    height: 270px;
    overflow: hidden;
    border: 2px dashed #d9c8a8;
    border-radius: 9px;
    background: #ffffff;
    cursor: crosshair;
    touch-action: none;
}

.signature-canvas {
    width: 100%;
    height: 100%;
    display: block;
}

.signature-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 17px;
}

.clear-signature-btn {
    min-width: 180px;
    min-height: 50px;
    padding: 10px 22px;
    border: 2px solid #d8c8aa;
    border-radius: 999px;
    background: #ffffff;
    color: #17131a;
    font-family: inherit;
    font-size: 15px;
    font-weight: 750;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        color 0.2s ease,
        background 0.2s ease;
}

.clear-signature-btn:hover {
    border-color: #b98300;
    background: #fffaf1;
    color: #9f680f;
}

.signature-error {
    margin-top: 10px;
    color: #b33f31;
    font-size: 14px;
    font-weight: 700;
}

/* =========================================================
   TERMS
========================================================= */

.terms-box {
    padding: 25px 27px;
    margin-bottom: 27px;
    border: 1px solid #e7d8bd;
    border-radius: 9px;
    background: #fffaf1;
}

.terms-box p {
    margin: 0 0 18px;
    color: #4f5664;
    font-size: 15.5px;
    line-height: 1.8;
}

.terms-box a {
    color: #ae741b;
    font-size: 15px;
    font-weight: 800;
}

.terms-box a:hover {
    color: #794700;
}

.terms-consent {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    color: #17131a;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.55;
    cursor: pointer;
}

.terms-consent input {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-top: 1px;
    accent-color: #b98300;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
    .booking-layout {
        grid-template-columns: 1fr;
    }

    .booking-map,
    .map-placeholder {
        min-height: 440px;
    }

    .vehicle-selection {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 780px) {
    .booking-hero {
        padding: 135px 0 65px;
    }

    .booking-section {
        padding: 55px 0 80px;
    }

    .form-row,
    .counter-row,
    .final-details-grid,
    .billing-grid {
        grid-template-columns: 1fr;
    }

    .form-group.full-width {
        grid-column: auto;
    }

    .step-actions.two-buttons {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .booking-next,
    .booking-back,
    .booking-submit {
        width: 100%;
        min-width: 0;
    }

    .signature-wrapper {
        height: 220px;
    }
}

@media (max-width: 620px) {
    .booking-hero h1 {
        font-size: 38px;
    }

    .booking-hero p {
        font-size: 16px;
    }

    .step-heading {
        padding: 15px 16px;
        font-size: 15px;
    }

    .vehicle-selection {
        grid-template-columns: 1fr;
    }

    .vehicle-option-card {
        min-height: 300px;
    }

    .vehicle-option-card img {
        height: 170px;
    }

    .booking-map,
    .map-placeholder {
        min-height: 340px;
    }

    .map-placeholder {
        padding: 28px 20px;
    }

    .billing-heading h3 {
        font-size: 24px;
    }

    .security-notice {
        padding: 16px;
    }

    .terms-box {
        padding: 20px;
    }

    .terms-consent {
        font-size: 14.5px;
    }

    .clear-signature-btn {
        width: 100%;
    }
}

/* =========================================================
   FLEET PAGE
========================================================= */

.fleet-page {
    background: #f7f7f7;
}

.fleet-page-hero {
    position: relative;
    min-height: 540px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.fleet-page-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(8, 7, 9, 0.92) 0%,
            rgba(18, 14, 19, 0.78) 52%,
            rgba(8, 7, 9, 0.65) 100%
        );
}

.fleet-page-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 110px;
    padding-bottom: 70px;
    color: #ffffff;
}

.fleet-page-hero-content > span {
    display: inline-block;
    margin-bottom: 18px;
    color: #c6921d;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.fleet-page-hero h1 {
    max-width: 760px;
    margin: 0 0 20px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 72px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -2px;
}

.fleet-page-hero p {
    max-width: 720px;
    margin: 0 0 34px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.fleet-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.fleet-page-section {
    padding: 100px 0;
}

.fleet-page-heading {
    max-width: 760px;
    margin: 0 auto 50px;
    text-align: center;
}

.fleet-page-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b68016;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.fleet-page-heading h2 {
    margin: 0 0 16px;
    color: #201b21;
    font-size: clamp(38px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.15;
}

.fleet-page-heading p {
    margin: 0;
    color: #6d717c;
    font-size: 17px;
    line-height: 1.8;
}

.fleet-filter-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 48px;
}

.fleet-filter {
    min-height: 46px;
    padding: 10px 22px;
    border: 1px solid #ddd6cc;
    border-radius: 999px;
    background: #ffffff;
    color: #4d4850;
    font-family: inherit;
    font-size: 14px;
    font-weight: 750;
    cursor: pointer;
    transition:
        color 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease;
}

.fleet-filter:hover,
.fleet-filter.active {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.fleet-page-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.fleet-page-card {
    overflow: hidden;
    border: 1px solid #ece8e2;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(30, 23, 31, 0.07);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.fleet-page-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 52px rgba(30, 23, 31, 0.13);
}

.fleet-page-card.is-hidden {
    display: none;
}

.fleet-page-image {
    position: relative;
    height: 265px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 28px;
    background:
        linear-gradient(
            180deg,
            #fbfbfb,
            #f3f3f3
        );
}

.fleet-page-image img {
    width: 100%;
    height: 205px;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.fleet-page-card:hover .fleet-page-image img {
    transform: scale(1.07);
}

.vehicle-category {
    position: absolute;
    top: 18px;
    left: 18px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #211c22;
    color: #ffffff;
    font-size: 12px;
    font-weight: 750;
}

.fleet-page-content {
    padding: 28px;
}

.fleet-page-content h3 {
    margin: 0 0 13px;
    color: #1f1a20;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.3;
}

.fleet-page-description {
    min-height: 82px;
    margin: 0 0 24px;
    color: #686d77;
    font-size: 15px;
    line-height: 1.75;
}

.fleet-page-specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    padding: 19px 0;
    margin-bottom: 24px;
    border-top: 1px solid #eeeae5;
    border-bottom: 1px solid #eeeae5;
}

.fleet-page-specs > div {
    display: flex;
    align-items: center;
    gap: 11px;
}

.fleet-spec-icon {
    color: #b98300;
    font-size: 15px;
}

.fleet-page-specs small {
    display: block;
    margin-bottom: 3px;
    color: #8a858d;
    font-size: 12px;
}

.fleet-page-specs strong {
    color: #282329;
    font-size: 14px;
}

.fleet-page-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px;
}

.fleet-book-btn,
.fleet-details-btn {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 13px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.fleet-book-btn {
    border: 1px solid #b98300;
    background: #b98300;
    color: #ffffff;
}

.fleet-book-btn:hover {
    border-color: #946600;
    background: #946600;
}

.fleet-details-btn {
    border: 1px solid #d8d2ca;
    background: #ffffff;
    color: #272228;
}

.fleet-details-btn:hover {
    border-color: #272228;
    background: #272228;
    color: #ffffff;
}

.fleet-page-cta {
    padding: 80px 0;
    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(183, 128, 0, 0.12),
            transparent 38%
        ),
        #201a20;
}

.fleet-page-cta-inner {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 45px;
    align-items: center;
}

.fleet-page-cta span {
    display: inline-block;
    margin-bottom: 12px;
    color: #c6921d;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
}

.fleet-page-cta h2 {
    max-width: 750px;
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
}

.fleet-page-cta p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 16px;
    line-height: 1.75;
}

.fleet-page-cta-buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.fleet-page-cta-buttons .btn {
    min-width: 210px;
}

@media (max-width: 1100px) {
    .fleet-page-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fleet-page-cta-inner {
        grid-template-columns: 1fr;
    }

    .fleet-page-cta-buttons {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 700px) {
    .fleet-page-hero {
        min-height: 490px;
    }

    .fleet-page-section {
        padding: 75px 0;
    }

    .fleet-page-grid {
        grid-template-columns: 1fr;
    }

    .fleet-page-image {
        height: 240px;
    }

    .fleet-page-image img {
        height: 185px;
    }

    .fleet-page-description {
        min-height: 0;
    }

    .fleet-page-actions {
        grid-template-columns: 1fr;
    }

    .fleet-page-cta {
        padding: 65px 0;
    }

    .fleet-page-cta h2 {
        font-size: 31px;
    }

    .fleet-page-cta-buttons {
        flex-direction: column;
    }

    .fleet-page-cta-buttons .btn {
        width: 100%;
    }
}

/* =========================================================
   MAIN SERVICES PAGE
========================================================= */

.main-services-page {
    background: #ffffff;
}

/* HERO */

.services-page-hero {
    position: relative;
    min-height: 570px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.services-page-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(8, 7, 9, 0.94) 0%,
            rgba(20, 15, 21, 0.82) 55%,
            rgba(9, 7, 10, 0.65) 100%
        );
}

.services-page-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 115px;
    padding-bottom: 75px;
    color: #ffffff;
}

.services-page-eyebrow {
    display: inline-block;
    margin-bottom: 18px;
    color: #c6921d;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.services-page-hero h1 {
    max-width: 850px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 72px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
}

.services-page-hero p {
    max-width: 750px;
    margin: 0 0 34px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.services-page-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* INTRO */

.services-introduction {
    padding: 100px 0;
    background: #ffffff;
}

.services-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(330px, 0.8fr);
    gap: 70px;
    align-items: center;
}

.services-small-heading {
    display: inline-block;
    margin-bottom: 15px;
    color: #b68016;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.services-intro-content h2 {
    max-width: 780px;
    margin: 0 0 25px;
    color: #201b21;
    font-size: clamp(38px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
    letter-spacing: -1.2px;
}

.services-intro-content p {
    margin: 0 0 20px;
    color: #676c76;
    font-size: 17px;
    line-height: 1.85;
}

.services-intro-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
    margin-top: 30px;
}

.services-intro-points span {
    position: relative;
    padding-left: 25px;
    color: #2c272d;
    font-size: 15px;
    font-weight: 700;
}

.services-intro-points span::before {
    content: "✓";
    position: absolute;
    top: 0;
    left: 0;
    color: #b98300;
    font-weight: 900;
}

.services-contact-panel {
    padding: 42px;
    border: 1px solid #e6ded3;
    border-radius: 20px;
    background:
        linear-gradient(
            145deg,
            #fffdf9,
            #f7f3ed
        );
    box-shadow: 0 18px 45px rgba(36, 28, 37, 0.08);
}

.services-contact-panel > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #b68016;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.services-contact-panel h3 {
    margin: 0 0 17px;
    color: #211c22;
    font-size: 31px;
    font-weight: 800;
    line-height: 1.25;
}

.services-contact-panel p {
    margin: 0 0 27px;
    color: #686d77;
    font-size: 15px;
    line-height: 1.75;
}

.services-panel-primary {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.services-panel-primary:hover {
    background: #936600;
}

.services-panel-phone {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #ded6cc;
    border-radius: 7px;
    background: #ffffff;
}

.services-panel-phone strong {
    color: #221d23;
    font-size: 19px;
}

.services-panel-phone small {
    margin-top: 3px;
    color: #827d85;
}

/* SERVICES GRID */

.all-services-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.services-page-heading {
    max-width: 790px;
    margin: 0 auto 58px;
    text-align: center;
}

.services-page-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b68016;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.services-page-heading h2 {
    margin: 0 0 17px;
    color: #201b21;
    font-size: clamp(39px, 5vw, 55px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1.3px;
}

.services-page-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 17px;
    line-height: 1.8;
}

.all-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.main-service-card {
    overflow: hidden;
    border: 1px solid #e9e4dd;
    border-radius: 19px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(34, 26, 35, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.main-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 50px rgba(34, 26, 35, 0.12);
}

.main-service-image {
    position: relative;
    height: 225px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #282229,
            #171317
        );
}

.main-service-image.image-missing::before {
    content: "Sky1 Worldwide Limousine";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 30px;
    color: rgba(255, 255, 255, 0.24);
    font-size: 22px;
    font-weight: 800;
    text-align: center;
}

.main-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.main-service-card:hover .main-service-image img {
    transform: scale(1.07);
}

.main-service-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.05),
            rgba(0, 0, 0, 0.55)
        );
}

.main-service-icon {
    position: absolute;
    left: 22px;
    bottom: 20px;
    min-width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 15px;
    background: #b98300;
    color: #ffffff;
    font-size: 24px;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

.main-service-content {
    padding: 28px;
}

.main-service-content h3 {
    margin: 0 0 14px;
    color: #201b21;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.3;
}

.main-service-content p {
    min-height: 132px;
    margin: 0 0 24px;
    color: #686d77;
    font-size: 15px;
    line-height: 1.75;
}

.main-service-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-top: 20px;
    border-top: 1px solid #eee9e3;
}

.main-service-learn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

.main-service-learn span {
    transition: transform 0.2s ease;
}

.main-service-learn:hover span {
    transform: translateX(4px);
}

.main-service-book {
    padding: 9px 14px;
    border-radius: 5px;
    background: #211c22;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
}

.main-service-book:hover {
    background: #b98300;
}

/* BENEFITS */

.services-benefits-section {
    padding: 105px 0;
    background: #ffffff;
}

.services-benefits-heading {
    max-width: 790px;
    margin: 0 auto 56px;
    text-align: center;
}

.services-benefits-heading span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b68016;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.services-benefits-heading h2 {
    margin: 0 0 17px;
    color: #201b21;
    font-size: clamp(38px, 5vw, 53px);
    font-weight: 800;
    line-height: 1.16;
}

.services-benefits-heading p {
    margin: 0;
    color: #6b707a;
    font-size: 17px;
    line-height: 1.8;
}

.services-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.services-benefit-card {
    position: relative;
    min-height: 270px;
    padding: 35px 28px;
    overflow: hidden;
    border: 1px solid #eae5df;
    border-radius: 17px;
    background: #faf9f7;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.services-benefit-card:hover {
    transform: translateY(-7px);
    border-color: rgba(185, 131, 0, 0.45);
    box-shadow: 0 20px 40px rgba(34, 26, 35, 0.09);
}

.services-benefit-number {
    display: block;
    margin-bottom: 28px;
    color: rgba(185, 131, 0, 0.3);
    font-size: 50px;
    font-weight: 900;
    line-height: 1;
}

.services-benefit-card h3 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: 22px;
    font-weight: 800;
}

.services-benefit-card p {
    margin: 0;
    color: #696e78;
    font-size: 15px;
    line-height: 1.75;
}

/* BOOKING PROCESS */

.services-booking-process {
    padding: 100px 0;
    background: #211b21;
}

.services-process-heading {
    max-width: 760px;
    margin: 0 auto 52px;
    text-align: center;
}

.services-process-heading span {
    display: inline-block;
    margin-bottom: 13px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.services-process-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.services-process-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.services-process-step {
    display: flex;
    gap: 22px;
    padding: 32px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.035);
}

.services-process-step > span {
    width: 55px;
    height: 55px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #b98300;
    color: #ffffff;
    font-size: 20px;
    font-weight: 900;
}

.services-process-step h3 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: 21px;
    font-weight: 800;
}

.services-process-step p {
    margin: 0;
    color: rgba(255, 255, 255, 0.6);
    font-size: 15px;
    line-height: 1.75;
}

/* COVERAGE */

.services-coverage-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.services-coverage-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(12, 9, 13, 0.94),
            rgba(28, 21, 29, 0.86)
        );
}

.services-coverage-content {
    position: relative;
    z-index: 2;
    max-width: 950px;
    text-align: center;
    color: #ffffff;
}

.services-coverage-content > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.5px;
}

.services-coverage-content h2 {
    margin: 0 auto 20px;
    color: #ffffff;
    font-size: clamp(39px, 5vw, 56px);
    font-weight: 800;
    line-height: 1.15;
}

.services-coverage-content > p {
    max-width: 850px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.68);
    font-size: 17px;
    line-height: 1.85;
}

.services-coverage-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    max-width: 820px;
    margin: 45px auto 0;
}

.services-coverage-stats > div {
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.055);
    backdrop-filter: blur(8px);
}

.services-coverage-stats strong {
    display: block;
    margin-bottom: 5px;
    color: #c7931c;
    font-size: 34px;
    font-weight: 900;
}

.services-coverage-stats span {
    color: rgba(255, 255, 255, 0.73);
    font-size: 14px;
    font-weight: 700;
}

/* FINAL CTA */

.services-final-cta {
    padding: 80px 0;
    background: #f6f3ee;
}

.services-final-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: center;
}

.services-final-cta span {
    display: inline-block;
    margin-bottom: 11px;
    color: #b68016;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
}

.services-final-cta h2 {
    max-width: 760px;
    margin: 0 0 13px;
    color: #211c22;
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
}

.services-final-cta p {
    max-width: 780px;
    margin: 0;
    color: #686d77;
    font-size: 16px;
    line-height: 1.75;
}

.services-final-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 230px;
}

.services-final-actions .btn {
    width: 100%;
    min-width: 230px;
    min-height: 58px;
    padding: 14px 28px;
    border: 2px solid transparent;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.2;
    opacity: 1;
    visibility: visible;
}

.services-final-actions .btn-primary {
    background: #d9b633;
    border-color: #d9b633;
    color: #111111;
}

.services-final-actions .btn-primary:hover {
    background: #c69f19;
    border-color: #c69f19;
    color: #111111;
    transform: translateY(-2px);
}

.services-final-actions .btn-secondary {
    background: #211c22;
    border-color: #211c22;
    color: #ffffff;
}

.services-final-actions .btn-secondary:hover {
    background: #b98300;
    border-color: #b98300;
    color: #ffffff;
    transform: translateY(-2px);
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .services-intro-grid {
        grid-template-columns: 1fr;
    }

    .services-contact-panel {
        max-width: 650px;
    }

    .all-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .services-benefits-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .services-final-cta-inner {
        grid-template-columns: 1fr;
    }

    .services-final-actions {
        flex-direction: row;
        flex-wrap: wrap;
        min-width: 0;
    }

    .services-final-actions .btn {
        width: auto;
    }
}

@media (max-width: 800px) {
    .services-process-grid {
        grid-template-columns: 1fr;
    }

    .services-coverage-stats {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .services-page-hero {
        min-height: 500px;
    }

    .services-introduction,
    .all-services-section,
    .services-benefits-section,
    .services-booking-process {
        padding: 75px 0;
    }

    .services-intro-points {
        grid-template-columns: 1fr;
    }

    .services-contact-panel {
        padding: 30px 24px;
    }

    .all-services-grid {
        grid-template-columns: 1fr;
    }

    .main-service-content p {
        min-height: 0;
    }

    .services-benefits-grid {
        grid-template-columns: 1fr;
    }

    .services-benefit-card {
        min-height: 0;
    }

    .services-process-step {
        padding: 25px 22px;
    }

    .services-coverage-section {
        padding: 80px 0;
    }

    .services-final-cta {
        padding: 65px 0;
    }

    .services-final-cta h2 {
        font-size: 31px;
    }

    .services-final-actions {
        flex-direction: column;
        width: 100%;
    }

    .services-final-actions .btn {
        width: 100%;
        min-width: 0;
    }
}

/* Fix booking card label visibility */

.booking-card,
.booking-card h2,
.booking-card label {
    color: #ffffff;
}

.booking-card .form-group label {
    color: rgba(255, 255, 255, 0.88);
    font-weight: 600;
}

.booking-card input,
.booking-card select {
    color: #242124;
    background: #ffffff;
}

.booking-card input::placeholder {
    color: #9b9b9b;
}
/* =========================================================
   CONTACT PAGE
========================================================= */

.contact-page {
    background: #ffffff;
    color: #211c22;
}

/* HERO */

.contact-hero {
    position: relative;
    min-height: 540px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.contact-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(7, 6, 8, 0.95) 0%,
            rgba(25, 18, 25, 0.84) 58%,
            rgba(7, 6, 8, 0.64) 100%
        );
}

.contact-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 115px;
    padding-bottom: 75px;
    color: #ffffff;
}

.contact-hero-content > span {
    display: inline-block;
    margin-bottom: 17px;
    color: #c7931c;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.contact-hero h1 {
    max-width: 850px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 70px);
    font-weight: 800;
    line-height: 1.07;
    letter-spacing: -2px;
}

.contact-hero p {
    max-width: 760px;
    margin: 0 0 34px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.contact-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* CONTACT CARDS */

.contact-info-section {
    position: relative;
    z-index: 5;
    padding: 0 0 90px;
    background: #ffffff;
}

.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    transform: translateY(-45px);
    margin-bottom: -45px;
}

.contact-info-card {
    min-width: 0;
    padding: 30px 25px;
    border: 1px solid #ebe5dd;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(31, 24, 32, 0.09);
    text-align: center;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.contact-info-card:hover {
    transform: translateY(-7px);
    border-color: rgba(185, 131, 0, 0.4);
    box-shadow: 0 25px 48px rgba(31, 24, 32, 0.13);
}

.contact-info-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 19px;
    border-radius: 15px;
    background: #f8f1e3;
    color: #b27a12;
    font-size: 25px;
    font-weight: 800;
}

.contact-info-card h2 {
    margin: 0 0 10px;
    color: #211c22;
    font-size: 20px;
    font-weight: 800;
}

.contact-info-card a,
.contact-info-card strong {
    display: block;
    overflow-wrap: anywhere;
    color: #a9700c;
    font-size: 15px;
    font-weight: 800;
}

.contact-info-card p {
    margin: 10px 0 0;
    color: #727680;
    font-size: 14px;
    line-height: 1.65;
}

/* MAIN CONTACT AREA */

.contact-main-section {
    padding: 100px 0;
    background: #f8f7f5;
}

.contact-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(330px, 0.75fr);
    gap: 55px;
    align-items: start;
}

.contact-section-heading {
    margin-bottom: 34px;
}

.contact-section-heading > span {
    display: inline-block;
    margin-bottom: 12px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.contact-section-heading h2 {
    margin: 0 0 15px;
    color: #211c22;
    font-size: clamp(37px, 5vw, 50px);
    font-weight: 800;
    line-height: 1.17;
    letter-spacing: -1px;
}

.contact-section-heading p {
    max-width: 740px;
    margin: 0;
    color: #696e78;
    font-size: 16px;
    line-height: 1.8;
}

/* FORM */

.contact-form {
    padding: 38px;
    border: 1px solid #e9e3da;
    border-radius: 19px;
    background: #ffffff;
    box-shadow: 0 15px 42px rgba(34, 26, 35, 0.07);
}

.contact-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 23px;
}

.contact-field {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.contact-field.contact-full-width {
    grid-column: 1 / -1;
}

.contact-field label {
    color: #282329;
    font-size: 15px;
    font-weight: 750;
}

.contact-field label span {
    color: #b84936;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
    width: 100%;
    border: 1px solid #d4d1cd;
    border-radius: 7px;
    outline: none;
    background: #ffffff;
    color: #282329;
    font-family: inherit;
    font-size: 15px;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.contact-field input,
.contact-field select {
    min-height: 55px;
    padding: 0 16px;
}

.contact-field textarea {
    min-height: 170px;
    padding: 16px;
    resize: vertical;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
    color: #99989c;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
    border-color: #b98300;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.1);
}

.contact-consent {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 25px;
    color: #52565f;
    font-size: 14px;
    line-height: 1.6;
    cursor: pointer;
}

.contact-consent input {
    width: 21px;
    height: 21px;
    flex-shrink: 0;
    margin-top: 1px;
    accent-color: #b98300;
}

.contact-submit-btn {
    min-width: 240px;
    min-height: 56px;
    margin-top: 27px;
    padding: 13px 28px;
    border: 0;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-family: inherit;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.contact-submit-btn:hover {
    transform: translateY(-2px);
    background: #946600;
    box-shadow: 0 14px 28px rgba(185, 131, 0, 0.22);
}

.contact-form-message {
    margin-bottom: 24px;
    padding: 18px 20px;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.65;
}

.contact-form-message strong {
    display: block;
    margin-bottom: 5px;
}

.contact-form-message p {
    margin: 0;
}

.contact-form-message.success {
    border: 1px solid #bbd8b8;
    background: #f3fff2;
    color: #3c6839;
}

.contact-form-message.error {
    border: 1px solid #e4b1aa;
    background: #fff4f2;
    color: #a33c31;
}

/* SIDEBAR */

.contact-sidebar {
    display: grid;
    gap: 24px;
}

.contact-sidebar-card,
.contact-airports-card {
    padding: 35px;
    border: 1px solid #e6ded4;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(34, 26, 35, 0.06);
}

.contact-sidebar-label,
.contact-airports-card > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.contact-sidebar-card h2 {
    margin: 0 0 15px;
    color: #211c22;
    font-size: 29px;
    font-weight: 800;
    line-height: 1.25;
}

.contact-sidebar-card > p {
    margin: 0 0 28px;
    color: #686d77;
    font-size: 15px;
    line-height: 1.75;
}

.contact-sidebar-list {
    display: grid;
}

.contact-sidebar-list > div {
    padding: 18px 0;
    border-top: 1px solid #eee9e2;
}

.contact-sidebar-list > div:last-child {
    padding-bottom: 0;
}

.contact-sidebar-list span {
    display: block;
    margin-bottom: 5px;
    color: #8a858d;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.contact-sidebar-list a,
.contact-sidebar-list strong {
    display: block;
    overflow-wrap: anywhere;
    color: #272228;
    font-size: 15px;
    font-weight: 800;
}

.contact-sidebar-list a:hover {
    color: #b98300;
}

.contact-airports-card h3 {
    margin: 0 0 22px;
    color: #211c22;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.3;
}

.contact-airport-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 24px;
}

.contact-airport-tags span {
    padding: 8px 11px;
    border: 1px solid #e4ddd3;
    border-radius: 6px;
    background: #faf8f5;
    color: #4f4a51;
    font-size: 12px;
    font-weight: 800;
}

.contact-airports-card a {
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

.contact-emergency-card {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 24px;
    border-radius: 16px;
    background: #211b21;
    box-shadow: 0 14px 34px rgba(31, 24, 32, 0.17);
}

.contact-emergency-icon {
    width: 51px;
    height: 51px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: #b98300;
    color: #ffffff;
    font-size: 22px;
}

.contact-emergency-card small {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.6);
}

.contact-emergency-card a {
    color: #ffffff;
    font-size: 18px;
    font-weight: 800;
}

/* BENEFITS */

.contact-benefits-section {
    padding: 100px 0;
    background: #ffffff;
}

.contact-benefits-heading {
    max-width: 780px;
    margin: 0 auto 52px;
    text-align: center;
}

.contact-benefits-heading span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.contact-benefits-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.contact-benefits-heading p {
    margin: 0;
    color: #6b707a;
    font-size: 16px;
    line-height: 1.8;
}

.contact-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 23px;
}

.contact-benefits-grid article {
    padding: 31px 27px;
    border: 1px solid #ebe5de;
    border-radius: 16px;
    background: #faf9f7;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.contact-benefits-grid article:hover {
    transform: translateY(-6px);
    border-color: rgba(185, 131, 0, 0.4);
    box-shadow: 0 18px 38px rgba(34, 26, 35, 0.09);
}

.contact-benefits-grid article > span {
    display: block;
    margin-bottom: 24px;
    color: rgba(185, 131, 0, 0.35);
    font-size: 43px;
    font-weight: 900;
    line-height: 1;
}

.contact-benefits-grid h3 {
    margin: 0 0 12px;
    color: #211c22;
    font-size: 21px;
    font-weight: 800;
}

.contact-benefits-grid p {
    margin: 0;
    color: #696e78;
    font-size: 14px;
    line-height: 1.75;
}

/* FAQ */

.contact-faq-section {
    padding: 100px 0;
    background: #f7f6f4;
}

.contact-faq-heading {
    max-width: 760px;
    margin: 0 auto 45px;
    text-align: center;
}

.contact-faq-heading span {
    display: inline-block;
    margin-bottom: 12px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.contact-faq-heading h2 {
    margin: 0;
    color: #211c22;
    font-size: clamp(37px, 5vw, 50px);
    font-weight: 800;
}

.contact-faq-list {
    max-width: 1000px;
    margin: 0 auto;
    display: grid;
    gap: 13px;
}

.contact-faq-list details {
    overflow: hidden;
    border: 1px solid #e5ded5;
    border-radius: 10px;
    background: #ffffff;
}

.contact-faq-list summary {
    position: relative;
    padding: 23px 65px 23px 24px;
    color: #282329;
    font-size: 17px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}

.contact-faq-list summary::-webkit-details-marker {
    display: none;
}

.contact-faq-list summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 23px;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f7f4ef;
    color: #77727b;
    font-size: 21px;
    transform: translateY(-50%);
}

.contact-faq-list details[open] summary::after {
    content: "−";
    background: #b98300;
    color: #ffffff;
}

.contact-faq-list details p {
    margin: 0;
    padding: 21px 24px 25px;
    border-top: 1px solid #eee9e3;
    color: #666b75;
    font-size: 15px;
    line-height: 1.75;
}

/* CTA */

.contact-page-cta {
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 82% 15%,
            rgba(185, 131, 0, 0.13),
            transparent 38%
        ),
        #211a21;
}

.contact-page-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: center;
}

.contact-page-cta span {
    display: inline-block;
    margin-bottom: 11px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
}

.contact-page-cta h2 {
    max-width: 720px;
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.2;
}

.contact-page-cta p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.63);
    font-size: 16px;
    line-height: 1.75;
}

.contact-page-cta-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 220px;
}

.contact-cta-primary,
.contact-cta-secondary {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 25px;
    border: 2px solid transparent;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 800;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease;
}

.contact-cta-primary {
    background: #b98300;
    border-color: #b98300;
    color: #ffffff;
}

.contact-cta-primary:hover {
    transform: translateY(-2px);
    background: #946600;
    border-color: #946600;
}

.contact-cta-secondary {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
}

.contact-cta-secondary:hover {
    transform: translateY(-2px);
    background: #ffffff;
    border-color: #ffffff;
    color: #211c22;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .contact-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-main-grid {
        grid-template-columns: 1fr;
    }

    .contact-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-emergency-card {
        grid-column: 1 / -1;
    }

    .contact-benefits-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-page-cta-inner {
        grid-template-columns: 1fr;
    }

    .contact-page-cta-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 700px) {
    .contact-hero {
        min-height: 500px;
    }

    .contact-info-grid {
        grid-template-columns: 1fr;
    }

    .contact-main-section,
    .contact-benefits-section,
    .contact-faq-section {
        padding: 75px 0;
    }

    .contact-form {
        padding: 28px 22px;
    }

    .contact-form-grid {
        grid-template-columns: 1fr;
    }

    .contact-field.contact-full-width {
        grid-column: auto;
    }

    .contact-submit-btn {
        width: 100%;
        min-width: 0;
    }

    .contact-sidebar {
        grid-template-columns: 1fr;
    }

    .contact-emergency-card {
        grid-column: auto;
    }

    .contact-sidebar-card,
    .contact-airports-card {
        padding: 28px 23px;
    }

    .contact-benefits-grid {
        grid-template-columns: 1fr;
    }

    .contact-page-cta {
        padding: 65px 0;
    }

    .contact-page-cta h2 {
        font-size: 31px;
    }

    .contact-page-cta-actions {
        flex-direction: column;
    }

    .contact-cta-primary,
    .contact-cta-secondary {
        width: 100%;
    }
}
/* =========================================================
   BLOG PAGE
========================================================= */

.blog-page {
    background: #ffffff;
    color: #211c22;
}

/* HERO */

.blog-hero {
    position: relative;
    min-height: 530px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.blog-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(7, 6, 8, 0.95) 0%,
            rgba(27, 20, 28, 0.84) 58%,
            rgba(8, 6, 9, 0.66) 100%
        );
}

.blog-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 120px;
    padding-bottom: 75px;
    color: #ffffff;
}

.blog-hero-content > span {
    display: inline-block;
    margin-bottom: 17px;
    color: #c7931c;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.blog-hero h1 {
    max-width: 930px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 70px);
    font-weight: 800;
    line-height: 1.07;
    letter-spacing: -2px;
}

.blog-hero p {
    max-width: 780px;
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

/* FEATURED POST */

.blog-featured-section {
    padding: 90px 0;
    background: #ffffff;
}

.blog-featured-card {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    overflow: hidden;
    border: 1px solid #e8e2da;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 22px 55px rgba(33, 25, 34, 0.1);
}

.blog-featured-image {
    position: relative;
    min-height: 480px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #2b242b,
            #161216
        );
}

.blog-featured-image.image-missing::before {
    content: "Sky1 Worldwide Travel Journal";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 30px;
    color: rgba(255, 255, 255, 0.22);
    font-size: 30px;
    font-weight: 800;
    text-align: center;
}

.blog-featured-image img {
    width: 100%;
    height: 100%;
    min-height: 480px;
    object-fit: cover;
}

.blog-featured-image > span {
    position: absolute;
    top: 22px;
    left: 22px;
    padding: 9px 14px;
    border-radius: 999px;
    background: #b98300;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.blog-featured-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 55px;
}

.blog-post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
    margin-bottom: 22px;
}

.blog-post-meta span {
    color: #8a858e;
    font-size: 13px;
    font-weight: 700;
}

.blog-post-meta span:first-child {
    color: #a9700c;
}

.blog-featured-content h2 {
    margin: 0 0 20px;
    color: #211c22;
    font-size: clamp(34px, 4vw, 49px);
    font-weight: 800;
    line-height: 1.17;
    letter-spacing: -1px;
}

.blog-featured-content p {
    margin: 0 0 30px;
    color: #686d77;
    font-size: 17px;
    line-height: 1.85;
}

.blog-featured-link {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 14px 21px;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.blog-featured-link span {
    transition: transform 0.2s ease;
}

.blog-featured-link:hover {
    background: #946600;
}

.blog-featured-link:hover span {
    transform: translateX(4px);
}

/* MAIN BLOG */

.blog-main-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.blog-section-heading {
    max-width: 790px;
    margin: 0 auto 50px;
    text-align: center;
}

.blog-section-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.blog-section-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.blog-section-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 17px;
    line-height: 1.8;
}

/* TOOLBAR */

.blog-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 45px;
}

.blog-category-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.blog-filter-button {
    min-height: 42px;
    padding: 9px 17px;
    border: 1px solid #ddd6cd;
    border-radius: 999px;
    background: #ffffff;
    color: #555059;
    font-family: inherit;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.blog-filter-button:hover,
.blog-filter-button.active {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.blog-search-box {
    min-width: 325px;
    display: flex;
}

.blog-search-box input {
    min-width: 0;
    flex: 1;
    min-height: 48px;
    padding: 0 15px;
    border: 1px solid #d9d3cb;
    border-right: 0;
    border-radius: 7px 0 0 7px;
    outline: none;
    background: #ffffff;
    color: #29242a;
    font-family: inherit;
    font-size: 14px;
}

.blog-search-box input:focus {
    border-color: #b98300;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.08);
}

.blog-search-box button {
    min-width: 90px;
    border: 0;
    border-radius: 0 7px 7px 0;
    background: #211c22;
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.blog-search-box button:hover {
    background: #b98300;
}

/* BLOG LAYOUT */

.blog-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 45px;
    align-items: start;
}

.blog-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.blog-card {
    overflow: hidden;
    border: 1px solid #e8e2da;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 11px 32px rgba(35, 27, 36, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.blog-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 46px rgba(35, 27, 36, 0.12);
}

.blog-card.blog-hidden {
    display: none;
}

.blog-card-image {
    position: relative;
    height: 225px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #2b242b,
            #171317
        );
}

.blog-card-image.image-missing::before {
    content: "Sky1 Worldwide";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: rgba(255, 255, 255, 0.2);
    font-size: 23px;
    font-weight: 800;
}

.blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.blog-card:hover .blog-card-image img {
    transform: scale(1.07);
}

.blog-card-image > span {
    position: absolute;
    left: 18px;
    bottom: 17px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #b98300;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
}

.blog-card-content {
    padding: 26px;
}

.blog-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 15px;
    margin-bottom: 14px;
}

.blog-card-meta span {
    color: #918c94;
    font-size: 12px;
    font-weight: 700;
}

.blog-card-content h3 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.35;
}

.blog-card-content h3 a {
    color: inherit;
}

.blog-card-content h3 a:hover {
    color: #a9700c;
}

.blog-card-content p {
    min-height: 105px;
    margin: 0 0 22px;
    color: #696e78;
    font-size: 14.5px;
    line-height: 1.75;
}

.blog-read-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

.blog-read-more span {
    transition: transform 0.2s ease;
}

.blog-read-more:hover span {
    transform: translateX(4px);
}

.blog-empty-message {
    padding: 40px;
    border: 1px solid #e4ddd4;
    border-radius: 12px;
    background: #ffffff;
    color: #676c76;
    text-align: center;
    font-size: 16px;
}

/* PAGINATION */

.blog-pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 45px;
}

.blog-pagination a {
    min-width: 43px;
    min-height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 13px;
    border: 1px solid #dcd5cc;
    border-radius: 6px;
    background: #ffffff;
    color: #4f4a52;
    font-size: 13px;
    font-weight: 800;
}

.blog-pagination a:hover,
.blog-pagination a.active {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.blog-pagination a.disabled {
    opacity: 0.45;
    pointer-events: none;
}

/* SIDEBAR */

.blog-sidebar {
    display: grid;
    gap: 24px;
}

.blog-sidebar-widget {
    padding: 30px;
    border: 1px solid #e5ded5;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 11px 30px rgba(35, 27, 36, 0.05);
}

.blog-widget-label {
    display: inline-block;
    margin-bottom: 11px;
    color: #b27a12;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.blog-sidebar-widget h3 {
    margin: 0 0 22px;
    color: #211c22;
    font-size: 25px;
    font-weight: 800;
}

.blog-category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.blog-category-list li {
    border-top: 1px solid #eee9e3;
}

.blog-category-list li:first-child {
    border-top: 0;
}

.blog-category-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 0;
    color: #57525a;
    font-size: 14px;
    font-weight: 700;
}

.blog-category-list a:hover {
    color: #a9700c;
}

.blog-category-list span {
    min-width: 29px;
    height: 29px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f7f3ed;
    color: #8a858d;
    font-size: 11px;
}

.blog-recent-posts {
    display: grid;
    gap: 17px;
}

.blog-recent-post {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
}

.blog-recent-image {
    width: 78px;
    height: 69px;
    overflow: hidden;
    border-radius: 8px;
    background: #272127;
}

.blog-recent-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-recent-post strong {
    display: block;
    color: #282329;
    font-size: 13px;
    line-height: 1.45;
}

.blog-recent-post:hover strong {
    color: #a9700c;
}

.blog-recent-post span {
    display: block;
    margin-top: 5px;
    color: #959099;
    font-size: 11px;
}

.blog-quote-widget {
    padding: 33px 29px;
    border-radius: 17px;
    background:
        radial-gradient(
            circle at 85% 15%,
            rgba(185, 131, 0, 0.15),
            transparent 42%
        ),
        #211b21;
    color: #ffffff;
}

.blog-quote-widget > span {
    display: inline-block;
    margin-bottom: 12px;
    color: #c7931c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.blog-quote-widget h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 27px;
    font-weight: 800;
    line-height: 1.25;
}

.blog-quote-widget p {
    margin: 0 0 23px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 14px;
    line-height: 1.75;
}

.blog-quote-widget > a {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 11px 17px;
    border-radius: 6px;
    background: #b98300;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
}

.blog-quote-widget > a:hover {
    background: #946600;
}

.blog-quote-widget > a.blog-widget-phone {
    margin-top: 10px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: transparent;
}

.blog-quote-widget > a.blog-widget-phone:hover {
    border-color: #ffffff;
    background: #ffffff;
    color: #211b21;
}

/* NEWSLETTER */

.blog-newsletter-section {
    padding: 82px 0;
    background: #211a21;
}

.blog-newsletter-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.65fr);
    gap: 55px;
    align-items: center;
}

.blog-newsletter-inner > div > span {
    display: inline-block;
    margin-bottom: 11px;
    color: #c7931c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.blog-newsletter-inner h2 {
    max-width: 720px;
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.2;
}

.blog-newsletter-inner p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 16px;
    line-height: 1.75;
}

.blog-newsletter-form {
    display: flex;
}

.blog-newsletter-form input {
    min-width: 0;
    flex: 1;
    min-height: 57px;
    padding: 0 17px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-right: 0;
    border-radius: 7px 0 0 7px;
    outline: none;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
}

.blog-newsletter-form input::placeholder {
    color: rgba(255, 255, 255, 0.42);
}

.blog-newsletter-form input:focus {
    border-color: #b98300;
}

.blog-newsletter-form button {
    min-width: 120px;
    border: 0;
    border-radius: 0 7px 7px 0;
    background: #b98300;
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.blog-newsletter-form button:hover {
    background: #946600;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .blog-featured-card {
        grid-template-columns: 1fr;
    }

    .blog-featured-image,
    .blog-featured-image img {
        min-height: 400px;
    }

    .blog-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .blog-layout {
        grid-template-columns: 1fr;
    }

    .blog-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .blog-quote-widget {
        grid-column: 1 / -1;
    }

    .blog-newsletter-inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .blog-hero {
        min-height: 500px;
    }

    .blog-featured-section,
    .blog-main-section {
        padding: 75px 0;
    }

    .blog-featured-content {
        padding: 34px 25px;
    }

    .blog-featured-image,
    .blog-featured-image img {
        min-height: 310px;
    }

    .blog-search-box {
        width: 100%;
        min-width: 0;
    }

    .blog-posts-grid {
        grid-template-columns: 1fr;
    }

    .blog-card-content p {
        min-height: 0;
    }

    .blog-sidebar {
        grid-template-columns: 1fr;
    }

    .blog-quote-widget {
        grid-column: auto;
    }

    .blog-newsletter-section {
        padding: 65px 0;
    }

    .blog-newsletter-inner h2 {
        font-size: 31px;
    }

    .blog-newsletter-form {
        flex-direction: column;
        gap: 10px;
    }

    .blog-newsletter-form input,
    .blog-newsletter-form button {
        width: 100%;
        border: 0;
        border-radius: 7px;
    }
}

/* =========================================================
   ABOUT PAGE
========================================================= */

.about-page {
    background: #ffffff;
    color: #211c22;
}

/* HERO */

.about-page-hero {
    position: relative;
    min-height: 570px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.about-page-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(7, 6, 8, 0.95) 0%,
            rgba(26, 19, 27, 0.84) 58%,
            rgba(8, 6, 9, 0.64) 100%
        );
}

.about-page-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 120px;
    padding-bottom: 80px;
    color: #ffffff;
}

.about-page-hero-content > span {
    display: inline-block;
    margin-bottom: 18px;
    color: #c7931c;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.about-page-hero h1 {
    max-width: 920px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 72px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
}

.about-page-hero p {
    max-width: 780px;
    margin: 0 0 34px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.about-page-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* INTRODUCTION */

.about-introduction {
    padding: 105px 0;
    background: #ffffff;
}

.about-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
    gap: 75px;
    align-items: center;
}

.about-small-heading {
    display: inline-block;
    margin-bottom: 14px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.about-intro-content h2 {
    margin: 0 0 25px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 55px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -1.3px;
}

.about-intro-content p {
    margin: 0 0 20px;
    color: #686d77;
    font-size: 16.5px;
    line-height: 1.85;
}

.about-intro-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 25px;
    margin-top: 30px;
}

.about-intro-points span {
    position: relative;
    padding-left: 25px;
    color: #302a31;
    font-size: 15px;
    font-weight: 700;
}

.about-intro-points span::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #b98300;
    font-weight: 900;
}

.about-intro-visual {
    position: relative;
    padding-bottom: 70px;
}

.about-image-card {
    position: relative;
    min-height: 570px;
    overflow: hidden;
    border-radius: 23px;
    background:
        linear-gradient(
            135deg,
            #2a232a,
            #151115
        );
    box-shadow: 0 24px 60px rgba(32, 24, 33, 0.18);
}

.about-image-card.image-missing::before {
    content: "Sky1 Worldwide Limousine";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 30px;
    color: rgba(255, 255, 255, 0.18);
    font-size: 31px;
    font-weight: 800;
    text-align: center;
}

.about-image-card img {
    width: 100%;
    height: 570px;
    object-fit: cover;
}

.about-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 40%,
            rgba(9, 7, 10, 0.75)
        );
}

.about-image-badge {
    position: absolute;
    left: 28px;
    bottom: 28px;
    right: 28px;
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 14px;
    background: rgba(20, 15, 21, 0.72);
    backdrop-filter: blur(12px);
}

.about-image-badge strong {
    display: block;
    margin-bottom: 5px;
    color: #c7931c;
    font-size: 24px;
    font-weight: 900;
}

.about-image-badge span {
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
    font-weight: 700;
}

.about-experience-card {
    position: absolute;
    right: -25px;
    bottom: 0;
    width: 315px;
    padding: 28px;
    border-radius: 17px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(32, 24, 33, 0.16);
}

.about-experience-card > span {
    display: inline-block;
    margin-bottom: 10px;
    color: #b27a12;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.about-experience-card h3 {
    margin: 0 0 18px;
    color: #211c22;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.35;
}

.about-experience-card a {
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

/* STORY */

.about-story-section {
    padding: 100px 0;
    background: #f7f6f4;
}

.about-story-grid {
    display: grid;
    grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr);
    gap: 75px;
    align-items: start;
}

.about-story-heading span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.about-story-heading h2 {
    margin: 0;
    color: #211c22;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.about-story-content p {
    margin: 0 0 22px;
    color: #666b75;
    font-size: 17px;
    line-height: 1.9;
}

.about-story-content p:last-child {
    margin-bottom: 0;
}

/* MISSION */

.about-mission-section {
    padding: 100px 0;
    background: #ffffff;
}

.about-mission-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.about-mission-card {
    min-height: 370px;
    padding: 48px;
    border: 1px solid #e8e2da;
    border-radius: 21px;
    background: #faf9f7;
}

.about-mission-card.featured {
    border-color: transparent;
    background:
        radial-gradient(
            circle at 85% 12%,
            rgba(185, 131, 0, 0.16),
            transparent 40%
        ),
        #211b21;
}

.about-mission-card > span {
    display: inline-block;
    margin-bottom: 20px;
    color: #b27a12;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.about-mission-card h2 {
    margin: 0 0 20px;
    color: #211c22;
    font-size: 33px;
    font-weight: 800;
    line-height: 1.25;
}

.about-mission-card p {
    margin: 0;
    color: #686d77;
    font-size: 16px;
    line-height: 1.85;
}

.about-mission-card.featured > span {
    color: #c7931c;
}

.about-mission-card.featured h2 {
    color: #ffffff;
}

.about-mission-card.featured p {
    color: rgba(255, 255, 255, 0.64);
}

/* GENERAL HEADING */

.about-section-heading {
    max-width: 790px;
    margin: 0 auto 55px;
    text-align: center;
}

.about-section-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.about-section-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.about-section-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 17px;
    line-height: 1.8;
}

/* VALUES */

.about-values-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.about-values-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.about-value-card {
    min-height: 300px;
    padding: 35px 28px;
    border: 1px solid #e8e2da;
    border-radius: 18px;
    background: #ffffff;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.about-value-card:hover {
    transform: translateY(-7px);
    border-color: rgba(185, 131, 0, 0.4);
    box-shadow: 0 20px 42px rgba(32, 24, 33, 0.1);
}

.about-value-number {
    display: block;
    margin-bottom: 30px;
    color: rgba(185, 131, 0, 0.32);
    font-size: 49px;
    font-weight: 900;
    line-height: 1;
}

.about-value-card h3 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: 22px;
    font-weight: 800;
}

.about-value-card p {
    margin: 0;
    color: #696e78;
    font-size: 15px;
    line-height: 1.75;
}

/* SERVICES */

.about-services-section {
    padding: 105px 0;
    background: #ffffff;
}

.about-services-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap: 75px;
    align-items: center;
}

.about-services-content > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.about-services-content h2 {
    margin: 0 0 20px;
    color: #211c22;
    font-size: clamp(38px, 5vw, 51px);
    font-weight: 800;
    line-height: 1.16;
}

.about-services-content p {
    margin: 0 0 27px;
    color: #696e78;
    font-size: 16px;
    line-height: 1.8;
}

.about-services-btn {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 24px;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.about-services-btn:hover {
    background: #946600;
}

.about-services-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.about-services-list a {
    min-height: 64px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 16px 18px;
    border: 1px solid #e7e1d9;
    border-radius: 10px;
    background: #faf9f7;
    color: #302a31;
    font-size: 14px;
    font-weight: 750;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.about-services-list a span {
    color: #b98300;
    font-weight: 900;
}

.about-services-list a:hover {
    transform: translateX(4px);
    border-color: rgba(185, 131, 0, 0.4);
    background: #fffaf1;
}

/* STATS */

.about-stats-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.about-stats-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(10, 8, 11, 0.95),
            rgba(29, 21, 30, 0.87)
        );
}

.about-stats-content {
    position: relative;
    z-index: 2;
    color: #ffffff;
}

.about-stats-heading {
    max-width: 850px;
    margin: 0 auto 48px;
    text-align: center;
}

.about-stats-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.4px;
}

.about-stats-heading h2 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: clamp(39px, 5vw, 55px);
    font-weight: 800;
    line-height: 1.15;
}

.about-stats-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.65);
    font-size: 17px;
    line-height: 1.8;
}

.about-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.about-stat-card {
    padding: 28px 20px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.055);
    backdrop-filter: blur(8px);
    text-align: center;
}

.about-stat-card strong {
    display: block;
    margin-bottom: 6px;
    color: #c7931c;
    font-size: 38px;
    font-weight: 900;
}

.about-stat-card span {
    color: rgba(255, 255, 255, 0.73);
    font-size: 14px;
    font-weight: 700;
}

/* WHY CHOOSE */

.about-why-section {
    padding: 105px 0;
    background: #ffffff;
}

.about-why-grid {
    display: grid;
    grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr);
    gap: 75px;
    align-items: start;
}

.about-why-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.about-why-heading h2 {
    margin: 0 0 18px;
    color: #211c22;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.about-why-heading p {
    margin: 0;
    color: #696e78;
    font-size: 16px;
    line-height: 1.8;
}

.about-why-list {
    display: grid;
    gap: 15px;
}

.about-why-list article {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 20px;
    padding: 25px;
    border: 1px solid #e9e3dc;
    border-radius: 14px;
    background: #faf9f7;
}

.about-why-list article > span {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #b98300;
    color: #ffffff;
    font-size: 15px;
    font-weight: 900;
}

.about-why-list h3 {
    margin: 0 0 8px;
    color: #211c22;
    font-size: 20px;
    font-weight: 800;
}

.about-why-list p {
    margin: 0;
    color: #696e78;
    font-size: 14.5px;
    line-height: 1.7;
}

/* CTA */

.about-page-cta {
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 82% 15%,
            rgba(185, 131, 0, 0.13),
            transparent 38%
        ),
        #211a21;
}

.about-page-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: center;
}

.about-page-cta span {
    display: inline-block;
    margin-bottom: 11px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
}

.about-page-cta h2 {
    max-width: 770px;
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.2;
}

.about-page-cta p {
    max-width: 780px;
    margin: 0;
    color: rgba(255, 255, 255, 0.63);
    font-size: 16px;
    line-height: 1.75;
}

.about-page-cta-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 225px;
}

.about-cta-primary,
.about-cta-secondary {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 25px;
    border: 2px solid transparent;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 800;
    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease;
}

.about-cta-primary {
    background: #b98300;
    border-color: #b98300;
    color: #ffffff;
}

.about-cta-primary:hover {
    transform: translateY(-2px);
    background: #946600;
    border-color: #946600;
}

.about-cta-secondary {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
}

.about-cta-secondary:hover {
    transform: translateY(-2px);
    background: #ffffff;
    border-color: #ffffff;
    color: #211c22;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .about-intro-grid,
    .about-story-grid,
    .about-services-grid,
    .about-why-grid {
        grid-template-columns: 1fr;
    }

    .about-intro-visual {
        max-width: 720px;
    }

    .about-mission-grid {
        grid-template-columns: 1fr;
    }

    .about-values-grid,
    .about-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-page-cta-inner {
        grid-template-columns: 1fr;
    }

    .about-page-cta-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 700px) {
    .about-page-hero {
        min-height: 510px;
    }

    .about-introduction,
    .about-story-section,
    .about-mission-section,
    .about-values-section,
    .about-services-section,
    .about-why-section {
        padding: 75px 0;
    }

    .about-intro-points,
    .about-services-list {
        grid-template-columns: 1fr;
    }

    .about-intro-visual {
        padding-bottom: 0;
    }

    .about-image-card,
    .about-image-card img {
        min-height: 420px;
        height: 420px;
    }

    .about-experience-card {
        position: relative;
        right: auto;
        bottom: auto;
        width: 100%;
        margin-top: 18px;
    }

    .about-mission-card {
        min-height: 0;
        padding: 33px 25px;
    }

    .about-values-grid,
    .about-stats-grid {
        grid-template-columns: 1fr;
    }

    .about-value-card {
        min-height: 0;
    }

    .about-why-list article {
        grid-template-columns: 52px minmax(0, 1fr);
        padding: 22px 18px;
    }

    .about-page-cta {
        padding: 65px 0;
    }

    .about-page-cta h2 {
        font-size: 31px;
    }

    .about-page-cta-actions {
        flex-direction: column;
    }

    .about-cta-primary,
    .about-cta-secondary {
        width: 100%;
    }
}
/* =========================================================
   REVIEWS PAGE
========================================================= */

.reviews-page {
    background: #ffffff;
    color: #211c22;
}

/* HERO */

.reviews-hero {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.reviews-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(7, 6, 8, 0.96) 0%,
            rgba(27, 20, 28, 0.85) 58%,
            rgba(8, 6, 9, 0.66) 100%
        );
}

.reviews-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 120px;
    padding-bottom: 80px;
    color: #ffffff;
}

.reviews-hero-content > span {
    display: inline-block;
    margin-bottom: 17px;
    color: #c7931c;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.reviews-hero h1 {
    max-width: 900px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 72px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
}

.reviews-hero p {
    max-width: 780px;
    margin: 0 0 27px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.reviews-hero-rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 18px;
    margin-bottom: 33px;
}

.reviews-hero-stars {
    color: #d7ad22;
    font-size: 24px;
    letter-spacing: 3px;
}

.reviews-hero-rating strong {
    color: #ffffff;
    font-size: 16px;
}

.reviews-hero-rating span {
    color: rgba(255, 255, 255, 0.55);
    font-size: 14px;
}

.reviews-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* STATS */

.reviews-stats-section {
    position: relative;
    z-index: 4;
    padding-bottom: 85px;
    background: #ffffff;
}

.reviews-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    transform: translateY(-42px);
    margin-bottom: -42px;
}

.reviews-stat-card {
    padding: 29px 20px;
    border: 1px solid #e9e3dc;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(32, 24, 33, 0.1);
    text-align: center;
}

.reviews-stat-card strong {
    display: block;
    margin-bottom: 6px;
    color: #b98300;
    font-size: 37px;
    font-weight: 900;
}

.reviews-stat-card span {
    color: #5f5a62;
    font-size: 14px;
    font-weight: 750;
}

/* INTRO */

.reviews-introduction {
    padding: 100px 0;
    background: #ffffff;
}

.reviews-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
    gap: 70px;
    align-items: center;
}

.reviews-intro-content > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.reviews-intro-content h2 {
    margin: 0 0 23px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.reviews-intro-content p {
    margin: 0 0 19px;
    color: #686d77;
    font-size: 16.5px;
    line-height: 1.85;
}

.reviews-intro-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
    margin-top: 29px;
}

.reviews-intro-points span {
    position: relative;
    padding-left: 25px;
    color: #302a31;
    font-size: 15px;
    font-weight: 700;
}

.reviews-intro-points span::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #b98300;
    font-weight: 900;
}

.reviews-rating-card {
    padding: 45px 40px;
    border: 1px solid #e7dfd5;
    border-radius: 21px;
    background:
        linear-gradient(
            145deg,
            #fffdf9,
            #f6f1e9
        );
    box-shadow: 0 20px 50px rgba(33, 25, 34, 0.09);
    text-align: center;
}

.reviews-rating-card > span {
    display: inline-block;
    margin-bottom: 18px;
    color: #a9700c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.reviews-rating-number {
    display: block;
    color: #211c22;
    font-size: 76px;
    font-weight: 900;
    line-height: 1;
}

.reviews-rating-stars {
    margin: 14px 0 20px;
    color: #d0a51e;
    font-size: 28px;
    letter-spacing: 5px;
}

.reviews-rating-card p {
    margin: 0 0 25px;
    color: #676c76;
    font-size: 15px;
    line-height: 1.75;
}

.reviews-rating-card a {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 23px;
    border-radius: 7px;
    background: #211c22;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.reviews-rating-card a:hover {
    background: #b98300;
}

/* CUSTOMER REVIEWS */

.customer-reviews-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.reviews-section-heading {
    max-width: 780px;
    margin: 0 auto 47px;
    text-align: center;
}

.reviews-section-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.reviews-section-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.reviews-section-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 17px;
    line-height: 1.8;
}

.reviews-filter-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 45px;
}

.reviews-filter-button {
    min-height: 43px;
    padding: 9px 18px;
    border: 1px solid #ddd6cd;
    border-radius: 999px;
    background: #ffffff;
    color: #57525a;
    font-family: inherit;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.reviews-filter-button:hover,
.reviews-filter-button.active {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.customer-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.customer-review-card {
    display: flex;
    flex-direction: column;
    min-height: 420px;
    padding: 29px;
    border: 1px solid #e8e2da;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 11px 31px rgba(34, 26, 35, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.customer-review-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 46px rgba(34, 26, 35, 0.12);
}

.customer-review-card.review-hidden {
    display: none;
}

.customer-review-top {
    display: flex;
    align-items: center;
    gap: 14px;
}

.customer-review-avatar {
    width: 55px;
    height: 55px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #211c22;
    color: #ffffff;
    font-size: 20px;
    font-weight: 900;
}

.customer-review-top h3 {
    margin: 0 0 4px;
    color: #211c22;
    font-size: 18px;
    font-weight: 800;
}

.customer-review-top span {
    color: #8b868f;
    font-size: 13px;
}

.customer-review-rating {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin: 23px 0 17px;
}

.customer-review-rating span {
    color: #d0a51e;
    font-size: 18px;
    letter-spacing: 2px;
}

.customer-review-rating small {
    color: #969099;
    font-size: 11px;
}

.customer-review-card > p {
    flex: 1;
    margin: 0 0 25px;
    color: #666b75;
    font-size: 15px;
    font-style: italic;
    line-height: 1.8;
}

.customer-review-service {
    padding: 18px 0;
    border-top: 1px solid #eee9e3;
    border-bottom: 1px solid #eee9e3;
}

.customer-review-service span {
    display: block;
    margin-bottom: 4px;
    color: #918c94;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.customer-review-service strong {
    color: #2c272d;
    font-size: 14px;
}

.verified-review {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    color: #6d716e;
    font-size: 12px;
    font-weight: 700;
}

.verified-review span {
    width: 21px;
    height: 21px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #edf8eb;
    color: #478443;
    font-size: 12px;
}

.reviews-empty-message {
    padding: 40px;
    border: 1px solid #e4ddd4;
    border-radius: 12px;
    background: #ffffff;
    color: #676c76;
    text-align: center;
}

/* PLATFORMS */

.review-platforms-section {
    padding: 100px 0;
    background: #ffffff;
}

.review-platforms-heading {
    max-width: 780px;
    margin: 0 auto 48px;
    text-align: center;
}

.review-platforms-heading span {
    display: inline-block;
    margin-bottom: 12px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.review-platforms-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.review-platforms-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 16px;
    line-height: 1.8;
}

.review-platforms-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 23px;
}

.review-platform-card {
    min-height: 240px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 24px;
    border: 1px solid #e8e2da;
    border-radius: 17px;
    background: #faf9f7;
    text-align: center;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.review-platform-card:hover {
    transform: translateY(-6px);
    border-color: rgba(185, 131, 0, 0.42);
    box-shadow: 0 18px 38px rgba(33, 25, 34, 0.09);
}

.platform-name {
    display: block;
    margin-bottom: 19px;
    color: #211c22;
    font-size: 23px;
    font-weight: 900;
}

.review-platform-card > div {
    margin-bottom: 16px;
    color: #d0a51e;
    font-size: 18px;
    letter-spacing: 3px;
}

.review-platform-card strong {
    color: #2b262c;
    font-size: 15px;
}

.review-platform-card small {
    margin-top: 7px;
    color: #8c8790;
    font-size: 12px;
}

/* LEAVE REVIEW */

.leave-review-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.leave-review-grid {
    display: grid;
    grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr);
    gap: 70px;
    align-items: start;
}

.leave-review-content > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.leave-review-content h2 {
    margin: 0 0 19px;
    color: #211c22;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.leave-review-content > p {
    margin: 0;
    color: #686d77;
    font-size: 16px;
    line-height: 1.85;
}

.leave-review-contact {
    display: grid;
    gap: 9px;
    margin-top: 30px;
    padding-top: 25px;
    border-top: 1px solid #ded8d0;
}

.leave-review-contact span {
    color: #807b83;
    font-size: 13px;
}

.leave-review-contact a {
    width: fit-content;
    color: #9f6b0d;
    font-size: 15px;
    font-weight: 800;
}

.leave-review-form {
    padding: 38px;
    border: 1px solid #e7e0d8;
    border-radius: 19px;
    background: #ffffff;
    box-shadow: 0 15px 42px rgba(34, 26, 35, 0.07);
}

.review-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 23px;
}

.review-form-field {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.review-form-field.review-full-width {
    grid-column: 1 / -1;
}

.review-form-field label {
    color: #29242a;
    font-size: 15px;
    font-weight: 750;
}

.review-form-field label span {
    color: #b84936;
}

.review-form-field input,
.review-form-field select,
.review-form-field textarea {
    width: 100%;
    border: 1px solid #d4d1cd;
    border-radius: 7px;
    outline: none;
    background: #ffffff;
    color: #282329;
    font-family: inherit;
    font-size: 15px;
}

.review-form-field input,
.review-form-field select {
    min-height: 55px;
    padding: 0 16px;
}

.review-form-field textarea {
    min-height: 175px;
    padding: 16px;
    resize: vertical;
}

.review-form-field input:focus,
.review-form-field select:focus,
.review-form-field textarea:focus {
    border-color: #b98300;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.1);
}

.review-consent {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 24px;
    color: #555961;
    font-size: 14px;
    line-height: 1.6;
    cursor: pointer;
}

.review-consent input {
    width: 21px;
    height: 21px;
    flex-shrink: 0;
    accent-color: #b98300;
}

.review-submit-button {
    min-width: 230px;
    min-height: 56px;
    margin-top: 27px;
    padding: 13px 27px;
    border: 0;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
}

.review-submit-button:hover {
    background: #946600;
}

.review-form-notice {
    margin-top: 18px;
    padding: 16px;
    border: 1px solid #b8d8b6;
    border-radius: 7px;
    background: #f3fff2;
    color: #3e693b;
    font-size: 14px;
}

/* CTA */

.reviews-page-cta {
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 82% 15%,
            rgba(185, 131, 0, 0.13),
            transparent 38%
        ),
        #211a21;
}

.reviews-page-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: center;
}

.reviews-page-cta span {
    display: inline-block;
    margin-bottom: 11px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
}

.reviews-page-cta h2 {
    max-width: 750px;
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.2;
}

.reviews-page-cta p {
    max-width: 780px;
    margin: 0;
    color: rgba(255, 255, 255, 0.63);
    font-size: 16px;
    line-height: 1.75;
}

.reviews-page-cta-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 225px;
}

.reviews-cta-primary,
.reviews-cta-secondary {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 25px;
    border: 2px solid transparent;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 800;
}

.reviews-cta-primary {
    background: #b98300;
    border-color: #b98300;
    color: #ffffff;
}

.reviews-cta-primary:hover {
    background: #946600;
    border-color: #946600;
}

.reviews-cta-secondary {
    border-color: rgba(255, 255, 255, 0.4);
    background: transparent;
    color: #ffffff;
}

.reviews-cta-secondary:hover {
    border-color: #ffffff;
    background: #ffffff;
    color: #211c22;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .reviews-stats-grid,
    .review-platforms-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .reviews-intro-grid,
    .leave-review-grid {
        grid-template-columns: 1fr;
    }

    .reviews-rating-card {
        max-width: 650px;
    }

    .customer-reviews-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .reviews-page-cta-inner {
        grid-template-columns: 1fr;
    }

    .reviews-page-cta-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 700px) {
    .reviews-hero {
        min-height: 540px;
    }

    .reviews-stats-grid,
    .customer-reviews-grid,
    .review-platforms-grid {
        grid-template-columns: 1fr;
    }

    .reviews-introduction,
    .customer-reviews-section,
    .review-platforms-section,
    .leave-review-section {
        padding: 75px 0;
    }

    .reviews-intro-points {
        grid-template-columns: 1fr;
    }

    .reviews-rating-card,
    .leave-review-form {
        padding: 30px 23px;
    }

    .customer-review-card {
        min-height: 0;
    }

    .review-form-grid {
        grid-template-columns: 1fr;
    }

    .review-form-field.review-full-width {
        grid-column: auto;
    }

    .review-submit-button {
        width: 100%;
        min-width: 0;
    }

    .reviews-page-cta {
        padding: 65px 0;
    }

    .reviews-page-cta h2 {
        font-size: 31px;
    }

    .reviews-page-cta-actions {
        flex-direction: column;
    }

    .reviews-cta-primary,
    .reviews-cta-secondary {
        width: 100%;
    }
}

/* =========================================================
   AREAS WE SERVE PAGE
========================================================= */

.areas-page {
    background: #ffffff;
    color: #211c22;
}

/* HERO */

.areas-hero {
    position: relative;
    min-height: 590px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        url("../images/hero/hero-bg.jpg")
        center center / cover no-repeat;
}

.areas-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(7, 6, 8, 0.96) 0%,
            rgba(27, 20, 28, 0.85) 58%,
            rgba(8, 6, 9, 0.65) 100%
        );
}

.areas-hero-content {
    position: relative;
    z-index: 2;
    padding-top: 120px;
    padding-bottom: 80px;
    color: #ffffff;
}

.areas-hero-content > span {
    display: inline-block;
    margin-bottom: 17px;
    color: #c7931c;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2.6px;
}

.areas-hero h1 {
    max-width: 900px;
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(46px, 6vw, 72px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
}

.areas-hero p {
    max-width: 800px;
    margin: 0 0 34px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 18px;
    line-height: 1.8;
}

.areas-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* STATS */

.areas-stats-section {
    position: relative;
    z-index: 4;
    padding-bottom: 80px;
    background: #ffffff;
}

.areas-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    transform: translateY(-42px);
    margin-bottom: -42px;
}

.areas-stats-grid article {
    padding: 30px 22px;
    border: 1px solid #e8e2da;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(32, 24, 33, 0.1);
    text-align: center;
}

.areas-stats-grid strong {
    display: block;
    margin-bottom: 6px;
    color: #b98300;
    font-size: 37px;
    font-weight: 900;
}

.areas-stats-grid span {
    color: #5f5a62;
    font-size: 14px;
    font-weight: 750;
}

/* INTRODUCTION */

.areas-introduction {
    padding: 100px 0;
    background: #ffffff;
}

.areas-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
    gap: 70px;
    align-items: center;
}

.areas-intro-content > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.areas-intro-content h2 {
    margin: 0 0 23px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.areas-intro-content p {
    margin: 0 0 19px;
    color: #686d77;
    font-size: 16.5px;
    line-height: 1.85;
}

.areas-intro-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
    margin-top: 29px;
}

.areas-intro-points span {
    position: relative;
    padding-left: 25px;
    color: #302a31;
    font-size: 15px;
    font-weight: 700;
}

.areas-intro-points span::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #b98300;
    font-weight: 900;
}

.areas-quote-card {
    padding: 43px;
    border: 1px solid #e7dfd5;
    border-radius: 21px;
    background:
        linear-gradient(
            145deg,
            #fffdf9,
            #f6f1e9
        );
    box-shadow: 0 20px 50px rgba(33, 25, 34, 0.09);
}

.areas-quote-card > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #a9700c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.areas-quote-card h3 {
    margin: 0 0 17px;
    color: #211c22;
    font-size: 31px;
    font-weight: 800;
    line-height: 1.25;
}

.areas-quote-card p {
    margin: 0 0 25px;
    color: #676c76;
    font-size: 15px;
    line-height: 1.75;
}

.areas-quote-card > a {
    min-height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.areas-quote-card > a:hover {
    background: #946600;
}

.areas-quote-card > a.areas-quote-phone {
    margin-top: 12px;
    border: 1px solid #d9d1c6;
    background: #ffffff;
    color: #211c22;
}

.areas-quote-card > a.areas-quote-phone:hover {
    border-color: #211c22;
    background: #211c22;
    color: #ffffff;
}

/* GENERAL HEADING */

.areas-section-heading {
    max-width: 790px;
    margin: 0 auto 52px;
    text-align: center;
}

.areas-section-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.areas-section-heading h2 {
    margin: 0 0 16px;
    color: #211c22;
    font-size: clamp(39px, 5vw, 54px);
    font-weight: 800;
    line-height: 1.16;
}

.areas-section-heading p {
    margin: 0;
    color: #6a6f79;
    font-size: 17px;
    line-height: 1.8;
}

/* FEATURED CITIES */

.featured-cities-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.featured-cities-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.featured-city-card {
    overflow: hidden;
    border: 1px solid #e8e2da;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 11px 31px rgba(34, 26, 35, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.featured-city-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 46px rgba(34, 26, 35, 0.12);
}

.featured-city-image {
    position: relative;
    height: 240px;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            #2a232a,
            #161216
        );
}

.featured-city-image.image-missing::before {
    content: "Sky1 Worldwide";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: rgba(255, 255, 255, 0.2);
    font-size: 24px;
    font-weight: 800;
}

.featured-city-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.featured-city-card:hover .featured-city-image img {
    transform: scale(1.07);
}

.featured-city-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(8, 6, 9, 0.7)
        );
}

.featured-city-content {
    padding: 27px;
}

.featured-city-content > span {
    display: inline-block;
    margin-bottom: 8px;
    color: #a9700c;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.3px;
}

.featured-city-content h3 {
    margin: 0 0 12px;
    color: #211c22;
    font-size: 25px;
    font-weight: 800;
}

.featured-city-content p {
    margin: 0 0 20px;
    color: #696e78;
    font-size: 14.5px;
    line-height: 1.75;
}

.featured-city-content a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

.featured-city-content a span {
    transition: transform 0.2s ease;
}

.featured-city-content a:hover span {
    transform: translateX(4px);
}

/* DIRECTORY */

.states-directory-section {
    padding: 105px 0;
    background: #ffffff;
}

.areas-directory-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 42px;
}

.areas-region-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.areas-region-button {
    min-height: 43px;
    padding: 9px 18px;
    border: 1px solid #ddd6cd;
    border-radius: 999px;
    background: #ffffff;
    color: #57525a;
    font-family: inherit;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

.areas-region-button:hover,
.areas-region-button.active {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.areas-search-box {
    min-width: 300px;
}

.areas-search-box input {
    width: 100%;
    min-height: 48px;
    padding: 0 16px;
    border: 1px solid #d9d3cb;
    border-radius: 7px;
    outline: none;
    background: #ffffff;
    color: #29242a;
    font-family: inherit;
    font-size: 14px;
}

.areas-search-box input:focus {
    border-color: #b98300;
    box-shadow: 0 0 0 3px rgba(185, 131, 0, 0.09);
}

.states-directory-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.state-directory-card {
    padding: 28px;
    border: 1px solid #e8e2da;
    border-radius: 17px;
    background: #faf9f7;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.state-directory-card:hover {
    transform: translateY(-6px);
    border-color: rgba(185, 131, 0, 0.4);
    box-shadow: 0 18px 38px rgba(33, 25, 34, 0.09);
}

.state-directory-card.area-hidden {
    display: none;
}

.state-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 18px;
    margin-bottom: 19px;
    border-bottom: 1px solid #e8e1d8;
}

.state-card-header > div > span {
    display: block;
    margin-bottom: 6px;
    color: #a9700c;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.3px;
}

.state-card-header h3 {
    margin: 0;
    color: #211c22;
    font-size: 24px;
    font-weight: 800;
}

.state-city-count {
    flex-shrink: 0;
    padding: 6px 9px;
    border-radius: 999px;
    background: #f1eadf;
    color: #8a651b;
    font-size: 11px;
    font-weight: 800;
}

.state-city-links {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 22px;
}

.state-city-links a {
    padding: 8px 11px;
    border: 1px solid #e4ddd4;
    border-radius: 6px;
    background: #ffffff;
    color: #555059;
    font-size: 12px;
    font-weight: 700;
}

.state-city-links a:hover {
    border-color: #b98300;
    background: #b98300;
    color: #ffffff;
}

.state-page-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a9700c;
    font-size: 13px;
    font-weight: 800;
}

.state-page-link span {
    transition: transform 0.2s ease;
}

.state-page-link:hover span {
    transform: translateX(4px);
}

.areas-empty-message {
    margin-top: 25px;
    padding: 38px;
    border: 1px solid #e3dcd3;
    border-radius: 12px;
    background: #faf9f7;
    color: #676c76;
    text-align: center;
}

/* AIRPORTS */

.areas-airports-section {
    padding: 100px 0;
    background: #211b21;
}

.areas-airports-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap: 70px;
    align-items: center;
}

.areas-airports-content > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.areas-airports-content h2 {
    margin: 0 0 19px;
    color: #ffffff;
    font-size: clamp(38px, 5vw, 52px);
    font-weight: 800;
    line-height: 1.16;
}

.areas-airports-content p {
    margin: 0 0 25px;
    color: rgba(255, 255, 255, 0.64);
    font-size: 16px;
    line-height: 1.85;
}

.areas-airports-content a {
    min-height: 53px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 23px;
    border-radius: 7px;
    background: #b98300;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.areas-airport-tags {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
}

.areas-airport-tags span {
    min-height: 63px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
}

/* WHY CHOOSE */

.areas-why-section {
    padding: 105px 0;
    background: #f7f6f4;
}

.areas-why-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 23px;
}

.areas-why-grid article {
    padding: 32px 27px;
    border: 1px solid #e8e2da;
    border-radius: 17px;
    background: #ffffff;
}

.areas-why-grid article > span {
    display: block;
    margin-bottom: 25px;
    color: rgba(185, 131, 0, 0.35);
    font-size: 44px;
    font-weight: 900;
    line-height: 1;
}

.areas-why-grid h3 {
    margin: 0 0 12px;
    color: #211c22;
    font-size: 21px;
    font-weight: 800;
}

.areas-why-grid p {
    margin: 0;
    color: #696e78;
    font-size: 14.5px;
    line-height: 1.75;
}

/* CTA */

.areas-page-cta {
    padding: 82px 0;
    background:
        radial-gradient(
            circle at 82% 15%,
            rgba(185, 131, 0, 0.13),
            transparent 38%
        ),
        #211a21;
}

.areas-page-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 50px;
    align-items: center;
}

.areas-page-cta span {
    display: inline-block;
    margin-bottom: 11px;
    color: #c7931c;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
}

.areas-page-cta h2 {
    max-width: 760px;
    margin: 0 0 13px;
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.2;
}

.areas-page-cta p {
    max-width: 780px;
    margin: 0;
    color: rgba(255, 255, 255, 0.63);
    font-size: 16px;
    line-height: 1.75;
}

.areas-page-cta-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 225px;
}

.areas-cta-primary,
.areas-cta-secondary {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 25px;
    border: 2px solid transparent;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 800;
}

.areas-cta-primary {
    background: #b98300;
    border-color: #b98300;
    color: #ffffff;
}

.areas-cta-primary:hover {
    background: #946600;
    border-color: #946600;
}

.areas-cta-secondary {
    border-color: rgba(255, 255, 255, 0.4);
    background: transparent;
    color: #ffffff;
}

.areas-cta-secondary:hover {
    border-color: #ffffff;
    background: #ffffff;
    color: #211c22;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .areas-stats-grid,
    .areas-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .areas-intro-grid,
    .areas-airports-grid {
        grid-template-columns: 1fr;
    }

    .featured-cities-grid,
    .states-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .areas-page-cta-inner {
        grid-template-columns: 1fr;
    }

    .areas-page-cta-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

@media (max-width: 760px) {
    .areas-hero {
        min-height: 530px;
    }

    .areas-stats-grid,
    .featured-cities-grid,
    .states-directory-grid,
    .areas-why-grid {
        grid-template-columns: 1fr;
    }

    .areas-introduction,
    .featured-cities-section,
    .states-directory-section,
    .areas-airports-section,
    .areas-why-section {
        padding: 75px 0;
    }

    .areas-intro-points {
        grid-template-columns: 1fr;
    }

    .areas-quote-card {
        padding: 31px 24px;
    }

    .areas-directory-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .areas-search-box {
        width: 100%;
        min-width: 0;
    }

    .areas-airport-tags {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .areas-page-cta {
        padding: 65px 0;
    }

    .areas-page-cta h2 {
        font-size: 31px;
    }

    .areas-page-cta-actions {
        flex-direction: column;
    }

    .areas-cta-primary,
    .areas-cta-secondary {
        width: 100%;
    }
}

/* =========================================================
   DATABASE FLEET PAGE
========================================================= */

.public-fleet-section {
    padding: 140px 0 100px;
    background: #f7f6f4;
}

.public-fleet-section .section-title {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
}

.public-fleet-section .section-title > span {
    display: inline-block;
    margin-bottom: 12px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.public-fleet-section .section-title h1 {
    margin: 0 0 15px;
    color: #211c22;
    font-size: clamp(40px, 5vw, 56px);
    font-weight: 800;
}

.public-fleet-section .section-title p {
    margin: 0;
    color: #6b707a;
    font-size: 16px;
    line-height: 1.8;
}

.public-fleet-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 27px;
}

.public-fleet-card {
    overflow: hidden;
    border: 1px solid #e7e1d9;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(32, 24, 33, 0.07);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.public-fleet-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 46px rgba(32, 24, 33, 0.12);
}

.public-fleet-image {
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #f5f5f5;
}

.public-fleet-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 15px;
}

.public-fleet-placeholder {
    color: #a1a1a1;
    font-size: 14px;
}

.public-fleet-content {
    padding: 27px;
}

.public-fleet-type {
    display: inline-block;
    margin-bottom: 8px;
    color: #a9700c;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.2px;
}

.public-fleet-content h2 {
    margin: 0 0 12px;
    color: #211c22;
    font-size: 24px;
    font-weight: 800;
}

.public-fleet-content > p {
    min-height: 78px;
    margin: 0 0 21px;
    color: #696e78;
    font-size: 14px;
    line-height: 1.75;
}

.public-fleet-capacity {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 17px 0;
    border-top: 1px solid #eee9e3;
    border-bottom: 1px solid #eee9e3;
    color: #5b5960;
    font-size: 13px;
    font-weight: 700;
}

.public-fleet-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-top: 22px;
}

.public-fleet-bottom small {
    display: block;
    margin-bottom: 4px;
    color: #99949c;
    font-size: 11px;
}

.public-fleet-bottom strong {
    display: block;
    color: #211c22;
    font-size: 24px;
    font-weight: 900;
}

.public-fleet-empty {
    grid-column: 1 / -1;
    padding: 50px;
    border-radius: 12px;
    background: #ffffff;
    color: #77727b;
    text-align: center;
}

@media (max-width: 1000px) {
    .public-fleet-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .public-fleet-section {
        padding: 120px 0 75px;
    }

    .public-fleet-grid {
        grid-template-columns: 1fr;
    }

    .public-fleet-content > p {
        min-height: 0;
    }

    .public-fleet-bottom {
        align-items: stretch;
        flex-direction: column;
    }

    .public-fleet-bottom .btn {
        width: 100%;
    }
}
/* =========================================================
   DATABASE SERVICES PAGE
========================================================= */

.database-services-section {
    padding: 145px 0 105px;
    background: #f7f6f4;
}

.database-services-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.database-services-heading > span {
    display: inline-block;
    margin-bottom: 13px;
    color: #b27a12;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.3px;
}

.database-services-heading h1 {
    margin: 0 0 17px;
    color: #211c22;
    font-size: clamp(40px, 5vw, 56px);
    font-weight: 800;
    line-height: 1.15;
}

.database-services-heading p {
    max-width: 760px;
    margin: 0 auto;
    color: #6b707a;
    font-size: 16px;
    line-height: 1.8;
}

.database-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 27px;
}

.database-service-card {
    overflow: hidden;
    border: 1px solid #e7e1d9;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(32, 24, 33, 0.07);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.database-service-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 22px 46px rgba(32, 24, 33, 0.12);
}

.database-service-image {
    height: 235px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #211b21;
}

.database-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.database-service-card:hover .database-service-image img {
    transform: scale(1.06);
}

.database-service-placeholder {
    width: 70px;
    height: 70px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: rgba(185, 131, 0, 0.14);
    color: #c7931c;
    font-size: 27px;
}

.database-service-content {
    padding: 28px;
}

.database-service-content > span {
    display: inline-block;
    margin-bottom: 8px;
    color: #a9700c;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.2px;
}

.database-service-content h2 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.35;
}

.database-service-content p {
    min-height: 102px;
    margin: 0 0 22px;
    color: #696e78;
    font-size: 14.5px;
    line-height: 1.75;
}

.database-service-content > a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a9700c;
    font-size: 14px;
    font-weight: 800;
}

.database-service-content > a span {
    transition: transform 0.2s ease;
}

.database-service-content > a:hover span {
    transform: translateX(4px);
}

.database-services-empty {
    grid-column: 1 / -1;
    padding: 50px;
    border-radius: 12px;
    background: #ffffff;
    color: #77727b;
    text-align: center;
}

@media (max-width: 1000px) {
    .database-services-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .database-services-section {
        padding: 120px 0 75px;
    }

    .database-services-grid {
        grid-template-columns: 1fr;
    }

    .database-service-content p {
        min-height: 0;
    }
}
/* =========================================================
   PUBLIC BLOG
========================================================= */

.blog-page-hero {
    padding: 150px 0 90px;
    background: #211b21;
    color: #ffffff;
    text-align: center;
}

.blog-page-hero span {
    display: inline-block;
    margin-bottom: 13px;
    color: #c89424;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.blog-page-hero h1 {
    max-width: 900px;
    margin: 0 auto 18px;
    font-size: clamp(40px, 5vw, 62px);
    line-height: 1.12;
}

.blog-page-hero p {
    max-width: 760px;
    margin: 0 auto;
    color: #c7c1c7;
    font-size: 16px;
    line-height: 1.8;
}

.blog-list-section {
    padding: 95px 0;
    background: #f7f6f4;
}

.blog-post-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.blog-post-card {
    overflow: hidden;
    border: 1px solid #e7e1d9;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(32, 24, 33, 0.07);
}

.blog-post-image {
    position: relative;
    height: 235px;
    display: block;
    overflow: hidden;
    background: #211b21;
}

.blog-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.blog-post-card:hover .blog-post-image img {
    transform: scale(1.06);
}

.blog-image-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c89424;
    font-size: 34px;
}

.blog-featured-badge {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #c89424;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.blog-post-card-content {
    padding: 27px;
}

.blog-post-meta {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 13px;
    color: #a57216;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.blog-post-card-content h2 {
    margin: 0 0 13px;
    font-size: 24px;
    line-height: 1.35;
}

.blog-post-card-content h2 a {
    color: #211c22;
}

.blog-post-card-content > p {
    min-height: 100px;
    margin: 0 0 22px;
    color: #696e78;
    font-size: 14px;
    line-height: 1.75;
}

.blog-post-card-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
    padding-top: 18px;
    border-top: 1px solid #eee9e3;
}

.blog-post-card-footer strong {
    display: block;
    color: #2a2430;
    font-size: 12px;
}

.blog-post-card-footer div span {
    display: block;
    margin-top: 4px;
    color: #99929d;
    font-size: 11px;
}

.blog-read-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #a57216;
    font-size: 12px;
    font-weight: 800;
}

.blog-empty-message {
    padding: 50px;
    border-radius: 12px;
    background: #ffffff;
    color: #77727b;
    text-align: center;
}

/* SINGLE BLOG */

.single-blog-hero {
    padding: 150px 0 80px;
    background: #211b21;
    color: #ffffff;
    text-align: center;
}

.single-blog-hero .container {
    max-width: 950px;
}

.single-blog-meta {
    display: flex;
    justify-content: center;
    gap: 18px;
    margin-bottom: 18px;
    color: #c89424;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.single-blog-hero h1 {
    margin: 0 0 20px;
    font-size: clamp(42px, 5vw, 68px);
    line-height: 1.1;
}

.single-blog-hero > .container > p {
    max-width: 780px;
    margin: 0 auto 22px;
    color: #cbc5cb;
    font-size: 17px;
    line-height: 1.8;
}

.single-blog-author {
    display: flex;
    justify-content: center;
    gap: 12px;
    color: #bdb7bd;
    font-size: 12px;
}

.single-blog-featured-image {
    padding: 60px 0 0;
    background: #f7f6f4;
}

.single-blog-featured-image img {
    width: 100%;
    max-height: 620px;
    object-fit: cover;
    border-radius: 20px;
}

.single-blog-content-section {
    padding: 80px 0 105px;
    background: #f7f6f4;
}

.single-blog-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 50px;
    align-items: start;
}

.single-blog-content {
    padding: 38px;
    border: 1px solid #e7e1d9;
    border-radius: 18px;
    background: #ffffff;
    color: #4f535c;
    font-size: 16px;
    line-height: 1.85;
}

.single-blog-content h2,
.single-blog-content h3 {
    color: #211c22;
}

.single-blog-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
}

.single-blog-sidebar {
    position: sticky;
    top: 110px;
}

.single-blog-sidebar-card {
    padding: 30px;
    border-radius: 18px;
    background: #211b21;
    color: #ffffff;
}

.single-blog-sidebar-card > span {
    color: #c89424;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.single-blog-sidebar-card h2 {
    margin: 12px 0;
    font-size: 28px;
}

.single-blog-sidebar-card p {
    color: #c9c2ca;
    font-size: 14px;
    line-height: 1.7;
}

.single-blog-sidebar-card .btn {
    width: 100%;
    margin-top: 10px;
}

.single-blog-phone {
    display: block;
    margin-top: 16px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}

@media (max-width: 1000px) {
    .blog-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .single-blog-layout {
        grid-template-columns: 1fr;
    }

    .single-blog-sidebar {
        position: static;
    }
}

@media (max-width: 680px) {
    .blog-post-grid {
        grid-template-columns: 1fr;
    }

    .blog-post-card-content > p {
        min-height: 0;
    }

    .single-blog-content {
        padding: 24px;
    }
}

/* =========================================================
   VEHICLE DETAIL PAGE
========================================================= */

.vehicle-detail-hero {
    padding: 135px 0 55px;
    background: #211a22;
    color: #ffffff;
    text-align: center;
}

.vehicle-detail-hero-inner {
    max-width: 900px;
}

.vehicle-detail-eyebrow {
    display: inline-block;
    margin-bottom: 14px;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(194, 138, 29, 0.16);
    color: #d39a25;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
}

.vehicle-detail-hero h1 {
    margin: 0 0 12px;
    font-size: clamp(42px, 5vw, 64px);
    line-height: 1.1;
}

.vehicle-detail-hero p {
    margin: 0 auto 28px;
    color: #c9c2ca;
    font-size: 15px;
}

.vehicle-detail-main-image {
    width: min(100%, 650px);
    min-height: 355px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #ffffff;
}

.vehicle-detail-main-image img {
    width: 100%;
    height: 355px;
    display: block;
    object-fit: contain;
}

.vehicle-detail-placeholder {
    display: grid;
    justify-items: center;
    gap: 10px;
    color: #a87518;
}

.vehicle-detail-placeholder i {
    font-size: 45px;
}

.vehicle-hero-features {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 25px;
    margin-top: 25px;
}

.vehicle-hero-features span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #e2dce2;
    font-size: 12px;
}

.vehicle-hero-features i {
    color: #d39a25;
}

.vehicle-comparison-section {
    padding: 55px 0;
    background: #ffffff;
}

.vehicle-comparison-content {
    max-width: 900px;
    padding-left: 30px;
    border-left: 4px solid #c68a19;
}

.vehicle-comparison-content h2 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: 29px;
}

.vehicle-comparison-content p {
    color: #667080;
    line-height: 1.75;
}

.vehicle-summary-table {
    margin-top: 25px;
    border: 1px solid #e2ddd7;
}

.vehicle-summary-table > div {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.vehicle-summary-table > div:nth-child(odd) {
    background: #f7f5f2;
}

.vehicle-summary-table span,
.vehicle-summary-table strong {
    padding: 12px 15px;
    font-size: 12px;
}

.vehicle-summary-table span {
    color: #697484;
}

.vehicle-summary-table strong {
    color: #28222a;
}

.vehicle-information-section {
    padding: 75px 0;
    background: #f7f5f2;
}

.vehicle-information-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 35px;
    align-items: start;
}

.vehicle-description-card,
.vehicle-booking-card {
    border: 1px solid #e5dfd8;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(31, 25, 32, 0.07);
}

.vehicle-description-card {
    padding: 35px;
}

.vehicle-description-card h2 {
    margin: 0 0 18px;
    color: #211c22;
    font-size: 30px;
}

.vehicle-long-description {
    color: #667080;
    font-size: 14px;
    line-height: 1.85;
}

.vehicle-long-description h2,
.vehicle-long-description h3 {
    color: #211c22;
}

.vehicle-features-area,
.vehicle-ideal-area {
    margin-top: 30px;
    padding-top: 26px;
    border-top: 1px solid #ece7e2;
}

.vehicle-features-area h3,
.vehicle-ideal-area h3 {
    margin: 0 0 18px;
    color: #29232a;
}

.vehicle-features-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 25px;
}

.vehicle-features-grid span {
    display: flex;
    gap: 9px;
    color: #596577;
    font-size: 13px;
}

.vehicle-features-grid i {
    color: #c78b1b;
}

.vehicle-ideal-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.vehicle-ideal-tags span {
    padding: 8px 12px;
    border: 1px solid #e4ded7;
    border-radius: 999px;
    background: #fbfaf8;
    color: #5d6675;
    font-size: 11px;
}

.vehicle-booking-card {
    position: sticky;
    top: 110px;
    overflow: hidden;
}

.vehicle-booking-heading {
    padding: 22px;
    background: #211a22;
    color: #ffffff;
    text-align: center;
}

.vehicle-booking-heading span {
    color: #d39a25;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.vehicle-booking-heading h2 {
    margin: 8px 0 4px;
    font-size: 25px;
}

.vehicle-booking-heading p {
    margin: 0;
    color: #bdb6bd;
    font-size: 11px;
}

.vehicle-booking-card form {
    padding: 23px;
}

.vehicle-booking-card .admin-form-group {
    display: grid;
    gap: 7px;
    margin-bottom: 15px;
}

.vehicle-booking-card label {
    color: #4d586a;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.vehicle-booking-card input,
.vehicle-booking-card select {
    width: 100%;
    height: 45px;
    padding: 0 12px;
    border: 1px solid #ded8d2;
    border-radius: 6px;
    background: #ffffff;
    box-sizing: border-box;
}

.vehicle-booking-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.vehicle-booking-submit {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 6px;
    background: #be840f;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.vehicle-rates-section {
    padding: 80px 0;
    background: #ffffff;
}

.vehicle-section-heading {
    margin-bottom: 35px;
    text-align: center;
}

.vehicle-section-heading h2 {
    margin: 0 0 8px;
    color: #231e24;
    font-size: 34px;
}

.vehicle-section-heading p {
    margin: 0;
    color: #8690a0;
}

.vehicle-rates-grid {
    max-width: 850px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
}

.vehicle-rates-card {
    padding: 25px;
    border: 1px solid #e5dfd8;
    border-radius: 12px;
    background: #ffffff;
}

.vehicle-rates-card h3 {
    margin: 0 0 20px;
    color: #302932;
    font-size: 16px;
}

.vehicle-rates-card h3 i {
    margin-right: 7px;
    color: #c88d1c;
}

.vehicle-rate-table {
    border: 1px solid #e6e0da;
}

.vehicle-rate-table > div {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 11px 13px;
    font-size: 12px;
}

.vehicle-rate-table > div:first-child {
    background: #211a22;
    color: #ffffff;
}

.vehicle-rate-table > div:nth-child(even) {
    background: #f7f5f2;
}

.vehicle-rates-card.hourly {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.vehicle-hourly-price strong {
    color: #211c22;
    font-size: 45px;
}

.vehicle-hourly-price span {
    color: #8993a2;
}

.vehicle-rate-action {
    margin-top: 28px;
    text-align: center;
}

.vehicle-related-section {
    padding: 80px 0 100px;
    background: #f7f5f2;
}

.vehicle-related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.vehicle-related-card {
    overflow: hidden;
    border: 1px solid #e5dfd8;
    border-radius: 10px;
    background: #ffffff;
}

.vehicle-related-image {
    height: 165px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1eee9;
}

.vehicle-related-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.vehicle-related-image i {
    color: #b27a13;
    font-size: 35px;
}

.vehicle-related-content {
    padding: 17px;
}

.vehicle-related-content h3 {
    margin: 0 0 9px;
    color: #282229;
    font-size: 16px;
}

.vehicle-related-content > span {
    display: block;
    margin-bottom: 11px;
    color: #7b8697;
    font-size: 10px;
}

.vehicle-related-content > span i {
    margin-right: 5px;
    color: #bd8418;
}

.vehicle-related-content a {
    color: #ad750d;
    font-size: 11px;
    font-weight: 800;
}

@media (max-width: 1050px) {
    .vehicle-information-grid {
        grid-template-columns: 1fr;
    }

    .vehicle-booking-card {
        position: static;
    }

    .vehicle-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 650px) {
    .vehicle-detail-main-image,
    .vehicle-detail-main-image img {
        min-height: 250px;
        height: 250px;
    }

    .vehicle-hero-features {
        display: grid;
        grid-template-columns: 1fr 1fr;
        text-align: left;
    }

    .vehicle-information-grid {
        gap: 22px;
    }

    .vehicle-description-card {
        padding: 24px;
    }

    .vehicle-features-grid,
    .vehicle-rates-grid,
    .vehicle-related-grid {
        grid-template-columns: 1fr;
    }

    .vehicle-booking-row {
        grid-template-columns: 1fr;
    }

    .vehicle-summary-table > div {
        grid-template-columns: 1fr;
    }
}
/* =========================================================
   INDIVIDUAL SERVICE PAGES
========================================================= */

.individual-service-hero {
    min-height: 680px;
    display: flex;
    align-items: center;
    padding: 140px 0 90px;
    background-position: center;
    background-size: cover;
    color: #ffffff;
}

.individual-service-hero-inner {
    max-width: 850px;
    margin-left: 0;
}

.individual-service-eyebrow,
.individual-service-intro-content > span,
.individual-service-section-heading > span,
.individual-service-ideal-grid > div:first-child > span,
.individual-service-cta-inner > div:first-child > span {
    display: inline-block;
    margin-bottom: 15px;
    color: #c99020;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.individual-service-hero h1 {
    max-width: 850px;
    margin: 0 0 22px;
    font-size: clamp(48px, 6vw, 78px);
    line-height: 1.05;
}

.individual-service-hero p {
    max-width: 720px;
    margin: 0 0 30px;
    color: #ddd7dd;
    font-size: 18px;
    line-height: 1.8;
}

.individual-service-hero-buttons,
.individual-service-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.individual-service-intro {
    padding: 100px 0;
    background: #ffffff;
}

.individual-service-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(380px, 0.8fr);
    gap: 70px;
    align-items: center;
}

.individual-service-intro-content h2 {
    margin: 0 0 24px;
    color: #211c22;
    font-size: clamp(36px, 4vw, 54px);
    line-height: 1.15;
}

.individual-service-intro-content p {
    margin: 0 0 18px;
    color: #687283;
    font-size: 16px;
    line-height: 1.85;
}

.individual-service-intro-image {
    overflow: hidden;
    border-radius: 22px;
    box-shadow: 0 20px 50px rgba(31, 25, 32, 0.15);
}

.individual-service-intro-image img {
    width: 100%;
    min-height: 500px;
    display: block;
    object-fit: cover;
}

.individual-service-benefits,
.individual-service-faq {
    padding: 100px 0;
    background: #f7f5f2;
}

.individual-service-section-heading {
    max-width: 780px;
    margin: 0 auto 50px;
    text-align: center;
}

.individual-service-section-heading h2 {
    margin: 0;
    color: #211c22;
    font-size: clamp(36px, 4vw, 52px);
    line-height: 1.15;
}

.individual-service-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.individual-service-benefit-card {
    padding: 32px;
    border: 1px solid #e4ded7;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(31, 25, 32, 0.06);
}

.individual-service-benefit-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    border-radius: 14px;
    background: #251f25;
    color: #c99020;
    font-size: 22px;
}

.individual-service-benefit-card h3 {
    margin: 0 0 12px;
    color: #211c22;
    font-size: 22px;
}

.individual-service-benefit-card p {
    margin: 0;
    color: #6c7584;
    line-height: 1.75;
}

.individual-service-process {
    padding: 100px 0;
    background: #211b21;
    color: #ffffff;
}

.individual-service-process .individual-service-section-heading h2 {
    color: #ffffff;
}

.individual-service-process-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.individual-service-process-card {
    padding: 34px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
}

.individual-service-process-card > span {
    display: block;
    margin-bottom: 25px;
    color: #c99020;
    font-size: 34px;
    font-weight: 800;
}

.individual-service-process-card h3 {
    margin: 0 0 14px;
    font-size: 24px;
}

.individual-service-process-card p {
    margin: 0;
    color: #c8c1c8;
    line-height: 1.75;
}

.individual-service-ideal {
    padding: 95px 0;
    background: #ffffff;
}

.individual-service-ideal-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(350px, 0.8fr);
    gap: 70px;
    align-items: center;
}

.individual-service-ideal-grid h2 {
    margin: 0 0 18px;
    color: #211c22;
    font-size: 44px;
}

.individual-service-ideal-grid p {
    color: #697383;
    font-size: 16px;
    line-height: 1.8;
}

.individual-service-ideal-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.individual-service-ideal-list > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    border: 1px solid #e5dfd8;
    border-radius: 12px;
    background: #fbfaf8;
}

.individual-service-ideal-list i {
    color: #c99020;
}

.individual-service-faq-list {
    max-width: 900px;
    margin: 0 auto;
    display: grid;
    gap: 14px;
}

.individual-service-faq-item {
    padding: 0 24px;
    border: 1px solid #e3ddd6;
    border-radius: 14px;
    background: #ffffff;
}

.individual-service-faq-item summary {
    padding: 22px 0;
    color: #211c22;
    font-size: 17px;
    font-weight: 800;
    cursor: pointer;
}

.individual-service-faq-item p {
    margin: 0;
    padding: 0 0 22px;
    color: #687283;
    line-height: 1.75;
}

.individual-service-cta {
    padding: 85px 0;
    background: #211b21;
    color: #ffffff;
}

.individual-service-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

.individual-service-cta h2 {
    max-width: 780px;
    margin: 0 0 14px;
    font-size: 42px;
}

.individual-service-cta p {
    max-width: 700px;
    margin: 0;
    color: #c9c2c9;
    line-height: 1.75;
}

@media (max-width: 1050px) {
    .individual-service-benefits-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .individual-service-intro-grid,
    .individual-service-ideal-grid {
        grid-template-columns: 1fr;
    }

    .individual-service-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 700px) {
    .individual-service-hero {
        min-height: auto;
        padding: 125px 0 75px;
    }

    .individual-service-benefits-grid,
    .individual-service-process-grid,
    .individual-service-ideal-list {
        grid-template-columns: 1fr;
    }

    .individual-service-intro,
    .individual-service-benefits,
    .individual-service-process,
    .individual-service-ideal,
    .individual-service-faq {
        padding: 70px 0;
    }

    .individual-service-intro-image img {
        min-height: 330px;
    }
}
/* =========================================================
   ENHANCED INDIVIDUAL SERVICE PAGES
========================================================= */

.enhanced-service-page {
    overflow: visible;
}

.enhanced-service-hero {
    min-height: 720px;
    display: flex;
    align-items: center;
    padding: 155px 0 100px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #ffffff;
}

.enhanced-service-hero-content {
    max-width: 820px;
}

.enhanced-service-eyebrow,
.enhanced-service-section-label,
.enhanced-service-inline-heading > span,
.enhanced-service-centered-heading > span,
.enhanced-service-final-inner > div:first-child > span {
    display: inline-block;
    margin-bottom: 15px;
    color: #c89123;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.enhanced-service-hero h1 {
    margin: 0 0 22px;
    font-size: clamp(48px, 6vw, 76px);
    line-height: 1.04;
}

.enhanced-service-hero-content > p {
    max-width: 730px;
    margin: 0 0 31px;
    color: #ddd7dd;
    font-size: 18px;
    line-height: 1.8;
}

.enhanced-service-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
}

.enhanced-service-hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
    margin-top: 35px;
    padding-top: 25px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.enhanced-service-hero-trust span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #e1dce1;
    font-size: 12px;
}

.enhanced-service-hero-trust i {
    color: #cf9629;
}

.enhanced-service-introduction {
    padding: 105px 0;
    background: #ffffff;
}

.enhanced-service-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(400px, 0.86fr);
    gap: 75px;
    align-items: center;
}

.enhanced-service-intro-content h2,
.enhanced-service-content-block h2,
.enhanced-service-inline-heading h2 {
    margin: 0 0 23px;
    color: #211c22;
    font-size: clamp(34px, 4vw, 50px);
    line-height: 1.16;
}

.enhanced-service-intro-content > p,
.enhanced-service-content-block > p {
    margin: 0 0 19px;
    color: #667181;
    font-size: 15px;
    line-height: 1.9;
}

.enhanced-service-intro-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px 20px;
    margin-top: 29px;
}

.enhanced-service-intro-checks span {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #4e5969;
    font-size: 13px;
    line-height: 1.55;
}

.enhanced-service-intro-checks i {
    margin-top: 3px;
    color: #bd8418;
}

.enhanced-service-intro-image {
    position: relative;
}

.enhanced-service-intro-image img {
    width: 100%;
    min-height: 525px;
    display: block;
    object-fit: cover;
    border-radius: 22px;
    box-shadow: 0 25px 60px rgba(30, 24, 31, 0.17);
}

.enhanced-service-image-badge {
    position: absolute;
    right: -20px;
    bottom: 30px;
    min-width: 165px;
    padding: 22px;
    border-radius: 13px;
    background: #211b21;
    color: #ffffff;
    box-shadow: 0 18px 35px rgba(29, 23, 30, 0.25);
}

.enhanced-service-image-badge strong {
    display: block;
    color: #d09a32;
    font-size: 31px;
}

.enhanced-service-image-badge span {
    font-size: 11px;
}

.enhanced-service-main-section {
    padding: 95px 0 110px;
    background: #f7f5f2;
}

.enhanced-service-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 365px;
    gap: 42px;
    align-items: start;
}

.enhanced-service-main-content {
    display: grid;
    gap: 28px;
}

.enhanced-service-content-block,
.enhanced-service-inline-section {
    padding: 38px;
    border: 1px solid #e4ded7;
    border-radius: 17px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(31, 25, 32, 0.05);
}

.enhanced-service-content-block h2,
.enhanced-service-inline-heading h2 {
    font-size: 34px;
}

.enhanced-service-content-image {
    margin-top: 29px;
    overflow: hidden;
    border-radius: 14px;
}

.enhanced-service-content-image img {
    width: 100%;
    max-height: 460px;
    display: block;
    object-fit: cover;
}

.enhanced-service-content-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px 20px;
    margin: 26px 0 0;
    padding: 0;
    list-style: none;
}

.enhanced-service-content-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #556171;
    font-size: 13px;
    line-height: 1.55;
}

.enhanced-service-content-list i {
    margin-top: 3px;
    color: #bc8316;
}

.enhanced-service-benefits-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.enhanced-service-benefit-card {
    padding: 24px;
    border: 1px solid #e7e1da;
    border-radius: 13px;
    background: #fbfaf8;
}

.enhanced-service-benefit-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 17px;
    border-radius: 11px;
    background: #211b21;
    color: #c89123;
}

.enhanced-service-benefit-card h3 {
    margin: 0 0 10px;
    color: #262027;
    font-size: 19px;
}

.enhanced-service-benefit-card p {
    margin: 0;
    color: #6b7584;
    font-size: 13px;
    line-height: 1.7;
}

.enhanced-service-steps {
    display: grid;
    gap: 15px;
}

.enhanced-service-step {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 18px;
    padding: 22px;
    border: 1px solid #e8e1da;
    border-radius: 12px;
    background: #fbfaf8;
}

.enhanced-service-step > span {
    color: #c08718;
    font-size: 27px;
    font-weight: 900;
}

.enhanced-service-step h3 {
    margin: 0 0 8px;
    color: #282228;
    font-size: 19px;
}

.enhanced-service-step p {
    margin: 0;
    color: #6a7585;
    font-size: 13px;
    line-height: 1.7;
}

.enhanced-service-inline-heading > p {
    margin: -8px 0 25px;
    color: #6b7584;
    line-height: 1.75;
}

.enhanced-service-ideal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.enhanced-service-ideal-grid > div {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 15px;
    border: 1px solid #e8e1db;
    border-radius: 10px;
    background: #fbfaf8;
    color: #505b6b;
    font-size: 13px;
}

.enhanced-service-ideal-grid i {
    color: #bc8316;
}

.enhanced-service-sidebar {
    position: sticky;
    top: 105px;
    display: grid;
    gap: 22px;
}

.enhanced-service-quote-card,
.enhanced-service-sidebar-card {
    overflow: hidden;
    border: 1px solid #e2dcd5;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 14px 38px rgba(30, 24, 31, 0.08);
}

.enhanced-service-quote-heading {
    padding: 25px;
    background: #211b21;
    color: #ffffff;
    text-align: center;
}

.enhanced-service-quote-heading > span,
.enhanced-service-sidebar-label {
    color: #ca9227;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

.enhanced-service-quote-heading h2 {
    margin: 8px 0 5px;
    font-size: 27px;
}

.enhanced-service-quote-heading p {
    margin: 0;
    color: #c5bec5;
    font-size: 11px;
}

.enhanced-service-quote-form {
    display: grid;
    gap: 14px;
    padding: 24px;
}

.enhanced-service-quote-form > div,
.enhanced-service-form-row > div {
    display: grid;
    gap: 6px;
}

.enhanced-service-form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.enhanced-service-quote-form label {
    color: #4e5a6c;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.enhanced-service-quote-form input,
.enhanced-service-quote-form select,
.enhanced-service-quote-form textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd7d0;
    border-radius: 7px;
    outline: none;
    background: #ffffff;
    color: #2c3545;
    font: inherit;
    box-sizing: border-box;
}

.enhanced-service-quote-form input,
.enhanced-service-quote-form select {
    min-height: 43px;
}

.enhanced-service-quote-form textarea {
    resize: vertical;
}

.enhanced-service-quote-form input:focus,
.enhanced-service-quote-form select:focus,
.enhanced-service-quote-form textarea:focus {
    border-color: #bd8519;
    box-shadow: 0 0 0 3px rgba(189, 133, 25, 0.1);
}

.enhanced-service-quote-form button {
    min-height: 49px;
    border: 0;
    border-radius: 7px;
    background: linear-gradient(135deg, #c89123, #ad7410);
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.enhanced-service-sidebar-card {
    padding: 25px;
}

.enhanced-service-sidebar-card h3 {
    margin: 8px 0 20px;
    color: #272127;
    font-size: 22px;
}

.enhanced-service-sidebar-checks {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.enhanced-service-sidebar-checks li {
    display: flex;
    gap: 9px;
    color: #5c6777;
    font-size: 12px;
}

.enhanced-service-sidebar-checks i {
    color: #bb8217;
}

.enhanced-service-sidebar-phone {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 22px;
    padding: 15px;
    border-radius: 9px;
    background: #211b21;
    color: #ffffff;
}

.enhanced-service-sidebar-phone > i {
    color: #cd952a;
    font-size: 19px;
}

.enhanced-service-sidebar-phone small,
.enhanced-service-sidebar-phone strong {
    display: block;
}

.enhanced-service-sidebar-phone small {
    color: #bbb4bb;
    font-size: 9px;
}

.enhanced-service-sidebar-phone strong {
    margin-top: 3px;
    font-size: 16px;
}

.enhanced-service-links {
    display: grid;
}

.enhanced-service-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 0;
    border-bottom: 1px solid #ece6e0;
    color: #515d6d;
    font-size: 12px;
    font-weight: 700;
}

.enhanced-service-links a:last-child {
    border-bottom: 0;
}

.enhanced-service-links a span {
    color: #bb8217;
}

.enhanced-service-fleet-section {
    padding: 100px 0;
    background: #ffffff;
}

.enhanced-service-centered-heading {
    max-width: 760px;
    margin: 0 auto 47px;
    text-align: center;
}

.enhanced-service-centered-heading h2 {
    margin: 0 0 13px;
    color: #211c22;
    font-size: clamp(36px, 4vw, 51px);
    line-height: 1.15;
}

.enhanced-service-centered-heading p {
    margin: 0;
    color: #6e7887;
    line-height: 1.75;
}

.enhanced-service-fleet-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.enhanced-service-fleet-card {
    overflow: hidden;
    border: 1px solid #e4ded7;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(31, 25, 32, 0.06);
}

.enhanced-service-fleet-image {
    height: 230px;
    padding: 15px;
    background: #f4f1ed;
}

.enhanced-service-fleet-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.enhanced-service-fleet-content {
    padding: 24px;
}

.enhanced-service-fleet-content h3 {
    margin: 0 0 10px;
    color: #282229;
    font-size: 21px;
}

.enhanced-service-fleet-content p {
    margin: 0 0 17px;
    color: #6b7584;
    font-size: 13px;
    line-height: 1.7;
}

.enhanced-service-fleet-content a {
    display: inline-flex;
    gap: 7px;
    color: #aa720d;
    font-size: 12px;
    font-weight: 900;
}

.enhanced-service-faq-section {
    padding: 100px 0;
    background: #f7f5f2;
}

.enhanced-service-faq-list {
    max-width: 900px;
    margin: 0 auto;
    display: grid;
    gap: 13px;
}

.enhanced-service-faq-item {
    overflow: hidden;
    border: 1px solid #e2dcd5;
    border-radius: 12px;
    background: #ffffff;
}

.enhanced-service-faq-item summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 23px;
    color: #282228;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    list-style: none;
}

.enhanced-service-faq-item summary::-webkit-details-marker {
    display: none;
}

.enhanced-service-faq-item summary i {
    color: #bc8316;
}

.enhanced-service-faq-item[open] summary i {
    transform: rotate(45deg);
}

.enhanced-service-faq-item > div {
    padding: 0 23px 21px;
}

.enhanced-service-faq-item p {
    margin: 0;
    color: #6b7584;
    font-size: 13px;
    line-height: 1.75;
}

.enhanced-service-final-cta {
    padding: 88px 0;
    background: #211b21;
    color: #ffffff;
}

.enhanced-service-final-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

.enhanced-service-final-inner h2 {
    max-width: 780px;
    margin: 0 0 13px;
    font-size: 42px;
    line-height: 1.15;
}

.enhanced-service-final-inner p {
    max-width: 720px;
    margin: 0;
    color: #c5bec5;
    line-height: 1.75;
}

.enhanced-service-final-actions {
    display: flex;
    flex-shrink: 0;
    gap: 12px;
}

@media (max-width: 1100px) {
    .enhanced-service-main-grid {
        grid-template-columns: 1fr;
    }

    .enhanced-service-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .enhanced-service-quote-card {
        grid-row: span 2;
    }

    .enhanced-service-intro-grid {
        grid-template-columns: 1fr;
    }

    .enhanced-service-intro-image {
        max-width: 700px;
    }
}

@media (max-width: 800px) {
    .enhanced-service-fleet-grid,
    .enhanced-service-benefits-grid {
        grid-template-columns: 1fr;
    }

    .enhanced-service-sidebar {
        grid-template-columns: 1fr;
    }

    .enhanced-service-quote-card {
        grid-row: auto;
    }

    .enhanced-service-final-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 650px) {
    .enhanced-service-hero {
        min-height: auto;
        padding: 130px 0 78px;
    }

    .enhanced-service-hero h1 {
        font-size: 45px;
    }

    .enhanced-service-hero-trust,
    .enhanced-service-final-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .enhanced-service-introduction,
    .enhanced-service-main-section,
    .enhanced-service-fleet-section,
    .enhanced-service-faq-section {
        padding: 70px 0;
    }

    .enhanced-service-intro-checks,
    .enhanced-service-content-list,
    .enhanced-service-ideal-grid,
    .enhanced-service-form-row {
        grid-template-columns: 1fr;
    }

    .enhanced-service-intro-image img {
        min-height: 340px;
    }

    .enhanced-service-image-badge {
        right: 15px;
        bottom: 15px;
    }

    .enhanced-service-content-block,
    .enhanced-service-inline-section {
        padding: 24px;
    }

    .enhanced-service-content-block h2,
    .enhanced-service-inline-heading h2 {
        font-size: 29px;
    }

    .enhanced-service-final-inner h2 {
        font-size: 34px;
    }
}
/* Dynamic service builder additions */
.enhanced-service-rich-content p { margin: 0 0 18px; color: #667181; font-size: 15px; line-height: 1.9; }
.enhanced-service-rich-content h2,
.enhanced-service-rich-content h3,
.enhanced-service-rich-content h4 { margin: 28px 0 14px; color: #211c22; line-height: 1.25; }
.enhanced-service-rich-content ul,
.enhanced-service-rich-content ol { margin: 18px 0 24px; padding-left: 24px; }
.enhanced-service-rich-content li { margin-bottom: 9px; color: #596577; line-height: 1.7; }
.enhanced-service-rich-content li::marker { color: #bd8418; }
.enhanced-service-image-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,.72fr); gap: 28px; align-items: center; }
.enhanced-service-image-row.image-left .enhanced-service-image-row-media { order: -1; }
.enhanced-service-image-row-media { overflow: hidden; border-radius: 14px; }
.enhanced-service-image-row-media img { width: 100%; min-height: 270px; display: block; object-fit: cover; }
.enhanced-service-benefit-image { width: 100%; height: 145px; display: block; object-fit: cover; border-radius: 10px; margin-bottom: 17px; }
@media (max-width: 700px) { .enhanced-service-image-row { grid-template-columns: 1fr; } .enhanced-service-image-row.image-left .enhanced-service-image-row-media { order: initial; } }

/* =========================================================
   SKY1 RESPONSIVE HEADER
========================================================= */

.sky-header {
    position: relative;
    z-index: 9999;
    width: 100%;
    background: #ffffff;
}

.sky-header-container {
    width: min(100% - 48px, 1420px);
    margin-inline: auto;
}

/* TOP BAR */

.sky-header-top {
    width: 100%;
    border-top: 3px solid #a27b34;
    background: #101b2d;
    color: #ffffff;
}

.sky-header-top-inner {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.sky-header-info,
.sky-header-contact {
    display: flex;
    align-items: center;
    gap: 26px;
}

.sky-header-info span,
.sky-header-contact a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none;
}

.sky-header-info i,
.sky-header-contact i {
    color: #c99229;
    font-size: 11px;
}

/* MAIN HEADER */

.sky-header-main {
    width: 100%;
    border-bottom: 1px solid #e5dfd6;
    background: #fbfaf7;
}

.sky-header-main-inner {
    min-height: 96px;
    display: flex;
    align-items: center;
    gap: 28px;
}

.sky-header-logo {
    width: 150px;
    flex: 0 0 150px;
}

.sky-header-logo img {
    width: 100%;
    max-height: 66px;
    display: block;
    object-fit: contain;
    object-position: left center;
}

/* NAVIGATION */

.sky-navigation {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 27px;
}

.sky-navigation > a,
.sky-nav-dropdown-toggle {
    position: relative;
    min-height: 96px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #1f2b3e;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
}

.sky-navigation > a::after,
.sky-nav-dropdown-toggle::after {
    position: absolute;
    right: 0;
    bottom: 20px;
    left: 0;
    height: 2px;
    background: #bd8419;
    content: "";
    opacity: 0;
    transform: scaleX(0);
    transition:
        opacity 0.2s ease,
        transform 0.2s ease;
}

.sky-navigation > a:hover,
.sky-navigation > a.active,
.sky-nav-dropdown:hover .sky-nav-dropdown-toggle {
    color: #ad7411;
}

.sky-navigation > a:hover::after,
.sky-navigation > a.active::after,
.sky-nav-dropdown:hover .sky-nav-dropdown-toggle::after {
    opacity: 1;
    transform: scaleX(1);
}

.sky-nav-dropdown {
    position: relative;
}

.sky-nav-dropdown-toggle i {
    font-size: 9px;
    transition: transform 0.2s ease;
}

.sky-nav-dropdown:hover .sky-nav-dropdown-toggle i {
    transform: rotate(180deg);
}

/* RELATIVE SUBMENU */

.sky-nav-submenu {
    position: absolute;
    top: calc(100% - 14px);
    left: 0;
    z-index: 100;
    width: 245px;
    padding: 10px;
    border: 1px solid #e4ddd3;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(15, 27, 44, 0.15);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(12px);
    transition:
        opacity 0.2s ease,
        visibility 0.2s ease,
        transform 0.2s ease;
}

.sky-nav-submenu-wide {
    width: 280px;
}

.sky-nav-dropdown:hover .sky-nav-submenu,
.sky-nav-dropdown:focus-within .sky-nav-submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.sky-nav-submenu a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 10px 13px;
    border-radius: 8px;
    color: #273348;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
}

.sky-nav-submenu a:hover {
    padding-left: 17px;
    background: #f7f3ec;
    color: #ac7410;
}

/* HEADER BUTTONS */

.sky-header-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.sky-header-call {
    width: 49px;
    height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #278f4b;
    color: #ffffff;
    font-size: 16px;
    text-decoration: none;
    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.sky-header-call:hover {
    background: #207a3f;
    transform: translateY(-2px);
}

.sky-header-book {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 17px;
    padding: 0 27px;
    border-radius: 999px;
    background: linear-gradient(135deg, #c9973f, #b77b18);
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(177, 118, 20, 0.23);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.sky-header-book:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(177, 118, 20, 0.3);
}

.sky-header-book span {
    font-size: 17px;
}

/* MOBILE TOGGLE */

.sky-mobile-toggle {
    display: none;
    width: 45px;
    height: 45px;
    padding: 9px;
    border: 1px solid #ddd6cc;
    border-radius: 9px;
    background: #ffffff;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
}

.sky-mobile-toggle span {
    display: block;
    width: 26px;
    height: 3px;
    background: #18263a;
    border-radius: 20px;
}
.sky-mobile-toggle span {
    width: 100%;
    height: 2px;
    display: block;
    margin: 5px 0;
    background: #18263a;
}

/* LAPTOP */

@media (max-width: 1280px) {
    .sky-header-container {
        width: min(100% - 30px, 1420px);
    }

    .sky-navigation {
        gap: 19px;
    }

    .sky-navigation > a,
    .sky-nav-dropdown-toggle {
        font-size: 13px;
    }

    .sky-header-logo {
        width: 130px;
        flex-basis: 130px;
    }

    .sky-header-book {
        padding: 0 21px;
    }
}

/* TABLET AND MOBILE MENU */

@media (max-width: 250px) {
    .sky-header-top-inner {
        min-height: 40px;
    }

    .sky-header-info span:nth-child(2),
    .sky-header-info span:nth-child(3) {
        display: none;
    }

    .sky-header-contact a:first-child {
        display: none;
    }

    .sky-header-main-inner {
        position: relative;
        min-height: 80px;
    }


    .sky-header-actions {
        display: none;
    }

    .sky-navigation {
        position: absolute;
        top: 100%;
        right: -15px;
        left: -15px;
        z-index: 999;
        display: none;
        align-items: stretch;
        flex-direction: column;
        gap: 0;
        padding: 13px 20px 22px;
        border-top: 1px solid #e5dfd6;
        background: #ffffff;
        box-shadow: 0 20px 40px rgba(15, 27, 44, 0.16);
    }

    .sky-navigation.is-open {
        display: flex;
    }

    .sky-navigation > a,
    .sky-nav-dropdown-toggle {
        width: 100%;
        min-height: auto;
        justify-content: space-between;
        padding: 14px 3px;
    }

    .sky-navigation > a::after,
    .sky-nav-dropdown-toggle::after {
        display: none;
    }

    .sky-nav-submenu,
    .sky-nav-submenu-wide {
        position: static;
        width: 100%;
        display: none;
        padding: 0 0 10px 15px;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .sky-nav-dropdown.is-open .sky-nav-submenu {
        display: block;
    }

    .sky-nav-submenu a {
        min-height: 39px;
        padding: 9px 12px;
    }
}

@media (max-width: 650px) {

    .sky-header-container {
        width: min(100% - 24px, 1420px);
    }

    .sky-header-main-inner {
        min-height: 74px;
    }

    .sky-header-logo {
        width: 122px;
        flex-basis: 122px;
    }
}

.sky-header {
    position: sticky;
    top: 0;
    z-index: 99999;
    width: 100%;
    background: #ffffff;
}
/* =========================================================
   DYNAMIC BLOG TEMPLATE
========================================================= */

.blog-index-page,
.blog-detail-page {
    background: #ffffff;
}

.blog-index-hero,
.blog-detail-hero {
    padding: 150px 0 95px;
    background:
        radial-gradient(circle at 80% 20%, rgba(195, 141, 35, 0.13), transparent 32%),
        linear-gradient(135deg, #121a29 0%, #202b3e 58%, #121a29 100%);
    color: #ffffff;
}

.blog-index-hero-inner {
    max-width: 850px;
    text-align: center;
}

.blog-index-hero span,
.blog-detail-meta > span:first-child,
.blog-section-label,
.blog-list-heading > span,
.blog-related-heading > span,
.blog-detail-cta-inner > div:first-child > span,
.blog-sidebar-label,
.blog-sidebar-quote-card > span {
    display: inline-block;
    margin-bottom: 14px;
    color: #d19a31;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.blog-index-hero h1,
.blog-detail-hero h1 {
    margin: 0 0 20px;
    font-size: clamp(44px, 6vw, 72px);
    line-height: 1.08;
}

.blog-index-hero p,
.blog-detail-hero-inner > p {
    max-width: 760px;
    margin: 0 auto;
    color: #d7dce5;
    font-size: 17px;
    line-height: 1.8;
}

.blog-featured-section,
.blog-list-section,
.blog-related-section {
    padding: 95px 0;
}

.blog-featured-section {
    background: #f7f5f1;
}

.blog-featured-post {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(380px, 0.9fr);
    overflow: hidden;
    border: 1px solid #e5dfd6;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 24px 65px rgba(24, 31, 45, 0.11);
}

.blog-featured-image {
    min-height: 485px;
    background: #ede9e2;
}

.blog-featured-image img,
.blog-post-image img,
.blog-related-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.blog-featured-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 48px;
}

.blog-featured-content h2,
.blog-post-card-content h2,
.blog-related-content h3 {
    margin: 0;
    color: #1f293b;
    line-height: 1.25;
}

.blog-featured-content h2 {
    margin-bottom: 18px;
    font-size: 36px;
}

.blog-featured-content h2 a,
.blog-post-card-content h2 a,
.blog-related-content h3 a {
    color: inherit;
    text-decoration: none;
}

.blog-featured-content > p,
.blog-post-card-content > p {
    color: #687487;
    line-height: 1.75;
}

.blog-post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.blog-post-meta span {
    padding: 6px 10px;
    border-radius: 999px;
    background: #f4efe6;
    color: #a87212;
    font-size: 10px;
    font-weight: 800;
}

.blog-featured-footer,
.blog-post-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: auto;
    padding-top: 24px;
}

.blog-featured-footer strong,
.blog-featured-footer span,
.blog-post-card-footer strong,
.blog-post-card-footer span {
    display: block;
}

.blog-featured-footer strong,
.blog-post-card-footer strong {
    color: #253146;
    font-size: 12px;
}

.blog-featured-footer > div > span,
.blog-post-card-footer > div > span {
    margin-top: 4px;
    color: #8b96a6;
    font-size: 10px;
}

.blog-read-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #a76e09;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.blog-list-heading,
.blog-related-heading {
    max-width: 760px;
    margin: 0 auto 45px;
    text-align: center;
}

.blog-list-heading h2,
.blog-related-heading h2 {
    margin: 0 0 12px;
    color: #202a3b;
    font-size: 46px;
}

.blog-list-heading p,
.blog-related-heading p {
    margin: 0;
    color: #737e8e;
    line-height: 1.75;
}

.blog-post-grid,
.blog-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 27px;
}

.blog-post-card,
.blog-related-card {
    overflow: hidden;
    border: 1px solid #e4ded6;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 13px 38px rgba(25, 32, 45, 0.07);
}

.blog-post-image,
.blog-related-image {
    height: 235px;
    display: block;
    background: #f1ede7;
}

.blog-image-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bd851d;
    font-size: 38px;
}

.blog-post-card-content,
.blog-related-content {
    padding: 25px;
}

.blog-post-card-content h2 {
    margin-bottom: 13px;
    font-size: 22px;
}

.blog-post-card-content > p {
    margin: 0 0 22px;
    font-size: 13px;
}

.blog-detail-hero-inner {
    max-width: 980px;
}

.blog-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 28px;
    color: #aeb7c5;
    font-size: 11px;
}

.blog-breadcrumb a {
    color: #d8dde5;
    text-decoration: none;
}

.blog-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
    margin-bottom: 15px;
}

.blog-detail-meta > span {
    color: #d9dee6;
    font-size: 12px;
}

.blog-detail-meta > span:first-child {
    margin: 0;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(209, 154, 49, 0.14);
}

.blog-detail-author-row {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 28px;
}

.blog-author-avatar {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #d09a31, #a96e08);
    color: #ffffff;
    font-weight: 900;
}

.blog-detail-author-row strong,
.blog-detail-author-row span {
    display: block;
}

.blog-detail-author-row span {
    margin-top: 4px;
    color: #adb7c5;
    font-size: 11px;
}

.blog-detail-featured-wrap {
    background: #f7f5f1;
}

.blog-detail-featured-image {
    margin: 0;
    transform: translateY(55px);
    overflow: hidden;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 24px 60px rgba(20, 28, 42, 0.16);
}

.blog-detail-featured-image img {
    width: 100%;
    max-height: 610px;
    display: block;
    object-fit: cover;
}

.blog-detail-main-section {
    padding: 125px 0 100px;
    background: #f7f5f1;
}

.blog-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 350px;
    gap: 38px;
    align-items: start;
}

.blog-article-card {
    overflow: hidden;
    border: 1px solid #e2dcd4;
    border-radius: 17px;
    background: #ffffff;
    box-shadow: 0 14px 40px rgba(24, 31, 45, 0.07);
}

.blog-share-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 17px 34px;
    border-bottom: 1px solid #ece6df;
    background: #fbfaf8;
}

.blog-share-strip > span {
    color: #697486;
    font-size: 11px;
    font-weight: 800;
}

.blog-share-strip > div {
    display: flex;
    gap: 8px;
}

.blog-share-strip a {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #172338;
    color: #ffffff;
    text-decoration: none;
}

.blog-article-content {
    padding: 42px;
    color: #566274;
    font-size: 16px;
    line-height: 1.88;
}

.blog-article-content > *:first-child {
    margin-top: 0;
}

.blog-article-content h2,
.blog-article-content h3,
.blog-article-content h4 {
    color: #202a3b;
    line-height: 1.28;
}

.blog-article-content h2 {
    margin: 38px 0 17px;
    font-size: 32px;
}

.blog-article-content h3 {
    margin: 30px 0 14px;
    font-size: 25px;
}

.blog-article-content p {
    margin: 0 0 22px;
}

.blog-article-content ul,
.blog-article-content ol {
    margin: 0 0 24px;
    padding-left: 26px;
}

.blog-article-content li {
    margin-bottom: 10px;
}

.blog-article-content li::marker {
    color: #bc8317;
}

.blog-article-content blockquote {
    margin: 30px 0;
    padding: 24px 28px;
    border-left: 4px solid #c28a1c;
    border-radius: 0 12px 12px 0;
    background: #f8f5ef;
    color: #39475a;
    font-size: 18px;
    font-style: italic;
}

.blog-article-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
}

.blog-article-content a {
    color: #a66e09;
    font-weight: 700;
}

.blog-article-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 25px 34px;
    border-top: 1px solid #ebe5de;
    background: #fbfaf8;
}

.blog-article-footer span,
.blog-article-footer strong {
    display: block;
}

.blog-article-footer span {
    color: #8c96a5;
    font-size: 10px;
}

.blog-article-footer strong {
    margin-top: 3px;
    color: #253146;
}

.blog-article-footer > a {
    color: #a66e09;
    font-size: 12px;
    font-weight: 900;
}

.blog-detail-sidebar {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 20px;
}

.blog-sidebar-quote-card,
.blog-sidebar-card {
    padding: 26px;
    border: 1px solid #e1dbd3;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 13px 35px rgba(24, 31, 45, 0.07);
}

.blog-sidebar-quote-card {
    background: linear-gradient(145deg, #152033, #202d43);
    color: #ffffff;
}

.blog-sidebar-quote-card h2 {
    margin: 8px 0 12px;
    font-size: 27px;
}

.blog-sidebar-quote-card p {
    color: #c5ccd6;
    font-size: 13px;
    line-height: 1.7;
}

.blog-sidebar-phone {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
    border: 1px solid rgba(255,255,255,0.13);
    border-radius: 9px;
    color: #ffffff;
    text-decoration: none;
}

.blog-sidebar-phone i {
    color: #d09a31;
}

.blog-sidebar-phone small,
.blog-sidebar-phone strong {
    display: block;
}

.blog-sidebar-phone small {
    color: #aeb8c6;
    font-size: 9px;
}

.blog-sidebar-phone strong {
    margin-top: 3px;
}

.blog-sidebar-card h3 {
    margin: 8px 0 18px;
    color: #253045;
    font-size: 21px;
}

.blog-sidebar-latest-list,
.blog-sidebar-categories {
    display: grid;
}

.blog-sidebar-latest-list a,
.blog-sidebar-categories a {
    padding: 12px 0;
    border-bottom: 1px solid #ebe5de;
    color: #435065;
    text-decoration: none;
}

.blog-sidebar-latest-list a:last-child,
.blog-sidebar-categories a:last-child {
    border-bottom: 0;
}

.blog-sidebar-latest-list strong,
.blog-sidebar-latest-list span {
    display: block;
}

.blog-sidebar-latest-list strong {
    font-size: 12px;
    line-height: 1.45;
}

.blog-sidebar-latest-list span {
    margin-top: 5px;
    color: #8b95a5;
    font-size: 9px;
}

.blog-sidebar-categories a {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    font-size: 12px;
    font-weight: 700;
}

.blog-sidebar-categories strong {
    min-width: 25px;
    padding: 3px 6px;
    border-radius: 999px;
    background: #f3eee6;
    color: #a66e09;
    text-align: center;
}

.blog-sidebar-benefits ul {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.blog-sidebar-benefits li {
    display: flex;
    gap: 9px;
    color: #5b6677;
    font-size: 12px;
}

.blog-sidebar-benefits i {
    color: #b98016;
}

.blog-related-section {
    background: #ffffff;
}

.blog-related-content > span {
    color: #a87212;
    font-size: 10px;
    font-weight: 800;
}

.blog-related-content h3 {
    margin: 9px 0 17px;
    font-size: 20px;
}

.blog-detail-cta {
    padding: 85px 0;
    background: #121d30;
    color: #ffffff;
}

.blog-detail-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;
}

.blog-detail-cta h2 {
    max-width: 760px;
    margin: 0 0 12px;
    font-size: 40px;
}

.blog-detail-cta p {
    max-width: 700px;
    margin: 0;
    color: #bec7d3;
    line-height: 1.75;
}

.blog-detail-cta-inner > div:last-child {
    display: flex;
    flex-shrink: 0;
    gap: 12px;
}

.blog-not-found-page {
    min-height: 70vh;
    display: flex;
    align-items: center;
    text-align: center;
}

.blog-not-found-page span {
    color: #bf8518;
    font-size: 52px;
    font-weight: 900;
}

.blog-not-found-page h1 {
    margin: 5px 0 12px;
    color: #202a3b;
    font-size: 48px;
}

.blog-not-found-page p {
    margin-bottom: 25px;
    color: #6d7888;
}

@media (max-width: 1050px) {
    .blog-featured-post,
    .blog-detail-grid {
        grid-template-columns: 1fr;
    }

    .blog-detail-sidebar {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .blog-sidebar-quote-card {
        grid-row: span 2;
    }
}

@media (max-width: 800px) {
    .blog-post-grid,
    .blog-related-grid,
    .blog-detail-sidebar {
        grid-template-columns: 1fr;
    }

    .blog-sidebar-quote-card {
        grid-row: auto;
    }

    .blog-detail-cta-inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 650px) {
    .blog-index-hero,
    .blog-detail-hero {
        padding: 120px 0 70px;
    }

    .blog-index-hero h1,
    .blog-detail-hero h1 {
        font-size: 40px;
    }

    .blog-featured-section,
    .blog-list-section,
    .blog-related-section {
        padding: 65px 0;
    }

    .blog-featured-post {
        border-radius: 15px;
    }

    .blog-featured-image {
        min-height: 260px;
    }

    .blog-featured-content {
        padding: 27px;
    }

    .blog-featured-content h2 {
        font-size: 27px;
    }

    .blog-featured-footer,
    .blog-post-card-footer,
    .blog-article-footer,
    .blog-detail-cta-inner > div:last-child {
        align-items: flex-start;
        flex-direction: column;
    }

    .blog-detail-featured-image {
        transform: translateY(30px);
    }

    .blog-detail-main-section {
        padding: 80px 0 65px;
    }

    .blog-share-strip,
    .blog-article-footer {
        padding: 17px 22px;
    }

    .blog-article-content {
        padding: 26px 22px;
        font-size: 15px;
    }

    .blog-article-content h2 {
        font-size: 27px;
    }

    .blog-detail-cta {
        padding: 65px 0;
    }

    .blog-detail-cta h2 {
        font-size: 32px;
    }
}
