/* ==========================================================================
   Garantigruppen – Complete Style Override for Enfold 4.7.6.1 on WP 6.7
   Primary: #21a3a3  Secondary: #7375a5  Dark: #2b364a  Font: Lato
   ========================================================================== */

/* --- Base & Typography --------------------------------------------------- */
body,
#top,
#top .avia-builder-el,
#wrap_all {
    font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
    color: #55606e;
    font-size: 15px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}

#top h1, #top h2, #top h3, #top h4, #top h5, #top h6,
.av-special-heading-tag,
.entry-title,
#top .main_color h1,
#top .main_color h2,
#top .main_color h3,
#top .main_color h4,
#top .main_color h5,
#top .main_color h6 {
    color: #2b364a !important;
    font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
    font-weight: 700;
}

/* --- Links (override Enfold's .main_color selectors) --------------------- */
#top a,
#top .main_color a,
#top .main_color a:link,
#top .main_color .entry-content a,
.main_color a,
a:link,
a:visited {
    color: #21a3a3 !important;
    text-decoration: none;
    transition: color .2s ease;
}

#top a:hover,
#top .main_color a:hover,
#top .main_color a:focus,
.main_color a:hover {
    color: #178585 !important;
    text-decoration: none;
}

/* --- Header -------------------------------------------------------------- */
#top #header,
#top #header_main,
.header_color,
#top .header_color,
.header_color .av-logo-container,
.header_color .av-main-nav-wrap {
    background: #ffffff !important;
}

#top #header {
    border-bottom: 2px solid #21a3a3;
    box-shadow: 0 1px 8px rgba(0,0,0,0.06);
}

/* Logo */
#top .logo a,
#top #header .logo a,
#top .header_color a.logo,
.header_color .brand a {
    color: #2b364a !important;
    font-weight: 700;
    font-size: 24px;
    letter-spacing: 0.5px;
}

#top .logo a:hover,
#top #header .logo a:hover {
    color: #21a3a3 !important;
}

/* --- Main Navigation ----------------------------------------------------- */
#top .av-main-nav > li > a,
#top .av-main-nav > li > a .avia-menu-text,
.header_color .av-main-nav > li > a,
.header_color .av-main-nav > li > a .avia-menu-text,
#top #header .av-main-nav > li > a {
    color: #2b364a !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none !important;
}

#top .av-main-nav > li > a:hover,
#top .av-main-nav > li > a:hover .avia-menu-text,
#top .av-main-nav > li.current-menu-item > a,
#top .av-main-nav > li.current-menu-item > a .avia-menu-text,
#top .av-main-nav > li.current_page_item > a,
#top .av-main-nav > li.current_page_item > a .avia-menu-text,
#top .av-main-nav > li.current-menu-ancestor > a,
#top .av-main-nav > li.current-menu-ancestor > a .avia-menu-text,
.header_color .av-main-nav > li.current-menu-item > a,
.header_color .av-main-nav > li.current_page_item > a,
.header_color .av-main-nav > li.current-menu-ancestor > a {
    color: #21a3a3 !important;
}

/* Active nav indicator */
#top .av-main-nav > li.current-menu-item > a,
#top .av-main-nav > li.current_page_item > a,
#top .av-main-nav > li.current-menu-ancestor > a {
    border-bottom: 2px solid #21a3a3;
}

/* Dropdown submenu */
#top .av-main-nav ul.sub-menu,
#top .avia-menu .sub-menu {
    background: #ffffff !important;
    border-top: 2px solid #21a3a3;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

#top .av-main-nav ul.sub-menu li a,
#top .avia-menu .sub-menu li a {
    color: #2b364a !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    border-bottom: 1px solid #f0f0f0;
}

#top .av-main-nav ul.sub-menu li a:hover,
#top .avia-menu .sub-menu li a:hover {
    color: #21a3a3 !important;
    background: #f5fafa !important;
}

/* --- Hero / Sections ----------------------------------------------------- */

/* Fix: Enfold hides container with opacity:0 for JS fade-in, but transition fails on WP 6.7 */
#top .avia-section.av-minimum-height .container {
    opacity: 1 !important;
}

/* Ensure content sits ABOVE overlay (overlay has z-index:1, so container needs z-index:2) */
#top .av-section-color-overlay-wrap > .container,
#top .avia-section .av-section-color-overlay-wrap > .container {
    position: relative;
    z-index: 2;
}

