/* New North Energy starter styles (v3.1, socials updated, no booking) */
:root{
  --bg: #0b0f18;
  --ink: #e9f0ff;
  --muted: #b6c4e3;
  --brand1: #6bdcff; /* ice blue */
  --brand2: #7ef6cf; /* mint */
  --brand3: #b28bff; /* lavender */
  --brand4: #ff8ad6; /* pink */
  --card: #0f1522;
  --accent: #9ef0ff;
  --radius: 14px;
  --shadow: 0 10px 30px rgba(0,0,0,0.25);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color:var(--ink); background:linear-gradient(180deg,#0a0e17 0%, #0b0f18 100%);
}
h1,h2,h3{font-family: "Space Grotesk", Inter, system-ui, sans-serif; line-height:1.1; margin:0 0 .6rem;}
h1{font-size: clamp(2rem, 4.5vw + .5rem, 4rem);}
h2{font-size: clamp(1.6rem, 2.8vw + .5rem, 2.4rem);}
h3{font-size: 1.2rem}
p{color:var(--muted); line-height:1.6; margin:0 0 1rem}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}
.nowrap{white-space:nowrap}
.container{width:min(1100px, 92vw); margin-inline:auto;}

.skip-link{position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden;}
.skip-link:focus{left:1rem; top:1rem; width:auto; height:auto; background:#000; color:#fff; padding:.5rem .75rem; border-radius:.5rem;}

.site-header{position:sticky; top:0; backdrop-filter: blur(10px); background: rgba(10, 14, 23, 0.55); border-bottom:1px solid rgba(255,255,255,0.06); z-index:100}
.nav{display:flex; align-items:center; gap:1rem; padding:.75rem 0;}
.brand{display:flex; align-items:center; gap:.6rem; font-weight:700; color:var(--ink)}
.site-menu{margin-left:auto; display:flex; align-items:center; gap:1rem; flex-wrap:wrap}
.menu-toggle{display:none}
.btn{display:inline-block; padding:.8rem 1rem; border-radius:999px; background:linear-gradient(135deg, var(--brand2), var(--brand1)); color:#001018; font-weight:700; box-shadow:var(--shadow)}
.btn:hover{filter:brightness(1.05); text-decoration:none}
.btn-outline{background:transparent; border:1px solid rgba(255,255,255,0.28); color:var(--ink); box-shadow:none}
.btn-small{padding:.55rem .8rem; font-size:.95rem}

.hero{position:relative; overflow:hidden; padding:clamp(4rem, 10vw, 9rem) 0;}
.hero .aurora{
  position:absolute; inset:-30% -10% -20% -10%;
  background:
    radial-gradient(60% 40% at 20% 30%, rgba(182, 139, 255, .35), transparent 60%),
    radial-gradient(50% 50% at 70% 20%, rgba(126, 246, 207, .35), transparent 60%),
    radial-gradient(50% 50% at 50% 80%, rgba(255, 138, 214, .35), transparent 60%);
  filter: blur(48px);
  transform: translateZ(0);
}
.hero-inner{position:relative}
.lead{font-size:1.125rem}
.hero-bullets{display:flex; gap:1rem; flex-wrap:wrap; padding:0; list-style:none; color:var(--muted)}

.section{padding: clamp(3rem, 6vw, 5rem) 0;}
.section.alt{background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));}
.cards{display:grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap:1rem;}
.card{background:var(--card); border:1px solid rgba(255,255,255,.06); padding:1rem; border-radius:var(--radius); box-shadow:var(--shadow);}

.pricing-grid{display:grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap:1rem;}
.price-card{background:var(--card); border:1px solid rgba(255,255,255,.06); padding:1rem; border-radius:var(--radius); box-shadow:var(--shadow);}
.price-card.feature{outline:2px solid var(--brand3)}

.event-list{display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap:1rem;}
.event{background:var(--card); border:1px solid rgba(255,255,255,.06); padding:1rem; border-radius:var(--radius)}

.about-grid{display:grid; grid-template-columns: 1.1fr .9fr; gap:2rem; align-items:center}
.about-media img{width:100%; border-radius:var(--radius); border:1px solid rgba(255,255,255,.06)}

.newsletter{display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; margin-top:1rem}
.newsletter input{padding:.8rem 1rem; border-radius:999px; border:1px solid rgba(255,255,255,.24); background:#0c1220; color:var(--ink); flex:1; min-width:220px}
.newsletter .form-hint{font-size:.9rem; color:var(--muted)}

.cta-band{background:linear-gradient(135deg, rgba(126,246,207,.1), rgba(107,220,255,.08)); border-top:1px solid rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.06)}
.cta-band-inner{display:grid; place-items:center; text-align:center}

.site-footer{border-top:1px solid rgba(255,255,255,.06); padding:2rem 0; background: #0a0e17}
.foot{display:flex; align-items:center; gap:1rem; flex-wrap:wrap}
.foot-brand{display:flex; align-items:center; gap:.6rem; color:var(--muted)}
.foot-nav{margin-left:auto; display:flex; gap:1rem}
.social{display:flex; gap:1rem}

.text-link{color:var(--brand1)}
.sr-only{position:absolute; left:-9999px}

.checklist{list-style:none; padding:0; margin:1rem 0 0;}
.checklist li{position:relative; padding-left:1.6rem; margin:.25rem 0; color:var(--muted)}
.checklist li::before{content:"✓"; position:absolute; left:0; top:0; color:var(--brand2)}

@media (max-width: 820px){
  .about-grid{grid-template-columns: 1fr}
  .site-menu{display:none; position:absolute; right:1rem; top:58px; background:#0b0f18; border:1px solid rgba(255,255,255,.08); padding:.75rem; border-radius:12px}
  .site-menu a{display:block; padding:.4rem .2rem}
  .menu-toggle{display:inline-flex; margin-left:auto; background:transparent; border:1px solid rgba(255,255,255,.28); color:var(--ink); border-radius:10px; padding:.45rem .65rem}
}
