/* ========================================
   VISIT ETHIOPIA HERO
======================================== */
.site-header + .ethiopia-hero {
    margin-top: 0;
}

.ethiopia-hero {
    position: relative;
    min-height: 520px;
    width: 100%;
    background-image:
        linear-gradient(
            90deg,
            rgba(18, 31, 30, 0.82),
            rgba(18, 31, 30, 0.58)
        ),
        url("https://triplur.co.uk/uploads/tours/bd2100102d1fc65fa6b8941e.png");
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.ethiopia-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0.12) 0%,
        rgba(18, 31, 30, 0.20) 45%,
        rgba(18, 31, 30, 0.72) 100%
    );
}

.ethiopia-hero-container {
    position: relative;
    z-index: 2;
    width: min(1170px, calc(100% - 76px));
    margin: 0 auto;
    padding: 90px 0 55px;
}

.ethiopia-eyebrow {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 5px;
    color: #c0e9df;
    font-size: 12px;
    font-weight: 800;
   letter-spacing: .18em;
}

.ethiopia-eyebrow::before {
    content: "";
    width: 12px;
    height: 1px;
    background: var(--teal-green);
}

.ethiopia-hero h1 {
    margin: 0;
    color: #fff;
   font-size: clamp(4rem, 8vw, 128px);
   font-family: Georgia, 'Times New Roman', Times, serif;
    line-height: 0.95;
    font-weight: 600;
}

.ethiopia-hero-highlight {
    margin-top: 0;
    color: var(--teal-green);
    font-size: 128px;
    font-family: Georgia, 'Times New Roman', Times, serif;
    line-height: 0.84;
    font-style: italic;
    font-weight: 500;
}

.ethiopia-hero p {
    max-width: 650px;
    margin: 29px 10px 24px;
    color: #fff;
  line-height: 1.75;
}

.ethiopia-hero-buttons {
    display: flex;
    align-items: center;
    gap: 12px;
}

.ethiopia-primary-btn,
.ethiopia-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 10px 20px;
    border-radius: 24px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 800;
    transition: all 0.3s ease;
}

.ethiopia-primary-btn {
    background: var(--teal-green);
    color: #fff;
}

.ethiopia-primary-btn:hover {
    background: var(--dark-teal);
}

.ethiopia-secondary-btn {
    border: 1px solid rgba(255, 255, 255, 0.8);
    color: #fff;
    background: transparent;
}

.ethiopia-secondary-btn:hover {
    background: #fff;
    color: var(--dark-teal);
}


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

.ethiopia-stats {
    width: 80%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 45px;
}

.ethiopia-stat {
    border-top: 1px solid rgba(255, 255, 255, 0.35);
    padding-top: 25px;
}

.ethiopia-stat strong {
    display: block;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    font-weight: 600;
    padding-bottom: 10px;
    font-family: Georgia, 'Times New Roman', Times, serif
}

