/* =========================================================
   AKAHI ALLIANCE – CONSOLIDATED VISUAL THEME
   Uses brand colors:
   --akahi-dark:  #020035
   --akahi-mid:   #878A99
   --akahi-light: #DCDFEE
   ====================================================== */

/* ---------------------------
   1. Brand tokens
   ------------------------ */
:root {
    --akahi-dark:  #020035;
    --akahi-mid:   #878A99;
    --akahi-light: #DCDFEE;

    --akahi-text-main:   #202020;
    --akahi-text-muted:  #585f63;
    --akahi-border-soft: #dbe1e6;

    --akahi-radius-lg:   16px;
    --akahi-radius-md:   10px;

    --akahi-shadow-soft: 0 10px 30px rgba(0,0,0,0.08);
    --akahi-shadow-card: 0 4px 16px rgba(0,0,0,0.10);
}

/* Base background and text */
body.scheme_default {
    background-color: var(--akahi-light);
    color: var(--akahi-text-main);
}

/* Links */
.scheme_default a {
    color: var(--akahi-dark);
}
.scheme_default a:hover {
    color: var(--akahi-light);
}

/* Headings */
.scheme_default h1,
.scheme_default h2,
.scheme_default h3,
.scheme_default h4,
.scheme_default h5,
.scheme_default h6 {
    color: var(--akahi-text-main);
}

/* Utility text/background helpers */
.akahi-bg-dark {
    background-color: var(--akahi-dark) !important;
    color: #ffffff !important;
}
.akahi-bg-light {
    background-color: var(--akahi-light) !important;
}
.akahi-bg-mid {
    background-color: var(--akahi-mid) !important;
    color: #ffffff !important;
}
.akahi-text-dark {
    color: var(--akahi-dark) !important;
}
.akahi-text-mid {
    color: var(--akahi-mid) !important;
}
.akahi-text-muted {
    color: var(--akahi-text-muted) !important;
}

#slide-1-layer-4 {
    display: none !important;
}
h1, h2, h3, h4, h5.cblue {
    color: #020035 !important;
}
.sc_content h3 {
    color: #020035 !important;
    font-weight: 700 !important;
}

/* ---------------------------
   2. Navigation & Header
   ------------------------ */

/* Use Akahi dark on the main nav bar */
.top_panel_navi.scheme_dark,
.scheme_default .top_panel .top_panel_navi {
    background: var(--akahi-dark) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

/* Remove the theme’s extra colored block on the right */
.top_panel .top_panel_navi:before {
    content: none !important;
}

/* Main menu items – keep layout from theme, just recolor */
.menu_main_nav > li > a span,
.menu_header_nav > li > a span,
.menu_mobile .menu_mobile_nav_area > ul > li > a span {
    color: var(--akahi-light);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 600;
}

/* Active / hover states (desktop) */
.scheme_default .menu_main_nav > li > a:hover,
.scheme_default .menu_main_nav > li.sfHover > a,
.scheme_default .menu_main_nav > li.current-menu-item > a,
.scheme_default .menu_main_nav > li.current-menu-parent > a,
.scheme_default .menu_main_nav > li.current-menu-ancestor > a {
    color: var(--akahi-light) !important;
}

/* Hover underline / path line color */
.menu_hover_zoom_line .menu_main_nav > li > a:before,
.menu_hover_path_line .menu_main_nav > li:before,
.menu_hover_path_line .menu_main_nav > li:after,
.menu_hover_path_line .menu_main_nav > li > a:before,
.menu_hover_path_line .menu_main_nav > li > a:after {
    background-color: var(--akahi-light) !important;
}

/* Desktop dropdown menus */
.scheme_default .menu_main_nav > li ul {
    background-color: #ffffff;
    border-color: var(--akahi-dark);
}
.scheme_default .menu_main_nav > li > ul:before {
    border-bottom-color: var(--akahi-dark);
}
.scheme_default .menu_main_nav > li li > a {
    color: var(--akahi-text-main);
}
.scheme_default .menu_main_nav > li li > a:hover,
.scheme_default .menu_main_nav > li li.sfHover > a {
    color: var(--akahi-mid);
}

/* ---------------------------
   2a. MOBILE NAV COLORS ONLY
   (does not touch layout or logo)
   ------------------------ */

.menu_mobile_inner {
    background: var(--akahi-dark) !important;
    color: #ffffff !important;
}

.menu_mobile_inner a {
    color: var(--akahi-light) !important;
}

.menu_mobile_inner a:hover,
.menu_mobile_inner .current-menu-item > a,
.menu_mobile_inner .current-menu-ancestor > a {
    background: rgba(255,255,255,0.10);
    color: #ffffff !important;
}

.menu_mobile_close {
    color: #ffffff !important;
}

/* (We intentionally do NOT change .top_panel .content_wrap,
   .logo, .logo img, or use flexbox here to avoid shrinking
   or misaligning your logo.) */


/* ---------------------------
   3. Buttons & CTAs
   ------------------------ */

/* Primary buttons (theme + shortcodes) */
.sc_button.sc_button_default,
.sc_button.sc_button_default.sc_button_size_large,
.scheme_default input[type="submit"],
.scheme_default input[type="button"],
.scheme_default button {
    background: var(--akahi-dark);
    border-color: var(--akahi-dark);
    color: #ffffff;
    border-radius: 999px;
    padding: 0.75em 2.5em;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: all 0.25s ease;
}

/* Hover states */
.sc_button.sc_button_default:hover,
.sc_button.sc_button_default.sc_button_size_large:hover,
.scheme_default input[type="submit"]:hover,
.scheme_default input[type="button"]:hover,
.scheme_default button:hover,
.scheme_default input[type="submit"]:focus,
.scheme_default input[type="button"]:focus,
.scheme_default button:focus {
    background: var(--akahi-mid);
    border-color: var(--akahi-mid);
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.18);
}

