/*
 * responsive.css — Take Acres Theme
 * Global mobile/tablet breakpoints.
 * Enqueued after all other stylesheets.
 * Rollback: remove enqueue from functions.php + delete this file.
 */

/* ============================================================
   SHARED HELPERS
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }

img { max-width: 100%; height: auto; display: block; }

/* ============================================================
   ABOUT PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-about-hero {
    padding: 100px 24px 80px !important;
    min-height: unset !important;
  }
  .ta-about-hero h1 { font-size: clamp(36px, 8vw, 56px); }
}

/* ============================================================
   SERVICES PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-services-hero {
    padding: 100px 24px 80px !important;
    min-height: unset !important;
  }
  .ta-services-hero h1 { font-size: clamp(34px, 7vw, 56px); }
  .ta-services-page { padding: 60px 20px 80px; }
  .ta-services-grid {
    grid-template-columns: 1fr !important;
    gap: 24px;
  }
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-contact-hero {
    padding: 100px 24px 80px !important;
    min-height: unset !important;
  }
  .ta-contact-hero h1 { font-size: clamp(34px, 7vw, 60px); }
}
@media (max-width: 600px) {
  .ta-contact-card { padding: 28px 22px; }
  .ta-social-links { gap: 10px; }
  .ta-social-links a { width: 40px; height: 40px; }
}

/* ============================================================
   FOUNDERS PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-founders-hero {
    padding: 100px 24px 80px !important;
    min-height: unset !important;
  }
  .ta-founders-hero h1 { font-size: clamp(32px, 7vw, 52px); }
  .ta-founders-together { padding: 80px 0 70px; }
  .ta-founders-principles {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }
}

/* ============================================================
   INSIGHTS PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-insights-hero {
    padding: 100px 24px 80px !important;
    min-height: unset !important;
  }
  .ta-insights-hero h1 { font-size: clamp(32px, 7vw, 54px); }
  .ta-insight-grid,
  .ta-insights-grid {
    grid-template-columns: 1fr !important;
    gap: 24px;
  }
  .ta-insight-category-section { padding: 0 20px; }
}

/* Single insight */
@media (max-width: 768px) {
  .ta-insight-hero-image img { height: 320px; }
  .ta-insight-hero h1 { font-size: 28px; }
  .ta-insight-container { padding: 0 24px; font-size: 16px; }
}

/* ============================================================
   HOMEPAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-hero-inner { padding: 0 24px; flex-direction: column; justify-content: center; }
  .ta-hero-left { max-width: 100%; }
  .ta-hero-left h1 { font-size: clamp(32px, 7vw, 48px); margin-bottom: 36px; }
  .ta-hero-form { max-width: 100%; }
  .ta-hero-form form { grid-template-columns: 1fr 1fr; }

  /* thank-you: full width, no shrinking right fields */
  #take-acres-home-form > .ta-form-response {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
  }

  /* Thank you response — single compact line, no vertical expansion */
  .ta-form-response {
    grid-column: 1 / -1;
  }
  .ta-form-response .ta-alert {
    margin-bottom: 0;
    padding: 8px 12px;
    font-size: 13px;
    line-height: 1.4;
    border-radius: 6px;
    text-align: center;
  }

  .ta-trust {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    padding: 0 !important;
    text-align: center;
  }

  .trust-item {
    padding: 22px 12px;
    /* only a left border as column divider — no top/bottom lines */
    border: none;
    border-left: 1px solid rgba(255,255,255,0.08);
    flex-direction: column;
    gap: 8px;
    font-size: 12px;
    justify-content: center;
  }

  /* first item has no left divider */
  .trust-item:first-child {
    border-left: none;
  }

  /* hide pipe dividers — grid borders handle separation */
  .trust-divider { display: none; }

  .ta-home-about-inner {
    grid-template-columns: 1fr !important;
    gap: 40px;
    padding: 0 24px !important;
  }
  .ta-home-about-left h2 { font-size: clamp(28px, 6vw, 44px); }

  .ta-home-services-inner { padding: 0 24px !important; }
  .ta-home-services-grid { grid-template-columns: 1fr !important; gap: 24px; }
  .ta-home-services { padding: 80px 0 !important; }

  .ta-featured-inner { padding: 0 20px; }
  .ta-featured .take-acres-properties { grid-template-columns: 1fr !important; }
}

@media (max-width: 480px) {
  .ta-hero-form form { grid-template-columns: 1fr; }
  .ta-hero-form button {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100%;
  }
}

/* ============================================================
   FOOTER
   ============================================================ */
@media (max-width: 900px) {
  .ta-footer-inner {
    grid-template-columns: 1fr 1fr !important;
    gap: 40px 24px;
    padding: 0 24px !important;
  }
  .ta-footer-brand { grid-column: span 2; }
  .ta-footer-brand h2 { font-size: 32px; }
  .ta-footer-bottom { padding: 20px 24px; }
}

@media (max-width: 540px) {
  .ta-footer-inner { grid-template-columns: 1fr !important; }
  .ta-footer-brand { grid-column: span 1; }
  .ta-footer-bottom {
    flex-direction: column;
    gap: 12px;
    text-align: center;
    padding: 20px 16px;
  }
  .ta-footer-legal a { margin-left: 12px; }
}

/* ============================================================
   NAVBAR — hamburger reliability
   ============================================================ */

/* Prevent body scroll when mobile menu open */
body.ta-menu-open { overflow: hidden; }

/* Ensure mobile menu background never shows white */
.ta-mobile-menu {
  background: #090f22 !important;
}

/* Nav right: hide "Get In Touch" btn on small screens, keep hamburger */
@media (max-width: 900px) {
  .ta-nav-right .ta-header-btn { display: none; }
  .ta-nav-right { gap: 0; min-width: 0 !important; flex: 0 0 auto !important; }

  /* Navbar: always fixed, always visible, transparent until scrolled */
  #ta-navbar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 100 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    /* transparent pre-scroll — DO NOT set background here;
       the base rule in home.css already sets rgba(9,18,46,0)
       and the .scrolled class adds the solid bg */
  }
}

/* ============================================================
   PROPERTIES PAGE
   ============================================================ */
@media (max-width: 900px) {
  .ta-properties-hero {
    padding: 100px 24px 70px !important;
  }
  .ta-properties-hero h1 { font-size: clamp(30px, 7vw, 48px); }
  .ta-properties-content { padding: 0 20px !important; }
}

/* ============================================================
   VISION CARDS (about)
   ============================================================ */
@media (max-width: 700px) {
  .ta-vision-grid { grid-template-columns: 1fr !important; gap: 20px; }
  .ta-vision-card { padding: 36px 24px !important; }
}

/* ============================================================
   SINGLE PROPERTY PAGE
   ============================================================ */
@media (max-width: 768px) {
  .ta-property-hero { padding: 100px 0 60px; }
  .ta-property-inner { padding: 0 20px; }
  .ta-property-grid { grid-template-columns: 1fr !important; }
}
