/* The old approach painted html/body navy, which — on any page shorter
   than the viewport — showed navy as the page background too, not just
   behind the footer. That is what was turning other parts of the site
   blue. Colour is removed from html/body entirely; instead this pushes
   .glh-footer to the bottom of the viewport with a flex layout, so on
   short pages the gap below the real content is closed by the footer
   itself rather than showing blank white space. No page background is
   touched anywhere outside the footer. */
html,
body{
	height:100%;
}
body{
	display:flex;
	flex-direction:column;
	min-height:100vh;
}
body > .gridbit-site-container{
	display:flex;
	flex-direction:column;
	flex:1 0 auto;
	width:100%;
}
body > .gridbit-site-container > #gridbit-wrapper-outside{
	flex:1 0 auto;
}
.glh-footer{
	--glh-bg:#0A1B3D;
	--glh-bg-2:#061127;
	--glh-gold:#C9A24B;
	--glh-gold-soft:#E4C784;
	--glh-cream:#ECEEF6;
	--glh-muted:#8C99C2;
	--glh-line:rgba(236,238,246,0.12);
	--glh-line-strong:rgba(236,238,246,0.22);
	--glh-radius:6px;
	background:var(--glh-bg);
	color:var(--glh-cream);
	font-family:'Work Sans',-apple-system,BlinkMacSystemFont,sans-serif;
	font-size:15px;
	line-height:1.6;
	position:relative;
	flex-shrink:0;
	margin:auto 0 -1px;
}
.glh-footer *{box-sizing:border-box;}
.glh-inner{max-width:1200px;margin:0 auto;padding:0 28px;}

.glh-top{padding:56px 0 40px;display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--glh-line);}
.glh-brand-block{max-width:400px;}
.glh-wordmark{display:flex;align-items:center;gap:10px;margin:0 0 14px;}
.glh-wordmark.align-center{justify-content:center;text-align:center;}
.glh-wordmark img{display:block;height:auto;}
.glh-wordmark span{font-family:Georgia,'Times New Roman',serif;font-weight:600;font-size:24px;letter-spacing:0.2px;color:var(--glh-cream);}
.glh-tagline{color:var(--glh-muted);font-size:14.5px;margin:0;max-width:340px;}

.glh-newsletter{width:100%;max-width:380px;}
.glh-newsletter .glh-nl-head{font-family:Georgia,'Times New Roman',serif;font-size:16px;font-weight:600;margin:0 0 10px;color:var(--glh-cream);display:block;}
.glh-newsletter-row{display:flex;border:1px solid var(--glh-line-strong);border-radius:var(--glh-radius);overflow:hidden;background:rgba(236,238,246,0.04);margin:0;}
.glh-newsletter-row input{flex:1;background:transparent;border:none;padding:12px 14px;color:var(--glh-cream);font-family:inherit;font-size:14px;outline:none;min-width:0;}
.glh-newsletter-row input::placeholder{color:rgba(236,238,246,0.4);}
.glh-newsletter-row button{background:var(--glh-gold);border:none;color:#241A08;font-weight:600;font-size:13.5px;letter-spacing:0.3px;padding:0 20px;cursor:pointer;white-space:nowrap;}
.glh-newsletter small{display:block;margin-top:9px;color:rgba(236,238,246,0.4);font-size:12px;}

.glh-roofline{display:block;width:100%;height:20px;}
.glh-roofline path{stroke:var(--glh-line-strong);stroke-width:1;fill:none;}

.glh-columns{padding:36px 0 8px;display:flex;flex-wrap:wrap;gap:28px;border-bottom:1px solid var(--glh-line);}
.glh-col{flex:1 1 160px;min-width:150px;}
.glh-col-address{flex:1.6 1 240px;}
.glh-col-head{padding:8px 0;}
.glh-col-head h3{font-family:Georgia,'Times New Roman',serif;font-weight:600;font-size:15.5px;margin:0;color:var(--glh-cream);letter-spacing:0.2px;}

/* Tap-to-reveal menus: a column's links stay hidden until its title
   (the <summary>) is tapped or clicked. Built on native <details>, so it
   needs no JavaScript and works the same on mobile and desktop. */
.glh-menu-toggle{border:none;margin:0;padding:8px 0;}
.glh-menu-toggle .glh-col-title{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:Georgia,'Times New Roman',serif;font-weight:600;font-size:15.5px;color:var(--glh-cream);letter-spacing:0.2px;padding:0;-webkit-tap-highlight-color:transparent;}
.glh-menu-toggle .glh-col-title::-webkit-details-marker{display:none;}
.glh-menu-toggle .glh-col-title::marker{content:'';}
.glh-menu-toggle .glh-col-title::after{content:'+';flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--glh-gold);font-size:16px;font-weight:400;border:1px solid var(--glh-line-strong);border-radius:50%;transition:transform .2s ease,background-color .2s ease;}
.glh-menu-toggle:hover .glh-col-title::after{border-color:var(--glh-gold);}
.glh-menu-toggle[open] .glh-col-title::after{content:'–';}

