@import "default.css";

/*HEADER TOP*/
.header-top{
    background: linear-gradient(90deg, var(--vc) 0%, #4a1e6b 100%);
    padding: 9px 0;
    font-size: 13px;
}
.header-top .ht-item{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 2px 8px;
    color: rgba(255,255,255,.9);
    transition: color .3s ease;
}
.header-top .ht-item i{
    font-size: 12px;
    color: var(--cyc);
}
.header-top .ht-item:hover{
    color: var(--wc);
}
.header-top .ht-divider{
    width: 1px;
    height: 14px;
    background: rgba(255,255,255,.25);
    margin: 0 4px;
}
.header-top .ht-social{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-inline-start: 8px;
}
.header-top .ht-social a{
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    color: var(--wc);
    font-size: 12px;
    transition: .3s ease;
}
.header-top .ht-social a:hover{
    background: var(--rc);
    color: var(--wc);
}
.header-top .ht-actions{
    gap: 10px;
}
.header-top .ht-pill{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.28);
    color: var(--wc);
    font-size: 13px;
    font-weight: 500;
    padding: 6px 16px;
    border-radius: 50px;
    transition: .3s ease;
}
.header-top .ht-pill:hover,
.header-top .ht-pill[aria-expanded="true"]{
    background: rgba(255,255,255,.22);
}
.header-top .ht-pill-accent{
    background: var(--rc);
    border-color: var(--rc);
}
.header-top .ht-pill-accent:hover{
    background: #c62828;
}
/* HEADER */
header {
    height: 84px;
    background: var(--wc);
    border-bottom: 1px solid var(--f0c);
    transition: .4s;
}
header.scrolled{
    height: 68px;
    box-shadow: 0 4px 18px rgba(46,0,68,.12);
}

.logo img {
    max-width: 210px;
    transition: .3s ease;
}
header.scrolled .logo img{
    max-width: 175px;
}

.logo i {
    font-size: 22px;
    padding: 8px;
    padding-right: 0;
    transition: .2s;
}

.logo i:hover {
    color: var(--sc);
    cursor: pointer;
}