/* Secondary / outline buttons */
.akahi-btn-outline {
    background: transparent;
    color: var(--akahi-light);
    border: 2px solid var(--akahi-light);
}
.akahi-btn-outline:hover {
    background: var(--akahi-light);
    color: var(--akahi-dark);
}


/* ---------------------------
   4. Forms (site-wide + contact page)
   ------------------------ */

.scheme_default input[type="text"],
.scheme_default input[type="number"],
.scheme_default input[type="email"],
.scheme_default input[type="tel"],
.scheme_default input[type="search"],
.scheme_default input[type="password"],
.scheme_default textarea,
.scheme_default .select_container {
    color: var(--akahi-text-muted);
    border-color: var(--akahi-light);
    background-color: var(--akahi-light);
    border-radius: var(--akahi-radius-md);
    transition: all 0.2s ease;
}

.scheme_default input[type="text"]:focus,
.scheme_default input[type="number"]:focus,
.scheme_default input[type="email"]:focus,
.scheme_default input[type="tel"]:focus,
.scheme_default input[type="search"]:focus,
.scheme_default input[type="password"]:focus,
.scheme_default textarea:focus,
.scheme_default .select_container:hover {
    border-color: var(--akahi-mid);
    background-color: #ffffff;
    box-shadow: 0 0 0 2px rgba(2,0,53,0.08);
}

/* Contact-page specific form wrapper / cards */
.contact-cards .contact-card,
.contact-form-wrapper {
    border-radius: var(--akahi-radius-lg);
    box-shadow: var(--akahi-shadow-soft);
}


/* ---------------------------
   5. Sections / Backgrounds
   ------------------------ */

/* Shared gradient utility */
.bg_gradient,
.scheme_default .vc_row.vc_row-has-fill.bg_gradient:not(.fullwidth_1),
.scheme_dark .vc_row.vc_row-has-fill.bg_gradient:not(.fullwidth_1) {
    background: linear-gradient(
        135deg,
        var(--akahi-dark) 0%,
        var(--akahi-mid) 50%,
        var(--akahi-light) 100%
    ) !important;
}

/* Cards (services, features, etc.) */
.service-card,
.contact-card,
.akahi-card {
    background: #ffffff;
    border-radius: var(--akahi-radius-lg);
    box-shadow: var(--akahi-shadow-card);
    transition: transform .3s ease, box-shadow .3s ease;
}
.service-card:hover,
.contact-card:hover,
.akahi-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 28px rgba(0,0,0,0.15);
}

/* Home / hero section helper */
.akahi-hero-overlay {
    position: relative;
    color: #ffffff;
}
.akahi-hero-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(2,0,53,0.88),
        rgba(135,138,153,0.85)
    );
    z-index: 1;
}
.akahi-hero-overlay > * {
    position: relative;
    z-index: 2;
}

