/*
Theme Name: AXON Sovereign Child Theme
Description: High-fidelity pre-launch canvas engineered specifically for the AXON digital asset ecosystem in Libya.
Author: AXON Engineering
Author URI: https://axon.ly
Template: hello-commerce
Version: 1.0.0
Text Domain: axon-theme
*/

/* ========================================
   AXON DESIGN SYSTEM — Single Source of Truth
   --axon-primary:     #1d683d  (Emerald Green — Primary Actions)
   --axon-primary-dark:#15512f  (Deep Forest — Hover State)
   --axon-sand:        #e8d8be  (Sandstone Beige — Accents)
   --axon-sand-dark:   #d4c0a0  (Deep Sand — Active Accent)
   --axon-ink:         #1a1a1a  (Body Text & Headings)
   --axon-surface:     #f9fafb  (Page Background)
   --axon-white:       #ffffff  (Containers)
   --axon-divider:     rgba(26, 26, 26, 0.06)
   ======================================== */

:root {
    --axon-primary: #1d683d;
    --axon-primary-dark: #15512f;
    --axon-sand: #e8d8be;
    --axon-sand-dark: #d4c0a0;
    --axon-ink: #1a1a1a;
    --axon-ink-muted: rgba(26, 26, 26, 0.65);
    --axon-ink-faint: rgba(26, 26, 26, 0.40);
    --axon-surface: #f9fafb;
    --axon-white: #ffffff;
    --axon-divider: rgba(26, 26, 26, 0.06);
    --axon-radius: 12px;
    --axon-radius-btn: 10px;
    --axon-transition: 0.35s ease;
    --axon-shadow-sm: 0 2px 12px rgba(29, 104, 61, 0.08);
    --axon-shadow-md: 0 8px 32px rgba(29, 104, 61, 0.12);
    --axon-shadow-lg: 0 16px 56px rgba(29, 104, 61, 0.16);
}

/* Axon Brand Override - Primary Light/Background for active states */
:root {
    --axon-primary-light: #f2e2c6;
}

/* ========================================
   GLOBAL BASE
   ======================================== */
html,
body {
    font-family: 'Almarai', sans-serif;
    font-weight: 400;
    background-color: var(--axon-surface);
    color: var(--axon-ink);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    direction: rtl;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Ensure deep forest green accents on all standard elements */
a {
    color: var(--axon-primary);
}

a:hover {
    color: var(--axon-primary-dark);
}

/* ========================================
   LTR UTILITIES (Phone Numbers, Emails, English Brand Names)
   ======================================== */
.axon-ltr,
[dir="ltr"] {
    direction: ltr !important;
    unicode-bidi: embed;
    display: inline-block;
}

/* ========================================
   HELLO ELEMENTOR CLEANUP
   ======================================== */
.site-header,
.site-footer {
    padding: 0 !important;
    margin: 0 !important;
}

.page-title,
.entry-title {
    display: none !important;
}

/* ========================================
   ELITE LAYOUT — Wide-Screen Containers
   ======================================== */
.elementor-section.elementor-section-boxed>.elementor-container,
.e-con-inner,
.elementor-container {
    max-width: 1400px !important;
    padding-left: 40px;
    padding-right: 40px;
}

@media (max-width: 1024px) {

    .elementor-section.elementor-section-boxed>.elementor-container,
    .e-con-inner,
    .elementor-container {
        padding-left: 24px;
        padding-right: 24px;
    }
}

/* ========================================
   AXON FOOTER
   ======================================== */
#axon-footer {
    background-color: var(--axon-ink);
    color: var(--axon-white);
    font-family: 'Almarai', sans-serif;
    direction: rtl;
    margin-top: 60px;
}

#axon-footer * {
    box-sizing: border-box;
}

.axon-footer-top-accent {
    height: 4px;
    background: var(--axon-primary);
    width: 100%;
}

.axon-footer-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 64px 40px 28px;
}

.axon-footer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    padding-bottom: 48px;
    border-bottom: 1px solid var(--axon-divider);
}

/* ---- Footer Typography ---- */
.axon-footer-logo {
    font-size: 28px;
    font-weight: 800;
    color: var(--axon-white);
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}

.axon-accent {
    color: var(--axon-primary);
}

.axon-footer-text {
    font-size: 14px;
    color: var(--axon-ink-muted);
    margin-bottom: 20px;
    line-height: 1.8;
    font-weight: 300;
}

