/* =========================================================
   GTRIP VEHICLES PAGE
   ========================================================= */

.gtrip-vehicles-page{
    background:#f8fafc;
    color:#111827;
}


/* =========================================================
   HERO
   ========================================================= */

.gtrip-vehicles-page .gtrip-page-hero{
    padding:90px 0 70px;
}

.gtrip-vehicles-page .gtrip-page-hero .gtrip-container{
    max-width:1180px;
}

.gtrip-vehicles-page .gtrip-badge{
    display:inline-block;
    margin-bottom:20px;

    font-size:14px;
    font-weight:500;
    color:#374151;
}

.gtrip-vehicles-page .gtrip-page-hero h1{
    margin:0 0 18px;

    font-size:52px;
    line-height:1.15;
    font-weight:700;
    letter-spacing:-1.5px;
    color:#111827;
}

.gtrip-vehicles-page .gtrip-page-hero p{
    margin:0;

    max-width:650px;

    font-size:17px;
    line-height:1.7;
    color:#6b7280;
}


/* =========================================================
   SECTIONS
   ========================================================= */

.gtrip-vehicles-page .gtrip-section{
    padding:70px 0;
}

.gtrip-vehicles-page .gtrip-container{
    max-width:1180px;
    margin:0 auto;
}


/* =========================================================
   COUNTRY SECTION
   ========================================================= */

.gtrip-vehicles-page .gtrip-section-title{
    margin:0 0 10px;

    text-align:center;

    font-size:36px;
    line-height:1.2;
    font-weight:600;
    letter-spacing:-.8px;

    color:#111827;
}

.gtrip-vehicles-page .gtrip-section-title p{
    max-width:620px;
    margin:10px auto 0;

    text-align:center;

    font-size:16px !important;
    font-weight:400 !important;
    line-height:1.7;

    color:#6b7280;
}


/* =========================================================
   COUNTRY TABS
   ========================================================= */

.vehicle-country-tabs{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;

    margin:30px auto 0;
}

.vehicle-country-tab{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    min-height:46px;
    padding:0 20px;

    border:1px solid #e5e7eb;
    border-radius:12px;

    background:#ffffff;

    color:#374151;

    font-size:15px;
    font-weight:600;

    text-decoration:none;

    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease,
        transform .2s ease;
}

.vehicle-country-tab:hover{
    border-color:#2ec4b6;
    color:#0f766e;
    transform:translateY(-1px);
}

.vehicle-country-tab.active{
    background:#2ec4b6;
    border-color:#2ec4b6;
    color:#ffffff;
}

.vehicle-country-tab.coming-soon{
    background:#f9fafb;
    border-color:#e5e7eb;
    color:#9ca3af;

    cursor:not-allowed;
}

.vehicle-country-tab small{
    font-size:11px;
    font-weight:500;
    opacity:.8;
}

.vehicle-country-flag{
    font-size:18px;
}

/* =========================================================
   AVAILABLE VEHICLES
   ========================================================= */

.gtrip-vehicles-page .gtrip-grid-2{
    display:grid;

    grid-template-columns:repeat(3, minmax(0,1fr));

    gap:24px;

    margin-top:40px;
}


/* =========================================================
   VEHICLE CARD
   ========================================================= */