/* Generic section padding helpers */
.akahi-section {
    padding: 80px 0;
}
.akahi-section-light {
    background: var(--akahi-light);
}
.akahi-section-dark {
    background: var(--akahi-dark);
    color: #ffffff;
}


/* ---------------------------
   6. Typography accents & “cblue” fix
   ------------------------ */

/* Many blocks use .cblue and .uniq from the original theme.
   Retarget them to Akahi colors instead of generic blues. */
.cblue {
    color: var(--akahi-dark) !important;
}

/* Headlines in “unique” sections */
.uniq h2,
.uniq h4,
.uniq h5 {
    color: var(--akahi-dark);
}
.uni1 h5 {
    color: var(--akahi-mid);
}

/* Small badge / accent elements using theme accent */
.scheme_default .trx_addons_accent,
.scheme_default .trx_addons_accent > * {
    color: var(--akahi-dark);
}
.scheme_default .trx_addons_accent_bg {
    background-color: var(--akahi-dark);
    color: #ffffff;
}


/* ---------------------------
   7. Footer
   ------------------------ */

/* ============================================================
   FINAL AKAHI FOOTER COLOR FIX (100% OVERRIDE)
   ============================================================ */

/* Force all footer wrappers to match header color */
.footer_wrap,
.footer_wrap *,
.footer_wrap .widget_area,
.footer_wrap .widget_area_inner,
.footer_wrap .content_wrap,
.footer_wrap .footer_copyright_wrap {
    background-color: #020035 !important;  /* Exact header color */
    color: #DCDFEE !important;
    border-color: #020035 !important;
}

/* Remove all theme gradients, overlays, images */
.footer_wrap::before,
.footer_wrap::after,
.footer_wrap .widget_area_inner::before,
.footer_wrap .widget_area_inner::after,
.footer_wrap .content_wrap::before,
.footer_wrap .content_wrap::after {
    content: none !important;
    background: none !important;
    box-shadow: none !important;
    display: none !important;
    opacity: 1 !important;
}

/* Remove any background images forced by theme */
.footer_wrap,
.footer_wrap .widget_area_inner,
.footer_wrap .content_wrap {
    background-image: none !important;
}

/* Force footer links */
.footer_wrap a {
    color: #DCDFEE !important;
}
.footer_wrap a:hover {
    color: #878A99 !important;
}

/* Force footer social icons */
.footer_wrap i,
.footer_wrap .social_item a,
.footer_wrap .social_item a span,
.footer_wrap .sc_icon {
    color: #DCDFEE !important;
    fill: #DCDFEE !important;
    opacity: 1 !important;
}
.footer_wrap .social_item a:hover span,
.footer_wrap .sc_icon:hover {
    color: #878A99 !important;
    fill: #878A99 !important;
}

/* Remove transparency or blending from theme */
.footer_wrap,
.footer_wrap .widget_area_inner,
.footer_wrap * {
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}


/* ---------------------------
   8. Micro-interactions
   ------------------------ */

/* Simple fade-in utility for text / blocks */
.akahi-fade-in {
    opacity: 0;
    transform: translateY(20px);
    animation: akahiFadeInUp .9s ease forwards;
}
@keyframes akahiFadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ---------------------------
   9. (Optional) Logo sizing helper
   ------------------------ */
/* Uncomment and adjust max-height if you still want to
   manually control the logo size after this reset. */
/*
.top_panel .logo img.logo_main {
    max-height: 110px;
    height: auto;
    width: auto;
}
*/
/* ============================================
   HEADER FONT VISIBILITY FIX
   Forces menu text to display in Akahi light color
   ============================================ */

/* Top-level menu links */
.top_panel_navi .menu_main_nav > li > a,
.top_panel_navi .menu_main_nav > li > a span {
    color: var(--akahi-light) !important;
}

/* Hover state */
.top_panel_navi .menu_main_nav > li > a:hover,
.top_panel_navi .menu_main_nav > li > a:hover span {
    color: var(--akahi-mid) !important;
}

/* Active menu item */
.top_panel_navi .menu_main_nav > li.current-menu-item > a,
.top_panel_navi .menu_main_nav > li.current-menu-item > a span,
.top_panel_navi .menu_main_nav > li.current-menu-ancestor > a,
.top_panel_navi .menu_main_nav > li.current-menu-ancestor > a span {
    color: var(--akahi-light) !important;
}

