:root{
  --shadow-soft:0 18px 45px rgba(7,25,42,.10);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg,#0b1420);color:var(--text,#f6f9fc);line-height:1.6}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header{position:fixed;inset:0 0 auto;z-index:60;background:color-mix(in srgb,var(--panel,rgba(23,37,54,.96)) 94%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line,rgba(156,207,242,.24))}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}
.brand-logo{width:190px;height:auto}
.header-controls{display:flex;align-items:center;gap:10px;margin-left:auto}
.theme-toggle-float{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid var(--line2,var(--line));border-radius:10px;background:var(--surface-soft,#1d2d3f);color:var(--text,#f6f9fc);font:800 12px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}
.menu-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:var(--text,#fff);margin:5px 0;border-radius:2px}
.main-nav{display:flex;align-items:center;gap:28px}
.main-nav a{position:relative;color:var(--muted,#c4d2dd);font-size:.94rem;font-weight:600;transition:.2s ease}.main-nav a:hover,.main-nav a.active{color:var(--text,#fff)}
.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;transform:scaleX(0);background:linear-gradient(90deg,var(--accent,#55c9ff),var(--green,#54f0a7));transition:transform .2s ease}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}

.hero-section{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--accent,#55c9ff) 22%,transparent),transparent 26%),radial-gradient(circle at 86% 80%,color-mix(in srgb,var(--green,#54f0a7) 18%,transparent),transparent 22%),linear-gradient(140deg,var(--bg,#0b1420) 0%,color-mix(in srgb,var(--bg,#0b1420) 72%,#0d2134) 52%,color-mix(in srgb,var(--bg,#0b1420) 65%,#17324d) 100%)}
.hero-bg-grid{position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at center,#000 35%,transparent 95%)}
.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.45;pointer-events:none}.hero-orb-1{width:420px;height:420px;background:color-mix(in srgb,var(--accent,#55c9ff) 36%,transparent);left:-60px;top:100px}.hero-orb-2{width:300px;height:300px;background:color-mix(in srgb,var(--green,#54f0a7) 28%,transparent);right:0;bottom:120px}
.hero-layout{position:relative;display:grid;grid-template-columns:1fr 1.02fr;gap:46px;align-items:center;min-height:100vh;padding:132px 0 86px}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.77rem;font-weight:800}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--muted,#c4d2dd);margin-bottom:18px}.kicker{color:var(--accent,#55c9ff)}
.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--green,#54f0a7);box-shadow:0 0 0 7px color-mix(in srgb,var(--green,#54f0a7) 15%,transparent);animation:pulse 2s infinite}
.hero-copy h1{margin:0 0 20px;font-size:clamp(3rem,6vw,5.4rem);line-height:1.02;letter-spacing:-.05em;max-width:720px}.lead{margin:0;max-width:720px;font-size:1.08rem;color:var(--muted,#c4d2dd)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:32px 0 24px}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:14px;font-weight:800;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg,var(--accent,#55c9ff),var(--green,#54f0a7));color:#07131d}.button-secondary{background:var(--button,rgba(56,151,211,.24));border:1px solid var(--input-border,var(--border));color:var(--text,#fff)}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px}.hero-tags span{padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--panel2,#1d2d3f) 92%,transparent);border:1px solid var(--border-soft,var(--line));color:var(--muted,#c4d2dd);font-size:.82rem}
.hero-visual{position:relative;min-height:560px}
.panel-card{border-radius:26px;overflow:hidden;border:1px solid var(--border-soft,var(--line));box-shadow:0 18px 46px rgba(0,0,0,.24),0 0 24px color-mix(in srgb,var(--accent,#55c9ff) 10%,transparent)}
.panel-dark{background:var(--surface-deep,#101b28);box-shadow:0 18px 46px rgba(0,0,0,.30),0 0 30px color-mix(in srgb,var(--accent,#55c9ff) 16%,transparent)}
html[data-theme="light"] .panel-card{box-shadow:0 18px 40px rgba(35,69,90,.12),0 0 18px rgba(53,185,255,.08)}
html[data-theme="light"] .panel-dark{box-shadow:0 18px 40px rgba(35,69,90,.14),0 0 18px rgba(53,185,255,.10)}
.hero-main-shot{position:absolute;inset:0 60px 0 0}.hero-main-shot img{width:100%;height:100%;object-fit:cover}
.hero-float{position:absolute}.hero-float-top{right:0;top:40px;width:46%}.hero-float-top img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/4.8}
.hero-float-bottom{left:24px;bottom:26px;max-width:340px;padding:22px;background:color-mix(in srgb,var(--panel,#172536) 96%,transparent);color:var(--text,#fff);border:1px solid var(--border-soft,var(--line));box-shadow:var(--shadow)}
.stat-kicker{display:block;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:var(--accent,#55c9ff);font-weight:800;margin-bottom:8px}.stat-card strong{display:block;font-size:1.2rem;line-height:1.2;margin-bottom:9px}.stat-card p{margin:0;color:var(--muted,#c4d2dd);font-size:.94rem}

.section{padding:108px 0}.section-soft{background:linear-gradient(180deg,color-mix(in srgb,var(--bg,#0b1420) 88%,var(--panel,#172536)) 0%,var(--bg,#0b1420) 100%)}
html[data-theme="light"] .section-soft{background:linear-gradient(180deg,#f5fafc 0%,#ffffff 100%)}.section-dark{background:linear-gradient(135deg,color-mix(in srgb,var(--bg,#0b1420) 92%,#000) 0%,color-mix(in srgb,var(--bg,#0b1420) 82%,#17314b) 100%)}
.section-heading{max-width:780px;margin:0 auto 48px;text-align:center}.section-heading.align-left{text-align:left;margin:0 0 26px}.section-heading h2{margin:10px 0 14px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.04em;color:var(--text,#f6f9fc)}.section-heading p{margin:0;color:var(--muted,#c4d2dd)}.section-soft .section-heading h2,.section-soft .showcase-body h3,.section-soft .showcase-body p,.section-soft .metric-card h3,.section-soft .metric-card p,.section-soft .bridge-copy h3,.section-soft .bridge-copy p,.section .bridge-heading h2,.section .bridge-heading p{color:var(--text-dark,#102b3c)}
html[data-theme]:not([data-theme="light"]) .section-soft .section-heading h2,html[data-theme]:not([data-theme="light"]) .section-soft .showcase-body h3,html[data-theme]:not([data-theme="light"]) .section-soft .showcase-body p,html[data-theme]:not([data-theme="light"]) .section-soft .metric-card h3,html[data-theme]:not([data-theme="light"]) .section-soft .metric-card p,html[data-theme]:not([data-theme="light"]) .section-soft .bridge-copy h3,html[data-theme]:not([data-theme="light"]) .section-soft .bridge-copy p,html[data-theme]:not([data-theme="light"]) .section .bridge-heading h2,html[data-theme]:not([data-theme="light"]) .section .bridge-heading p{color:var(--text,#f6f9fc)}
.section-heading.light h2,.section-heading.light p{color:var(--text,#f6f9fc)}

.metrics-section{margin-top:-44px;position:relative;z-index:5;padding-top:0}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.metric-card{padding:26px;border-radius:22px;background:var(--surface,#fff);border:1px solid var(--border-soft,var(--line));box-shadow:0 16px 38px rgba(0,0,0,.20),0 0 22px color-mix(in srgb,var(--accent,#55c9ff) 9%,transparent)}.metric-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:color-mix(in srgb,var(--accent,#55c9ff) 10%,#fff);font-size:1.35rem;margin-bottom:18px}.metric-card h3{margin:0 0 10px;font-size:1.08rem;line-height:1.3}.metric-card p{margin:0}

.showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.showcase-card{display:flex;flex-direction:column;background:var(--surface,#fff);box-shadow:0 18px 42px rgba(0,0,0,.22),0 0 24px color-mix(in srgb,var(--accent,#55c9ff) 10%,transparent)}.showcase-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}.showcase-body{padding:20px}.showcase-body h3{margin:0 0 8px;font-size:1.14rem}.showcase-body p{margin:0}.accent-card{background:var(--surface,#fff)}.logos-grid{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:18px}.inline-logo-box{padding:10px;border-radius:16px;background:#00000040}.lotw-box{display:flex;justify-content:center}.m0oxo-banner{width:100%;height:auto;object-fit:contain;background:#000;border-radius:12px}.lotw-badge{max-width:230px;width:62%;border-radius:16px;box-shadow:0 10px 26px rgba(0,0,0,.25)}

.bridge-layout{display:grid;grid-template-columns:1fr .95fr;gap:28px;align-items:start}.bridge-shot img{width:100%;height:auto}.bridge-copy{padding:24px;background:var(--surface,#fff);box-shadow:0 18px 42px rgba(0,0,0,.22),0 0 24px color-mix(in srgb,var(--accent,#55c9ff) 10%,transparent)}.logger-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0 14px}.logger-grid span{display:block;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--surface-soft,#edf6fb) 85%,transparent);border:1px solid var(--border-soft,var(--line));font-weight:700;color:var(--text-dark,#102b3c)}.bridge-note{margin:0;color:var(--muted-dark,#5d7484)}html[data-theme]:not([data-theme="light"]) .logger-grid span{color:var(--text,#f6f9fc)}html[data-theme]:not([data-theme="light"]) .bridge-note{color:var(--muted,#c4d2dd)}

.integration-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.integration-card{padding:28px;border-radius:24px;border:1px solid var(--border-soft,var(--line));background:color-mix(in srgb,var(--panel,#172536) 92%,transparent);box-shadow:0 18px 44px rgba(0,0,0,.25),0 0 26px color-mix(in srgb,var(--accent,#55c9ff) 11%,transparent)}.integration-logo{display:flex;align-items:center;justify-content:center;min-height:150px;margin-bottom:20px;border-radius:20px;padding:18px}.integration-logo-dark{background:color-mix(in srgb,var(--surface-deep,#101b28) 95%,transparent);border:1px solid var(--border-soft,var(--line))}.integration-logo img{max-width:100%;max-height:125px;object-fit:contain}.integration-card h3{margin:0 0 10px;font-size:1.32rem;color:var(--text,#fff)}.integration-card p{margin:0;color:var(--muted,#c4d2dd)}

.site-footer{background:color-mix(in srgb,var(--bg,#0b1420) 95%,#000);color:var(--muted,#c4d2dd);padding:42px 0}.footer-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.footer-logo{width:180px;margin-bottom:10px}.footer-text{margin:0;max-width:460px}.footer-links{display:flex;flex-wrap:wrap;gap:18px;justify-content:flex-end}.footer-links a{color:var(--text,#f6f9fc);font-weight:600}

@keyframes pulse{50%{box-shadow:0 0 0 14px color-mix(in srgb,var(--green,#54f0a7) 0%,transparent)}}

@media (max-width:1100px){.hero-layout,.bridge-layout,.integration-grid{grid-template-columns:1fr}.hero-visual{min-height:620px}}
@media (max-width:900px){.menu-toggle{display:block}.main-nav{position:absolute;top:78px;left:20px;right:20px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px;border-radius:18px;background:color-mix(in srgb,var(--panel,#172536) 96%,transparent);border:1px solid var(--border-soft,var(--line))}.main-nav.open{display:flex}.main-nav a{padding:14px 12px;border-radius:10px}.main-nav a::after{display:none}.main-nav a:hover{background:color-mix(in srgb,var(--row-hover,rgba(92,190,255,.12)) 60%,transparent)}.metrics-grid,.showcase-grid{grid-template-columns:repeat(2,1fr)}.hero-layout{padding-top:118px}}
@media (max-width:680px){.container{width:min(100% - 24px,1180px)}.nav-shell{min-height:70px}.brand-logo{width:160px}.main-nav{top:70px;left:12px;right:12px}.hero-layout{gap:30px;min-height:auto;padding:108px 0 64px}.hero-copy h1{font-size:2.7rem}.lead{font-size:1rem}.hero-visual{min-height:420px}.hero-main-shot{inset:0 0 70px 0}.hero-float-top{width:42%;right:10px;top:16px}.hero-float-bottom{left:14px;right:14px;bottom:10px;max-width:none}.metrics-grid,.showcase-grid,.logger-grid,.integration-grid{grid-template-columns:1fr}.section{padding:82px 0}.section-heading{margin-bottom:34px}.metric-card,.showcase-body,.integration-card,.bridge-copy{padding:22px}.footer-row{flex-direction:column}.footer-links{justify-content:flex-start}}

/* LiveQSO homepage hero montage · 10.0.36 */
.hero-showcase-section{
  position:relative;
  overflow:hidden;
  padding:106px 0 76px;
  background:
    radial-gradient(circle at 50% 0%,rgba(31,143,255,.18),transparent 34rem),
    radial-gradient(circle at 80% 72%,rgba(116,255,73,.11),transparent 28rem),
    linear-gradient(180deg,#020b16 0%,#061525 58%,#081a2c 100%);
}
.hero-showcase-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.16;
  background-image:
    linear-gradient(rgba(90,196,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(90,196,255,.07) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
}
.hero-showcase-shell{
  position:relative;
  z-index:1;
  width:min(1760px,calc(100% - 38px));
  margin:0 auto;
}
.hero-picture{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(112,211,255,.26);
  background:#03101d;
  box-shadow:
    0 32px 90px rgba(0,0,0,.52),
    0 0 46px rgba(38,174,255,.19),
    0 0 72px rgba(121,255,70,.08);
}
.hero-picture::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 -60px 90px rgba(0,5,12,.12);
}
.hero-picture img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.hero-showcase-glow{
  position:absolute;
  z-index:-1;
  left:8%;right:8%;bottom:54px;
  height:90px;
  border-radius:50%;
  background:linear-gradient(90deg,rgba(50,183,255,.28),rgba(118,255,78,.22),rgba(50,183,255,.28));
  filter:blur(42px);
  opacity:.72;
}
.hero-quick-actions{
  width:min(860px,calc(100% - 30px));
  margin:-24px auto 0;
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:15px 17px 15px 22px;
  border:1px solid rgba(119,215,255,.25);
  border-radius:19px;
  background:rgba(5,19,32,.88);
  color:#f4f9fc;
  backdrop-filter:blur(18px);
  box-shadow:0 16px 46px rgba(0,0,0,.34),0 0 26px rgba(67,187,255,.10);
}
.hero-quick-actions>span{
  font-size:.84rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#c6dce8;
  white-space:nowrap;
}
.hero-action-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.hero-quick-actions .button{padding:11px 17px;border-radius:11px;font-size:.9rem}

/* Keep the hero intentionally dark in every skin; the rest follows the selected skin. */
html[data-theme="light"] .hero-showcase-section{
  background:
    radial-gradient(circle at 50% 0%,rgba(31,143,255,.18),transparent 34rem),
    radial-gradient(circle at 80% 72%,rgba(116,255,73,.11),transparent 28rem),
    linear-gradient(180deg,#020b16 0%,#061525 58%,#081a2c 100%);
}

/* Dark skins: full page modules stay dark and cards receive a restrained glow. */
html[data-theme]:not([data-theme="light"]) .section-soft{
  background:linear-gradient(180deg,var(--bg,#0b1420) 0%,color-mix(in srgb,var(--surface-deep,#101b28) 82%,var(--bg,#0b1420)) 100%);
}
html[data-theme]:not([data-theme="light"]) :where(.panel-card,.metric-card,.integration-card){
  background:var(--surface,#172536);
  border-color:var(--border-soft,var(--line));
  box-shadow:
    0 18px 48px rgba(0,0,0,.34),
    0 0 28px color-mix(in srgb,var(--accent,#55c9ff) 13%,transparent),
    0 0 18px color-mix(in srgb,var(--green,#54f0a7) 5%,transparent);
}
html[data-theme]:not([data-theme="light"]) .showcase-media{
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent,#55c9ff) 15%,transparent);
}
html[data-theme]:not([data-theme="light"]) :where(.section-soft .showcase-body h3,.section-soft .showcase-body p,.section-soft .metric-card h3,.section-soft .metric-card p){color:var(--text,#f6f9fc)}

@media(max-width:1100px){
  .hero-showcase-section{padding:94px 0 66px}
  .hero-showcase-shell{width:min(100% - 28px,1100px)}
  .hero-picture{border-radius:24px}
}
@media(max-width:720px){
  .hero-showcase-section{padding:82px 0 54px}
  .hero-showcase-shell{width:min(100% - 18px,680px)}
  .hero-picture{border-radius:20px}
  .hero-quick-actions{
    width:calc(100% - 18px);
    margin:-13px auto 0;
    padding:14px;
    flex-direction:column;
    align-items:stretch;
    gap:11px;
  }
  .hero-quick-actions>span{text-align:center;font-size:.74rem}
  .hero-action-buttons{justify-content:stretch}
  .hero-action-buttons .button{flex:1 1 150px}
}

/* Homepage installed-callsign status strip */
.homepage-callsign-strip{
  position:absolute;
  z-index:4;
  top:80px;
  left:50%;
  transform:translateX(-50%);
  width:min(1760px,calc(100% - 38px));
  min-height:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.homepage-callsign-strip[hidden]{display:none!important}
.homepage-callsigns{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding:2px 6px 4px;
  scrollbar-width:thin;
  white-space:nowrap;
}
.homepage-callsign{
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  min-height:28px;
  padding:4px 11px;
  border:1px solid rgba(119,215,255,.24);
  border-radius:999px;
  background:rgba(7,24,39,.82);
  color:#dcecf5;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.035em;
  line-height:1;
  box-shadow:0 4px 14px rgba(0,0,0,.20);
  backdrop-filter:blur(12px);
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.homepage-callsign:hover{transform:translateY(-1px);border-color:rgba(119,215,255,.46);color:#fff}
.homepage-callsign.is-live{
  color:#07170d;
  border-color:rgba(130,255,111,.82);
  background:linear-gradient(135deg,#72e765,#a7f46e);
  box-shadow:0 0 20px rgba(118,238,103,.36),0 5px 16px rgba(0,0,0,.26);
}
.homepage-live-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:18px;
  padding:2px 6px;
  border-radius:999px;
  background:#0a401d;
  color:#eaffea;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
}
html[data-theme="light"] .homepage-callsign:not(.is-live){
  background:rgba(245,251,255,.94);
  color:#17394d;
  border-color:rgba(34,113,159,.28);
  box-shadow:0 4px 14px rgba(35,69,90,.10);
}
@media(max-width:680px){
  .homepage-callsign-strip{top:71px;width:calc(100% - 18px)}
  .homepage-callsigns{justify-content:flex-start}
  .homepage-callsign{font-size:.72rem;min-height:26px;padding:4px 9px}
}

