/*
Theme Name: ASSEX Market Broker
Theme URI: https://example.com/assex-market-broker
Description: Premium fintech theme for ASSEX MARKET BROKER. Designed for Elementor Free and the ASSEX Market Broker Investment Platform plugin. Brand colours, fonts and logo are set in ASSEX Broker → Branding.
Author: ASSEX MARKET BROKER
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: assex-theme
*/
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--amb-sans,system-ui,-apple-system,'Segoe UI',sans-serif);color:var(--amb-text,#1B2433);background:#fff;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--amb-display,Georgia,serif);font-weight:600;letter-spacing:-.015em;line-height:1.15;color:inherit}
a{color:inherit}img{max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--amb-emerald,#10B981);outline-offset:3px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip-link{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;z-index:999}.skip-link:focus{left:8px}

/* branded loader */
.amb-loader{position:fixed;inset:0;z-index:9999;background:var(--amb-navy,#0B1423);display:grid;place-items:center;transition:opacity .4s,visibility .4s;animation:ambLoaderOut .01s 3s forwards}
.amb-loader.done{opacity:0;visibility:hidden}
.amb-loader div{display:grid;justify-items:center;gap:16px;color:#aebbd0;font-size:13px}
.amb-loader i{display:block;width:140px;height:3px;background:rgba(255,255,255,.12);border-radius:3px;overflow:hidden;position:relative}
.amb-loader i::after{content:"";position:absolute;inset:0 auto 0 0;width:40%;background:var(--amb-emerald,#10B981);animation:ambBar 1s ease-in-out infinite}
@keyframes ambBar{from{transform:translateX(-110%)}to{transform:translateX(280%)}}
@keyframes ambLoaderOut{to{opacity:0;visibility:hidden}}

/* header */
.site-header{position:sticky;top:0;z-index:100;background:var(--amb-navy,#0B1423);color:#fff;border-bottom:1px solid rgba(255,255,255,.07)}
.admin-bar .site-header{top:32px}
.hd{max-width:1240px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:28px}
.site-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;font-family:var(--amb-display,Georgia,serif);font-weight:600;font-size:18px;letter-spacing:.03em}
.site-brand img{max-height:40px;width:auto}
.primary-nav{flex:1}
.primary-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0;justify-content:center}
.primary-nav a{display:block;padding:8px 14px;border-radius:8px;text-decoration:none;color:#c3cee0;font-size:15px;font-weight:500}
.primary-nav a:hover,.primary-nav .current-menu-item>a,.primary-nav .current_page_item>a{color:#fff;background:rgba(255,255,255,.07)}
.hd-actions{display:flex;gap:14px;align-items:center}
.amb-link-login{color:#d8e1f0;text-decoration:none;font-weight:600;font-size:15px}.amb-link-login:hover{color:#fff}
.nav-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;width:42px;height:42px;cursor:pointer;margin-left:auto}
@media (max-width:960px){
 .nav-toggle{display:grid;place-items:center}
 .primary-nav,.hd-actions{display:none;width:100%}
 .hd{flex-wrap:wrap;gap:12px}
 .menu-open .primary-nav,.menu-open .hd-actions{display:flex;flex-direction:column;align-items:stretch}
 .menu-open .primary-nav ul{flex-direction:column}
 .menu-open .hd-actions{padding-bottom:10px}
 .admin-bar .site-header{top:46px}
}

/* generic content */
.site-main{min-height:60vh}
.amb-prose{max-width:820px;margin:0 auto;padding:56px 24px}
.elementor-section-boxed>.elementor-container{max-width:1200px}

/* Elementor sections (classes are set in the page data and can be edited in Elementor → Advanced → CSS Classes) */
.amb-sec{padding:84px 0}
.amb-sec .elementor-widget:not(:last-child){margin-bottom:22px}
.amb-sec h2.elementor-heading-title{font-size:clamp(28px,3.4vw,42px)}
.amb-light{background:#fff;color:var(--amb-text,#1B2433)}
.amb-paper{background:var(--amb-paper,#F4F6F9);color:var(--amb-text,#1B2433)}
.amb-dark,.amb-hero,.amb-pagehead{background:var(--amb-navy,#0B1423);color:#d3dcec}
.amb-dark .elementor-heading-title,.amb-hero .elementor-heading-title,.amb-pagehead .elementor-heading-title,.amb-dark .elementor-icon-box-title,.amb-dark .elementor-icon-box-title a{color:#fff}
.amb-dark .elementor-widget-text-editor,.amb-dark .elementor-icon-box-description,.amb-pagehead .elementor-widget-text-editor{color:#b7c3d8}
.amb-feature-row{padding:0 0 10px}.amb-feature-row+.amb-feature-row{padding-top:0}
.amb-light.amb-feature-row{padding-top:10px}
.amb-hero{padding:96px 0 88px;position:relative;overflow:hidden}
.amb-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 20%,rgba(16,185,129,.16),transparent 60%);pointer-events:none}
.amb-hero .elementor-container{align-items:center;gap:20px}
.amb-hero-title .elementor-heading-title{font-size:clamp(38px,5.2vw,66px);line-height:1.06;max-width:15ch;letter-spacing:-.025em}
.amb-hero-lead{font-size:19px;max-width:54ch;color:#bccade}
.amb-fine{font-size:13px;color:#8d9bb3;max-width:60ch}.amb-fine a{color:var(--amb-gold,#C8A24A)}
.amb-pagehead{padding:70px 0 54px;border-bottom:3px solid var(--amb-gold,#C8A24A)}
.amb-pagehead .elementor-heading-title{font-size:clamp(32px,4vw,52px)}
.amb-narrow .elementor-container{max-width:560px}
.amb-cta{text-align:center}.amb-cta .elementor-widget{margin-left:auto;margin-right:auto;max-width:640px}

/* Elementor buttons */
.amb-el-btn{display:inline-block;margin-right:12px}
.amb-el-btn .elementor-button{background:var(--amb-emerald,#10B981);color:#04170f;border-radius:var(--amb-radius,10px);font-family:var(--amb-sans);font-weight:700;padding:14px 26px;font-size:16px;transition:filter .15s,transform .15s}
.amb-el-btn .elementor-button:hover{filter:brightness(1.08);color:#04170f}
.amb-el-btn-ghost .elementor-button{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
.amb-el-btn-ghost .elementor-button:hover{color:#fff;background:rgba(255,255,255,.08)}
.amb-el-btn-ghost-dark .elementor-button{background:transparent;color:var(--amb-navy,#0B1423);border:1px solid #b9c5d8}
.amb-el-btn-ghost-dark .elementor-button:hover{color:var(--amb-navy,#0B1423);background:#fff}

/* feature / step boxes */
.amb-el-feature{height:100%;padding:0 12px 0 0}
.amb-el-feature .elementor-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:rgba(16,185,129,.12);color:var(--amb-emerald,#10B981);font-size:20px!important;margin-bottom:6px}
.amb-el-feature .elementor-icon-box-title{font-size:20px;margin:0 0 6px;font-family:var(--amb-display)}
.amb-el-feature .elementor-icon-box-description{font-size:15.5px;color:#57657c;margin:0}
.amb-steps .amb-el-feature{border-top:2px solid var(--amb-emerald,#10B981);padding-top:18px}
.amb-dark .amb-el-feature .elementor-icon-box-description{color:#a9b7cd}
.amb-risk-box{border-left:3px solid var(--amb-gold,#C8A24A);background:#fff;padding:18px 22px;border-radius:0 10px 10px 0;color:var(--amb-text,#1B2433)}
.amb-paper .amb-risk-box{background:#fff}
.amb-el-list .elementor-icon-list-icon{color:var(--amb-emerald,#10B981)}

/* accordion */
.amb-el-acc .elementor-accordion-item{border:0;border-bottom:1px solid #dde4ee}
.amb-el-acc .elementor-tab-title{padding:20px 0;font-family:var(--amb-display);font-size:20px;color:var(--amb-text,#1B2433)}
.amb-el-acc .elementor-tab-title.elementor-active{color:var(--amb-text,#1B2433)}
.amb-el-acc .elementor-tab-content{border:0;padding:0 0 20px;color:#4c5b72}
.amb-el-acc .elementor-accordion-icon{color:var(--amb-emerald,#10B981)}

/* legal */
.amb-legal .elementor-widget-text-editor{max-width:780px}.amb-legal h2{font-size:24px;margin:28px 0 8px}
.amb-legal-note{background:#fff7e0;border:1px solid var(--amb-gold,#C8A24A);border-radius:10px;padding:12px 16px;font-size:14px}

/* footer */
.site-footer{background:var(--amb-navy,#0B1423);color:#a9b6cc;padding:64px 0 28px;font-size:15px}
.ft{max-width:1240px;margin:0 auto;padding:0 24px}
.ft-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}
@media(max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.ft-grid{grid-template-columns:1fr}}
.site-footer h4{font-family:var(--amb-sans);font-size:14px;color:#fff;margin:0 0 12px}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.site-footer a{text-decoration:none}.site-footer a:hover{color:#fff}
.ft-risk{margin-top:36px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#8d9bb3;display:grid;gap:10px}
.ft-risk strong{color:#cfd9ea}
.ft-bottom{margin-top:18px;font-size:13px;color:#7c8aa3}

.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.amb-loader{display:none}}

/* Fallback markup (used when Elementor is not active) mirrors the Elementor layout */
.amb-fb-row{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;gap:36px;flex-wrap:wrap;align-items:center}
.amb-fb-col{flex:1 1 280px;min-width:0}.amb-fb-col>*{margin-bottom:20px}
.amb-fb-acc{border-bottom:1px solid #dde4ee;padding:16px 0}.amb-fb-acc summary{cursor:pointer;font-family:var(--amb-display);font-size:20px}
.amb-fb-list{padding-left:20px;display:grid;gap:8px}
.amb-fb-col .elementor-button{display:inline-block;text-decoration:none}
.amb-dark .elementor-button,.amb-hero .elementor-button{text-decoration:none}
.amb-fb-col .elementor-icon{display:block;width:44px;height:44px;border-radius:12px;background:rgba(16,185,129,.14);margin-bottom:10px}
.amb-fb-row .amb-el-feature{padding:0}