/* Dropdown items (desktop) */
.top_panel_navi .menu_main_nav li ul li a {
    color: var(--akahi-dark) !important;
}

.top_panel_navi .menu_main_nav li ul li a:hover {
    color: var(--akahi-mid) !important;
}

/* Mobile menu font override */
.menu_mobile_inner a {
    color: var(--akahi-light) !important;
}
/* ============================================
   FIX TOP HEADER ROW (phone, email, social icons)
   ============================================ */

/* Text in the top header strip */
.top_panel_top,
.top_panel_top .contact_field,
.top_panel_top .contact_field a {
    color: var(--akahi-light) !important;
}

/* Social icons inside header */
.top_panel_top .social_item a,
.top_panel_top .social_item a span {
    color: var(--akahi-light) !important;
    fill: var(--akahi-light) !important;
}

/* Hover states */
.top_panel_top .contact_field a:hover,
.top_panel_top .social_item a:hover {
    color: var(--akahi-mid) !important;
    fill: var(--akahi-mid) !important;
}

/* Fix thin icon fonts that may inherit opacity */
.top_panel_top i,
.top_panel_top .icon-phone,
.top_panel_top .icon-mail,
.top_panel_top .social_item .icon-facebook,
.top_panel_top .social_item .icon-linkedin,
.top_panel_top .social_item .icon-gplus,
.top_panel_top .social_item .icon-search {
    color: var(--akahi-light) !important;
    opacity: 1 !important;
}
/* ============================================
   REMOVE DARK OVERLAYS FROM HEADER COMPLETELY
   ============================================ */

.top_panel::before,
.top_panel_navi::before,
.top_panel_top::before {
    content: none !important;
    background: none !important;
    display: none !important;
}
/* ============================================
   MAKE ALL HEADER TEXT FULLY VISIBLE
   ============================================ */

.top_panel,
.top_panel * {
    color: var(--akahi-light) !important;
    opacity: 1 !important;
}

.top_panel a:hover {
    color: var(--akahi-mid) !important;
}
/* ============================================
   FIX LOGO DARKENING
   ============================================ */

.top_panel .logo img,
.top_panel_navi .logo img {
    opacity: 1 !important;
    filter: none !important;
}
/* ============================================================
   AKAHI FOOTER – CLEAN, MODERN, FULL VISIBILITY
   ============================================================ */

/* Main footer background & text */
.footer_wrap,
.footer_wrap .widget_area_inner {
    background-color: #020024 !important; /* Deep Akahi dark */
    color: var(--akahi-light) !important;
}

/* Footer widget titles */
.footer_wrap .widget_title,
.footer_wrap h4,
.footer_wrap h5 {
    color: #ffffff !important;
    font-weight: 600 !important;
    margin-bottom: 15px !important;
}

/* Footer links */
.footer_wrap a {
    color: var(--akahi-light) !important;
    opacity: 1 !important;
}
.footer_wrap a:hover {
    color: var(--akahi-mid) !important;
    opacity: 1 !important;
}

/* Footer icons (social icons, phone, email, etc.) */
.footer_wrap i,
.footer_wrap .social_item a span,
.footer_wrap .social_item a,
.footer_wrap .icon,
.footer_wrap .sc_icon {
    color: var(--akahi-light) !important;
    fill: var(--akahi-light) !important;
    opacity: 1 !important;
}
.footer_wrap .social_item a:hover {
    color: var(--akahi-mid) !important;
    fill: var(--akahi-mid) !important;
}

/* Column spacing */
.footer_wrap .columns_wrap,
.footer_wrap .content_wrap {
    max-width: 1380px;
    margin: 0 auto;
    padding: 0 25px;
}

/* Footer list items */
.footer_wrap ul li {
    padding: 4px 0;
}

/* Divider above copyright bar */
.footer_wrap .sc_layouts_row_fixed,
.footer_wrap .footer_copyright_wrap {
    border-top: 1px solid rgba(255,255,255,0.12) !important;
    margin-top: 25px;
    padding-top: 18px;
}

/* Copyright text */
.footer_wrap .copyright_text {
    color: var(--akahi-light) !important;
    opacity: 0.85 !important;
    font-size: 14px !important;
    text-align: center !important;
}

/* Remove any theme overlay or tint affecting footer */
.footer_wrap::before,
.footer_wrap .widget_area_inner::before {
    display: none !important;
    background: none !important;
    content: none !important;
}
/* ============================================================
   AKAHI FOOTER COLOR FIX
   ============================================================ */

