/* ============================================================
   Team Cottage Country — restoration overrides
   Static-render fixes for Total theme + RevSlider + nav/mobile
   ============================================================ */

/* Ensure JS-gated content is visible (theme normally toggles via core.min.js) */
.wpex-no-js .wpex-vc-row-stretched,
[class*="wpex-anim"],
.vcex-fade-in,
.wpex-lazyload-fallback { opacity: 1 !important; visibility: visible !important; }

/* --- Static hero replaces the empty RevSlider video module --- */
#rev_slider_4_1_wrapper,
.tcc-hero {
  visibility: visible !important;
  min-height: 60vh;
  background: #14323f url('/wp-content/uploads/hero-waterfront.jpg') center 40% / cover no-repeat;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
#rev_slider_4_1_wrapper rs-module,
#rev_slider_4_1_wrapper rs-slides,
#rev_slider_4_1_wrapper rs-slide { display: none !important; }
.tcc-hero::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(10,30,40,.25) 0%, rgba(10,30,40,.45) 100%);
}
.tcc-hero-inner {
  position: relative; z-index: 2; text-align: center; color: #fff;
  padding: 2.5rem 1.25rem; max-width: 920px;
}
.tcc-hero-inner h2 {
  color: #fff !important;
  font-size: clamp(1.6rem, 4.5vw, 3rem);
  line-height: 1.15; margin: 0 0 .6rem; text-shadow: 0 2px 14px rgba(0,0,0,.4);
}
.tcc-hero-inner p {
  color: #f0f4f6 !important; font-size: clamp(1rem, 2.2vw, 1.25rem);
  margin: 0 auto 1.4rem; max-width: 640px; text-shadow: 0 1px 8px rgba(0,0,0,.4);
}
.tcc-hero-btns a {
  display: inline-block; margin: .35rem .4rem; padding: .85rem 1.6rem;
  background: #1f6f4a; color: #fff !important; border-radius: 4px;
  font-weight: 600; text-decoration: none; min-height: 44px; line-height: 1.5;
  transition: background .2s;
}
.tcc-hero-btns a:hover { background: #16573a; }
.tcc-hero-btns a.alt { background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.6); }
.tcc-hero-btns a.alt:hover { background: rgba(255,255,255,.28); }

/* --- Navigation dropdowns (CSS-only, in case theme JS absent) --- */
#menu-main-menu .sub-menu,
.main-navigation ul ul {
  display: none; position: absolute; top: 100%; left: 0;
  min-width: 220px; background: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.14);
  list-style: none; margin: 0; padding: .4rem 0; z-index: 9999;
}
#menu-main-menu > li, .main-navigation > ul > li { position: relative; }
#menu-main-menu li:hover > .sub-menu,
.main-navigation li:hover > ul { display: block; }
.main-navigation ul ul li a { display: block; padding: .55rem 1.1rem; white-space: nowrap; }

/* --- Mobile menu (FAB toggle) --- */
#tcc-mob-toggle { display: none; }
#tcc-mobile-menu { display: none; }
@media (max-width: 992px) {
  .navbar-style-five, .main-navigation.hide-at-mm-breakpoint,
  nav#site-navigation.hide-at-mm-breakpoint { display: none !important; }
  #tcc-mob-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 46px; height: 46px; background: #1f6f4a; color: #fff;
    border-radius: 4px; text-decoration: none; font-size: 22px;
    position: absolute; right: 16px; top: 50%; transform: translateY(-50%); z-index: 50;
  }
  #tcc-mobile-menu.open { display: block; }
  #tcc-mobile-menu {
    position: fixed; top: 0; right: 0; width: 80%; max-width: 320px; height: 100vh;
    background: #14323f; z-index: 99999; overflow-y: auto; padding: 4rem 0 2rem;
    box-shadow: -6px 0 24px rgba(0,0,0,.3);
  }
  #tcc-mobile-menu a {
    display: block; color: #fff; padding: .9rem 1.4rem; text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,.08); min-height: 44px;
  }
  #tcc-mobile-menu a.sub { padding-left: 2.4rem; font-size: .95rem; opacity: .9; }
  #tcc-mob-close {
    position: absolute; top: 1rem; right: 1.2rem; color: #fff; font-size: 28px;
    text-decoration: none; line-height: 1;
  }
}
@media (min-width: 993px) { #tcc-mob-toggle, #tcc-mobile-menu { display: none !important; } }

/* --- IDX listing widgets that won't load statically: show a tidy CTA card --- */
.tcc-idx-note {
  margin: 1.5rem auto; padding: 1.6rem; max-width: 760px; text-align: center;
  background: #f4f7f6; border: 1px solid #dde6e2; border-radius: 6px;
}
.tcc-idx-note a {
  display: inline-block; margin-top: .8rem; padding: .8rem 1.5rem;
  background: #1f6f4a; color: #fff; border-radius: 4px; text-decoration: none;
  font-weight: 600; min-height: 44px; line-height: 1.6;
}

/* --- Mobile-first safety: no horizontal scroll, readable base, responsive media --- */
html, body { overflow-x: hidden; max-width: 100%; }
img, video, iframe { max-width: 100%; height: auto; }
@media (max-width: 600px) {
  body { font-size: 16px; }
  .container, .wpb_row, .vc_row { padding-left: 14px; padding-right: 14px; }
}

/* Hide any leftover empty mailerlite/popup overlays */
.ml-form-embedContainer, .ml-subscribe-form, .ml_messageSuccess,
.mailerlite-popup, [id^="mlb2-"] { display: none !important; }

/* Footer social icons spacing */
.wpex-social-btn { display: inline-block; margin: 0 .35rem; }

/* ===== RESTORE HEADER FIX (absolute header overlapped content + hidden logo + □ caret icons) ===== */
#site-header{position:relative !important;}
#site-header-inner{display:flex !important;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
#site-logo,.header-five-logo{display:flex !important;align-items:center;position:static !important;float:none !important;width:auto !important;height:auto !important;}
#site-logo .logo-img,.header-five-logo img{display:block !important;max-height:54px;width:auto;}
#site-navigation-wrap,#site-navigation,.navbar-style-five{position:static !important;float:none !important;}
.main-navigation-ul{display:flex !important;flex-wrap:wrap;align-items:center;width:auto !important;}
/* ticons webfont was lost on restore → carets/icons rendered as □ boxes */
@font-face{font-family:'ticons';src:url('/wp-content/themes/Total/assets/lib/ticons/fonts/ticons.woff2') format('woff2'),url('/wp-content/themes/Total/assets/lib/ticons/fonts/ticons.woff') format('woff');font-weight:normal;font-style:normal;font-display:swap;}
.ticon,.ticon-angle-down,.nav-arrow__icon{font-family:'ticons' !important;}
.nav-arrow{display:inline-flex;align-items:center;}
