@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Montserrat:wght@600;700;800&display=swap');
:root{--ap-navy:#071b2f;--ap-blue:#2f73d9;--ap-line:#d8e3ed;--ap-soft:#eef8fb;--ap-ink:#101d2d;--ap-muted:#5e7080;--ap-green:#25d366;--ap-gold:#efb02b;--ap-purple:#8b5cf6}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ap-ink);background:#fff;line-height:1.58;padding-bottom:86px}a{color:#1d5fae}.ap-skip{position:absolute;left:-9999px}.ap-skip:focus{left:12px;top:12px;z-index:99999;background:#fff;padding:10px}
.ap-topline{height:5px;background:linear-gradient(90deg,#ef476f 0 17%,#ef9d22 17% 33%,#f0d133 33% 50%,#4ac976 50% 66%,#2f73d9 66% 83%,#8b5cf6 83% 100%)}.ap-header{position:sticky;top:0;z-index:9000;background:rgba(255,255,255,.97);border-bottom:1px solid #e1e9f0;backdrop-filter:blur(12px)}.ap-head{width:min(1180px,calc(100% - 34px));margin:auto;min-height:102px;display:grid;grid-template-columns:minmax(230px,1fr) auto auto;align-items:center;gap:16px}.ap-brand img{width:min(300px,42vw);height:auto;display:block}.ap-tools{display:flex;align-items:center;gap:9px}.ap-lang{display:flex;align-items:center;gap:7px;border:1px solid #cfdbe6;border-radius:18px;padding:7px 10px;background:#fff}.ap-lang select{border:0;background:transparent;max-width:128px;font:700 .82rem Inter}.ap-menu-btn{border:1px solid #cfdbe6;border-radius:17px;background:#fff;min-width:52px;min-height:50px;font-weight:900;font-size:1.25rem}.ap-nav{width:min(1180px,calc(100% - 34px));margin:auto;display:flex;gap:4px;flex-wrap:wrap;padding:0 0 10px}.ap-nav a{padding:8px 10px;border-radius:9px;text-decoration:none;font-size:.78rem;font-weight:800;color:#183a60}.ap-nav a:hover,.ap-nav a.active{background:#eef5fb;color:#0b2d5b}.ap-nav a.cta{background:#0b2d5b;color:#fff}
.ap-translation-note{display:none;background:#fff8e8;border-bottom:1px solid #ead7aa;padding:9px 18px;text-align:center;font-size:.78rem;color:#614b1d}.ap-translation-note.show{display:block}
/* Existing subdomain content is kept, but Aperture corporate spacing/colour is applied around it. */
main{min-height:60vh}.hero{background:linear-gradient(180deg,#eef8fb,#fff)!important}.eyebrow{color:#0b2d5b!important;letter-spacing:.12em!important}.button.primary,.button:not(.secondary){background:#2f73d9!important;color:#fff!important}.section.alt{background:#f5f9fc!important}.dark{background:#071b2f!important}.card,.hero-panel{border-radius:18px!important}.band{border-top:5px solid transparent;border-image:linear-gradient(90deg,#2f73d9,#18a7b5,#65b84b,#f0c928,#ef7d1a,#8b5cf6) 1!important}
.ap-footer{background:#071b2f;color:#dce6ee;padding:50px 0 118px;margin-top:40px}.ap-foot{width:min(1180px,calc(100% - 34px));margin:auto;display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:24px}.ap-foot img{width:250px;filter:none;background:#fff;border-radius:8px}.ap-foot h3{color:#fff;font:800 .94rem Montserrat}.ap-foot a{display:block;color:#dce6ee;text-decoration:none;margin:7px 0;font-size:.84rem}.ap-foot p{font-size:.85rem;color:#b9c7d3}.ap-legal{width:min(1180px,calc(100% - 34px));margin:30px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:.75rem;color:#93a6b5}
/* Unified contact dock */
.ap-dock{position:fixed;z-index:10100;left:50%;transform:translateX(-50%);bottom:max(8px,env(safe-area-inset-bottom));width:min(960px,calc(100% - 20px));display:grid;grid-template-columns:1fr 1.16fr 1fr;gap:8px}.ap-dock>a,.ap-dock>button{height:64px;min-height:64px;border-radius:18px;border:1px solid #c9d7e4;box-shadow:0 10px 30px rgba(11,45,91,.18);display:flex;align-items:center;justify-content:center;text-decoration:none;font:800 .9rem/1.08 Inter;cursor:pointer;padding:0 14px}.ap-discuss{background:#0b2d5b!important;color:#fff!important;border-color:#0b2d5b!important}.ap-ari{background:#fff!important;color:#0b2d5b!important;gap:9px}.ap-ari img{width:40px;height:40px;border-radius:50%;object-fit:contain}.ap-ari span{display:flex;flex-direction:column;align-items:flex-start}.ap-ari small{font-size:.64rem;color:#64748b}.ap-wa{background:#25d366!important;color:#fff!important;border-color:#16b857!important;gap:8px}.ap-wa svg{width:25px;height:25px;fill:#fff}.ap-wa-panel{position:fixed;z-index:10200;right:14px;bottom:84px;width:min(390px,calc(100% - 24px));background:#fff;border:1px solid #cedae6;border-radius:18px;padding:18px;box-shadow:0 22px 60px rgba(7,22,43,.25)}.ap-wa-panel[hidden]{display:none}.ap-wa-panel h2{margin:0 34px 7px 0;font-size:1.15rem}.ap-wa-panel p{font-size:.81rem;color:#56697b}.ap-wa-panel .close{position:absolute;right:10px;top:10px;width:32px;height:32px;border-radius:50%;border:1px solid #ccd8e3;background:#f7fafc}.ap-wa-choice{display:block;padding:12px;border:1px solid #d4e0eb;border-radius:11px;margin:8px 0;text-decoration:none;color:#153b64}.ap-wa-choice strong,.ap-wa-choice small{display:block}.ap-wa-choice small{font-size:.75rem;color:#657789;margin-top:3px}.ap-wa-choice.urgent{border-left:4px solid #ef9d22}
/* intro */.ap-intro{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;background:radial-gradient(circle,#fff 0,#f6f9fd 58%,#edf3fa 100%);transition:opacity .6s,visibility .6s;overflow:hidden}.ap-intro.leave{opacity:0;visibility:hidden}.ap-intro-inner{position:relative;z-index:2;text-align:center;font-weight:900;letter-spacing:.15em;font-size:.75rem;color:#0b2d5b}.ap-mark-stage{width:160px;height:160px;position:relative;display:grid;place-items:center;margin:auto}.ap-mark-stage img{width:122px;height:122px;object-fit:contain;animation:apSpin 4s cubic-bezier(.4,0,.2,1) 1 both;filter:drop-shadow(0 16px 30px rgba(22,89,147,.24));z-index:3}.ap-fireworks{position:absolute;inset:50%;width:1px;height:1px}.ap-fireworks i{position:absolute;width:var(--size);height:var(--size);border-radius:50%;background:var(--colour);opacity:0;box-shadow:0 0 12px var(--colour)}.ap-intro.explode .ap-fireworks i{animation:apFire 1.95s cubic-bezier(.15,.72,.22,1) var(--delay) 1 both}@keyframes apSpin{0%{transform:rotate(0) scale(.88)}70%{transform:rotate(900deg)}100%{transform:rotate(1080deg) scale(1.05)}}@keyframes apFire{0%{opacity:0;transform:translate(var(--x0),var(--y0)) scale(.2)}12%{opacity:1}72%{opacity:1}100%{opacity:0;transform:translate(calc(var(--x0) + var(--tx)),calc(var(--y0) + var(--ty))) scale(.72)}}
@media(max-width:900px){.ap-head{grid-template-columns:1fr auto;min-height:86px}.ap-nav{display:none}.ap-nav.open{display:flex;flex-direction:column;padding-bottom:14px}.ap-tools{grid-column:2}.ap-foot{grid-template-columns:1fr 1fr}.ap-brand img{width:230px}}
@media(max-width:760px){body{padding-bottom:72px}.ap-head{width:min(100% - 22px,1180px);gap:8px}.ap-brand img{width:min(210px,52vw)}.ap-lang{padding:6px 7px}.ap-lang select{max-width:72px}.ap-menu-btn{min-width:48px;min-height:46px}.ap-dock{width:calc(100% - 20px);grid-template-columns:1fr 1.18fr 1fr;gap:8px;bottom:max(8px,env(safe-area-inset-bottom))}.ap-dock>a,.ap-dock>button{height:58px;min-height:58px;max-height:58px;border-radius:16px;padding:0 8px;font-size:.72rem}.ap-ari{gap:6px}.ap-ari img{width:31px;height:31px}.ap-ari strong{font-size:.72rem}.ap-ari small{font-size:.51rem}.ap-wa svg{width:21px;height:21px}.ap-foot{grid-template-columns:1fr}.ap-footer{padding-bottom:94px}}
@media(prefers-reduced-motion:reduce){.ap-mark-stage img{animation:none}.ap-fireworks{display:none}}

.partner-hero{padding:72px 0;background:linear-gradient(180deg,#eef8fb,#fff)}.partner-wrap{width:min(1120px,calc(100% - 36px));margin:auto}.partner-hero h1{font:800 clamp(2.5rem,6vw,5.4rem)/.98 Montserrat,Inter;color:#0b2d5b;margin:0 0 18px;max-width:950px}.partner-hero .lead{max-width:850px;font-size:1.2rem;color:#40566e}.partner-eyebrow{font-weight:900;letter-spacing:.13em;font-size:.74rem;color:#6a46b5}.partner-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.partner-actions a{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:12px;font-weight:850;text-decoration:none;background:#0b2d5b;color:#fff}.partner-actions a.secondary{background:#fff;color:#0b2d5b;border:1px solid #cbd8e4}.partner-section{padding:62px 0}.partner-section.alt{background:#f5f9fc}.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.partner-card{border:1px solid #d5e0ea;border-radius:17px;padding:20px;background:#fff;box-shadow:0 5px 18px rgba(7,27,47,.05)}.partner-card h3{margin:0 0 8px;color:#0b2d5b}.partner-card p{color:#5a6d80;font-size:.88rem}.partner-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.partner-step{border-top:4px solid #8b5cf6;border-radius:15px;background:#fff;border-left:1px solid #d7e1eb;border-right:1px solid #d7e1eb;border-bottom:1px solid #d7e1eb;padding:19px}.partner-boundary{background:#071b2f;color:#eaf1f6;border-radius:22px;padding:30px}.partner-boundary h2{color:#fff}.partner-boundary li{margin:.55rem 0}@media(max-width:900px){.partner-grid{grid-template-columns:1fr 1fr}.partner-steps{grid-template-columns:1fr 1fr}}@media(max-width:560px){.partner-grid,.partner-steps{grid-template-columns:1fr}.partner-hero{padding:50px 0}}

@media(max-width:360px){.ap-dock{width:calc(100% - 14px);grid-template-columns:.96fr 1.16fr .96fr;gap:6px}.ap-dock>a,.ap-dock>button{padding:0 6px;font-size:.66rem}.ap-ari strong{font-size:.68rem}.ap-ari small{font-size:.48rem}}