.menubar ul {
    /* logical `end`: right in LTR, left in RTL — keeps the menu hugging the
       outer edge (away from the logo) in both directions */
    text-align: end;
    align-items: center;
}
.menubar ul li {
    display: inline-flex;
    align-items: center;
}
.menubar ul li a {
    font-weight: 500;
    text-transform: capitalize;
    display: inline-block;
    padding: 9px 16px;
    margin: 0 2px;
    border-radius: 50px;
    color: var(--pc);
    transition: .3s ease;
}
.menubar ul li a:hover{
    color: var(--vc);
    background: var(--f0c);
}
.menubar .bell-wrap{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--f0c);
    margin: 0 12px;
    transition: .3s ease;
}
.menubar .bell-wrap:hover{
    background: #ece0f4;
}
.menubar .bell-wrap img{
    width: 16px;
    height: 16px;
}
.menubar .bell-wrap sup{
    position: absolute;
    top: -3px;
    inset-inline-end: -3px;
    background: var(--rc);
    color: var(--wc);
    font-size: 10px;
    line-height: 1;
    padding: 4px 5px;
    border-radius: 50px;
}
.menubar .login-menu {
    background: linear-gradient(135deg, var(--rc), #c62828);
    color: var(--wc);
    padding: 10px 22px;
    border-radius: 50px;
    text-transform: none;
    font-weight: 600;
    box-shadow: 0 4px 14px rgba(229,57,53,.35);
    transition: .3s ease;
}
.menubar .login-menu:hover{
    background: linear-gradient(135deg, var(--vc), #4a1e6b);
    color: var(--wc);
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(46,0,68,.32);
}
/*HEADER*/
/*MOBILE MENU*/

/*ACCORDION CUSTOM*/
.mobile-logo img {
    width: 150px;
    padding: 10px 0;
    margin-left: 10px;
}

.mobile-logo i {
    font-size: 20px;
    float: right;
    margin: 5px 20px;
    color: var(--pc);
    cursor: pointer;
    padding: 5px;
}

.mobile-logo i:hover {
    color: var(--sc);
}

.custom.accordion-button {
    text-transform: capitalize;
    font-size: 15px;
    -webkit-transition: .4s;
    transition: .4s;
    color: var(--pc);
    font-weight: 400;
}

.custom.accordion-button:hover {
    color: var(--sc);
}

.custom.accordion-button:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    border-top: 1px solid #ccc;

}

.custom.accordion-button:not(.collapsed) {
    color: var(--sc);
    background: var(--rc);
    -webkit-transform: none;
    transform: none;
    font-weight: 400;
}

.custom.accordion-button:not(.collapsed)::after {
    background-image: none;
    content: "\f068";
    font-family: 'FontAwesome';
    -webkit-transform: rotate(0deg) !important;
    transform: rotate(0deg) !important;
}

.none.accordion-button:not(.collapsed)::after {
    content: none;
    -webkit-transform: rotate(0deg) !important;
    transform: rotate(0deg) !important;
}


.custom.accordion-button::after {
    background-image: none;
    content: "\f067";
    font-family: 'FontAwesome';
}

.none.accordion-button::after {
    content: none;
}

.custom.accordion-body {
    padding: 0 0px;
}

.custom.accordion-body ul {
    padding: 0;
    margin: 0;
}

.custom.accordion-body ul li {
    list-style: none;
    padding: 8px 0;
    -webkit-transition: .4s;
    transition: .4s;
}

.custom.accordion-body ul li a {
    text-decoration: none;
    font-size: 15px;
    text-transform: capitalize;
    color: var(--pc);
    font-weight: 400;
    display: inline-block;
    margin-left: 40px;
}

.custom.accordion-body ul li a i {
    font-size: 10px;
    margin-right: 5px;
}

.custom.accordion-body ul li:hover {
    color: var(--wc);
    background: var(--rc);
}

.custom.accordion-body ul li:hover a {
    color: var(--sc);
}

.custom.accordion-item a {
    text-decoration: none;

}


.accordion-button.custom i {
    padding: 0 10px;
}

/*ACCORDION CUSTOM END*/

.mobile-menu {
    width: 350px;
    position: fixed;
    left: -380px;
    top: 0;
    z-index: 2;
    background: var(--wc);
    height: 100%;
    overflow: auto;
    transition: .4s;
    padding: 10px 0;
}
#mobileOverlay {
    position: fixed;
    left: 0;
    width: 100%;
    top: 0;
    height: 100%;
    background: rgba(101, 41, 145, 0.71);
    z-index: 1;
    cursor: pointer;
}
.mobileAdd {
    left: 0 !important;
}
.mobile-overlay {
    position: inherit !important;
}
/*MOBILE MENU END*/

/* BANNER PART CSS START  */
.banner-img{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.banner-overlay {
    background-color: var(--overlay);
    padding: 200px 0px;
}
.banner-part{
    position: relative;
}
.banner-content .content {
    position: absolute;
    top: 150px;
    left: 50%;
    transform: translateX(-50%);
}
.section-title h2,p{
    color: var(--wc);
}

/* search bar */
.nav-pills .nav-link {
    background: var(--vc);
    color: var(--wc);
    margin: 0px 2px;
    font-weight: 500;
}
.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    background-color: var(--rc);
}
.search-bar .search-content {
    background: var(--wc);
    border-radius: 10px;
    padding: 15px 10px;
    margin-top: -12px;
}
.search-content button{
    background: var(--wc);
}
.search-item h6 {
    color: var(--arc);
    font-size: 16px;
    line-height: 24px;
}
.search-item span {
    font-weight: 500;
    font-size: 10px;
    color: var(--rc);
}
.search-content .src-btn button {
    background: var(--rc);
    font-weight: 400;
    font-size: 16px;
    color: var(--wc);
    padding: 8px 10px;
    border-radius: 10px;
    transition: .5s ease;
}
.search-content .src-btn button:hover{
    background-color: var(--vc);
}
/* BANNER PART CSS END  */