/* Hero heading (white on image) — extra specificity to beat #top .main_color h1 */
#top .avia-section .av-special-heading.custom-color-heading h1,
#top .avia-section .av-special-heading.custom-color-heading .av-special-heading-tag,
#top .main_color .av-special-heading.custom-color-heading h1,
#top .main_color .av-special-heading h1 {
    color: #ffffff !important;
    font-weight: 700;
    font-size: 42px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5), 0 0 20px rgba(0,0,0,0.2);
    letter-spacing: 1px;
}

#top .avia-section .av-special-heading .av-subheading,
#top .main_color .av-special-heading .av-subheading {
    color: rgba(255,255,255,0.95) !important;
    font-size: 18px;
    text-shadow: 0 1px 4px rgba(0,0,0,0.4);
    line-height: 1.6;
}

#top .av-special-heading .av-subheading p {
    color: rgba(255,255,255,0.95) !important;
}

#top .blockquote.modern-quote {
    border: none !important;
    background: transparent !important;
}

/* Make hero overlay slightly darker for better text contrast */
#top .av-section-color-overlay {
    opacity: 0.55 !important;
}

/* --- Buttons ------------------------------------------------------------- */
#top .avia-button,
#top a.avia-button,
#top .av-button-big a,
#top .main_color .avia-button {
    background-color: #21a3a3 !important;
    color: #ffffff !important;
    border: 2px solid #21a3a3 !important;
    border-radius: 4px !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.25s ease;
    text-decoration: none !important;
}

#top .avia-button:hover,
#top a.avia-button:hover,
#top .av-button-big a:hover {
    background-color: #178585 !important;
    border-color: #178585 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(33,163,163,0.3);
}

/* Ghost button */
#top .avia-button.avia-color-light,
#top a.avia-button.avia-color-light {
    background-color: transparent !important;
    color: #21a3a3 !important;
    border: 2px solid #21a3a3 !important;
}

#top .avia-button.avia-color-light:hover {
    background-color: #21a3a3 !important;
    color: #ffffff !important;
}

/* --- Title Bar / Breadcrumb ---------------------------------------------- */
#top .title_container,
#top .breadcrumb_container,
#top #header_meta,
.alternate_color .title_container {
    background: #f5f7f8 !important;
    border-bottom: 1px solid #e1e1e1;
}

#top .title_container h1,
#top .title_container .av-special-heading-tag {
    color: #2b364a !important;
    font-size: 22px;
    font-weight: 600;
}

#top .breadcrumb,
#top .breadcrumb a {
    color: #889095 !important;
    font-size: 13px;
}

#top .breadcrumb a:hover {
    color: #21a3a3 !important;
}

/* --- Content Area -------------------------------------------------------- */
#top .entry-content-wrapper,
#top .flex_column_table {
    line-height: 1.7;
}

/* Content text color */
#top .main_color p,
#top .main_color .entry-content p,
#top .main_color,
#top .main_color div,
.main_color p {
    color: #55606e !important;
}

/* Headings in content */
#top .main_color .entry-content h1,
#top .main_color .entry-content h2,
#top .main_color .entry-content h3 {
    color: #2b364a !important;
}

/* --- Sidebar & Page Nesting Nav ------------------------------------------ */
#top .sidebar {
    font-size: 14px;
}

#top .sidebar .widget {
    margin-bottom: 25px;
    padding-bottom: 20px;
}

#top .sidebar .widgettitle,
#top .sidebar .widget-title {
    color: #2b364a !important;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #21a3a3;
}

/* Page nesting nav */
#top .widget_nav_menu ul li a,
#top .widget_pages ul li a {
    display: block;
    padding: 10px 15px;
    color: #55606e !important;
    border-bottom: 1px solid #e8e8e8;
    font-weight: 500;
    transition: all 0.2s ease;
}

#top .widget_nav_menu ul li a:hover,
#top .widget_pages ul li a:hover {
    color: #21a3a3 !important;
    background: #f5fafa;
    padding-left: 20px;
}

#top .widget_nav_menu ul li.current-menu-item > a,
#top .widget_nav_menu ul li.current_page_item > a,
#top .sidebar .widget_nav_menu ul li.current-menu-item > a {
    color: #21a3a3 !important;
    font-weight: 700;
    border-left: 3px solid #21a3a3;
    background: #f5fafa;
}

/* --- Footer -------------------------------------------------------------- */
#top #footer,
#top .footer_color,
.footer_color,
.footer_color div,
.footer_color section,
.footer_color p,
.footer_color span,
#top .footer_color .widget,
#top .footer_color .textwidget {
    background-color: #2b364a !important;
    color: #c8cdd5 !important;
}

