/* Atlantic Commercial Inc. — FinKash-inspired consultancy theme v1 */
:root{
  --navy:#0A0F5C; --navy-2:#161C8A; --ink:#0E1440; --muted:#5A6185; --faint:#8B91B3;
  --lime:#D4F542; --lime-deep:#A8C91A; --blue:#2E2EFF;
  --paper:#fff; --wash:#F4F6FD; --line:#E6E9F5;
  --r:22px; --font-d:"Plus Jakarta Sans",Inter,system-ui,sans-serif; --font-b:Inter,system-ui,-apple-system,sans-serif;
  --shadow:0 24px 60px -24px rgba(10,15,92,.25);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.ac-shell{max-width:1200px;margin:0 auto;padding:0 28px}
section{padding:84px 0}

/* ---------- utility topline ---------- */
.ac-topline{background:var(--navy);color:#fff;font-size:.74rem;border-radius:0}
.ac-topline-in{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:9px;padding-bottom:9px}
.ac-tl-item{display:inline-flex;align-items:center;gap:7px;color:#C9CDEF;white-space:nowrap}
.ac-tl-item svg{width:14px;height:14px}
.ac-tl-promo{display:inline-flex;align-items:center;gap:9px;color:#fff;font-weight:600}
.ac-tl-promo i{font-style:normal;color:var(--lime)}
.ac-tl-promo a{background:rgba(212,245,66,.16);color:var(--lime);font-weight:800;font-size:.66rem;letter-spacing:.08em;padding:5px 13px;border-radius:999px;text-decoration:none}
.ac-tl-promo a:hover{background:var(--lime);color:var(--navy)}

/* ---------- header ---------- */
.ac-head{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);transition:box-shadow .3s}
.ac-head.scrolled{box-shadow:0 10px 30px rgba(10,15,92,.12)}
.ac-head-in{display:flex;align-items:center;gap:26px;padding-top:14px;padding-bottom:14px}
.ac-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.ac-logo-mark{width:38px;height:38px;border-radius:11px;background:var(--navy);display:flex;align-items:center;justify-content:center}
.ac-logo-mark svg{width:22px;height:22px}
.ac-logo-word{font-family:var(--font-d);font-weight:800;font-size:1.22rem;color:var(--navy);letter-spacing:-.02em;white-space:nowrap}
.ac-logo-word b{color:#6BA30A;font-weight:800}
.ac-logo-word.light{color:#fff}
.ac-nav{display:flex;gap:8px;margin:0 auto}
.ac-nav a{text-decoration:none;font-size:.83rem;font-weight:700;color:var(--ink);border:1.5px solid var(--line);border-radius:999px;padding:9px 20px;transition:all .25s;white-space:nowrap}
.ac-nav a:hover{border-color:var(--navy)}
.ac-nav a.on{background:var(--navy);border-color:var(--navy);color:#fff}
.ac-head-cta{display:flex;align-items:center;gap:18px;margin-left:auto}
.ac-phone{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:.86rem;text-decoration:none;white-space:nowrap}
.ac-phone-ic{width:34px;height:34px;border-radius:50%;background:var(--wash);display:flex;align-items:center;justify-content:center}
.ac-phone-ic svg{width:16px;height:16px}

/* ---------- buttons ---------- */
.ac-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-d);font-weight:800;font-size:.86rem;border:none;cursor:pointer;text-decoration:none;border-radius:999px;padding:14px 26px;transition:transform .2s,box-shadow .25s,background .25s}
.ac-btn:hover{transform:translateY(-2px)}
.ac-btn .ac-arr{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-size:.85rem}
.ac-btn-lime{background:var(--lime);color:var(--navy);box-shadow:0 12px 26px -10px rgba(168,201,26,.7)}
.ac-btn-lime .ac-arr{background:var(--navy);color:#fff}
.ac-btn-navy{background:var(--navy);color:#fff;box-shadow:0 12px 26px -10px rgba(10,15,92,.6)}
.ac-btn-navy .ac-arr{background:#fff;color:var(--navy)}
.ac-btn-white{background:#fff;color:var(--navy)}
.ac-btn-white .ac-arr{background:var(--navy);color:#fff}
.ac-btn-outline-w{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.ac-btn-outline-w .ac-arr{background:#fff;color:var(--navy)}
.ac-btn-blue{background:var(--blue);color:#fff;box-shadow:0 12px 26px -10px rgba(46,46,255,.6)}
.ac-block{width:100%;justify-content:center;margin-top:14px}

/* ---------- burger / drawer ---------- */
.ac-burger{display:none;flex-direction:column;gap:5px;background:none;border:1.5px solid var(--line);border-radius:10px;padding:10px;cursor:pointer}
.ac-burger span{width:20px;height:2px;background:var(--navy);border-radius:2px}
.ac-scrim{position:fixed;inset:0;background:rgba(7,11,69,.5);opacity:0;pointer-events:none;transition:opacity .3s;z-index:90}
.ac-scrim.show{opacity:1;pointer-events:auto}
.ac-drawer{position:fixed;top:0;right:-320px;width:300px;max-width:84vw;height:100dvh;background:#fff;z-index:95;padding:22px;display:flex;flex-direction:column;gap:6px;transition:right .38s cubic-bezier(.16,1,.3,1);box-shadow:-20px 0 60px rgba(10,15,92,.2)}
.ac-drawer.open{right:0}
.ac-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.ac-drawer-x{background:var(--wash);border:none;border-radius:10px;width:36px;height:36px;font-size:1rem;cursor:pointer;color:var(--navy)}
.ac-drawer a:not(.ac-btn){text-decoration:none;font-weight:700;font-size:.95rem;padding:12px 14px;border-radius:12px}
.ac-drawer a:not(.ac-btn).on,.ac-drawer a:not(.ac-btn):hover{background:var(--wash)}
.ac-drawer-foot{margin-top:auto;font-size:.8rem;color:var(--muted);line-height:1.7}

/* ---------- page hero banner ---------- */
.ac-pagehero{padding:26px 0 0}
.ac-pagehero-in{position:relative;overflow:hidden;border-radius:26px;background:var(--navy);color:#fff;padding:88px 60px;box-shadow:var(--shadow)}
.ac-pagehero-in .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5}
.ac-pagehero-in::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,11,69,.88) 20%,rgba(7,11,69,.25) 65%,rgba(7,11,69,.05))}
.ac-pagehero-in>*:not(.bg){position:relative;z-index:1}
.ac-pagehero h1{font-family:var(--font-d);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800;letter-spacing:-.03em}
.ac-crumbs{margin-top:10px;font-size:.9rem;font-weight:600;color:#D7DBF5}
.ac-crumbs b{color:#fff}

/* ---------- eyebrows + headings ---------- */
.ac-eyebrow{display:inline-block;font-family:var(--font-d);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:var(--lime);color:var(--navy);border-radius:999px;padding:7px 18px;margin-bottom:16px}
.ac-eyebrow.navy{background:var(--navy);color:#fff}
.ac-h2{font-family:var(--font-d);font-size:clamp(1.7rem,3.4vw,2.6rem);font-weight:800;letter-spacing:-.025em;line-height:1.15;color:var(--ink)}
.ac-lead{color:var(--muted);font-size:.98rem;line-height:1.75;margin-top:14px}
.ac-split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.ac-split-lines{border-left:2px solid var(--line);padding-left:40px}

/* ---------- home hero ---------- */
.ac-hero{padding:30px 0 0}
.ac-hero-in{position:relative;overflow:hidden;border-radius:28px;background:var(--navy);color:#fff;padding:96px 64px 90px;box-shadow:var(--shadow)}
.ac-hero-in .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.42}
.ac-hero-in::after{content:"";position:absolute;inset:0;background:linear-gradient(95deg,rgba(7,11,69,.92) 25%,rgba(7,11,69,.35) 60%,rgba(7,11,69,.05))}
.ac-hero-in>*:not(.bg){position:relative;z-index:1;max-width:640px}
.ac-hero h1{font-family:var(--font-d);font-size:clamp(2.3rem,5.2vw,3.7rem);font-weight:800;letter-spacing:-.03em;line-height:1.08}
.ac-hero h1 em{font-style:normal;color:var(--lime)}
.ac-hero p{margin:18px 0 28px;color:#D7DBF5;font-size:1.02rem;line-height:1.7}
.ac-hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.ac-hero-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.ac-hchip{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);border-radius:14px;padding:11px 17px;font-size:.8rem;font-weight:700}
.ac-hchip b{font-family:var(--font-d);font-size:1.05rem;color:var(--lime)}

/* ---------- partner strip ---------- */
.ac-brands{padding:34px 0}
.ac-brands-in{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;background:var(--wash);border-radius:20px;padding:24px 44px}
.ac-brands span{font-family:var(--font-d);font-weight:800;font-size:1.05rem;color:#3D4470;letter-spacing:.02em;opacity:.75;white-space:nowrap}
.ac-brands span i{font-style:normal;color:var(--lime-deep)}

/* ---------- intro / video ---------- */
.ac-intro-head{text-align:center;max-width:720px;margin:0 auto 40px}
.ac-intro-head p{color:var(--muted);font-size:.92rem;line-height:1.8;margin-top:14px}
.ac-media{position:relative;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);background:var(--navy)}
.ac-media img{width:100%;height:480px;object-fit:cover}
.ac-media .float{position:absolute;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-radius:16px;padding:13px 19px;box-shadow:0 16px 40px rgba(7,11,69,.3)}
.ac-media .float b{display:block;font-family:var(--font-d);font-size:1.15rem;color:var(--navy)}
.ac-media .float small{font-size:.7rem;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.ac-float-1{left:26px;bottom:26px}
.ac-float-2{right:26px;top:26px}
.ac-float-2 b{color:#1a7a2e!important}
.ac-caption{text-align:center;color:var(--muted);font-size:.85rem;margin-top:22px}

/* ---------- services ---------- */
.ac-sec-head{display:grid;grid-template-columns:1.2fr 1fr auto;gap:30px;align-items:end;margin-bottom:44px}
.ac-sec-head p{color:var(--muted);font-size:.92rem;line-height:1.8}
.ac-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ac-svc{background:#fff;border:1.5px solid var(--line);border-radius:24px;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.ac-svc:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.ac-svc.hot{border-color:var(--navy);box-shadow:var(--shadow)}
.ac-svc .ph{height:250px;overflow:hidden;background:var(--wash)}
.ac-svc .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.ac-svc:hover .ph img{transform:scale(1.05)}
.ac-svc .tx{padding:26px}
.ac-svc .tx h3{font-family:var(--font-d);font-size:1.2rem;font-weight:800}
.ac-svc .tx h3 a{text-decoration:none}
.ac-svc .tx h3 a:hover{color:var(--navy-2)}
.ac-svc .tx p{color:var(--muted);font-size:.87rem;line-height:1.7;margin:10px 0 18px}
.ac-more{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:.83rem;color:var(--navy);text-decoration:none}
.ac-more span{width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;transition:background .25s}
.ac-more:hover span{background:var(--lime-deep)}

/* ---------- stats band ---------- */
.ac-band{background:linear-gradient(140deg,#0A0F5C 0%,#1A2296 70%,#232BA8 100%);color:#fff;border-radius:0;position:relative;overflow:hidden}
.ac-band::before{content:"";position:absolute;width:560px;height:560px;left:-160px;top:-160px;background:radial-gradient(circle,rgba(212,245,66,.14),transparent 65%)}
.ac-band-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:50px;align-items:center;position:relative}
.ac-band h2{font-family:var(--font-d);font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.2}
.ac-band .sub{color:#C9CDEF;font-size:.92rem;line-height:1.8;margin:16px 0 26px}
.ac-stat3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}
.ac-stat{background:#fff;color:var(--ink);border-radius:18px;padding:24px 18px;text-align:center}
.ac-stat b{display:block;font-family:var(--font-d);font-size:2.1rem;font-weight:800;letter-spacing:-.03em}
.ac-stat small{font-size:.76rem;color:var(--muted);font-weight:600}
.ac-feat2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ac-feat{border-radius:18px;padding:26px 24px}
.ac-feat.blue{background:#2323E8;color:#fff}
.ac-feat.white{background:#fff;color:var(--ink)}
.ac-feat .ic{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;margin-bottom:46px}
.ac-feat.blue .ic{background:rgba(255,255,255,.14)}
.ac-feat.white .ic{background:var(--wash)}
.ac-feat .ic svg{width:24px;height:24px}
.ac-feat h3{font-family:var(--font-d);font-size:1.02rem;font-weight:800}
.ac-feat p{font-size:.78rem;opacity:.75;margin-top:5px}
.ac-feat .tag{font-size:.72rem;font-weight:800;color:var(--lime)}

/* ---------- team ---------- */
.ac-team4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ac-team3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ac-member{position:relative;border-radius:20px;overflow:hidden;background:var(--navy);aspect-ratio:3/3.6}
.ac-member img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.ac-member:hover img{transform:scale(1.06)}
.ac-member::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,11,69,.88))}
.ac-member .who{position:absolute;left:0;right:0;bottom:0;padding:22px;text-align:center;color:#fff;z-index:1}
.ac-member .who b{font-family:var(--font-d);font-size:1rem}
.ac-member .who small{display:block;font-size:.72rem;opacity:.8;margin-top:3px}
.ac-member .soc{display:flex;gap:7px;justify-content:center;margin-top:10px;opacity:0;transform:translateY(8px);transition:all .3s}
.ac-member:hover .soc{opacity:1;transform:none}
.ac-member .soc a{width:28px;height:28px;border-radius:8px;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center}
.ac-member .soc a svg{width:14px;height:14px}

/* ---------- testimonials ---------- */
.ac-tst2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.ac-tst{background:var(--wash);border-radius:22px;padding:34px 32px;position:relative}
.ac-tst .q{font-family:var(--font-d);font-size:3rem;line-height:1;color:var(--lime-deep)}
.ac-tst p{font-size:.92rem;line-height:1.8;color:var(--ink);margin:6px 0 22px}
.ac-tst .who{display:flex;align-items:center;gap:13px}
.ac-tst .av{width:48px;height:48px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--font-d);font-weight:800;display:flex;align-items:center;justify-content:center}
.ac-tst .who b{display:block;font-size:.88rem}
.ac-tst .who small{font-size:.74rem;color:var(--muted)}
.ac-stars{color:#E9A800;font-size:.85rem;letter-spacing:2px;margin-left:auto}

/* ---------- values / perks / process ---------- */
.ac-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ac-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ac-tile{background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:30px 26px;transition:transform .3s,box-shadow .3s}
.ac-tile:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.ac-tile .ic{width:52px;height:52px;border-radius:15px;background:var(--navy);color:var(--lime);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.ac-tile .ic svg{width:25px;height:25px}
.ac-tile h3{font-family:var(--font-d);font-size:1.02rem;font-weight:800;margin-bottom:9px}
.ac-tile p{font-size:.85rem;color:var(--muted);line-height:1.7}
.ac-step{display:flex;gap:20px;background:var(--wash);border-radius:20px;padding:28px}
.ac-step .n{flex:0 0 auto;font-family:var(--font-d);font-weight:800;font-size:1rem;color:var(--navy);background:var(--lime);border-radius:14px;width:52px;height:52px;display:flex;align-items:center;justify-content:center}
.ac-step h3{font-family:var(--font-d);font-size:1rem;font-weight:800;margin-bottom:7px}
.ac-step p{font-size:.85rem;color:var(--muted);line-height:1.7}

/* ---------- jobs ---------- */
.ac-job{display:flex;align-items:center;gap:20px;background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:22px 26px;margin-bottom:14px;transition:border-color .25s,box-shadow .25s}
.ac-job:hover{border-color:var(--navy);box-shadow:var(--shadow)}
.ac-job .dep{font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--lime-deep);background:#F4F9DC;border-radius:8px;padding:5px 12px}
.ac-job h3{font-family:var(--font-d);font-size:1.05rem;font-weight:800;margin:8px 0 4px}
.ac-job p{font-size:.82rem;color:var(--muted)}
.ac-job .meta{margin-left:auto;text-align:right;font-size:.78rem;color:var(--muted);white-space:nowrap}
.ac-job .meta b{display:block;color:var(--ink);font-size:.86rem}

/* ---------- branches + contact ---------- */
.ac-branch{background:linear-gradient(150deg,#2323E8,#0A0F5C);color:#fff;border-radius:22px;padding:34px 30px;box-shadow:var(--shadow)}
.ac-branch h3{font-family:var(--font-d);font-size:1.25rem;margin-bottom:12px}
.ac-branch p{font-size:.85rem;color:#D7DBF5;line-height:1.8}
.ac-branch .ph{border-radius:14px;overflow:hidden;margin-top:20px}
.ac-branch .ph img{height:150px;width:100%;object-fit:cover}
.ac-form{background:#fff;border:1.5px solid var(--line);border-radius:22px;padding:36px 34px;box-shadow:var(--shadow)}
.ac-frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ac-field{margin-bottom:16px}
.ac-field label{display:block;font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.ac-field input,.ac-field select,.ac-field textarea{width:100%;font:inherit;font-size:.9rem;color:var(--ink);background:var(--wash);border:1.5px solid transparent;border-radius:13px;padding:14px 17px;outline:none;transition:border-color .25s,background .25s}
.ac-field input:focus,.ac-field select:focus,.ac-field textarea:focus{border-color:var(--navy);background:#fff}
.ac-field textarea{min-height:130px;resize:vertical}
.ac-form-ok{display:none;background:#E8F9EF;border:1.5px solid #1a7a2e;color:#145A24;border-radius:14px;padding:15px 18px;font-size:.87rem;font-weight:600;margin-bottom:16px}
.ac-form-ok.show{display:block}
.ac-map{border-radius:22px;overflow:hidden;border:1.5px solid var(--line);min-height:380px;background:var(--wash)}
.ac-map iframe{width:100%;height:380px;border:0;display:block}

/* ---------- faq ---------- */
.ac-faq{border:1.5px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}
.ac-faq button{width:100%;background:#fff;border:none;font:inherit;font-weight:700;font-size:.92rem;color:var(--ink);text-align:left;padding:19px 22px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px}
.ac-faq button span{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--wash);display:flex;align-items:center;justify-content:center;font-weight:800;transition:all .3s}
.ac-faq.open button span{background:var(--navy);color:#fff;transform:rotate(45deg)}
.ac-faq .body{max-height:0;overflow:hidden;transition:max-height .35s ease}
.ac-faq .body p{padding:0 22px 20px;color:var(--muted);font-size:.87rem;line-height:1.75}

/* ---------- newsletter + footer ---------- */
.ac-news{background:var(--navy);padding:64px 0}
.ac-news-in{display:flex;align-items:center;gap:36px}
.ac-news-in h2{font-family:var(--font-d);color:#fff;font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;letter-spacing:-.02em}
.ac-news-in p{color:#C9CDEF;font-size:.87rem;margin-top:10px}
.ac-news-form{margin-left:auto;display:flex;background:#fff;border-radius:999px;padding:7px 7px 7px 26px;min-width:min(480px,100%);box-shadow:0 20px 50px rgba(0,0,0,.3)}
.ac-news-form input{flex:1;border:none;outline:none;font:inherit;font-size:.8rem;letter-spacing:.06em;min-width:0}
.ac-news-form input::placeholder{color:#9AA0C3}
.ac-news-note{display:none;color:var(--lime);font-size:.82rem;font-weight:700;margin-top:10px}
.ac-news-note.show{display:block}
.ac-foot{background:#070B45;color:#C9CDEF;padding:70px 0 0}
.ac-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:46px}
.ac-foot-brand p{font-size:.84rem;line-height:1.8;margin:18px 0 22px}
.ac-foot h4{color:#fff;font-family:var(--font-d);font-size:1rem;font-weight:800;margin-bottom:20px}
.ac-foot-links{list-style:none}
.ac-foot-links li{margin-bottom:12px}
.ac-foot-links a{text-decoration:none;font-size:.85rem}
.ac-foot-links a:hover{color:var(--lime)}
.ac-foot-contact{list-style:none}
.ac-foot-contact li{display:flex;gap:11px;font-size:.83rem;line-height:1.7;margin-bottom:15px}
.ac-foot-contact svg{width:16px;height:16px;flex:0 0 auto;margin-top:3px;color:var(--lime)}
.ac-stores{display:flex;gap:10px;flex-wrap:wrap}
.ac-store{display:inline-flex;align-items:center;gap:9px;background:#000;border:1px solid #2A3070;border-radius:10px;padding:8px 15px;text-decoration:none;color:#fff}
.ac-store svg{width:22px;height:22px}
.ac-store span{font-size:.78rem;font-weight:700;line-height:1.25}
.ac-store span small{display:block;font-size:.6rem;font-weight:500;opacity:.7}
.ac-foot-bar{border-top:1px solid rgba(255,255,255,.14);padding:22px 0;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ac-foot-tabs{display:flex;gap:26px;font-size:.82rem;font-weight:600}
.ac-social{display:flex;gap:10px;margin-left:auto}
.ac-social a{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center}
.ac-social a:hover{background:var(--lime);border-color:var(--lime);color:var(--navy)}
.ac-social svg{width:15px;height:15px}
.ac-foot-base{border-top:1px solid rgba(255,255,255,.14);padding:20px 0 26px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.8rem}
.ac-legal a{text-decoration:none}
.ac-legal a:hover{color:var(--lime)}
.ac-legal span{margin:0 10px;opacity:.4}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.85,.25,1)}
.reveal.in{opacity:1;transform:none}
.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}

/* ---------- responsive ---------- */
@media(max-width:1024px){
  .ac-nav{display:none}
  .ac-head-cta .ac-phone{display:none}
  .ac-burger{display:flex}
  .ac-tl-promo{display:none}
  .ac-sec-head{grid-template-columns:1fr;align-items:start}
  .ac-band-grid{grid-template-columns:1fr}
  .ac-cards3,.ac-team3{grid-template-columns:1fr 1fr}
  .ac-team4,.ac-grid4{grid-template-columns:1fr 1fr}
  .ac-news-in{flex-direction:column;align-items:stretch}
  .ac-news-form{margin-left:0}
  .ac-foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  section{padding:60px 0}
  .ac-shell{padding:0 20px}
  .ac-head-cta .ac-btn{display:none}
  .ac-tl-item:last-child{display:none}
  .ac-hero-in,.ac-pagehero-in{padding:56px 28px}
  .ac-split{grid-template-columns:1fr}
  .ac-split-lines{border-left:none;padding-left:0;border-top:2px solid var(--line);padding-top:28px}
  .ac-cards3,.ac-team3,.ac-team4,.ac-grid4,.ac-grid3,.ac-tst2{grid-template-columns:1fr}
  .ac-media img{height:320px}
  .ac-stat3{grid-template-columns:1fr 1fr}
  .ac-feat2{grid-template-columns:1fr}
  .ac-frow{grid-template-columns:1fr}
  .ac-job{flex-direction:column;align-items:stretch}
  .ac-job .meta{text-align:left}
  .ac-foot-grid{grid-template-columns:1fr}
  .ac-brands-in{padding:20px 24px;gap:16px}
  .ac-news-form{flex-direction:column;border-radius:20px;padding:12px;gap:10px}
  .ac-news-form input{padding:12px}
  .ac-news-form .ac-btn{justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}

/* ============================================================
   v2 POLISH LAYER — preloader · page transitions · skeletons ·
   hero entrances · marquee · micro-details
   ============================================================ */

/* ---------- page enter / exit ---------- */
@keyframes pgIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
main{animation:pgIn .55s cubic-bezier(.2,.85,.25,1) both}
body.pg-out main{animation:none;opacity:0;transform:translateY(10px);transition:opacity .22s ease,transform .22s ease}
body.pg-out .ac-preloader{opacity:0}

/* ---------- preloader ---------- */
.ac-preloader{position:fixed;inset:0;z-index:200;background:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .45s ease,visibility .45s}
.ac-preloader.done{opacity:0;visibility:hidden;pointer-events:none}
.ac-preloader .mark{width:64px;height:64px;border-radius:18px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;animation:prePulse 1.2s ease-in-out infinite}
.ac-preloader .mark svg{width:34px;height:34px}
@keyframes prePulse{50%{transform:scale(1.08);box-shadow:0 0 44px rgba(212,245,66,.35)}}
.ac-preloader .word{font-family:var(--font-d);font-weight:800;color:#fff;font-size:1rem;letter-spacing:.02em}
.ac-preloader .word b{color:var(--lime)}
.ac-preloader .bar{width:180px;height:3px;border-radius:99px;background:rgba(255,255,255,.15);overflow:hidden}
.ac-preloader .bar i{display:block;height:100%;width:40%;border-radius:99px;background:var(--lime);animation:preSlide 1s ease-in-out infinite}
@keyframes preSlide{0%{transform:translateX(-100%)}100%{transform:translateX(450%)}}

/* ---------- skeleton shimmer ---------- */
.sk{position:relative;overflow:hidden;background:#E4E9F7!important}
.sk::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.75) 50%,transparent 75%);transform:translateX(-100%);animation:skSweep 1.3s ease-in-out infinite;z-index:2;pointer-events:none}
@keyframes skSweep{to{transform:translateX(100%)}}
.sk > img{opacity:0;transition:opacity .6s ease}
.sk.done{background:none!important}
.sk.done::after{display:none}
.sk.done > img{opacity:1}
.sk-bg{position:relative}
.sk-bg::before{content:"";position:absolute;inset:0;background:#232A7A;background-image:linear-gradient(100deg,transparent 25%,rgba(255,255,255,.14) 50%,transparent 75%);background-size:200% 100%;animation:skBg 1.4s ease-in-out infinite;z-index:0}
@keyframes skBg{from{background-position:180% 0}to{background-position:-80% 0}}
.sk-bg.done::before{display:none}

/* ---------- hero staged entrance ---------- */
@keyframes heroUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.ac-hero-in .ac-eyebrow,.ac-pagehero-in .ac-eyebrow,.ac-hero-in h1,.ac-pagehero-in h1,.ac-hero-in p,.ac-hero-cta,.ac-hero-stats,.ac-crumbs{animation:heroUp .7s cubic-bezier(.2,.85,.25,1) both}
.ac-hero-in h1,.ac-pagehero-in h1{animation-delay:.08s}
.ac-hero-in p,.ac-crumbs{animation-delay:.16s}
.ac-hero-cta{animation-delay:.24s}
.ac-hero-stats{animation-delay:.32s}

/* ---------- partner marquee ---------- */
.ac-marquee{overflow:hidden;border-radius:20px;background:var(--wash)}
.ac-marquee-track{display:flex;align-items:center;gap:64px;width:max-content;padding:24px 32px;animation:mq 26s linear infinite}
.ac-marquee:hover .ac-marquee-track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.ac-marquee-track span{font-family:var(--font-d);font-weight:800;font-size:1.05rem;color:#3D4470;opacity:.75;white-space:nowrap}
.ac-marquee-track span i{font-style:normal;color:var(--lime-deep)}

/* ---------- back to top ---------- */
.ac-top{position:fixed;right:22px;bottom:22px;z-index:70;width:48px;height:48px;border-radius:50%;border:none;cursor:pointer;background:var(--lime);color:var(--navy);font-size:1.2rem;font-weight:800;box-shadow:0 14px 30px rgba(10,15,92,.3);opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .3s,transform .3s}
.ac-top.show{opacity:1;transform:none;pointer-events:auto}
.ac-top:hover{transform:translateY(-3px)}

/* ---------- micro-details ---------- */
::selection{background:var(--navy);color:var(--lime)}
::-webkit-scrollbar{width:11px}
::-webkit-scrollbar-track{background:var(--wash)}
::-webkit-scrollbar-thumb{background:var(--navy);border-radius:99px;border:3px solid var(--wash)}
:focus-visible{outline:2.5px solid var(--lime-deep);outline-offset:3px;border-radius:6px}
.ac-stat b,.ac-hchip b{font-variant-numeric:tabular-nums}
.ac-media img,.ac-svc .ph img,.ac-member img,.ac-branch .ph img{background:#E4E9F7}
section{content-visibility:auto;contain-intrinsic-size:auto 600px}
.ac-hero,.ac-pagehero{content-visibility:visible}
.ac-svc .ph img,.ac-member img{will-change:transform}
.ac-btn{will-change:transform}
.ac-news-form input::placeholder{letter-spacing:.08em}

/* ---------- motion safety ---------- */
@media(prefers-reduced-motion:reduce){
  main{animation:none}
  .ac-preloader{display:none}
  .sk::after,.sk-bg::before,.ac-marquee-track,.ac-preloader .bar i,.ac-preloader .mark{animation:none!important}
  .ac-hero-in .ac-eyebrow,.ac-pagehero-in .ac-eyebrow,.ac-hero-in h1,.ac-pagehero-in h1,.ac-hero-in p,.ac-hero-cta,.ac-hero-stats,.ac-crumbs{animation:none}
  section{content-visibility:visible}
}

/* ============================================================
   7-STAR QA FIX BATCH — edge fades · scroll offset · mobile-strict
   ============================================================ */
section{scroll-margin-top:84px}

/* marquee / brand strip edge fades */
.ac-marquee,.ac-brands-in{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}

/* ---------- mobile-strict (<=680px already, tight screens <=380px) ---------- */
@media(max-width:680px){
  .ac-stat3{grid-template-columns:repeat(3,1fr);gap:10px}
  .ac-stat{padding:18px 8px}
  .ac-stat b{font-size:1.35rem}
  .ac-stat small{font-size:.64rem}
  .ac-feat{padding:22px 18px}
  .ac-marquee-track{gap:40px;padding:18px 24px}
  .ac-marquee-track span,.ac-brands-in span{font-size:.9rem}
  .ac-job .ac-btn{width:100%;justify-content:center}
  .ac-form .ac-btn{width:100%;justify-content:center}
  .ac-member{aspect-ratio:3/3.4}
  .ac-tst{padding:28px 24px}
  .ac-pagehero-in h1{font-size:2rem}
}
@media(max-width:380px){
  .ac-topline{font-size:.66rem}
  .ac-tl-item{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ac-logo-word{font-size:1.02rem}
  .ac-hero-in h1{font-size:1.9rem}
  .ac-hchip{font-size:.72rem;padding:9px 13px}
  .ac-stat b{font-size:1.15rem}
  .ac-news-form input{font-size:.72rem}
}

/* ---------- emblem logo placements ---------- */
.ac-logo-mark.photo{background:none;box-shadow:none}
.ac-logo-mark.photo img{width:40px;height:40px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--lime),0 8px 18px rgba(10,15,92,.28)}
.ac-drawer-brand{display:flex;align-items:center;gap:10px}
.ac-drawer-brand .ac-logo-word{font-size:1.02rem}
.ac-drawer-logo{width:34px;height:34px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--lime)}
.ac-foot-logo{width:52px;height:52px;border-radius:50%;object-fit:cover;margin-bottom:14px;box-shadow:0 0 0 2px rgba(212,245,66,.55),0 10px 26px rgba(0,0,0,.35)}
.ac-preloader .mark.photo{background:none;box-shadow:none;animation:none}
.ac-preloader .mark.photo img{width:72px;height:72px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--lime),0 0 54px rgba(212,245,66,.35);animation:prePulse 1.2s ease-in-out infinite}

/* ---------- mobile hero header clearance (<=680px) ---------- */
@media(max-width:680px){
  .ac-head-in{padding-top:16px;padding-bottom:16px}
  .ac-logo-mark.photo img{width:34px;height:34px;box-shadow:0 0 0 1.5px var(--lime),0 6px 14px rgba(10,15,92,.25)}
}

/* ---------- cinematic smoothness ---------- */
@media(prefers-reduced-motion:no-preference){
  .ac-hero-in .bg,.ac-pagehero-in .bg{animation:heroZoom 20s ease-in-out infinite alternate;will-change:transform}
  @keyframes heroZoom{from{transform:scale(1)}to{transform:scale(1.07)}}
}
.ac-btn .ac-arr{transition:transform .25s cubic-bezier(.2,.85,.25,1),background .25s}
.ac-btn:hover .ac-arr{transform:translateX(3px)}
.ac-more span{transition:transform .25s cubic-bezier(.2,.85,.25,1),background .25s}
.ac-more:hover span{transform:translateX(3px)}
.ac-hero-in h1{text-wrap:balance}
