/* ODEXAR THEME v4 — Odoo 18 */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&display=swap');

/* === HIDE ODOO DEFAULT ELEMENTS === */
#wrapwrap > header,
#wrapwrap > footer,
.o_header_affix,
.o_footer,
.o_footer_copyright,
a.o_skip_to_content,
a[href="#wrap"],
.o_skip_to_content,
#oe_main_menu_navbar,
.navbar.navbar-expand-lg {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    top: -9999px !important;
}

/* Remove any top borders/lines Odoo adds */
#wrapwrap,
#wrapwrap > *,
#wrap,
main {
    border-top: none !important;
    border: none !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* === GLOBAL RESET === */
.odx, .odx * { box-sizing: border-box !important; }
.odx {
    font-family: 'Sora', system-ui, sans-serif !important;
    background: #040812 !important;
    color: #e2e8f0 !important;
    line-height: 1.7 !important;
    overflow-x: hidden !important;
    -webkit-font-smoothing: antialiased !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}
.odx img { max-width: 100% !important; }
.odx a { color: inherit !important; text-decoration: none !important; }
.odx ul, .odx ol { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.odx h1, .odx h2, .odx h3, .odx h4, .odx h5, .odx h6, .odx p { margin: 0 !important; padding: 0 !important; border: none !important; }
.odx-container { max-width: 1200px !important; margin: 0 auto !important; padding: 0 2rem !important; }

/* === NAVIGATION === */
.odx-nav {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9000 !important;
    padding: 0 2rem !important;
    transition: all .4s ease !important;
    background: rgba(4, 8, 18, 0.6) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    border-top: none !important;
}
.odx-nav.scrolled {
    background: rgba(4, 8, 18, 0.95) !important;
    backdrop-filter: blur(24px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}
.odx-nav-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 72px !important;
    border: none !important;
}
.odx-logo img { height: 44px !important; display: block !important; border: none !important; }
.odx-menu {
    display: flex !important;
    align-items: center !important;
    gap: 2.2rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.odx-menu li { list-style: none !important; margin: 0 !important; padding: 0 !important; border: none !important; }
.odx-menu a {
    color: #8899aa !important;
    text-decoration: none !important;
    font-size: .8rem !important;
    font-weight: 500 !important;
    letter-spacing: .8px !important;
    text-transform: uppercase !important;
    transition: color .3s !important;
    border: none !important;
    position: relative !important;
}
.odx-menu a:hover { color: #fff !important; }
.odx-menu a::after {
    content: '' !important;
    position: absolute !important;
    bottom: -4px !important;
    left: 0 !important;
    width: 0 !important;
    height: 1.5px !important;
    background: #f7941d !important;
    transition: width .3s !important;
}
.odx-menu a:hover::after { width: 100% !important; }
.odx-cta-btn {
    background: #f7941d !important;
    color: #fff !important;
    padding: .5rem 1.3rem !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
    font-size: .8rem !important;
    transition: all .3s !important;
    border: none !important;
}
.odx-cta-btn:hover { background: #ffab40 !important; transform: translateY(-1px) !important; }
.odx-cta-btn::after { display: none !important; }
.odx-burger {
    display: none !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding: 8px !important;
}
.odx-burger span {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    background: #fff !important;
    border-radius: 2px !important;
}

/* === BUTTONS === */
.odx-btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    gap: .5rem !important;
    padding: .9rem 2.2rem !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: .92rem !important;
    text-decoration: none !important;
    transition: all .3s !important;
    border: none !important;
    cursor: pointer !important;
    font-family: 'Sora', sans-serif !important;
    background: linear-gradient(135deg, #f7941d, #e07800) !important;
    color: #fff !important;
    letter-spacing: .3px !important;
}
.odx-btn-primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 30px rgba(247, 148, 29, .25) !important;
}
.odx-btn-ghost {
    display: inline-flex !important;
    align-items: center !important;
    gap: .5rem !important;
    padding: .9rem 2.2rem !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: .92rem !important;
    text-decoration: none !important;
    transition: all .3s !important;
    cursor: pointer !important;
    font-family: 'Sora', sans-serif !important;
    background: transparent !important;
    color: #c0c8d4 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
}
.odx-btn-ghost:hover { border-color: #f7941d !important; color: #f7941d !important; }
.odx-btn-full { width: 100% !important; justify-content: center !important; }

/* === HERO === */
.odx-hero {
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
    padding-top: 72px !important;
    background: #040812 !important;
    border: none !important;
}
.odx-hero-bg { position: absolute !important; inset: 0 !important; }
.odx-orb { position: absolute !important; border-radius: 50% !important; filter: blur(140px) !important; opacity: .12 !important; }
.odx-orb-1 { width: 600px !important; height: 600px !important; background: #1a5ca8 !important; top: -200px !important; right: -100px !important; animation: odxdrift 25s infinite alternate ease-in-out !important; }
.odx-orb-2 { width: 500px !important; height: 500px !important; background: #f7941d !important; bottom: -200px !important; left: -150px !important; animation: odxdrift 20s infinite alternate-reverse ease-in-out !important; }
@keyframes odxdrift { 0% { transform: translate(0, 0); } 50% { transform: translate(40px, -30px); } 100% { transform: translate(-20px, 20px); } }
.odx-grid-overlay {
    position: absolute !important;
    inset: 0 !important;
    background-image: linear-gradient(rgba(255, 255, 255, .018) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px) !important;
    background-size: 60px 60px !important;
    -webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 70%) !important;
    mask-image: radial-gradient(ellipse at center, #000 30%, transparent 70%) !important;
}
.odx-hero-inner {
    position: relative !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4rem !important;
    align-items: center !important;
    padding: 5rem 2rem !important;
}
.odx-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(247, 148, 29, .08) !important;
    border: 1px solid rgba(247, 148, 29, .18) !important;
    padding: 7px 18px !important;
    border-radius: 100px !important;
    font-size: .7rem !important;
    font-weight: 600 !important;
    color: #f7941d !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 1.8rem !important;
}
.odx-dot-pulse { width: 7px !important; height: 7px !important; background: #00d68f !important; border-radius: 50% !important; display: inline-block !important; animation: odxblink 2s infinite !important; }
@keyframes odxblink { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }
.odx-hero h1 {
    font-size: clamp(2.5rem, 5vw, 3.6rem) !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
    letter-spacing: -1.5px !important;
    margin-bottom: 1.5rem !important;
    color: #f0f2f5 !important;
    border: none !important;
}
.odx-gradient {
    background: linear-gradient(135deg, #3a8ee8, #f7941d) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
.odx-hero-left > p {
    font-size: 1.05rem !important;
    color: #7a8a9a !important;
    max-width: 480px !important;
    margin-bottom: 2.2rem !important;
    font-weight: 300 !important;
    line-height: 1.75 !important;
}
.odx-btns { display: flex !important; gap: 1rem !important; flex-wrap: wrap !important; }

/* Mock Dashboard */
.odx-mock-dash {
    background: #0a1020 !important;
    border: 1px solid rgba(255, 255, 255, .08) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 25px 80px rgba(0, 0, 0, .6) !important;
}
.odx-mock-bar {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 10px 14px !important;
    background: rgba(255, 255, 255, .025) !important;
    border-bottom: 1px solid rgba(255, 255, 255, .05) !important;
}
.odx-d { width: 8px !important; height: 8px !important; border-radius: 50% !important; display: inline-block !important; }
.odx-d-r { background: #ff5f57 !important; } .odx-d-y { background: #febc2e !important; } .odx-d-g { background: #28c840 !important; }
.odx-mock-url { margin-left: 12px !important; font-size: .58rem !important; color: #3a4a5a !important; background: rgba(255, 255, 255, .04) !important; padding: 2px 10px !important; border-radius: 4px !important; }
.odx-mock-body { display: flex !important; min-height: 180px !important; }
.odx-mock-side { width: 28% !important; border-right: 1px solid rgba(255, 255, 255, .04) !important; padding: 12px !important; }
.odx-ml { height: 7px !important; border-radius: 4px !important; background: rgba(255, 255, 255, .05) !important; margin-bottom: 8px !important; }
.odx-ml.active { background: #1a5ca8 !important; opacity: .5 !important; }
.odx-ml.short { width: 60% !important; }
.odx-mock-main { flex: 1 !important; padding: 12px !important; }
.odx-mock-chart { display: flex !important; align-items: flex-end !important; gap: 8px !important; height: 80px !important; margin-bottom: 12px !important; }
.odx-b { flex: 1 !important; background: rgba(26, 92, 168, .2) !important; border-radius: 3px 3px 0 0 !important; }
.odx-b.hi { background: linear-gradient(to top, #1a5ca8, #2670c2) !important; }
.odx-mock-rows { display: flex !important; flex-direction: column !important; gap: 6px !important; }
.odx-mr { height: 5px !important; background: rgba(255, 255, 255, .03) !important; border-radius: 3px !important; }
.odx-mr.short { width: 65% !important; }

/* Stats */
.odx-stats-row {
    display: flex !important;
    gap: 3.5rem !important;
    padding: 3rem 2rem !important;
    border-top: 1px solid rgba(255, 255, 255, .05) !important;
    position: relative !important;
    z-index: 2 !important;
}
.odx-stat-item h4 { font-size: 2.2rem !important; font-weight: 800 !important; color: #f7941d !important; line-height: 1 !important; }
.odx-stat-item p { font-size: .68rem !important; color: #4a5a6a !important; text-transform: uppercase !important; letter-spacing: 2px !important; margin-top: 6px !important; font-weight: 600 !important; }

/* Trust */
.odx-trust-strip {
    padding: 2.5rem 0 !important;
    border-top: 1px solid rgba(255, 255, 255, .04) !important;
    border-bottom: 1px solid rgba(255, 255, 255, .04) !important;
    text-align: center !important;
    background: #040812 !important;
}
.odx-trust-strip > p { font-size: .68rem !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 3px !important; color: #3a4a5a !important; margin-bottom: 1.5rem !important; }
.odx-trust-names { display: flex !important; justify-content: center !important; gap: 3rem !important; flex-wrap: wrap !important; opacity: .4 !important; }
.odx-trust-names span { font-size: 1rem !important; color: #8899aa !important; font-weight: 600 !important; letter-spacing: 1px !important; }

/* === SECTIONS === */
.odx-sec { padding: 6rem 0 !important; background: #040812 !important; border: none !important; }
.odx-sec-dark { background: #070d1a !important; }
.odx-sec-head { margin-bottom: 3.5rem !important; }
.odx-center { text-align: center !important; }
.odx-center .odx-sec-sub { margin-left: auto !important; margin-right: auto !important; }
.odx-center .odx-label { justify-content: center !important; }
.odx-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 3px !important;
    color: #f7941d !important;
    margin-bottom: .8rem !important;
}
.odx-label::before { content: '' !important; width: 20px !important; height: 2px !important; background: #f7941d !important; display: inline-block !important; }
.odx-sec-head h2 {
    font-size: clamp(1.8rem, 3.5vw, 2.5rem) !important;
    font-weight: 700 !important;
    letter-spacing: -1px !important;
    margin-bottom: .8rem !important;
    color: #e8ecf0 !important;
    border: none !important;
}
.odx-sec-sub { font-size: 1rem !important; color: #7a8a9a !important; max-width: 520px !important; font-weight: 300 !important; }

/* Grids */
.odx-grid3 { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1.2rem !important; }
.odx-grid2 { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 1.5rem !important; }
.odx-grid4 { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 1.2rem !important; }

/* Service Cards */
.odx-scard {
    background: #0a1020 !important;
    border: 1px solid rgba(255, 255, 255, .05) !important;
    border-radius: 10px !important;
    padding: 2rem !important;
    transition: all .4s !important;
    position: relative !important;
    overflow: hidden !important;
}
.odx-scard::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, #1a5ca8, #f7941d) !important;
    opacity: 0 !important;
    transition: opacity .3s !important;
}
.odx-scard:hover {
    background: #0e1630 !important;
    border-color: rgba(255, 255, 255, .08) !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .4) !important;
}
.odx-scard:hover::before { opacity: 1 !important; }
.odx-scard-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 10px !important;
    background: rgba(26, 92, 168, .1) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.2rem !important;
    color: #3a8ee8 !important;
    margin-bottom: 1.2rem !important;
}
.odx-scard h3 { font-size: 1.02rem !important; font-weight: 600 !important; margin-bottom: .6rem !important; color: #e2e8f0 !important; }
.odx-scard > p { font-size: .85rem !important; color: #7a8a9a !important; line-height: 1.65 !important; }
.odx-chips { display: flex !important; flex-wrap: wrap !important; gap: 5px !important; margin-top: 1rem !important; }
.odx-chip { font-size: .65rem !important; padding: 2px 9px !important; border-radius: 100px !important; border: 1px solid rgba(255, 255, 255, .08) !important; color: #4a5a6a !important; font-weight: 500 !important; display: inline-block !important; }

/* Portfolio */
.odx-wcard {
    background: #0a1020 !important;
    border: 1px solid rgba(255, 255, 255, .05) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    transition: all .4s !important;
}
.odx-wcard:hover { border-color: rgba(255, 255, 255, .08) !important; transform: translateY(-4px) !important; box-shadow: 0 12px 40px rgba(0, 0, 0, .4) !important; }
.odx-wcard-vis { height: 200px !important; background: linear-gradient(135deg, #080e1c, #0a1020) !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; }
.odx-wcard-vis img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.odx-wcard-body { padding: 1.8rem 2rem !important; }
.odx-wcard-tag { font-size: .65rem !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 2px !important; color: #f7941d !important; margin-bottom: .5rem !important; display: block !important; }
.odx-wcard-body h3 { font-size: 1.12rem !important; font-weight: 600 !important; margin-bottom: .6rem !important; color: #e2e8f0 !important; }
.odx-wcard-body > p { font-size: .85rem !important; color: #7a8a9a !important; margin-bottom: 1rem !important; }
.odx-arrow-link { color: #f7941d !important; font-size: .82rem !important; font-weight: 600 !important; transition: letter-spacing .3s !important; }
.odx-arrow-link:hover { letter-spacing: 1px !important; }

/* Process */
.odx-pstep { text-align: center !important; padding: 2rem 1.5rem !important; background: #0a1020 !important; border: 1px solid rgba(255, 255, 255, .05) !important; border-radius: 10px !important; transition: all .3s !important; }
.odx-pstep:hover { border-color: rgba(247, 148, 29, .3) !important; transform: translateY(-4px) !important; }
.odx-pnum { font-size: 1.8rem !important; font-weight: 800 !important; color: #f7941d !important; opacity: .4 !important; margin-bottom: .8rem !important; }
.odx-pstep h3 { font-size: .95rem !important; font-weight: 600 !important; margin-bottom: .5rem !important; color: #e2e8f0 !important; }
.odx-pstep p { font-size: .82rem !important; color: #7a8a9a !important; }

/* Pricing */
.odx-prcard { background: #0a1020 !important; border: 1px solid rgba(255, 255, 255, .05) !important; border-radius: 14px !important; padding: 2.5rem 2rem !important; transition: all .4s !important; position: relative !important; }
.odx-prcard:hover { transform: translateY(-4px) !important; box-shadow: 0 12px 40px rgba(0, 0, 0, .4) !important; }
.odx-prcard-feat { border-color: rgba(247, 148, 29, .4) !important; background: linear-gradient(180deg, rgba(247, 148, 29, .03), #0a1020) !important; }
.odx-popular-tag { position: absolute !important; top: -11px !important; left: 50% !important; transform: translateX(-50%) !important; background: #f7941d !important; color: #fff !important; font-size: .62rem !important; font-weight: 700 !important; letter-spacing: 1.5px !important; padding: 4px 14px !important; border-radius: 100px !important; text-transform: uppercase !important; }
.odx-prcard h3 { font-size: 1.12rem !important; font-weight: 600 !important; margin-bottom: .3rem !important; color: #e2e8f0 !important; }
.odx-prsub { font-size: .82rem !important; color: #7a8a9a !important; margin-bottom: 1.5rem !important; }
.odx-prval { font-size: 2.6rem !important; font-weight: 800 !important; margin-bottom: .3rem !important; color: #e8ecf0 !important; }
.odx-prval span { font-size: .85rem !important; color: #4a5a6a !important; font-weight: 400 !important; }
.odx-prcard ul { list-style: none !important; padding: 0 !important; margin: 1.5rem 0 2rem !important; }
.odx-prcard li { padding: .5rem 0 !important; border-bottom: 1px solid rgba(255, 255, 255, .04) !important; font-size: .85rem !important; color: #7a8a9a !important; list-style: none !important; }
.odx-prcard li::before { content: '✓ ' !important; color: #00d68f !important; font-weight: 700 !important; }

/* Testimonials */
.odx-tcard { background: #0a1020 !important; border: 1px solid rgba(255, 255, 255, .05) !important; border-radius: 10px !important; padding: 2rem !important; }
.odx-tstars { color: #f7941d !important; font-size: .85rem !important; margin-bottom: 1rem !important; letter-spacing: 2px !important; }
.odx-tcard blockquote { font-size: .9rem !important; color: #7a8a9a !important; font-style: italic !important; line-height: 1.7 !important; margin: 0 0 1.5rem !important; padding: 0 !important; border: none !important; }
.odx-tauthor { display: flex !important; align-items: center !important; gap: 12px !important; }
.odx-tavatar { width: 38px !important; height: 38px !important; border-radius: 50% !important; background: rgba(26, 92, 168, .1) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-weight: 700 !important; font-size: .8rem !important; color: #3a8ee8 !important; flex-shrink: 0 !important; }
.odx-tauthor strong { font-size: .85rem !important; color: #e2e8f0 !important; }
.odx-tauthor small { font-size: .72rem !important; color: #4a5a6a !important; }

/* FAQ */
.odx-faqlist { max-width: 720px !important; margin: 0 auto !important; }
.odx-faq-item { border-bottom: 1px solid rgba(255, 255, 255, .05) !important; }
.odx-faq-q { width: 100% !important; background: none !important; border: none !important; text-align: left !important; padding: 1.3rem 0 !important; font-size: .95rem !important; font-weight: 600 !important; color: #e2e8f0 !important; cursor: pointer !important; display: flex !important; justify-content: space-between !important; align-items: center !important; font-family: 'Sora', sans-serif !important; transition: color .3s !important; }
.odx-faq-q:hover { color: #f7941d !important; }
.odx-faq-icon { font-size: 1.3rem !important; color: #f7941d !important; transition: transform .3s !important; font-weight: 300 !important; }
.odx-faq-item.open .odx-faq-icon { transform: rotate(45deg) !important; }
.odx-faq-ans { max-height: 0 !important; overflow: hidden !important; transition: max-height .4s ease !important; }
.odx-faq-item.open .odx-faq-ans { max-height: 300px !important; }
.odx-faq-ans p { padding-bottom: 1.3rem !important; font-size: .88rem !important; color: #7a8a9a !important; }

/* Contact */
.odx-contact-wrap { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 3rem !important; }
.odx-contact-left h3 { font-size: 1.5rem !important; font-weight: 700 !important; margin-bottom: .8rem !important; color: #e2e8f0 !important; }
.odx-contact-left > p { color: #7a8a9a !important; margin-bottom: 2rem !important; }
.odx-contact-channels { display: flex !important; flex-direction: column !important; gap: 1rem !important; }
.odx-ch-item { display: flex !important; align-items: center !important; gap: 14px !important; padding: 1rem 1.2rem !important; background: #0a1020 !important; border: 1px solid rgba(255, 255, 255, .05) !important; border-radius: 10px !important; transition: border-color .3s !important; }
.odx-ch-item:hover { border-color: rgba(255, 255, 255, .08) !important; }
.odx-ch-ic { width: 38px !important; height: 38px !important; border-radius: 8px !important; background: rgba(26, 92, 168, .1) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 1rem !important; flex-shrink: 0 !important; }
.odx-ch-item small { font-size: .65rem !important; text-transform: uppercase !important; letter-spacing: 1.5px !important; color: #3a4a5a !important; font-weight: 600 !important; }
.odx-ch-item a { color: #c0c8d4 !important; font-weight: 500 !important; font-size: .88rem !important; }
.odx-ch-item a:hover { color: #f7941d !important; }

.odx-contact-form { background: #0a1020 !important; border: 1px solid rgba(255, 255, 255, .05) !important; border-radius: 14px !important; padding: 2.5rem !important; }
.odx-frow { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 1rem !important; margin-bottom: .5rem !important; }
.odx-ff { margin-bottom: .8rem !important; }
.odx-ff label { display: block !important; font-size: .7rem !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 1px !important; color: #6a7a8a !important; margin-bottom: .4rem !important; }
.odx-ff input, .odx-ff textarea, .odx-ff select {
    width: 100% !important;
    background: #050a14 !important;
    border: 1px solid rgba(255, 255, 255, .08) !important;
    border-radius: 7px !important;
    padding: .75rem 1rem !important;
    color: #e2e8f0 !important;
    font-family: 'Sora', sans-serif !important;
    font-size: .88rem !important;
    outline: none !important;
    transition: border-color .3s !important;
}
.odx-ff input:focus, .odx-ff textarea:focus, .odx-ff select:focus { border-color: #f7941d !important; }
.odx-ff textarea { resize: vertical !important; min-height: 90px !important; }
.odx-ff select { appearance: auto !important; }

/* Footer */
.odx-footer { border-top: 1px solid rgba(255, 255, 255, .04) !important; padding: 4rem 0 2rem !important; background: #060c18 !important; }
.odx-footer-grid { display: grid !important; grid-template-columns: 2fr 1fr 1fr 1fr !important; gap: 3rem !important; margin-bottom: 3rem !important; }
.odx-fcol h4 { font-size: .68rem !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 2px !important; color: #3a4a5a !important; margin-bottom: 1rem !important; }
.odx-fcol a { display: block !important; color: #6a7a8a !important; font-size: .85rem !important; padding: .3rem 0 !important; transition: color .3s !important; }
.odx-fcol a:hover { color: #f7941d !important; }
.odx-footer-bar { border-top: 1px solid rgba(255, 255, 255, .04) !important; padding-top: 2rem !important; text-align: center !important; }
.odx-footer-bar p { font-size: .75rem !important; color: #3a4a5a !important; }

/* Scroll Reveal */
.sr { opacity: 0 !important; transform: translateY(35px) !important; transition: all .8s cubic-bezier(.16, 1, .3, 1) !important; }
.sr.visible { opacity: 1 !important; transform: none !important; }

/* === RESPONSIVE === */
@media (max-width: 1024px) {
    .odx-grid3 { grid-template-columns: repeat(2, 1fr) !important; }
    .odx-grid4 { grid-template-columns: repeat(2, 1fr) !important; }
    .odx-footer-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 768px) {
    .odx-menu { display: none !important; }
    .odx-menu.open { display: flex !important; flex-direction: column !important; position: absolute !important; top: 72px !important; left: 0 !important; right: 0 !important; background: rgba(4, 8, 18, .98) !important; backdrop-filter: blur(20px) !important; padding: 2rem !important; gap: 1.5rem !important; border-bottom: 1px solid rgba(255, 255, 255, .06) !important; z-index: 9999 !important; }
    .odx-burger { display: flex !important; }
    .odx-container { padding: 0 1.2rem !important; }
    .odx-hero-inner { grid-template-columns: 1fr !important; gap: 2rem !important; padding: 3rem 1.2rem !important; }
    .odx-hero-right { display: none !important; }
    .odx-stats-row { flex-wrap: wrap !important; gap: 1.5rem !important; }
    .odx-grid3, .odx-grid2, .odx-grid4 { grid-template-columns: 1fr !important; }
    .odx-contact-wrap { grid-template-columns: 1fr !important; }
    .odx-frow { grid-template-columns: 1fr !important; }
    .odx-footer-grid { grid-template-columns: 1fr !important; gap: 2rem !important; }
}
