/*
 Theme Name: Hello Elementor Child – Meyer Global (MGM)
 Theme URI: https://meyerglobalmgmt.com
 Author: Meyer Global
 Author URI: https://meyerglobalmgmt.com
 Description: Child theme for Hello Elementor with GSAP scroll effects, fallback animations, and animated SVG background.
 Version: 1.0.4
 Template: hello-elementor
 Text Domain: mgm-child
*/
:root{--bg:#0d0f12;--bg-2:#12151a;--text:#e9edf3;--muted:#a7b0be;--accent:#78f0c0;--accent-2:#8aa9ff;--card:rgba(255,255,255,0.04);--border:rgba(255,255,255,0.08);--radius:16px;}
body{font-family:Sora,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;}
.mgm-container{width:min(1200px,92vw);margin-inline:auto;}
.mgm-section{position:relative;padding:clamp(64px,8vw,120px) 0;}
.mgm-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(16px,3vw,32px);backdrop-filter:blur(8px);}
h1,h2,h3{line-height:1.12;margin:0 0 16px;font-family:'Fraunces',Sora,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-weight:600;}
.mgm-lead{font-size:clamp(18px,2.4vw,22px);color:var(--muted);max-width:70ch;}
.mgm-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border-radius:999px;text-decoration:none;color:#0a0d10;background:var(--accent);font-weight:600;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s;}
.mgm-btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(120,240,192,.25);}
.mgm-btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border);}
.mgm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;}
@media (max-width:1000px){.mgm-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.mgm-grid{grid-template-columns:1fr}}
.mgm-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:center;}
.mgm-logo-grid img{width:100%;max-height:56px;object-fit:contain;filter:grayscale(100%) contrast(110%);opacity:.9;}
@media (max-width:900px){.mgm-logo-grid{grid-template-columns:repeat(2,1fr)}}
.mgm-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:900px){.mgm-stats-row{grid-template-columns:1fr}}
.mgm-stat{display:flex;align-items:baseline;gap:8px;}
.mgm-stat .count{font-size:clamp(36px,6vw,64px);font-weight:800;color:var(--accent);}
.mgm-contact-form{display:grid;gap:14px;max-width:560px;}
.mgm-contact-form input,.mgm-contact-form textarea{background:rgba(255,255,255,0.03);border:1px solid var(--border);color:var(--text);padding:12px 14px;border-radius:10px;width:100%;}
.mgm-contact-form input:focus,.mgm-contact-form textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(120,240,192,.15);}
.reveal{opacity:0;transform:translateY(20px);will-change:transform,opacity;transition:opacity .7s ease, transform .7s ease;}
.reveal.is-inview{opacity:1;transform:translateY(0)}
.hero{position:relative;min-height:58vh;display:flex;align-items:center;}
.hero .hero-media{position:absolute;inset:0;z-index:-1;overflow:hidden;}
.hero .bg-svg{position:absolute;inset:0;width:100%;height:100%;opacity:.35;filter:saturate(1.05) hue-rotate(4deg);}
.hero-overlay{position:absolute;inset:0;pointer-events:none;background:radial-gradient(800px 500px at 15% 10%, rgba(120,240,192,0.16), transparent 60%),radial-gradient(900px 560px at 85% 12%, rgba(138,169,255,0.14), transparent 60%),linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.22));mix-blend-mode:screen;animation:mgm-waves 14s ease-in-out infinite alternate;}
@keyframes mgm-waves{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(0,-2%,0) scale(1.03)}}


/* === MGM Pixel Parity Hotfix === */

/* Force global dark background and text, even if Elementor/page adds white bg */
html, body { background: #0d0f12 !important; color: var(--text); }
.site, .site-main, .elementor-section-wrap, .elementor-location-content { background: transparent !important; }

/* Hero contrast & height */
.hero { min-height: 68vh; background: radial-gradient(1200px 800px at 15% 0%, rgba(120,240,192,0.10), transparent 60%), radial-gradient(1200px 800px at 85% 10%, rgba(138,169,255,0.09), transparent 60%); }
.hero .hero-media { z-index: 0; }
.hero-overlay { z-index: 1; }

/* Logo grid: remove bullets, ensure images display */
.mgm-logo-grid { list-style: none; padding: 0; margin: 0; }
.mgm-logo-grid li { list-style: none; }
.mgm-logo-grid img { display: block; width: 100%; max-width: 220px; margin: 0 auto; }

/* Card contrast */
.mgm-card { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.12); }

/* Section headings color pop */
.mgm-section h2 { color: var(--accent); }
.mgm-section h3 { color: #e9edf3; }
