.elementor-876 .elementor-element.elementor-element-676037c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-876 .elementor-element.elementor-element-35ffc903:not(.elementor-motion-effects-element-type-background), .elementor-876 .elementor-element.elementor-element-35ffc903 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-876 .elementor-element.elementor-element-35ffc903 > .elementor-container{max-width:1600px;}.elementor-876 .elementor-element.elementor-element-35ffc903{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:40px;margin-bottom:50px;}.elementor-876 .elementor-element.elementor-element-35ffc903 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-876 .elementor-element.elementor-element-10a38e9d > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:12px;}.elementor-876 .elementor-element.elementor-element-c98561f{text-align:left;}.elementor-876 .elementor-element.elementor-element-c98561f .wpr-logo{padding:0px 0px 0px 0px;border-radius:2px 2px 2px 2px;}.elementor-876 .elementor-element.elementor-element-c98561f .wpr-logo-image{max-width:148px;}.elementor-876 .elementor-element.elementor-element-c98561f.wpr-logo-position-left .wpr-logo-image{margin-right:0px;}.elementor-876 .elementor-element.elementor-element-c98561f.wpr-logo-position-right .wpr-logo-image{margin-left:0px;}.elementor-876 .elementor-element.elementor-element-c98561f.wpr-logo-position-center .wpr-logo-image{margin-bottom:0px;}.elementor-876 .elementor-element.elementor-element-c98561f .wpr-logo-image img{-webkit-transition-duration:0.7s;transition-duration:0.7s;}.elementor-876 .elementor-element.elementor-element-c98561f .wpr-logo-title{color:#605BE5;margin:0 0 0px;}.elementor-876 .elementor-element.elementor-element-c98561f .wpr-logo-description{color:#888888;}.elementor-876 .elementor-element.elementor-element-1ea11ba1 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:16px;}.elementor-876 .elementor-element.elementor-element-34ae7c36{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;line-height:0.9em;color:#0591F9;}.elementor-876 .elementor-element.elementor-element-1b521261 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-2c90a365 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-2d2461cb .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-3be547d7 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-2220eaea > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:16px;}.elementor-876 .elementor-element.elementor-element-ee153f{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;line-height:0.9em;color:#0591F9;}.elementor-876 .elementor-element.elementor-element-7ea3643a .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-42e0fc49 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-876 .elementor-element.elementor-element-be73d6c .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;line-height:1.4em;color:#000000;}.elementor-876 .elementor-element.elementor-element-37b43258{text-align:center;font-family:"Lato", Sans-serif;font-size:13px;font-weight:400;line-height:1.6em;letter-spacing:0.2px;color:#848484;}.elementor-876 .elementor-element.elementor-element-1e355f78{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-e5df69d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-15b7d183{text-align:center;}.elementor-876 .elementor-element.elementor-element-5e3cb8a{text-align:center;}.elementor-876 .elementor-element.elementor-element-5e3cb8a .elementor-heading-title{font-size:26px;color:#0591F9;}.elementor-876 .elementor-element.elementor-element-68068bf9{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-5a99f579{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:100px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-5f213d14{text-align:center;}.elementor-876 .elementor-element.elementor-element-5f213d14 img{width:27%;}.elementor-876 .elementor-element.elementor-element-1f01c583{text-align:center;}.elementor-876 .elementor-element.elementor-element-1f01c583 .elementor-heading-title{font-size:20px;}.elementor-876 .elementor-element.elementor-element-1750ae32 .elementor-button{background-color:#0591F9;fill:#FFFFFF;color:#FFFFFF;}.elementor-876 .elementor-element.elementor-element-1750ae32 > .elementor-widget-container{padding:30px 0px 0px 0px;}@media(max-width:1024px){.elementor-876 .elementor-element.elementor-element-35ffc903{padding:0px 20px 0px 20px;}.elementor-876 .elementor-element.elementor-element-34ae7c36{font-size:15px;}.elementor-876 .elementor-element.elementor-element-ee153f{font-size:15px;}.elementor-876 .elementor-element.elementor-element-1e355f78{--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-5a99f579{--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:0px;}}@media(min-width:768px){.elementor-876 .elementor-element.elementor-element-676037c{--content-width:1600px;}.elementor-876 .elementor-element.elementor-element-1e355f78{--content-width:1600px;}.elementor-876 .elementor-element.elementor-element-5a99f579{--width:100%;}}@media(max-width:767px){.elementor-876 .elementor-element.elementor-element-35ffc903{margin-top:0px;margin-bottom:0px;}.elementor-876 .elementor-element.elementor-element-1e355f78{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-876 .elementor-element.elementor-element-5e3cb8a .elementor-heading-title{font-size:22px;}.elementor-876 .elementor-element.elementor-element-5a99f579{--padding-top:30px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-876 .elementor-element.elementor-element-5f213d14 img{width:60%;}.elementor-876 .elementor-element.elementor-element-1f01c583 .elementor-heading-title{font-size:20px;}}/* Start custom CSS for html, class: .elementor-element-075ff8d *//* ==========================================================
   SAFARI ALB — TEMPLATE T1
   COMPLETE TOUR CSS
   Cyan + Lime + Navy
   Desktop / Tablet / Mobile
   ========================================================== */


/* ==========================================================
   01. BRAND / GLOBAL
   ========================================================== */

.albania-tour {
    --cyan: #00BFE7;
    --cyan-dark: #009FC4;
    --cyan-deep: #008AAE;
    --cyan-soft: #EAFBFE;

    --lime: #BACC40;
    --lime-dark: #9FB52E;
    --lime-soft: #F7F9E8;

    --navy: #092B49;
    --navy-2: #123F55;
    --navy-dark: #061F30;

    --text: #40566B;
    --muted: #7B8E9D;

    --white: #FFFFFF;
    --light: #F7FBFC;
    --light-2: #F0F7F9;

    --border: #DFEBEF;

    --shadow-sm:
        0 8px 25px rgba(9, 43, 73, .06);

    --shadow-md:
        0 18px 45px rgba(9, 43, 73, .10);

    --shadow-lg:
        0 28px 65px rgba(9, 43, 73, .15);

    font-family: Arial, Helvetica, sans-serif;

    color: var(--text);
    background: #FFFFFF;

    font-size: 16px;
    line-height: 1.85;

    overflow: hidden;
}


/* ==========================================================
   02. RESET
   ========================================================== */

.albania-tour *,
.albania-tour *::before,
.albania-tour *::after {
    box-sizing: border-box;
}

.albania-tour img {
    display: block;

    width: 100%;
    max-width: 100%;
}

.albania-tour h1,
.albania-tour h2,
.albania-tour h3,
.albania-tour p {
    padding: 0;
}

.albania-tour h1,
.albania-tour h2,
.albania-tour h3 {
    font-family: Arial, Helvetica, sans-serif;
}

.albania-tour p {
    color: var(--text);
}

.albania-tour a {
    text-decoration: none;
}


/* ==========================================================
   03. CONTAINERS
   ========================================================== */

.tour-section,
.tour-day,
.vehicle-section,
.optional-section {
    width: min(1180px, calc(100% - 40px));

    margin-inline: auto;
}

.tour-section,
.vehicle-section,
.optional-section {
    padding-top: 100px;
    padding-bottom: 100px;
}


/* ==========================================================
   04. SECTION HEADINGS
   ========================================================== */

.section-heading {
    position: relative;

    max-width: 760px;

    margin: 0 auto 60px;

    text-align: center;
}

.section-heading > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 8px;

    margin-bottom: 13px;

    padding: 7px 15px;

    border: 1px solid rgba(0, 191, 231, .12);
    border-radius: 50px;

    background: var(--cyan-soft);

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: .5px;
}

