:root{
  --surface-0:#050810;
  --surface-1:#0b111c;
  --surface-2:#111a29;
  --surface-3:#172233;
  --text-primary:#ffffff;
  --text-secondary:#d9e3f0;
  --text-muted:#a8b5c7;
  --accent:#16a9ff;
  --accent-bright:#67d4ff;
  --accent-deep:#0877d8;
  --accent-soft:rgba(22,169,255,.18);
  --glass-border:rgba(103,212,255,.24);
  --glass-border-hover:rgba(103,212,255,.46);
  --card-bg:radial-gradient(circle at 50% 0,rgba(22,169,255,.13),transparent 48%),linear-gradient(180deg,rgba(22,169,255,.052),rgba(255,255,255,.016) 58%,rgba(255,255,255,.01)),rgba(7,16,30,.72);
  --card-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 34px rgba(0,0,0,.28),0 0 30px rgba(22,169,255,.08);
  --ff-display:"Fraunces",serif;
  --ff-body:"Inter",sans-serif;
  --ff-mono:"IBM Plex Mono",monospace;
}
html{scroll-behavior:smooth;}
body{
  background:var(--surface-0)!important;
  color:var(--text-primary)!important;
  font-family:var(--ff-body)!important;
  overflow-x:hidden;
}
body::before{opacity:.22!important;mix-blend-mode:overlay;}
body::after{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,8,16,.74),rgba(5,8,16,.92) 46%,#050810 100%),url("mountains-bg.png") center top/cover no-repeat;
}
a{color:inherit;}
#nav,.site-nav{
  position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:1000!important;
  min-height:82px!important;height:auto!important;padding:0 clamp(20px,4vw,56px)!important;
  display:flex!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:rgba(5,8,16,.86)!important;backdrop-filter:blur(18px)!important;
}
.nav-inner{min-height:82px!important;max-width:1280px!important;margin:0 auto!important;width:100%!important;}
.nav-logo{display:flex!important;align-items:center!important;gap:12px!important;margin-right:auto!important;text-decoration:none!important;font-family:var(--ff-display)!important;font-weight:500!important;color:var(--text-primary)!important;}
.nav-logo img{width:48px!important;height:48px!important;object-fit:contain!important;flex:0 0 48px!important;}
.nav-logo span{font-family:var(--ff-display)!important;font-size:16px!important;letter-spacing:.01em!important;color:var(--text-primary)!important;text-transform:none!important;}
.nav-links{display:flex!important;align-items:center!important;gap:2px!important;}
.nav-link,.nav-links a,.nav-inquiry{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;
  padding:9px 13px!important;border-radius:10px!important;color:var(--text-secondary)!important;
  font:500 13.5px var(--ff-body)!important;letter-spacing:.01em!important;text-decoration:none!important;text-transform:none!important;
}
.nav-link:hover,.nav-links a:hover,.nav-inquiry:hover{color:#fff!important;background:rgba(22,169,255,.08)!important;}
.nav-inquiry{border:1px solid rgba(103,212,255,.28)!important;border-radius:999px!important;}
main,#main,.main{position:relative!important;z-index:1!important;min-height:100vh!important;padding-top:82px!important;}
.container{width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 24px!important;}
main>.container>div:first-child,#main>.container>div:first-child,.main{
  max-width:1120px!important;margin:0 auto!important;padding-top:clamp(96px,12vw,150px)!important;padding-bottom:clamp(64px,8vw,104px)!important;
}
.eyebrow{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  padding:8px 16px!important;margin-bottom:20px!important;color:var(--accent)!important;
  font-family:var(--ff-mono)!important;font-size:11px!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;font-weight:600!important;border:1px solid var(--glass-border)!important;
  border-radius:8px!important;background:rgba(22,169,255,.06)!important;
}
.eyebrow::before{display:none!important;}
h1,h2,h3,.h-xl,.h-lg,.h-md{
  font-family:var(--ff-display)!important;letter-spacing:0!important;color:#fff!important;
  background:linear-gradient(180deg,#fff 0%,#fff 45%,var(--accent-bright) 130%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;
  overflow:visible!important;text-wrap:balance!important;
}
h1,.h-xl,.h-lg{font-size:clamp(2.15rem,4.6vw,4.15rem)!important;line-height:1.12!important;font-weight:700!important;max-width:900px!important;}
h2,.h-md{font-size:clamp(1.45rem,2.4vw,2.35rem)!important;line-height:1.16!important;font-weight:700!important;margin-top:2.6rem!important;}
h3{font-size:clamp(1.05rem,1.4vw,1.35rem)!important;font-weight:600!important;}
p,.lede,li,td,th{color:var(--text-secondary)!important;}
.lede{max-width:720px!important;font-size:clamp(1rem,1.2vw,1.12rem)!important;line-height:1.85!important;}
.carousel-card,.card,.steps-card,main>.container>div>div[style*="background"],#main>.container>div>div[style*="background"]{
  position:relative!important;overflow:hidden!important;border-radius:24px!important;padding:clamp(1.35rem,2.5vw,2rem)!important;
  background:var(--card-bg)!important;border:1px solid var(--glass-border)!important;box-shadow:var(--card-shadow)!important;
  backdrop-filter:blur(28px) saturate(160%)!important;-webkit-backdrop-filter:blur(28px) saturate(160%)!important;
}
.carousel-card::before,.card::before,.steps-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:999px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.34) 8%,rgba(103,212,255,.9) 50%,rgba(255,255,255,.28) 92%,transparent 100%);opacity:.84;
}
.carousel-card:hover,.card:hover,.steps-card:hover{border-color:var(--glass-border-hover)!important;}
table{width:100%!important;border-collapse:collapse!important;border:1px solid rgba(103,212,255,.16)!important;border-radius:16px!important;overflow:hidden!important;display:block!important;overflow-x:auto!important;background:rgba(7,16,30,.54)!important;}
tbody{display:table!important;width:100%!important;}
th{color:#fff!important;background:rgba(22,169,255,.12)!important;}
th,td{border-color:rgba(103,212,255,.14)!important;padding:.78rem 1rem!important;vertical-align:top!important;}
ul,ol{padding-left:1.35rem!important;}
li{margin-bottom:.42rem!important;}
.btn-primary,.btn-secondary,.btn-ghost,button[type="button"],button[type="submit"]{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;
  padding:12px 22px!important;border-radius:999px!important;font:600 14px var(--ff-body)!important;text-decoration:none!important;
  transition:transform .2s ease,border-color .2s ease,background .2s ease!important;
}
.btn-primary,button[type="submit"],#btn-start,#btn-confirm{
  background:linear-gradient(90deg,var(--accent-deep),var(--accent) 45%,var(--accent-bright) 75%,var(--accent))!important;
  border:1px solid var(--accent)!important;color:#031018!important;
}
.btn-secondary,.btn-ghost{background:rgba(22,169,255,.055)!important;border:1px solid rgba(103,212,255,.28)!important;color:#fff!important;}
footer,.site-footer{background:#111a29!important;border-top:1px solid rgba(255,255,255,.08)!important;padding:64px 0 36px!important;position:relative!important;z-index:1!important;}
.footer-top,.footer-grid{display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1fr!important;gap:40px!important;margin-bottom:44px!important;}
.footer-brand-row,.footer-logo{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:14px!important;text-decoration:none!important;}
.footer-brand-row img,.footer-logo img{width:34px!important;height:34px!important;object-fit:contain!important;}
.footer-brand-row span,.footer-logo span{font-family:var(--ff-display)!important;font-size:14px!important;font-weight:500!important;color:#fff!important;}
.footer-blurb,.footer-copy{color:var(--text-muted)!important;}
.footer-col-title,footer h4{font-family:var(--ff-mono)!important;font-size:10px!important;letter-spacing:.08em!important;color:var(--accent)!important;text-transform:uppercase!important;margin-bottom:16px!important;}
.footer-links{display:flex!important;flex-direction:column!important;gap:9px!important;}
.footer-links a,.footer-legal a,.footer-bottom-links a{font-size:12.5px!important;color:var(--text-secondary)!important;text-decoration:none!important;}
.footer-links a:hover,.footer-legal a:hover,.footer-bottom-links a:hover{color:var(--accent-bright)!important;}
.footer-bottom{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:14px!important;padding-top:24px!important;border-top:1px solid rgba(255,255,255,.08)!important;}
@media(max-width:900px){.nav-links,.nav-inquiry{display:none!important}.footer-top,.footer-grid{grid-template-columns:1fr 1fr!important;gap:28px!important}main>.container>div:first-child,#main>.container>div:first-child,.main{padding-top:112px!important}.container{padding:0 20px!important}}
@media(max-width:560px){.footer-top,.footer-grid{grid-template-columns:1fr!important}.nav-logo img{width:40px!important;height:40px!important}.nav-logo span{font-size:15px!important}h1,.h-xl,.h-lg{font-size:clamp(2rem,12vw,3rem)!important}}

/* Mobile production repair: use portrait-safe mountain backgrounds on phone. */
@media (max-width: 760px) {
  .page-hero {
    background-image:
      linear-gradient(180deg, rgba(5,8,16,.74), rgba(5,8,16,.92) 46%, #050810 100%),
      url("mountains-bg-mobile.jpg") !important;
    background-position: center center !important;
    background-size: cover !important;
  }
}