.gtrip-vehicle-card{
    background:#ffffff;

    border:1px solid #e5e7eb;
    border-radius:20px;

    overflow:hidden;

    box-shadow:0 4px 16px rgba(15,23,42,.04);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.gtrip-vehicle-card:hover{
    transform:translateY(-4px);

    box-shadow:
        0 18px 40px rgba(15,23,42,.09);
}


/* =========================================================
   VEHICLE IMAGE
   ========================================================= */

.gtrip-vehicle-card img{
    display:block;

    width:100%;
    height:210px;

    object-fit:contain;

    padding:20px;

    background:#ffffff;
}


/* =========================================================
   VEHICLE CONTENT
   ========================================================= */

.gtrip-vehicle-content{
    padding:22px;
}

.gtrip-vehicle-content h3{
    margin:0 0 10px;

    font-size:22px;
    line-height:1.3;
    font-weight:700;

    color:#111827;
}

.gtrip-vehicle-content p{
    margin:0 0 14px;

    font-size:15px;
    line-height:1.7;

    color:#6b7280;
}


/* =========================================================
   VEHICLE META
   ========================================================= */

.gtrip-vehicle-meta{
    display:inline-flex;
    align-items:center;

    padding:7px 12px;

    margin-bottom:14px;

    border-radius:999px;

    background:#ecfeff;
    color:#0f766e;

    font-size:13px;
    font-weight:600;
}


/* =========================================================
   PRICE
   ========================================================= */

.gtrip-price-from{
    margin:12px 0 0;

    font-size:16px;
    line-height:1.4;
    font-weight:700;

    color:#16a085;
}

.gtrip-price-note{
    margin-top:4px;

    font-size:12px;

    color:#9ca3af;
}


/* =========================================================
   NO VEHICLES
   ========================================================= */

.gtrip-no-vehicles{
    padding:50px 20px;

    text-align:center;

    color:#9ca3af;
}

/* =========================================================
   VEHICLE CATEGORY CARDS — DESKTOP
========================================================= */

.vehicle-category-section{
    padding-top:50px;
}

.vehicle-category-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:18px;
    margin-top:30px;
}

.vehicle-category-card{
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 3px 12px rgba(15,23,42,.05);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.vehicle-category-card:hover{
    transform:translateY(-3px);

    border-color:#2ec4b6;

    box-shadow:
        0 12px 28px rgba(15,23,42,.09);
}

.vehicle-category-image{
    display:block;

    height:160px;

    background:#ffffff;

    text-decoration:none;

    overflow:hidden;
}

.vehicle-category-image img{
    display:block;

    width:100%;
    height:100%;

   object-fit:contain;

    padding:0;
}

.vehicle-category-card:hover
.vehicle-category-image img{
    transform:scale(1.03);
}

.vehicle-category-content{
    padding:16px 18px 18px;
}

.vehicle-category-content h3{
    margin:0 0 6px;

    font-size:20px;
    line-height:1.3;
    font-weight:700;

    color:#111827;
}

.vehicle-category-subtitle{
    margin:0 0 12px;

    font-size:14px;
    line-height:1.5;

    color:#6b7280;
}

.vehicle-category-meta{
    display:flex;
    align-items:center;
    gap:18px;

    font-size:13px;
    line-height:1.4;
    font-weight:500;

    color:#475569;
}

.vehicle-category-meta span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    white-space:nowrap;
}

/* =========================================================
   VEHICLE DETAIL — OVERVIEW
========================================================= */

.vehicle-detail-section{
    padding:60px 0 30px;
}

.vehicle-detail{
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 8px 30px rgba(15,23,42,.05);
}


/* =========================================================
VEHICLE OVERVIEW — DESKTOP GALLERY
========================================================= */

.vehicle-detail-overview{
    display:grid;
    grid-template-columns:1fr minmax(0, 1.25fr) 180px;
    gap:16px;
    padding:42px;
    align-items:start;
}


/* INFO */

.vehicle-detail-info{
    grid-column:1;
    grid-row:1;
}


/* MAIN IMAGE */

.vehicle-detail-main-image{
    grid-column:2;
    grid-row:1;

    width:100%;
    height:320px;

    overflow:hidden;
    border-radius:18px;
}

.vehicle-detail-main-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}


/* THUMBNAILS */

.vehicle-detail-gallery{
    grid-column:3;
    grid-row:1;

    display:flex;
    flex-direction:column;

    gap:12px;

    width:180px;
}


.vehicle-detail-gallery-item{
    width:180px;
    height:105px;

    overflow:hidden;
    border-radius:12px;
}


.vehicle-detail-gallery-item img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}

/* =========================================================
   INFO
========================================================= */

.vehicle-detail-info h2{
    margin:0 0 8px;

    font-size:36px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:-1px;

    color:#111827;
}

.vehicle-detail-info h3{
    margin:0 0 18px;

    font-size:20px;
    line-height:1.4;
    font-weight:500;

    color:#6b7280;
}

.vehicle-detail-description{
    margin:0 0 24px;

    font-size:16px;
    line-height:1.7;

    color:#4b5563;
}


/* =========================================================
   META
========================================================= */