#top #footer {
    padding: 50px 0 30px;
    border-top: 3px solid #21a3a3;
}

#top .footer_color .widgettitle,
#top .footer_color .widget-title,
#top #footer .widgettitle {
    color: #21a3a3 !important;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}

#top .footer_color a,
#top #footer a,
#top .footer_color .widget a,
#top .footer_color .textwidget a,
.footer_color a {
    color: #c8cdd5 !important;
    transition: color 0.2s ease;
}

#top .footer_color a:hover,
#top #footer a:hover,
#top .footer_color .widget a:hover,
.footer_color a:hover {
    color: #21a3a3 !important;
}

#top .footer_color .widget_nav_menu ul li a,
#top #footer .widget_nav_menu ul li a {
    color: #c8cdd5 !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
    padding: 8px 0;
    background: transparent !important;
}

#top .footer_color .widget_nav_menu ul li a:hover,
#top #footer .widget_nav_menu ul li a:hover {
    color: #21a3a3 !important;
    background: transparent !important;
    padding-left: 8px;
}

#top #footer p,
#top .footer_color p {
    color: #c8cdd5 !important;
}

/* Hide empty footer column (media_image with no content) */
#top #footer .widget_media_image:empty,
#top #footer .widget_media_image img[src=""] {
    display: none;
}

/* Hide "Interesting Links" default text */
#top #footer .widget_text .textwidget p:first-child {
    /* Only if it contains default text */
}

/* --- Socket (copyright bar) --------------------------------------------- */
#top .socket_color,
#top #socket,
.socket_color,
.socket_color div,
.socket_color span,
.socket_color p {
    background-color: #1a2030 !important;
    color: #8e9392 !important;
    padding: 15px 0;
    font-size: 13px;
}

#top .socket_color a,
#top #socket a,
.socket_color a {
    color: #8e9392 !important;
}

#top .socket_color a:hover,
#top #socket a:hover,
.socket_color a:hover {
    color: #21a3a3 !important;
}

/* --- Icon/Feature Columns ------------------------------------------------ */
#top .av-icon-char,
#top .iconbox_icon {
    color: #21a3a3 !important;
}

#top .av-icon-box .iconbox_content h3,
#top .av-icon-box .iconbox_content h4 {
    color: #2b364a !important;
}

/* --- Forms --------------------------------------------------------------- */
#top input[type="text"],
#top input[type="email"],
#top input[type="tel"],
#top input[type="url"],
#top input[type="password"],
#top textarea,
#top select {
    border: 1px solid #d4d8dc !important;
    border-radius: 4px;
    padding: 10px 14px;
    font-family: 'Lato', sans-serif;
    font-size: 14px;
    color: #55606e;
    background: #ffffff !important;
    transition: border-color 0.2s ease;
}

#top input[type="text"]:focus,
#top input[type="email"]:focus,
#top textarea:focus {
    border-color: #21a3a3 !important;
    outline: none;
    box-shadow: 0 0 0 2px rgba(33,163,163,0.15);
}

/* --- Misc ---------------------------------------------------------------- */

/* Enfold color classes - override green defaults */
#top .main_color .avia-color-theme-color,
#top .main_color .avia-color-theme-color-highlight,
.main_color .avia-color-theme-color {
    color: #21a3a3 !important;
}

#top .main_color .avia-bg-theme-color,
.avia-bg-theme-color {
    background-color: #21a3a3 !important;
}

/* HR / separators */
#top .main_color hr,
#top .main_color .av-separator {
    border-color: #e1e1e1;
}

/* Better blockquote */
#top blockquote,
#top .main_color blockquote {
    border-left: 4px solid #21a3a3 !important;
    padding: 15px 20px;
    margin: 20px 0;
    background: #f5fafa;
    color: #55606e !important;
}

/* Selection color */
::selection {
    background: #21a3a3;
    color: #ffffff;
}

::-moz-selection {
    background: #21a3a3;
    color: #ffffff;
}

/* Smooth scroll */
html {
    scroll-behavior: smooth;
}

/* --- Responsive ---------------------------------------------------------- */
@media (max-width: 767px) {
    #top .av-main-nav > li > a {
        font-size: 13px !important;
    }

    #top #footer {
        padding: 30px 0 20px;
        text-align: center;
    }

    #top .title_container .av-special-heading-tag {
        font-size: 18px;
    }
}