/* ---- Coverage Box ---- */
.axon-coverage-box {
    background: rgba(29, 104, 61, 0.08);
    border-right: 3px solid var(--axon-primary);
    padding: 14px 18px;
    margin: 16px 0;
    border-radius: 8px;
}

.axon-coverage-main {
    font-size: 13px;
    color: var(--axon-white);
    margin-bottom: 4px;
    line-height: 1.6;
}

.axon-coverage-main strong {
    font-weight: 800;
    color: var(--axon-primary);
}

.axon-coverage-sub {
    font-size: 12px;
    color: var(--axon-ink-faint);
    margin: 0;
    font-weight: 300;
}

/* ---- Footer Section Headings ---- */
.axon-footer-heading {
    font-size: 17px;
    font-weight: 800;
    color: var(--axon-white);
    margin-bottom: 24px;
    position: relative;
    display: inline-block;
    letter-spacing: 0.2px;
}

.axon-footer-heading::after {
    content: '';
    position: absolute;
    bottom: -8px;
    right: 0;
    width: 32px;
    height: 2px;
    background: var(--axon-primary);
    transition: width var(--axon-transition);
}

.axon-footer-heading:hover::after {
    width: 100%;
}

/* ---- Footer Links ---- */
.axon-footer-links,
.axon-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.axon-footer-links li,
.axon-contact-list li {
    margin-bottom: 12px;
}

.axon-footer-links a,
.axon-contact-link {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 400;
    color: var(--axon-ink-muted);
    text-decoration: none;
    transition: color var(--axon-transition), padding-right var(--axon-transition);
}

.axon-footer-links a:hover,
.axon-contact-link:hover {
    color: var(--axon-primary);
    padding-right: 8px;
}

.axon-footer-links svg,
.axon-contact-link svg {
    min-width: 18px;
    color: var(--axon-primary);
    transition: color var(--axon-transition);
}

/* ---- Primary Button (AXON Style) ---- */
.axon-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--axon-primary);
    color: var(--axon-white);
    padding: 13px 26px;
    border-radius: var(--axon-radius-btn);
    font-size: 13px;
    font-weight: 700;
    font-family: 'Almarai', sans-serif;
    text-decoration: none;
    letter-spacing: 0.3px;
    transition: background var(--axon-transition), transform var(--axon-transition), box-shadow var(--axon-transition);
    border: none;
    cursor: pointer;
}

.axon-btn:hover {
    background: var(--axon-primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--axon-shadow-md);
}

/* Ghost / Outline Variant */
.axon-btn-outline {
    background: transparent;
    color: var(--axon-primary);
    border: 2px solid var(--axon-primary);
}

.axon-btn-outline:hover {
    background: var(--axon-primary);
    color: var(--axon-white);
}

/* ---- Social Icons ---- */
.axon-social-icons {
    display: flex;
    gap: 12px;
    margin-top: 12px;
}

.axon-social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: var(--axon-radius-btn);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: var(--axon-ink-muted);
    text-decoration: none;
    transition: all var(--axon-transition);
}

.axon-social-link:hover {
    background: var(--axon-primary);
    border-color: var(--axon-primary);
    color: var(--axon-white);
    transform: translateY(-3px);
    box-shadow: var(--axon-shadow-sm);
}

/* ---- Footer Bottom Bar ---- */
.axon-footer-bottom {
    padding-top: 24px;
    text-align: center;
    font-size: 13px;
    font-weight: 300;
    color: var(--axon-ink-faint);
}

/* ========================================
   RESPONSIVE
   ======================================== */
@media (max-width: 1024px) {
    .axon-footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .axon-footer-container {
        padding: 48px 24px 24px;
    }
}

@media (max-width: 640px) {
    .axon-footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 32px;
    }

    .axon-footer-heading::after {
        right: 50%;
        transform: translateX(50%);
    }

    .axon-social-icons {
        justify-content: center;
    }

    .axon-coverage-box {
        text-align: center;
        border-right: none;
        border-bottom: 3px solid var(--axon-primary);
    }

    .axon-footer-container {
        padding: 40px 20px 20px;
    }
}

/* ========================================
   ACCESSIBILITY & PRINT
   ======================================== */
a:focus,
button:focus {
    outline: 2px solid var(--axon-primary) !important;
    outline-offset: 3px;
}

@media print {
    #axon-footer {
        display: none !important;
    }
}


/* Reduce Motion Preference */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}