@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');


/* FCMM animated hero styles with compatibility-safe selector isolation. */
.fcmm-hero{--navy:#031525;--gold:#f0c67d;--gold-light:#ffe2a7;--white:#f8f8f5;--muted:#b6c3ce;--serif:'DM Sans',Arial,sans-serif;--sans:'DM Sans',Arial,sans-serif;color-scheme:dark;font-synthesis:none}.fcmm-hero *{box-sizing:border-box}.fcmm-hero{scroll-behavior:smooth}.fcmm-hero{margin:0;background:var(--navy);color:var(--white);font-family:var(--sans);-webkit-font-smoothing:antialiased}.fcmm-hero button,.fcmm-hero a{-webkit-tap-highlight-color:transparent}.fcmm-hero button{font:inherit;color:inherit;cursor:pointer}.fcmm-hero button:disabled{cursor:default}.fcmm-hero a{color:inherit;text-decoration:none}.fcmm-hero button:focus-visible,.fcmm-hero a:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}.fcmm-hero button{border:0}.fcmm-hero svg{display:block}.fcmm-hero p,.fcmm-hero h1,.fcmm-hero h2{margin:0}.fcmm-hero .icon-library{position:absolute;width:0;height:0;overflow:hidden}.fcmm-hero .wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.fcmm-hero.hero{position:relative;isolation:isolate;overflow:hidden;min-height:780px;background:radial-gradient(ellipse at 68% 28%,#092c45 0%,#031a2d 34%,#031525 65%,#02101e 100%)}.fcmm-hero .atmosphere,.fcmm-hero .ambient-canvas,.fcmm-hero .hero-vignette{position:absolute;inset:0;pointer-events:none}.fcmm-hero .atmosphere{z-index:-3;overflow:hidden}.fcmm-hero .ambient-canvas{z-index:-2;width:100%;height:100%}.fcmm-hero .hero-vignette{z-index:-1;background:linear-gradient(90deg,rgba(2,17,31,.7),transparent 57%),linear-gradient(0deg,#031322 2%,transparent 34%,transparent 85%,rgba(2,17,31,.35))}.fcmm-hero .aurora{position:absolute;border-radius:50%;filter:blur(55px);mix-blend-mode:screen;animation:atmospheric-drift 22s ease-in-out infinite alternate}.fcmm-hero .aurora-one{width:55%;height:20%;left:39%;top:18%;background:radial-gradient(ellipse,#1b527957,transparent 70%);transform:rotate(-24deg)}.fcmm-hero .aurora-two{width:76%;height:15%;left:32%;top:56%;background:radial-gradient(ellipse,#27648430,transparent 70%);animation-delay:-11s}.fcmm-hero .grain{position:absolute;inset:0;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h200v200H0z'/%3E%3C/svg%3E")}.fcmm-hero .site-header{height:106px;display:flex;align-items:center;gap:28px;position:relative;z-index:10}.fcmm-hero .brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.fcmm-hero .brand-mark{width:44px;height:49px}.fcmm-hero .brand>span{font-size:17px;line-height:1.2;font-weight:650;letter-spacing:-.5px}.fcmm-hero .desktop-nav{display:flex;align-items:center;justify-content:center;gap:25px;flex:1;margin-left:40px}.fcmm-hero .desktop-nav a,.fcmm-hero .desktop-nav button{background:none;padding:17px 0;font-size:12px;color:#e4e9ee;position:relative;white-space:nowrap}.fcmm-hero .desktop-nav a::after,.fcmm-hero .desktop-nav button::after{content:'';height:1px;position:absolute;bottom:5px;left:0;right:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}.fcmm-hero .desktop-nav a:hover::after,.fcmm-hero .desktop-nav button:hover::after,.fcmm-hero .desktop-nav .active::after{transform:scaleX(1)}.fcmm-hero .button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;padding:0 28px;border-radius:40px;font-size:14px;font-weight:650;white-space:nowrap;transition:transform .25s,box-shadow .3s,background .3s;position:relative;overflow:hidden}.fcmm-hero .button svg,.fcmm-hero .text-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;transition:transform .25s}.fcmm-hero .button:hover{transform:translateY(-2px)}.fcmm-hero .button:hover svg,.fcmm-hero .text-link:hover svg{transform:translateX(4px)}.fcmm-hero .button-gold{background:linear-gradient(110deg,#ffe5ae 0%,#ecc078 55%,#f5d291 100%);color:#08182a;box-shadow:0 3px 22px #e6b8690a}.fcmm-hero .button-gold::before{content:'';position:absolute;inset:-30% auto -30% -50%;width:35%;background:linear-gradient(90deg,transparent,#fff7,transparent);transform:skewX(-20deg);transition:left .65s}.fcmm-hero .button-gold:hover::before{left:120%}.fcmm-hero .button-gold:hover{box-shadow:0 5px 30px #e6b86925}.fcmm-hero .button-outline{border:1px solid var(--gold);background:#04172730;color:var(--white)}.fcmm-hero .button-outline:hover{background:#f0c67d0f;box-shadow:0 4px 25px #e6b86910}.fcmm-hero .button-outline svg{color:var(--gold)}.fcmm-hero .header-cta{font-size:12px;min-height:43px;padding:0 22px;gap:22px}.fcmm-hero .header-cta svg{width:17px}.fcmm-hero .menu-toggle,.fcmm-hero .mobile-menu{display:none}.fcmm-hero .hero-main{position:relative;min-height:506px;display:flex;align-items:center}.fcmm-hero .hero-copy{position:relative;z-index:3;padding:27px 0 30px;width:54%;pointer-events:none}.fcmm-hero .hero-copy button{pointer-events:auto}.fcmm-hero .eyebrow{text-transform:uppercase;letter-spacing:3.2px;font-size:11px;font-weight:650;color:var(--gold);line-height:1.6}.fcmm-hero .eyebrow span{margin:0 7px;color:#a28660}.fcmm-hero h1{font-family:var(--serif);font-size:clamp(66px,6.15vw,92px);line-height:1.04;letter-spacing:-2.8px;font-weight:400;margin:19px 0 15px;white-space:nowrap}.fcmm-hero h1 em{font-style:normal;color:var(--gold-light);background:linear-gradient(110deg,#ffe6b0 10%,#edb960 90%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.fcmm-hero .hero-subtitle{font-family:var(--serif);font-size:clamp(29px,2.8vw,40px);line-height:1.13;font-weight:400;letter-spacing:-.4px}.fcmm-hero .hero-description{color:#e0e7ed;font-size:17px;line-height:1.5;margin-top:23px;letter-spacing:.05px}.fcmm-hero .hero-actions{display:flex;gap:17px;margin-top:28px}.fcmm-hero .hero-actions .button{min-width:181px}.fcmm-hero .hero-assurance{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.5px;color:#97aab9;margin-top:24px}.fcmm-hero .status-light{height:4px;width:4px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px #e9c28066}.fcmm-hero .map-stage{position:absolute;pointer-events:none;right:-54px;top:-47px;width:64%;height:610px;z-index:1;animation:map-enter 2.7s ease both}.fcmm-hero .map-parallax{width:100%;height:100%;transform:translate3d(var(--px,0px),var(--py,0px),0);will-change:transform}.fcmm-hero .map-parallax canvas{width:100%;height:100%;object-fit:contain;transform:rotate(-7deg);filter:drop-shadow(0 0 14px #cb9c4c12)}.fcmm-hero .map-halo{position:absolute;inset:5% 3% 8% -5%;background:radial-gradient(ellipse at 50% 48%,#c69a4210,transparent 55%);filter:blur(30px);animation:map-halo 8s ease-in-out infinite alternate}.fcmm-hero .map-caption{position:absolute;right:2%;top:23%;font-size:9px;line-height:1.8;letter-spacing:1.8px;text-transform:uppercase;color:#bdc9d3}.fcmm-hero .map-caption span{color:var(--gold-light)}.fcmm-hero .map-footnote{position:absolute;bottom:33px;left:46%;display:flex;gap:10px;align-items:center;color:#c9b389a0;text-transform:uppercase;font-size:8px;letter-spacing:2px}.fcmm-hero .map-footnote span{width:22px;height:1px;background:#c9b38988}.fcmm-hero .stats{display:grid;grid-template-columns:repeat(4,1fr);padding:29px 0 18px;position:relative;z-index:3}.fcmm-hero .stat{display:flex;align-items:flex-start;gap:22px;padding:0 26px;position:relative;min-height:101px}.fcmm-hero .stat:first-child{padding-left:0}.fcmm-hero .stat:last-child{padding-right:0}.fcmm-hero .stat+.stat::before{content:'';position:absolute;left:0;top:7px;width:1px;height:84px;background:linear-gradient(#62718010,#6271805c,#62718020)}.fcmm-hero .stat-icon{width:44px;height:44px;flex-shrink:0;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;margin-top:4px}.fcmm-hero .stat-number{font-family:var(--serif);color:var(--gold-light);font-size:43px;line-height:1;letter-spacing:-.3px}.fcmm-hero .stat-number span{font-size:.83em}.fcmm-hero .stat-label{text-transform:uppercase;letter-spacing:2.1px;font-size:9px;font-weight:650;margin-top:10px;white-space:nowrap}.fcmm-hero .stat p{font-size:11px;color:#b9c4ce;line-height:1.5;margin-top:9px}.fcmm-hero .hero-bottom{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:4;padding:15px 0 21px}.fcmm-hero .discover{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:8px;letter-spacing:2px;color:#91a3b2;transition:color .2s}.fcmm-hero .discover:hover{color:var(--gold)}.fcmm-hero .scroll-line{width:25px;height:1px;background:#c6a26680}.fcmm-hero .down-arrow{font-size:16px;margin-left:6px}.fcmm-hero .motion-controls{display:flex;align-items:center;gap:13px}.fcmm-hero .motion-controls button{background:none;color:#879bad;display:flex;align-items:center;gap:7px;padding:7px 0;font-size:9px;letter-spacing:.3px}.fcmm-hero .motion-controls button:hover{color:var(--gold-light)}.fcmm-hero #replay-motion svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.2;fill:none}.fcmm-hero .pause-icon{width:9px;height:9px;border-left:2px solid;border-right:2px solid}.fcmm-hero.is-paused .pause-icon{width:0;height:0;border:5px solid transparent;border-right:0;border-left:7px solid currentColor}.fcmm-hero.is-paused *,.fcmm-hero.is-paused *::before,.fcmm-hero.is-paused *::after{animation-play-state:paused!important}.fcmm-hero .intro-section{background:#f9f9f6;color:#0a2140;position:relative;border-top:3px solid #dbd4c4}.fcmm-hero .intro-inner{display:flex;justify-content:space-between;align-items:center;padding-top:43px;padding-bottom:45px}.fcmm-hero .intro-section .eyebrow{color:#ab7733;font-size:10px;letter-spacing:2.5px}.fcmm-hero .intro-section h2{font-family:var(--serif);font-size:44px;line-height:1.1;font-weight:400;margin-top:9px;letter-spacing:-1px}.fcmm-hero .intro-section h2 em{color:#b88b49;font-style:italic}.fcmm-hero .intro-copy{width:44%;padding-left:32px;border-left:1px solid #dbe0e6;position:relative;display:grid;grid-template-columns:53px 1fr;gap:4px 24px}.fcmm-hero .intro-copy p{font-size:13px;line-height:1.7;color:#4f5f74}.fcmm-hero .sun-icon{width:43px;height:43px;stroke:#b88b49;stroke-width:1.15;fill:none;grid-row:1/3;align-self:center}.fcmm-hero .text-link{background:none;padding:0;display:flex;gap:13px;align-items:center;font-size:11px;font-weight:600;color:#172f49;margin-top:8px;justify-self:start}.fcmm-hero .text-link svg{width:16px;color:#af843f}.fcmm-hero dialog{width:min(550px,calc(100% - 40px));padding:47px;border:1px solid #b99a594f;border-radius:16px;background:linear-gradient(145deg,#0b2940,#051827);color:var(--white);box-shadow:0 30px 100px #0009;max-height:85svh}.fcmm-hero dialog::backdrop{background:#00101dbf;backdrop-filter:blur(9px)}.fcmm-hero dialog[open]{animation:dialog-enter .3s ease-out}.fcmm-hero .dialog-close{position:absolute;right:18px;top:11px;color:#a9bac6;background:none;font-size:30px;font-weight:400;padding:6px}.fcmm-hero .dialog-close:hover{color:var(--gold)}.fcmm-hero dialog h2{font-family:var(--serif);font-size:48px;font-weight:400;line-height:1.1;margin:15px 0 22px;color:var(--gold-light)}.fcmm-hero #dialog-content{font-size:15px;line-height:1.7;color:#c0cdd7}.fcmm-hero #dialog-content p+p{margin-top:16px}.fcmm-hero #dialog-content ul{padding-left:20px}.fcmm-hero #dialog-content li{margin:6px 0}.fcmm-hero .dialog-contact{margin-top:27px}.fcmm-hero .contact-email{color:var(--gold);text-decoration:underline;text-underline-offset:4px}.fcmm-hero .reveal{animation:content-enter 1.2s cubic-bezier(.2,.65,.2,1) both;animation-delay:var(--delay,0ms)}@keyframes content-enter{from{opacity:0;transform:translateY(22px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes map-enter{from{opacity:0;transform:translateY(17px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes atmospheric-drift{from{transform:translate(-3%,-8%) rotate(-18deg) scale(1)}to{transform:translate(4%,15%) rotate(-26deg) scale(1.12)}}@keyframes map-halo{from{opacity:.55}to{opacity:1}}@keyframes dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.fcmm-hero.hero{min-height:850px}.fcmm-hero .site-header{height:120px}.fcmm-hero .hero-main{min-height:555px}.fcmm-hero .map-stage{top:-35px;height:650px}.fcmm-hero .stats{padding-top:37px}}@media(max-width:1200px){.fcmm-hero .wrap{width:calc(100% - 72px)}.fcmm-hero .desktop-nav{gap:19px;margin-left:15px}.fcmm-hero .desktop-nav a,.fcmm-hero .desktop-nav button{font-size:10px}.fcmm-hero .site-header{gap:15px}.fcmm-hero .brand>span{font-size:15px}.fcmm-hero .brand-mark{width:39px}.fcmm-hero .header-cta{padding-inline:17px;gap:16px}.fcmm-hero .hero-main{min-height:475px}.fcmm-hero.hero{min-height:735px}.fcmm-hero .hero-copy{width:59%}.fcmm-hero h1{font-size:72px}.fcmm-hero .hero-subtitle{font-size:33px}.fcmm-hero .map-stage{right:-35px;top:-18px;width:63%;height:540px}.fcmm-hero .map-caption{right:0;font-size:7px;letter-spacing:1.2px}.fcmm-hero .map-footnote{bottom:38px;font-size:7px}.fcmm-hero .stat{padding-inline:22px;gap:16px}.fcmm-hero .stat-number{font-size:37px}.fcmm-hero .stat-icon{width:36px;height:36px}.fcmm-hero .stat-label{font-size:8px;letter-spacing:1.5px}.fcmm-hero .stat p{font-size:10px}.fcmm-hero .intro-section h2{font-size:39px}}@media(max-width:980px){.fcmm-hero .desktop-nav{gap:16px;margin-left:auto}.fcmm-hero .desktop-nav button:nth-last-child(1),.fcmm-hero .desktop-nav a:nth-last-child(2){display:none}.fcmm-hero .hero-copy{width:62%}.fcmm-hero h1{font-size:64px;letter-spacing:-2px}.fcmm-hero .hero-subtitle{font-size:31px}.fcmm-hero .hero-description{font-size:15px}.fcmm-hero .hero-actions{gap:12px}.fcmm-hero .hero-actions .button{min-width:158px;font-size:12px;padding:0 22px;gap:21px;min-height:48px}.fcmm-hero .map-stage{right:-38px;width:63%;height:505px;top:1px}.fcmm-hero .map-caption{right:0;top:17%}.fcmm-hero .hero-main{min-height:458px}.fcmm-hero.hero{min-height:705px}.fcmm-hero .stat{gap:11px;padding-inline:16px}.fcmm-hero .stat-icon{width:31px;height:31px}.fcmm-hero .stat-number{font-size:34px}.fcmm-hero .stat-label{letter-spacing:1.1px}.fcmm-hero .stat p{font-size:9px}.fcmm-hero .intro-copy{width:47%;padding-left:23px;grid-template-columns:35px 1fr;gap:4px 18px}.fcmm-hero .sun-icon{width:34px}.fcmm-hero .intro-copy p{font-size:11px}}@media(max-width:860px){.fcmm-hero .wrap{width:calc(100% - 44px)}.fcmm-hero .site-header{height:85px;justify-content:space-between;gap:12px}.fcmm-hero .brand-mark{width:32px;height:42px}.fcmm-hero .brand>span{font-size:13px}.fcmm-hero .brand{gap:7px}.fcmm-hero .desktop-nav,.fcmm-hero .header-cta{display:none}.fcmm-hero .menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;padding:12px 5px}.fcmm-hero .menu-toggle span{width:25px;height:1px;background:#e9ce9d;transition:transform .2s}.fcmm-hero .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.fcmm-hero .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.fcmm-hero .mobile-menu:not([hidden]){display:flex;position:absolute;left:-5px;right:-5px;top:75px;flex-direction:column;padding:18px 25px;background:#082238f5;border:1px solid #e8c78838;box-shadow:0 15px 45px #0008;border-radius:8px;backdrop-filter:blur(18px)}.fcmm-hero .mobile-menu a,.fcmm-hero .mobile-menu button{text-align:left;background:none;padding:13px 0;font-size:14px}.fcmm-hero .hero-main{display:block;min-height:0}.fcmm-hero .hero-copy{width:100%;padding-top:23px;padding-bottom:0}.fcmm-hero .eyebrow{font-size:8px;letter-spacing:2.4px}.fcmm-hero .eyebrow span{margin:0 4px}.fcmm-hero h1{font-size:clamp(49px,10vw,74px);letter-spacing:-1.5px;margin:16px 0 14px}.fcmm-hero .hero-subtitle{font-size:31px;line-height:1.16;max-width:470px}.fcmm-hero .hero-description{font-size:14px;line-height:1.55;margin-top:19px}.fcmm-hero .hero-description br:last-child{display:none}.fcmm-hero .hero-actions{margin-top:24px;gap:13px}.fcmm-hero .hero-actions .button{min-width:0;gap:26px;padding-inline:22px;min-height:48px;font-size:12px}.fcmm-hero .hero-assurance{font-size:9px;margin-top:19px}.fcmm-hero .map-stage{position:relative;right:auto;top:auto;width:calc(100% + 25px);height:auto;aspect-ratio:1.2;margin:0 -10px -15px;max-height:480px}.fcmm-hero .map-parallax canvas{transform:rotate(-7deg)}.fcmm-hero .map-caption{right:1%;top:16%;font-size:7px;line-height:1.8;letter-spacing:1.2px}.fcmm-hero .map-footnote{bottom:7%;left:43%;font-size:7px;letter-spacing:1.4px}.fcmm-hero .hero-vignette{background:linear-gradient(0deg,#031322 2%,transparent 29%),linear-gradient(90deg,#03152530,transparent)}.fcmm-hero.hero{min-height:0}.fcmm-hero .stats{grid-template-columns:1fr 1fr;row-gap:28px;padding-top:8px;padding-bottom:25px}.fcmm-hero .stat{padding-inline:19px;gap:16px;min-height:87px}.fcmm-hero .stat:nth-child(3){padding-left:0}.fcmm-hero .stat:nth-child(3)::before{display:none}.fcmm-hero .stat:nth-child(2){padding-right:0}.fcmm-hero .stat-number{font-size:35px}.fcmm-hero .stat-icon{height:33px;width:33px;margin-top:2px}.fcmm-hero .stat-label{font-size:7px;letter-spacing:1.6px;margin-top:8px}.fcmm-hero .stat p{font-size:9px;margin-top:7px}.fcmm-hero .stat+.stat::before{top:1px;height:79px}.fcmm-hero .hero-bottom{border-top:1px solid #75828e20;padding:13px 0 19px}.fcmm-hero .discover{font-size:7px;letter-spacing:1.4px;gap:8px}.fcmm-hero .scroll-line{width:17px}.fcmm-hero .motion-label{font-size:8px}.fcmm-hero .motion-controls{gap:14px}.fcmm-hero .intro-inner{display:block;padding-top:33px;padding-bottom:34px}.fcmm-hero .intro-section h2{font-size:39px}.fcmm-hero .intro-copy{border:0;padding:24px 0 0;width:100%;grid-template-columns:34px 1fr;gap:3px 20px}.fcmm-hero .intro-copy p{font-size:12px}.fcmm-hero .intro-section .eyebrow{font-size:8px}.fcmm-hero dialog{padding:36px 28px}.fcmm-hero dialog h2{font-size:40px}.fcmm-hero .dialog-close{top:8px;right:13px}}@media(max-width:860px){.fcmm-hero .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fcmm-hero .stat>div{min-width:0}.fcmm-hero .stat-label{white-space:normal;line-height:1.5;font-size:6.5px;letter-spacing:1.2px}}@media(max-width:380px){.fcmm-hero .wrap{width:calc(100% - 36px)}.fcmm-hero h1{font-size:46px}.fcmm-hero .hero-subtitle{font-size:27px}.fcmm-hero .hero-actions .button{padding-inline:17px;font-size:11px;gap:22px}.fcmm-hero .hero-description{font-size:13px}.fcmm-hero .stat{gap:11px;padding-inline:14px}.fcmm-hero .stat-label{font-size:6.5px;letter-spacing:1.2px}.fcmm-hero .stat-icon{width:28px}.fcmm-hero .stat-number{font-size:32px}}.fcmm-hero .site-header{animation:header-enter 1.5s cubic-bezier(.16,1,.3,1) both .12s}.fcmm-hero .title-mask{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.13em;margin-bottom:-.13em;perspective:700px}.fcmm-hero .title-word{display:inline-block;transform-origin:50% 100%;animation:word-enter 1.6s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay)}.fcmm-hero h1 em.title-word{background-image:linear-gradient(110deg,#efc57d 10%,#ffe2a7 35%,#fffaf0 48%,#efc57d 62%,#e9b55e 85%);background-size:230% 100%;animation:word-enter 1.6s cubic-bezier(.16,1,.3,1) both,title-light 8s ease-in-out infinite;animation-delay:var(--delay),3.5s}.fcmm-hero .subtitle-mask{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.fcmm-hero .subtitle-line{display:inline-block;animation:line-enter 1.3s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay)}.fcmm-hero .hero-copy>.reveal{animation-duration:1.25s}.fcmm-hero .map-stage{animation:scene-enter 3.8s cubic-bezier(.16,1,.3,1) both}.fcmm-hero .map-parallax{transform:perspective(1100px) translate3d(var(--px,0px),var(--py,0px),0) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d}.fcmm-hero .map-parallax canvas{animation:map-float 14s ease-in-out infinite 3.8s;transform-origin:50% 50%}.fcmm-hero .map-caption,.fcmm-hero .map-footnote{animation:content-enter 1.5s cubic-bezier(.16,1,.3,1) both 2.5s}.fcmm-hero .aurora-one{background:radial-gradient(ellipse,#287eb985,transparent 70%);animation-duration:16s}.fcmm-hero .aurora-two{background:radial-gradient(ellipse,#34739850,transparent 70%);animation-duration:19s}.fcmm-hero .atmosphere::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 65% 34%,#6ca4bd60,transparent 57%);animation:light-arrival 4.5s ease-out both}.fcmm-hero .map-halo{background:radial-gradient(ellipse at 57% 55%,#d5a34c32,transparent 63%);animation-duration:5.5s}.fcmm-hero .hero-actions .button-gold::before{animation:button-light 10s ease-in-out infinite 2.8s}.fcmm-hero .stat-number .count-value{font-size:1em;font-variant-numeric:lining-nums tabular-nums}.fcmm-hero .hero-bottom{animation:none}.fcmm-hero .motion-controls button{color:#c0cdd5}.fcmm-hero.is-inactive *,.fcmm-hero.is-inactive *::before,.fcmm-hero.is-inactive *::after{animation-play-state:paused!important}@keyframes header-enter{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes word-enter{from{opacity:0;transform:translate3d(0,125%,0) rotateX(22deg) rotateZ(2deg)}to{opacity:1;transform:translate3d(0,0,0) rotateX(0) rotateZ(0)}}@keyframes line-enter{from{opacity:.2;transform:translateY(115%)}to{opacity:1;transform:translateY(0)}}@keyframes scene-enter{from{opacity:0;transform:translate3d(42px,32px,0) scale(.86);filter:blur(6px)}35%{opacity:1;filter:blur(0)}to{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}}@keyframes light-arrival{0%{opacity:0;transform:scale(.8)}35%{opacity:.75}78%{opacity:1;transform:scale(1.03)}100%{opacity:.3;transform:scale(1.12)}}@keyframes map-float{0%,100%{transform:translateY(0) rotate(-7deg) scale(1)}50%{transform:translateY(-5px) rotate(-6.7deg) scale(1.007)}}@keyframes title-light{0%,100%{background-position:100% 50%}50%{background-position:0% 50%}}@keyframes button-light{0%,60%{left:-50%}80%,100%{left:150%}}@media(max-width:860px){.fcmm-hero .motion-controls{gap:12px}.fcmm-hero .motion-controls button{font-size:8px}.fcmm-hero .discover{letter-spacing:1px}.fcmm-hero .scroll-line{display:none}.fcmm-hero .hero-bottom{gap:8px}}@media(prefers-reduced-motion:reduce){.fcmm-hero{scroll-behavior:auto}.fcmm-hero *,.fcmm-hero *::before,.fcmm-hero *::after{animation:none!important;transition:none!important}.fcmm-hero .map-parallax{transform:none!important}}

.fcmm-hero{line-height:normal;}

/* Official FCMM wordmark supplied by the client. */
.fcmm-hero .brand { gap: 0; }
.fcmm-hero .brand-logo { display: block; width: clamp(154px, 13vw, 188px); height: auto; }
@media (max-width: 1200px) { .fcmm-hero .brand-logo { width: 156px; } }
@media (max-width: 760px) { .fcmm-hero .brand-logo { width: 138px; } }


/* Keep the Australia network anchored during its entrance animation and on pointer hover. */
.fcmm-hero .map-parallax { transform: translate3d(0, 0, 0) !important; }
.fcmm-hero .map-parallax canvas { animation: none !important; transform: rotate(-7deg) !important; }

/* The copy column is non-interactive so the map stays visually quiet; its navigation CTAs remain clickable. */
.fcmm-hero .hero-copy .button { pointer-events: auto; }


/* A transient reset class lets an initial or re-entering viewport replay the complete entrance sequence. */
.fcmm-hero.replay-reset .site-header,
.fcmm-hero.replay-reset .title-word,
.fcmm-hero.replay-reset .subtitle-line,
.fcmm-hero.replay-reset .hero-copy > .reveal,
.fcmm-hero.replay-reset .map-stage,
.fcmm-hero.replay-reset .map-caption,
.fcmm-hero.replay-reset .map-footnote,
.fcmm-hero.replay-reset .atmosphere::after {
  animation: none !important;
}


/* Current FCMM Hero treatment: black and red backdrop while the Australia network remains unchanged. */
.fcmm-hero { --navy: #080708; }
.fcmm-hero.hero {
  background:
    radial-gradient(ellipse at 74% 29%, rgba(121, 7, 20, .62) 0%, rgba(58, 4, 12, .38) 30%, transparent 58%),
    radial-gradient(ellipse at 27% 94%, rgba(72, 5, 13, .54) 0%, transparent 46%),
    linear-gradient(135deg, #050506 0%, #0c080a 47%, #18060b 100%) !important;
}
.fcmm-hero .hero-vignette {
  background: linear-gradient(90deg, rgba(0, 0, 0, .78), transparent 57%), linear-gradient(0deg, #080708 2%, transparent 34%, transparent 85%, rgba(0, 0, 0, .42)) !important;
}
.fcmm-hero .aurora-one { background: radial-gradient(ellipse, rgba(163, 13, 32, .38), transparent 70%) !important; }
.fcmm-hero .aurora-two { background: radial-gradient(ellipse, rgba(99, 10, 23, .28), transparent 70%) !important; }
@media (max-width: 860px) {
  .fcmm-hero .hero-vignette { background: linear-gradient(0deg, #080708 2%, transparent 29%), linear-gradient(90deg, rgba(17, 4, 8, .26), transparent) !important; }
}


/* Official red/white inverse lockup for the dark Hero. */
.fcmm-hero .brand-logo.fcmm-mark-lockup { display: inline-flex; width: auto; align-items: center; gap: 10px; }
.fcmm-hero .brand-logo.fcmm-mark-lockup img { display: block; width: 43px; height: 46px; object-fit: contain; }
.fcmm-hero .brand-logo.fcmm-mark-lockup > span { color: #fff; font: 700 16px/1.04 'DM Sans', Arial, Helvetica, sans-serif; letter-spacing: -.35px; }
@media (max-width: 760px) {
  .fcmm-hero .brand-logo.fcmm-mark-lockup img { width: 35px; height: 38px; }
  .fcmm-hero .brand-logo.fcmm-mark-lockup > span { font-size: 13px; }
}

@keyframes fcmm-title-light-calm {
  0%, 100% { background-position: 82% 50%; filter: brightness(1); }
  50% { background-position: 38% 50%; filter: brightness(1.035); }
}

/* Restore the original Hero entrance pacing; only the gold-word shimmer remains deliberately calm. */
.fcmm-hero .site-header { animation-duration: 1.5s !important; animation-delay: .12s !important; }
.fcmm-hero .title-word, .fcmm-hero h1 em.title-word { animation-duration: 1.6s !important; }
.fcmm-hero .subtitle-line { animation-duration: 1.3s !important; }
.fcmm-hero .hero-copy > .reveal { animation-duration: 1.25s !important; }
.fcmm-hero .map-stage { animation-duration: 3.8s !important; }
.fcmm-hero .map-caption, .fcmm-hero .map-footnote { animation-duration: 1.5s !important; animation-delay: 2.5s !important; }
.fcmm-hero .atmosphere::after { animation-duration: 4.5s !important; }
.fcmm-hero h1 em.title-word { animation: word-enter 1.6s cubic-bezier(.16,1,.3,1) both, fcmm-title-light-calm 30s ease-in-out infinite !important; animation-delay: var(--delay), 5.2s !important; }

/* Render the full user-supplied red/white wordmark unchanged on the dark Hero. */
.fcmm-hero img.brand-logo.fcmm-mark-lockup { display: block; width: 184px; height: auto; }
@media (max-width: 760px) { .fcmm-hero img.brand-logo.fcmm-mark-lockup { width: 156px; } }

/* Resilient first paint: never hide the Hero while the deferred canvas animation initialises. */
.fcmm-hero:not(.hero-ready) .site-header,
.fcmm-hero:not(.hero-ready) .title-word,
.fcmm-hero:not(.hero-ready) .subtitle-line,
.fcmm-hero:not(.hero-ready) .hero-copy > .reveal,
.fcmm-hero:not(.hero-ready) .map-stage,
.fcmm-hero:not(.hero-ready) .map-caption,
.fcmm-hero:not(.hero-ready) .map-footnote,
.fcmm-hero:not(.hero-ready) .stat.reveal,
.fcmm-hero:not(.hero-ready) .atmosphere::after {
  animation: none !important;
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

/* The first painted frame is the finished ink backdrop, not a partially-reset
   animation. JavaScript removes this state in the same frame that it starts
   the entrance, so direct loads and returns never show content then hide it. */
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .site-header,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .title-word,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .subtitle-line,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .hero-copy > .reveal,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .map-stage,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .map-caption,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .map-footnote,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .stat.reveal,
html.fcmm-hero-js .fcmm-hero.hero-pending:not(.hero-replaying) .atmosphere::after {
  opacity: 0 !important;
  filter: none !important;
}
.fcmm-hero.hero-fallback .map-stage {
  min-height: 390px;
  border: 1px solid rgba(240,198,125,.34);
  border-radius: 48% 52% 45% 55% / 43% 46% 54% 57%;
  background: radial-gradient(circle at 48% 44%, rgba(240,198,125,.18), transparent 0 8%, transparent 35%), radial-gradient(ellipse at 50% 50%, rgba(230,33,26,.18), transparent 0 40%, transparent 70%);
}
.fcmm-hero.hero-fallback .map-stage::after {
  position: absolute;
  inset: 17%;
  border: 1px solid rgba(240,198,125,.45);
  border-radius: 48% 52% 45% 55% / 43% 46% 54% 57%;
  content: '';
  box-shadow: 0 0 0 20px rgba(230,33,26,.06), 0 0 0 42px rgba(240,198,125,.035);
}

/* Stable Hero timeline: copy, CTAs, map stage and metrics never wait for animation delays. */
.fcmm-hero .site-header,
.fcmm-hero .title-word,
.fcmm-hero h1 em.title-word,
.fcmm-hero .subtitle-line,
.fcmm-hero .hero-copy > .reveal,
.fcmm-hero .map-stage,
.fcmm-hero .map-caption,
.fcmm-hero .map-footnote,
.fcmm-hero .stat.reveal {
  animation: none !important;
}
.fcmm-hero .map-parallax { transform: none !important; }
.fcmm-hero .map-parallax canvas { transform: rotate(-7deg) !important; }

/* Navigation remains usable while Hero scripts or map assets are still loading. */
.fcmm-hero .universe-login-fallback { display: none; }
.fcmm-hero:not(.hero-ready) .universe-login-fallback { display: flex; align-items: center; gap: 12px; }
.fcmm-hero:not(.hero-ready) .universe-login-fallback a { padding: 8px 0; color: var(--gold-light); font-size: 10px; white-space: nowrap; }
.fcmm-hero:not(.hero-ready) .universe-login-wrap { display: none; }
@media (max-width: 860px) {
  .fcmm-hero:not(.hero-ready) .site-header { align-items: flex-start; }
  .fcmm-hero:not(.hero-ready) .desktop-nav {
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0 18px;
    margin: 0;
    padding: 13px 0 15px;
    border-top: 1px solid rgba(240,198,125,.24);
    border-bottom: 1px solid rgba(240,198,125,.24);
    background: rgba(8,7,8,.92);
    backdrop-filter: blur(16px);
  }
  .fcmm-hero:not(.hero-ready) .desktop-nav > a { display: block !important; padding: 8px 0; font-size: 11px; }
  .fcmm-hero:not(.hero-ready) .desktop-nav .universe-login-fallback { width: 100%; padding-top: 5px; border-top: 1px solid rgba(255,255,255,.11); }
  .fcmm-hero:not(.hero-ready) .menu-toggle { display: none !important; }
  .fcmm-hero:not(.hero-ready) .hero-main { padding-top: 74px; }
}

/* A Home return intentionally replays every visible Hero entrance, not only the map Canvas. */
.fcmm-hero.hero-replaying .site-header {
  animation: header-enter 1.5s cubic-bezier(.16,1,.3,1) both .12s !important;
}
.fcmm-hero.hero-replaying .title-word {
  animation: word-enter 1.6s cubic-bezier(.16,1,.3,1) both !important;
  animation-delay: var(--delay) !important;
}
.fcmm-hero.hero-replaying h1 em.title-word {
  animation: word-enter 1.6s cubic-bezier(.16,1,.3,1) both, fcmm-title-light-calm 30s ease-in-out infinite !important;
  animation-delay: var(--delay), 5.2s !important;
}
.fcmm-hero.hero-replaying .subtitle-line {
  animation: line-enter 1.3s cubic-bezier(.16,1,.3,1) both !important;
  animation-delay: var(--delay) !important;
}
.fcmm-hero.hero-replaying .hero-copy > .reveal,
.fcmm-hero.hero-replaying .stat.reveal {
  animation: content-enter 1.25s cubic-bezier(.2,.65,.2,1) both !important;
  animation-delay: var(--delay) !important;
}
.fcmm-hero.hero-replaying .map-stage {
  animation: scene-enter 3.8s cubic-bezier(.16,1,.3,1) both !important;
}
.fcmm-hero.hero-replaying .map-caption,
.fcmm-hero.hero-replaying .map-footnote {
  animation: content-enter 1.5s cubic-bezier(.16,1,.3,1) both 2.5s !important;
}
.fcmm-hero.hero-replaying .atmosphere::after {
  animation: light-arrival 4.5s ease-out both !important;
}
@media (prefers-reduced-motion: reduce) {
  .fcmm-hero.hero-replaying *,
  .fcmm-hero.hero-replaying *::before,
  .fcmm-hero.hero-replaying *::after { animation: none !important; }
}
