.elementor-1032 .elementor-element.elementor-element-88f26fb{--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-1032 .elementor-element.elementor-element-78854968:not(.elementor-motion-effects-element-type-background), .elementor-1032 .elementor-element.elementor-element-78854968 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1032 .elementor-element.elementor-element-78854968 > .elementor-container{max-width:1600px;}.elementor-1032 .elementor-element.elementor-element-78854968{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:40px;margin-bottom:50px;}.elementor-1032 .elementor-element.elementor-element-78854968 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1032 .elementor-element.elementor-element-12d80cd2 > .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-1032 .elementor-element.elementor-element-2ce2d7b8{text-align:left;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8 .wpr-logo{padding:0px 0px 0px 0px;border-radius:2px 2px 2px 2px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8 .wpr-logo-image{max-width:148px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8.wpr-logo-position-left .wpr-logo-image{margin-right:0px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8.wpr-logo-position-right .wpr-logo-image{margin-left:0px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8.wpr-logo-position-center .wpr-logo-image{margin-bottom:0px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8 .wpr-logo-image img{-webkit-transition-duration:0.7s;transition-duration:0.7s;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8 .wpr-logo-title{color:#605BE5;margin:0 0 0px;}.elementor-1032 .elementor-element.elementor-element-2ce2d7b8 .wpr-logo-description{color:#888888;}.elementor-1032 .elementor-element.elementor-element-6c12bb5e > .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-1032 .elementor-element.elementor-element-17e38d92{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;line-height:0.9em;color:#0591F9;}.elementor-1032 .elementor-element.elementor-element-5aa91a08 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-662865a9 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-21a0c1dd .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-99180a1 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-35a546b6 > .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-1032 .elementor-element.elementor-element-29af39a3{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;line-height:0.9em;color:#0591F9;}.elementor-1032 .elementor-element.elementor-element-4ded586d .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-22f0102d .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;color:#000000;}.elementor-1032 .elementor-element.elementor-element-303283b9 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:14px;font-weight:400;line-height:1.4em;color:#000000;}.elementor-1032 .elementor-element.elementor-element-63d3c146{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-1032 .elementor-element.elementor-element-63a0a57{--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-1032 .elementor-element.elementor-element-3f2f9075{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1032 .elementor-element.elementor-element-98c103{text-align:center;}.elementor-1032 .elementor-element.elementor-element-2eb475f7{text-align:center;}.elementor-1032 .elementor-element.elementor-element-2eb475f7 .elementor-heading-title{font-size:26px;color:#0591F9;}.elementor-1032 .elementor-element.elementor-element-5fa8ebe4{--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-1032 .elementor-element.elementor-element-61301f2c{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:100px;--padding-right:0px;}.elementor-1032 .elementor-element.elementor-element-51967393{text-align:center;}.elementor-1032 .elementor-element.elementor-element-51967393 img{width:27%;}.elementor-1032 .elementor-element.elementor-element-6b6ef77e{text-align:center;}.elementor-1032 .elementor-element.elementor-element-6b6ef77e .elementor-heading-title{font-size:20px;}.elementor-1032 .elementor-element.elementor-element-7907a7cc .elementor-button{background-color:#0591F9;fill:#FFFFFF;color:#FFFFFF;}.elementor-1032 .elementor-element.elementor-element-7907a7cc > .elementor-widget-container{padding:30px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-1032 .elementor-element.elementor-element-78854968{padding:0px 20px 0px 20px;}.elementor-1032 .elementor-element.elementor-element-17e38d92{font-size:15px;}.elementor-1032 .elementor-element.elementor-element-29af39a3{font-size:15px;}.elementor-1032 .elementor-element.elementor-element-63a0a57{--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-1032 .elementor-element.elementor-element-61301f2c{--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:0px;}}@media(min-width:768px){.elementor-1032 .elementor-element.elementor-element-88f26fb{--content-width:1600px;}.elementor-1032 .elementor-element.elementor-element-63a0a57{--content-width:1600px;}.elementor-1032 .elementor-element.elementor-element-61301f2c{--width:100%;}}@media(max-width:767px){.elementor-1032 .elementor-element.elementor-element-78854968{margin-top:0px;margin-bottom:0px;}.elementor-1032 .elementor-element.elementor-element-63a0a57{--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-1032 .elementor-element.elementor-element-2eb475f7 .elementor-heading-title{font-size:22px;}.elementor-1032 .elementor-element.elementor-element-61301f2c{--padding-top:30px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-1032 .elementor-element.elementor-element-51967393 img{width:60%;}.elementor-1032 .elementor-element.elementor-element-6b6ef77e .elementor-heading-title{font-size:20px;}}/* Start custom CSS for html, class: .elementor-element-8cec1bc *//* ==========================================================
   SAFARI ALB — T1 DESIGN
   COMPLETE CSS
   ========================================================== */

.t1-tour {
    --cyan: #00bfe7;
    --cyan-dark: #009dbf;
    --cyan-soft: #e9fafd;

    --lime: #b9cc38;
    --lime-dark: #9eaf28;
    --lime-soft: #f5f8e8;

    --navy: #062d43;
    --navy-2: #0b4058;

    --text: #486171;
    --muted: #7b909d;

    --white: #ffffff;
    --soft: #f5fafb;
    --line: #deebef;

    --shadow: 0 20px 60px rgba(6, 45, 67, 0.11);
    --shadow-small: 0 10px 30px rgba(6, 45, 67, 0.08);

    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;

    background: var(--white);
    color: var(--text);

    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.75;
}


/* ==========================================================
   RESET
   ========================================================== */

.t1-tour *,
.t1-tour *::before,
.t1-tour *::after {
    box-sizing: border-box;
}

.t1-tour h1,
.t1-tour h2,
.t1-tour h3,
.t1-tour h4,
.t1-tour p {
    margin-top: 0;
}

.t1-tour img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.t1-tour a {
    text-decoration: none;
}


/* ==========================================================
   CONTAINER
   ========================================================== */

.t1-container {
    width: min(1180px, calc(100% - 44px));
    margin-left: auto;
    margin-right: auto;
}


/* ==========================================================
   SMALL LABEL
   ========================================================== */

.t1-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.t1-label::before {
    content: "";

    width: 8px;
    height: 8px;

    flex: 0 0 8px;

    border-radius: 50%;

    background: var(--lime);
}


/* ==========================================================
   BUTTON
   ========================================================== */

.t1-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 52px;

    padding: 13px 28px;

    border: 0;
    border-radius: 100px;

    background: var(--cyan);

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 800;
    line-height: 1;

    box-shadow: 0 12px 30px rgba(0, 191, 231, 0.28);

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        color 0.25s ease,
        box-shadow 0.25s ease;
}

.t1-btn:hover {
    transform: translateY(-3px);

    background: var(--lime);

    color: var(--navy) !important;

    box-shadow: 0 15px 35px rgba(6, 45, 67, 0.18);
}


/* ==========================================================
   HERO
   ========================================================== */

.t1-hero {
    position: relative;

    min-height: 760px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background: var(--navy);
}

.t1-hero > img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;
}

.t1-hero-shade {
    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(
            90deg,
            rgba(3, 31, 46, 0.94) 0%,
            rgba(3, 31, 46, 0.80) 35%,
            rgba(3, 31, 46, 0.42) 68%,
            rgba(3, 31, 46, 0.18) 100%
        );
}

.t1-hero-shade::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            0deg,
            rgba(3, 31, 46, 0.58),
            transparent 48%
        );
}

.t1-hero-content {
    position: relative;

    z-index: 3;

    width: min(1180px, calc(100% - 44px));

    margin-left: auto;
    margin-right: auto;

    padding-bottom: 70px;
}

.t1-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 20px;

    padding: 9px 16px;

    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 100px;

    background: rgba(255, 255, 255, 0.09);

    color: #ffffff;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.t1-kicker::before {
    content: "";

    width: 8px;
    height: 8px;

    flex: 0 0 8px;

    border-radius: 50%;

    background: var(--lime);
}

.t1-hero h1 {
    max-width: 750px;

    margin: 0 0 18px;

    color: #ffffff;

    font-size: clamp(60px, 8vw, 105px);
    font-weight: 800;

    line-height: 0.9;

    letter-spacing: -0.055em;
}

.t1-hero h1 small {
    display: block;

    margin-top: 14px;

    color: var(--lime);

    font-size: 0.43em;
    font-weight: 800;

    line-height: 1;

    letter-spacing: -0.02em;
}

.t1-hero-content > p {
    max-width: 700px;

    margin: 0 0 30px;

    color: rgba(255, 255, 255, 0.85);

    font-size: 16px;
    line-height: 1.8;
}


/* ==========================================================
   HERO STATS
   ========================================================== */

.t1-hero-stats {
    position: absolute;

    z-index: 4;

    right: max(22px, calc((100vw - 1180px) / 2));
    bottom: 40px;

    display: flex;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 20px;

    background: rgba(4, 40, 57, 0.68);

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.t1-hero-stats > div {
    min-width: 115px;

    padding: 17px 22px;

    border-right: 1px solid rgba(255, 255, 255, 0.14);

    text-align: center;
}

.t1-hero-stats > div:last-child {
    border-right: 0;
}

.t1-hero-stats strong {
    display: block;

    color: var(--lime);

    font-size: 25px;
    font-weight: 900;

    line-height: 1.1;
}

.t1-hero-stats span {
    display: block;

    margin-top: 3px;

    color: rgba(255, 255, 255, 0.72);

    font-size: 10px;
    font-weight: 700;

    text-transform: uppercase;
}


/* ==========================================================
   INTRO
   ========================================================== */

.t1-intro {
    display: grid;

    grid-template-columns: 0.9fr 1.1fr;

    gap: 80px;

    align-items: center;

    padding: 110px 0;
}

.t1-intro-copy h2 {
    margin: 12px 0 22px;

    color: var(--navy);

    font-size: clamp(38px, 5vw, 60px);
    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -0.04em;
}

.t1-intro-copy > p {
    max-width: 520px;

    margin-bottom: 0;

    color: var(--text);

    font-size: 15px;
    line-height: 1.9;
}


/* ==========================================================
   DESTINATION TAGS
   ========================================================== */

.t1-tags,
.t1-mini-tags {
    display: flex;
    flex-wrap: wrap;

    gap: 8px;

    margin-top: 24px;
}

.t1-tags span,
.t1-mini-tags span {
    display: inline-flex;
    align-items: center;

    padding: 7px 13px;

    border: 1px solid #d9edf1;
    border-radius: 100px;

    background: var(--cyan-soft);

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 700;
}


/* ==========================================================
   INTRO IMAGE
   ========================================================== */

.t1-intro-photo {
    position: relative;

    padding: 0 0 25px 25px;
}

.t1-intro-photo::before {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 65%;
    height: 70%;

    border-radius: 30px;

    background: var(--lime);
}

.t1-intro-photo img {
    position: relative;

    z-index: 1;

    width: 100%;
    height: 520px;

    object-fit: cover;

    border-radius: 30px;

    box-shadow: var(--shadow);
}

.t1-photo-badge {
    position: absolute;

    z-index: 3;

    left: 0;
    bottom: 55px;

    width: 155px;

    padding: 22px;

    border-radius: 18px;

    background: var(--navy);

    box-shadow: var(--shadow);
}

.t1-photo-badge strong {
    display: block;

    color: var(--lime);

    font-size: 38px;
    font-weight: 900;

    line-height: 1;
}

.t1-photo-badge span {
    display: block;

    margin-top: 6px;

    color: #ffffff;

    font-size: 11px;
    line-height: 1.4;
}


/* ==========================================================
   SECTION HEADINGS
   ========================================================== */

.t1-heading {
    max-width: 700px;

    margin: 0 auto 65px;

    text-align: center;
}

.t1-heading h2 {
    margin: 10px 0 12px;

    color: var(--navy);

    font-size: clamp(36px, 5vw, 56px);
    font-weight: 800;

    line-height: 1.1;

    letter-spacing: -0.04em;
}

.t1-heading > p {
    max-width: 560px;

    margin: 0 auto;

    color: var(--muted);

    font-size: 15px;
}


/* ==========================================================
   ITINERARY
   ========================================================== */

.t1-itinerary {
    padding: 110px 0;

    background: var(--soft);
}

.t1-day {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 70px;

    align-items: center;

    margin-bottom: 90px;
}

.t1-day:last-child {
    margin-bottom: 0;
}

.t1-day-reverse .t1-day-photo {
    order: 2;
}

.t1-day-reverse .t1-day-copy {
    order: 1;
}


/* ==========================================================
   DAY IMAGE
   ========================================================== */

.t1-day-photo {
    position: relative;

    overflow: hidden;

    border-radius: 28px;

    background: #dce7eb;

    box-shadow: var(--shadow);
}

.t1-day-photo img {
    width: 100%;
    height: 440px;

    object-fit: cover;

    transition: transform 0.6s ease;
}

.t1-day:hover .t1-day-photo img {
    transform: scale(1.045);
}

.t1-day-photo > span {
    position: absolute;

    top: 18px;
    left: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 55px;
    height: 55px;

    border-radius: 50%;

    background: var(--cyan);

    color: #ffffff;

    font-size: 16px;
    font-weight: 900;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16);
}


/* ==========================================================
   DAY CONTENT
   ========================================================== */

.t1-day-label {
    display: block;

    margin-bottom: 12px;

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 900;

    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.t1-day-copy h3 {
    margin: 0 0 20px;

    color: var(--navy);

    font-size: clamp(30px, 4vw, 45px);
    font-weight: 800;

    line-height: 1.12;

    letter-spacing: -0.035em;
}

.t1-day-copy p {
    margin: 0 0 14px;

    color: var(--text);

    font-size: 15px;

    line-height: 1.9;
}


/* ==========================================================
   DAY HIGHLIGHT
   ========================================================== */

.t1-highlight {
    margin-top: 22px;

    padding: 20px 22px;

    border-left: 4px solid var(--lime);

    border-radius: 0 15px 15px 0;

    background: #ffffff;

    box-shadow: var(--shadow-small);
}

.t1-highlight strong {
    display: block;

    margin-bottom: 4px;

    color: var(--navy);

    font-size: 14px;
}

.t1-highlight p {
    margin: 0;
}


/* ==========================================================
   NOTICE
   ========================================================== */

.t1-notice {
    padding: 20px;

    border: 1px solid var(--line);
    border-radius: 14px;

    background: #ffffff;

    color: var(--muted);

    font-size: 14px;
    line-height: 1.8;
}


/* ==========================================================
   INCLUDED
   ========================================================== */

.t1-included {
    padding: 110px 0;

    background: #ffffff;
}

.t1-feature-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 16px;
}

.t1-feature {
    position: relative;

    min-height: 220px;

    padding: 28px 24px;

    overflow: hidden;

    border: 1px solid var(--line);
    border-radius: 20px;

    background: #ffffff;

    box-shadow: var(--shadow-small);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.t1-feature::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 4px;

    background:
        linear-gradient(
            90deg,
            var(--cyan) 78%,
            var(--lime) 78%
        );
}

.t1-feature:hover {
    transform: translateY(-6px);

    box-shadow: var(--shadow);
}

.t1-feature > span {
    color: var(--cyan-dark);

    font-size: 12px;
    font-weight: 900;
}

.t1-feature h3 {
    margin: 25px 0 8px;

    color: var(--navy);

    font-size: 19px;
    font-weight: 800;
}

.t1-feature p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
    line-height: 1.7;
}


/* ==========================================================
   NOT INCLUDED
   ========================================================== */

.t1-excluded {
    padding: 95px 0;

    background: var(--navy);
}

.t1-heading-light h2 {
    color: #ffffff;
}

.t1-heading-light .t1-label {
    color: var(--cyan);
}

.t1-excluded-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 15px;
}

.t1-excluded-grid > div {
    display: flex;

    align-items: center;

    gap: 14px;

    padding: 22px;

    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;

    background: rgba(255, 255, 255, 0.06);

    color: #ffffff;
}

.t1-excluded-grid span {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    flex: 0 0 30px;

    border-radius: 50%;

    background: rgba(0, 191, 231, 0.15);

    color: var(--cyan);

    font-size: 20px;
}

.t1-excluded-grid strong {
    color: #ffffff;

    font-size: 14px;
}


/* ==========================================================
   OPTIONAL SERVICES
   ========================================================== */

.t1-services {
    padding: 110px 0;
}

.t1-service-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.t1-service-card {
    position: relative;

    padding: 38px;

    overflow: hidden;

    border: 1px solid var(--line);
    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            #ffffff,
            var(--cyan-soft)
        );

    box-shadow: var(--shadow-small);
}

.t1-service-card::after {
    content: "";

    position: absolute;

    width: 130px;
    height: 130px;

    right: -50px;
    bottom: -50px;

    border-radius: 50%;

    background: var(--lime);

    opacity: 0.17;
}

.t1-service-card > span {
    position: relative;

    z-index: 2;

    color: var(--cyan-dark);

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 0.12em;
}

.t1-service-card h3 {
    position: relative;

    z-index: 2;

    margin: 10px 0 8px;

    color: var(--navy);

    font-size: 26px;
    font-weight: 800;
}

.t1-service-card p {
    position: relative;

    z-index: 2;

    max-width: 380px;

    margin-bottom: 25px;

    color: var(--muted);
}

.t1-service-card > strong {
    position: relative;

    z-index: 2;

    display: block;

    color: var(--navy);

    font-size: 42px;
    font-weight: 900;

    line-height: 1;
}

.t1-service-card > small {
    position: relative;

    z-index: 2;

    color: var(--cyan-dark);

    font-weight: 700;
}


/* ==========================================================
   VEHICLES
   ========================================================== */

.t1-vehicles {
    padding: 110px 0;

    background: var(--soft);
}

.t1-vehicle-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 16px;
}