.glh-col-body{margin:14px 0 0;}
.glh-col-body ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;}
.glh-link-anchor{display:block;text-decoration:none;}
.glh-link-label{display:block;color:var(--glh-cream);font-size:14px;font-weight:500;}
.glh-link-desc{display:block;margin-top:3px;color:rgba(140,153,194,0.8);font-size:12.5px;line-height:1.5;}
.glh-link-anchor:hover .glh-link-label{color:var(--glh-gold-soft);}
.glh-login-cta{color:var(--glh-gold-soft);font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap;}
.glh-link-anchor:hover .glh-login-cta{color:var(--glh-gold);}

.glh-address p{margin:0 0 4px;color:var(--glh-muted);font-size:14px;}
.glh-address .glh-contact{display:flex;align-items:center;gap:9px;margin:10px 0 0;color:var(--glh-muted);font-size:14px;}
.glh-address .glh-contact svg{flex-shrink:0;color:var(--glh-gold);}
.glh-address .glh-contact a{color:var(--glh-muted);text-decoration:none;}
.glh-address .glh-contact a:hover{color:var(--glh-gold-soft);}

.glh-social-block{margin-top:18px;}
.glh-social-heading{display:block;margin:0 0 10px;color:var(--glh-cream);font-family:Georgia,'Times New Roman',serif;font-weight:600;font-size:13.5px;letter-spacing:0.3px;}
.glh-social{display:flex;gap:10px;margin-top:0;}
.glh-social a{width:32px;height:32px;border:1px solid var(--glh-line-strong);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--glh-muted);text-decoration:none;}
.glh-social a:hover{border-color:var(--glh-gold);color:var(--glh-gold-soft);}
.glh-social svg{width:14px;height:14px;}

.glh-bottom{padding:22px 0 30px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;}
.glh-bottom-left{color:rgba(236,238,246,0.45);font-size:13px;}
.glh-bottom-links{display:flex;flex-wrap:wrap;gap:18px;}
.glh-bottom-links a{color:rgba(236,238,246,0.55);text-decoration:none;font-size:13px;}
.glh-bottom-links a:hover{color:var(--glh-gold-soft);}
.glh-lang{display:flex;align-items:center;gap:7px;color:rgba(236,238,246,0.55);font-size:13px;border:1px solid var(--glh-line-strong);border-radius:var(--glh-radius);padding:6px 12px;}

/* Branded "Oops" 404 page (see templates/404-oops.php). Scoped under
   .glh-404 so it can't leak into or be affected by theme styles. */
