/* Go Midnight light skin over the rethemed room30 layout (r30.css). Loaded after r30.css. */
:root{--app-font-display:'Inter Tight',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;--app-font-sans:'Inter Tight',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --gm-ink:#0b0d16;--gm-ink-2:#2a2f3d;--gm-soft:#545b6e;--gm-blue:#2f5ce0;--gm-blue-2:#4f7cff;--gm-edge:#dfe4ef;--gm-paper:#f4f6fb}
html,body.gm-skin{background:#f4f6fb}
body.gm-skin{color:var(--gm-ink);font-family:'Inter Tight',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;margin:0}
#gm-page{background-color:#f4f6fb;background-image:linear-gradient(rgba(11,20,32,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(11,20,32,.045) 1px,transparent 1px);background-size:64px 64px;min-height:100vh}
#gm-page .theme-luxury-light{background:transparent!important;color:var(--gm-ink)}
/* type: GM display face, sentence case headings, same sizes as the reference */
[style*="app-font-display"],.font-display{font-family:'Inter Tight',-apple-system,BlinkMacSystemFont,sans-serif!important;letter-spacing:-.025em!important}
h1[style*="app-font-display"],h2[style*="app-font-display"],h3[style*="app-font-display"],h4[style*="app-font-display"],h2.uppercase,h1.uppercase,h3.uppercase{text-transform:none!important;font-weight:800!important}
h1,h2,h3{font-family:'Inter Tight',sans-serif}
/* section surfaces */
#gm-page section{position:relative}
/* gold gradient text/bg -> GM blue */
.gold-grad-text{background-image:linear-gradient(90deg,#1f45c4 0%,#2f5ce0 45%,#4f7cff 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
.gold-grad-bg{background-image:linear-gradient(90deg,#1f45c4 0%,#2f5ce0 40%,#4f7cff 70%,#2f5ce0 100%)!important;color:#fff}
.gold-grad-bg .text-black,.gold-grad-bg.text-black{color:#fff!important}
/* CTAs: GM blue, white text */
.gm-cta{background:linear-gradient(135deg,#5b86ff 0%,#2f5ce0 55%,#1f45c4 100%)!important;color:#fff!important;border:0!important;box-shadow:0 22px 44px -18px rgba(47,92,224,.65),inset 0 1px 0 rgba(255,255,255,.25)!important}
.gm-cta>span>span:not(.rounded-full),.gm-cta>span:not(:first-child),.gm-cta span.font-display,.gm-cta .text-white,.gm-cta [class*="text-white"]{color:#fff!important;-webkit-text-fill-color:#fff!important}
.gm-cta [style*="text-shadow"]{text-shadow:none!important}
.gm-cta .rounded-full.bg-white{color:#2f5ce0!important}
.cta-mega-pulse{animation:gmPulse 2.6s ease-in-out infinite!important}
@keyframes gmPulse{0%,100%{box-shadow:0 22px 44px -18px rgba(47,92,224,.65)}50%{box-shadow:0 26px 60px -14px rgba(47,92,224,.85)}}
/* prices: green today, red was */
.gm-green{background-image:linear-gradient(180deg,#4ade80 0%,#16a34a 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
.gm-red{color:#dc2626!important;-webkit-text-fill-color:#dc2626!important;text-decoration-color:#dc2626!important}
/* order card */
#hero-lead-form{background:#fff!important;border:1px solid var(--gm-edge)!important;box-shadow:0 40px 80px -46px rgba(10,20,60,.5);border-radius:14px!important}
#hero-lead-form fieldset{background:#fff!important;border-color:#cfd6e6!important}
#hero-lead-form legend{background:#fff!important;color:var(--gm-soft)!important}
#hero-lead-form input,#hero-lead-form select{color:var(--gm-ink)!important}
#hero-lead-form option{background:#fff!important;color:var(--gm-ink)}
.gm-ferr{color:#dc2626;font-size:13px;font-weight:600;min-height:0;margin:2px 0 0;text-align:left}
/* marquees: blue strips with white text */
.gm-strip{background:linear-gradient(90deg,#1f45c4,#2f5ce0 50%,#1f45c4)!important;border-color:transparent!important}
.gm-strip *{color:#fff!important;-webkit-text-fill-color:#fff!important}
.gm-strip [class*="gold-grad-text"]{background:none!important;color:#cfdcff!important;-webkit-text-fill-color:#cfdcff!important}
.gm-strip>.absolute{display:none}
/* lesson / tool mock screens */
.gm-mock{position:absolute;inset:0;padding-top:10px;background:#fff;display:flex}
.gm-mock .sb{width:22%;background:#f1f4fb;border-right:1px solid #e3e8f2;padding:8px 6px;display:flex;flex-direction:column;gap:5px}
.gm-mock .sb i{display:block;height:4px;border-radius:3px;background:#d7deec}
.gm-mock .sb i.on{background:#2f5ce0}
.gm-mock .mn{flex:1;padding:8px 9px;display:flex;flex-direction:column;gap:6px}
.gm-mock .k{font-size:7px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#2f5ce0;line-height:1}
.gm-mock .t{font-size:9.5px;font-weight:800;color:#0b0d16;line-height:1.15;letter-spacing:-.01em}
.gm-mock .v{flex:1;border-radius:5px;background:radial-gradient(120% 90% at 80% 10%,#4f7cff 0%,#1f45c4 55%,#0b1a4a 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.gm-mock .v b{width:22px;height:22px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 5px rgba(255,255,255,.18)}
.gm-mock .v b:after{content:'';border-left:7px solid #2f5ce0;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;margin-left:2px}
.gm-mock .v img{position:absolute;right:6px;bottom:6px;width:20px;height:20px;border-radius:50%;object-fit:cover;border:1.5px solid #fff}
/* faq */
.gm-faq-a{overflow:hidden;transition:max-height .3s,opacity .3s}
/* modal (upsell one click) */
.modal{position:fixed;inset:0;background:rgba(11,13,22,.55);display:none;align-items:flex-start;justify-content:center;z-index:200;padding:40px 16px;overflow:auto}
.modal.open{display:flex}
.modal-card{background:#fff;border-radius:20px;max-width:560px;width:100%;padding:26px;position:relative;box-shadow:0 40px 90px -30px rgba(10,20,60,.6);font-family:'Inter Tight',sans-serif;color:#0b0d16}
.modal-card h3{margin:4px 0 6px;font-size:24px;letter-spacing:-.02em}
.modal-card .eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#2f5ce0}
.modal-card .m-sub{margin:0 0 16px;color:#545b6e;font-size:15px}
.modal-x{position:absolute;top:12px;right:14px;border:0;background:#eef1f8;width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer;color:#0b0d16}
.busy{display:none;text-align:center;padding:30px 0}
.spin{width:34px;height:34px;border-radius:50%;border:3px solid #dfe4ef;border-top-color:#2f5ce0;margin:0 auto 12px;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
/* kpi + calculator block */
.gm-kpi-wrap{padding:0}

