/*
Theme Name: Astra Child
Theme URI: https://trustarmory.com
Description: Trust Armory child theme based on Astra. Ships restrained typography and slate/orange brand palette — all further customisation happens in Elementor Global Kit and this file.
Author: Trust Armory
Author URI: https://trustarmory.com
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/

/* Everything else is handled by Elementor Global Kit — keep this file minimal so it doesn't fight the Kit. */
:root{
  --ta-deep:#4B5563;
  --ta-slate:#657383;
  --ta-orange:#F26A1F;
  --ta-orange-dark:#D9541A;
  --ta-ink:#111827;
  --ta-muted:#6B7280;
  --ta-soft:#F5F7FB;
  --ta-border:#E5E7EB;
}

/* Sticky header polish (works because Astra Child uses Container-based layouts) */
.ta-xpro-header{position:sticky;top:0;z-index:999;background:#fff}
.ta-xpro-header.is-scrolled{box-shadow:0 6px 20px -10px rgba(11,18,32,.14)}

/* ==== TA-HIW-PILLS ==== */
.ta-hiw-pill { width: auto !important; flex: 0 0 auto !important; }
.ta-hiw-pill-break { flex-basis: 100% !important; justify-content: center !important; width: auto !important; }
.ta-hiw-pill-break.e-con { display: flex; justify-content: center; }
/* Center the whole row and the wrapped green pill under the X-pills */

/* ==== TA-CONTACT-FORM-BTN ==== */
#wpforms-form-24 button[type='submit'],
#wpforms-form-24 .wpforms-submit,
.wpforms-form-24 button[type='submit'] {
    background-color: #F26A1F !important;
    border-color: #F26A1F !important;
    color: #FFFFFF !important;
    border-radius: 999px !important;
    padding: 12px 28px !important;
    font-weight: 600 !important;
    transition: background-color .15s ease, transform .15s ease !important;
    box-shadow: 0 8px 20px -8px rgba(242,106,31,0.55) !important;
}
#wpforms-form-24 button[type='submit']:hover,
#wpforms-form-24 .wpforms-submit:hover,
.wpforms-form-24 button[type='submit']:hover {
    background-color: #D9541A !important;
    border-color: #D9541A !important;
    color: #FFFFFF !important;
}
/* ==== TA-MENU-STYLE ==== */
.ta-menu { display: flex; justify-content: flex-end; }
.ta-menu-list { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; align-items: center; }
.ta-menu-list a { color: #1E293B; font-family: 'Inter', sans-serif; font-weight: 500; font-size: 15px; text-decoration: none; padding: 6px 0; transition: color .15s ease; }
.ta-menu-list a:hover, .ta-menu-list .current-menu-item > a { color: #F26A1F; }
.ta-menu-list .sub-menu { position: absolute; background: #fff; border: 1px solid #E5E7EB; border-radius: 8px; padding: 8px 0; min-width: 200px; box-shadow: 0 10px 30px -10px rgba(15,22,32,0.15); list-style: none; margin: 8px 0 0; display: none; z-index: 200; }
.ta-menu-list li { position: relative; }
.ta-menu-list li:hover > .sub-menu { display: block; }
.ta-menu-list .sub-menu a { display: block; padding: 8px 16px; font-size: 14px; }
/* ==== TA-MENU-CARET ==== */
.ta-menu-list li.menu-item-has-children > a { display: inline-flex; align-items: center; gap: 6px; }
.ta-menu-list li.menu-item-has-children > a::after { content: ''; display: inline-block; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.ta-menu-list li.menu-item-has-children:hover > a::after { transform: rotate(-135deg) translateY(2px); }
/* ==== TA-MENU-FIXES ==== */
/* No-wrap labels */
.ta-menu-list > li > a { white-space: nowrap; }
/* Fix the hover-gap so the submenu doesn't close between parent and child */
.ta-menu-list li { position: relative; padding-bottom: 4px; }
.ta-menu-list .sub-menu { margin: 0 !important; top: 100%; left: 0; padding-top: 12px; padding-bottom: 0; background: transparent; border: 0; box-shadow: none; }
.ta-menu-list .sub-menu::before { content: ''; position: absolute; top: 12px; left: 0; right: 0; bottom: 0; background: #fff; border: 1px solid #E5E7EB; border-radius: 8px; box-shadow: 0 10px 30px -10px rgba(15,22,32,0.15); z-index: -1; }
.ta-menu-list .sub-menu li { padding: 0; }
.ta-menu-list .sub-menu a { display: block; padding: 10px 18px; font-size: 14px; white-space: nowrap; }
/* ==== TA-MENU-HOVER-BG ==== */
/* Pill hover background on top-level menu links */
.ta-menu-list > li > a { padding: 8px 14px; border-radius: 8px; transition: background-color .15s ease, color .15s ease; }
.ta-menu-list > li > a:hover, .ta-menu-list > li.current-menu-item > a, .ta-menu-list > li.current-menu-parent > a { background-color: #F5F7F9; color: #F26A1F; }
/* Sub-menu item hover background */
.ta-menu-list .sub-menu a:hover { background-color: #F5F7F9; color: #F26A1F; }
/* ==== TA-STICKY-HEADER-FIX ==== */
/* The XPRO header renders inside its OWN wrapper, not Astra's .site-header. Target the real element. */
header.xpro-theme-builder-header { position: sticky !important; top: 0 !important; z-index: 100 !important; background: transparent !important; box-shadow: none !important; }
header.xpro-theme-builder-header .xpro-theme-builder-header-nav { display: block; }
/* Our visible container -- solid white, frosted, subtle shadow */
.ta-sticky-header, .elementor-element.ta-sticky-header { background-color: #FFFFFF !important; -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px); box-shadow: 0 1px 0 rgba(15,22,32,0.06); }