.section-heading > span::before {
    content: "";

    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: var(--lime);
}

.section-heading h2 {
    margin: 0;

    color: var(--navy);

    font-size: clamp(32px, 4vw, 48px);
    font-weight: 800;

    line-height: 1.25;
}

.section-heading::after {
    content: "";

    display: block;

    width: 55px;
    height: 4px;

    margin: 22px auto 0;

    border-radius: 10px;

    background:
        linear-gradient(
            90deg,
            var(--cyan) 0%,
            var(--cyan) 72%,
            var(--lime) 72%,
            var(--lime) 100%
        );
}


/* ==========================================================
   05. BUTTON
   ========================================================== */

.tour-btn {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;

    padding: 12px 28px;

    overflow: hidden;

    border: 0;
    border-radius: 12px;

    background: var(--cyan);

    color: #FFFFFF !important;

    font-size: 14px;
    font-weight: 800;

    text-decoration: none !important;

    box-shadow:
        0 12px 28px rgba(0, 191, 231, .26);

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        box-shadow .3s ease;
}

.tour-btn::before {
    content: "";

    position: absolute;

    top: 0;
    left: -120%;

    width: 70%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, .35),
            transparent
        );

    transform: skewX(-20deg);

    transition: left .6s ease;
}

.tour-btn:hover::before {
    left: 140%;
}

.tour-btn:hover {
    background: var(--cyan-dark);

    transform: translateY(-3px);

    box-shadow:
        0 17px 35px rgba(0, 191, 231, .34);
}


/* ==========================================================
   06. HERO
   ========================================================== */

.tour-hero {
    position: relative;

    width: 100%;
    height: 720px;
    min-height: 620px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background: var(--navy);

    isolation: isolate;
}

.tour-hero > img {
    position: absolute;

    inset: 0;

    z-index: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transform: scale(1.01);

    transition: transform 8s ease;
}

.tour-hero:hover > img {
    transform: scale(1.055);
}


/* HERO DARK OVERLAY */

.tour-hero::before {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            180deg,
            rgba(4, 27, 43, .08) 0%,
            rgba(4, 27, 43, .14) 28%,
            rgba(4, 27, 43, .30) 56%,
            rgba(4, 27, 43, .82) 100%
        );
}


/* HERO BRAND OVERLAY */

.tour-hero::after {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(0, 191, 231, .15) 0%,
            rgba(0, 191, 231, .03) 42%,
            transparent 70%
        );
}


/* HERO CONTENT */

.hero-overlay {
    position: relative;

    z-index: 3;

    width: min(1180px, calc(100% - 40px));
    height: 100%;

    margin: auto;

    padding: 100px 20px 65px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;

    text-align: center;

    background: transparent;
}


/* HERO LABEL */

.hero-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    margin-bottom: 18px;

    padding: 8px 17px;

    border: 1px solid rgba(255, 255, 255, .30);
    border-radius: 50px;

    background: rgba(0, 191, 231, .18);

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    color: #FFFFFF;

    font-size: 11px;
    font-weight: 800;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, .08);

    animation: fadeDown .8s ease;
}

.hero-label::before {
    content: "";

    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: var(--lime);

    box-shadow:
        0 0 0 4px rgba(186, 204, 64, .14);
}


/* HERO TITLE */

.hero-overlay h1 {
    max-width: 900px;

    margin: 0;

    color: #FFFFFF;

    font-size: clamp(50px, 6vw, 78px);
    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -.7px;

    text-shadow:
        0 6px 25px rgba(0, 0, 0, .22);

    animation: fadeUp 1s ease;
}


/* HERO DESCRIPTION */

.hero-overlay p {
    max-width: 700px;

    margin: 20px auto 28px;

    color: rgba(255, 255, 255, .92);

    font-size: 16px;
    line-height: 1.8;

    animation: fadeUp 1.2s ease;
}


/* HERO BUTTON */