/* 50% IMAGE PART CSS START  */
.fifty-percentoff .image-item{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.fifty-percentoff .image-item-overlay {
    background-color: var(--overlay);
    transition: .4s ease-in-out;
    border-radius: 10px;
}
.fifty-percentoff .image-item:hover .image-item-overlay{
    background-color: #2f004472;
}
.fifty-percentoff .content{
    padding: 0px 20px;
}
.fifty-percentoff .content h5{
    color: var(--wc);
    transition: .4s ease;
}
.fifty-percentoff .content h3{
    color: var(--wc);
}
.fifty-percentoff .small-text{
    color: var(--wc);
}
/* 50% IMAGE PART CSS END  */

/* TOP DESTINATION PART CSS START  */
.top-destination-image{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border-radius: 10px;
    transition: .5s ease-in-out;
}
.top-destination-image-overlay {
    background-color: var(--overlay);
    transition: .5s ease-in-out;
    padding: 20px 10px;
}
.top-destination-image:hover .top-destination-image-overlay{
    background-color: #2f004472;
}

.top-destination-image h4 {
    color: var(--wc);
    font-weight: 500;
    font-size: 24px;
}
.top-destination-image span{
    font-weight: 500;
    font-size: 12px;
    background: var(--rc);
    padding: 5px 10px;
    color: var(--wc);
    border-radius: 5px;
}
.top-destination-image ul li{
    font-weight: 300;
    font-size: 12px;
    color: var(--wc);
}
.top-destination-image ul li:last-child{
    border-right: none;
}

.view-btn a{
    font-weight: 400;
    font-size: 12px;
    color: var(--wc);
    background: var(--vc);
    padding: 10px 15px;
    border-radius: 20px;
}
/* TOP DESTINATION PART CSS END  */

/* CTEATE YOUR OWN BANNER PART CSS START  */
.own-banner{
    background-image: url(../img/photos/create-your-own-banner.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.own-banner-overlay{
    background-color: var(--overlay);
    padding: 90px 0px;
}
.own-banner h3{
    font-size: 32px;
    color: var(--wc);
}
.own-banner p{
    max-width: 550px;
}
.own-banner .custom-btn a {
    padding: 12px 25px;
    border-radius: 20px;
}
/* CTEATE YOUR OWN BANNER PART CSS END  */

/* SPECIAL PACKAGE PART CSS START  */
.special-package .card{
    border: none;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25);
}
.special-package .card a{
    color: var(--arc);
    transition: .5s ease;
}
.special-package .card a:hover{
    color: var(--vc);
}
.special-package .card i{
    font-size: 22px;
    cursor: pointer;
}
.special-package .card p{
    color: #9E9E9E;
    font-size: 15px;
}
.special-package .card h6 {
    color: var(--arc);
    line-height: 10px;
}
hr.special-package{
    color: var(--arc);
    height: 1px;
}
.special-package .book-now a {
    font-weight: 600;
    font-size: 15px;
    color: var(--rc);
    transition: .4s ease;
}
.special-package .book-now i{
    font-size: 16px;
    margin-left: 8px;
    color: var(--rc);
    margin-top: 3px;
    transition: .4s ease;
}
.special-package .book-now:hover a{
    color: var(--vc);
}
.special-package .book-now:hover i{
    color: var(--vc);
}

/* SPECIAL PACKAGE PART CSS END  */

/* NEAR YOUR LOCATION PART CSS START  */
.near-your-location .near-place{
    width: 100%;
}
.near-your-location .near-place img{
    max-height: 450px;
}
.near-your-location .place-location{
    width: 100%;
}
.near-your-location .place-location img{
    max-height: 450px;
}
/* NEAR YOUR LOCATION PART CSS END  */

/* GALLERY IMAGE PART CSS START  */
.image-gallery .gallery{
    width: 100%;
    cursor: pointer;
}
.image-gallery .gallery img{
    width: 100%;
    border-radius: 5px;
}
/* GALLERY IMAGE PART CSS END  */

/* SUBSCRIBE PART CSS START  */
.subscribe-part .text{
    background: #f5f5f5;
    border: 1px solid var(--gc);
    padding: 20px 20px;
    width: 50%;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
.subscribe-part h4{
    color: var(--arc);
}
.subscribe-part .text .custom-control{
    height: 40px;
    font-size: 16px;
    border: var(--arc);
    outline: none;
    width: 80%;
    border: 1px solid var(--gc);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    padding-left: 10px;
}
.subscribe-part .text button {
    height: 40px;
    background: var(--rc);
    color: var(--wc);
    font-size: 14px;
    transition: .5s ease;
    outline: none;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: none;
    z-index: 0;
}
.subscribe-part .text button:hover{
    background: var(--vc);
}
/* SUBSCRIBE PART CSS END  */

/* ====================================
    Search Result Page Css 
==================================== */
.available-package .dropdown-btn {
    background: var(--wc);
    border: 1px solid var(--vc);
    font-weight: 500;
    font-size: 15px;
    padding: 10px 18px;
    border-radius: 50px;
}
.available-package .rating i{
    font-size: 14px;
    color: var(--cyc);
}
.available-package .card-end span{
    font-weight: 300;
    font-size: 12px;
    color: #424242;
}
.available-package .view-btn a{
    background: var(--rc);
    color: var(--wc);
    transition: .5 ease-in-out;
}
.available-package .view-btn a:hover{
    background: var(--vc);
    color: var(--wc);
}


/* ====================================
    Package Details Page Css 
==================================== */
.rating p{
    color: var(--sc);
    margin-left: 10px;
}
.aboutus-text p{
    color: var(--arc);
}
.facilities ul li span {
    font-size: 15px;
    margin-left: 10px;
}
.avility-card {
    border: 1px solid var(--gc);
    border-radius: 10px;
    padding: 20px;
}
.avility-card h6{
    font-weight: 500;
    font-size: 14px;
}
.avility-card .custom-control {
    height: 38px;
    border: 1px solid var(--gc);
    padding: 10px;
    outline: none;
    border-radius: 5px;
    width: 95%;
}
.quantity .custom-control {
    width: 60%;
    font-weight: 500;
    padding-left: 20px;
}
.quantity p {
    padding: 0px;
    margin: 0px;
    font-size: 13px;
    margin-top: -3px;
}

.check-ability-btn button {
    font-weight: 400;
    font-size: 15px;
    background: #00B6DD;
    color: var(--wc);
    padding: 8px 16px;
    border-radius: 5px;
    transition: .4s ease-in-out;
}
.check-ability-btn button:hover{
    background: var(--vc);
}

.more-image{
    padding: 8px;
}



/* ====================================
    Contact us page CSS 
==================================== */
.about-contact {
    background: #FAFAFA;
}
.map {
    background: #FAFAFA;
}
.form-control {
    border: 1px solid var(--wc);
    box-sizing: border-box;
    border-radius: 5px;
    height: 52px;
    box-shadow: 5px 5px 10px 0px #00000026;
}
.map h4 {
    color: var(--pc);
}



/*FOOTER SECTION*/
footer {
    background: linear-gradient(160deg, #1c0027 0%, var(--vc) 55%, #3d1a5c 100%);
    color: rgba(255,255,255,.75);
}

.footer-box img.footer-logo {
    max-width: 164px;
    margin-bottom: 20px;
    filter: brightness(0) invert(1);
}

.footer-box p {
    color: rgba(255,255,255,.68);
}
.footer-box h6 {
    font-weight: 700;
    color: var(--wc);
    font-size: 16px;
    position: relative;
    padding-bottom: 14px;
    margin-bottom: 18px;
}
.footer-box h6::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 36px;
    height: 3px;
    border-radius: 3px;
    background: linear-gradient(90deg, var(--rc), var(--cyc));
}
body.rtl .footer-box h6::after {
    left: auto;
    right: 0;
}
.footer-menu a {
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,.72);
    padding: 7px 0;
    font-size: 13px;
    font-weight: 400;
    transition: .25s ease;
}
.footer-menu a::before {
    content: '\f105';
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 11px;
    color: var(--cyc);
    opacity: 0;
    transform: translateX(-4px);
    transition: .25s ease;
}
body.rtl .footer-menu a::before {
    content: '\f104';
    transform: translateX(4px);
}
.footer-menu a:hover {
    color: var(--wc);
    padding-left: 4px;
}
body.rtl .footer-menu a:hover {
    padding-left: 0;
    padding-right: 4px;
}
.footer-menu a:hover::before {
    opacity: 1;
    transform: translateX(0);
}
.footer-box ul li {
    padding: 6px 0;
}
.footer-contact-info {
    margin-bottom: 22px;
}
.footer-contact-info li {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(255,255,255,.75);
    font-size: 14px;
}
.footer-contact-info li i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255,255,255,.1);
    color: var(--cyc);
    flex-shrink: 0;
}
.footer-contact-info a {
    color: rgba(255,255,255,.75);
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: color .25s ease;
}
.footer-contact-info a:hover {
    color: var(--wc);
}
.social-media-footer h4 {
    color: var(--wc);
    font-weight: 700;
    font-size: 15px;
    margin: 20px 0 12px;
}
.social-media-footer a i {
    height: 34px;
    width: 34px;
    line-height: 34px;
    color: var(--wc);
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.18);
    text-align: center;
    border-radius: 50%;
    margin-right: 8px;
    transition: .3s ease;
}
body.rtl .social-media-footer a i {
    margin-right: 0;
    margin-left: 8px;
}
.social-media-footer a i:hover {
    color: var(--wc);
    background: var(--rc);
    border-color: var(--rc);
    transform: translateY(-3px);
}
.copyright {
    background: rgba(0,0,0,.18);
    border-top: 1px solid rgba(255,255,255,.1);
}
.copyright p {
    color: rgba(255,255,255,.65);
    font-size: 13px;
    margin: 0;
}
.copyright ul li a {
    color: rgba(255,255,255,.65);
    font-size: 13px;
    transition: color .25s ease;
}
.copyright ul li a:hover {
    color: var(--cyc);
}
/*COPYRIGHT SECTION END*/