.glh-404{--glh-bg:#0A1B3D;--glh-gold:#C9A24B;--glh-gold-soft:#E4C784;--glh-cream:#ECEEF6;--glh-muted:#8C99C2;--glh-line-strong:rgba(10,27,61,0.14);display:flex;align-items:center;justify-content:center;padding:100px 20px;min-height:50vh;}
.glh-404 *{box-sizing:border-box;}
.glh-404-card{max-width:440px;text-align:center;}
.glh-404-icon{margin:0 auto 18px;display:block;}
.glh-404-card h1{font-family:Georgia,'Times New Roman',serif;font-weight:600;font-size:34px;margin:0 0 10px;color:var(--glh-bg);letter-spacing:0.2px;}
.glh-404-card p{margin:0 0 6px;color:#3b4766;font-size:16px;line-height:1.5;}
.glh-404-sub{color:#7c88a8 !important;font-size:14px !important;margin-bottom:26px !important;}
.glh-404-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.glh-404-btn{display:inline-block;padding:12px 26px;border-radius:6px;background:var(--glh-bg);color:#fff;text-decoration:none;font-weight:600;font-size:14px;letter-spacing:0.2px;}
.glh-404-btn:hover{background:#0f2a5c;color:#fff;}
.glh-404-btn-ghost{background:transparent;color:var(--glh-bg);border:1px solid var(--glh-line-strong);}
.glh-404-btn-ghost:hover{border-color:var(--glh-bg);color:var(--glh-bg);}

@media (max-width:820px){
	.glh-columns{gap:22px;padding-top:24px;}
	.glh-col{flex-basis:100%;}
	.glh-top{padding:44px 0 32px;}
	.glh-bottom{flex-direction:column;align-items:flex-start;}
}

.glh-col-go-pro .glh-col-title{color:var(--glh-gold-soft);}
.glh-col-go-pro .glh-col-title::after{border-color:var(--glh-gold);}
.glh-col-go-pro .glh-link-label{font-weight:600;}

.glh-launch-loader{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(6,17,39,.97);opacity:1;visibility:visible;transition:opacity .55s ease,visibility .55s ease;font-family:'Work Sans',-apple-system,BlinkMacSystemFont,sans-serif;}
.glh-launch-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none;}
.glh-launch-loader-card{position:relative;width:min(560px,100%);text-align:center;padding:48px 28px;border:1px solid rgba(201,162,75,.28);background:linear-gradient(145deg,rgba(10,27,61,.98),rgba(4,12,29,.98));box-shadow:0 30px 90px rgba(0,0,0,.38);border-radius:14px;}
.glh-launch-close{position:absolute;top:14px;right:14px;width:30px;height:30px;padding:0;border:1px solid rgba(236,238,246,.18);border-radius:50%;background:rgba(236,238,246,.04);color:#AAB5D3;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.glh-launch-close:hover{border-color:#C9A24B;color:#E4C784;}
.glh-launch-mark{width:58px;height:58px;margin:0 auto 20px;border:1px solid rgba(201,162,75,.55);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;animation:glhPulse 1.7s ease-in-out infinite;}
.glh-launch-mark:before,.glh-launch-mark:after{content:'';position:absolute;border:1px solid rgba(201,162,75,.22);border-radius:50%;inset:-8px;animation:glhRing 1.8s ease-out infinite;}
.glh-launch-mark:after{inset:-16px;animation-delay:.35s;}
.glh-launch-mark span{width:13px;height:13px;border-radius:50%;background:#C9A24B;display:block;box-shadow:0 0 20px rgba(201,162,75,.7);}
.glh-launch-kicker{margin:0 0 10px;color:#C9A24B;text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:700;}
.glh-launch-loader h2{margin:0 auto 10px;color:#ECEEF6;font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.25;font-weight:600;}
.glh-launch-loader-card>p:not(.glh-launch-kicker):not(.glh-launch-note){margin:0 auto 24px;color:#AAB5D3;font-size:14px;}
.glh-launch-countdown{display:flex;justify-content:center;align-items:center;gap:8px;margin:0 auto 18px;color:#ECEEF6;font-size:30px;font-weight:700;letter-spacing:1px;font-variant-numeric:tabular-nums;}
.glh-launch-countdown span{min-width:58px;padding:10px 6px;border:1px solid rgba(236,238,246,.12);background:rgba(236,238,246,.04);border-radius:8px;}
.glh-launch-countdown b{color:#C9A24B;font-weight:500;}
.glh-launch-note{margin:0;color:#8C99C2;font-size:12px;}
@keyframes glhPulse{0%,100%{transform:scale(.96);opacity:.75}50%{transform:scale(1.05);opacity:1}}
@keyframes glhRing{0%{transform:scale(.85);opacity:.8}100%{transform:scale(1.18);opacity:0}}
@media (prefers-reduced-motion:reduce){.glh-launch-mark,.glh-launch-mark:before,.glh-launch-mark:after{animation:none}.glh-launch-loader{transition:none}}
@media (max-width:520px){.glh-launch-loader-card{padding:38px 18px}.glh-launch-loader h2{font-size:23px}.glh-launch-countdown{font-size:22px;gap:4px}.glh-launch-countdown span{min-width:47px;padding:9px 3px}}