.hero-overlay .tour-btn {
    min-width: 175px;

    border: 1px solid rgba(255, 255, 255, .14);

    background: var(--cyan);

    animation: fadeUp 1.4s ease;

    box-shadow:
        0 13px 30px rgba(0, 191, 231, .30);
}

.hero-overlay .tour-btn:hover {
    background: var(--lime);

    color: var(--navy) !important;

    box-shadow:
        0 17px 38px rgba(186, 204, 64, .25);
}


/* ==========================================================
   07. INTRO
   ========================================================== */

.intro-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: clamp(50px, 7vw, 85px);

    align-items: center;
}

.intro-text h3 {
    margin: 0 0 18px;

    color: var(--navy);

    font-size: 30px;
    font-weight: 800;

    line-height: 1.4;
}

.intro-text p {
    color: var(--text);

    font-size: 15px;

    line-height: 2;
}


/* ==========================================================
   08. DESTINATIONS
   ========================================================== */

.destination-list {
    display: flex;
    flex-wrap: wrap;

    gap: 8px;

    margin-top: 26px;
}

.destination-list span {
    display: inline-flex;
    align-items: center;

    padding: 7px 14px;

    border: 1px solid #D6EDF2;
    border-radius: 50px;

    background: #F8FDFE;

    color: var(--cyan-dark);

    font-size: 12px;
    font-weight: 700;

    box-shadow:
        0 5px 16px rgba(9, 43, 73, .04);

    transition:
        transform .25s ease,
        color .25s ease,
        background .25s ease,
        border-color .25s ease;
}

.destination-list span:hover {
    border-color: var(--cyan);

    background: var(--cyan);

    color: #FFFFFF;

    transform: translateY(-2px);
}


/* ==========================================================
   09. INTRO IMAGE
   ========================================================== */

.intro-image {
    position: relative;
}

.intro-image::before {
    content: "";

    position: absolute;

    top: 17px;
    left: 17px;

    width: 100%;
    height: 100%;

    z-index: 0;

    border: 2px solid rgba(0, 191, 231, .22);
    border-radius: 24px;
}

.intro-image::after {
    content: "";

    position: absolute;

    right: -9px;
    bottom: -9px;

    z-index: 2;

    width: 55px;
    height: 55px;

    border-radius: 16px;

    background: var(--lime);

    opacity: .90;
}

.intro-image img {
    position: relative;

    z-index: 1;

    width: 100%;
    height: 440px;

    object-fit: cover;

    border-radius: 24px;

    box-shadow: var(--shadow-lg);

    transition: transform .5s ease;
}

.intro-image:hover img {
    transform: translate(-5px, -5px);
}


/* ==========================================================
   10. ITINERARY / DAYS
   ========================================================== */

.tour-day {
    position: relative;

    padding-top: 90px;
    padding-bottom: 90px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: clamp(50px, 7vw, 90px);

    align-items: center;
}

.tour-day + .tour-day {
    border-top: 1px solid var(--border);
}

.tour-day:nth-of-type(odd) {
    background:
        linear-gradient(
            90deg,
            #FFFFFF,
            #F9FCFD
        );
}

.tour-day.reverse {
    background: #FFFFFF;
}


/* ALTERNATING */

.tour-day.reverse .day-image {
    order: 2;
}

.tour-day.reverse .day-content {
    order: 1;
}


/* ==========================================================
   11. DAY IMAGE
   ========================================================== */

.day-image {
    position: relative;

    overflow: hidden;

    border-radius: 22px;

    background: var(--light);

    box-shadow: var(--shadow-md);
}

.day-image::before {
    content: "";

    position: absolute;

    inset: 10px;

    z-index: 2;

    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 15px;

    pointer-events: none;
}

.day-image::after {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            180deg,
            transparent 65%,
            rgba(6, 31, 48, .20)
        );

    pointer-events: none;
}

.day-image img {
    width: 100%;
    height: 430px;

    object-fit: cover;

    transition:
        transform .7s ease,
        filter .7s ease;
}

.day-image:hover img {
    transform: scale(1.045);

    filter: saturate(1.04);
}


/* ==========================================================
   12. DAY CONTENT
   ========================================================== */

.day-content {
    position: relative;

    z-index: 2;
}

.day-number {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    padding: 7px 14px;

    border: 1px solid rgba(0, 191, 231, .12);
    border-radius: 50px;

    background: var(--cyan-soft);

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: .4px;
}

.day-number::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--lime);
}

.day-content h2 {
    margin: 14px 0 20px;

    color: var(--navy);

    font-size: clamp(32px, 4vw, 45px);
    font-weight: 800;

    line-height: 1.25;
}

.day-content p {
    margin-bottom: 15px;

    color: var(--text);

    font-size: 15px;

    line-height: 2;
}


/* ==========================================================
   13. EVENING / INFO BOX
   ========================================================== */

.evening-box {
    position: relative;

    margin-top: 24px;

    padding: 20px 22px;

    overflow: hidden;

    border: 1px solid #DDEFF2;
    border-left: 4px solid var(--cyan);
    border-radius: 12px;

    background:
        linear-gradient(
            135deg,
            #ECFAFC,
            #FBFEFF
        );
}

.evening-box::before {
    content: "";

    position: absolute;

    left: -4px;
    top: 0;

    width: 4px;
    height: 35%;

    background: var(--lime);
}

.evening-box h3 {
    margin: 0 0 5px;

    color: var(--navy);

    font-size: 16px;
    font-weight: 800;
}

.evening-box p {
    margin: 0;

    color: #53697B;

    font-size: 14px;

    line-height: 1.9;
}


/* ==========================================================
   14. CHECK LIST
   ========================================================== */

.check-list {
    list-style: none;

    margin: 28px 0 0;
    padding: 0;

    display: grid;

    gap: 9px;
}