/* LOGIN PAGE CSS START */
/*registration start*/

#registration-section {
    background: linear-gradient(180deg, #faf7fd 0%, #f3ecf8 100%);
}
.field-icon {
    float: right;
    color: #787878;
    margin-top: -30px;
    height: 22px;
    width: 22px;
    position: relative;
    z-index: 2;
    right: 10px;
    top: 4px;
}
#registration-section .sign-up {
    background: #FFFFFF;
    box-shadow: 0 20px 50px rgba(46,0,68,.14);
    border-radius: 18px;
    position: relative;
    overflow: hidden;
}
#registration-section .sign-up::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 6px;
    background: linear-gradient(90deg, var(--vc), var(--rc));
}
#registration-section .auth-icon {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--vc), #4a1e6b);
    color: var(--wc);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin: 6px auto 10px;
    box-shadow: 0 10px 22px rgba(46,0,68,.28);
}
#registration-section .sign-up h2 {
    font-size: 30px;
    color: var(--vc);
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0em;
    margin-bottom: 10px;
}
#registration-section .sign-up button {
    background: linear-gradient(135deg, var(--rc), #c62828);
    width: 100%;
    color: #FFFFFF;
    border-radius: 50px;
    padding: 12px;
    font-weight: 600;
    letter-spacing: .3px;
    box-shadow: 0 10px 22px rgba(229,57,53,.3);
    transition: .3s ease;
}
#registration-section .sign-up button:hover {
    background: linear-gradient(135deg, var(--vc), #4a1e6b);
    color: var(--wc);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(46,0,68,.3);
}
#registration-section .sign-up button.btn-outline-auth {
    background: transparent;
    color: var(--vc);
    border: 2px solid var(--vc);
    box-shadow: none;
}
#registration-section .sign-up button.btn-outline-auth:hover {
    background: var(--vc);
    color: var(--wc);
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(46,0,68,.22);
}
#registration-section .sign-up .first-para {
    color: var(--sc);
    margin-top: 5px;
    position: relative;
}
#registration-section .sign-up .second-para {
    color: var(--sc);
    margin-top: 20px;
}
#registration-section .sign-up .second-para a {
    color: var(--vc);
    font-weight: 600;
}
#registration-section .sign-up .forgot-password-link a {
    color: var(--sc);
    font-size: 13px;
    font-weight: 500;
    transition: color .2s ease;
}
#registration-section .sign-up .forgot-password-link a:hover {
    color: var(--rc);
}