.vehicle-detail-meta{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.vehicle-detail-meta span{
    display:inline-flex;
    align-items:center;
    gap:6px;

    padding:9px 14px;

    border-radius:999px;

    background:#f0fdfa;
    color:#0f766e;

    font-size:14px;
    font-weight:600;
}


/* =========================================================
   MAIN IMAGE
========================================================= */

.vehicle-gallery{
    display:grid;
    grid-template-columns:minmax(0,1fr) 150px;
    gap:14px;
}

.vehicle-detail-main-image{
    width:100%;
    height:340px;

    overflow:hidden;
    border-radius:18px;

    background:#f8fafc;
}

.vehicle-detail-main-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}

/* =========================================================
   THUMBNAILS
========================================================= */

.vehicle-gallery-thumbs{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.vehicle-gallery-thumb{
    width:100%;
    height:94px;

    overflow:hidden;

    border-radius:12px;

    background:#f8fafc;

    border:1px solid #e5e7eb;
}

.vehicle-gallery-thumb img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
}

/* =========================================================
VEHICLE DETAIL TABS — DESKTOP
========================================================= */

.vehicle-detail-tabs{
    display:flex;
    align-items:center;
    justify-content:flex-start;

    gap:0;

    margin-top:36px;

    border-top:1px solid #e5e7eb;
    border-bottom:1px solid #e5e7eb;

    background:#ffffff;
}

.vehicle-detail-tabs a{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;

    min-height:64px;
    padding:0 28px;

    color:#374151;

    font-size:14px;
    font-weight:600;

    text-decoration:none;

    transition:
        color .2s ease,
        background .2s ease;
}

.vehicle-detail-tabs a:hover{
    color:#0f766e;
    background:#f8fafc;
}

.vehicle-detail-tabs a.active{
    color:#0f766e;
}

.vehicle-detail-tabs a.active::after{
    content:"";

    position:absolute;

    left:20px;
    right:20px;
    bottom:-1px;

    height:3px;

    background:#2ec4b6;

    border-radius:3px 3px 0 0;
}



/* =========================================================
LUGGAGE SPACE — DESKTOP
========================================================= */

#vehicle-luggage-space .vehicle-detail-panel img{
    width:100%;
    max-width:760px;
    max-height:460px;

    margin:0 auto;

    object-fit:contain;
}

/* =========================================================
   VEHICLE DETAIL CONTENT — DESKTOP FINAL PASS
========================================================= */


/* =========================================================
   DETAIL PANELS
========================================================= */

.vehicle-detail-panel{
    margin-top:24px;

    background:#ffffff;

    border:1px solid #e5e7eb;
    border-radius:20px;

    overflow:hidden;

    box-shadow:0 4px 18px rgba(15,23,42,.04);
}


/* =========================================================
   PANEL TITLE
========================================================= */

.vehicle-detail-panel h3{
    margin:0;

    padding:24px 28px 10px;

    font-size:20px;
    line-height:1.3;
    font-weight:700;

    color:#111827;
}


/* =========================================================
   PANEL IMAGE
========================================================= */

.vehicle-detail-panel img{
    display:block;

    width:100%;
    max-width:760px;
    max-height:460px;

    margin:0 auto;

    object-fit:contain;

    background:#ffffff;
}



/* =========================================================
   SEAT LAYOUT
========================================================= */

#vehicle-seat-layout{
    margin-top:24px;
}


/* =========================================================
   LUGGAGE SPACE
========================================================= */

#vehicle-luggage-space{
    margin-top:24px;
}

#vehicle-luggage-space img{
    max-width:760px;
    max-height:460px;
}


/* =========================================================
   VEHICLE INFORMATION
========================================================= */

#vehicle-information{
    margin-top:24px;

    padding:0;

    background:#ffffff;

    border:1px solid #e5e7eb;
    border-radius:20px;

    box-shadow:0 4px 18px rgba(15,23,42,.04);

    overflow:hidden;
}

#vehicle-information h3{
    margin:0;

    padding:24px 28px 20px;

    font-size:20px;
    line-height:1.3;
    font-weight:700;

    color:#111827;
}


/* =========================================================
   INFORMATION GRID
========================================================= */

#vehicle-information > div{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));

    gap:0;

    padding:0 28px 28px;
}