.check-list li {
    position: relative;

    margin: 0;

    padding: 12px 16px 12px 46px;

    border: 1px solid var(--border);
    border-radius: 11px;

    background: #FFFFFF;

    color: var(--navy);

    font-size: 14px;
    font-weight: 700;

    transition:
        transform .25s ease,
        border-color .25s ease,
        background .25s ease;
}

.check-list li:hover {
    transform: translateX(4px);

    border-color: rgba(0, 191, 231, .35);

    background: #FBFEFF;
}

.check-list li::before {
    content: "✓";

    position: absolute;

    left: 13px;
    top: 50%;

    width: 23px;
    height: 23px;

    display: grid;
    place-items: center;

    transform: translateY(-50%);

    border-radius: 50%;

    background: var(--lime);

    color: var(--navy);

    font-size: 11px;
    font-weight: 900;
}


/* ==========================================================
   15. FINAL DAY
   ========================================================== */

.final-day {
    position: relative;

    min-height: 540px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background: var(--navy);
}

.final-day > img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 8s ease;
}

.final-day:hover > img {
    transform: scale(1.05);
}

.final-day::before {
    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            180deg,
            rgba(5, 30, 49, .25),
            rgba(5, 30, 49, .84)
        );
}

.final-day::after {
    content: "";

    position: absolute;

    z-index: 1;

    width: 360px;
    height: 360px;

    left: -160px;
    bottom: -190px;

    border-radius: 50%;

    background: var(--cyan);

    opacity: .15;
}

.final-day-content {
    position: relative;

    z-index: 2;

    width: min(750px, calc(100% - 40px));

    padding: 50px 20px;

    text-align: center;
}

.final-day-content span {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    margin-bottom: 8px;

    color: #8FE9F8;

    font-size: 12px;
    font-weight: 800;
}

.final-day-content span::before {
    content: "";

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--lime);
}

.final-day-content h2 {
    margin: 0 0 15px;

    color: #FFFFFF;

    font-size: clamp(40px, 6vw, 58px);
    font-weight: 800;

    line-height: 1.15;
}

.final-day-content p {
    max-width: 560px;

    margin: auto;

    color: rgba(255, 255, 255, .90);

    font-size: 16px;
}


/* ==========================================================
   16. INCLUDED
   ========================================================== */

.included-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 16px;
}

.included-item {
    position: relative;

    min-height: 175px;

    padding: 28px 23px;

    overflow: hidden;

    border: 1px solid var(--border);
    border-radius: 17px;

    background: #FFFFFF;

    box-shadow: var(--shadow-sm);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.included-item::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background:
        linear-gradient(
            90deg,
            var(--cyan) 0%,
            var(--cyan) 78%,
            var(--lime) 78%,
            var(--lime) 100%
        );

    transform: scaleX(0);

    transform-origin: left;

    transition: transform .3s ease;
}

.included-item::after {
    content: "";

    position: absolute;

    right: -30px;
    bottom: -30px;

    width: 85px;
    height: 85px;

    border-radius: 50%;

    background: var(--cyan-soft);
}

.included-item:hover {
    transform: translateY(-5px);

    border-color: #CDE9EF;

    box-shadow: var(--shadow-md);
}

.included-item:hover::before {
    transform: scaleX(1);
}

.included-item strong {
    position: relative;

    z-index: 2;

    display: block;

    color: var(--cyan-dark);

    font-size: 27px;
    font-weight: 900;
}

.included-item p {
    position: relative;

    z-index: 2;

    margin: 12px 0 0;

    color: var(--navy);

    font-size: 14px;

    line-height: 1.8;
}


/* ==========================================================
   17. NOT INCLUDED
   ========================================================== */

.not-included {
    padding: 95px 20px;

    background:
        linear-gradient(
            180deg,
            #F6FAFB 0%,
            #EEF7F9 100%
        );
}

.not-included .section-heading {
    max-width: 760px;
}

.not-included-list {
    width: min(1050px, 100%);

    margin: auto;

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 16px;
}

.not-included-list > div {
    padding: 26px;

    display: flex;
    align-items: flex-start;

    gap: 15px;

    border: 1px solid var(--border);
    border-radius: 16px;

    background: #FFFFFF;

    box-shadow: var(--shadow-sm);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.not-included-list > div:hover {
    transform: translateY(-4px);

    border-color: #D1E8ED;

    box-shadow: var(--shadow-md);
}

.not-included-list span {
    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    border-radius: 11px;

    background: var(--cyan-soft);

    color: var(--cyan-dark);

    font-size: 12px;
    font-weight: 900;
}

.not-included-list > div:nth-child(2) span {
    background: var(--lime-soft);

    color: var(--lime-dark);
}

.not-included-list p {
    margin: 3px 0 0;

    color: var(--text);

    font-size: 14px;

    line-height: 1.8;
}


/* ==========================================================
   18. PRICING SECTION
   ========================================================== */

.pricing-section {
    width: min(1220px, calc(100% - 40px));
}


/* ==========================================================
   19. PRICE GROUP
   ========================================================== */

.price-group {
    position: relative;

    margin-bottom: 25px;

    overflow: hidden;

    border: 1px solid var(--border);
    border-radius: 18px;

    background: #FFFFFF;

    box-shadow: var(--shadow-sm);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.price-group:hover {
    transform: translateY(-3px);

    box-shadow: var(--shadow-md);
}


/* ==========================================================
   20. PRICE HEADER
   ========================================================== */

.price-info {
    position: relative;

    margin: 0;

    padding: 22px 24px;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 9px;

    overflow: hidden;

    border: 0;

    background:
        linear-gradient(
            135deg,
            var(--navy),
            var(--navy-2)
        );
}

.price-info::after {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 5px;
    height: 100%;

    background:
        linear-gradient(
            180deg,
            var(--cyan) 0%,
            var(--cyan) 70%,
            var(--lime) 70%,
            var(--lime) 100%
        );
}

.price-info h3 {
    margin: 0 8px 0 0;

    padding: 0;

    color: #FFFFFF;

    font-size: 19px;
    font-weight: 800;
}

.price-info p {
    margin: 0;

    padding: 6px 11px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 50px;

    background: rgba(255, 255, 255, .08);

    color: rgba(255, 255, 255, .78);

    font-size: 11px;
    font-weight: 700;
}


/* ==========================================================
   21. PRICE TABLE
   ========================================================== */

.price-table {
    width: 100%;

    border-collapse: collapse;

    background: #FFFFFF;
}

.price-table th {
    padding: 14px 18px;

    border-bottom: 1px solid var(--border);

    background: #F5FAFB;

    color: var(--muted);

    text-align: left;

    font-size: 11px;
    font-weight: 800;
}

.price-table td {
    padding: 17px 18px;

    border-bottom: 1px solid #EDF2F4;

    background: #FFFFFF;

    color: var(--text);

    font-size: 13px;

    line-height: 1.7;

    vertical-align: middle;

    transition: background .2s ease;
}

.price-table tbody tr:last-child td {
    border-bottom: 0;
}

.price-table tbody tr:hover td {
    background: #F3FCFD;
}

.price-table td:first-child {
    width: 125px;

    color: var(--navy);

    font-weight: 800;
}

.price-table td:last-child {
    width: 130px;

    color: var(--cyan-dark);

    font-size: 18px;
    font-weight: 900;

    white-space: nowrap;
}


/* ==========================================================
   22. PRICE NOTES
   ========================================================== */

.price-notes {
    position: relative;

    margin-top: 35px;

    padding: 25px 27px;

    overflow: hidden;

    border: 1px solid #D6EBEF;
    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            var(--cyan-soft),
            #FBFEFF
        );
}

.price-notes::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;
    bottom: 0;

    width: 4px;

    background:
        linear-gradient(
            180deg,
            var(--cyan) 0%,
            var(--cyan) 70%,
            var(--lime) 70%
        );
}

