/* ==========================================================
   CCI Nepal – Bootscore child theme (Bootstrap 5)
   Ported 1:1 from the old site's style.css
   ========================================================== */

/* Bootstrap 4 parity: 30px gutters, 1300px container */
.container, .container-fluid, .row { --bs-gutter-x: 30px; }
@media (min-width: 1200px) { .container { max-width: 1300px; } }

body {
	font-family: "Poppins", sans-serif;
	font-weight: normal;
	color: #4D4D4D;
	font-size: 15px;
	overflow-x: hidden;
	background: #fff;
}
a, .button { transition: .3s; text-decoration: none; }
a, button { color: #1F1F1F; outline: none; }
a:hover, a:focus { text-decoration: none; color: #1F1F1F; }
h1, h2, h3, h4, h5, h6 { font-family: "Poppins", sans-serif; color: #1F1F1F; line-height: 1.2em; }
h2 { font-size: 30px; } h3 { font-size: 24px; } h4 { font-size: 18px; } h5 { font-size: 16px; }
ul { margin: 0; padding: 0; } ul > li { list-style: none; }
p { font-size: 15px; font-weight: 300; line-height: 28px; color: #4D4D4D; margin-bottom: 13px; font-family: "Poppins", sans-serif; }
img { max-width: 100%; }
.tb60p { padding: 40px 0; }
.bp-80 { padding: 40px 0 80px; }
.section_title { padding-bottom: 50px; }
.clear { clear: both; }

/* ---------- Header ---------- */
.header-area { width: 100%; z-index: 99; position: relative; }
.header-area .main-header-area { padding: 18px 0; background: #fff; }
.header-area .logo img { width: 200px; height: auto; }
.header-area .custom-logo-link img { max-height: 50px; width: auto; }
.cci-menu { align-items: center; padding: 12px 0; }
.cci-menu .nav-item { position: relative; margin: 0 10px; }
.cci-menu > .nav-item:last-child { margin-right: 0; }
.cci-menu .nav-link {
	color: #727272; font-size: 15px; text-transform: capitalize; font-weight: 500;
	padding: 0 !important; display: inline-block; position: relative;
}
.cci-menu .nav-link:hover, .cci-menu .nav-link.active,
.cci-menu .current-menu-item > .nav-link, .cci-menu .current-menu-item > a,
.cci-menu .current-menu-ancestor > .nav-link { color: #007b5e; }
.cci-menu > li:first-child > a::before { /* home icon */
	content: "\f015"; font-family: "Font Awesome 6 Free"; font-weight: 900; margin-right: 5px; font-size: 12px;
}
.cci-menu .dropdown-toggle::after { border: 0; content: "\f078"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 8px; vertical-align: middle; margin-left: 4px; }
.cci-menu .dropdown-menu {
	border: 0; border-radius: 0; background: #fff; min-width: 200px; padding: 0; margin: 0;
	box-shadow: 0 0 10px rgba(0,0,0,.08); text-align: left;
}
.cci-menu .dropdown-menu .nav-link,
.cci-menu .dropdown-menu .dropdown-item { padding: 10px 15px !important; display: block; color: #000; font-size: 15px; font-weight: 500; text-transform: capitalize; background: transparent; }
.cci-menu .dropdown-menu .nav-link:hover,
.cci-menu .dropdown-menu .dropdown-item:hover { color: #007b5e; background: transparent; }
.cci-toggler { border: 1px solid #ddd; margin-left: auto; padding: 6px 12px; color: #727272; }
.cci-toggler:focus { box-shadow: none; }

@media (min-width: 992px) {
	.cci-menu .dropdown:hover > .dropdown-menu { display: block; margin-top: 0; }
}
@media (max-width: 991.98px) {
	.cci-menu { align-items: flex-start; padding: 15px 0 5px; }
	.cci-menu .nav-item { margin: 0; padding: 8px 0; width: 100%; border-top: 1px solid #f0f0f0; }
	.cci-menu .dropdown-menu { box-shadow: none; padding-left: 15px; }
	.header-area .main-header-area .container > .navbar { flex-wrap: wrap; }
}

/* sticky header */
.header-area .main-header-area.sticky {
	position: fixed; width: 100%; top: -70px; left: 0; right: 0; z-index: 99;
	transform: translateY(70px); transition: transform 500ms ease, background 500ms ease;
	box-shadow: 0 3px 16px 0 rgba(0,0,0,.1); background: rgba(255,255,255,.96);
}
.header-area .main-header-area.sticky .cci-menu { padding: 0; }
.admin-bar .header-area .main-header-area.sticky { top: -38px; }
@media (max-width: 782px) { .admin-bar .header-area .main-header-area.sticky { top: -24px; } }

/* ---------- Slider ---------- */
.carousel { margin-bottom: 4rem; }
.carousel-item { height: 32rem; background-color: #777; }
.carousel-item img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 991.98px) { .carousel-item { height: 24rem; } }
@media (max-width: 767.98px) { .carousel-item { height: 18rem; } .carousel { margin-bottom: 2rem; } }
@media (max-width: 575.98px) { .carousel-item { height: 13rem; } }

/* ---------- Welcome ---------- */
.welcome_section h2 {
	font-size: 18px; font-weight: 400; color: #1F1F1F; margin-bottom: 20px;
	position: relative; z-index: 9; padding-bottom: 9px;
}
.welcome_section h2:before { content: ""; position: absolute; left: 0; bottom: 0; height: 2px; width: 50px; background: #007b5e; }
.welcome_section p { text-align: justify; }
.boxed-btn3-white-2 {
	color: #007b5e !important; display: inline-block; padding: 9px 24px; font-family: "Poppins", sans-serif;
	font-size: 15px; font-weight: 400; border: 1px solid #007b5e; border-radius: 5px; text-align: center;
	text-transform: capitalize; transition: .5s; background: transparent; cursor: pointer;
}
.boxed-btn3-white-2:hover { background: #007b5e; color: #fff !important; border: 1px solid transparent; }
.welcome_thumb img { width: 100%; }
@media (max-width: 991.98px) { .welcome_thumb { margin-top: 20px; } }

/* ---------- Vision / Mission / Equity ---------- */
.mvg_section, .staff_section { background: #f2f2f2; }
.mvg_title {
	text-align: center; margin: 0 auto; width: 40%; z-index: 11; position: relative; color: #fff;
	border-radius: 3px; text-transform: uppercase; box-shadow: 7px 7px 10px rgba(0,0,0,.1);
}
.mvg_title h4 { color: #fff; font-size: 17px; margin: 10px 0; }
.mdarkv { background-color: #f97955; border: 1px solid #f97955; }
.vpurp  { background-color: #4cc1cb; border: 1px solid #4cc1cb; }
.eblue  { background-color: #007b5e; border: 1px solid #007b5e; }
.mvg_wrap { padding: 0 15px; }
.mdiv, .vdiv, .ediv {
	margin: 0; padding: 20px; z-index: 5; position: relative; top: -21px; background: #fff; color: #666;
	text-align: center; border-radius: 3px; box-shadow: 7px 7px 10px rgba(0,0,0,.1);
}
.mb { border-top: 2px solid #f97955; } .vb { border-top: 2px solid #4cc1cb; } .eb { border-top: 2px solid #007b5e; }
.mdiv p button, .vdiv p button, .ediv p button { border-radius: 3px; background: #fff; font-weight: 300; margin: 20px 0 5px; }
.btn-default { border: 1px solid #ccc; color: #666; font-size: 14px; padding: 6px 12px; line-height: 1.5; }
.mdiv p button:hover { border: 1px solid #f97955; background: #f97955; color: #fff; transition: all .6s ease; }
.vdiv p button:hover { border: 1px solid #4cc1cb; background: #4cc1cb; color: #fff; transition: all .6s ease; }
.ediv p button:hover { border: 1px solid #007b5e; background: #007b5e; color: #fff; transition: all .6s ease; }
.mvg_img { border: 2px solid #666; width: 50px; height: 50px; border-radius: 50%; margin: 25px auto; padding: 8px; background: #fff; }
.mvg_img img { display: block; margin: 0 auto; }
.vpt20 { padding-top: 6px; }
.mpd2 { padding: 2px; position: relative; left: -1px; }
@media (max-width: 767.98px) { .mvg_section .col-md-6 { margin-bottom: 15px; } }

/* ---------- Board (flip cards) ---------- */
.btn-plus { background-color: #007b5e; color: #fff; }
.btn-plus:hover { color: #fff; background-color: #006a51; }
.image-flip:hover .backside, .image-flip.hover .backside { transform: rotateY(0deg); border-radius: .25rem; }
.image-flip:hover .frontside, .image-flip.hover .frontside { transform: rotateY(180deg); }
.mainflip { transition: 1s; transform-style: preserve-3d; position: relative; }
.frontside { position: relative; transform: rotateY(0deg); z-index: 2; margin-bottom: 30px; }
.backside { position: absolute; top: 0; left: 0; width: 100%; background: #fff; transform: rotateY(-180deg); box-shadow: 5px 7px 9px -4px rgb(158,158,158); }
.frontside, .backside { backface-visibility: hidden; -webkit-backface-visibility: hidden; transition: 1s; transform-style: preserve-3d; }
.frontside .card, .backside .card { min-height: 312px; border-radius: 0; }
.backside .card a { font-size: 18px; color: #007b5e !important; }
.frontside .card .card-title, .backside .card .card-title { color: #007b5e !important; }
.frontside .card .card-body img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; }
.frontside .card-body p { margin-bottom: 1rem; }
.frontside .card-text, .backside .card-text { font-size: 15px; font-weight: 300; }

/* ---------- Staff ---------- */
.our-team { padding: 0 0 40px; background: #f9f9f9; text-align: center; overflow: hidden; position: relative; border-bottom: 5px solid #007b5e; margin-bottom: 24px; }
.our-team:hover { border-bottom: 5px solid #2f2f2f; }
.our-team .pic { display: inline-block; width: 130px; height: 130px; margin: 30px 0; z-index: 1; position: relative; }
.our-team .pic:before { content: ""; width: 100%; height: 100%; border-radius: 50%; background: #007b5e; position: absolute; bottom: 135%; right: 0; left: 0; opacity: 1; transform: scale(3); transition: all .3s linear 0s; }
.our-team:hover .pic:before { background: #2f2f2f; }
.our-team .pic:after { content: ""; width: 100%; height: 100%; border-radius: 50%; background: #ffffff00; position: absolute; top: 0; left: 0; z-index: 1; transition: all .3s linear 0s; }
.our-team:hover .pic:after { background: #7ab92d; }
.our-team .pic img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 14px #f7f5ec; transform: scale(.7); transition: all .9s ease 0s; position: relative; z-index: 2; }
.our-team .team-content { margin-bottom: 30px; }
.our-team .title { font-size: 20px; font-weight: 600; color: #4e5052; text-transform: capitalize; margin-bottom: 5px; padding: 0 5px; }
.our-team .post { display: block; font-size: 15px; color: #4e5052; text-transform: capitalize; }
.our-team .social { width: 100%; padding-top: 10px; margin: 0; background: #2f2f2f; position: absolute; bottom: -100px; left: 0; transition: all .5s ease 0s; border: 0; color: #fff; }
.our-team:hover .social, .our-team .social:focus { bottom: 0; }
.our-team .social i { color: #fff; }
.our-team .social:hover { background: #f7f5ec; }
.our-team .social:hover i { color: #2f2f2f; }
@media (max-width: 991.98px) { .our-team { margin-bottom: 10px; } }
@media (hover: none) { .our-team .social { bottom: 0; position: relative; display: block; margin-top: -40px; } }

/* ---------- Testimonials ---------- */
.testimonial-section2 { position: relative; padding: 40px 0; background-color: #007b5e; }
.testim .wrap { position: relative; width: 100%; max-width: 1020px; padding: 0 20px; margin: auto; }
.testim .arrow { display: block; position: absolute; color: #eee; cursor: pointer; font-size: 2em; top: 50%; transform: translateY(-50%); transition: all .3s ease-in-out; padding: 5px; z-index: 22222222; }
.testim .arrow:hover { color: #fff; }
.testim .arrow.left { left: 10px; } .testim .arrow.right { right: 10px; }
.testim .dots { text-align: center; position: absolute; width: 100%; bottom: 60px; left: 0; display: block; z-index: 3333; height: 12px; }
.testim .cont { position: relative; overflow: hidden; }
.testim .cont > div { text-align: center; position: absolute; top: 0; left: 0; width: 100%; padding: 0 0 70px; opacity: 0; }
.testim .cont > div.inactive { opacity: 1; }
.testim .cont > div.active { position: relative; opacity: 1; }
.testim .cont div .img img { display: block; width: 100px; height: 100px; margin: auto; border-radius: 50%; object-fit: cover; }
.testim .cont div .h4 { color: #fff; font-size: 1.2em; margin: 15px 0; }
.testim .cont div p { font-size: 15px; color: #eee; width: 80%; margin: auto; }
.testim .cont div.active .img img { animation: testim-show .5s ease-in-out forwards; }
.testim .cont div.active .h4 { animation: testim-content-in .4s ease-in-out forwards; }
.testim .cont div.active p { animation: testim-content-in .5s ease-in-out forwards; }
.testim .cont div.inactive .img img { animation: testim-hide .5s ease-in-out forwards; }
.testim .cont div.inactive .h4 { animation: testim-content-out .4s ease-in-out forwards; }
.testim .cont div.inactive p { animation: testim-content-out .5s ease-in-out forwards; }
@keyframes testim-content-in  { from { opacity: 0; transform: translateY(100%); }  to { opacity: 1; transform: translateY(0); } }
@keyframes testim-content-out { from { opacity: 1; transform: translateY(0); }     to { opacity: 0; transform: translateY(-100%); } }
@keyframes testim-show { from { opacity: 0; transform: scale(0); } to { opacity: 1; transform: scale(1); } }
@keyframes testim-hide { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(0); } }
@media (max-width: 500px) { .testim .arrow { font-size: 1.5em; } .testim .cont div p { line-height: 25px; width: 88%; } }

/* ---------- Footer ---------- */
.footer .footer_top { padding: 70px 0; background: #1F1F1F; }
.footer .footer_widget .footer_title { font-size: 22px; font-weight: 400; color: #fff; text-transform: capitalize; margin-bottom: 40px; }
.footer .footer_widget p { color: #C7C7C7; }
.footer .footer_widget ul li a { font-size: 16px; color: #BABABA; line-height: 42px; }
.footer .footer_widget ul li a:hover { color: #5DB2FF; }
.footer .footer_widget iframe { display: block; }
.footer .footer_address { font-family: "Times New Roman", Times, serif; font-size: 13px; line-height: 1.6; } /* matches old site look */
.footer .footer_address i { color: #C7C7C7; font-size: 12px; }
.footer .socail_links { margin-top: 47px; }
.footer .socail_links ul li { display: inline-block; }
.footer .socail_links ul li a { font-size: 18px; width: 50px; height: 50px; display: inline-block; text-align: center; background: #707070; border-radius: 4px; line-height: 50px; margin-right: 7px; color: #fff; }
.footer .socail_links ul li a:hover { color: #fff; background: #007b5e; }
.footer .copy-right_text { padding-bottom: 30px; background: #000; }
.footer .copy-right_text .footer_border { padding-bottom: 30px; }
.footer .copy-right_text .copy_right { font-size: 16px; color: #919191; margin-bottom: 0; font-weight: 400; }
.footer .copy-right_text .copy_right a { color: #5DB2FF; }
@media (max-width: 767.98px) {
	.footer .copy-right_text .copy_right { font-size: 14px; }
	.footer .socail_links { margin-top: 0; }
	.footer .footer_widget { margin-bottom: 30px; }
	.footer .footer_widget .footer_title { margin-bottom: 20px; }
}

/* back to top */
.back-to-top { cursor: pointer; position: fixed; background-color: #007b5e; color: #fff; bottom: 10px; right: 10px; display: none; z-index: 111111; }
.back-to-top:hover { color: #fff; }

/* ---------- Inner pages: banner + breadcrumb ---------- */
.header_section {
	height: 109px; margin-top: 15px;
	background-image: radial-gradient(circle, #166754, #136b56, #106e58, #0c725a, #07765c, #067c60, #058265, #048869, #089271, #0c9c7a, #10a682, #14b08b);
}
.header_section.section_title { padding-bottom: 0; }
.inner_title { font-size: 30px; letter-spacing: 0; margin: 30px 0 0; padding: 0 0 11px; position: relative; text-transform: uppercase; font-weight: bold; color: #fff; text-align: center; }
.cci-breadcrumb-wrap { display: inline-block; margin-top: 3rem; }
.breadcrumb { display: flex; flex-wrap: wrap; padding: .75rem 1rem; margin-bottom: 1rem; list-style: none; background-color: #e9ecef; border-radius: .25rem; --bs-breadcrumb-divider: "/"; }
.breadcrumb a { color: #007bff; }
.breadcrumb-item + .breadcrumb-item::before { color: #6c757d; padding-right: .5rem; }
.breadcrumb-item.active { color: #6c757d; }
@media (max-width: 575.98px) { .inner_title { font-size: 22px; } }

/* ---------- Introduction ---------- */
.cci-introduction .intro-content { text-align: justify; }
.cci-introduction .intro-content p { text-align: justify; }
.cci-introduction .intro-img { float: left; width: 50%; height: auto; padding-right: 15px; margin-bottom: 10px; }
@media (max-width: 767.98px) { .cci-introduction .intro-img { float: none; width: 100%; padding-right: 0; } }

/* ---------- Our Board page ---------- */
.cci-inner.board_section .row.tb60p { padding: 40px 0 10px; }

/* ---------- Resource list ---------- */
.box { padding-top: 60px; }
.box_mb { margin-bottom: 120px; }
.box figure { position: relative; transition: 1s all; margin: 0; }
.box figure img { width: 390px; max-width: 100%; height: 223px; object-fit: cover; transition: .3s all; backface-visibility: hidden; box-shadow: 0 0 6px #0000004f, -10px -10px 1px #f97955; }
.box figure figcaption { position: absolute; bottom: -50px; left: 8%; right: 8%; background: #fff; color: #000; padding: 20px 15px; box-shadow: 0 5px 10px #00000033; transition: .5s all; }
.box figure figcaption::after { left: 50%; transform: translateX(-50%); bottom: 0; height: 2px; background: #fc5546; content: ''; width: 0; position: absolute; transition: .5s all; }
.box figure figcaption h5 { font-size: 20px; font-weight: bold; transition: .3s all; }
.box figure:hover { transform: translateY(5px); }
.box figure:hover h5 { color: #fc5546; }
.box figure:hover img { box-shadow: 0 0 6px #0000004f, 10px -10px 1px #f97955; }
.box figure:hover figcaption::after { width: 100%; }
@media (max-width: 575.98px) { .box_mb { margin-bottom: 90px; } .box figure img { width: 100%; } }

/* ---------- Resource detail ---------- */
.wrap_res { display: flex; background: #fff; padding: 1rem 1rem 2rem 1rem; border-radius: .5rem; box-shadow: 0 5px 8px 0 rgba(0,0,0,.2), 0 9px 26px 0 rgba(0,0,0,.19); margin-bottom: 2rem; border-left: 5px solid #007b5e; }
.wrap_res h3 { font-weight: 700; }
.wrap_res p { text-align: justify; }
.more_res { color: #007b5e; margin: 10px 0; font-size: 14px; font-weight: 400; }
.mbr-iconfont { font-size: 3.5rem !important; color: #007b5e; margin: 1rem; padding-right: 1rem; }
.btn_res { color: #fff !important; display: inline-block; padding: 9px 24px; font-family: "Poppins", sans-serif; font-size: 15px; font-weight: 400; border: 1px solid #007b5e; border-radius: 5px; text-align: center; background: #007b5e; text-transform: capitalize; transition: .3s; }
.btn_res:hover { background: #fff; color: #007b5e !important; border: 1px solid #007b5e; }
@media (max-width: 575.98px) { .wrap_res { flex-direction: column; } .mbr-iconfont { margin: .5rem 0; } }

/* ---------- Careers ---------- */
.career_section .table { --bs-table-hover-bg: #007b5e; --bs-table-hover-color: #212529; --bs-table-striped-bg: rgba(0,0,0,.05); }
.career_section .table > :not(caption) > * > * { padding: .75rem; }
.career_section .table thead th { background: #e9ecef; border-color: #dee2e6; }
.dwd-btn { border: solid 1px; }
.dwd-btn:hover { background-color: #dee2e6; border: solid 1px; }

/* ---------- Gallery (albums) ---------- */
.boxing { overflow: hidden; position: relative; margin-bottom: 30px; }
.boxing .box-op-gradient { position: relative; }
.boxing .box-op-gradient:before { background: linear-gradient(to bottom, rgba(4,14,39,0) 0%, rgba(4,14,39,.7) 100%); content: ''; left: 0; top: 0; width: 100%; height: 100%; z-index: 2; position: absolute; border-radius: 5px; }
.boxing:before { content: ''; background-color: rgba(255,255,255,.8); border-radius: 5px; box-shadow: 0 1px 2px #999; opacity: 0; position: absolute; left: 0; right: 0; bottom: 0; top: 0; z-index: 1; transform: rotateY(90deg) translate(50%, 0) scale(.5); transition: 1s ease; }
.boxing:hover:before { left: 15px; right: 15px; bottom: 15px; top: 15px; opacity: 1; animation: bounce-left 1s ease-in forwards; }
.boxing img { width: 100%; height: 301px; object-fit: cover; display: block; transition: all .3s ease 0s; }
.boxing:hover img { transform: scale(1.5); }
.boxing .box-content { color: #fff; width: 100%; height: 100%; transform: translateX(-50%) translateY(-50%) scale(1); position: absolute; left: 50%; top: 50%; z-index: 2; transition: all .3s ease .5s; }
.boxing .content { opacity: 0; transform: translateX(-50%) translateY(-50%); position: absolute; text-align: center; left: 50%; top: 50%; z-index: 2; transition: all .3s ease 0s; padding: 0; width: 90%; }
.p-content { position: absolute; left: 30px; bottom: 30px; z-index: 7; }
.p-content p { margin-bottom: 0; padding-right: 5px; font-size: 20px; color: #fff; font-weight: 400; line-height: 1.4; transition: .3s; }
.box-content:hover .p-content p { color: transparent; }
.gal_a { display: inline-block; margin-bottom: 0; background: #1EC6B6; font-size: 12px; border-radius: 30px; font-weight: 400; padding: 0 12px; height: 25px; line-height: 25px; color: #fff; transition: .3s; }
.box-content:hover .gal_a { background: transparent; color: transparent; }
.boxing:hover .content { opacity: 1; }
.boxing .title { color: #333; font-size: 18px; font-weight: 600; text-transform: uppercase; transform: translateY(-500px); opacity: 0; transition: all .8s ease .3s; }
.boxing .post { color: #333; font-size: 12px; font-weight: 500; letter-spacing: 1px; text-transform: capitalize; display: inline-block; margin-bottom: 10px; opacity: 0; transform: translateY(-500px); transition: all .8s ease .15s; }
.boxing:hover .title, .boxing:hover .post { opacity: 1; transform: translateY(0); }
.boxing .icon { list-style: none; text-align: center; padding: 0; margin: 0; }
.boxing .icon li { margin: 0 4px; opacity: 0; display: inline-block; transform: translateY(-200px); transition: all .8s ease 0s; }
.boxing .icon li:nth-child(2) { transition-delay: .1s; }
.boxing:hover .icon li { opacity: 1; transform: translateY(0); }
.boxing .icon li a { color: #000; background-color: #ddd; font-size: 18px; line-height: 33px; height: 35px; width: 35px; border: 2px solid #fff; border-radius: 50%; display: block; text-align: center; transition: all .3s ease 0s; }
.boxing .icon li a:hover { color: #fff; background-color: #F29417; }
@keyframes bounce-left { 25%,50%,75%,100% { transform: translateX(0); } 40% { transform: translateX(30px); } 70% { transform: translateX(15px); } 90% { transform: translateX(5px); } }
@media (max-width: 575.98px) { .boxing img { height: 240px; } }

/* ---------- Gallery (album images + lightbox) ---------- */
.gallery-img { position: relative; }
.gallery-img a { display: block; position: relative; }
.img_res { width: 100%; height: 200px; object-fit: cover; display: block; }
.img__description_layer { position: absolute; color: #fff; inset: 0; background: rgba(17,29,27,.6); visibility: hidden; opacity: 0; display: flex; align-items: center; justify-content: center; transition: opacity .2s, visibility .2s; }
.gallery-img:hover .img__description_layer { visibility: visible; opacity: 1; }

.cci-lb { position: fixed; inset: 0; z-index: 999999; background: rgba(0,0,0,.8); display: none; align-items: center; justify-content: center; }
.cci-lb.open { display: flex; }
.cci-lb img { max-width: 90vw; max-height: 85vh; border: 4px solid #fff; border-radius: 3px; background: #fff; }
.cci-lb button { position: absolute; background: none; border: 0; color: #fff; font-size: 34px; line-height: 1; cursor: pointer; opacity: .8; padding: 10px 16px; }
.cci-lb button:hover { opacity: 1; }
.cci-lb .lb-close { top: 10px; right: 14px; } .cci-lb .lb-prev { left: 8px; top: 50%; transform: translateY(-50%); } .cci-lb .lb-next { right: 8px; top: 50%; transform: translateY(-50%); }
.cci-lb .lb-count { position: absolute; bottom: 12px; left: 0; right: 0; text-align: center; color: #ddd; font-size: 13px; }

/* ---------- Events ---------- */
.mb-65 { margin-bottom: 67px; }
.padding-event { padding: 80px 10px 40px 10px; }
.event-wrap { padding: 0 15px; }
.date-day { font-size: 24pt; text-transform: uppercase; }
.date-date { font-size: 48pt; }
.date-month { font-size: 18pt; text-transform: uppercase; }
.date-year { font-size: 18pt; }
.event-md3 { margin: 0; padding: 0 !important; position: relative; }
.event-md3 > i { color: #007B5E; position: absolute; top: -15%; left: 39%; font-size: 60px; }
.event-md3 .calendar-block { text-align: center; color: #F4F4F4; font-size: 18pt; padding: 18px; background: #007b5e; position: relative; border-top-left-radius: 10px; border-bottom-left-radius: 10px; height: 100%; }
.event-md9 { border-right: 5px solid #007B5E; box-shadow: 0 5px 8px 0 rgba(0,0,0,.2), 0 9px 26px 0 rgba(0,0,0,.19); }
.event-body { padding: 1.25rem 0; }
.event-md12 { border-left: 5px solid #000; margin-bottom: 15px; box-shadow: 0 5px 8px 0 rgba(0,0,0,.2), 0 9px 26px 0 rgba(0,0,0,.19); background: #007B5E; padding: 0 15px; }
.event-md12 h5 { color: #fff; padding: 7px; font-size: 1.2rem; word-spacing: 3px; margin: 0; }
.event-body p i { color: #007B5E; }
.venue, .venue:hover { text-decoration: none; color: #007b5e; }
.fc { font-weight: 600; color: #666; }
@media (max-width: 767.98px) {
	.event-md3 .calendar-block { border-radius: 10px 10px 0 0; margin-top: 30px; }
	.event-md3 > i { top: -20px; left: 50%; transform: translateX(-50%); font-size: 50px; }
	.event-md9 { border-right: 0; border-bottom: 5px solid #007B5E; }
}

/* ---------- Contact ---------- */
.contactform p { font-size: 16px; font-weight: 300; color: #818181; }
.contactform .form-control { width: 100% !important; margin-bottom: 15px; font-size: 16px; }
.contactform { padding-top: 20px; }
.contactform .error-display { display: block; margin-top: -10px; margin-bottom: 10px; font-size: 13px; }
.btn-send { border: 1px solid #999; color: #555; background-color: #fff; margin-top: 8px; transition: all .5s ease-in-out; padding: 7px 20px; font-size: 16px; white-space: nowrap; }
.btn-send:hover { background-color: #007b5e; color: #fff; border-color: #007b5e; transition: all .6s ease; }
.contact_section .card { background: transparent; }
.contact_section .card i, .contact_section .card h4 { transition: color .3s; }
.contact_section .card:hover i, .contact_section .card:hover h4 { color: #007B5E; }
.contact_section hr { margin: 1rem 0; opacity: .25; }
.contact_section .alert { margin-top: 1rem; }