.t1-vehicle {
    padding: 30px 22px;

    border: 1px solid var(--line);
    border-radius: 20px;

    background: #ffffff;

    text-align: center;

    box-shadow: var(--shadow-small);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.t1-vehicle:hover {
    transform: translateY(-6px);

    box-shadow: var(--shadow);
}

.t1-vehicle > span {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    margin: 0 auto 18px;

    border-radius: 50%;

    background: var(--cyan-soft);

    color: var(--cyan-dark);

    font-size: 11px;
    font-weight: 900;
}

.t1-vehicle h3 {
    margin: 0 0 8px;

    color: var(--navy);

    font-size: 20px;
    font-weight: 800;
}

.t1-vehicle strong {
    display: block;

    color: var(--cyan-dark);

    font-size: 14px;
}

.t1-vehicle p {
    margin: 3px 0 0;

    color: var(--muted);

    font-size: 13px;
}

.t1-vehicle-note {
    margin-top: 25px;

    padding: 17px 20px;

    border: 1px solid #d5edf2;
    border-radius: 13px;

    background: var(--cyan-soft);

    color: var(--text);

    text-align: center;

    font-size: 13px;
}


/* ==========================================================
   HOTEL / PRICING CARDS
   ========================================================== */

.t1-pricing {
    padding: 110px 0;

    background: #ffffff;
}

.t1-price-grid {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.t1-price-card {
    overflow: hidden;

    border: 1px solid var(--line);
    border-radius: 22px;

    background: #ffffff;

    box-shadow: var(--shadow-small);
}

.t1-price-head {
    position: relative;

    padding: 25px 28px;

    overflow: hidden;

    background: var(--navy);

    color: #ffffff;
}

.t1-price-head::after {
    content: "";

    position: absolute;

    right: -35px;
    top: -55px;

    width: 130px;
    height: 130px;

    border-radius: 50%;

    background: var(--cyan);

    opacity: 0.15;
}

.t1-price-head span {
    position: relative;

    z-index: 2;

    color: var(--lime);

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 0.12em;
}

.t1-price-head h3 {
    position: relative;

    z-index: 2;

    margin: 5px 0 0;

    color: #ffffff;

    font-size: 23px;
}

.t1-price-body {
    padding: 25px 28px;
}

.t1-price-body p {
    padding: 10px 0;

    margin: 0;

    border-bottom: 1px solid var(--line);

    color: var(--text);

    font-size: 13px;
}

.t1-price-body p:last-child {
    border-bottom: 0;
}

.t1-price-body strong {
    color: var(--navy);
}


/* ==========================================================
   PRICING TABLE
   ========================================================== */

.t1-table-wrap {
    width: 100%;

    overflow-x: auto;

    border: 1px solid var(--line);
    border-radius: 20px;

    background: #ffffff;

    box-shadow: var(--shadow-small);
}

.t1-table {
    width: 100%;

    min-width: 700px;

    border-collapse: collapse;
}

.t1-table th {
    padding: 17px 18px;

    background: var(--navy);

    color: #ffffff;

    font-size: 12px;
    font-weight: 800;

    text-align: left;
}

.t1-table td {
    padding: 16px 18px;

    border-bottom: 1px solid var(--line);

    color: var(--text);

    font-size: 13px;
}

.t1-table tr:last-child td {
    border-bottom: 0;
}

.t1-table tbody tr:hover {
    background: var(--cyan-soft);
}

.t1-table td strong {
    color: var(--navy);
}


/* ==========================================================
   CTA
   ========================================================== */

.t1-cta {
    position: relative;

    margin: 90px 0;

    padding: 55px 60px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    overflow: hidden;

    border-radius: 28px;

    background:
        linear-gradient(
            125deg,
            var(--navy),
            #07516a
        );

    box-shadow: var(--shadow);
}

.t1-cta::before {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: -100px;
    top: -150px;

    border-radius: 50%;

    background: var(--cyan);

    opacity: 0.14;
}

.t1-cta::after {
    content: "";

    position: absolute;

    width: 160px;
    height: 160px;

    right: 120px;
    bottom: -120px;

    border-radius: 50%;

    background: var(--lime);

    opacity: 0.18;
}

.t1-cta > * {
    position: relative;

    z-index: 2;
}

.t1-cta > div > span {
    color: var(--lime);

    font-size: 11px;
    font-weight: 900;

    letter-spacing: 0.14em;
}

.t1-cta h2 {
    margin: 5px 0;

    color: #ffffff;

    font-size: clamp(30px, 4vw, 44px);
    font-weight: 800;

    line-height: 1.1;
}

.t1-cta p {
    margin: 0;

    color: rgba(255, 255, 255, 0.72);
}

.t1-btn-light {
    background: #ffffff;

    color: var(--navy) !important;

    box-shadow: none;
}

.t1-btn-light:hover {
    background: var(--lime);

    color: var(--navy) !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 980px) {

    .t1-hero {
        min-height: 680px;
    }

    .t1-hero-stats {
        display: none;
    }

    .t1-intro {
        grid-template-columns: 1fr;

        gap: 50px;
    }

    .t1-intro-photo {
        max-width: 700px;
    }

    .t1-day {
        grid-template-columns: 1fr;

        gap: 35px;

        margin-bottom: 75px;
    }

    .t1-day-reverse .t1-day-photo,
    .t1-day-reverse .t1-day-copy {
        order: initial;
    }

    .t1-feature-grid,
    .t1-vehicle-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .t1-price-grid {
        grid-template-columns: 1fr;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 700px) {

    .t1-container {
        width: calc(100% - 28px);
    }


    /* HERO */

    .t1-hero {
        min-height: 650px;

        align-items: flex-end;
    }

    .t1-hero-shade {
        background:
            linear-gradient(
                0deg,
                rgba(3, 31, 46, 0.96) 0%,
                rgba(3, 31, 46, 0.67) 55%,
                rgba(3, 31, 46, 0.22) 100%
            );
    }

    .t1-hero-content {
        width: calc(100% - 28px);

        padding-bottom: 55px;
    }

    .t1-kicker {
        padding: 7px 11px;

        font-size: 8px;
    }

    .t1-hero h1 {
        font-size: 55px;
    }

    .t1-hero-content > p {
        font-size: 13px;
        line-height: 1.7;
    }


    /* INTRO */

    .t1-intro {
        padding: 75px 0;
    }

    .t1-intro-copy h2 {
        font-size: 38px;
    }

    .t1-intro-photo {
        padding: 0 0 15px 15px;
    }

    .t1-intro-photo img {
        height: 360px;

        border-radius: 22px;
    }

    .t1-photo-badge {
        left: 0;
        bottom: 35px;

        width: 130px;

        padding: 17px;
    }


    /* HEADINGS */

    .t1-heading {
        margin-bottom: 45px;
    }

    .t1-heading h2 {
        font-size: 38px;
    }


    /* ITINERARY */

    .t1-itinerary {
        padding: 75px 0;
    }

    .t1-day {
        gap: 25px;

        margin-bottom: 65px;
    }

    .t1-day-photo {
        border-radius: 20px;
    }

    .t1-day-photo img {
        height: 300px;
    }

    .t1-day-photo > span {
        top: 12px;
        left: 12px;

        width: 46px;
        height: 46px;
    }

    .t1-day-copy h3 {
        font-size: 31px;
    }


    /* SECTIONS */

    .t1-included,
    .t1-services,
    .t1-vehicles,
    .t1-pricing {
        padding: 75px 0;
    }

    .t1-excluded {
        padding: 75px 0;
    }

    .t1-feature-grid,
    .t1-vehicle-grid,
    .t1-service-grid,
    .t1-excluded-grid {
        grid-template-columns: 1fr;
    }

    .t1-feature {
        min-height: auto;
    }


    /* CTA */

    .t1-cta {
        margin: 60px 0;

        padding: 40px 25px;

        display: block;

        text-align: center;
    }

    .t1-cta .t1-btn {
        width: 100%;

        margin-top: 25px;
    }

}


/* ==========================================================
   SMALL MOBILE
   ========================================================== */

@media (max-width: 420px) {

    .t1-hero {
        min-height: 600px;
    }

    .t1-hero h1 {
        font-size: 47px;
    }

    .t1-intro-copy h2,
    .t1-heading h2 {
        font-size: 33px;
    }

    .t1-day-photo img {
        height: 250px;
    }

    .t1-day-copy h3 {
        font-size: 28px;
    }

    .t1-tags span,
    .t1-mini-tags span {
        font-size: 10px;
    }

    .t1-service-card {
        padding: 28px 22px;
    }

    .t1-cta h2 {
        font-size: 30px;
    }

}/* End custom CSS */
/* Start custom CSS for wpr-logo, class: .elementor-element-2ce2d7b8 */.elementor-1032 .elementor-element.elementor-element-2ce2d7b8{
    position: relative;
    overflow: hidden;
    border-radius: 20px; /* اختياري */
}

.elementor-1032 .elementor-element.elementor-element-2ce2d7b8::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-51967393 */.elementor-1032 .elementor-element.elementor-element-51967393{
    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-1032 .elementor-element.elementor-element-51967393:hover{
    transform: translateY(-8px) scale(1.015);
    box-shadow: 0 25px 55px rgba(0,0,0,.18);
    z-index: 10;
}

/* يمنع قصّ محتوى البطاقة */
.elementor-1032 .elementor-element.elementor-element-51967393 > .elementor-widget-wrap,
.elementor-1032 .elementor-element.elementor-element-51967393 > .e-con-inner{
    overflow: visible !important;
}
.elementor-1032 .elementor-element.elementor-element-51967393{
    position: relative;
    overflow: hidden;
    border-radius: 20px; /* اختياري */
}

.elementor-1032 .elementor-element.elementor-element-51967393::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-59f73e35 *//* =================================
   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 */