.price-notes p {
    margin: 4px 0;

    color: var(--text);

    font-size: 14px;
}

.price-notes strong {
    color: var(--navy);
}

.price-notes b {
    color: var(--cyan-dark);
}


/* ==========================================================
   23. OPTIONAL SERVICES
   ========================================================== */

.optional-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;
}

.optional-card {
    position: relative;

    padding: 32px;

    overflow: hidden;

    border: 1px solid var(--border);
    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            var(--cyan-soft) 0%,
            #FFFFFF 70%
        );

    box-shadow: var(--shadow-sm);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.optional-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background:
        linear-gradient(
            90deg,
            var(--cyan) 0%,
            var(--cyan) 78%,
            var(--lime) 78%,
            var(--lime) 100%
        );
}

.optional-card::after {
    content: "";

    position: absolute;

    right: -50px;
    bottom: -50px;

    width: 140px;
    height: 140px;

    border-radius: 50%;

    background: var(--cyan);

    opacity: .05;
}

.optional-card:hover {
    transform: translateY(-5px);

    border-color: rgba(0, 191, 231, .25);

    box-shadow: var(--shadow-md);
}

.optional-card > span {
    position: relative;

    z-index: 2;

    width: 48px;
    height: 48px;

    display: grid;
    place-items: center;

    margin-bottom: 20px;

    border-radius: 13px;

    background: var(--cyan);

    color: #FFFFFF;

    font-size: 23px;
    font-weight: 800;

    box-shadow:
        0 10px 25px rgba(0, 191, 231, .22);
}

.optional-card h3 {
    position: relative;

    z-index: 2;

    margin: 0 0 8px;

    color: var(--navy);

    font-size: 21px;
    font-weight: 800;
}

.optional-card p {
    position: relative;

    z-index: 2;

    margin: 0;

    color: var(--text);

    font-size: 14px;

    line-height: 1.8;
}

.optional-card strong {
    color: var(--cyan-dark);
}


/* ==========================================================
   24. VEHICLES
   ========================================================== */

.vehicle-section {
    padding-top: 90px;
    padding-bottom: 100px;
}

.vehicle-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 15px;
}

.vehicle-card {
    position: relative;

    padding: 32px 20px;

    overflow: hidden;

    text-align: center;

    border: 1px solid var(--border);
    border-radius: 16px;

    background: #FFFFFF;

    box-shadow: var(--shadow-sm);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.vehicle-card::before {
    content: "";

    display: block;

    width: 42px;
    height: 4px;

    margin: 0 auto 18px;

    border-radius: 10px;

    background:
        linear-gradient(
            90deg,
            var(--cyan) 0%,
            var(--cyan) 72%,
            var(--lime) 72%,
            var(--lime) 100%
        );
}

.vehicle-card::after {
    content: "";

    position: absolute;

    width: 80px;
    height: 80px;

    right: -40px;
    bottom: -40px;

    border-radius: 50%;

    background: var(--cyan-soft);
}

.vehicle-card:hover {
    transform: translateY(-5px);

    border-color: #CDE5E9;

    box-shadow: var(--shadow-md);
}

.vehicle-card h3 {
    position: relative;

    z-index: 2;

    margin: 0 0 8px;

    color: var(--navy);

    font-size: 18px;
    font-weight: 800;
}

.vehicle-card p {
    position: relative;

    z-index: 2;

    margin: 2px 0;

    color: var(--muted);

    font-size: 13px;
}

.vehicle-note {
    margin-top: 20px;

    padding: 17px 20px;

    border: 1px solid #D8EDF1;
    border-radius: 12px;

    background: var(--cyan-soft);

    color: var(--text);

    text-align: center;

    font-size: 13px;
}


/* ==========================================================
   25. BOOKING CTA
   ========================================================== */

.booking-section {
    position: relative;

    width: min(1180px, calc(100% - 40px));

    margin: 25px auto 70px;

    padding: 62px 55px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 40px;

    overflow: hidden;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            var(--navy-dark) 0%,
            var(--navy) 55%,
            #0B5267 100%
        );

    box-shadow:
        0 22px 55px rgba(9, 43, 73, .18);
}

