.elementor-17 .elementor-element.elementor-element-ea08aeb{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-72d7b8b{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-72d7b8b:not(.elementor-motion-effects-element-type-background), .elementor-17 .elementor-element.elementor-element-72d7b8b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF5F5;}.elementor-17 .elementor-element.elementor-element-9150893{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-9150893:not(.elementor-motion-effects-element-type-background), .elementor-17 .elementor-element.elementor-element-9150893 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF5F5;}.elementor-17 .elementor-element.elementor-element-a6dbdee{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-784dc8b{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-f2ecb8f{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-574615e{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-ee40933{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17 .elementor-element.elementor-element-6884a31{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-bd9064a */#dhRoot {
    font-family: 'Poppins', sans-serif;
    background: #fff;
    position: relative;
    overflow: hidden;
}
#dhRoot *, #dhRoot *::before, #dhRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#dhRoot h1, #dhRoot h2, #dhRoot p { margin: 0; padding: 0; }
#dhRoot a { text-decoration: none; }

/* Background */
.dhBg { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.dhDots {
    position: absolute; inset: 0;
    background-image: radial-gradient(circle, #e8d5d5 1px, transparent 1px);
    background-size: 28px 28px;
    opacity: 0.35;
}
.dhBlob1 {
    position: absolute; top: -80px; right: 380px;
    width: 360px; height: 360px; border-radius: 50%;
    background: radial-gradient(circle, rgba(201,166,86,0.09) 0%, transparent 70%);
}
.dhBlob2 {
    position: absolute; bottom: -60px; left: -60px;
    width: 280px; height: 280px; border-radius: 50%;
    background: radial-gradient(circle, rgba(144,25,28,0.07) 0%, transparent 70%);
}

/* Wrapper */
.dhW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
    position: relative;
    z-index: 1;
}
.dhSec { padding: 60px 0 72px !important; }

/* Breadcrumb */
/*.dhBread {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 6px;*/
/*    font-size: 12px;*/
/*    color: #aaa;*/
/*    flex-wrap: wrap;*/
/*    margin-bottom: 20px !important;*/
/*}*/
/*.dhBread a { color: #aaa; transition: color 0.2s; }*/
/*.dhBread a:hover { color: #90191c; }*/
/*.dhBread i { font-size: 8px; color: #ccc; }*/
/*.dhBread span { color: #90191c; font-weight: 600; }*/

/* Grid */
.dhGrid {
    display: grid;
    grid-template-columns: 1fr 480px;
    gap: 52px;
    align-items: center;
}

/* LEFT */
.dhH1 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: clamp(30px, 4vw, 50px);
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: -1px;
    margin-bottom: 16px !important;
}
.dhH1 .w1 { color: #111; }
.dhH1 .w2 {
    color: #90191c;
    position: relative;
    display: inline-block;
}
.dhH1 .w2::after {
    content: '';
    position: absolute;
    bottom: -4px; left: 0; right: 0;
    height: 3px; border-radius: 2px;
    background: linear-gradient(90deg, #90191c, #c9a656, #90191c);
    background-size: 200% auto;
    animation: dhSlide 3s linear infinite;
}
@keyframes dhSlide { to { background-position: 200% center; } }

.dhH2 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(13px, 1.15vw, 14.5px);
    font-weight: 600;
    color: #555;
    line-height: 1.65;
    border-left: 3px solid #c9a656;
    padding-left: 14px !important;
    margin-bottom: 20px !important;
}

.dhBody {
    font-size: 14px;
    color: #555;
    line-height: 1.80;
    margin-bottom: 14px !important;
}
.dhBody:last-of-type { margin-bottom: 28px !important; }

/* CTAs */
.dhCtas {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}
.dhCtaP {
    display: inline-flex; align-items: center; gap: 8px;
    background: #90191c; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13.5px; font-weight: 600;
    padding: 13px 26px !important;
    border-radius: 6px;
    box-shadow: 0 8px 22px rgba(144,25,28,0.28);
    transition: background 0.22s, transform 0.22s;
}
.dhCtaP:hover { background: #720f12; color: #fff; transform: translateY(-2px); }
.dhCtaP i { font-size: 11px; transition: transform 0.2s; }
.dhCtaP:hover i { transform: translateX(4px); }

.dhCtaS {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; color: #90191c;
    font-family: 'Poppins', sans-serif; font-size: 13.5px; font-weight: 600;
    padding: 12px 22px !important;
    border-radius: 6px; border: 2px solid #90191c;
    transition: all 0.22s;
}
.dhCtaS:hover { background: #90191c; color: #fff; transform: translateY(-2px); }
.dhCtaS i { font-size: 14px; }

/* RIGHT: Image */
.dhImgWrap { position: relative; }

.dhImgBox {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 16px 52px rgba(0,0,0,0.14);
}
.dhImgBox::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, #90191c, #c9a656);
    z-index: 3;
}
/* Dark gradient over bottom half */
.dhImgBox::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.08) 0%, rgba(10,0,0,0.65) 100%);
    z-index: 1;
    pointer-events: none;
}

.dhImgBox img {
    width: 100%;
    height: 560px;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}
.dhImgBox:hover img { transform: scale(1.03); }

/* Fallback */
.dhFallback {
    width: 100%; height: 560px;
    background: linear-gradient(135deg, #fdf0f0 0%, #fff8ee 50%, #fdf0f0 100%);
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #c9a656;
}
.dhFallback i { font-size: 56px; opacity: 0.35; }
.dhFallback span { font-size: 13px; color: #bbb; }

/* Badge top-right */
.dhBadge {
    position: absolute; top: 16px; right: 16px; z-index: 4;
    background: linear-gradient(135deg, #c9a656, #e0c070);
    color: #fff;
    font-family: 'Montserrat', sans-serif; font-size: 11px; font-weight: 800;
    padding: 6px 13px !important;
    border-radius: 20px;
    box-shadow: 0 4px 14px rgba(201,166,86,0.40);
}

/* Feature strip at bottom of image */
.dhStrip {
    position: absolute; bottom: 0; left: 0; right: 0; z-index: 2;
    background: rgba(255,255,255,0.10);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-top: 1px solid rgba(255,255,255,0.18);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.dhStripItem {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px !important;
    border-right: 1px solid rgba(255,255,255,0.12);
    border-bottom: 1px solid rgba(255,255,255,0.12);
}
.dhStripItem:nth-child(even) { border-right: none; }
.dhStripItem:nth-child(3), .dhStripItem:nth-child(4) { border-bottom: none; }

.dhSIco {
    width: 30px; height: 30px; border-radius: 7px;
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; color: #fff; flex-shrink: 0;
}
.si1 { background: rgba(144,25,28,0.75); }
.si2 { background: rgba(201,166,86,0.75); }
.si3 { background: rgba(26,107,170,0.75); }
.si4 { background: rgba(45,158,95,0.75); }

.dhSITxt strong {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800;
    color: #fff;
    line-height: 1.3;
}
.dhSITxt span { font-size: 10.5px; color: rgba(255,255,255,0.70); }

/* Animation */
.dhAnimL {
    opacity: 0; transform: translateX(-22px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.dhAnimR {
    opacity: 0; transform: translateX(22px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.dhAnimL.on, .dhAnimR.on { opacity: 1; transform: none; }

/* Responsive */
@media (max-width: 980px) {
    .dhGrid { grid-template-columns: 1fr; gap: 36px; }
    .dhImgBox img, .dhFallback { height: 420px; }
}
@media (max-width: 540px) {
    .dhSec { padding: 44px 0 52px !important; }
    .dhCtas { flex-direction: column; align-items: stretch; }
    .dhCtaP, .dhCtaS { justify-content: center; }
    .dhImgBox img, .dhFallback { height: 300px; }
    .dhStrip { grid-template-columns: 1fr 1fr; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0e1a074 */#dsRoot {
    font-family: 'Poppins', sans-serif;
}
#dsRoot *, #dsRoot *::before, #dsRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#dsRoot h2, #dsRoot h3, #dsRoot p { margin: 0; padding: 0; }
#dsRoot a { text-decoration: none; }

.dsW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.dsSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.dsTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px;
    font-weight: 600;
    color: #90191c;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.dsTag i { color: #c9a656; font-size: 10px; }

.dsH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111;
    line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 40px !important;
}
.dsH2 span { color: #90191c; }

/* ---- 3-col Card Grid ---- */
.dsGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 22px !important;
}

/* ---- Card ---- */
.dsCard {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    transition: transform 0.25s, box-shadow 0.25s;
    display: flex;
    flex-direction: column;
}
.dsCard:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 40px rgba(0,0,0,0.11);
}

/* ---- Card Image ---- */
.dsImg {
    position: relative;
    height: 195px;
    overflow: hidden;
    flex-shrink: 0;
}
.dsImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.55s ease;
}
.dsCard:hover .dsImg img { transform: scale(1.06); }

/* Gradient overlay on image */
.dsImg::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.10) 0%, rgba(10,0,0,0.48) 100%);
    pointer-events: none;
}

/* Gradient fallbacks when no image */
.dsFb1 { background: linear-gradient(135deg, #90191c 0%, #c0393c 100%); }
.dsFb2 { background: linear-gradient(135deg, #720f12 0%, #c9a656 100%); }
.dsFb3 { background: linear-gradient(135deg, #1a6baa 0%, #2d9e5f 100%); }
.dsFb4 { background: linear-gradient(135deg, #c9a656 0%, #90191c 100%); }
.dsFb5 { background: linear-gradient(135deg, #2d4a7a 0%, #90191c 100%); }
.dsFb6 { background: linear-gradient(135deg, #1a9e9e 0%, #1a6baa 100%); }

/* Number badge */
.dsNum {
    position: absolute; top: 12px; left: 14px; z-index: 2;
    width: 30px; height: 30px; border-radius: 7px;
    background: rgba(255,255,255,0.18);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255,255,255,0.28);
    display: flex; align-items: center; justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px; font-weight: 800; color: #fff;
}

/* Icon badge */
.dsIco {
    position: absolute; bottom: 12px; right: 12px; z-index: 2;
    width: 36px; height: 36px; border-radius: 8px;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.25);
    display: flex; align-items: center; justify-content: center;
    color: #fff; font-size: 15px;
}

/* ---- Card Content ---- */
.dsContent {
    padding: 18px 20px 20px !important;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.dsH3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 14.5px;
    font-weight: 800;
    color: #111;
    line-height: 1.35;
    margin-bottom: 8px !important;
}

.dsExcerpt {
    font-size: 13px;
    color: #666;
    line-height: 1.68;
    flex: 1;
    margin-bottom: 14px !important;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.dsLink {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    font-weight: 600;
    color: #90191c;
    transition: gap 0.2s;
}
.dsLink i { font-size: 10px; transition: transform 0.2s; }
.dsLink:hover { color: #720f12; }
.dsLink:hover i { transform: translateX(4px); }

/* ---- Featured Card: International (full width horizontal) ---- */
.dsFeatured {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,0.07);
    display: grid;
    grid-template-columns: 420px 1fr;
    transition: box-shadow 0.25s;
}
.dsFeatured:hover { box-shadow: 0 14px 44px rgba(0,0,0,0.12); }

.dsFeatImg {
    position: relative;
    overflow: hidden;
    min-height: 280px;
}
.dsFeatImg img {
    width: 100%; height: 100%;
    object-fit: cover; display: block;
    transition: transform 0.55s ease;
}
.dsFeatured:hover .dsFeatImg img { transform: scale(1.05); }
.dsFeatImg::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(90deg, rgba(10,0,0,0.45) 0%, rgba(0,0,0,0.10) 100%);
    pointer-events: none;
}

.dsFeatBadge {
    position: absolute; top: 16px; left: 16px; z-index: 2;
    background: linear-gradient(135deg, #c9a656, #e0c070);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800;
    padding: 5px 12px !important;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(201,166,86,0.4);
}
.dsFeatNum {
    position: absolute; bottom: 16px; left: 16px; z-index: 2;
    width: 32px; height: 32px; border-radius: 8px;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255,255,255,0.28);
    display: flex; align-items: center; justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px; font-weight: 800; color: #fff;
}

.dsFeatContent {
    padding: 28px 30px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.dsFeatLabel {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px; font-weight: 600;
    color: #c9a656;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 10px !important;
}
.dsFeatLabel i { font-size: 10px; }

.dsFeatH3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px; font-weight: 800;
    color: #111; line-height: 1.25;
    margin-bottom: 12px !important;
}
.dsFeatH3 span { color: #90191c; }

.dsFeatText {
    font-size: 13.5px; color: #666; line-height: 1.72;
    margin-bottom: 20px !important;
}

/* Country pills */
.dsCountries {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 20px !important;
}
.dsCPill {
    display: inline-flex; align-items: center; gap: 5px;
    background: #faf5f5; border: 1px solid #f0e4e4;
    border-radius: 20px;
    padding: 3px 10px !important;
    font-size: 11.5px; color: #555;
}
.dsCPill i { color: #c9a656; font-size: 9px; }

.dsFeatLink {
    display: inline-flex; align-items: center; gap: 8px;
    background: #90191c; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600;
    padding: 10px 20px !important;
    border-radius: 6px;
    box-shadow: 0 6px 18px rgba(144,25,28,0.25);
    transition: background 0.22s, transform 0.22s;
    align-self: flex-start;
}
.dsFeatLink:hover { background: #720f12; color: #fff; transform: translateY(-2px); }
.dsFeatLink i { font-size: 11px; transition: transform 0.2s; }
.dsFeatLink:hover i { transform: translateX(4px); }

/* ---- Animation ---- */
.dsAnim {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.dsAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 960px) {
    .dsGrid { grid-template-columns: repeat(2, 1fr); }
    .dsFeatured { grid-template-columns: 1fr; }
    .dsFeatImg { min-height: 220px; }
    .dsFeatImg::after { background: linear-gradient(180deg, rgba(10,0,0,0.40) 0%, rgba(0,0,0,0.10) 100%); }
}
@media (max-width: 620px) {
    .dsSec { padding: 52px 0 !important; }
    .dsGrid { grid-template-columns: 1fr; }
    .dsFeatContent { padding: 22px 20px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0713cc7 */#fsRoot {
    font-family: 'Poppins', sans-serif;
}
#fsRoot *, #fsRoot *::before, #fsRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#fsRoot h2, #fsRoot h3, #fsRoot p { margin: 0; padding: 0; }
#fsRoot a { text-decoration: none; }

.fsW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.fsSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.fsTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px;
    font-weight: 600;
    color: #90191c;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.fsTag i { color: #c9a656; font-size: 10px; }

.fsH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111;
    line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 40px !important;
}
.fsH2 span { color: #90191c; }

/* ---- Layout ---- */
.fsLayout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 28px;
    align-items: start;
}

/* ---- Left Nav ---- */
.fsNav {
    position: sticky;
    top: 90px;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 22px rgba(0,0,0,0.07);
    overflow: hidden;
}
.fsNavHead {
    background: linear-gradient(135deg, #90191c, #720f12);
    padding: 14px 18px !important;
}
.fsNavHead span {
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    color: rgba(255,255,255,0.85);
    letter-spacing: 1px;
    text-transform: uppercase;
}

.fsNavItem {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 11px 16px !important;
    cursor: pointer;
    border-left: 3px solid transparent;
    transition: all 0.2s;
    border-bottom: 1px solid #f5eded;
}
.fsNavItem:last-child { border-bottom: none; }
.fsNavItem:hover { background: #fdf8f8; border-left-color: #e8c5c6; }
.fsNavItem.active {
    background: #fdf0f0;
    border-left-color: #90191c;
}

.fsNavIco {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #fff;
    flex-shrink: 0;
    background: linear-gradient(135deg, #ddd, #ccc);
    transition: background 0.2s;
}
.fsNavItem.active .fsNavIco,
.fsNavItem:hover .fsNavIco { background: linear-gradient(135deg, #90191c, #c0393c); }
.fsNavItem:nth-child(even) .fsNavIco { background: linear-gradient(135deg, #c0c0c0, #aaa); }
.fsNavItem.active:nth-child(even) .fsNavIco,
.fsNavItem:hover:nth-child(even) .fsNavIco { background: linear-gradient(135deg, #c9a656, #e0c070); }

.fsNavNum {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    color: #bbb;
    flex-shrink: 0;
    min-width: 18px;
}
.fsNavItem.active .fsNavNum { color: #90191c; }

.fsNavTxt {
    font-size: 12px;
    font-weight: 600;
    color: #666;
    line-height: 1.35;
    flex: 1;
}
.fsNavItem.active .fsNavTxt { color: #111; }

/* ---- Right Content ---- */
.fsPanel { display: none; }
.fsPanel.active { display: block; }

.fsPanelCard {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 22px rgba(0,0,0,0.06);
    overflow: hidden;
}

.fsPanelTop {
    background: linear-gradient(135deg, #90191c 0%, #720f12 70%, #c9a656 100%);
    padding: 28px 32px !important;
    position: relative;
    overflow: hidden;
}
.fsPanelTop::after {
    content: attr(data-num);
    position: absolute;
    right: 20px;
    bottom: -14px;
    font-family: 'Montserrat', sans-serif;
    font-size: 90px;
    font-weight: 900;
    color: rgba(255,255,255,0.07);
    line-height: 1;
    pointer-events: none;
}

/* Alternate panel top color for even items */
.fsPanelCard.even .fsPanelTop {
    background: linear-gradient(135deg, #8a6800 0%, #c9a656 70%, #90191c 100%);
}

.fsPanelTopIco {
    width: 46px;
    height: 46px;
    border-radius: 11px;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.22);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    margin-bottom: 14px !important;
}
.fsPanelH3 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(15px, 1.6vw, 19px);
    font-weight: 800;
    color: #fff;
    line-height: 1.25;
}

.fsPanelBody {
    padding: 28px 32px !important;
}

/* Paragraphs inside panel */
.fsP {
    font-size: 14px;
    color: #555;
    line-height: 1.82;
    margin-bottom: 16px !important;
}
.fsP:last-child { margin-bottom: 0 !important; }

/* Highlight text */
.fsHL {
    color: #90191c;
    font-weight: 600;
}

/* ---- Checklist ---- */
.fsChecklist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 18px 0 !important;
}
.fsCheck {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 10px 12px !important;
    background: #faf5f5;
    border-radius: 8px;
    border: 1px solid #f0e4e4;
}
.fsCheck i { color: #90191c; font-size: 12px; margin-top: 3px; flex-shrink: 0; }
.fsCheck span { font-size: 13px; color: #444; line-height: 1.55; }

/* ---- Callout ---- */
.fsCallout {
    background: #fdf0f0;
    border-left: 4px solid #90191c;
    border-radius: 0 8px 8px 0;
    padding: 14px 18px !important;
    margin: 18px 0 !important;
}
.fsCallout p {
    font-size: 13.5px;
    color: #333;
    line-height: 1.70;
}
.fsCallout strong { color: #90191c; }

.fsCalloutGold {
    background: #fffbf0;
    border-left: 4px solid #c9a656;
    border-radius: 0 8px 8px 0;
    padding: 14px 18px !important;
    margin: 18px 0 !important;
}
.fsCalloutGold p {
    font-size: 13.5px;
    color: #333;
    line-height: 1.70;
}
.fsCalloutGold strong { color: #8a6800; }

/* ---- Stat highlight ---- */
.fsStats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 18px 0 !important;
}
.fsStat {
    text-align: center;
    background: #faf5f5;
    border-radius: 10px;
    padding: 14px 10px !important;
    border: 1px solid #f0e4e4;
}
.fsStat strong {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 800;
    color: #90191c;
    margin-bottom: 4px !important;
}
.fsStat span { font-size: 12px; color: #777; line-height: 1.4; }

/* ---- Free Zone list ---- */
.fsZones {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 18px 0 !important;
}
.fsZone {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 12px;
    align-items: start;
    padding: 12px 14px !important;
    background: #faf5f5;
    border-radius: 8px;
    border: 1px solid #f0e4e4;
    transition: background 0.18s;
}
.fsZone:hover { background: #fdf0f0; }

.fsZoneName {
    font-family: 'Montserrat', sans-serif;
    font-size: 12.5px;
    font-weight: 800;
    color: #111;
    line-height: 1.35;
    display: flex;
    align-items: flex-start;
    gap: 7px;
}
.fsZoneName i { color: #c9a656; font-size: 10px; margin-top: 3px; flex-shrink: 0; }
.fsZoneDetail { font-size: 12.5px; color: #666; line-height: 1.60; }
.fsZoneDetail strong { color: #90191c; }

/* ---- Section divider ---- */
.fsDivider {
    height: 1px;
    background: linear-gradient(90deg, #f0e4e4, transparent);
    margin: 20px 0 !important;
}

/* ---- Animation ---- */
.fsAnim {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.fsAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 860px) {
    .fsLayout { grid-template-columns: 1fr; }
    .fsNav { position: static; display: flex; flex-direction: row; flex-wrap: wrap; border-radius: 10px; }
    .fsNavHead { display: none; }
    .fsNavItem { flex: 0 0 auto; border-left: none; border-bottom: none; border-bottom: 3px solid transparent; padding: 10px 12px !important; }
    .fsNavItem.active { border-bottom-color: #90191c; border-left: none; }
    .fsNavNum { display: none; }
    .fsZone { grid-template-columns: 1fr; gap: 4px; }
    .fsChecklist { grid-template-columns: 1fr; }
    .fsStats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
    .fsSec { padding: 52px 0 !important; }
    .fsPanelTop { padding: 20px 20px !important; }
    .fsPanelBody { padding: 20px !important; }
    .fsStats { grid-template-columns: 1fr; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6664887 */#ctRoot {
    font-family: 'Poppins', sans-serif;
}
#ctRoot *, #ctRoot *::before, #ctRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#ctRoot h2, #ctRoot h3, #ctRoot p { margin: 0; padding: 0; }
#ctRoot a { text-decoration: none; }

.ctW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.ctSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.ctTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px; font-weight: 600;
    color: #90191c; letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.ctTag i { color: #c9a656; font-size: 10px; }

.ctH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800; color: #111;
    line-height: 1.22; letter-spacing: -0.4px;
    margin-bottom: 36px !important;
}
.ctH2 span { color: #90191c; }

/* ---- Layout ---- */
.ctGrid {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 32px;
    align-items: start;
}

/* =====================================================
   LEFT — Contact Cards
   ===================================================== */
.ctCards { display: flex; flex-direction: column; gap: 14px; }

/* Main contact card */
.ctCard {
    background: #fff;
    border-radius: 14px;
    padding: 22px 22px !important;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    border: 1.5px solid #f0e4e4;
    transition: transform 0.22s, box-shadow 0.22s, border-color 0.22s;
}
.ctCard:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.09);
    border-color: #e8c5c6;
}

.ctCardIco {
    width: 48px; height: 48px;
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px; color: #fff; flex-shrink: 0;
}
.ci-red   { background: linear-gradient(135deg, #90191c, #c0393c); box-shadow: 0 6px 18px rgba(144,25,28,0.28); }
.ci-green { background: linear-gradient(135deg, #25d366, #1da955); box-shadow: 0 6px 18px rgba(37,211,102,0.28); }
.ci-gold  { background: linear-gradient(135deg, #c9a656, #e0c070); box-shadow: 0 6px 18px rgba(201,166,86,0.28); }

.ctCardBody {}
.ctCardLabel {
    font-size: 10.5px; font-weight: 700; color: #aaa;
    letter-spacing: 0.8px; text-transform: uppercase;
    margin-bottom: 4px !important;
}
.ctCardValue {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px; font-weight: 800; color: #111;
    margin-bottom: 4px !important;
    line-height: 1.25;
}
.ctCardNote { font-size: 12.5px; color: #888; line-height: 1.5; }

.ctCardLink {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 12.5px; font-weight: 600;
    margin-top: 10px !important;
    padding: 6px 14px !important;
    border-radius: 6px;
    transition: all 0.2s;
}
.cl-red   { color: #90191c; background: #fdf0f0; }
.cl-green { color: #1da955; background: #f0fdf5; }
.cl-gold  { color: #8a6800; background: #fffbf0; }
.ctCard:hover .cl-red   { background: #90191c; color: #fff; }
.ctCard:hover .cl-green { background: #25d366; color: #fff; }
.ctCard:hover .cl-gold  { background: #c9a656; color: #fff; }
.ctCardLink i { font-size: 10px; }

/* Survey promise card */
.ctPromise {
    background: linear-gradient(135deg, #90191c 0%, #720f12 60%, #c9a656 100%);
    border-radius: 14px;
    padding: 22px 22px !important;
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(144,25,28,0.25);
}
.ctPromise::before {
    content: '';
    position: absolute; inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,0.06) 1px, transparent 1px);
    background-size: 20px 20px;
    pointer-events: none;
}
.ctPromiseIco {
    width: 40px; height: 40px;
    border-radius: 10px;
    background: rgba(255,255,255,0.14);
    display: flex; align-items: center; justify-content: center;
    font-size: 17px; color: #fff;
    margin-bottom: 12px !important;
}
.ctPromise h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px; font-weight: 800; color: #fff;
    margin-bottom: 8px !important; line-height: 1.3;
}
.ctPromise p {
    font-size: 12.5px; color: rgba(255,255,255,0.78);
    line-height: 1.65;
}
.ctPromiseChecks {
    display: flex; flex-direction: column; gap: 6px;
    margin-top: 14px !important;
}
.ctPC {
    display: flex; align-items: center; gap: 8px;
    font-size: 12px; color: rgba(255,255,255,0.85);
}
.ctPC i { color: #c9a656; font-size: 11px; flex-shrink: 0; }

/* =====================================================
   RIGHT — Form Card
   ===================================================== */
.ctFormCard {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 40px rgba(0,0,0,0.08);
    overflow: hidden;
}

.ctFormHead {
    background: linear-gradient(135deg, #111 0%, #1a1a1a 60%, #2a1a1a 100%);
    padding: 22px 28px !important;
    display: flex; align-items: center; justify-content: space-between;
    gap: 12px; flex-wrap: wrap;
}
.ctFormHead h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px; font-weight: 800; color: #fff;
    margin-bottom: 3px !important;
}
.ctFormHead p { font-size: 12px; color: rgba(255,255,255,0.60); }
.ctFormHeadBadge {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(201,166,86,0.18);
    border: 1px solid rgba(201,166,86,0.35);
    border-radius: 20px;
    padding: 5px 13px !important;
    font-size: 11px; font-weight: 700; color: #c9a656;
    white-space: nowrap;
}

.ctFormBody { padding: 28px !important; }

/* =====================================================
   CF7 FORM STYLES — targets .wpcf7 classes
   Also styles the static HTML form below
   ===================================================== */

/* Grid layout for form fields */
.ctFormGrid,
#ctRoot .wpcf7 .ctFormGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }

.ct-full,
#ctRoot .wpcf7 .ct-full { grid-column: 1 / -1; }

/* All inputs, selects, textarea */
#ctRoot input[type="text"],
#ctRoot input[type="email"],
#ctRoot input[type="tel"],
#ctRoot input[type="number"],
#ctRoot select,
#ctRoot textarea,
#ctRoot .wpcf7 input[type="text"],
#ctRoot .wpcf7 input[type="email"],
#ctRoot .wpcf7 input[type="tel"],
#ctRoot .wpcf7 input[type="number"],
#ctRoot .wpcf7 select,
#ctRoot .wpcf7 textarea,
#ctRoot .wpcf7-form-control:not([type="submit"]) {
    width: 100%;
    padding: 11px 14px !important;
    border-radius: 8px;
    border: 1.5px solid #f0e4e4;
    background: #faf5f5;
    font-family: 'Poppins', sans-serif;
    font-size: 13.5px; color: #333;
    outline: none;
    transition: border-color 0.2s, background 0.2s;
    appearance: none;
    -webkit-appearance: none;
}
#ctRoot input[type="text"]:focus,
#ctRoot input[type="email"]:focus,
#ctRoot input[type="tel"]:focus,
#ctRoot input[type="number"]:focus,
#ctRoot select:focus,
#ctRoot textarea:focus,
#ctRoot .wpcf7-form-control:not([type="submit"]):focus {
    border-color: #c9a656;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(201,166,86,0.12);
}

#ctRoot select,
#ctRoot .wpcf7 select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%23c9a656'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    cursor: pointer;
}

#ctRoot textarea,
#ctRoot .wpcf7 textarea { resize: vertical; min-height: 110px; }

/* Validation error */
#ctRoot .wpcf7-not-valid-tip {
    font-size: 11.5px; color: #c0393c;
    margin-top: 4px !important; display: block;
}
#ctRoot .wpcf7-not-valid {
    border-color: #e8c5c6 !important;
    background: #fdf8f8 !important;
}

/* Response output */
#ctRoot .wpcf7-response-output {
    margin-top: 14px !important;
    padding: 12px 16px !important;
    border-radius: 8px;
    font-size: 13px; border: none !important;
}
#ctRoot .wpcf7-mail-sent-ok {
    background: #f0fdf5; color: #1da955; border-left: 4px solid #1da955 !important;
}
#ctRoot .wpcf7-mail-sent-ng,
#ctRoot .wpcf7-validation-errors,
#ctRoot .wpcf7-spam-blocked {
    background: #fdf0f0; color: #90191c; border-left: 4px solid #90191c !important;
}

/* Field label */
.ctFLabel {
    display: block;
    font-size: 11.5px; font-weight: 600; color: #555;
    margin-bottom: 5px !important;
}
.ctFLabel span { color: #90191c; }

/* Submit button */
#ctRoot input[type="submit"],
#ctRoot .wpcf7 input[type="submit"],
#ctRoot .wpcf7-submit,
.ctSubmitBtn {
    width: 100%;
    padding: 14px 24px !important;
    background: linear-gradient(135deg, #90191c, #c0393c);
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-size: 14px; font-weight: 700;
    border: none; border-radius: 8px; cursor: pointer;
    box-shadow: 0 8px 24px rgba(144,25,28,0.28);
    transition: all 0.22s;
    letter-spacing: 0.3px;
}
#ctRoot input[type="submit"]:hover,
#ctRoot .wpcf7-submit:hover,
.ctSubmitBtn:hover {
    background: linear-gradient(135deg, #720f12, #90191c);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(144,25,28,0.35);
}

/* Form note */
.ctFormNote {
    font-size: 12px; color: #aaa; text-align: center;
    margin-top: 14px !important; line-height: 1.6;
}
.ctFormNote i { color: #c9a656; margin-right: 4px; }

/* CF7 spinner */
#ctRoot .wpcf7 .ajax-loader { display: none; }

/* ---- Animation ---- */
.ctAnim {
    opacity: 0; transform: translateY(18px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ctAnimL {
    opacity: 0; transform: translateX(-20px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.ctAnimR {
    opacity: 0; transform: translateX(20px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.ctAnim.on, .ctAnimL.on, .ctAnimR.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 960px) {
    .ctGrid { grid-template-columns: 1fr; }
    .ctCards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .ctPromise { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
    .ctSec { padding: 52px 0 !important; }
    .ctCards { grid-template-columns: 1fr; }
    .ctPromise { grid-column: auto; }
    .ctFormGrid { grid-template-columns: 1fr; }
    .ct-full { grid-column: auto; }
    .ctFormBody { padding: 20px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-021cc67 */#opRoot {
    font-family: 'Poppins', sans-serif;
}
#opRoot *, #opRoot *::before, #opRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#opRoot h2, #opRoot h3, #opRoot p { margin: 0; padding: 0; }

.opW {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.opSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.opTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px;
    font-weight: 600;
    color: #90191c;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.opTag i { color: #c9a656; font-size: 10px; }

.opH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111;
    line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 48px !important;
}
.opH2 span { color: #90191c; }

/* ---- Phase Group ---- */
.opGroup { margin-bottom: 8px !important; }

.opPhase {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px !important;
}
.opPhase::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, currentColor, transparent);
    opacity: 0.25;
}
.opPhaseInner {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 4px 14px !important;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    white-space: nowrap;
}
.opPhaseInner i { font-size: 9px; }

.ph-plan  .opPhaseInner { background: #fdf0f0; color: #90191c; }
.ph-plan  .opPhase::after { color: #90191c; }
.ph-it    .opPhaseInner { background: #eef4fb; color: #1a6baa; }
.ph-it    .opPhase::after { color: #1a6baa; }
.ph-fri   .opPhaseInner { background: #fdf0f0; color: #90191c; }
.ph-fri   .opPhase::after { color: #90191c; }
.ph-sat   .opPhaseInner { background: #fffbf0; color: #8a6800; }
.ph-sat   .opPhase::after { color: #c9a656; }

/* ---- Steps container (has the vertical line) ---- */
.opSteps {
    position: relative;
    padding-left: 60px !important;
    margin-bottom: 32px !important;
}
.opSteps::before {
    content: '';
    position: absolute;
    left: 19px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    border-radius: 2px;
}
.ph-plan .opSteps::before  { background: linear-gradient(180deg, #90191c, #e8c5c6); }
.ph-it   .opSteps::before  { background: linear-gradient(180deg, #1a6baa, #b8d4ed); }
.ph-fri  .opSteps::before  { background: linear-gradient(180deg, #90191c, #e8c5c6); }
.ph-sat  .opSteps::before  { background: linear-gradient(180deg, #c9a656, #f0e2b2); }

/* ---- Single Step ---- */
.opStep {
    display: flex;
    align-items: flex-start;
    gap: 0;
    position: relative;
    margin-bottom: 16px !important;
}
.opStep:last-child { margin-bottom: 0 !important; }

/* Dot */
.opDot {
    position: absolute;
    left: -60px;
    top: 14px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 800;
    color: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
    z-index: 1;
    flex-shrink: 0;
}
.ph-plan .opDot  { background: linear-gradient(135deg, #90191c, #c0393c); }
.ph-it   .opDot  { background: linear-gradient(135deg, #1a6baa, #2e8fcb); }
.ph-fri  .opDot:nth-child(1) { background: linear-gradient(135deg, #90191c, #c0393c); }
.ph-fri  .opDot  { background: linear-gradient(135deg, #90191c, #c0393c); }
.ph-sat  .opDot  { background: linear-gradient(135deg, #c9a656, #e0c070); }

/* Card */
.opCard {
    flex: 1;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 3px 18px rgba(0,0,0,0.06);
    overflow: hidden;
    transition: box-shadow 0.22s, transform 0.22s;
}
.opCard:hover {
    box-shadow: 0 8px 28px rgba(0,0,0,0.10);
    transform: translateX(4px);
}

.opCardBar { height: 3px; }
.ph-plan .opCardBar  { background: linear-gradient(90deg, #90191c, #c0393c); }
.ph-it   .opCardBar  { background: linear-gradient(90deg, #1a6baa, #2e8fcb); }
.ph-fri  .opCardBar  { background: linear-gradient(90deg, #90191c, #c9a656); }
.ph-sat  .opCardBar  { background: linear-gradient(90deg, #c9a656, #e0c070); }

.opCardBody { padding: 16px 20px !important; }

.opStepLabel {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 4px !important;
}
.ph-plan .opStepLabel { color: #90191c; }
.ph-it   .opStepLabel { color: #1a6baa; }
.ph-fri  .opStepLabel { color: #90191c; }
.ph-sat  .opStepLabel { color: #8a6800; }

.opStepTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 800;
    color: #111;
    line-height: 1.3;
    margin-bottom: 8px !important;
}

.opStepText {
    font-size: 13.5px;
    color: #666;
    line-height: 1.75;
}

/* ---- Step 10 — Sunday Morning ---- */
.opSunday {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: linear-gradient(135deg, #90191c 0%, #720f12 50%, #c9a656 100%);
    padding: 36px 40px !important;
    box-shadow: 0 16px 50px rgba(144,25,28,0.28);
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 8px !important;
}
.opSunday::before {
    content: '10';
    position: absolute;
    right: 28px;
    bottom: -20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 130px;
    font-weight: 900;
    color: rgba(255,255,255,0.06);
    line-height: 1;
    pointer-events: none;
}

.opSundayIco {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: rgba(255,255,255,0.14);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 2px solid rgba(255,255,255,0.22);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #fff;
    flex-shrink: 0;
    animation: opRing 2.5s ease-in-out infinite;
}
@keyframes opRing {
    0%, 100% { box-shadow: 0 0 0 0 rgba(255,255,255,0.25); }
    50%       { box-shadow: 0 0 0 12px rgba(255,255,255,0); }
}

.opSundayText {}
.opSundayStep {
    font-family: 'Montserrat', sans-serif;
    font-size: 10.5px;
    font-weight: 700;
    color: rgba(255,255,255,0.65);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 6px !important;
}
.opSundayTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.4vw, 27px);
    font-weight: 900;
    color: #fff;
    line-height: 1.15;
    margin-bottom: 10px !important;
}
.opSundayDesc {
    font-size: 14px;
    color: rgba(255,255,255,0.80);
    line-height: 1.68;
}

/* ---- Animation ---- */
.opAnim {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.55s ease, transform 0.55s ease;
}
.opAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 600px) {
    .opSec { padding: 52px 0 !important; }
    .opSteps { padding-left: 50px !important; }
    .opDot { left: -50px; width: 34px; height: 34px; font-size: 11px; top: 13px; }
    .opSteps::before { left: 16px; }
    .opSunday { flex-direction: column; gap: 18px; padding: 26px 24px !important; }
    .opSundayIco { width: 56px; height: 56px; font-size: 22px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2579b77 */#dlRoot {
    font-family: 'Poppins', sans-serif;
}
#dlRoot *, #dlRoot *::before, #dlRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#dlRoot h2, #dlRoot h3, #dlRoot p { margin: 0; padding: 0; }

.dlW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.dlSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.dlTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px;
    font-weight: 600;
    color: #90191c;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.dlTag i { color: #c9a656; font-size: 10px; }

.dlH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111;
    line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 10px !important;
}
.dlH2 span { color: #90191c; }

.dlIntro {
    font-size: 14px;
    color: #666;
    line-height: 1.70;
    margin-bottom: 36px !important;
}

/* ---- Layout ---- */
.dlGrid {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 32px;
    align-items: start;
}

/* ---- LEFT: Accordion List ---- */
.dlList { display: flex; flex-direction: column; gap: 8px; }

.dlItem {
    background: #fff;
    border-radius: 12px;
    border: 1.5px solid #f0e4e4;
    overflow: hidden;
    transition: border-color 0.2s, box-shadow 0.2s;
    cursor: pointer;
}
.dlItem.active {
    border-color: var(--ec);
    box-shadow: 0 4px 20px rgba(0,0,0,0.07);
}
.dlItem:hover { border-color: var(--ec); }

.dlItemHead {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px !important;
    user-select: none;
}

.dlDot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--ec);
    flex-shrink: 0;
    box-shadow: 0 0 0 3px rgba(0,0,0,0.06);
}

.dlEmirName {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: #111;
    flex: 1;
}

.dlCount {
    font-size: 11px;
    font-weight: 600;
    color: var(--ec);
    background: rgba(0,0,0,0.04);
    border-radius: 20px;
    padding: 2px 9px !important;
    white-space: nowrap;
}

.dlArrow {
    color: #ccc;
    font-size: 11px;
    transition: transform 0.25s, color 0.2s;
}
.dlItem.active .dlArrow { transform: rotate(180deg); color: var(--ec); }

/* Areas panel */
.dlAreas {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.38s ease;
}
.dlItem.active .dlAreas { max-height: 320px; }

.dlAreaInner {
    padding: 0 18px 16px !important;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.dlPill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #faf5f5;
    border: 1px solid #f0e4e4;
    border-radius: 20px;
    padding: 3px 10px !important;
    font-size: 12px;
    color: #555;
    transition: background 0.18s, border-color 0.18s;
}
.dlItem.active .dlPill {
    background: color-mix(in srgb, var(--ec) 8%, white);
    border-color: color-mix(in srgb, var(--ec) 20%, white);
}
.dlPill i { font-size: 8px; color: var(--ec); }

/* Cross-emirate box */
.dlCross {
    background: #fff;
    border-radius: 12px;
    border-left: 5px solid #90191c;
    padding: 14px 18px !important;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    box-shadow: 0 3px 14px rgba(0,0,0,0.05);
    margin-top: 4px !important;
}
.dlCross i { color: #c9a656; font-size: 16px; margin-top: 2px; flex-shrink: 0; }
.dlCrossText { font-size: 13px; color: #444; line-height: 1.65; }
.dlCrossText strong { color: #90191c; }

/* ---- RIGHT: UAE Map ---- */
.dlMapWrap { position: sticky; top: 90px; }

.dlMapCard {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 36px rgba(0,0,0,0.09);
    overflow: hidden;
}
.dlMapCardTop {
    background: linear-gradient(135deg, #90191c, #720f12);
    padding: 14px 20px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.dlMapCardTop span {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 800;
    color: rgba(255,255,255,0.90);
    letter-spacing: 0.4px;
}
.dlMapCardTop small {
    font-size: 11px;
    color: rgba(255,255,255,0.60);
}

.dlMapSvgWrap {
    position: relative;
    padding: 16px !important;
    background: #fafafa;
}

/* UAE watermark */
.dlMapSvgWrap::before {
    content: 'UAE';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Montserrat', sans-serif;
    font-size: 80px;
    font-weight: 900;
    color: rgba(0,0,0,0.035);
    pointer-events: none;
    letter-spacing: 8px;
    user-select: none;
}

/* SVG Emirates */
.dl-emirate {
    transition: opacity 0.2s;
    cursor: pointer;
}
.dl-emirate:hover { opacity: 0.85; }
.dl-emirate.hl { opacity: 1; filter: drop-shadow(0 0 6px rgba(0,0,0,0.25)); }

/* Pins */
.dl-pin-g { cursor: pointer; }
.dl-pin-outer {
    fill: none;
    stroke-width: 1.5;
    opacity: 0;
    animation: dlPing 2.4s ease-out infinite;
}
.dl-pin-inner { }

@keyframes dlPing {
    0%   { r: 6; opacity: 0.7; }
    100% { r: 18; opacity: 0; }
}

/* Dubai pin — bigger, different animation */
.dl-pin-dubai .dl-pin-outer { animation: dlPingDubai 1.8s ease-out infinite; }
@keyframes dlPingDubai {
    0%   { r: 8;  opacity: 0.8; }
    100% { r: 24; opacity: 0; }
}

/* Legend */
.dlLegend {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    padding: 12px 16px !important;
    border-top: 1px solid #f0e4e4;
    background: #fff;
}
.dlLegItem {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 5px 6px !important;
    border-radius: 6px;
    transition: background 0.18s;
}
.dlLegItem:hover { background: #faf5f5; }
.dlLegItem.active { background: #fdf0f0; }

.dlLegDot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}
.dlLegTxt {
    font-size: 10px;
    color: #666;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ---- Animation ---- */
.dlAnim {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.dlAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 900px) {
    .dlGrid { grid-template-columns: 1fr; }
    .dlMapWrap { position: static; }
}
@media (max-width: 540px) {
    .dlSec { padding: 52px 0 !important; }
    .dlLegend { grid-template-columns: repeat(4, 1fr); }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c23d591 */#ccRoot {
    font-family: 'Poppins', sans-serif;
}
#ccRoot *, #ccRoot *::before, #ccRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#ccRoot h2, #ccRoot h3, #ccRoot p { margin: 0; padding: 0; }
#ccRoot a { text-decoration: none; }
#ccRoot button { cursor: pointer; border: none; background: none; font-family: inherit; }

.ccW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.ccSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.ccTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px;
    font-weight: 600;
    color: #90191c;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.ccTag i { color: #c9a656; font-size: 10px; }

.ccH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111;
    line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 10px !important;
}
.ccH2 span { color: #90191c; }

.ccIntro {
    font-size: 14px;
    color: #666;
    line-height: 1.72;
    margin-bottom: 36px !important;
}

/* ---- Pricing Cards ---- */
.ccTiers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 28px !important;
}

.ccTier {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    position: relative;
    transition: transform 0.22s, box-shadow 0.22s;
}
.ccTier:hover { transform: translateY(-4px); box-shadow: 0 12px 36px rgba(0,0,0,0.10); }

.ccTierBar { height: 5px; }
.tb-gold { background: linear-gradient(90deg, #c9a656, #e0c070); }
.tb-red  { background: linear-gradient(90deg, #90191c, #c0393c); }
.tb-dark { background: linear-gradient(90deg, #90191c, #c9a656); }

.ccTierBody { padding: 22px 22px 24px !important; }

.ccTierIco {
    width: 40px; height: 40px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; color: #fff;
    margin-bottom: 14px !important;
}
.ti-gold { background: linear-gradient(135deg, #c9a656, #e0c070); }
.ti-red  { background: linear-gradient(135deg, #90191c, #c0393c); }
.ti-dark { background: linear-gradient(135deg, #90191c, #c9a656); }

.ccTierSize {
    font-size: 10.5px; font-weight: 700; letter-spacing: 1px;
    text-transform: uppercase; color: #aaa;
    margin-bottom: 3px !important;
}
.ccTierName {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px; font-weight: 800; color: #111;
    margin-bottom: 12px !important;
}
.ccTierPrice {
    font-family: 'Montserrat', sans-serif;
    font-size: 21px; font-weight: 800; color: #90191c;
    line-height: 1.2; margin-bottom: 12px !important;
}
.ccTierPrice small { font-size: 12px; color: #aaa; font-family: 'Poppins'; font-weight: 500; }
.ccTierDiv { height: 1px; background: #f5eded; margin-bottom: 12px !important; }
.ccTierNote { font-size: 13px; color: #777; line-height: 1.65; }

.ccTierBadge {
    position: absolute; top: 14px; right: 14px;
    background: linear-gradient(135deg, #90191c, #c0393c);
    color: #fff; font-size: 9.5px; font-weight: 700;
    padding: 3px 9px !important; border-radius: 20px;
    letter-spacing: 0.5px; text-transform: uppercase;
}

/* ---- Two-column: Drivers + Callout ---- */
.ccMid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 36px !important;
}

.ccDriversCard {
    background: #fff;
    border-radius: 14px;
    padding: 24px 26px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.05);
}
.ccDriversHead {
    display: flex; align-items: center; gap: 9px;
    margin-bottom: 18px !important;
}
.ccDriversHead h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px; font-weight: 800; color: #111;
}
.ccDriversHead i { color: #c9a656; }

.ccDList { display: flex; flex-direction: column; gap: 9px; }
.ccDItem {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 9px 12px !important;
    background: #faf5f5; border-radius: 7px;
    border: 1px solid #f0e4e4;
    font-size: 13px; color: #444; line-height: 1.55;
}
.ccDItem i { color: #90191c; font-size: 11px; margin-top: 2px; flex-shrink: 0; }
.ccDItem:nth-child(even) i { color: #c9a656; }

.ccCrossCard {
    background: #fff;
    border-radius: 14px;
    padding: 24px 26px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.05);
    display: flex; flex-direction: column; gap: 14px;
}
.ccCrossTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px; font-weight: 800; color: #111;
    display: flex; align-items: center; gap: 9px;
}
.ccCrossTitle i { color: #c9a656; }

.ccCrossRow {
    display: flex; align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px !important;
    background: #faf5f5; border-radius: 8px;
    border: 1px solid #f0e4e4;
}
.ccCrossRoute { font-size: 13px; color: #444; font-weight: 500; }
.ccCrossRoute i { color: #c9a656; margin-right: 6px; font-size: 10px; }
.ccCrossAdd {
    font-family: 'Montserrat', sans-serif;
    font-size: 12.5px; font-weight: 800; color: #90191c;
    white-space: nowrap;
}

.ccCrossNote {
    font-size: 12.5px; color: #888; line-height: 1.6;
    border-top: 1px solid #f5eded;
    padding-top: 12px !important;
}

/* ============================================================
   CALCULATOR
   ============================================================ */
.ccCalc {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 40px rgba(0,0,0,0.09);
    overflow: hidden;
}

.ccCalcHead {
    background: linear-gradient(135deg, #90191c 0%, #720f12 60%, #c9a656 100%);
    padding: 22px 30px !important;
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; flex-wrap: wrap;
}
.ccCalcHeadLeft {}
.ccCalcHeadLeft h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 17px; font-weight: 800; color: #fff;
    margin-bottom: 4px !important;
}
.ccCalcHeadLeft p {
    font-size: 12px; color: rgba(255,255,255,0.70); line-height: 1.5;
}
.ccCalcHeadBadge {
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(255,255,255,0.14);
    border: 1px solid rgba(255,255,255,0.22);
    border-radius: 20px;
    padding: 5px 14px !important;
    font-size: 11.5px; font-weight: 600; color: rgba(255,255,255,0.90);
    white-space: nowrap;
}
.ccCalcHeadBadge i { color: #c9a656; }

.ccCalcBody {
    display: grid;
    grid-template-columns: 1fr 340px;
    align-items: start;
}

/* ---- Inputs Panel ---- */
.ccInputs {
    padding: 28px 28px !important;
    border-right: 1px solid #f5eded;
}

.ccGroup { margin-bottom: 22px !important; }
.ccGroup:last-child { margin-bottom: 0 !important; }

.ccLabel {
    display: flex; align-items: center; gap: 7px;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px; font-weight: 800; color: #111;
    text-transform: uppercase; letter-spacing: 0.6px;
    margin-bottom: 10px !important;
}
.ccLabel i { color: #c9a656; font-size: 11px; }

/* Workstation counter */
.ccWsCounter {
    display: flex; align-items: center; gap: 0;
    background: #faf5f5; border-radius: 10px;
    border: 1.5px solid #f0e4e4; overflow: hidden;
    width: fit-content;
}
.ccWsBtn {
    width: 40px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; color: #90191c; font-weight: 700;
    background: transparent;
    transition: background 0.18s;
}
.ccWsBtn:hover { background: #fdf0f0; }
.ccWsNum {
    min-width: 80px; text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 22px; font-weight: 800; color: #111;
    border: none; background: transparent;
    -moz-appearance: textfield;
    padding: 0 8px !important;
}
.ccWsNum::-webkit-outer-spin-button,
.ccWsNum::-webkit-inner-spin-button { -webkit-appearance: none; }
.ccWsSuffix {
    padding-right: 16px !important;
    font-size: 12px; color: #aaa; font-weight: 500;
    white-space: nowrap;
}

/* Segmented button group */
.ccSeg {
    display: flex; flex-wrap: wrap; gap: 7px;
}
.ccSegBtn {
    padding: 8px 14px !important;
    border-radius: 8px;
    border: 1.5px solid #f0e4e4;
    background: #faf5f5;
    font-size: 13px; color: #555; font-weight: 500;
    transition: all 0.18s;
    white-space: nowrap;
}
.ccSegBtn:hover { border-color: #e8c5c6; background: #fdf8f8; color: #111; }
.ccSegBtn.sel {
    background: #90191c; color: #fff;
    border-color: #90191c;
    font-weight: 600;
}
.ccSegBtn.sel-gold {
    background: #c9a656; color: #fff;
    border-color: #c9a656;
    font-weight: 600;
}

/* Select dropdown */
.ccSelect {
    width: 100%;
    padding: 11px 14px !important;
    border-radius: 8px;
    border: 1.5px solid #f0e4e4;
    background: #faf5f5;
    font-family: 'Poppins', sans-serif;
    font-size: 13.5px; color: #333;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%23c9a656'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    cursor: pointer;
    transition: border-color 0.18s;
}
.ccSelect:focus { outline: none; border-color: #c9a656; }

/* Toggle switch */
.ccToggleWrap {
    display: flex; align-items: center; gap: 12px;
}
.ccToggle {
    position: relative;
    width: 44px; height: 24px;
    flex-shrink: 0;
}
.ccToggle input { opacity: 0; width: 0; height: 0; position: absolute; }
.ccToggleSlider {
    position: absolute; inset: 0;
    background: #e5e5e5; border-radius: 24px;
    transition: background 0.22s;
    cursor: pointer;
}
.ccToggleSlider::before {
    content: '';
    position: absolute;
    width: 18px; height: 18px;
    left: 3px; top: 3px;
    background: #fff; border-radius: 50%;
    transition: transform 0.22s;
    box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.ccToggle input:checked + .ccToggleSlider { background: #90191c; }
.ccToggle input:checked + .ccToggleSlider::before { transform: translateX(20px); }
.ccToggleTxt { font-size: 13.5px; color: #555; }
.ccToggleTxt strong { color: #111; }

/* ---- Result Panel ---- */
.ccResult {
    padding: 28px 24px !important;
    background: #fffcfc;
    display: flex; flex-direction: column; gap: 0;
    position: sticky; top: 90px;
}

.ccResultTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 700; color: #aaa;
    letter-spacing: 1px; text-transform: uppercase;
    margin-bottom: 8px !important;
}

.ccEstimate {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(22px, 2.5vw, 30px);
    font-weight: 900;
    color: #90191c;
    line-height: 1.1;
    margin-bottom: 6px !important;
}
.ccEstimate span { font-size: 16px; color: #aaa; font-weight: 500; margin: 0 6px; }

.ccEstNote {
    font-size: 12px; color: #aaa;
    margin-bottom: 20px !important;
}

.ccBreakdown {
    background: #faf5f5;
    border-radius: 10px;
    padding: 16px !important;
    margin-bottom: 18px !important;
}
.ccBreakTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 10.5px; font-weight: 800; color: #888;
    text-transform: uppercase; letter-spacing: 0.8px;
    margin-bottom: 12px !important;
}
.ccBLine {
    display: flex; justify-content: space-between;
    align-items: flex-start; gap: 8px;
    padding: 6px 0 !important;
    border-bottom: 1px solid #f0e4e4;
    font-size: 12.5px;
}
.ccBLine:last-child { border-bottom: none; }
.ccBLineLabel { color: #666; flex: 1; line-height: 1.4; }
.ccBLineVal {
    font-family: 'Montserrat', sans-serif;
    font-size: 12.5px; font-weight: 700; color: #111;
    white-space: nowrap;
    flex-shrink: 0;
}
.ccBLineVal.zero { color: #bbb; }

.ccDisclaimer {
    font-size: 11.5px; color: #aaa; line-height: 1.65;
    margin-bottom: 18px !important;
    padding: 12px !important;
    background: #fdf9f0;
    border-radius: 8px;
    border-left: 3px solid #c9a656;
}
.ccDisclaimer strong { color: #8a6800; }

.ccResultCta {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    background: #90191c; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13.5px; font-weight: 600;
    padding: 13px 20px !important;
    border-radius: 8px;
    box-shadow: 0 6px 18px rgba(144,25,28,0.25);
    transition: background 0.22s, transform 0.22s;
    width: 100%;
}
.ccResultCta:hover { background: #720f12; color: #fff; transform: translateY(-2px); }
.ccResultCta i { font-size: 11px; }

/* ---- Animation ---- */
.ccAnim {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ccAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 960px) {
    .ccTiers { grid-template-columns: 1fr 1fr; }
    .ccTier:nth-child(3) { grid-column: 1 / -1; }
    .ccMid { grid-template-columns: 1fr; }
    .ccCalcBody { grid-template-columns: 1fr; }
    .ccInputs { border-right: none; border-bottom: 1px solid #f5eded; }
    .ccResult { position: static; }
}
@media (max-width: 600px) {
    .ccSec { padding: 52px 0 !important; }
    .ccTiers { grid-template-columns: 1fr; }
    .ccTier:nth-child(3) { grid-column: auto; }
    .ccCalcHead { padding: 18px 20px !important; }
    .ccInputs { padding: 20px !important; }
    .ccResult { padding: 20px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bde9f94 */#dwRoot {
    font-family: 'Poppins', sans-serif;
    background: #fff;
}
#dwRoot *, #dwRoot *::before, #dwRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#dwRoot h2, #dwRoot h3, #dwRoot p { margin: 0; padding: 0; }
#dwRoot a { text-decoration: none; }

.dwW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.dwSec { padding: 80px 0 !important; }

/* ---- Main Grid ---- */
.dwGrid {
    display: grid;
    grid-template-columns: 460px 1fr;
    gap: 60px;
    align-items: start;
}

/* ---- LEFT: Image ---- */
.dwImgWrap { position: sticky; top: 90px; }

.dwImgBox {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0,0,0,0.14);
}

/* Top gradient accent bar */
.dwImgBox::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0;
    height: 5px;
    background: linear-gradient(90deg, #90191c, #c9a656);
    z-index: 3;
}

/* Dark overlay */
.dwImgBox::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.06) 30%, rgba(10,0,0,0.65) 100%);
    z-index: 1;
    pointer-events: none;
}

.dwImgBox img {
    width: 100%;
    height: 580px;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}
.dwImgBox:hover img { transform: scale(1.03); }

/* Fallback */
.dwFallback {
    width: 100%; height: 580px;
    background: linear-gradient(135deg, #fdf0f0 0%, #fff8ee 50%, #fdf0f0 100%);
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
.dwFallback i { font-size: 60px; color: #c9a656; opacity: 0.35; }
.dwFallback span { font-size: 13px; color: #bbb; }

/* "Commercial Only" badge */
.dwBadge {
    position: absolute; top: 18px; right: 18px; z-index: 4;
    background: linear-gradient(135deg, #c9a656, #e0c070);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px; font-weight: 800;
    padding: 6px 14px !important;
    border-radius: 20px;
    box-shadow: 0 4px 14px rgba(201,166,86,0.40);
}

/* Stats strip at bottom of image */
.dwImgStats {
    position: absolute; bottom: 0; left: 0; right: 0; z-index: 2;
    background: rgba(255,255,255,0.10);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-top: 1px solid rgba(255,255,255,0.18);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.dwStat {
    text-align: center;
    padding: 14px 10px !important;
    border-right: 1px solid rgba(255,255,255,0.12);
}
.dwStat:last-child { border-right: none; }
.dwStat strong {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px; font-weight: 900; color: #fff;
    line-height: 1;
    margin-bottom: 4px !important;
}
.dwStat span {
    font-size: 10.5px; color: rgba(255,255,255,0.72);
    line-height: 1.35;
}

/* ---- RIGHT: Content ---- */
.dwRight {}

.dwTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px; font-weight: 600;
    color: #90191c; letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.dwTag i { color: #c9a656; font-size: 10px; }

.dwH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800;
    color: #111; line-height: 1.22;
    letter-spacing: -0.4px;
    margin-bottom: 28px !important;
}
.dwH2 span { color: #90191c; }

/* ---- Feature Rows ---- */
.dwFeats { display: flex; flex-direction: column; gap: 0; }

.dwFeat {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px 0 !important;
    border-bottom: 1px solid #f5eded;
    transition: padding-left 0.2s;
}
.dwFeat:first-child { padding-top: 0 !important; }
.dwFeat:last-child { border-bottom: none; }
.dwFeat:hover { padding-left: 6px !important; }

.dwFIco {
    width: 40px; height: 40px;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; color: #fff;
    flex-shrink: 0;
    margin-top: 1px;
}
.fi1 { background: linear-gradient(135deg, #90191c, #c0393c); }
.fi2 { background: linear-gradient(135deg, #c9a656, #e0c070); }
.fi3 { background: linear-gradient(135deg, #720f12, #c9a656); }
.fi4 { background: linear-gradient(135deg, #1a6baa, #2e8fcb); }
.fi5 { background: linear-gradient(135deg, #2d9e5f, #3dbb74); }
.fi6 { background: linear-gradient(135deg, #7b52ab, #9e6fd4); }
.fi7 { background: linear-gradient(135deg, #90191c, #720f12); }

.dwFText {}
.dwFTitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px; font-weight: 800; color: #111;
    margin-bottom: 5px !important;
    line-height: 1.3;
}
.dwFDesc {
    font-size: 13.5px; color: #666; line-height: 1.70;
}

/* ---- CTAs ---- */
.dwCtas {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 28px !important;
}

.dwCtaP {
    display: inline-flex; align-items: center; gap: 8px;
    background: #90191c; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600;
    padding: 12px 22px !important;
    border-radius: 6px;
    box-shadow: 0 6px 18px rgba(144,25,28,0.25);
    transition: background 0.22s, transform 0.22s;
    white-space: nowrap;
}
.dwCtaP:hover { background: #720f12; color: #fff; transform: translateY(-2px); }
.dwCtaP i { font-size: 11px; transition: transform 0.2s; }
.dwCtaP:hover i { transform: translateX(4px); }

.dwCtaW {
    display: inline-flex; align-items: center; gap: 8px;
    background: #25d366; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600;
    padding: 12px 22px !important;
    border-radius: 6px;
    box-shadow: 0 6px 18px rgba(37,211,102,0.28);
    transition: background 0.22s, transform 0.22s;
    white-space: nowrap;
}
.dwCtaW:hover { background: #1da955; color: #fff; transform: translateY(-2px); }
.dwCtaW i { font-size: 14px; }

.dwCtaC {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; color: #90191c;
    font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600;
    padding: 11px 20px !important;
    border-radius: 6px; border: 2px solid #90191c;
    transition: all 0.22s;
    white-space: nowrap;
}
.dwCtaC:hover { background: #90191c; color: #fff; transform: translateY(-2px); }
.dwCtaC i { font-size: 13px; }

/* ---- Animation ---- */
.dwAnimL {
    opacity: 0; transform: translateX(-22px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.dwAnimR {
    opacity: 0; transform: translateX(22px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}
.dwAnimL.on, .dwAnimR.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 980px) {
    .dwGrid { grid-template-columns: 1fr; gap: 40px; }
    .dwImgWrap { position: static; }
    .dwImgBox img, .dwFallback { height: 400px; }
}
@media (max-width: 540px) {
    .dwSec { padding: 52px 0 !important; }
    .dwImgBox img, .dwFallback { height: 280px; }
    .dwImgStats { display: none; }
    .dwCtas { flex-direction: column; align-items: stretch; }
    .dwCtaP, .dwCtaW, .dwCtaC { justify-content: center; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-01db8de */#dfqRoot {
    font-family: 'Poppins', sans-serif;
}
#dfqRoot *, #dfqRoot *::before, #dfqRoot *::after {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
#dfqRoot h2, #dfqRoot p { margin: 0; padding: 0; }
#dfqRoot a { text-decoration: none; }

.dfqW {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px !important;
}
.dfqSec { padding: 80px 0 !important; }

/* ---- Header ---- */
.dfqTag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fdf0f0;
    border: 1px solid #e8c5c6;
    border-radius: 30px;
    padding: 5px 14px !important;
    font-size: 11.5px; font-weight: 600;
    color: #90191c; letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
}
.dfqTag i { color: #c9a656; font-size: 10px; }

.dfqH2 {
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(20px, 2.6vw, 30px);
    font-weight: 800; color: #111;
    line-height: 1.22; letter-spacing: -0.4px;
    margin-bottom: 40px !important;
}
.dfqH2 span { color: #90191c; }

/* ---- Two-column layout ---- */
.dfqLayout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    align-items: start;
}

/* ---- FAQ Item ---- */
.dfqItem {
    background: #faf5f5;
    border-radius: 12px;
    border: 1.5px solid #f0e4e4;
    overflow: hidden;
    transition: box-shadow 0.22s, border-color 0.22s;
    align-self: start;
}
.dfqItem.open {
    border-color: #e8c5c6;
    box-shadow: 0 6px 28px rgba(144,25,28,0.08);
    background: #fff;
}

.dfqQ {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px !important;
    cursor: pointer;
    user-select: none;
}

/* Number badge */
.dfqNum {
    width: 34px; height: 34px;
    border-radius: 9px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px; font-weight: 800; color: #fff;
    flex-shrink: 0;
    background: linear-gradient(135deg, #ddd, #ccc);
    transition: background 0.22s;
}
.dfqItem.open .dfqNum,
.dfqItem:hover .dfqNum { background: linear-gradient(135deg, #90191c, #c0393c); }
.dfqItem:nth-child(even) .dfqNum { background: linear-gradient(135deg, #bbb, #aaa); }
.dfqItem:nth-child(even).open .dfqNum,
.dfqItem:nth-child(even):hover .dfqNum { background: linear-gradient(135deg, #c9a656, #e0c070); }

.dfqQText {
    font-family: 'Montserrat', sans-serif;
    font-size: 13.5px; font-weight: 700; color: #111;
    flex: 1; line-height: 1.38;
}

.dfqArrow {
    font-size: 11px; color: #ccc;
    flex-shrink: 0;
    transition: transform 0.25s, color 0.22s;
}
.dfqItem.open .dfqArrow { transform: rotate(180deg); color: #90191c; }
.dfqItem:nth-child(even).open .dfqArrow { color: #c9a656; }

/* Answer */
.dfqA {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}
.dfqItem.open .dfqA { max-height: 600px; }

.dfqAInner {
    padding: 0 20px 18px 68px !important;
    font-size: 13.5px; color: #555; line-height: 1.80;
    border-top: 1px solid #f0e4e4;
    padding-top: 14px !important;
}

/* ---- Bottom CTA ---- */
.dfqBottom {
    background: #fff;
    border-radius: 12px;
    border-left: 5px solid #90191c;
    padding: 22px 28px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.05);
    margin-top: 20px !important;
}
.dfqBottomTxt { font-size: 14px; color: #333; line-height: 1.60; }
.dfqBottomTxt strong { color: #90191c; }

.dfqBottomCta {
    display: inline-flex; align-items: center; gap: 8px;
    background: #90191c; color: #fff;
    font-family: 'Poppins', sans-serif; font-size: 13.5px; font-weight: 600;
    padding: 11px 22px !important;
    border-radius: 6px; white-space: nowrap; flex-shrink: 0;
    box-shadow: 0 6px 18px rgba(144,25,28,0.25);
    transition: background 0.22s, transform 0.22s;
}
.dfqBottomCta:hover { background: #720f12; color: #fff; transform: translateY(-2px); }
.dfqBottomCta i { font-size: 11px; transition: transform 0.2s; }
.dfqBottomCta:hover i { transform: translateX(4px); }

/* ---- Animation ---- */
.dfqAnim {
    opacity: 0; transform: translateY(18px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.dfqAnim.on { opacity: 1; transform: none; }

/* ---- Responsive ---- */
@media (max-width: 800px) {
    .dfqLayout { grid-template-columns: 1fr; }
    .dfqBottom { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 540px) {
    .dfqSec { padding: 52px 0 !important; }
    .dfqAInner { padding-left: 20px !important; }
}/* End custom CSS */