/* ============================================================
   AKAHI FOOTER – MATCH HEADER COLOR
   ============================================================ */

.footer_wrap,
.footer_wrap .widget_area_inner,
.footer_wrap .footer_copyright_wrap {
    background-color: #020035 !important; /* Same as header */
    color: #DCDFEE !important; /* Akahi Light */
}

/* Footer links */
.footer_wrap a {
    color: #DCDFEE !important;
    opacity: 1 !important;
}
.footer_wrap a:hover {
    color: #878A99 !important; /* Akahi Mid */
}

/* Footer social icons */
.footer_wrap .social_item a,
.footer_wrap .social_item a span,
.footer_wrap i,
.footer_wrap .sc_icon {
    color: #DCDFEE !important;
    fill: #DCDFEE !important;
    opacity: 1 !important;
}
.footer_wrap .social_item a:hover span,
.footer_wrap .sc_icon:hover {
    color: #878A99 !important;
    fill: #878A99 !important;
}

/* Remove any leftover theme overlay */
.footer_wrap::before,
.footer_wrap .widget_area_inner::before {
    content: none !important;
    background: none !important;
    display: none !important;
}

/* Divider styling (light + subtle) */
.footer_wrap .footer_copyright_wrap {
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
}

/* ============================================================
   AKAHI FOOTER ANIMATIONS
   ============================================================ */

/* Fade-in animation for entire footer */
.footer_wrap {
    animation: akahiFooterFade 1.4s ease forwards;
    opacity: 0;
}
@keyframes akahiFooterFade {
    0% { opacity: 0; transform: translateY(25px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* Link hover animation */
.footer_wrap a {
    transition: color .25s ease, text-shadow .25s ease;
}
.footer_wrap a:hover {
    text-shadow: 0 0 6px rgba(220, 223, 238, 0.5);
}

/* Social icon hover animation */
.footer_wrap .social_item a span,
.footer_wrap .sc_icon {
    transition: transform .25s ease, color .25s ease, text-shadow .25s ease;
}
.footer_wrap .social_item a:hover span,
.footer_wrap .sc_icon:hover {
    transform: translateY(-4px);
    text-shadow: 0 0 10px rgba(220, 223, 238, 0.6);
}

/* Footer columns fade in slightly staggered */
.footer_wrap .columns_wrap > div {
    opacity: 0;
    animation: akahiColumnFade 1.2s ease forwards;
}
.footer_wrap .columns_wrap > div:nth-child(1) { animation-delay: .2s; }
.footer_wrap .columns_wrap > div:nth-child(2) { animation-delay: .35s; }
.footer_wrap .columns_wrap > div:nth-child(3) { animation-delay: .5s; }
.footer_wrap .columns_wrap > div:nth-child(4) { animation-delay: .65s; }

@keyframes akahiColumnFade {
    0% { opacity: 0; transform: translateY(10px); }
    100% { opacity: 1; transform: translateY(0); }
}

/* Subtle floating background effect */
.footer_wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 30% 70%, rgba(255,255,255,0.05), transparent 70%);
    pointer-events: none;
    animation: akahiFooterGlow 8s ease-in-out infinite alternate;
}
@keyframes akahiFooterGlow {
    from { opacity: .3; transform: scale(1); }
    to   { opacity: .6; transform: scale(1.1); }
}
/* ============================================================
   AKAHI – CAROUSEL TEXT VISIBILITY FIX
   ============================================================ */

/* All Revolution Slider text captions */
.tp-caption,
.tp-caption a,
.tp-resizeme {
    color: #FFFFFF !important; /* Pure white for max contrast */
    text-shadow: 0 0 12px rgba(0,0,0,0.75),
                 0 0 20px rgba(0,0,0,0.85); /* Soft glow improves readability */
    font-weight: 700 !important;
}

/* Optional: Increase font sizing slightly for visibility */
#rev_slider_1_1 .tp-caption {
    font-size: 38px !important;
    line-height: 1.2 !important;
}

/* Add a subtle dark overlay behind the entire slide */
.rev_slider_wrapper .rev-slidebg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        rgba(0,0,0,0.50),
        rgba(0,0,0,0.50)
    ); /* 50% darkening layer */
    z-index: 1;
}