/* =========================================================
   INFORMATION ITEM
========================================================= */

#vehicle-information > div > div{
    min-height:90px;

    padding:16px 20px;

    border-top:1px solid #e5e7eb;

    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:6px;
}

#vehicle-information > div > div:not(:last-child){
    border-right:1px solid #e5e7eb;
}


/* ICON */

#vehicle-information strong{
    display:block;

    font-size:20px;
    line-height:1;

    color:#0f9f92;
}


/* LABEL */

#vehicle-information span:first-of-type{
    font-size:13px;
    font-weight:500;

    color:#6b7280;
}


/* VALUE */

#vehicle-information span:last-of-type{
    font-size:15px;
    line-height:1.5;
    font-weight:600;

    color:#111827;
}



/* =========================================================
   CLEAN UP RAW DETAIL TEXT
========================================================= */

.vehicle-detail-panel .vehicle-detail-layout-text,
.vehicle-detail-panel .vehicle-detail-luggage-text{
    padding:0 28px 24px;

    font-size:14px;
    color:#6b7280;
}


/* =========================================================
   DETAIL SECTION SPACING
========================================================= */

.vehicle-detail-section{
    padding-bottom:70px;
}


/* =========================================================
   FINAL NOTE / FOOTER GAP
========================================================= */

.vehicle-detail-section + footer{
    margin-top:0;
}

/* =========================================================
   VEHICLE GALLERY — ACTIVE THUMBNAIL
========================================================= */

.vehicle-detail-gallery-item{
    border:2px solid transparent;
}

.vehicle-detail-gallery-item.active{
    border-color:#2ec4b6;
    box-shadow:0 0 0 2px rgba(46,196,182,.12);
}

/* =========================================================
   VEHICLE DETAIL DESCRIPTION
========================================================= */

.vehicle-detail-panel-text{
    margin: 18px 28px 4px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    color: #111827;
}

.vehicle-detail-panel-description{
    margin: 0 28px 20px;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    color: #64748b;
}


/* =========================================================
   VEHICLE DETAIL NOTICE
========================================================= */

.vehicle-detail-notice{
    display:flex;
    align-items:flex-start;
    gap:6px;

    margin:0 28px 24px;
    padding:14px 16px;

    border:1px solid #dbeafe;
    border-radius:10px;

    background:#eff6ff;
}

.vehicle-detail-notice > span{
    flex:none;

    font-size:16px;
    line-height:1.5;

    color:#2563eb;
}

.vehicle-detail-notice > div{
    flex:1;
}

.vehicle-detail-notice p{
    margin:0;
    padding:0;

    font-size:16px;
    line-height:1.3;

    color:#1f2937;
}

.vehicle-detail-notice p + p{
    margin-top:4px;
}
/* =========================================================
   SUITABLE FOR
========================================================= */

.vehicle-detail-suitable{
    display:inline-flex;
    align-items:center;
    gap:10px;

    margin-top:18px;
    padding:10px 16px;

    border-radius:999px;

    background:#e6f7f4;

    border:1px solid #0f766e;

    color:#0f766e;

    font-size:14px;
    line-height:1.5;
}


/* LABEL */

.vehicle-detail-suitable strong{
    font-size:14px;
    font-weight:700;

    color:#0f766e;
}


/* VALUE */

.vehicle-detail-suitable span{
    font-size:14px;
    font-weight:500;

    color:#115e59;
}




/* =========================================================
   GENERAL VEHICLE NOTICE
   ========================================================= */

.vehicle-general-notice{
    display:flex;
    align-items:flex-start;
    gap:6px;

    width:100%;
    box-sizing:border-box;

    margin:20px 0 0;
    padding:14px 16px;

    border:1px solid #e5e7eb;
    border-radius:10px;

    background:#f3f4f6;
}

.vehicle-general-notice > span{
    flex:none;

    font-size:16px;
    line-height:1.5;

    color:#2563eb;
}

.vehicle-general-notice > div{
    flex:1;
}

.vehicle-general-notice p{
    margin:0;
    padding:0;

    font-size:16px;
    line-height:1.4;

    color:#1f2937;
}

.vehicle-general-notice p + p{
    margin-top:4px;
}