.ethiopia-stat span {
    display: block;
    margin-top: 4px;
    color: rgb(255 255 255 / 66%);
    font-size: 11px;
    font-family: Arial, Helvetica, sans-serif;
    letter-spacing: 0.3px;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .ethiopia-hero {
        min-height: 600px;
    }

    .ethiopia-hero-container {
        width: calc(100% - 50px);
        padding: 110px 0 55px;
    }

    .ethiopia-hero h1,
    .ethiopia-hero-highlight {
        font-size: 65px;
    }

    .ethiopia-stats {
        max-width: 100%;
        grid-template-columns: repeat(3, 1fr);
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .ethiopia-hero {
        min-height: 650px;
        background-position: center;
    }

    .ethiopia-hero-container {
        width: calc(100% - 30px);
        padding: 105px 0 45px;
    }

    .ethiopia-hero h1,
    .ethiopia-hero-highlight {
        font-size: 48px;
    }

    .ethiopia-hero p {
        max-width: 100%;
    }

    .ethiopia-stats {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }

    .ethiopia-stat strong {
        font-size: 11px;
    }
}



/* ========================================
   ETHIOPIA GUIDE SECTION
======================================== */

.ethiopia-guide-section {
    width: 100%;
    background: #fff;
    padding: 48px 20px 30px;
}

.ethiopia-guide-container {
    width: min(1170px, calc(100% - 76px));
    margin: 0 auto;
}

.ethiopia-guide-grid {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 75px;
}


/* ========================================
   LEFT SIDE
======================================== */

.ethiopia-guide-left {
    padding-top: 2px;
}

.guide-eyebrow {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 8px;
    color: var(--etw-deep);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
       font-weight: 800;
    letter-spacing: .18em;
}

.guide-eyebrow::before {
    content: "";
    width: 12px;
    height: 1px;
    background: var(--teal-green);
}

.ethiopia-guide-left h2 {
    color: var(--dark-teal);
   font-family: Georgia, 'Times New Roman', Times, serif;
    font-weight: 600;
    margin-top: 18px;
    font-size: 58px;
   
    line-height: .98;
     padding-bottom: 35px;
}

.guide-main-title {
    color: var(--etw-deep);
     font-family: Georgia, 'Times New Roman', Times, serif;
    font-weight: 600;
    margin-top: 18px;
    font-size: 58px;
   
    line-height: .98;
}


/* ========================================
   RIGHT SIDE
======================================== */

.ethiopia-guide-right {
    padding-top: 1px;
}

.ethiopia-guide-right p {
    margin: 0 0 13px;
    color: #6E7070;
  
}

.ethiopia-guide-right p:last-child {
    margin-bottom: 0;
}


/* ========================================
   IMPORTANT UPDATE
======================================== */

.ethiopia-update-box {
       border-left: 5px solid #f97316;
    padding: 18px 20px;
    margin: 24px 0;
    border-radius: 8px;
    color: #3f3f46;
    font-size: 16px;
    line-height: 1.7;
    background: #fff7ed;
    margin-top: 100px;
}

.ethiopia-update-box strong {
    color: #e85b36;
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .ethiopia-guide-section {
        padding: 45px 25px 30px;
    }

    .ethiopia-guide-container {
        width: 100%;
    }

    .ethiopia-guide-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .ethiopia-guide-left h2 {
        font-size: 32px;
    }

    .guide-main-title {
        font-size: 32px;
    }

    .ethiopia-update-box {
        margin-top: 40px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .ethiopia-guide-section {
        padding: 35px 15px 25px;
    }

    .ethiopia-guide-grid {
        gap: 25px;
    }

    .ethiopia-guide-left h2 {
        font-size: 30px;
    }

    .guide-main-title {
        font-size: 30px;
    }

    .ethiopia-update-box {
        margin-top: 35px;
    }
}


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

.ethiopia-section {
    width: 100%;
    padding: 60px 6.3%;
    background: #f5fbf9;
}


/* =========================================
   MAIN GRID
========================================= */

.ethiopia-container {
    max-width: 1220px;
    margin: 0 auto;

    display: grid;

    grid-template-columns: 1fr 0.94fr;

    column-gap: 19px;
    row-gap: 9px;

    align-items: start;
}


/* =========================================
   LEFT TOP
========================================= */

.ethiopia-left {
    display: flex;
    flex-direction: column;
}


/* =========================================
   LABEL
========================================= */

.section-label {
       display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--etw-deep);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.section-label::before {
       content: "";
    width: 28px;
    height: 1px;
    background: currentColor;
}

.section-label::after {
    /* content: "";

    width: 7px;
    height: 7px;

    margin-left: -2px;

    border-radius: 50%;

    background: #64b5a4; */

    transform: translateY(-8px);
}


/* =========================================
   HEADING
========================================= */

.ethiopia-title {
    margin: 13px 0 18px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 48px;
    line-height: 0.98;
    font-weight: 700;

    color: #103d45;
}


/* =========================================
   RIGHT TEXT
========================================= */

.ethiopia-right {
    padding-top: 5px;
}

.ethiopia-right p {
    margin: 0 0 13px;

    font-family: "Inter", sans-serif;

    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;

    color: #52716f;
}

.ethiopia-right p:last-child {
    margin-bottom: 0;
}


/* =========================================
   CARDS
========================================= */

.ethiopia-card {
    position: relative;

    overflow: hidden;

    border-radius: 15px;

    background-color: #dcefea;
    background-size: cover;
    background-position: center;

    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    padding: 17px 14px;

    isolation: isolate;

    transition: transform 0.3s ease;
}


/* =========================================
   FEATURE CARD
========================================= */

.feature-card {
    height: 535px;
}


/* =========================================
   BOTTOM CARDS
========================================= */

.wild-south,
.volcanic-east {
    height: 430px;
}


/* =========================================
   DARK GRADIENT
========================================= */

.ethiopia-card::after {
    content: "";

    position: absolute;
    inset: 0;

    z-index: -1;

    background:
        linear-gradient(
            to bottom,
            rgba(7, 42, 36, 0) 25%,
            rgba(7, 42, 36, 0.08) 38%,
            rgba(7, 42, 36, 0.48) 65%,
            rgba(4, 30, 26, 0.94) 100%
        );
}


/* =========================================
   CARD CONTENT
========================================= */

.card-content {
    position: relative;
    z-index: 2;
}


/* =========================================
   NUMBER
========================================= */

.card-number {
       display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    margin-bottom: 14px;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 50%;
    font-size: .72rem;
    backdrop-filter: blur(8px);
    color: white;
}


/* =========================================
   CARD TITLE
========================================= */

.card-title {
    margin: 0 0 2px;

   font-size: 48px;

       font-family: Georgia, "Times New Roman", serif;
    font-weight: 600;
    letter-spacing: -.045em;

    color: #fff;
}


/* =========================================
   CARD DESCRIPTION
========================================= */

.card-description {
    margin: 0;

    font-family: "Inter", sans-serif;

   margin: 0;
    color
: rgba(255, 255, 255, .76);
    font-size: .86rem;
}


/* =========================================
   IMAGES
========================================= */

.sacred-highlands {
    background-image: url("https://triplur.co.uk/uploads/tours/fabfe4e9e5d575d5634ae0fa.jpg");
}

.wild-south {
    background-image: url("https://triplur.co.uk/uploads/tours/fe23da17f9a8d6d5f4fafce5.jpg");
}

.volcanic-east {
    background-image: url("https://triplur.co.uk/uploads/tours/8c67e3d36c52d0c473bf62c8.jpg");
}


/* =========================================
   HOVER
========================================= */

.ethiopia-card:hover {
    transform: translateY(-3px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .ethiopia-container {
        grid-template-columns: 1fr;
    }

    .ethiopia-title {
        font-size: 42px;
    }

    .ethiopia-right {
        padding-top: 0;
    }

    .ethiopia-right p {
        padding-top: 20px;
        font-size: 15px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .ethiopia-section {
        padding: 40px 20px;
    }

    .ethiopia-title {
        font-size: 36px;
    }

    .feature-card,
    .wild-south,
    .volcanic-east {
        height: 250px;
    }

    .card-title {
        font-size: 27px;
    }

    .card-description {
        font-size: 9px;
    }

    .ethiopia-right p {
        font-size: 14px;
        line-height: 1.6;
    }
}

/* ========================================
   FESTIVALS SECTION
======================================== */

.ethiopia-festivals-section {
    width: 100%;
    background: #fff;
    padding: 65px 20px 45px;
}

.ethiopia-festivals-container {
    width: min(1170px, calc(100% - 76px));
    margin: 0 auto;

    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}


/* ========================================
   LEFT VISUAL
======================================== */

.festival-visual {
    position: relative;
    min-height: 480px;
}


/* Main white / image shape */

.festival-main-shape {
    position: absolute;

    left: 0;
    top: 55px;

    width: 72%;
    height: 310px;

    overflow: hidden;

    border-radius: 40px 40px 10px 10px;

    background: #fff;

    box-shadow:
        0 15px 45px rgba(30, 60, 55, 0.10);
}

.festival-main-shape img {
        position: absolute;
    inset: 0 80px 70px 0;
    overflow: hidden;
    border-radius: 180px 28px 28px 28px;
    height: 100%;
    width: 100%;
}


/* ========================================
   BADGE
======================================== */

.festival-badge {
    position: absolute;

    top: 65px;
    left: 60%;

    width: 50px;
    height: 50px;

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

    border-radius: 50%;

    background: var(--teal-green);
    color: #fff;

    box-shadow: 0 10px 25px rgba(54, 130, 115, 0.25);

    transform: rotate(-7deg);
}

.festival-badge strong {
    font-size: 9px;
    line-height: 0.9;
    font-weight: 600;
}

.festival-badge span {
    font-size: 8px;
    line-height: 1;
}

.festival-badge small {
    margin-top: 3px;
    font-size: 4px;
}


/* ========================================
   SMALL DECORATIVE SHAPE
======================================== */

.festival-small-shape {
   position: absolute;
    right: 0;
    bottom: 0;
    width: 47%;
    height: 42%;
    overflow: hidden;
    border: 10px solid #fff;
    border-radius: 25px;

    box-shadow: 0 12px 35px rgba(20, 50, 45, 0.08);
}


/* ========================================
   RIGHT CONTENT
======================================== */

.festival-content {
    padding-top: 5px;
}

.festival-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--etw-deep);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
font-family: Arial, Helvetica, sans-serif;
   
}

.festival-eyebrow::before {
    content: "";

    width: 12px;
    height: 1px;

    background: var(--teal-green);
}


.festival-content h2 {
        margin: 13px 0 18px;
    font-size: clamp(2.7rem, 5.2vw, 5.4rem);
    line-height: .94;
    color: var(--dark-teal);
    font-family: Georgia, 'Times New Roman', Times, serif;
}

.festival-content > p {
    margin: 0 0 15px;
    max-width: 550px;
    padding-bottom: 20px;
    color: var(--body-color);
}


/* ========================================
   FESTIVAL ITEMS
======================================== */

.festival-item {
    display: grid;
    grid-template-columns: 20px 1fr;
    gap: 8px;

    margin-bottom: 9px;
}

.festival-item-icon {
    width: 17px;
    height: 17px;

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

    border: 1px solid var(--teal-green);
    border-radius: 50%;

    color: var(--teal-green);
    font-size: 7px;
}

.festival-item h3 {
    margin: 0 0 2px;
  font-family: Arial, Helvetica, sans-serif;
    color: var(--dark-teal);
    font-size: 16px;
    font-weight: 600;
}

.festival-item p {
    margin: 0;
    font-size: 14px;
    color: var(--body-color);
    padding-bottom: 15px;
    margin-bottom:10px;
    border-bottom :.5px solid rgb(187, 187, 187)
}


/* ========================================
   BUTTON
======================================== */

.festival-button-wrapper {
    margin-top: 20px;
}

.festival-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 27px;
    padding: 10px 15px;

    border-radius: 24px;

    background: var(--teal-green);
    color: #fff;

    text-decoration: none;

    font-size: 16px;
    font-weight: 800;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.festival-button:hover {
    background: var(--dark-teal);
    transform: translateY(-2px);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .ethiopia-festivals-section {
        padding: 55px 25px 45px;
    }

    .ethiopia-festivals-container {
        width: 100%;
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .festival-visual {
        min-height: 400px;
    }

    .festival-main-shape {
        width: 70%;
        height: 300px;
    }

    .festival-content h2 {
        font-size: 42px;
    }

    .festival-content > p {
        max-width: 500px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .ethiopia-festivals-section {
        padding: 40px 15px;
    }

    .ethiopia-festivals-container {
        gap: 25px;
    }

    .festival-visual {
        min-height: 340px;
    }

    .festival-main-shape {
        top: 30px;
        width: 75%;
        height: 250px;
        border-radius: 30px 30px 10px 10px;
    }

    .festival-badge {
        top: 40px;
        left: 62%;
    }

    .festival-small-shape {
        right: 5%;
        bottom: 15px;
        width: 75px;
        height: 75px;
    }

    .festival-content h2 {
        font-size: 36px;
    }

    .festival-button-wrapper {
        margin-top: 18px;
    }
}


/* ========================================
   WHAT SHOULD ETHIOPIA FEEL LIKE
======================================== */

.ethiopia-feel-section {
    width: 100%;
    background: #11251f;
    padding: 48px 20px 45px;
}

.ethiopia-feel-container {
    width: min(1170px, calc(100% - 76px));
    margin: 0 auto;
}


/* ========================================
   HEADING
======================================== */

.feel-heading {
    margin-bottom: 17px;
}

.feel-eyebrow {
  
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color

: var(--teal-green);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.feel-eyebrow::before {
    content: "";

    width: 12px;
    height: 1px;

    background: var(--teal-green);
}

.feel-heading h2 {
       margin: 13px 0 18px;
       max-width: 800px;
    font-size: clamp(2.7rem, 5.2vw, 5.4rem);
    line-height: .94;
        font-family: Georgia, "Times New Roman", serif;
    font-weight: 600;
    letter-spacing: -.045em;
    color: white;
}


/* ========================================
   CONTENT AREA
======================================== */

.feel-content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 30px;

    align-items: stretch;
}


/* ========================================
   MOOD LIST
======================================== */

.feel-moods {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.feel-mood {
    width: 100%;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 22px;
    gap: 14px;
    align-items: center;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    background: transparent;
    color: rgba(255, 255, 255, .7);
    text-align: left;
    cursor: pointer;
    transition: .3s ease;
}

.feel-mood:hover {
    border-color: var(--teal-green);
    transform: translateX(2px);
}

.feel-mood.active {
    transform: translateX(6px);
    border-color: rgba(104, 189, 167, .62);
    background: rgba(104, 189, 167, .13);
    color: #fff;
}


/* ========================================
   MOOD NUMBER
======================================== */

.mood-number {
    width: 19px;
    height: 19px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 6px;

    background: rgba(255, 255, 255, 0.08);

    color: #fff;
font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 20px;
    font-weight: 600;
}


/* ========================================
   MOOD TEXT
======================================== */

.mood-info {
    min-width: 0;

    display: flex;
    flex-direction: column;
}

.mood-info strong {
    color: #fff;

    font-size: 14px;
    line-height: 1.1;
    font-weight: 600;
}

.mood-info small {
    margin-top: 10px;

    color: rgba(255, 255, 255, 0.55);

    font-size: 11px;
    line-height: 1.1;
}


/* ========================================
   MOOD ARROW
======================================== */

.mood-arrow {
    color: #fff;

    font-size: 17px;

    text-align: right;
}


/* ========================================
   FEATURE CARD
======================================== */

.feel-feature-card {
    position: relative;
padding: 40px;
     min-height: 560px; 
    overflow: hidden;

    border-radius: 24px;

    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.12) 0%,
            rgba(0, 0, 0, 0.2) 48%,
            rgba(0, 0, 0, 0.58) 100%
        ),
        url("https://triplur.co.uk/uploads/tours/72994f42678cb255478f2403.jpg");
    background-size: cover;
    background-position: center;
}

.feel-feature-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0) 35%,
            rgba(0, 0, 0, 0.18) 60%,
            rgba(0, 0, 0, 0.38) 100%
        );
}

