@charset "utf-8";
/* =========================
   MAIN THEME STYLES (fixed)
   ========================= */

/* 1) Fonts */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800|Roboto:400,500,700');

/* 2) Base */
*{ margin:0; padding:0; -webkit-font-smoothing:antialiased; -webkit-text-shadow:rgba(0,0,0,.01) 0 0 1px; text-shadow:rgba(0,0,0,.01) 0 0 1px; }
body{ font-family:'Roboto',sans-serif; font-size:14px; font-weight:400; background:#fff; color:#a5a5a5; }
div{ display:block; position:relative; box-sizing:border-box; }
ul{ list-style:none; margin-bottom:0; }
p{ font-family:'Roboto',sans-serif; font-size:14px; line-height:2.29; font-weight:400; color:#a5a5a5; -webkit-font-smoothing:antialiased; -webkit-text-shadow:rgba(0,0,0,.01) 0 0 1px; text-shadow:rgba(0,0,0,.01) 0 0 1px; }
a,a:hover,a:visited,a:active,a:link{ text-decoration:none; -webkit-font-smoothing:antialiased; -webkit-text-shadow:rgba(0,0,0,.01) 0 0 1px; text-shadow:rgba(0,0,0,.01) 0 0 1px; }
p a{ display:inline; position:relative; color:inherit; border-bottom:1px solid #ffa07f; transition:all 200ms ease; }
p a:hover{ color:#fff; background:#ffa07f; }
::selection, p::selection{ background:#FFD266; color:#C88E00; }
h1{font-size:36px;} h2{font-size:22px;} h3{font-size:18px;} h4{font-size:14px;} h5{font-size:11px;}
h1,h2,h3,h4,h5,h6{ font-family:'Roboto',sans-serif; -webkit-font-smoothing:antialiased; -webkit-text-shadow:rgba(0,0,0,.01) 0 0 1px; text-shadow:rgba(0,0,0,.01) 0 0 1px; }
::-webkit-input-placeholder, :-moz-placeholder, ::-moz-placeholder, :-ms-input-placeholder, ::input-placeholder{ font-size:14px!important; font-weight:500!important; color:#a5a5a5!important; }
.form-control{ color:#db5246; }
section{ display:block; position:relative; box-sizing:border-box; }
.clear{ clear:both; }
.clearfix::before,.clearfix::after{ content:""; display:table; }
.clearfix::after{ clear:both; }
.float_left{ float:left; } .float_right{ float:right; }
.trans_200{ transition:all 200ms ease; } .trans_300{ transition:all 300ms ease; } .trans_400{ transition:all 400ms ease; } .trans_500{ transition:all 500ms ease; }
.fill_height{ height:100%; }
.super_container{ width:100%; overflow:visible; }
.prlx_parent{ overflow:hidden; }
.prlx{ height:130%!important; }
.nopadding{ padding:0!important; }

/* 3) Header (nav hover open for desktop) */
@media (min-width:992px){
  .header .dropdown:hover>.dropdown-menu{ display:block; }
  .header .dropdown:focus-within>.dropdown-menu{ display:block; }
}

/* 4) Off-canvas Menu (mobile) */
.menu_container{ position:fixed; top:0; right:-100%; width:100%; height:100vh; background:#fff; z-index:1500; transition:right .25s ease; overflow-y:auto; visibility:hidden; opacity:0; }
.menu_container.active{ right:0; visibility:visible; opacity:1; }
.menu_inner{ padding:80px 24px 24px; }
.menu_close_container{ position:absolute; top:16px; right:16px; width:36px; height:36px; cursor:pointer; display:flex; align-items:center; justify-content:center; border-radius:6px; background:#f5f5f5; z-index:1600; }
.menu_close{ font-size:24px; line-height:1; }
.menu_list{ margin:0; padding:0; }
.menu_item{ margin-bottom:9px; }
.menu_item a{ display:block; font-family:'Open Sans',sans-serif; font-size:20px; font-weight:700; color:#3a3a3a; padding:.5rem 0; transition:color 200ms ease; }
.menu_item a:hover{ color:#ffb606; }
.menu_mm .nav-link.dropdown-toggle{ display:block; font-weight:800; padding:.6rem 0; }
.menu_mm .nav-link.dropdown-toggle::after{ display:none!important; }
.menu_mm .dropdown-menu{ position:static!important; display:none!important; background:transparent!important; border:0!important; box-shadow:none!important; margin:0!important; padding:.25rem 0 .5rem 1rem!important; width:100%!important; }
.menu_mm .dropdown-menu.show{ display:block!important; }
.menu_mm .dropdown-item, .menu_mm .dropdown-item a{ display:block; padding:.4rem 0; color:#3a3a3a; font-size:18px; text-decoration:none; }

@media (min-width:992px){
  .main_nav_container{ position:relative; z-index:3000; }
  .header .dropdown-menu{ display:none; position:absolute; top:100%; left:0; z-index:4000; }
}

/* 5) Home / Hero */
.home{ height:auto!important; }

/* Hero container + slides */
.hero_slider_container,
.hero_slide{ height:auto!important; }

/* Background image layer */


/* Slide content area */
.hero_slide_container{
  min-height:70vh;                      /* nice big hero */
  height:auto!important;
  display:flex; align-items:center; justify-content:center;
  padding:4rem 1rem;
}

.hero_slide_content{ max-width:80%; transform:translateY(30px); }
.hero_slide_content h1{ font-size:clamp(28px,6vw,56px); line-height:1.15; font-weight:400; color:#fff; }
.hero_slide_content h1 span{ padding:0 13px; margin:0 -12px; }

/* Slider nav buttons */
.hero_slider_nav{ position:absolute; top:50%; transform:translateY(-50%)!important; width:52px; height:52px; background:#fff; z-index:9; cursor:pointer; display:flex; align-items:center; justify-content:center; flex-direction:column; }
.hero_slider_nav:hover{ background:#081a42; }
.hero_slider_nav:hover span{ color:#fff; }
.hero_slider_nav span{ text-transform:uppercase; font-size:12px; font-weight:700; color:#081a42; line-height:1; }
.hero_slider_left{ left:16px!important; }
.hero_slider_right{ right:16px!important; }

/* Mobile: show whole image (no cropping) */


@media (min-width:576px){
  .hero_slide_container{ min-height:70vh; }
}

/* 6) Hero Boxes */
.hero_boxes{ width:100%; height:0; z-index:9; padding-top:0; }
.hero_boxes_inner{ position:absolute; top:-212px; left:0; width:100%; }
.hero_box{ width:100%; height:200px; background:#1a1a1a; padding-left:50px; cursor:pointer; }
.hero_box:hover{ background:#ffb606; }
.hero_box img{ width:62px; height:auto; margin-top:-6px; }
.svg path{ fill:#ffb606; }
.hero_box svg{ width:62px; height:auto; }
.hero_box:hover svg path{ fill:#fff; }
.hero_box_title{ font-size:24px; font-weight:500; color:#fff; margin-bottom:7px; }
.hero_box_link{ font-size:12px; font-weight:500; text-transform:uppercase; color:#fff; padding-left:3px; }
.hero_box_link:hover{ color:#1a1a1a; }

/* 7) Sections */
.page_section{ padding-top:10px; padding-bottom:6px; }
/* page_section { padding-bottom: 6px !important; margin-bottom: 0 !important; } */
.section_title h1{ display:block; color:#1a1a1a; font-weight:500; padding-top:24px; }
.bg-soft{ background:#081a42; }
.section-title{ font-weight:800; font-size:2rem; }
.section_title h1::before{ content:""; position:absolute; top:0; left:50%; transform:translateX(-50%); width:55px; height:4px; background:#ffb606; }
.section-title::after{ content:""; display:block; width:80px; height:4px; background:#081a42; margin-top:.5rem; border-radius:2px; }

/* 8) Buttons */
.button{ cursor:pointer; }
.button:hover{ box-shadow:0 10px 20px rgba(0,0,0,.2); }
.button a{ font-size:14px; line-height:48px; font-weight:700; text-transform:uppercase; }
.button_1{ width:202px; height:48px; }

/* 9) Cards */
.course_boxes{ margin-top:68px; }
.card{ display:block; background:#f8f9fb; border:none; }
.card-img-top{ border-top-left-radius:0; border-top-right-radius:0; }
.card-body{ padding:0 15px; }
.card-title{ margin-top:55px; }
.card-title a{ font-size:22px; font-weight:500; color:#1a1a1a; line-height:1.2; }
.card-title a:hover{ color:#a5a5a5; }
.card-text{ font-size:14px; font-weight:500; color:#a5a5a5; margin-top:-12px; }
.price_box{ width:100%; height:67px; background:#eaebec; margin-top:41px; padding-left:35px; }
.course_author_image{ width:46px; height:46px; border-radius:50%; overflow:hidden; }
.course_author_name{ font-size:14px; font-weight:500; color:#1a1a1a; padding-left:20px; margin-top:7px; }
.course_author_name span{ color:#a5a5a5; }
.course_price{ width:67px; height:67px; background:#ffb606; margin-left:auto; }
.course_price span{ color:#fff; font-size:18px; font-weight:500; margin-top:7px; }

/* 10) Register */
.register{ width:100%; }
.register_section{ width:100%; background:#ffb606; padding-top:156px; padding-bottom:161px; }
.register_content{ width:522px; }
.register_title{ color:#fff; margin-bottom:16px; line-height:1.63; }
.register_title span{ color:#1a1a1a; }
.register_text{ color:#fff; font-weight:500; margin-top:32px; padding:0 25px; margin-bottom:0; }
.register_button{ background:#1a1a1a; margin-top:65px; }
.register_button a{ color:#fff; }

/* 11) Search (right column) */
.search_section{ width:100%; height:100%; background:#ececec; }
.search_content{ width:522px; }
.search_background{ position:absolute; top:0; left:0; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; opacity:.23; }
.search_title{ color:#1a1a1a; }
.search_form{ margin-top:57px; }
.input_field{ width:100%; height:42px; background:#fff; border:2px solid #fff; padding-left:25px; margin-bottom:24px; }
.input_field:focus{ outline:none!important; border:2px solid #ffb606; }
.search_submit_button{ width:100%; height:48px; background:#ffb606; color:#fff; font-size:14px; text-transform:uppercase; font-weight:700; margin-top:28px; border:none; cursor:pointer; }
.search_submit_button:hover{ box-shadow:0 10px 20px rgba(0,0,0,.2); }
.search_submit_button:focus{ outline:2px solid #fff; }

/* 12) Services */
.services{ padding-bottom:76px; }
.services_row{ margin-top:65px; }
.service_item{ margin-bottom:41px; }
.service_item h3{ font-family:'Roboto',sans-serif; font-size:22px; font-weight:500; color:#1a1a1a; margin-bottom:13px; }
.service_item p{ font-size:14px; font-weight:500; color:#a5a5a5; max-width:100%; margin-bottom:0; }
.icon_container{ height:41px; width:auto; margin-bottom:30px; }
.icon_container img{ height:100%; }

/* 13) Testimonials */
.testimonials{ width:100%; background:#1a1a1a; }
.testimonials_background_container{ position:absolute; top:0; left:0; width:100%; height:100%; }
.testimonials_background{ width:100%; height:100%; background-repeat:no-repeat; background-size:cover; background-position:center center; opacity:.27; }
.testimonials .section_title h1{ color:#fff; }
.testimonials_slider_container{ padding:0 30px; margin-top:56px; }
.testimonials_item{ width:100%; padding-bottom:75px; }
.quote{ font-size:36px; color:#ffb606; }
.testimonials_text{ color:#fff; margin-bottom:0; }
.testimonial_user{ margin-top:43px; }
.testimonial_image{ width:98px; height:98px; border-radius:50%; overflow:hidden; }
.testimonial_image img{ width:100%; height:auto; }
.testimonial_name{ font-size:16px; font-weight:700; text-transform:uppercase; color:#f6af03; margin-top:21px; }
.testimonial_title{ font-size:14px; font-weight:500; color:#fff; margin-top:6px; }
.testimonials_slider .owl-dots{ display:flex!important; justify-content:center; align-items:center; }
.testimonials_slider .owl-dot span{ width:8px!important; height:8px!important; border:2px solid #fff; background:transparent!important; }
.testimonials_slider .owl-dot.active span{ width:16px!important; height:16px!important; border:none; background:#ffb606!important; }

/* 14) Events */
.event_items{ margin-top:68px; }
.event_item{ margin-bottom:56px; }
.event_item:last-child{ margin-bottom:0; }
.event_date{ width:131px; height:131px; border:2px solid #ffb606; margin-bottom:18px; }
.event_day{ font-size:48px; font-weight:700; color:#ffb606; margin-bottom:1px; line-height:1; }
.event_month{ font-size:16px; font-weight:700; color:#ffb606; }
.event_name a{ font-size:22px; font-weight:500; color:#1a1a1a; }
.event_name a:hover{ color:#ffb606; }
.event_location{ font-size:14px; font-weight:500; color:#1a1a1a; margin-top:2px; }
.event_content p{ font-weight:500; color:#a5a5a5; margin-top:21px; margin-bottom:13px; }
.event_image img{ width:100%; }

/* 15) Footer */
.footer{ width:100%; padding-top:86px; background:#1a1a1a; }
.footer .section_title h1{ color:#fff; }
.footer_list_item a:hover{ color:#4e75ca; }
.footer_social .menu_social_item a i:hover{ color:#4e75ca; }
svg path{ fill:#4e75ca!important; }
.section_title h1::before{ background:#081a42; }
.newsletter_email:focus{ outline:2px solid #081a42; }
.newsletter_submit_btn{ background:#081a42; }
.input_field:focus{ outline:none!important; border-color:#081a42; }
.text_field{ width:100%; height:189px; background:#f8f4f4; border:2px solid transparent; padding-left:33px; margin-bottom:24px; }
.text_field:focus{ outline:none!important; border-color:#081a42; }
.contact_send_btn{ width:100%; height:48px; background:#081a42; font-size:14px; font-weight:700; text-transform:uppercase; color:#fff; cursor:pointer; border:none; }
.contact_send_btn:focus{ outline:1px solid #081a42; }

main{ margin-top:0; }

.newsletter{ padding-bottom:85px; border-bottom:2px solid #4d4e4e; }
.newsletter_form_container{ width:60%; margin-top:48px; }
.newsletter_email{ width:calc(100% - 164px); height:42px; border:none; padding-left:27px; font-weight:500; color:#1a1a1a; }
.newsletter_email:focus{ outline:2px solid #ffb606; }
.newsletter_submit_btn{ width:164px; height:42px; border:none; background:#ffb606; color:#fff; font-size:14px; font-weight:500; cursor:pointer; }
.newsletter_submit_btn:focus{ border:2px solid #fff; }

.footer_content{ padding-top:80px; padding-bottom:83px; border-bottom:2px solid #4d4e4e; }
.footer_content .logo_container{ padding-left:0; }
.footer_content .logo span{ color:#fff; }
.footer_about_text{ margin-top:24px; margin-bottom:0; padding-right:20px; }
.footer_column_title{ font-size:18px; font-weight:500; color:#fff; padding-top:15px; }
.footer_column_content{ margin-top:32px; }
.footer_list_item{ margin-bottom:11px; }
.footer_list_item a{ font-size:14px; color:#a5a5a5; transition:all 200ms ease; }
.footer_contact_item{ font-size:14px; font-weight:400; color:#a5a5a5; margin-bottom:22px; }
.footer_contact_item:last-child{ margin-bottom:0; }
.footer_contact_icon{ display:inline-block; width:24px; height:24px; vertical-align:middle; margin-right:10px; }
.footer_contact_icon img{ width:100%; }

.about-hero{ background:#e9e6d6; border-radius:12px; }
.about-hero .lead{ color:#1a1a1a; }
.about-row .about-card{ background:#f8f9fb; border-radius:12px; padding:2rem; height:100%; color:#1a1a1a; }
.about-row .about-card h3{ font-weight:800; margin-bottom:.5rem; }
.about-row .underline{ width:72px; height:4px; border-radius:2px; background:#081a42; margin-bottom:1rem; }
.about-card.mission{ background:#ffd082; }
.about-card.vision{ background:#aee8e8; }
.mission p,.values p,.vision p{ font-size:18px; line-height:1.8; color:#5b6570; }
.mission h3,.values h3,.vision h3{ font-weight:700; color:#081a42; }

.values-card h5{ font-size:18px; font-weight:700; color:#081a42; margin-bottom:.5rem; }
.values-card p{ font-size:18px; line-height:1.8; color:#5b6570; }
.values-card:hover{ background:#f9fafc; color:#1a1a1a; box-shadow:0 6px 18px rgba(0,0,0,.08); transform:translateY(-4px); transition:all .3s ease; }

/* Who We Are */
:root{ --accent:#081a42; }
.who-we-are{ padding:56px 0 24px; }
.who-we-are .container{ max-width:980px; }
.who-title{ margin:0 0 10px; font-weight:800; font-size:clamp(28px,4vw,44px); line-height:1.15; color:#1a1a1a; text-align:left; }
.who-underline{ display:inline-block; width:120px; height:6px; border-radius:3px; background:var(--accent); margin:6px 0 22px; }
.who-copy p{ margin:0 0 18px; font-size:18px; line-height:1.9; color:#5b6570; max-width:900px; }

/* Footer bar */
.footer_bar{ padding-top:19px; padding-bottom:19px; }
.footer_social .menu_social_item a i{ color:#fff; }
.footer_social .menu_social_item a i:hover{ color:#ffb606; }
.footer_social .menu_social_item:last-child{ margin-right:0; }

/* Prevent any old push-down on hero */
.hero_slider_container{ margin-top:0!important; }

/* ===== HERO CROPPING FIX: favor the TOP of the image on desktop ===== */


/* Owl height safeties (in case not already present) */
.hero_slider.owl-carousel,
.hero_slider.owl-carousel .owl-stage-outer,
.hero_slider.owl-carousel .owl-stage,
.hero_slider.owl-carousel .owl-item,
.hero_slider.owl-carousel .owl-height { height:auto !important; }

.hero_slide_container{ min-height:70vh; height:auto !important; }