#registration-section .form-control,
.contact-form-card .form-control {
    display: block;
    width: 100%;
    height: 48px;
    padding: .375rem .9rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--arc);
    background-color: #faf8fc;
    background-clip: padding-box;
    border: 1.5px solid #e6dbef;
    border-radius: 10px;
    box-shadow: none;
    transition: border-color .2s ease-in-out, box-shadow .2s ease-in-out, background-color .2s ease-in-out;
}
#registration-section .form-control:focus,
.contact-form-card .form-control:focus {
    border-color: var(--vc);
    background-color: #fff;
    box-shadow: 0 0 0 3px rgba(46,0,68,.08);
}
.contact-form-card textarea.form-control {
    height: auto;
}

/* Icon-prefixed inputs — reused by auth pages and the contact form */
.input-icon-group {
    position: relative;
}
.input-icon-group > i {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: var(--sc);
    font-size: 15px;
    pointer-events: none;
}
.input-icon-group textarea ~ i,
.input-icon-group > i.align-top {
    top: 22px;
    transform: none;
}
.input-icon-group .form-control,
#registration-section .input-icon-group .form-control,
.contact-form-card .input-icon-group .form-control {
    padding-left: 42px;
}
body.rtl .input-icon-group > i {
    left: auto;
    right: 16px;
}
body.rtl .input-icon-group .form-control,
body.rtl #registration-section .input-icon-group .form-control,
body.rtl .contact-form-card .input-icon-group .form-control {
    padding-left: .9rem;
    padding-right: 42px;
}
/* LOGIN PAGE CSS END*/