.booking-section::before {
    content: "";

    position: absolute;

    width: 290px;
    height: 290px;

    right: -110px;
    top: -160px;

    border-radius: 50%;

    background: var(--cyan);

    opacity: .15;
}

.booking-section::after {
    content: "";

    position: absolute;

    width: 150px;
    height: 150px;

    left: 40%;
    bottom: -100px;

    border-radius: 50%;

    background: var(--lime);

    opacity: .10;
}

.booking-section > div,
.booking-section > .tour-btn {
    position: relative;

    z-index: 2;
}

.booking-section > div > span {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    color: var(--lime);

    font-size: 11px;
    font-weight: 800;
}

.booking-section > div > span::before {
    content: "";

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--cyan);
}

.booking-section h2 {
    margin: 7px 0 9px;

    color: #FFFFFF;

    font-size: clamp(30px, 4vw, 41px);
    font-weight: 800;

    line-height: 1.25;
}

.booking-section p {
    max-width: 600px;

    margin: 0;

    color: rgba(255, 255, 255, .78);

    font-size: 14px;
}

.booking-section .tour-btn {
    flex: 0 0 auto;

    min-width: 175px;

    background: var(--cyan);

    color: #FFFFFF !important;
}

.booking-section .tour-btn:hover {
    background: var(--lime);

    color: var(--navy) !important;

    box-shadow:
        0 16px 35px rgba(186, 204, 64, .20);
}


/* ==========================================================
   26. ANIMATIONS
   ========================================================== */

@keyframes fadeUp {

    from {
        opacity: 0;

        transform: translateY(25px);
    }

    to {
        opacity: 1;

        transform: translateY(0);
    }
}

@keyframes fadeDown {

    from {
        opacity: 0;

        transform: translateY(-20px);
    }

    to {
        opacity: 1;

        transform: translateY(0);
    }
}


/* ==========================================================
   27. TABLET
   ========================================================== */