/* Ensure captions appear ABOVE overlay */
.tp-caption,
.tp-caption a {
    position: relative;
    z-index: 2 !important;
}
/* ============================================================
   FIX REVOLUTION SLIDER "MORE INFO" BUTTON BLOCK ISSUE
   ============================================================ */

/* Reset default weird block styles */
#slide-1-layer-3,
#slide-3-layer-3 {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border-radius: 50px !important;
    display: inline-block !important;
    box-shadow: none !important;
    min-width: 0 !important;
}

/* Apply Akahi button styling */
#slide-1-layer-3,
#slide-3-layer-3 {
    background: #020035 !important; /* Akahi Dark */
    color: #DCDFEE !important;      /* Akahi Light */
    font-weight: 600 !important;
    font-size: 18px !important;
    padding: 14px 28px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    border: 2px solid #DCDFEE !important;
    transition: all 0.3s ease !important;
}

/* Hover effect */
#slide-1-layer-3:hover,
#slide-3-layer-3:hover {
    background: #878A99 !important; /* Akahi Mid */
    color: #ffffff !important;
    border-color: #ffffff !important;
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.35);
}
/* ============================================================
   REMOVE LIME GREEN ACCENT & REPLACE WITH AKAHI BRAND COLOR
   ============================================================ */

/* Theme accent override (lime green → Akahi Mid) */
:root {
    --theme-accent-color: #878A99 !important;
}

/* Direct override for any element using old accent */
a:hover,
.sc_button:hover,
.trx_addons_hovered,
.trx_addons_accent,
.trx_addons_accent * {
    color: #878A99 !important;
    border-color: #878A99 !important;
}

/* Replace lime green backgrounds */
.sc_button:hover,
.sc_button:focus,
.trx_addons_accent_bg,
.trx_addons_hovered_bg,
.accent-bg,
.bg-accent {
    background-color: #878A99 !important;
}

/* Remove Revolution Slider's lime-green hover effect */
.tp-caption:hover,
#slide-1-layer-3:hover,
#slide-3-layer-3:hover {
    background: #878A99 !important;
    border-color: #878A99 !important;
    color: #ffffff !important;
}

/* Remove inline hover color from slider settings */
.rs-layer[data-frame_hover*="#bfc7d1"],
.tp-caption[data-frame_hover*="#bfc7d1"] {
    background-color: #878A99 !important;
    color: #ffffff !important;
}

/* Replace green highlight in blockquote */
.sc_blockquote .trx_addons_hovered,
.sc_blockquote .trx_addons_hovered:hover {
    color: #878A99 !important;
}
/* ============================================================
   ABOUT PAGE – IMAGE FADE-IN ANIMATION
   ============================================================ */

.akahi-fade-image {
    opacity: 0;
    transform: translateY(40px);
    transition: all 1.1s ease;
}

.akahi-fade-image.akahi-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Image presentation upgrade */
.akahi-fade-image img {
    border-radius: 14px;
    box-shadow: 0 12px 35px rgba(0,0,0,0.20);
}
/* General text fade-in */
.akahi-fade-text {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.9s ease;
}

.akahi-fade-text.akahi-visible {
    opacity: 1;
    transform: translateY(0);
}
/* ============================================================
   FORCE NAV TO STAY ON ONE LINE (Akahi Header Fix)
   ============================================================ */

.menu_main_inner {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
    flex-wrap: nowrap !important; /* PREVENT WRAPPING */
}

/* Nav list stays in a single line */
.menu_main_nav {
    display: flex !important;
    flex-wrap: nowrap !important; /* stops 3 on top / 2 below */
    gap: 28px !important; /* adjust spacing as needed */
    white-space: nowrap !important;
}

/* Reduce excessive padding so items fit better */
.menu_main_nav > li > a {
    padding: 20px 0 !important;
}

/* Prevent the contact/social/search block from pushing nav down */
.contact_wrap {
    margin-right: 20px !important;
    flex-shrink: 0 !important;
}

.menu_main_nav_area {
    flex-grow: 1 !important;
}

/* Shrink gap slightly on mid-sized screens so nav still fits */
@media (max-width: 1280px) {
    .menu_main_nav {
        gap: 18px !important;
    }
    .contact_wrap {
        display: none !important; /* optional */
    }
}

/* Force logo to not occupy too much width */
.logo {
    flex-shrink: 0 !important;
}