.feel-feature-content {
    position: absolute;
margin: 40px;
    left: 17px;
    right: 17px;
    bottom: 13px;

    z-index: 2;
}

.feel-feature-content h3 {
    margin: 0 0 4px;

    color: #fff;
   font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 80px;
    line-height: 0.95;
    font-weight: 600;
}

.feel-feature-content p {
       max-width: 590px;
    margin: 0;
    color: rgba(255, 255, 255, .75);
    line-height: 1.7;
    padding-bottom:30px;
    padding-top:20px;
}


/* ========================================
   TAGS
======================================== */

.feel-tags {
    display: flex;
    align-items: center;
    gap: 4px;
}

.feel-tags span {
        padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    color: rgba(255, 255, 255, .78);
    font-size: .69rem;
    backdrop-filter: blur(8px);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .ethiopia-feel-section {
        padding: 50px 25px;
    }

    .ethiopia-feel-container {
        width: 100%;
    }

    .feel-heading h2 {
        font-size: 44px;
    }

    .feel-content {
        grid-template-columns:  1fr;
    }

    .feel-feature-card {
        min-height: 250px;
    }

    .feel-feature-content h3 {
        font-size: 30px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .ethiopia-feel-section {
        padding: 40px 15px;
    }

    .feel-heading {
        margin-bottom: 25px;
    }

    .feel-heading h2 {
        font-size: 36px;
    }

    .feel-content {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .feel-moods {
        gap: 6px;
    }

    .feel-mood {
        min-height: 42px;
    }

    .feel-feature-card {
        min-height: 290px;
    }

    .feel-feature-content {
        left: 15px;
        right: 15px;
        bottom: 15px;
    }

    .feel-feature-content h3 {
        font-size: 28px;
    }
}


/* ========================================
   BEST PLACES SECTION
======================================== */

.best-places-section {
    width: 100%;

    background: #fff;

    padding: 48px 20px 45px;
}

.best-places-container {
    width: min(1170px, calc(100% - 76px));

    margin: 0 auto;
}


/* ========================================
   TOP INTRO
======================================== */

.best-places-intro {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 60px;

    align-items: end;

    margin-bottom: 27px;
}


/* ========================================
   EYEBROW
======================================== */

.best-places-eyebrow {
    display: inline-flex;
    align-items
: center;
    gap: 10px;
    color: var(--etw-deep);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.best-places-eyebrow::before {
    content: "";

    width: 12px;
    height: 1px;

    background: var(--teal-green);
}


/* ========================================
   MAIN HEADING
======================================== */

.best-places-title h2 {
   

    color: var(--dark-teal);

   
    
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 600;
    letter-spacing: -.045em;
        margin: 13px 0 18px;
    font-size: clamp(2.7rem, 5.2vw, 5.4rem);
    line-height: .94;
}


/* ========================================
   DESCRIPTION
======================================== */

.best-places-description {
    padding-bottom: 3px;
}

.best-places-description p {
    max-width: 470px;
  color: var(--body-color);
    margin: 0;
}


/* ========================================
   ARTICLE CARD
======================================== */

.ethiopia-article-card {
    width: 100%;
    height: 420px;

    overflow: hidden;

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

    background: #f5fbf9;

    box-shadow:
        0 15px 35px rgba(28, 72, 64, 0.08);
}


/* ========================================
   ARTICLE HEADER
======================================== */

.article-header {
    height: 81px;

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

    padding: 0 13px;

    border-bottom: 1px solid #d8e7e3;

    background: #f8fcfb;
}

.article-header strong {
    color: var(--dark-teal);
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 24px;
    font-weight: 600;
}

.article-header span {
    color: #777;

    font-size
: .68rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}


/* ========================================
   REAL SCROLLABLE CONTENT
======================================== */

.article-scroll-content {
    height: calc(420px - 81px);

    overflow-y: auto;
    overflow-x: hidden;

    padding: 10px 18px 15px 13px;

    background:
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.2),
            rgba(232, 247, 243, 0.55)
        );

    scroll-behavior: smooth;
}


/* ========================================
   CONTENT SCROLLBAR
======================================== */

.article-scroll-content {
    padding: 40px;
    scrollbar-width: thin;
    scrollbar-color: var(--teal-green) rgba(87, 181, 163, 0.12);
}


/* Chrome / Edge / Safari */

.article-scroll-content::-webkit-scrollbar {
    width: 7px;
}

.article-scroll-content::-webkit-scrollbar-track {
    background: rgba(87, 181, 163, 0.12);

    border-radius: 10px;
}

.article-scroll-content::-webkit-scrollbar-thumb {
    background: var(--teal-green);

    border-radius: 10px;
}

.article-scroll-content::-webkit-scrollbar-thumb:hover {
    background: var(--dark-teal);
}


/* ========================================
   ARTICLE NUMBER
======================================== */

.article-number {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 15px;
    height: 15px;

    margin-bottom: 15px;

    border-radius: 20%;

    background: #dcefeb;
padding: 20px;
    color: var(--etw-deep);

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


/* ========================================
   ARTICLE TITLE
======================================== */

.article-scroll-content h3 {
   

    color: var(--dark-teal);

       margin: 0 0 13px;
    font-size: clamp(1.7rem, 2.8vw, 2.4rem);
    line-height: 1;
    line-height: 1;
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 600;
    letter-spacing: -.045em;
}


/* ========================================
   ARTICLE SUBTITLE
======================================== */

.article-subtitle {
    margin-bottom: 7px;

    color: #777;

    font-size: 14px;
}


/* ========================================
   ARTICLE TEXT
======================================== */

.article-scroll-content p {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid rgb(210, 210, 210);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .ethiopia-article-card {
        height: 250px;
    }

    .article-scroll-content {
        height: calc(250px - 31px);
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .ethiopia-article-card {
        height: 300px;
    }

    .article-scroll-content {
        height: calc(300px - 31px);

        padding-right: 15px;
    }

    .article-scroll-content h3 {
        font-size: 16px;
    }
}

/* ========================================
   TABLET
======================================== */

@media (max-width: 900px) {

    .best-places-section {
        padding: 50px 25px 45px;
    }

    .best-places-container {
        width: 100%;
    }

    .best-places-intro {
        grid-template-columns: 1fr;

        gap: 20px;

        align-items: start;
    }

    .best-places-title h2 {
        font-size: 44px;
    }

    .best-places-description p {
        max-width: 100%;
    }

    .article-body {
        height: 220px;
    }
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 600px) {

    .best-places-section {
        padding: 40px 15px;
    }

    .best-places-intro {
        gap: 18px;
        margin-bottom: 22px;
    }

    .best-places-title h2 {
        font-size: 36px;
    }

    .ethiopia-article-card {
        border-radius: 10px;
    }

    .article-header {
        padding: 0 10px;
    }

    .article-body {
        height: 300px;
        padding: 10px 22px 12px 10px;
    }

    .article-body h3 {
        font-size: 16px;
    }
}



/* =================================
   MAIN SECTION
================================= */

.tourism-section {
    width: 100%;
    padding: 90px 5%;
    position: relative;

    background-image:
        linear-gradient(
            rgba(255,255,255,0.82),
            rgba(255,255,255,0.92)
        ),
        url("assets/images/visit-ethiopia/map.png");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* =================================
   REVIEWS
================================= */

.reviews-section {
     background-image:
        linear-gradient(
            /* rgba(255,255,255,0.82),
            rgba(255,255,255,0.92) */
        ),
        url("assets/images/visit-ethiopia/map.png");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    max-width: 1140px;
    margin: 0 auto 50px;
}

.reviews-heading {
    text-align: center;
    margin-bottom: 25px;
}

.reviews-heading span {
    font-family: ":Montez", cursive;
    font-size: 40px;
    font-style: italic;
    font-weight: 300 !important;
}

.reviews-heading h2 {
    margin: 0;
    font-family: Arial, sans-serif;
    font-weight: 700;
}


/* REVIEW CARDS */

.reviews-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    justify-content: center;
}

.review-card {
    background: #ffffff;
    border: 1px solid #dddddd;
    border-radius: 6px;
    padding: 15px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.review-top {
    display: flex;
    align-items: center;
    gap: 10px;
}

.review-avatar {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #174b73;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.review-avatar.orange {
    background: #e67e22;
}

.review-avatar.green {
    background: #168f7b;
}

.review-info {
    flex: 1;
}

.review-info h4 {
    margin: 0;
    font-weight: 600;
}

.review-info span {
    color: #777;
}

.google-icon {
    color: #4285f4;
    font-weight: bold;
}

.stars {
    color: #f5b400;
    letter-spacing: 2px;
    margin-top: 10px;
}

.review-card p {
    margin: 8px 0;
}

.read-more {
    color: #777;
}


/* =================================
   DESTINATION GRID
================================= */

.destinations-grid {
    max-width: 1100px;
    margin: 0 auto;
padding-top: 30px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}


/* =================================
   DESTINATION CARD
================================= */

.destination-card {
    min-height: 145px;

    background:
        linear-gradient(
            180deg,
            rgba(0, 35, 31, 0.96),
            rgba(0, 15, 14, 0.98)
        );

    border-radius: 15px;

    padding: 30px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    overflow: hidden;

    box-shadow: 0 5px 15px rgba(0,0,0,0.15);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.destinations-grid .destination-card {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* HOVER */

.destination-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
}


/* CARD CONTENT */

.destination-content h3 {
    color: #ffffff;
    margin: 0 0 8px;
    font-family: Arial, sans-serif;
   font-size: 25px;
    font-weight: 700;
    letter-spacing: -.025em;
    line-height: 1.18;
}

.destination-content p {
    color: rgb(255 255 255 / 82%);
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
    padding-bottom: 30px;
}


/* =================================
   EXPLORE BUTTON
================================= */

.explore-link {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;

    color: #ffffff;
    text-decoration: none;

       gap: 10px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1;}

.explore-link span {
    font-size: 22px;
  
    transition: transform 0.3s ease;
}

.destination-card:hover .explore-link span {
    transform: translateX(5px);
}


/* =================================
   TABLET
================================= */

@media (max-width: 900px) {

    .destinations-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .reviews-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =================================
   MOBILE
================================= */

@media (max-width: 600px) {

    .tourism-section {
        padding: 40px 20px;
    }

    .reviews-wrapper {
        grid-template-columns: 1fr;
    }

    .destinations-grid {
        grid-template-columns: 1fr;
    }

}



.ve-extra-section,
  .ve-extra-section *{
    box-sizing:border-box !important;
  }

  .ve-extra-section{
    position:relative !important;
    left:50% !important;
    width:100vw !important;
    max-width:100vw !important;
    /* margin-left:-50vw !important;
    margin-right:-50vw !important; */
    color:#536566 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    overflow:hidden !important;
    border-radius:0 !important;
    box-shadow:none !important;
    /* display: none; */
  }

  .ve-extra-section h2,
  .ve-extra-section h3,
  .ve-extra-section h4,
  .ve-extra-section p{
    margin-top:0 !important;
  }

  .ve-extra-container{
    width:100% !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding-left:28px !important;
    padding-right:28px !important;
  }

  .ve-extra-section{
    padding:100px 0 !important;
  }

  .ve-extra-section--soft{
    background:#f1f8f6 !important;
   
  }

  .ve-extra-section--deep{
   
    background:#0c2f2b !important;
  }

  .ve-extra-section:not(.ve-extra-section--soft):not(.ve-extra-section--deep){
    background:#ffffff !important;
  }

  .ve-extra-eyebrow{
    margin-top: 30px;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin-bottom:14px !important;
    color:#397c74 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:2.4px !important;
    text-transform:uppercase !important;
  }

  .ve-extra-eyebrow:before{
    content:"" !important;
    width:26px !important;
    height:1px !important;
    background:currentColor !important;
    flex:none !important;
  }

  .ve-extra-section--deep .ve-extra-eyebrow{
    color:#8cddcd !important;
  }

  .ve-extra-title{
    margin:0 !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-weight:700 !important;
    font-size:clamp(46px,5.5vw,78px) !important;
    line-height:.92 !important;
    letter-spacing:-3px !important;
  }

  .ve-extra-title--medium{
    font-size:clamp(38px,4.3vw,62px) !important;
  }

  .ve-extra-section--deep .ve-extra-title{
    color:#fff !important;
  }

  .ve-extra-lead{
    color:#536566 !important;
    font-size:16px !important;
    line-height:1.8 !important;
  }

  .ve-extra-section--deep .ve-extra-lead{
    color:rgba(255,255,255,.72) !important;
  }

  .ve-extra-heading-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,.88fr) !important;
    gap:80px !important;
    align-items:end !important;
    margin-bottom:58px !important;
  }

  .ve-extra-grid{
    display:grid !important;
    gap:22px !important;
  }

  .ve-extra-grid--4{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }

  .ve-extra-grid--3{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .ve-extra-grid--2{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .ve-extra-card{
    border:1px solid #dceae7 !important;
    border-radius:24px !important;
    background:#fff !important;
    overflow:hidden !important;
    box-shadow:0 12px 35px rgba(16,63,70,.045) !important;
  }

  .ve-extra-card__image{
    position:relative !important;
    width:100% !important;
    aspect-ratio:1.15/1 !important;
    overflow:hidden !important;
    background:#dbe7e4 !important;
  }

  .ve-extra-card__image img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
    transition:transform .6s ease !important;
  }

  .ve-extra-card:hover .ve-extra-card__image img{
    transform:scale(1.045) !important;
  }

  .ve-extra-card__number{
    position:absolute !important;
    left:18px !important;
    top:18px !important;
    min-width:38px !important;
    height:38px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(12,47,43,.78) !important;
    border:1px solid rgba(255,255,255,.35) !important;
    color:#fff !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:1px !important;
    backdrop-filter:blur(8px) !important;
  }

  .ve-extra-card__body{
    padding:26px !important;
  }

  .ve-extra-card__body h3,
  .ve-extra-card__body h4{
    margin-bottom:10px !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:26px !important;
    line-height:1.06 !important;
  }

  .ve-extra-card__body p{
    margin-bottom:0 !important;
    color:#536566 !important;
    font-size:14px !important;
    line-height:1.75 !important;
  }

  .ve-extra-season-card{
    min-height:100% !important;
    border-radius:22px !important;
    padding:28px !important;
    background:#fff !important;
    border:1px solid #dceae7 !important;
    box-shadow:0 22px 55px rgba(16,63,70,.09) !important;
    position:relative !important;
    overflow:hidden !important;
  }

  .ve-extra-season-card:before{
    content:"" !important;
    position:absolute !important;
    right:-40px !important;
    top:-40px !important;
    width:120px !important;
    height:120px !important;
    border-radius:50% !important;
    background:rgba(101,203,182,.16) !important;
  }

  .ve-extra-season-card span{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:34px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    background:#f1f8f6 !important;
    color:#397c74 !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.7px !important;
    text-transform:uppercase !important;
    margin-bottom:20px !important;
  }

  .ve-extra-season-card h3{
    margin-bottom:12px !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:30px !important;
    line-height:1.05 !important;
  }

  .ve-extra-season-card p{
    margin:0 !important;
    font-size:14px !important;
    line-height:1.78 !important;
  }

  .ve-extra-split{
    display:grid !important;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr) !important;
    gap:76px !important;
    align-items:center !important;
  }

  .ve-extra-split--reverse{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
  }

  .ve-extra-media{
    position:relative !important;
  }

  .ve-extra-media__main{
    width:100% !important;
    min-height:560px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    box-shadow:0 22px 55px rgba(16,63,70,.09) !important;
    background:#d9e7e3 !important;
  }

  .ve-extra-media__main img{
    width:100% !important;
    height:100% !important;
    min-height:560px !important;
    object-fit:cover !important;
    display:block !important;
  }

  .ve-extra-media__small{
    position:absolute !important;
    right:-32px !important;
    bottom:-32px !important;
    width:42% !important;
    aspect-ratio:1/1 !important;
    border:8px solid #fff !important;
    border-radius:22px !important;
    overflow:hidden !important;
    box-shadow:0 22px 50px rgba(16,63,70,.18) !important;
    background:#d9e7e3 !important;
  }

  .ve-extra-media__small img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
  }

  .ve-extra-list{
    display:grid !important;
    gap:0 !important;
    margin-top:26px !important;
  }

  .ve-extra-list-item{
    display:grid !important;
    grid-template-columns:42px 1fr !important;
    gap:14px !important;
    padding:20px 0 !important;
    border-bottom:1px solid #dceae7 !important;
  }

  .ve-extra-list-item:last-child{
    border-bottom:0 !important;
  }

  .ve-extra-list-item__icon{
    width:32px !important;
    height:32px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#e7f7f3 !important;
    color:#379381 !important;
    font-weight:900 !important;
    font-size:13px !important;
    margin-top:2px !important;
  }

  .ve-extra-list-item h4{
    margin-bottom:5px !important;
    color:#103f46 !important;
    margin: 0 0 5px;
    font-family: Arial, sans-serif;
    font-size: .94rem;
    letter-spacing: 0;
  }

  .ve-extra-list-item p{
    margin:0 !important;
    color:#536566 !important;
    font-size:13px !important;
    line-height:1.65 !important;
  }

  .ve-extra-dark-feature{
    display:grid !important;
    grid-template-columns:.9fr 1.1fr !important;
    gap:28px !important;
    padding:34px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:28px !important;
    background:rgba(255,255,255,.035) !important;
  }

  .ve-extra-dark-feature__image{
    min-height:520px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  .ve-extra-dark-feature__image img{
    width:100% !important;
    height:100% !important;
    min-height:520px !important;
    object-fit:cover !important;
    display:block !important;
  }

  .ve-extra-dark-feature__content{
    padding:34px 26px 34px 34px !important;
  }

  .ve-extra-dark-feature__content h3{
    margin:0 0 22px !important;
    color:#fff !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:clamp(38px,4vw,58px) !important;
    line-height:.98 !important;
  }

  .ve-extra-dark-feature__content p{
    color:rgba(255,255,255,.72) !important;
    font-size:14px !important;
    line-height:1.8 !important;
  }

  .ve-extra-dark-feature .ve-extra-list-item{
    border-color:rgba(255,255,255,.11) !important;
  }

  .ve-extra-dark-feature .ve-extra-list-item__icon{
    background:rgba(101,203,182,.15) !important;
    color:#8cddcd !important;
  }

  .ve-extra-dark-feature .ve-extra-list-item h4{
    color:#fff !important;
  }

  .ve-extra-dark-feature .ve-extra-list-item p{
    color:rgba(255,255,255,.66) !important;
  }

  .ve-extra-editorial-grid{
    display:grid !important;
    grid-template-columns:1.2fr .8fr .8fr !important;
    grid-template-rows:repeat(2,minmax(260px,1fr)) !important;
    gap:18px !important;
  }

  .ve-extra-food{
    position:relative !important;
    min-height:260px !important;
    border-radius:24px !important;
    overflow:hidden !important;
    background:#203633 !important;
  }

  .ve-extra-food:first-child{
    grid-row:1/3 !important;
  }

  .ve-extra-food img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    opacity:.82 !important;
    transition:transform .55s ease !important;
  }

  .ve-extra-food:hover img{
    transform:scale(1.04) !important;
  }

  .ve-extra-food:after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(to top,rgba(8,28,25,.92),rgba(8,28,25,.06) 70%) !important;
  }

  .ve-extra-food__content{
    position:absolute !important;
    z-index:2 !important;
    left:24px !important;
    right:24px !important;
    bottom:22px !important;
  }

  .ve-extra-food__content h3{
    margin-bottom:7px !important;
    color:#fff !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:28px !important;
    line-height:1.03 !important;
  }

  .ve-extra-food__content p{
    margin:0 !important;
    color:rgba(255,255,255,.74) !important;
    font-size:12px !important;
    line-height:1.55 !important;
  }

  .ve-extra-info-panel{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    border:1px solid #dceae7 !important;
    border-radius:28px !important;
    overflow:hidden !important;
    box-shadow:0 22px 55px rgba(16,63,70,.09) !important;
  }

  .ve-extra-info-panel__item{
    padding:42px !important;
    background:#fff !important;
  }

  .ve-extra-info-panel__item + .ve-extra-info-panel__item{
    border-left:1px solid #dceae7 !important;
    background:#f1f8f6 !important;
  }

  .ve-extra-info-panel__num{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
    background:#0c2f2b !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    margin-bottom:22px !important;
  }

  .ve-extra-info-panel h3{
    margin-bottom:14px !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:36px !important;
    line-height:1 !important;
  }

  .ve-extra-info-panel p{
    margin-bottom:15px !important;
    font-size:14px !important;
    line-height:1.78 !important;
  }

  .ve-extra-info-panel p:last-child{
    margin-bottom:0 !important;
  }

  .ve-extra-transport-card{
    padding:30px !important;
    border-radius:22px !important;
    background:#fff !important;
    border:1px solid #dceae7 !important;
  }

  .ve-extra-transport-card__top{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:15px !important;
    margin-bottom:24px !important;
  }

  .ve-extra-transport-card__top span{
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:1.8px !important;
    color:#6b8684 !important;
  }

  .ve-extra-transport-card__top b{
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#f1f8f6 !important;
    color:#397c74 !important;
    font-size:12px !important;
  }

  .ve-extra-transport-card h3{
    margin-bottom:10px !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:27px !important;
  }

  .ve-extra-transport-card p{
    margin:0 !important;
    font-size:13px !important;
    line-height:1.72 !important;
  }

  .ve-extra-duration{
    position:relative !important;
    padding:32px !important;
    border-radius:24px !important;
    border:1px solid #dceae7 !important;
    background:#fff !important;
    overflow:hidden !important;
  }

  .ve-extra-duration:before{
    content:attr(data-number) !important;
    position:absolute !important;
    right:20px !important;
    top:4px !important;
    color:#edf4f2 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:100px !important;
    font-weight:700 !important;
    line-height:1 !important;
  }

  .ve-extra-duration span{
    display:inline-block !important;
    margin-bottom:18px !important;
    color:#3f8d80 !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:1.5px !important;
    text-transform:uppercase !important;
    position:relative !important;
    z-index:2 !important;
  }

  .ve-extra-duration h3{
    position:relative !important;
    z-index:2 !important;
    margin-bottom:12px !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:34px !important;
  }

  .ve-extra-duration p{
    position:relative !important;
    z-index:2 !important;
    margin:0 !important;
    font-size:14px !important;
    line-height:1.75 !important;
  }

  .ve-extra-scroll-panel{
    border:1px solid #dceae7 !important;
    border-radius:26px !important;
    overflow:hidden !important;
    background:#f7fbfa !important;
    box-shadow:0 22px 55px rgba(16,63,70,.09) !important;
  }

  .ve-extra-scroll-panel__head{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:20px !important;
    padding:20px 26px !important;
    border-bottom:1px solid #dceae7 !important;
  }

  .ve-extra-scroll-panel__head h3{
    margin:0 !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:24px !important;
  }

  .ve-extra-scroll-panel__head span{
    color:#6e817f !important;
    font-size:9px !important;
    font-weight:800 !important;
    letter-spacing:1.6px !important;
    text-transform:uppercase !important;
  }

  .ve-extra-scroll-panel__body{
    max-height:490px !important;
    overflow:auto !important;
    padding:8px 28px 28px !important;
    scrollbar-width:thin !important;
    scrollbar-color:#65cbb6 transparent !important;
  }

  .ve-extra-tip{
    display:grid !important;
    grid-template-columns:48px 1fr !important;
    gap:18px !important;
    padding:24px 0 !important;
    border-bottom:1px solid #dceae7 !important;
  }

  .ve-extra-tip:last-child{
    border-bottom:0 !important;
  }

  .ve-extra-tip__num{
    width:40px !important;
    height:40px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#e7f7f3 !important;
    color:#2c8978 !important;
    font-size:11px !important;
    font-weight:900 !important;
  }

  .ve-extra-tip h4{
    margin-bottom:5px !important;
    color:#103f46 !important;
    font-size:14px !important;
  }

  .ve-extra-tip p{
    margin:0 !important;
    font-size:13px !important;
    line-height:1.7 !important;
  }

  .ve-extra-alert{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    gap:20px !important;
    padding:26px 30px !important;
    border-left:4px solid #df8a4a !important;
    border-radius:15px !important;
    background:#f5eee8 !important;
  }

  .ve-extra-alert__badge{
    padding: 14px;
    min-width:78px !important;
    height:34px !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#fff !important;
    color:#c46e35 !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:1.2px !important;
    text-transform:uppercase !important;
  }

  .ve-extra-alert h3{
    margin-bottom:8px !important;
    color:#71452e !important;
    font-size:15px !important;
    font-weight:900 !important;
  }

  .ve-extra-alert p{
    margin:0 !important;
    color:#765848 !important;
    font-size:13px !important;
    line-height:1.72 !important;
  }

  .ve-extra-end-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px !important;
  }

  .ve-extra-end-card{
    min-height:490px !important;
    position:relative !important;
    overflow:hidden !important;
    border-radius:28px !important;
    padding:42px !important;
    background:#0c2f2b !important;
  }

  .ve-extra-end-card--image{
    display:flex !important;
    align-items:flex-end !important;
  }

  .ve-extra-end-card--image img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    opacity:.42 !important;
  }

  .ve-extra-end-card--image:after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(to top,rgba(7,29,26,.98),rgba(7,29,26,.12) 70%) !important;
  }

  .ve-extra-end-card__content{
    position:relative !important;
    z-index:2 !important;
  }

  .ve-extra-end-card h3{
    margin-bottom:16px !important;
    color:#fff !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:42px !important;
    line-height:1 !important;
  }

  .ve-extra-end-card p{
    color:rgba(255,255,255,.72) !important;
    font-size:14px !important;
    line-height:1.8 !important;
  }

  .ve-extra-end-card p:last-child{
    margin-bottom:0 !important;
  }

  .ve-extra-faq{
    border-top:1px solid #dceae7 !important;
  }

  .ve-extra-faq__item{
    border-bottom:1px solid #dceae7 !important;
  }

  .ve-extra-faq__button{
    appearance:none !important;
    width:100% !important;
    border:0 !important;
    background:transparent !important;
    padding:24px 0 !important;
    display:grid !important;
    grid-template-columns:1fr 42px !important;
    gap:18px !important;
    align-items:center !important;
    text-align:left !important;
    cursor:pointer !important;
    color:#103f46 !important;
    font-family:Georgia, "Times New Roman", serif !important;
    font-size:22px !important;
    font-weight:700 !important;
  }

  .ve-extra-faq__button span{
    width:36px !important;
    height:36px !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#f1f8f6 !important;
    color:#397c74 !important;
    font-family:Arial, Helvetica, sans-serif !important;
    font-size:20px !important;
    transition:transform .3s ease !important;
  }

  .ve-extra-faq__answer{
    display:grid !important;
    grid-template-rows:0fr !important;
    transition:grid-template-rows .35s ease !important;
  }

  .ve-extra-faq__answer > div{
    overflow:hidden !important;
  }

  .ve-extra-faq__answer p{
    max-width:920px !important;
    margin:0 !important;
    padding:0 70px 24px 0 !important;
    font-size:14px !important;
    line-height:1.78 !important;
  }

  .ve-extra-faq__item.is-open .ve-extra-faq__answer{
    grid-template-rows:1fr !important;
  }

  .ve-extra-faq__item.is-open .ve-extra-faq__button span{
    transform:rotate(45deg) !important;
  }

  @media (max-width:1100px){
    .ve-extra-heading-row,
    .ve-extra-split,
    .ve-extra-split--reverse,
    .ve-extra-dark-feature{
      grid-template-columns:1fr !important;
      gap:42px !important;
    }

    .ve-extra-grid--4{
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .ve-extra-grid--3{
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .ve-extra-editorial-grid{
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
      grid-template-rows:auto !important;
    }

    .ve-extra-food:first-child{
      grid-row:auto !important;
      grid-column:1/3 !important;
      min-height:430px !important;
    }

    .ve-extra-media__small{
      right:22px !important;
      bottom:-30px !important;
    }
  }

  @media (max-width:767px){
    .ve-extra-container{
      padding-left:18px !important;
      padding-right:18px !important;
    }

    .ve-extra-section{
      padding:72px 0 !important;
    }

    .ve-extra-title{
      font-size:44px !important;
      letter-spacing:-2px !important;
    }

    .ve-extra-title--medium{
      font-size:40px !important;
    }

    .ve-extra-heading-row{
      gap:26px !important;
      margin-bottom:36px !important;
    }

    .ve-extra-grid--4,
    .ve-extra-grid--3,
    .ve-extra-grid--2,
    .ve-extra-info-panel,
    .ve-extra-end-grid{
      grid-template-columns:1fr !important;
    }

    .ve-extra-info-panel__item + .ve-extra-info-panel__item{
      border-left:0 !important;
      border-top:1px solid #dceae7 !important;
    }

    .ve-extra-media__main,
    .ve-extra-media__main img{
      min-height:420px !important;
    }

    .ve-extra-media__small{
      position:relative !important;
      width:70% !important;
      right:auto !important;
      bottom:auto !important;
      margin:-80px 18px 0 auto !important;
    }

    .ve-extra-dark-feature{
      padding:18px !important;
    }

    .ve-extra-dark-feature__image,
    .ve-extra-dark-feature__image img{
      min-height:390px !important;
    }

    .ve-extra-dark-feature__content{
      padding:18px 8px 24px !important;
    }

    .ve-extra-editorial-grid{
      grid-template-columns:1fr !important;
    }

    .ve-extra-food:first-child{
      grid-column:auto !important;
      min-height:360px !important;
    }

    .ve-extra-food{
      min-height:300px !important;
    }

    .ve-extra-info-panel__item{
      padding:30px 24px !important;
    }

    .ve-extra-alert{
      grid-template-columns:1fr !important;
    }

    .ve-extra-end-card{
      min-height:430px !important;
      padding:30px !important;
    }

    .ve-extra-end-card h3{
      font-size:36px !important;
    }

    .ve-extra-faq__button{
      font-size:19px !important;
    }

    .ve-extra-faq__answer p{
      padding-right:0 !important;
    }
  }

/* Elementor full-width breakout + 1180px inner content */
  .ve-extra-section{
    border-left:0 !important;
    border-right:0 !important;
  }

  .ve-extra-container{
    width:100% !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  @media (max-width:767px){
    .ve-extra-section{
      left:50% !important;
      width:100vw !important;
      max-width:100vw !important;
      margin-left:-50vw !important;
      margin-right:-50vw !important;
    }
  }

/* ===== FINAL ELEMENTOR FULL-WIDTH OVERRIDES ===== */
.ve-extra-section{
  position:relative !important;
  left:50% !important;
  width:100% !important;
  max-width:100vw !important;
  margin-left:-50vw !important;
  margin-right:-50vw !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

.ve-extra-container{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}

.ve-extra-section--soft{
  background:#f1f8f6 !important;
}

.ve-extra-section--deep{
  background:#0c2f2b !important;
}

.ve-extra-section:not(.ve-extra-section--soft):not(.ve-extra-section--deep){
  background:#ffffff !important;
}

@media (max-width:767px){
  .ve-extra-container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}