@media (max-width: 1024px) {

    .tour-section,
    .vehicle-section,
    .optional-section {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .intro-grid {
        gap: 45px;
    }

    .tour-day {
        gap: 45px;

        padding-top: 75px;
        padding-bottom: 75px;
    }

    .intro-image img {
        height: 380px;
    }

    .day-image img {
        height: 380px;
    }

    .included-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .vehicle-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .not-included-list {
        grid-template-columns: 1fr;
    }
}


/* ==========================================================
   28. MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .albania-tour {
        font-size: 15px;
    }


    /* HERO */

    .tour-hero {
        height: 590px;
        min-height: 590px;
    }

    .hero-overlay {
        width: calc(100% - 30px);

        padding:
            70px
            5px
            42px;
    }

    .hero-label {
        margin-bottom: 13px;

        padding: 7px 14px;

        font-size: 10px;
    }

    .hero-overlay h1 {
        font-size: 42px;

        line-height: 1.14;

        letter-spacing: -.3px;
    }

    .hero-overlay p {
        max-width: 430px;

        margin: 15px auto 21px;

        font-size: 14px;

        line-height: 1.7;
    }

    .hero-overlay .tour-btn {
        min-width: 160px;
        min-height: 48px;
    }


    /* WIDTHS */

    .tour-section,
    .tour-day,
    .vehicle-section,
    .optional-section,
    .pricing-section {
        width: calc(100% - 30px);
    }

    .tour-section,
    .vehicle-section,
    .optional-section {
        padding-top: 65px;
        padding-bottom: 65px;
    }


    /* HEADINGS */

    .section-heading {
        margin-bottom: 40px;
    }

    .section-heading > span {
        font-size: 10px;
    }

    .section-heading h2 {
        font-size: 30px;
    }

    .section-heading::after {
        margin-top: 17px;
    }


    /* INTRO */

    .intro-grid {
        grid-template-columns: 1fr;

        gap: 35px;
    }

    .intro-image {
        order: -1;
    }

    .intro-image::before,
    .intro-image::after {
        display: none;
    }

    .intro-image img {
        height: 300px;

        border-radius: 18px;
    }

    .intro-text h3 {
        font-size: 25px;
    }

    .intro-text p {
        font-size: 14px;

        line-height: 1.9;
    }


    /* DESTINATIONS */

    .destination-list {
        gap: 6px;
    }

    .destination-list span {
        padding: 6px 11px;

        font-size: 11px;
    }


    /* ITINERARY */

    .tour-day {
        grid-template-columns: 1fr;

        gap: 28px;

        padding-top: 58px;
        padding-bottom: 58px;
    }

    .tour-day.reverse .day-image,
    .tour-day.reverse .day-content {
        order: initial;
    }

    .day-image {
        border-radius: 18px;
    }

    .day-image img {
        height: 295px;
    }

    .day-image::before {
        inset: 8px;

        border-radius: 12px;
    }

    .day-content h2 {
        margin-top: 11px;

        font-size: 31px;
    }

    .day-content p {
        font-size: 14px;

        line-height: 1.9;
    }

    .evening-box {
        padding: 18px;

        border-radius: 10px;
    }


    /* FINAL DAY */

    .final-day {
        min-height: 440px;
    }

    .final-day-content {
        width: calc(100% - 30px);

        padding-inline: 5px;
    }

    .final-day-content h2 {
        font-size: 39px;
    }

    .final-day-content p {
        font-size: 14px;
    }


    /* INCLUDED */

    .included-grid {
        grid-template-columns: 1fr;

        gap: 11px;
    }

    .included-item {
        min-height: auto;

        padding: 22px 20px;
    }

    .included-item strong {
        font-size: 23px;
    }


    /* NOT INCLUDED */

    .not-included {
        padding: 65px 15px;
    }

    .not-included-list {
        grid-template-columns: 1fr;

        gap: 11px;
    }

    .not-included-list > div {
        padding: 20px;
    }


    /* OPTIONAL */

    .optional-grid {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .optional-card {
        padding: 25px 21px;
    }


    /* PRICE GROUP */

    .price-group {
        border-radius: 15px;
    }

    .price-info {
        padding: 18px;

        gap: 7px;
    }

    .price-info h3 {
        width: 100%;

        margin: 0 0 4px;

        font-size: 18px;
    }

    .price-info p {
        padding: 5px 9px;

        font-size: 10px;
    }


    /* ======================================================
       MOBILE PRICE TABLE
       TABLE -> CARDS
       ====================================================== */

    .price-table,
    .price-table thead,
    .price-table tbody,
    .price-table tr,
    .price-table th,
    .price-table td {
        display: block;

        width: 100%;
    }

    .price-table thead {
        display: none;
    }

    .price-table {
        background: #F4F9FA;
    }

    .price-table tbody {
        display: grid;

        gap: 10px;

        padding: 10px;
    }

    .price-table tr {
        overflow: hidden;

        border: 1px solid var(--border);
        border-radius: 12px;

        background: #FFFFFF;

        box-shadow:
            0 4px 14px rgba(9, 43, 73, .04);
    }

    .price-table td {
        position: relative;

        width: 100% !important;

        padding:
            10px
            12px
            10px
            100px;

        border: 0;
        border-bottom: 1px solid #EDF2F4;

        background: #FFFFFF !important;

        color: var(--text);

        font-size: 12px;

        white-space: normal !important;
    }

    .price-table td:last-child {
        border-bottom: 0;

        color: var(--cyan-dark);

        font-size: 17px;
    }

    .price-table td::before {
        position: absolute;

        left: 12px;
        top: 10px;

        width: 75px;

        color: var(--muted);

        font-size: 10px;
        font-weight: 800;
    }

    .price-table td:nth-child(1)::before {
        content: "Option";
    }

    .price-table td:nth-child(2)::before {
        content: "Hotels";
    }

    .price-table td:nth-child(3)::before {
        content: "Price";
    }


    /* PRICE NOTES */

    .price-notes {
        margin-top: 25px;

        padding: 20px;
    }

    .price-notes p {
        font-size: 12px;
    }


    /* VEHICLES */

    .vehicle-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .vehicle-card {
        padding: 25px 15px;
    }


    /* BOOKING */

    .booking-section {
        width: calc(100% - 30px);

        margin: 15px auto 45px;

        padding: 44px 24px;

        display: block;

        text-align: center;

        border-radius: 19px;
    }

    .booking-section h2 {
        font-size: 30px;
    }

    .booking-section p {
        margin-inline: auto;
    }

    .booking-section .tour-btn {
        width: 100%;

        margin-top: 23px;
    }
}


/* ==========================================================
   29. SMALL MOBILE
   ========================================================== */

@media (max-width: 430px) {

    .tour-hero {
        height: 540px;
        min-height: 540px;
    }

    .hero-overlay {
        padding-bottom: 35px;
    }

    .hero-overlay h1 {
        font-size: 37px;
    }

    .hero-overlay p {
        font-size: 13px;
    }


    .tour-section,
    .tour-day,
    .vehicle-section,
    .optional-section,
    .pricing-section {
        width: calc(100% - 24px);
    }


    .section-heading h2 {
        font-size: 27px;
    }


    .intro-image img,
    .day-image img {
        height: 255px;
    }


    .day-content h2 {
        font-size: 28px;
    }


    .price-table tbody {
        padding: 8px;
    }

    .price-table td {
        padding-left: 87px;
    }

    .price-table td::before {
        width: 65px;
    }


    .vehicle-grid {
        grid-template-columns: 1fr;
    }


    .booking-section {
        width: calc(100% - 24px);

        padding: 38px 20px;
    }
}


/* ==========================================================
   30. RTL / ARABIC SUPPORT
   Add dir="rtl" to .albania-tour or the page when Arabic
   ========================================================== */

.albania-tour[dir="rtl"],
[dir="rtl"] .albania-tour {
    direction: rtl;
    text-align: right;
}

.albania-tour[dir="rtl"] .price-table th,
[dir="rtl"] .albania-tour .price-table th {
    text-align: right;
}

.albania-tour[dir="rtl"] .check-list li,
[dir="rtl"] .albania-tour .check-list li {
    padding:
        12px
        46px
        12px
        16px;
}

.albania-tour[dir="rtl"] .check-list li::before,
[dir="rtl"] .albania-tour .check-list li::before {
    right: 13px;
    left: auto;
}

.albania-tour[dir="rtl"] .check-list li:hover,
[dir="rtl"] .albania-tour .check-list li:hover {
    transform: translateX(-4px);
}

.albania-tour[dir="rtl"] .evening-box,
[dir="rtl"] .albania-tour .evening-box {
    border-left: 1px solid #DDEFF2;
    border-right: 4px solid var(--cyan);
}

.albania-tour[dir="rtl"] .evening-box::before,
[dir="rtl"] .albania-tour .evening-box::before {
    right: -4px;
    left: auto;
}

.albania-tour[dir="rtl"] .price-info::after,
[dir="rtl"] .albania-tour .price-info::after {
    right: 0;
    left: auto;
}

.albania-tour[dir="rtl"] .price-notes::before,
[dir="rtl"] .albania-tour .price-notes::before {
    right: 0;
    left: auto;
}

@media (max-width: 767px) {

    .albania-tour[dir="rtl"] .price-table td,
    [dir="rtl"] .albania-tour .price-table td {
        padding:
            10px
            100px
            10px
            12px;
    }

    .albania-tour[dir="rtl"] .price-table td::before,
    [dir="rtl"] .albania-tour .price-table td::before {
        right: 12px;
        left: auto;
    }

    .albania-tour[dir="rtl"] .price-table td:nth-child(1)::before,
    [dir="rtl"] .albania-tour .price-table td:nth-child(1)::before {
        content: "العرض";
    }

    .albania-tour[dir="rtl"] .price-table td:nth-child(2)::before,
    [dir="rtl"] .albania-tour .price-table td:nth-child(2)::before {
        content: "الفنادق";
    }

    .albania-tour[dir="rtl"] .price-table td:nth-child(3)::before,
    [dir="rtl"] .albania-tour .price-table td:nth-child(3)::before {
        content: "السعر";
    }
}


/* ==========================================================
   31. LARGE DESKTOP
   ========================================================== */

@media (min-width: 1400px) {

    .tour-hero {
        height: 760px;
    }

    .tour-section,
    .tour-day,
    .vehicle-section,
    .optional-section {
        width: min(1220px, calc(100% - 60px));
    }

    .pricing-section {
        width: min(1260px, calc(100% - 60px));
    }

    .intro-image img {
        height: 455px;
    }

    .day-image img {
        height: 455px;
    }
}


/* ==========================================================
   32. REDUCED MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    .albania-tour *,
    .albania-tour *::before,
    .albania-tour *::after {
        animation: none !important;

        transition-duration: .01ms !important;

        scroll-behavior: auto !important;
    }
}/* End custom CSS */
/* Start custom CSS for wpr-logo, class: .elementor-element-c98561f */.elementor-876 .elementor-element.elementor-element-c98561f{
    position: relative;
    overflow: hidden;
    border-radius: 20px; /* اختياري */
}

.elementor-876 .elementor-element.elementor-element-c98561f::after{
    content: "";
    position: absolute;
    top: -40%;
    left: -150%;

    width: 60%;
    height: 180%;

    background: linear-gradient(
        115deg,
        transparent 20%,
        rgba(255,255,255,0.05) 35%,
        rgba(255,255,255,0.45) 50%,
        rgba(255,255,255,0.05) 65%,
        transparent 80%
    );

    transform: rotate(18deg);
    animation: luxuryShine 4.5s ease-in-out infinite;

    pointer-events: none;
    z-index: 2;
}

@keyframes luxuryShine{
    0%{
        left:-160%;
    }
    100%{
        left:180%;
    }
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-5f213d14 */.elementor-876 .elementor-element.elementor-element-5f213d14{
    position: relative;
    overflow: visible !important;
    border-radius: 22px;
    transition: transform .45s cubic-bezier(.22,1,.36,1),
                box-shadow .45s ease;
    transform-origin: center;
    z-index: 1;
}

.elementor-876 .elementor-element.elementor-element-5f213d14:hover{
    transform: translateY(-8px) scale(1.015);
    box-shadow: 0 25px 55px rgba(0,0,0,.18);
    z-index: 10;
}

/* يمنع قصّ محتوى البطاقة */
.elementor-876 .elementor-element.elementor-element-5f213d14 > .elementor-widget-wrap,
.elementor-876 .elementor-element.elementor-element-5f213d14 > .e-con-inner{
    overflow: visible !important;
}
.elementor-876 .elementor-element.elementor-element-5f213d14{
    position: relative;
    overflow: hidden;
    border-radius: 20px; /* اختياري */
}

.elementor-876 .elementor-element.elementor-element-5f213d14::after{
    content: "";
    position: absolute;
    top: -40%;
    left: -150%;

    width: 60%;
    height: 180%;

    background: linear-gradient(
        115deg,
        transparent 20%,
        rgba(255,255,255,0.05) 35%,
        rgba(255,255,255,0.45) 50%,
        rgba(255,255,255,0.05) 65%,
        transparent 80%
    );

    transform: rotate(18deg);
    animation: luxuryShine 4.5s ease-in-out infinite;

    pointer-events: none;
    z-index: 2;
}

@keyframes luxuryShine{
    0%{
        left:-160%;
    }
    100%{
        left:180%;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ebf18c0 *//* =================================
   Contact Section Only
================================= */

.contact-section {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    padding: 30px;

    background: #ffffff;
    border: 1px solid #e8ebf0;
    border-radius: 18px;

    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.07);
}


/* Office Item */

.contact-section .contact-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;

    padding: 24px 0;

    border-bottom: 1px solid #eeeeee;
}

.contact-section .contact-item:first-child {
    padding-top: 0;
}

.contact-section .contact-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}


/* Icon */

.contact-section .contact-icon {
    width: 48px;
    height: 48px;

    flex: 0 0 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 22px;

    background: #f5f7fa;
    border-radius: 12px;
}


/* Content */

.contact-section .contact-content {
    flex: 1;
}

.contact-section .contact-content h3 {
    margin: 0 0 10px;

    font-size: 19px;
    font-weight: 700;

    color: #172033;
}


.contact-section .contact-content p {
    margin: 0 0 9px;

    font-size: 14px;
    line-height: 1.7;

    color: #687386;
}

.contact-section .contact-content p:last-child {
    margin-bottom: 0;
}


/* Phone / Fax */

.contact-section .contact-content strong {
    color: #273449;
    font-weight: 600;
}


/* Hover */

.contact-section .contact-item {
    transition: transform 0.25s ease;
}

.contact-section .contact-item:hover {
    transform: translateX(4px);
}


/* Mobile */

@media (max-width: 600px) {

    .contact-section {
        padding: 22px 18px;
        border-radius: 14px;
    }

    .contact-section .contact-item {
        gap: 13px;
    }

    .contact-section .contact-icon {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
        font-size: 19px;
    }

    .contact-section .contact-content h3 {
        font-size: 17px;
    }

    .contact-section .contact-content p {
        font-size: 13px;
    }
}/* End custom CSS */