/* ===== Contact page ===== */
.contact-info-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(46,0,68,.08);
    padding: 28px 24px;
    text-align: center;
    height: 100%;
    transition: transform .3s ease, box-shadow .3s ease;
}
.contact-info-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(46,0,68,.12);
}
.contact-info-card .cic-icon {
    width: 58px;
    height: 58px;
    margin: 0 auto 14px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--vc), #4a1e6b);
    color: var(--wc);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    box-shadow: 0 8px 18px rgba(46,0,68,.25);
}
.contact-info-card h5 {
    font-weight: 700;
    color: var(--vc);
    margin-bottom: 8px;
}
.contact-info-card p {
    color: var(--sc);
    margin: 0;
}
.contact-info-card a {
    color: var(--sc);
    transition: color .2s ease;
}
.contact-info-card a:hover {
    color: var(--rc);
}

.contact-form-card {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(46,0,68,.10);
    padding: 40px;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.contact-form-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 6px;
    background: linear-gradient(90deg, var(--vc), var(--rc));
}
.contact-form-card h3 {
    color: var(--vc);
    font-weight: 700;
    margin-bottom: 6px;
}
.contact-form-card .form-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--sc);
    text-transform: uppercase;
    letter-spacing: .4px;
    margin-bottom: 6px;
}
.contact-form-card button {
    background: linear-gradient(135deg, var(--rc), #c62828);
    color: var(--wc);
    border: none;
    width: 100%;
    padding: 13px;
    border-radius: 50px;
    font-weight: 600;
    letter-spacing: .3px;
    box-shadow: 0 10px 22px rgba(229,57,53,.3);
    transition: .3s ease;
}
.contact-form-card button:hover {
    background: linear-gradient(135deg, var(--vc), #4a1e6b);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(46,0,68,.3);
}

.contact-map-card {
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(46,0,68,.10);
    min-height: 340px;
}
.contact-map-card iframe {
    display: block;
    min-height: 340px;
}
