/* FXDog AI-first site preview. Scoped classes preserve existing service pages. */
:root { --ai-ink:#edf6ff; --ai-muted:#a8bdd3; --ai-ice:#bceeff; --ai-line:rgba(139,198,226,.2); --ai-cyan:#55dcf4; --ai-violet:#a994ff; }
html { scroll-behavior:smooth; }
body.ai-site { background:#07101d; color:var(--ai-ink); }
.ai-container { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.ai-top { position:relative; z-index:50; height:72px; padding-inline:max(24px,calc((100vw - 1180px)/2)); gap:24px; background:#08111f; border-color:#26374b; }
.ai-top .ai-brand { flex:none; min-width:156px; }
.ai-top .brand-logo { max-width:140px; max-height:48px; object-fit:contain; }
.ai-top .ai-nav { height:44px; background:transparent; border:0; box-shadow:none; gap:2px; padding:0; }
.ai-top .ai-nav a { height:42px; padding:0 11px; border-radius:9px; color:#a7bed2; font-weight:500; }
.ai-top .ai-nav a.active { background:#122e40; box-shadow:inset 0 0 0 1px #2c6878; color:#8ce8f4; }
.ai-top .ai-nav a:hover { background:#142b3e; color:#fff; }
.ai-top .tools { align-items:center; }
.ai-top .theme { transform:none; margin:0; }
.ai-top .theme:hover { transform:translateY(-1px); }
.ai-top .login { background:transparent; border-color:#334e64; box-shadow:none; color:#cde2ef; }
.ai-top .signup { background:#42d0e3; color:#062130; box-shadow:none; }
.ai-menu-toggle { display:none; }
.ai-overline { display:block; color:#6edfeb; font-size:11px; letter-spacing:.22em; font-weight:800; margin-bottom:18px; }
.ai-hero { position:relative; overflow:hidden; background:radial-gradient(circle at 73% 38%,#17426b 0%,#102841 28%,transparent 56%),linear-gradient(130deg,#07101e 4%,#0b2139 62%,#092c3e 100%); min-height:690px; }
.ai-hero:before { content:""; position:absolute; inset:0; background-image:linear-gradient(#5f9ac310 1px,transparent 1px),linear-gradient(90deg,#5f9ac310 1px,transparent 1px); background-size:46px 46px; mask-image:linear-gradient(90deg,#0009,transparent 80%); }
.ai-hero-glow { position:absolute; width:740px; height:740px; right:-190px; top:-200px; border:1px solid #6ad7eb1f; border-radius:50%; box-shadow:0 0 0 80px #35b6e408,0 0 0 160px #35b6e405; pointer-events:none; }
.ai-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr 560px; gap:44px; align-items:center; padding-block:76px 82px; }
.ai-kicker { width:max-content; max-width:100%; display:flex; align-items:center; gap:9px; border:1px solid #49d0e362; background:#0f354b9c; border-radius:999px; padding:8px 14px; color:#a6ebf2; font-size:12px; font-weight:700; letter-spacing:.08em; }
.ai-live-dot { width:7px; height:7px; border-radius:50%; background:#6fefbd; box-shadow:0 0 12px #6fefbd; }
.ai-hero h1 { margin:24px 0 22px; font-size:clamp(42px,4.5vw,64px); line-height:1.2; letter-spacing:-.055em; font-weight:800; color:#f6fbff; }
.ai-hero h1 em { font-style:normal; color:#72dfef; }
.ai-lead { max-width:590px; color:#bed3e4; font-size:17px; line-height:1.9; margin:0; }
.ai-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.ai-btn { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:20px; padding:0 22px; border-radius:10px; text-decoration:none; font-size:14px; font-weight:800; transition:transform .2s,box-shadow .2s,background .2s; white-space:nowrap; }
.ai-btn:hover { transform:translateY(-2px); }
.ai-btn span { font-size:18px; font-weight:400; }
.ai-btn-primary { background:#5be2db; color:#06272e; box-shadow:0 15px 35px #16c4ce30; }
.ai-btn-primary:hover { color:#06272e; background:#8bf3eb; box-shadow:0 18px 40px #16c4ce50; }
.ai-btn-ghost { color:#e1f0fa; border:1px solid #6f96b4; background:#ffffff0b; }
.ai-btn-ghost:hover { color:#fff; background:#ffffff19; }
.ai-hero-proof { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:27px; color:#94b3c7; font-size:12px; }
.ai-hero-proof i { width:3px; height:3px; border-radius:50%; background:#5d92a3; }
.ai-demo-wrap { position:relative; }
.ai-demo-orbit { position:absolute; inset:38px -17px -20px 38px; border:1px solid #66d2ed3b; border-radius:25px; transform:rotate(5deg); background:#55d9ed09; }
.ai-demo-window { position:relative; overflow:hidden; border:1px solid #6daac07a; border-radius:17px; background:#f4f8fc; box-shadow:0 35px 100px #0008,0 0 70px #12aaca25; color:#14243a; }
.ai-demo-title { height:52px; display:flex; align-items:center; gap:9px; padding:0 18px; background:#142c43; color:#eaf8ff; font-size:14px; }
.ai-demo-title small { color:#a9c2d2; font-size:11px; }
.ai-demo-mark { display:grid; place-items:center; width:27px; height:27px; background:#64e4ed; border-radius:9px; color:#103647; font-size:18px; }
.ai-demo-online { margin-left:auto; color:#a6e9c8; font-size:11px; }
.ai-demo-online b { display:inline-block; width:6px; height:6px; border-radius:50%; background:#74e6b2; margin-right:4px; }
.ai-demo-tabs { display:flex; align-items:center; gap:5px; background:#e8f0f7; border-bottom:1px solid #c8d9e7; padding:9px 12px; white-space:nowrap; font-size:12px; color:#54718b; }
.ai-demo-tabs span { padding:6px 11px; border-radius:5px; }
.ai-demo-tabs .selected { color:#0a5871; background:#c9edf3; font-weight:700; }
.ai-demo-tabs .ai-demo-symbol { margin-left:auto; color:#153a55; background:#fff; border:1px solid #c8d8e5; }
.ai-demo-chat { min-height:322px; padding:24px 23px 10px; background:linear-gradient(#f9fcff,#f4f8fc); }
.ai-demo-msg { display:flex; align-items:flex-start; gap:11px; margin-bottom:24px; }
.ai-demo-avatar { flex:none; width:29px; height:29px; display:grid; place-items:center; border-radius:9px; background:#dbe9f3; color:#27516a; font-size:12px; font-weight:800; }
.ai-demo-question p { margin:0; background:#e4f3fb; padding:10px 13px; border-radius:3px 12px 12px 12px; font-size:13px; line-height:1.7; color:#234158; }
.ai-demo-answer .ai-demo-avatar { color:#0c586a; background:#b5f0f1; }
.ai-demo-answer > div:last-child { background:#fff; border:1px solid #e1e9f0; border-radius:3px 12px 12px 12px; padding:13px 14px; box-shadow:0 8px 22px #143e6209; }
.ai-demo-answer strong { color:#0693ae; font-size:12px; }
.ai-demo-answer p { margin:7px 0 13px; color:#23384d; font-size:13px; line-height:1.75; }
.ai-demo-tags { display:flex; flex-wrap:wrap; gap:6px; }
.ai-demo-tags span { background:#eaf7f8; color:#338195; border-radius:4px; padding:4px 7px; font-size:10px; }
.ai-demo-input { display:flex; align-items:center; justify-content:space-between; margin:0 15px 15px; padding:9px 10px 9px 14px; border:1px solid #d0deea; border-radius:7px; background:#fff; color:#9baebd; font-size:12px; }
.ai-demo-input span { background:#0ca8bc; color:#fff; border-radius:4px; padding:6px 13px; }
.ai-demo-caption { margin-top:11px; text-align:right; color:#87a4b9; font-size:10px; }
.ai-product-shot { position:relative; justify-self:center; width:min(100%,510px); margin:0; }
.ai-product-shot a { display:block; padding:7px; border:1px solid #5d9abd88; border-radius:17px; background:#dcebf8; box-shadow:0 30px 75px #0008,0 0 60px #168eff22; transition:transform .2s,border-color .2s; }
.ai-product-shot .ai-shot-light { display:none; }
.ai-product-shot .ai-shot-dark { background:#0e1830; }
body.light .ai-product-shot .ai-shot-light { display:block; }
body.light .ai-product-shot .ai-shot-dark { display:none; }
.ai-product-shot a:hover { transform:translateY(-3px); border-color:var(--cyan); }
.ai-product-shot img { display:block; width:100%; height:auto; border-radius:10px; }
.ai-product-shot figcaption { margin-top:12px; text-align:center; color:#9db8ce; font-size:11px; }
.ai-section { padding:100px 0; }
.ai-section-intro { background:#0a1423; }
.ai-section-head { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:34px; }
.ai-section-head h2,.ai-flow-grid h2,.ai-partner-band h2,.ai-final h2 { margin:0; font-size:clamp(30px,3.4vw,44px); line-height:1.27; letter-spacing:-.035em; color:#f5fbff; }
.ai-section-head > p { max-width:360px; margin:0 0 4px; color:#a8bfd0; line-height:1.8; font-size:14px; }
.ai-feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; }
.ai-feature { min-height:310px; position:relative; overflow:hidden; padding:25px; border:1px solid #274154; border-radius:15px; background:linear-gradient(145deg,#12253a,#0d1b2b); }
.ai-feature:after { content:""; position:absolute; width:170px; height:170px; right:-80px; top:-70px; border:1px solid #74e0e328; border-radius:50%; box-shadow:0 0 0 35px #74e0e309; }
.ai-feature-index { color:#6fd7e7; font-size:10px; letter-spacing:.15em; font-weight:800; }
.ai-feature-icon { width:49px; height:49px; margin:29px 0 17px; display:grid; place-items:center; border:1px solid #3a9ca8; border-radius:12px; background:#143b4b; color:#80ecf3; font-size:29px; }
.ai-feature h3 { font-size:21px; margin:0 0 11px; color:#f2fbff; }
.ai-feature p { margin:0; min-height:86px; color:#a7bfd1; line-height:1.8; font-size:13px; }
.ai-feature-example { border-top:1px solid #2b485a; padding-top:15px; color:#85d5de; font-size:12px; }
.ai-flow-section { background:#0c1b2a; }
.ai-flow-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:90px; align-items:center; }
.ai-flow-grid p { color:#aec4d3; line-height:1.85; margin:22px 0 26px; max-width:460px; }
.ai-text-link { color:#77e3e8; text-decoration:none; font-size:14px; font-weight:700; }
.ai-text-link span { margin-left:8px; }
.ai-flow-list { border-top:1px solid #34536a; }
.ai-flow-list > div { display:flex; align-items:flex-start; gap:25px; padding:24px 0; border-bottom:1px solid #34536a; }
.ai-flow-list b { color:#63d9e6; font-size:14px; font-family:Consolas,monospace; }
.ai-flow-list strong { display:block; font-size:17px; color:#edf9ff; }
.ai-flow-list small { display:block; margin-top:9px; color:#9cb4c7; font-size:12px; }
.ai-support-section { background:#0a1423; }
.ai-support-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.ai-support-grid a { position:relative; display:flex; flex-direction:column; gap:12px; min-height:174px; padding:25px; border:1px solid #2c465c; border-radius:12px; text-decoration:none; background:#102239; transition:transform .2s,border-color .2s; }
.ai-support-grid a:hover { transform:translateY(-3px); border-color:#5bcfdc; }
.ai-support-grid span { color:#60dbe6; font-size:26px; }
.ai-support-grid strong { color:#f2fbff; font-size:17px; }
.ai-support-grid small { color:#9fb7c8; font-size:12px; }
.ai-support-grid i { position:absolute; right:22px; top:23px; color:#69cfdc; font-style:normal; }
.ai-partner-band { padding:92px 0; background:linear-gradient(125deg,#0b5060,#17405d 55%,#20285d); }
.ai-partner-grid { display:grid; grid-template-columns:1fr 430px; align-items:center; gap:60px; }
.ai-partner-band .ai-overline { color:#b1f5e9; }
.ai-partner-band p { max-width:600px; color:#d1e4ed; font-size:15px; line-height:1.85; margin:20px 0 26px; }
.ai-btn-light { background:#efffff; color:#0e4454; }
.ai-btn-light:hover { color:#0e4454; background:#fff; }
.ai-partner-visual { padding:28px; border:1px solid #b5e8f042; border-radius:24px; background:#ffffff0b; transform:rotate(3deg); }
.ai-partner-card { padding:26px; border:1px solid #9adce27d; border-radius:15px; background:#102d43; box-shadow:0 20px 40px #001b3260; }
.ai-partner-card > span { display:block; color:#80e3ed; font-size:12px; letter-spacing:.2em; margin-bottom:26px; }
.ai-partner-card b { display:block; color:#effbff; font-size:22px; margin-bottom:28px; }
.ai-partner-card div { display:flex; flex-wrap:wrap; gap:8px; }
.ai-partner-card i { border:1px solid #68bbc584; border-radius:20px; padding:6px 12px; color:#c1e9ed; font-size:11px; font-style:normal; }
.ai-final { padding:77px 0; background:#0a1423; }
.ai-final-grid { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.ai-final p { color:#b4cad7; font-size:15px; margin:14px 0 13px; }
.ai-final small { display:block; max-width:700px; color:#8ca5b8; font-size:11px; line-height:1.7; }
.ai-footer { border-top:1px solid #264253; background:#07101c; padding:45px 0 27px; }
.ai-footer .ai-container { display:grid; grid-template-columns:240px 1fr; gap:20px; }
.ai-footer strong { display:block; font-size:23px; letter-spacing:.06em; color:#fff; }
.ai-footer span { display:block; margin-top:8px; color:#91aabd; font-size:12px; }
.ai-footer nav { display:flex; justify-content:flex-end; align-content:start; flex-wrap:wrap; gap:13px 19px; }
.ai-footer a { color:#a6bbca; text-decoration:none; font-size:12px; }
.ai-footer a:hover { color:#6be4e9; }
.ai-footer small { grid-column:1/-1; border-top:1px solid #243b4e; padding-top:20px; color:#7690a4; font-size:11px; }
/* Business cooperation page */
.ai-partner-page { min-height:100vh; background:#091625; color:#edf8ff; }
.ai-partner-hero { padding:94px 0 86px; background:radial-gradient(circle at 80% 15%,#24647b 0,transparent 48%),linear-gradient(135deg,#0c2334,#0d3444); }
.ai-partner-hero h1 { color:#fff; font-size:clamp(38px,5vw,58px); line-height:1.2; letter-spacing:-.04em; max-width:810px; margin:0 0 22px; }
.ai-partner-hero p { max-width:710px; color:#c8dde7; line-height:1.9; font-size:16px; }
.ai-partner-types { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:-35px; position:relative; }
.ai-partner-type { padding:31px; border:1px solid #2d5870; border-radius:15px; background:#102b40; box-shadow:0 20px 50px #0003; }
.ai-partner-type b { display:block; color:#6be4e9; font-size:12px; letter-spacing:.18em; }
.ai-partner-type h2 { margin:14px 0 12px; font-size:24px; color:#f5fcff; }
.ai-partner-type p { color:#aac4d3; font-size:14px; line-height:1.8; margin:0; }
.ai-partner-form-section { padding:90px 0 115px; }
.ai-partner-form-section h2 { font-size:36px; color:#f4fbff; margin:0 0 10px; }
.ai-partner-form-section > .ai-container > p { color:#9eb9c9; max-width:660px; line-height:1.8; }
.ai-partner-form { max-width:790px; margin-top:32px; display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:31px; border:1px solid #2a5065; border-radius:15px; background:#10273a; }
.ai-partner-form label { color:#b6d1dd; font-size:13px; font-weight:700; }
.ai-partner-form input,.ai-partner-form select,.ai-partner-form textarea { width:100%; display:block; margin-top:8px; background:#0b1d2d; color:#f0fbff; border:1px solid #3b6376; border-radius:8px; padding:12px 13px; font:inherit; outline:none; }
.ai-partner-form input:focus,.ai-partner-form select:focus,.ai-partner-form textarea:focus { border-color:#70dbe6; box-shadow:0 0 0 3px #70dbe623; }
.ai-partner-form textarea { min-height:130px; resize:vertical; }
.ai-partner-form .wide { grid-column:1/-1; }
.ai-partner-form button { width:max-content; border:0; cursor:pointer; }
.ai-partner-form-note { color:#8aa7b9; font-size:11px; line-height:1.7; }
body.light .ai-top { background:#f3faff; border-color:#cfe1ec; }
body.light .ai-top .ai-nav a { color:#557187; }
body.light .ai-top .ai-nav a.active { color:#146478; background:#d5f4f5; box-shadow:inset 0 0 0 1px #89cbd0; }
body.light .ai-top .ai-nav a:hover { color:#0b4262; background:#e5f3fa; }
body.light .ai-top .login { color:#215067; border-color:#a6c9d7; }
body.light .ai-top .signup { color:#063342; }
@media(max-width:1120px) { .ai-top { padding-inline:22px; gap:10px; }.ai-top .ai-brand { min-width:118px; }.ai-top .brand-logo { max-width:117px; }.ai-top .ai-nav a { padding:0 8px; font-size:12px; }.ai-top .tools { gap:5px; }.ai-top .signup { padding:10px; }.ai-hero-grid { grid-template-columns:1fr 500px; gap:25px; } }
@media(max-width:920px) { .ai-hero-grid { grid-template-columns:1fr; padding-block:72px 82px; }.ai-hero-copy { max-width:730px; }.ai-demo-wrap { max-width:660px; margin-inline:auto; }.ai-flow-grid { gap:40px; }.ai-partner-grid { grid-template-columns:1fr 340px; gap:30px; } }
@media(max-width:760px) { .ai-container { width:min(100% - 36px,1180px); }.ai-top { height:68px; justify-content:space-between; }.ai-top .ai-brand { min-width:0; }.ai-top .brand-logo { max-width:120px; }.ai-top .ai-nav { display:none; position:absolute; top:68px; left:0; right:0; height:auto; padding:13px 18px 18px; border:1px solid #2c5065; border-radius:0 0 14px 14px; background:#091a2a; box-shadow:0 22px 40px #0006; flex-direction:column; align-items:stretch; }.nav-open .ai-top .ai-nav { display:flex; }.ai-top .ai-nav a { width:100%; height:40px; justify-content:flex-start; }.ai-menu-toggle { display:block; order:3; border:1px solid #3c6577; border-radius:8px; padding:9px 12px; background:#102b3d; color:#d5eef4; font-size:12px; }.ai-menu-toggle span { margin-left:5px; font-size:15px; }.ai-top .tools { margin-left:auto; }.ai-top .tools .signup { display:none; }.ai-top .theme { display:none; }.ai-top .login { width:auto; height:auto; padding:9px 11px; font-size:12px; }.ai-top .login:before { display:none; }.ai-hero h1 { font-size:clamp(37px,8vw,56px); }.ai-lead { font-size:15px; }.ai-section { padding:72px 0; }.ai-section-head { display:block; }.ai-section-head > p { margin-top:17px; max-width:630px; }.ai-feature-grid,.ai-support-grid { grid-template-columns:1fr; }.ai-feature { min-height:auto; }.ai-feature p { min-height:auto; margin-bottom:24px; }.ai-flow-grid,.ai-partner-grid { grid-template-columns:1fr; }.ai-partner-visual { max-width:430px; }.ai-final-grid { align-items:flex-start; flex-direction:column; }.ai-footer .ai-container { grid-template-columns:1fr; }.ai-footer nav { justify-content:flex-start; }.ai-partner-types { grid-template-columns:1fr; }.ai-partner-form { grid-template-columns:1fr; }.ai-partner-form .wide { grid-column:auto; } body.light .ai-top .ai-nav { background:#f2faff; } }
@media(max-width:520px) { .ai-hero-grid { padding-block:55px 67px; }.ai-hero-actions { flex-direction:column; }.ai-btn { width:100%; justify-content:space-between; }.ai-demo-wrap { margin-inline:-10px; }.ai-demo-tabs { overflow:hidden; font-size:10px; }.ai-demo-tabs span { padding:6px 7px; }.ai-demo-chat { min-height:340px; padding-inline:14px; }.ai-demo-caption { text-align:center; }.ai-partner-band { padding:68px 0; }.ai-partner-hero { padding:70px 0; }.ai-partner-form { padding:20px; } }

/* Keep the original broker directory visible on the AI-first homepage. */
.ai-broker-section { padding:34px 0 80px; background:#07101d; }
.ai-broker-section .directory { margin-top:0; }
.ai-broker-section .broker { color:var(--text); }
body.light.ai-site .ai-broker-section { background:#e9f2fb; }

/* Match the existing site's light palette outside the intentionally dark product hero. */
body.light.ai-site { background:var(--bg); color:var(--text); }
body.light.ai-site .ai-section-intro,
body.light.ai-site .ai-support-section,
body.light.ai-site .ai-final { background:var(--bg); }
body.light.ai-site .ai-flow-section { background:var(--bg2); }
body.light.ai-site .ai-section-head h2,
body.light.ai-site .ai-flow-grid h2,
body.light.ai-site .ai-final h2 { color:var(--text); }
body.light.ai-site .ai-section-head > p,
body.light.ai-site .ai-flow-grid p,
body.light.ai-site .ai-final p { color:var(--muted); }
body.light.ai-site .ai-feature,
body.light.ai-site .ai-support-grid a { background:var(--surface); border-color:var(--line); }
body.light.ai-site .ai-feature h3,
body.light.ai-site .ai-support-grid strong,
body.light.ai-site .ai-flow-list strong { color:var(--text); }
body.light.ai-site .ai-feature p,
body.light.ai-site .ai-support-grid small,
body.light.ai-site .ai-flow-list small,
body.light.ai-site .ai-final small { color:var(--muted); }
body.light.ai-site .ai-feature-example,
body.light.ai-site .ai-feature-index,
body.light.ai-site .ai-flow-list b,
body.light.ai-site .ai-text-link { color:var(--cyan); }
body.light.ai-site .ai-feature-icon { background:var(--surface3); color:var(--cyan); border-color:var(--line); }
body.light.ai-site .ai-flow-list,
body.light.ai-site .ai-flow-list > div { border-color:var(--line); }
body.light.ai-site .ai-partner-page { background:var(--bg); color:var(--text); }
body.light.ai-partner-page .ai-partner-hero { background:radial-gradient(circle at 82% 12%,#b8e4f2 0,transparent 48%),linear-gradient(135deg,#f7fbff,#dcebf8); }
body.light.ai-partner-page .ai-partner-hero h1,
body.light.ai-partner-page .ai-partner-type h2,
body.light.ai-partner-page .ai-partner-form-section h2 { color:var(--text); }
body.light.ai-partner-page .ai-partner-hero p,
body.light.ai-partner-page .ai-partner-type p,
body.light.ai-partner-page .ai-partner-form-section > .ai-container > p,
body.light.ai-partner-page .ai-partner-form-note { color:var(--muted); }
body.light.ai-partner-page .ai-partner-type,
body.light.ai-partner-page .ai-partner-form { background:var(--surface); border-color:var(--line); box-shadow:0 14px 35px #174c7520; }
body.light.ai-partner-page .ai-partner-type b,
body.light.ai-partner-page .ai-overline { color:var(--cyan); }
body.light.ai-partner-page .ai-partner-form label { color:var(--text); }
body.light.ai-partner-page .ai-partner-form input,
body.light.ai-partner-page .ai-partner-form select,
body.light.ai-partner-page .ai-partner-form textarea { background:var(--surface2); border-color:var(--line); color:var(--text); }

/* Dark pages use the original site's navy surfaces and blue/cyan accents. */
body.ai-site:not(.light) { background:var(--bg); color:var(--text); }
body.ai-site:not(.light) .ai-section-intro,
body.ai-site:not(.light) .ai-support-section,
body.ai-site:not(.light) .ai-final,
body.ai-site:not(.light) .ai-broker-section { background:var(--bg); }
body.ai-site:not(.light) .ai-flow-section { background:var(--bg2); }
body.ai-site:not(.light) .ai-hero { background:radial-gradient(circle at 75% 35%,#143c78 0,transparent 47%),linear-gradient(120deg,var(--hero1),var(--hero2) 66%,#075c91); }
body.ai-site:not(.light) .ai-hero h1 em,
body.ai-site:not(.light) .ai-overline,
body.ai-site:not(.light) .ai-feature-index,
body.ai-site:not(.light) .ai-feature-example,
body.ai-site:not(.light) .ai-text-link { color:var(--cyan); }
body.ai-site:not(.light) .ai-feature,
body.ai-site:not(.light) .ai-support-grid a { background:var(--surface); border-color:var(--line); }
body.ai-site:not(.light) .ai-feature p,
body.ai-site:not(.light) .ai-support-grid small,
body.ai-site:not(.light) .ai-flow-grid p,
body.ai-site:not(.light) .ai-section-head > p { color:var(--muted); }
body.ai-site:not(.light) .ai-flow-list,
body.ai-site:not(.light) .ai-flow-list > div { border-color:var(--line); }
body.ai-site:not(.light) .ai-partner-band { background:linear-gradient(135deg,#0b2d60,#0b637b); }
body.ai-partner-page:not(.light) .ai-partner-hero { background:radial-gradient(circle at 80% 15%,#1a4386 0,transparent 50%),linear-gradient(135deg,var(--surface),var(--bg2)); }
body.ai-partner-page:not(.light) .ai-partner-type,
body.ai-partner-page:not(.light) .ai-partner-form { background:var(--surface); border-color:var(--line); }
body.ai-partner-page:not(.light) .ai-partner-form input,
body.ai-partner-page:not(.light) .ai-partner-form select,
body.ai-partner-page:not(.light) .ai-partner-form textarea { background:var(--surface2); border-color:var(--line); }

/* Compact homepage rhythm; keep the real MT4 capture legible and clickable. */
.ai-hero { min-height:0; }
.ai-hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,470px); gap:52px; padding-block:48px 54px; }
.ai-product-shot { width:min(100%,450px); }
.ai-hero h1 { margin-block:18px; font-size:clamp(40px,4.25vw,60px); }
.ai-lead { font-size:16px; line-height:1.8; }
.ai-hero-actions { margin-top:27px; }
.ai-hero-proof { margin-top:22px; }
.ai-section { padding-block:72px; }
.ai-section-head { align-items:center; }
.ai-section-head h2 { font-size:clamp(29px,3vw,38px); }
.ai-feature { min-height:265px; padding:24px; }
.ai-feature-icon { margin-block:17px 12px; }
.ai-feature p { min-height:72px; font-size:14px; }
.ai-feature-example { font-size:13px; }
.ai-support-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ai-support-grid a { min-height:150px; padding:23px; }
.ai-support-grid small { font-size:13px; }
.ai-broker-section { padding-block:0 72px; }
.ai-partner-band { padding-block:70px; }
.ai-final { padding-block:48px; }
.ai-final h2 { font-size:clamp(27px,2.8vw,36px); }
.ai-final small { margin-top:12px; font-size:12px; }
@media(max-width:920px) { .ai-hero-grid { grid-template-columns:1fr; gap:38px; padding-block:56px 64px; } .ai-product-shot { width:min(100%,460px); } }
@media(max-width:760px) { .ai-section { padding-block:62px; } .ai-support-grid { grid-template-columns:1fr; } .ai-feature { min-height:auto; } .ai-feature p { min-height:auto; margin-bottom:18px; } }
@media(max-width:520px) { .ai-hero-grid { padding-block:42px 54px; } .ai-hero h1 { margin-block:17px; } .ai-broker-section { padding-bottom:58px; } }
