:root{
  --bg:#050506;
  --bg2:#0b0b0d;
  --ink:#f2efe7;
  --muted:#b9b2a2;
  --gold:#d8c6a3;
  --gold2:#9f7a3c;
  --shadow: 0 30px 80px rgba(0,0,0,.6);
  --ring: 0 0 0 1px rgba(216,198,163,.18);
  --radius: 26px;
}

*{box-sizing:border-box}
html,body{height:100%}
[hidden]{
  display:none !important;
}
body{
  margin:0;
  font-family: "Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif;
  color:var(--ink);
  background:
    radial-gradient(1200px 600px at 20% 10%, rgba(216,198,163,.10), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, rgba(159,122,60,.10), transparent 55%),
    radial-gradient(900px 700px at 50% 90%, rgba(216,198,163,.08), transparent 60%),
    linear-gradient(180deg, var(--bg), var(--bg2));
  overflow-x:hidden;
  animation: pageIn .34s ease;
}

#sunrise-session-bar{
  display:none;
  visibility:hidden;
  pointer-events:none;
}

body[data-route="sunrise"] #sunrise-session-bar.isVisible,
body[data-route^="sunrise-"] #sunrise-session-bar.isVisible{
  display:flex !important;
  visibility:visible;
  pointer-events:auto;
}

@keyframes pageIn{
  from{opacity:0; transform: translateY(8px)}
  to{opacity:1; transform: translateY(0)}
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="220" height="220"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="3" stitchTiles="stitch"/></filter><rect width="220" height="220" filter="url(%23n)" opacity="0.14"/></svg>');
  mix-blend-mode:overlay;
  opacity:.10;
}

a{color:inherit; text-decoration:none}

.wrap{min-height:100%; display:flex; flex-direction:column;}

header{
  position:sticky;
  top:0;
  z-index:20;
  backdrop-filter: blur(14px);
  background: linear-gradient(180deg, rgba(5,5,6,.75), rgba(5,5,6,.35));
  border-bottom: 1px solid rgba(216,198,163,.10);
}

.nav{
  max-width:1120px;
  margin:0 auto;
  padding:16px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:12px;
  color:var(--muted);
  user-select:none;
}

.mark{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background: rgba(216,198,163,.06);
  box-shadow: var(--ring);
  letter-spacing:.18em;
  color:rgba(216,198,163,.92);
  font-weight:700;
  font-size:11px;
}

.navlinks{
  display:flex;
  gap:18px;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(242,239,231,.75);
}

.navlinks a,
.cta a{opacity:.86}
.navlinks a:hover,
.cta a:hover{opacity:1}

.navlinks a.active{
  color:var(--gold);
  opacity:1;
}

.langControl{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:14px;
  border:1px solid rgba(216,198,163,.14);
  background: rgba(0,0,0,.18);
}

.langLabel{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color: rgba(242,239,231,.72);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}

.langLabel svg{opacity:.9}

.langSelect{
  min-width:154px;
  max-width:196px;
  border-radius:10px;
  border:1px solid rgba(216,198,163,.22);
  background: rgba(0,0,0,.34);
  color:var(--ink);
  padding:7px 9px;
  font-size:11px;
  letter-spacing:.04em;
  outline:none;
}

.langSelect:focus{
  border-color: rgba(216,198,163,.38);
}

.cta{display:flex; gap:10px; align-items:center;}

.btn{
  border:1px solid rgba(216,198,163,.22);
  background: rgba(216,198,163,.06);
  color:var(--ink);
  padding:10px 14px;
  border-radius:999px;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
  white-space:nowrap;
  cursor:pointer;
}
.btn:hover{transform: translateY(-1px); background: rgba(216,198,163,.10); border-color: rgba(216,198,163,.32)}

.btn.primary{
  background: linear-gradient(180deg, rgba(216,198,163,.22), rgba(216,198,163,.10));
  border-color: rgba(216,198,163,.35);
}

.btn.ghost{
  border-color: rgba(242,239,231,.14);
  background: rgba(0,0,0,.18);
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.btn.ig{
  border-color: rgba(216,198,163,.28);
  background: linear-gradient(135deg, rgba(88,81,219,.38), rgba(193,53,132,.34), rgba(245,96,64,.32), rgba(252,175,69,.30));
  box-shadow: 0 12px 32px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.04) inset;
}

.btn.ig:hover{
  border-color: rgba(252,175,69,.42);
  background: linear-gradient(135deg, rgba(88,81,219,.50), rgba(193,53,132,.44), rgba(245,96,64,.42), rgba(252,175,69,.40));
}

main{
  flex:1;
  padding:48px 20px 70px;
}

.routePage{
  width:100%;
  opacity:1;
  transform: translateY(0);
  transition: opacity .24s ease, transform .24s ease;
}

.routePage[hidden]{
  display:none !important;
}

.routePage.routeOut{
  opacity:0;
  transform: translateY(8px);
}

.hero,
.view{
  max-width:1120px;
  margin:0 auto;
  width:100%;
}

.hero{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:26px;
  align-items:stretch;
}

.panel,
.viewInner{
  border-radius: var(--radius);
  background: rgba(255,255,255,.03);
  box-shadow: var(--shadow), var(--ring);
  border: 1px solid rgba(216,198,163,.10);
  position:relative;
  overflow:hidden;
}

.panel:before,
.viewInner:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(900px 320px at 20% 10%, rgba(216,198,163,.14), transparent 55%),
    radial-gradient(700px 300px at 95% 40%, rgba(159,122,60,.12), transparent 55%),
    radial-gradient(650px 400px at 50% 95%, rgba(216,198,163,.10), transparent 60%);
  opacity:.9;
}

.panel > *,
.viewInner > *{position:relative; z-index:1}

.left{
  padding:42px 42px 38px;
  display:flex;
  flex-direction:column;
}
.right{padding:28px; display:flex; flex-direction:column; gap:18px;}

.heroPrime{
  min-height:600px;
}

.kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  background: rgba(0,0,0,.25);
  border: 1px solid rgba(216,198,163,.18);
  color:rgba(242,239,231,.78);
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:11px;
}

.dot{
  width:6px; height:6px; border-radius:50%;
  background: var(--gold);
  box-shadow: 0 0 0 6px rgba(216,198,163,.10);
}

h1{
  margin:18px 0 10px;
  font-size: clamp(34px, 4vw, 52px);
  line-height:1.03;
  letter-spacing: -0.02em;
  font-weight:650;
}

.h1sub{
  color:rgba(242,239,231,.75);
  font-size:16px;
  line-height:1.55;
  max-width:56ch;
  margin:0 0 22px;
}

.actions{display:flex; gap:12px; flex-wrap:wrap; margin:22px 0 14px;}
.btn.big{padding:12px 16px; font-size:12px; letter-spacing:.14em;}
.btn.jumbo{padding:24px 58px; font-size:17px; letter-spacing:.20em;}

.homeBottomCta{
  margin-top:auto;
  padding-top:24px;
  display:flex;
  justify-content:center;
}

.meta{display:flex; gap:18px; flex-wrap:wrap; margin-top:18px; color: rgba(242,239,231,.70); font-size:12px;}
.meta span{display:flex; gap:10px; align-items:center}

.heroPills{
  margin-top:4px;
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.heroPills span{
  color: rgba(242,239,231,.74);
  font-size:11.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  position:relative;
  padding-right:14px;
}

.heroPills span:not(:last-child):after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background: rgba(216,198,163,.55);
  transform: translateY(-50%);
}

.heroVisual{
  min-height:600px;
  justify-content:flex-end;
  overflow:hidden;
}

.heroGlow{
  position:absolute;
  width:460px;
  height:460px;
  left:50%;
  top:42%;
  transform: translate(-50%, -50%);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 50%, rgba(216,198,163,.26) 0%, rgba(216,198,163,.16) 28%, rgba(159,122,60,.10) 52%, transparent 72%);
  filter: blur(2px);
  animation: glowPulse 7.2s ease-in-out infinite;
}

.heroRadar{
  position:absolute;
  width:360px;
  height:360px;
  left:50%;
  top:42%;
  transform: translate(-50%, -50%);
  border-radius:50%;
  border:1px solid rgba(216,198,163,.18);
  box-shadow:
    0 0 0 32px rgba(216,198,163,.04),
    0 0 0 84px rgba(216,198,163,.02);
}

.heroCore{
  position:absolute;
  left:50%;
  top:42%;
  transform: translate(-50%, -50%);
  width:92px;
  height:92px;
  border-radius:22px;
  border:1px solid rgba(216,198,163,.34);
  background: linear-gradient(180deg, rgba(216,198,163,.22), rgba(0,0,0,.20));
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow: 0 18px 46px rgba(0,0,0,.4);
}

.heroHat{
  width:62px;
  height:auto;
}

.heroTargets{
  position:absolute;
  inset:0;
}

.heroDot{
  position:absolute;
  width:9px;
  height:9px;
  border-radius:50%;
  background: rgba(216,198,163,.22);
  border:1px solid rgba(216,198,163,.30);
  box-shadow: 0 0 0 0 rgba(216,198,163,0);
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
  animation: dotFloat 5.4s ease-in-out infinite;
}

.heroDot.isLit{
  background: rgba(255,230,160,1);
  border-color: rgba(255,220,125,1);
  box-shadow: 0 0 24px 7px rgba(230,188,82,.86), 0 0 44px 16px rgba(230,188,82,.52);
}

.dot1{left:10%; top:14%; animation-delay:.2s;}
.dot2{left:30%; top:8%; animation-delay:.8s;}
.dot3{right:24%; top:11%; animation-delay:1.4s;}
.dot4{right:9%; top:23%; animation-delay:2.1s;}
.dot5{right:12%; top:47%; animation-delay:2.9s;}
.dot6{left:32%; top:56%; animation-delay:3.5s;}
.dot7{left:9%; top:43%; animation-delay:4.1s;}
.dot8{left:6%; top:27%; animation-delay:4.7s;}

.heroSignal{
  position:absolute;
  width:560px;
  height:560px;
  left:50%;
  top:42%;
  transform: translate(-50%, -50%) rotate(0deg);
  background: conic-gradient(from 0deg, transparent 0deg, rgba(216,198,163,.15) 20deg, transparent 40deg);
  border-radius:50%;
  mix-blend-mode:screen;
  opacity:.42;
}

.heroLedger{
  position:relative;
  z-index:2;
  margin-top:auto;
  border-radius:20px;
  padding:16px;
  border:1px solid rgba(216,198,163,.18);
  background: linear-gradient(180deg, rgba(0,0,0,.34), rgba(0,0,0,.22));
}

.heroKpiRow{
  margin-top:10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  border:1px solid rgba(216,198,163,.10);
  border-radius:12px;
  background: rgba(255,255,255,.02);
  padding:10px 11px;
}

.heroKpiRow span{
  color: rgba(242,239,231,.70);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.heroKpiRow b{
  color: rgba(216,198,163,.95);
  font-size:13px;
  letter-spacing:.06em;
}

@keyframes glowPulse{
  0%,100%{transform: translate(-50%, -50%) scale(1); opacity:.9;}
  50%{transform: translate(-50%, -50%) scale(1.05); opacity:1;}
}

@keyframes dotFloat{
  0%,100%{transform: translateY(0);}
  50%{transform: translateY(-8px);}
}

.crest{
  border-radius: 22px;
  padding:22px;
  background: rgba(0,0,0,.22);
  border: 1px solid rgba(216,198,163,.14);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}

.crestTitle{font-size:12px; letter-spacing:.18em; text-transform:uppercase; color: rgba(242,239,231,.72); margin:0;}
.crestValue{margin-top:10px; font-size:26px; font-weight:650; letter-spacing:-0.02em;}

.list{margin:14px 0 0; padding:0; list-style:none; display:grid; gap:10px;}
.li{display:flex; gap:10px; padding:10px 12px; border-radius:16px; background: rgba(255,255,255,.02); border: 1px solid rgba(216,198,163,.10);}
.li b{display:block; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:rgba(242,239,231,.75)}
.li p{margin:4px 0 0; font-size:12.5px; line-height:1.45; color:rgba(242,239,231,.70)}

.badge{width:28px; height:28px; border-radius:10px; display:grid; place-items:center; background: rgba(216,198,163,.08); border: 1px solid rgba(216,198,163,.16);}

.viewInner{padding:40px 42px; min-height: 540px;}
.viewTop{display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px;}
.viewTitle{margin:12px 0 8px; font-size: clamp(28px, 3.2vw, 40px); line-height:1.05; letter-spacing:-0.02em; font-weight:650;}
.viewSub{margin:0 0 22px; max-width:66ch; color: rgba(242,239,231,.72); line-height:1.55; font-size:14.5px;}
.serviceLead{margin:0 0 12px; max-width:74ch; color: rgba(242,239,231,.78); line-height:1.65; font-size:15px;}
.serviceMeta{display:flex; gap:16px; flex-wrap:wrap; color: rgba(242,239,231,.62); font-size:12px; letter-spacing:.08em; text-transform:uppercase;}
.servicesIntro{
  max-width:58ch;
  margin-bottom:14px;
}

.serviceQuick{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-bottom:14px;
}

.quickMetric{
  border:1px solid rgba(216,198,163,.14);
  border-radius:14px;
  background: rgba(0,0,0,.20);
  padding:10px 12px;
}

.quickMetric b{
  display:block;
  color: rgba(216,198,163,.92);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:11px;
}

.quickMetric span{
  display:block;
  margin-top:6px;
  color: rgba(242,239,231,.74);
  font-size:13px;
  line-height:1.4;
}

.cards{display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:12px; margin-top:16px;}
.card{display:flex; gap:14px; padding:16px; min-height:160px; border-radius:20px; background: rgba(0,0,0,.22); border: 1px solid rgba(216,198,163,.14); box-shadow: 0 18px 40px rgba(0,0,0,.25);}
.cardBadge{width:38px; height:38px; border-radius:14px; display:grid; place-items:center; background: rgba(216,198,163,.08); border: 1px solid rgba(216,198,163,.18); color: rgba(216,198,163,.92); font-weight:700; font-size:12px;}
.cardTitle{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color: rgba(242,239,231,.78);}
.cardText{margin-top:6px; color: rgba(242,239,231,.68); font-size:13px; line-height:1.45;}

.servicesCards .card{
  min-height:132px;
  position:relative;
  overflow:hidden;
  cursor:pointer;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
  animation: serviceCardFade .45s ease both;
}
.servicesCards .serviceCardLink{
  text-decoration:none;
  color:inherit;
}

.servicesCards .card:nth-child(2){animation-delay:.05s;}
.servicesCards .card:nth-child(3){animation-delay:.1s;}
.servicesCards .card:nth-child(4){animation-delay:.15s;}

.servicesCards .card:before{
  content:"";
  position:absolute;
  inset:-40% auto -40% -65%;
  width:42%;
  background: linear-gradient(90deg, transparent, rgba(216,198,163,.10), transparent);
  transform: skewX(-18deg);
  animation: serviceSweep 8s linear infinite;
  pointer-events:none;
}

.servicesCards .card:hover{
  transform: translateY(-2px);
  border-color: rgba(216,198,163,.28);
  background: rgba(0,0,0,.30);
}

.servicesCards .card:focus-visible{
  outline: 2px solid rgba(216,198,163,.72);
  outline-offset: 2px;
}

@keyframes serviceSweep{
  to{left:140%;}
}

@keyframes serviceCardFade{
  from{opacity:0; transform: translateY(8px);}
  to{opacity:1; transform: translateY(0);}
}

.viewActions{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px;}

.ambassadorShell{
  border-color: rgba(199,82,65,.34);
  background:
    radial-gradient(900px 340px at 15% 8%, rgba(176,42,31,.26), transparent 58%),
    radial-gradient(820px 320px at 88% 18%, rgba(110,20,14,.24), transparent 55%),
    linear-gradient(145deg, rgba(23,6,6,.94), rgba(8,8,10,.94));
}

.ambassadorShell:before{
  background:
    radial-gradient(900px 320px at 16% 10%, rgba(210,128,88,.14), transparent 58%),
    radial-gradient(750px 300px at 90% 22%, rgba(148,38,27,.16), transparent 58%),
    radial-gradient(700px 350px at 45% 90%, rgba(214,170,112,.08), transparent 62%);
}

.ambassadorGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:16px;
}

.ambassadorCard{
  border:1px solid rgba(204,103,78,.30);
  border-radius:18px;
  background: linear-gradient(140deg, rgba(49,12,11,.65), rgba(14,14,16,.62));
  box-shadow: 0 18px 40px rgba(0,0,0,.30);
  padding:16px;
}

.ambassadorCardWide{
  grid-column: 1 / -1;
}

.ambassadorMoneyCard{
  border-color: rgba(216,178,105,.45);
  background: linear-gradient(135deg, rgba(70,18,14,.74), rgba(17,17,19,.75));
}

.ambassadorMoneyValue{
  margin:6px 0 10px;
  font-size: clamp(28px, 4vw, 44px);
  letter-spacing:-0.02em;
  color: rgba(233,205,141,.98);
}

.sunriseShell{
  --tier-text: #fff2e6;
  --tier-note: rgba(255,223,196,.86);
  --tier-muted: rgba(239,186,146,.78);
  --tier-border: rgba(206,136,86,.48);
  --tier-border-soft: rgba(189,119,76,.36);
  --tier-card-bg: rgba(64,32,19,.62);
  --tier-card-soft: rgba(112,66,39,.36);
  --tier-accent: rgba(238,179,127,.96);
  --tier-accent-soft: rgba(210,142,92,.58);
  border-color: rgba(198,115,66,.46);
  background:
    radial-gradient(980px 390px at 12% 8%, rgba(176,87,31,.34), transparent 60%),
    radial-gradient(900px 360px at 88% 18%, rgba(204,155,126,.28), transparent 58%),
    radial-gradient(980px 520px at 50% 100%, rgba(89,42,22,.30), transparent 62%),
    linear-gradient(150deg, rgba(32,15,8,.98), rgba(24,14,10,.98));
  overflow:hidden;
}

.sunriseShell:before{
  background:
    radial-gradient(900px 360px at 16% 10%, rgba(232,163,114,.22), transparent 60%),
    radial-gradient(760px 320px at 90% 22%, rgba(197,131,98,.18), transparent 58%),
    radial-gradient(740px 360px at 45% 92%, rgba(213,156,105,.14), transparent 62%);
}

.sunriseShell:after{
  content:"";
  position:absolute;
  inset:-10%;
  pointer-events:none;
  background:
    radial-gradient(1300px 520px at 14% 84%, rgba(216,149,101,.24), transparent 66%),
    radial-gradient(1100px 460px at 84% 78%, rgba(228,171,128,.20), transparent 68%),
    radial-gradient(860px 340px at 52% 16%, rgba(246,199,163,.12), transparent 70%);
  opacity:.50;
  mix-blend-mode:screen;
  animation: sunriseWaveShift 22s ease-in-out infinite;
}

.sunriseAmbient{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}

.sunriseOrb{
  position:absolute;
  border-radius:50%;
  filter: blur(28px);
  opacity:.5;
  animation: sunriseFloat 11s ease-in-out infinite;
}

.sunriseOrb.orbA{
  width:240px;
  height:240px;
  left:-40px;
  top:110px;
  background: radial-gradient(circle, rgba(232,142,72,.42), rgba(232,142,72,0) 68%);
}

.sunriseOrb.orbB{
  width:280px;
  height:280px;
  right:-30px;
  top:160px;
  animation-delay: -3s;
  background: radial-gradient(circle, rgba(214,167,135,.36), rgba(214,167,135,0) 70%);
}

.sunriseOrb.orbC{
  width:260px;
  height:260px;
  left:40%;
  bottom:-90px;
  animation-delay: -6s;
  background: radial-gradient(circle, rgba(145,80,46,.42), rgba(145,80,46,0) 72%);
}

.sunriseTitle{
  margin-bottom:6px;
}

.sunriseAuthCard{
  position:relative;
  z-index:1;
  border:1px solid rgba(217,153,110,.28);
  border-radius:20px;
  background: linear-gradient(145deg, rgba(44,22,14,.74), rgba(73,41,24,.52));
  box-shadow: 0 18px 44px rgba(0,0,0,.32);
  padding:18px;
}

.sunriseGrid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:16px;
}

.sunriseLaunchGrid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:16px;
}

.sunriseShortcutRow{
  display:grid;
  grid-template-columns: auto minmax(180px, 320px) auto;
  gap:10px;
  align-items:center;
  margin-top:8px;
}

.sunriseShortcutRow label{
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,218,194,.88);
}

.sunriseShortcutInput{
  height:42px;
  padding:10px 12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.sunriseShortcutBtn{
  height:42px;
}

.sunriseShortcutDock{
  position: fixed;
  left: 50%;
  bottom: 12px;
  transform: translateX(-50%);
  z-index: 45;
  width: min(920px, calc(100% - 24px));
  border: 1px solid rgba(223,167,131,.34);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(52,25,15,.84), rgba(98,58,34,.66));
  box-shadow: 0 18px 44px rgba(0,0,0,.34);
  backdrop-filter: blur(8px);
  padding: 10px 12px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}
#sunrise-shortcut-dock{
  display:none;
}
body.sunrise-dock-visible[data-route="sunrise"] #sunrise-shortcut-dock,
body.sunrise-dock-visible[data-route^="sunrise-"] #sunrise-shortcut-dock{
  display:block !important;
}

body.sunrise-dock-visible main{
  padding-bottom: clamp(170px, 22vh, 320px);
  padding-right: 20px;
  padding-left: 20px;
}

.sunriseShortcutDock[hidden]{
  display: none !important;
}

.sunriseShortcutDockForm{
  display:grid;
  grid-template-columns: auto minmax(130px, 1fr) auto auto;
  gap:10px;
  align-items:center;
}
.sunriseCodeHelp{
  margin-top:8px;
  max-height:260px;
  overflow:auto;
  border:1px solid rgba(223,167,131,.24);
  border-radius:12px;
  padding:8px;
  background: rgba(26,12,7,.46);
}
.sunriseCodeHelp b{
  display:block;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,227,200,.92);
}
.sunriseCodeHelp p{
  margin:4px 0 8px;
  font-size:12px;
  color: rgba(255,221,198,.78);
}
.sunriseSessionBar{
  position:fixed;
  top:66px;
  left:50%;
  transform:translateX(-50%);
  z-index:44;
  display:none;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(223,167,131,.34);
  background: linear-gradient(145deg, rgba(52,25,15,.86), rgba(98,58,34,.7));
  color: rgba(255,227,200,.9);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.sunriseSessionBar.isVisible{
  display:flex !important;
}
.sunriseSessionBar strong{
  font-size:12px;
  color: rgba(255,242,225,.98);
}

.sunriseDockInfo{
  margin:6px 2px 0;
  font-size:12px;
  min-height:16px;
  word-break:break-word;
}

.sunriseCategoryWrap{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.sunriseOpsSummary{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:8px;
}

.sunriseSummaryCard{
  border:1px solid rgba(223,167,131,.28);
  border-radius:14px;
  background: linear-gradient(145deg, rgba(55,26,16,.66), rgba(82,48,30,.46));
  padding:10px 12px;
}

.sunriseSummaryCard b{
  display:block;
  margin-top:6px;
  font-size:18px;
  color: rgba(255,233,213,.96);
}

.sunriseCategoryCard{
  border:1px solid rgba(223,167,131,.28);
  border-radius:18px;
  background: linear-gradient(145deg, rgba(52,25,15,.66), rgba(79,46,29,.46));
  padding:12px 12px 14px;
  box-shadow: 0 14px 34px rgba(0,0,0,.24);
}

.sunriseCategoryTitle{
  margin:0;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color: rgba(255,221,201,.86);
}

.sunriseCategoryCard .sunriseLaunchGrid{
  margin-top:10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sunriseLaunchBtn{
  display:block;
  border:1px solid rgba(223,167,131,.34);
  border-radius:16px;
  background: linear-gradient(145deg, rgba(68,34,20,.84), rgba(121,74,42,.62));
  color:var(--ink);
  padding:14px;
  text-align:left;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition: transform .18s ease, border-color .18s ease;
}

.sunriseShortcutCode{
  display:none;
  font-size:10px;
  letter-spacing:.18em;
  color: rgba(255,217,186,.72);
  margin-bottom:6px;
}

.sunriseLaunchBtn[type="button"]{
  width:100%;
  cursor:pointer;
  font-family: inherit;
}

.sunriseControlCard{
  border:1px solid rgba(223,167,131,.34);
  border-radius:16px;
  background: linear-gradient(145deg, rgba(68,34,20,.84), rgba(121,74,42,.62));
  box-shadow: 0 16px 36px rgba(0,0,0,.30);
  padding:14px;
}

.sunriseControlCard h3{
  margin:0 0 10px;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,225,203,.96);
}

.sunriseControlTable{
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}

.sunriseControlTable th,
.sunriseControlTable td{
  border-bottom:1px solid rgba(223,167,131,.22);
  padding:7px 6px;
  text-align:left;
  vertical-align:middle;
}

.sunriseControlTable th{
  color: rgba(255,213,183,.78);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.sunriseControlTable .input,
.sunriseControlTable .select{
  padding:8px 9px;
  font-size:12px;
}

.sunriseControlTable .select[multiple]{
  min-height:94px;
  border-color: rgba(223,167,131,.34);
  background: linear-gradient(160deg, rgba(34,18,13,.92), rgba(74,42,26,.82));
  color: rgba(255,232,214,.95);
  box-shadow: inset 0 0 0 1px rgba(255,220,190,.04), 0 8px 18px rgba(0,0,0,.26);
  scrollbar-width: thin;
  scrollbar-color: rgba(223,167,131,.54) rgba(20,10,8,.62);
}

.sunriseControlTable .select[multiple]:focus{
  border-color: rgba(255,205,169,.62);
  box-shadow: inset 0 0 0 1px rgba(255,222,193,.10), 0 0 0 3px rgba(190,121,74,.20);
}

.sunriseControlTable .select[multiple] option{
  background: rgba(32,16,12,.96);
  color: rgba(255,228,208,.92);
  padding:4px 8px;
}

.sunriseControlTable .select[multiple] option:checked{
  background: linear-gradient(140deg, rgba(150,86,49,.92), rgba(108,56,32,.95));
  color: rgba(255,244,230,.98);
}

.sunriseControlTable .select[multiple]::-webkit-scrollbar{
  width:10px;
}

.sunriseControlTable .select[multiple]::-webkit-scrollbar-track{
  background: rgba(24,12,10,.72);
  border-radius:10px;
}

.sunriseControlTable .select[multiple]::-webkit-scrollbar-thumb{
  background: linear-gradient(180deg, rgba(223,167,131,.78), rgba(166,101,62,.72));
  border-radius:10px;
  border:2px solid rgba(24,12,10,.72);
}

.sunriseControlActions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}

.sunriseSectionTabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}

.sunriseSectionTabs .sunriseMiniBtn{
  min-width:122px;
}

.sunriseSectionTabs .sunriseMiniBtn.isActive{
  border-color: rgba(255,206,169,.62);
  background: linear-gradient(145deg, rgba(133,72,40,.60), rgba(91,48,28,.56));
  box-shadow: 0 0 0 1px rgba(255,218,188,.14) inset, 0 10px 22px rgba(0,0,0,.25);
}

.sunriseInboxShell{
  display:grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap:12px;
}

.sunriseInboxSidebar{
  display:grid;
  gap:12px;
}

.sunriseInboxFolders,
.sunriseInboxSettings{
  border:1px solid rgba(223,167,131,.34);
  border-radius:14px;
  background: linear-gradient(145deg, rgba(50,26,17,.82), rgba(98,62,38,.58));
  box-shadow: 0 12px 26px rgba(0,0,0,.26);
  padding:12px;
}

.sunriseInboxFolderBtn{
  width:100%;
  border:1px solid rgba(223,167,131,.28);
  border-radius:12px;
  background: rgba(20,12,10,.55);
  color: rgba(255,233,216,.9);
  padding:8px 10px;
  margin-top:8px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}

.sunriseInboxFolderBtn.isActive{
  border-color: rgba(233,185,138,.5);
  background: rgba(146,87,48,.32);
}

.sunriseInboxMain{
  display:grid;
  gap:12px;
}

.sunriseInboxTop{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}

.sunriseInboxList{
  display:grid;
  gap:8px;
  margin-top:8px;
}

.sunriseInboxRow{
  width:100%;
  border:1px solid rgba(223,167,131,.24);
  border-radius:12px;
  background: rgba(18,12,10,.5);
  color: rgba(249,236,223,.9);
  text-align:left;
  padding:9px 10px;
  display:grid;
  gap:4px;
  cursor:pointer;
}

.sunriseInboxRow.isActive{
  border-color: rgba(233,185,138,.58);
  background: rgba(98,62,38,.52);
}

.sunriseInboxFrom{
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color: rgba(255,224,194,.86);
}

.sunriseInboxSubject{
  font-size:14px;
}

.sunriseInboxMeta{
  font-size:11px;
  color: rgba(245,220,199,.66);
}

.sunriseInboxComposeGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
}

.sunriseInboxComposeGrid.compact .input,
.sunriseInboxComposeGrid.compact .select{
  font-size:12px;
  padding:8px 10px;
}

.sunriseInboxMiniBar{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}

.sunriseInboxMiniPanelWrap{
  margin-top:8px;
}

.sunriseInboxMiniPanel{
  display:none;
  gap:8px;
  flex-wrap:wrap;
}

.sunriseInboxMiniPanel.isActive{
  display:flex;
}

.miniFileInput{
  max-width:220px;
}

/* Deterministic custom trigger wrapper for file inputs across all modules */
.filePickerWrap{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:38px;
}

.filePickerNative{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  border:0 !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.filePickerBtn{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:7px 12px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.filePickerBtn:hover{
  border-color: rgba(238,191,149,.56);
  background: rgba(69,34,21,.56);
  transform: translateY(-1px);
}

.filePickerName{
  font-size:12px;
  color: rgba(248,236,226,.78);
  line-height:1.3;
  word-break:break-word;
}

input[type="file"]{
  display:block;
  width:100%;
  position:relative;
  z-index:2;
  pointer-events:auto;
  cursor:pointer;
  border:1px solid rgba(229,184,145,.30);
  border-radius:12px;
  background: rgba(20,11,8,.62);
  color: rgba(248,236,226,.9);
  padding:6px 8px;
  font-size:12px;
  line-height:1.2;
}

input[type="file"]::file-selector-button{
  pointer-events:auto;
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

input[type="file"]:hover::file-selector-button{
  border-color: rgba(238,191,149,.56);
  background: rgba(69,34,21,.56);
  transform: translateY(-1px);
}

input[type="file"]::-webkit-file-upload-button{
  pointer-events:auto;
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
}

.sunriseShell input[type="file"]{
  width:100%;
  border:1px solid rgba(229,184,145,.30);
  border-radius:12px;
  background: rgba(20,11,8,.62);
  color: rgba(248,236,226,.9);
  padding:6px 8px;
  font-size:12px;
  line-height:1.2;
}

.sunriseShell input[type="file"]::file-selector-button{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.sunriseShell input[type="file"]:hover::file-selector-button{
  border-color: rgba(238,191,149,.56);
  background: rgba(69,34,21,.56);
  transform: translateY(-1px);
}

.sunriseShell input[type="file"]::-webkit-file-upload-button{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
}

.sunriseInboxToolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.sunriseInboxEditorWrap{
  margin-top:10px;
  border:1px solid rgba(223,167,131,.28);
  border-radius:12px;
  background: rgba(12,8,7,.7);
  padding:10px;
}

.sunriseInboxEditor{
  min-height:170px;
  outline:none;
  color: rgba(248,236,226,.95);
  line-height:1.5;
}

.sunriseInboxAttachList{
  margin-top:8px;
  color: rgba(245,220,199,.74);
  font-size:12px;
}

.sunriseInboxDetailGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:8px 12px;
}

.sunriseInboxDetailGrid p{
  margin:0;
  font-size:12px;
  color: rgba(245,220,199,.86);
}

.sunriseInboxDetailBody{
  margin-top:10px;
  border:1px solid rgba(223,167,131,.24);
  border-radius:12px;
  padding:10px;
  background: rgba(16,10,8,.6);
  color: rgba(248,236,226,.94);
  line-height:1.5;
}

.sunriseControlCard.isHidden{
  display:none;
}

.sunriseInboxSignatureItem{
  margin-top:8px;
  border:1px solid rgba(223,167,131,.22);
  border-radius:10px;
  padding:8px;
  background: rgba(18,12,10,.45);
}

.sunriseInboxSignatureHead{
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap:8px;
  align-items:center;
}

.sunriseInboxSignatureArea{
  min-height:80px;
  margin-top:8px;
}

.sunriseLaunchBtn:hover{
  transform: translateY(-1px);
  border-color: rgba(233,185,138,.48);
}

.sunriseModuleCard{
  border:1px solid rgba(223,167,131,.34);
  border-radius:16px;
  background:
    linear-gradient(145deg, rgba(68,34,20,.84), rgba(121,74,42,.62)),
    radial-gradient(120% 140% at 20% 0%, rgba(230,166,118,.18), transparent 65%);
  box-shadow: 0 16px 36px rgba(0,0,0,.30);
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  animation: sunriseButtonDrift 7s ease-in-out infinite;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.sunriseModuleCard:hover{
  transform: translateY(-1px);
  border-color: rgba(233,185,138,.48);
  box-shadow: 0 20px 42px rgba(0,0,0,.36);
}

.sunriseModuleCard:nth-child(2n){animation-delay:-1.4s}
.sunriseModuleCard:nth-child(3n){animation-delay:-2.6s}

.sunriseModuleWide{
  grid-column: 1 / -1;
}

.sunriseModuleTitle{
  margin:0;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,225,203,.96);
}

.sunriseModuleText{
  margin:0;
  color: rgba(255,217,188,.86);
  line-height:1.52;
  font-size:13px;
}

.sunriseModuleEditor{
  width:100%;
  min-height:118px;
  border-radius:12px;
  border:1px solid rgba(223,167,131,.36);
  background: rgba(20,12,9,.56);
  color: var(--ink);
  padding:10px 11px;
  resize:vertical;
  font-size:13px;
  line-height:1.5;
}

.sunriseModuleActions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.sunriseMiniBtn{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:7px 12px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
}

.sunriseMiniBtn:hover{
  border-color: rgba(238,191,149,.56);
  background: rgba(69,34,21,.56);
}

.sunriseReplyForm{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
}

.sunriseReplyForm .field:last-child{
  grid-column: 1 / -1;
}

.sunriseDetailShell{
  min-height:unset;
}

.sunriseDetailGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:14px;
}

.sunriseDetailCard{
  border:1px solid rgba(223,167,131,.34);
  border-radius:16px;
  background: linear-gradient(145deg, rgba(68,34,20,.84), rgba(121,74,42,.62));
  box-shadow: 0 16px 36px rgba(0,0,0,.30);
  padding:14px;
}

.sunriseDetailCard h3{
  margin:0 0 8px;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,225,203,.96);
}

.sunriseDetailWide{
  grid-column: 1 / -1;
}

.opsText{
  margin:0;
  color: rgba(255,217,188,.86);
  line-height:1.52;
  font-size:13px;
}

.opsEditor{
  width:100%;
  min-height:118px;
  border-radius:12px;
  border:1px solid rgba(223,167,131,.36);
  background: rgba(20,12,9,.56);
  color: var(--ink);
  padding:10px 11px;
  resize:vertical;
  font-size:13px;
  line-height:1.5;
  margin-top:8px;
}

.opsEditor,
.ops-edit,
.ops-save,
.ops-cancel,
.sunriseEditorActions{
  display:none !important;
}

@keyframes sunriseFloat{
  0%, 100%{transform: translateY(0px) translateX(0px);}
  50%{transform: translateY(-14px) translateX(8px);}
}

@keyframes sunriseButtonDrift{
  0%, 100%{transform: translateY(0);}
  50%{transform: translateY(-2px);}
}

@keyframes sunriseWaveShift{
  0%, 100%{transform: translate3d(0,0,0) scale(1);}
  33%{transform: translate3d(-1.4%, -0.7%, 0) scale(1.022);}
  66%{transform: translate3d(1.1%, 0.8%, 0) scale(1.018);}
}

.authCard{
  margin-top:16px;
  border:1px solid rgba(216,198,163,.16);
  border-radius:22px;
  background: rgba(0,0,0,.22);
  padding:18px;
}

.authTabs{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  margin-bottom:14px;
}

.authTab{
  border:1px solid rgba(216,198,163,.18);
  background: rgba(0,0,0,.22);
  color:var(--ink);
  border-radius:14px;
  padding:11px 12px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  cursor:pointer;
}

.authTab.isActive{
  border-color: rgba(216,198,163,.38);
  background: rgba(216,198,163,.10);
}

.authGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}

.authGrid .viewActions{
  grid-column:1 / -1;
  margin-top:-2px;
  margin-bottom:2px;
}

.authPanel[hidden]{
  display:none !important;
}

.authInfo{
  margin:8px 0 0;
  color: rgba(242,239,231,.74);
  line-height:1.45;
  font-size:13px;
  min-height:19px;
}

.authLinkBtn{
  border:0;
  background:transparent;
  color: rgba(216,198,163,.92);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  padding:2px 0;
}

.authLinkBtn:hover{
  color: rgba(242,239,231,.95);
}

.profileGreeting{
  margin:6px 0 10px;
  text-align:center;
  font-size: clamp(30px, 4.3vw, 52px);
  letter-spacing:-.02em;
  font-weight:730;
  color: var(--tier-text, var(--ink));
}

.ownerExecutiveTag{
  margin:2px 0 14px;
  text-align:center;
  font-size:15px;
  letter-spacing:.28em;
  text-transform:uppercase;
  font-weight:700;
  color: var(--tier-accent, rgba(216,198,163,.95));
}

.profileGrid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:10px;
}

.profileCard{
  border:1px solid var(--tier-border, rgba(216,198,163,.16));
  border-radius:18px;
  background: var(--tier-card-bg, rgba(0,0,0,.22));
  padding:16px;
}

.profileCardWide{
  grid-column:1 / -1;
}

.profileLabel{
  margin:0;
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color: var(--tier-muted, rgba(242,239,231,.64));
}

.profileValue{
  margin:8px 0 6px;
  font-size:22px;
  letter-spacing:-.01em;
}

.profileNote{
  margin:0;
  color: var(--tier-note, rgba(242,239,231,.78));
  line-height:1.52;
  font-size:14px;
}

.teamGrid{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
}

.teamItem{
  border:1px solid var(--tier-border-soft, rgba(216,198,163,.14));
  border-radius:14px;
  padding:10px 11px;
  background: var(--tier-card-soft, rgba(255,255,255,.02));
}
.conciergePick{
  width:100%;
  text-align:left;
  color:inherit;
  font:inherit;
  cursor:pointer;
}

.teamItem b{
  display:block;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color: var(--tier-muted, rgba(242,239,231,.72));
}

.teamItem span{
  display:block;
  margin-top:6px;
  color: var(--tier-note, rgba(242,239,231,.8));
  font-size:13px;
  line-height:1.4;
}

.progressTrack{
  margin-top:10px;
  width:100%;
  height:12px;
  border-radius:999px;
  border:1px solid var(--tier-border, rgba(216,198,163,.2));
  background: var(--tier-card-soft, rgba(255,255,255,.04));
  overflow:hidden;
}

.progressFill{
  height:100%;
  border-radius:999px;
  background: linear-gradient(90deg, var(--tier-accent-soft, rgba(216,198,163,.52)), var(--tier-accent, rgba(216,198,163,.95)));
}

.profileTips{
  margin:10px 0 0;
  padding-left:18px;
  color: var(--tier-note, rgba(242,239,231,.8));
  line-height:1.55;
  font-size:14px;
}

.ownerMetricsGrid{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
}

.ownerListWrap{
  margin-top:12px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}

.profileTheme{
  --tier-text: var(--ink);
  --tier-note: rgba(242,239,231,.82);
  --tier-muted: rgba(242,239,231,.66);
  --tier-border: rgba(216,198,163,.22);
  --tier-border-soft: rgba(216,198,163,.14);
  --tier-card-bg: rgba(0,0,0,.24);
  --tier-card-soft: rgba(255,255,255,.03);
  --tier-accent: rgba(216,198,163,.95);
  --tier-accent-soft: rgba(216,198,163,.52);
  border-color: var(--tier-border) !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.6), 0 0 0 1px var(--tier-border);
}

.profileTheme.tier-theme-base{
  --tier-text: var(--ink);
  --tier-note: rgba(242,239,231,.82);
  --tier-muted: rgba(242,239,231,.66);
  --tier-border: rgba(216,198,163,.22);
  --tier-border-soft: rgba(216,198,163,.14);
  --tier-card-bg: rgba(0,0,0,.24);
  --tier-card-soft: rgba(255,255,255,.03);
  --tier-accent: rgba(216,198,163,.95);
  --tier-accent-soft: rgba(216,198,163,.52);
}

.profileTheme.tier-theme-red{
  --tier-text: #ffe4e0;
  --tier-note: rgba(255,225,220,.84);
  --tier-muted: rgba(255,196,188,.70);
  --tier-border: rgba(205,55,55,.44);
  --tier-border-soft: rgba(185,52,52,.34);
  --tier-card-bg: rgba(73,13,14,.50);
  --tier-card-soft: rgba(124,28,30,.32);
  --tier-accent: rgba(232,66,66,.98);
  --tier-accent-soft: rgba(212,53,53,.56);
}

.profileTheme.tier-theme-noir{
  --tier-text: #f2f3f4;
  --tier-note: rgba(233,236,240,.84);
  --tier-muted: rgba(199,205,213,.68);
  --tier-border: rgba(124,132,145,.38);
  --tier-border-soft: rgba(95,104,118,.32);
  --tier-card-bg: rgba(15,17,22,.58);
  --tier-card-soft: rgba(45,50,60,.34);
  --tier-accent: rgba(195,204,220,.94);
  --tier-accent-soft: rgba(144,155,175,.54);
}

.profileTheme.tier-theme-cuprum{
  --tier-text: #ffe9d6;
  --tier-note: rgba(255,225,196,.84);
  --tier-muted: rgba(233,188,142,.7);
  --tier-border: rgba(176,116,67,.44);
  --tier-border-soft: rgba(151,96,53,.34);
  --tier-card-bg: rgba(74,45,24,.52);
  --tier-card-soft: rgba(112,70,40,.34);
  --tier-accent: rgba(208,143,88,.96);
  --tier-accent-soft: rgba(176,119,71,.54);
}

.profileTheme.tier-theme-argentum{
  --tier-text: #edf3fc;
  --tier-note: rgba(228,236,247,.84);
  --tier-muted: rgba(182,197,217,.7);
  --tier-border: rgba(124,145,173,.42);
  --tier-border-soft: rgba(103,124,152,.34);
  --tier-card-bg: rgba(28,40,56,.52);
  --tier-card-soft: rgba(48,66,90,.34);
  --tier-accent: rgba(171,194,224,.96);
  --tier-accent-soft: rgba(126,152,186,.54);
}

.profileTheme.tier-theme-aurum{
  --tier-text: #fff6dd;
  --tier-note: rgba(255,239,197,.84);
  --tier-muted: rgba(236,205,132,.7);
  --tier-border: rgba(199,154,53,.44);
  --tier-border-soft: rgba(167,126,40,.34);
  --tier-card-bg: rgba(75,56,18,.52);
  --tier-card-soft: rgba(112,83,27,.34);
  --tier-accent: rgba(232,186,78,.96);
  --tier-accent-soft: rgba(189,149,60,.54);
}

.profileTheme.tier-theme-platinum{
  --tier-text: #f0f5ff;
  --tier-note: rgba(231,238,250,.84);
  --tier-muted: rgba(185,199,224,.7);
  --tier-border: rgba(126,149,189,.42);
  --tier-border-soft: rgba(102,123,161,.34);
  --tier-card-bg: rgba(26,37,56,.52);
  --tier-card-soft: rgba(44,62,94,.34);
  --tier-accent: rgba(173,198,236,.96);
  --tier-accent-soft: rgba(128,155,202,.54);
}

.profileTheme.tier-theme-diamante{
  --tier-text: #ecfcff;
  --tier-note: rgba(220,246,252,.84);
  --tier-muted: rgba(165,219,232,.7);
  --tier-border: rgba(88,168,189,.44);
  --tier-border-soft: rgba(68,140,160,.34);
  --tier-card-bg: rgba(16,55,62,.52);
  --tier-card-soft: rgba(30,84,94,.34);
  --tier-accent: rgba(121,216,235,.96);
  --tier-accent-soft: rgba(84,179,198,.54);
}

.profileTheme.tier-theme-owner{
  --tier-text: #f3f0ff;
  --tier-note: rgba(233,243,240,.88);
  --tier-muted: rgba(188,224,210,.74);
  --tier-border: rgba(120,84,201,.48);
  --tier-border-soft: rgba(103,163,142,.44);
  --tier-card-bg: rgba(43,26,76,.46);
  --tier-card-soft: rgba(33,88,69,.30);
  --tier-accent: rgba(139,103,224,.96);
  --tier-accent-soft: rgba(98,197,154,.62);
}

.profileTheme.tier-theme-sta{
  --tier-text: #e9f6eb;
  --tier-note: rgba(226,243,230,.86);
  --tier-muted: rgba(188,214,198,.74);
  --tier-border: rgba(164,210,180,.42);
  --tier-border-soft: rgba(165,182,192,.34);
  --tier-card-bg: rgba(30,58,41,.48);
  --tier-card-soft: rgba(95,123,110,.32);
  --tier-accent: rgba(186,218,199,.96);
  --tier-accent-soft: rgba(172,189,198,.56);
}

.profileTheme.tier-theme-ss{
  --tier-text: #eef8ff;
  --tier-note: rgba(226,242,255,.86);
  --tier-muted: rgba(182,204,224,.74);
  --tier-border: rgba(157,194,222,.42);
  --tier-border-soft: rgba(212,194,142,.34);
  --tier-card-bg: rgba(28,54,76,.46);
  --tier-card-soft: rgba(88,120,152,.3);
  --tier-accent: rgba(190,220,238,.96);
  --tier-accent-soft: rgba(222,205,154,.56);
}

.profileTheme.tier-theme-sm{
  --tier-text: #f5ecff;
  --tier-note: rgba(238,226,255,.86);
  --tier-muted: rgba(214,186,228,.74);
  --tier-border: rgba(179,148,210,.42);
  --tier-border-soft: rgba(213,154,170,.34);
  --tier-card-bg: rgba(62,37,86,.46);
  --tier-card-soft: rgba(129,85,125,.3);
  --tier-accent: rgba(206,176,235,.96);
  --tier-accent-soft: rgba(221,166,181,.56);
}

.profileTheme.tier-theme-da{
  --tier-text: #f9efe5;
  --tier-note: rgba(245,226,207,.86);
  --tier-muted: rgba(210,178,149,.74);
  --tier-border: rgba(160,116,77,.44);
  --tier-border-soft: rgba(203,154,132,.34);
  --tier-card-bg: rgba(61,34,19,.5);
  --tier-card-soft: rgba(117,70,44,.32);
  --tier-accent: rgba(216,165,137,.96);
  --tier-accent-soft: rgba(193,140,111,.56);
}

.profileTheme.tier-theme-ca{
  --tier-text: #fff0ea;
  --tier-note: rgba(252,229,223,.86);
  --tier-muted: rgba(227,187,178,.74);
  --tier-border: rgba(203,152,135,.42);
  --tier-border-soft: rgba(92,116,166,.34);
  --tier-card-bg: rgba(53,32,53,.48);
  --tier-card-soft: rgba(77,92,133,.31);
  --tier-accent: rgba(227,175,160,.96);
  --tier-accent-soft: rgba(121,143,193,.56);
}

.profileTheme.tier-theme-gold{
  --tier-text: #fff6df;
  --tier-note: rgba(255,243,214,.84);
  --tier-muted: rgba(241,224,178,.7);
  --tier-border: rgba(212,166,74,.42);
  --tier-border-soft: rgba(186,145,63,.34);
  --tier-card-bg: rgba(70,53,22,.48);
  --tier-card-soft: rgba(109,80,29,.32);
  --tier-accent: rgba(231,186,85,.96);
  --tier-accent-soft: rgba(198,157,72,.54);
}

.profileTheme:before{
  background:
    radial-gradient(900px 340px at 18% 10%, color-mix(in srgb, var(--tier-accent) 35%, transparent), transparent 58%),
    radial-gradient(760px 320px at 90% 35%, color-mix(in srgb, var(--tier-accent-soft) 40%, transparent), transparent 56%),
    radial-gradient(720px 400px at 48% 93%, color-mix(in srgb, var(--tier-accent) 22%, transparent), transparent 62%);
}

.profileTheme .btn.primary{
  border-color: var(--tier-border);
  background: linear-gradient(180deg, color-mix(in srgb, var(--tier-accent) 25%, transparent), color-mix(in srgb, var(--tier-accent-soft) 30%, transparent));
  color: var(--tier-text);
}

.profileTheme .btn.ghost{
  border-color: var(--tier-border-soft);
  color: var(--tier-note);
}

.contactLayout{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}

.field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.field.full{grid-column:1 / -1;}

.field label{
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(242,239,231,.70);
}

.input,
.select,
.textarea{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(216,198,163,.18);
  background: rgba(0,0,0,.26);
  color: var(--ink);
  padding:12px 13px;
  font-size:14px;
  font-family: inherit;
  outline:none;
  transition: border-color .16s ease, background .16s ease;
}

.input:focus,
.select:focus,
.textarea:focus{
  border-color: rgba(216,198,163,.38);
  background: rgba(0,0,0,.34);
}

.input:-webkit-autofill,
.input:-webkit-autofill:hover,
.input:-webkit-autofill:focus,
.select:-webkit-autofill,
.select:-webkit-autofill:hover,
.select:-webkit-autofill:focus,
.textarea:-webkit-autofill,
.textarea:-webkit-autofill:hover,
.textarea:-webkit-autofill:focus{
  -webkit-text-fill-color: var(--ink);
  box-shadow: 0 0 0 1000px rgba(0,0,0,.30) inset;
  border:1px solid rgba(216,198,163,.24);
  transition: background-color 9999s ease-in-out 0s;
}

.textarea{
  min-height:120px;
  resize:vertical;
}

.contactChoice{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.choice{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color: rgba(242,239,231,.82);
  cursor:pointer;
  user-select:none;
}

.choice input{
  accent-color: var(--gold);
  pointer-events:auto;
  cursor:pointer;
}

.contactChoice .choice{
  position: relative;
  gap:10px;
  min-height:44px;
  padding:10px 14px;
  border-radius:14px;
  border: 1px solid rgba(216,198,163,.22);
  background: rgba(0,0,0,.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.02);
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.contactChoice .choice:hover{
  border-color: rgba(216,198,163,.34);
  background: rgba(0,0,0,.36);
}

.contactChoice .choice:focus-within{
  border-color: rgba(216,198,163,.45);
  box-shadow: 0 0 0 2px rgba(216,198,163,.16);
}

.contactChoice .choice input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.contactChoice .choiceTick{
  width:18px;
  height:18px;
  border-radius:6px;
  border:1px solid rgba(216,198,163,.34);
  background: rgba(0,0,0,.30);
  position:relative;
  flex:0 0 auto;
}

.contactChoice .choiceTick::after{
  content:"";
  position:absolute;
  left:5px;
  top:1px;
  width:5px;
  height:10px;
  border-right:2px solid rgba(242,239,231,.96);
  border-bottom:2px solid rgba(242,239,231,.96);
  transform: rotate(40deg) scale(0.2);
  opacity:0;
  transition: transform .14s ease, opacity .14s ease;
}

.contactChoice .choiceText{
  font-size:13px;
  letter-spacing:.03em;
  color: rgba(242,239,231,.90);
}

.contactChoice .choice.isChecked{
  border-color: rgba(216,198,163,.42);
  background: linear-gradient(180deg, rgba(216,198,163,.12), rgba(216,198,163,.05));
}

.contactChoice .choice.isChecked .choiceTick{
  border-color: rgba(216,198,163,.64);
  background: rgba(216,198,163,.24);
}

.contactChoice .choice.isChecked .choiceTick::after{
  opacity:1;
  transform: rotate(40deg) scale(1);
}

.warningNote{
  margin-top:10px;
  border:1px solid rgba(219,120,96,.36);
  background: rgba(79,22,18,.35);
  color: #f7d9d1;
  border-radius:14px;
  padding:10px 12px;
  font-size:12.5px;
  line-height:1.5;
}

.errorLine{
  margin-top:8px;
  color:#f0b7ab;
  font-size:12px;
  min-height:16px;
}

.contactOverlay{
  position:fixed;
  inset:0;
  z-index:60;
  display:grid;
  place-items:center;
  background: rgba(3,3,4,.86);
  backdrop-filter: blur(8px);
  padding:18px;
  overflow-y:auto;
}

.contactOverlay[hidden]{
  display:none !important;
}

#sunrise-email-overlay{
  place-items:start center;
  padding-top:12px;
}

@keyframes fadeRise{
  from{opacity:0; transform: translateY(10px)}
  to{opacity:1; transform: translateY(0)}
}

.contactWindow{
  width:min(760px, 100%);
  border-radius:24px;
  border:1px solid rgba(216,198,163,.24);
  background: linear-gradient(180deg, rgba(18,18,20,.94), rgba(10,10,12,.94));
  box-shadow: var(--shadow), var(--ring);
  padding:26px 24px 22px;
  text-align:center;
  animation: fadeRise .45s ease;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:420px;
  gap:8px;
}

.hatMark{
  width:220px;
  max-width:82%;
  margin:0 auto 4px;
}

.hatMark svg{
  width:100%;
  height:auto;
}

.markStroke{
  fill: rgba(216,198,163,.12);
  stroke: rgba(216,198,163,.9);
  stroke-width:2.2;
}

.markLine{
  fill:none;
  stroke: rgba(216,198,163,.9);
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.elegantLine{
  margin:6px auto 0;
  width:min(380px, 80%);
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, transparent 0%, rgba(216,198,163,.35) 22%, rgba(216,198,163,.92) 50%, rgba(216,198,163,.35) 78%, transparent 100%);
  transform: scaleX(0);
  transform-origin:center;
  animation: lineReveal .9s ease forwards;
}

@keyframes lineReveal{
  to{transform: scaleX(1)}
}

.successMsg{
  margin:2px auto 0;
  max-width:62ch;
  color: rgba(242,239,231,.82);
  line-height:1.52;
  font-size:15px;
}

.sunriseMailWindow{
  width:min(860px, calc(100vw - 28px));
  min-height:unset;
  max-height:min(92vh, 900px);
  overflow-x:hidden;
  overflow-y:auto;
  align-items:stretch;
  justify-content:flex-start;
  text-align:left;
  gap:12px;
}

.mailTitle{
  margin:0;
  font-size:28px;
  letter-spacing:-0.01em;
  color: rgba(246,232,214,.95);
}

.mailFormGrid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}

.mailLabel{
  font-size:11px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color: rgba(242,239,231,.64);
}

.mailTextarea{
  min-height:200px;
  resize:vertical;
}

.sunriseMailWindow input[type="file"]{
  width:100%;
  border:1px solid rgba(229,184,145,.30);
  border-radius:12px;
  background: rgba(20,11,8,.62);
  color: rgba(248,236,226,.9);
  padding:6px 8px;
  font-size:12px;
  line-height:1.2;
}

.sunriseMailWindow input[type="file"]::file-selector-button{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
  transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.sunriseMailWindow input[type="file"]:hover::file-selector-button{
  border-color: rgba(238,191,149,.56);
  background: rgba(69,34,21,.56);
  transform: translateY(-1px);
}

.sunriseMailWindow input[type="file"]::-webkit-file-upload-button{
  border:1px solid rgba(229,184,145,.34);
  background: rgba(42,20,13,.42);
  color: var(--ink);
  border-radius:999px;
  padding:6px 11px;
  margin-right:8px;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  cursor:pointer;
}

.membershipGrid{display:grid; grid-template-columns: 1fr; gap:14px; margin-top:18px;}
.tierList{display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:14px; align-items:stretch;}
.tierOption{
  position:relative;
  perspective:1000px;
  border: 1px solid rgba(216,198,163,.16);
  background: linear-gradient(180deg, rgba(8,8,9,.62), rgba(5,5,6,.42));
  border-radius:20px;
  padding:14px;
  cursor:pointer;
  text-align:left;
  color: var(--ink);
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:360px;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tierOption:hover{
  transform: translateY(-1px);
  border-color: rgba(216,198,163,.34);
}
.tierOption.isActive{
  border-color: rgba(216,198,163,.48);
  box-shadow: 0 20px 40px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.06);
}
.tierFlipInner{
  position:relative;
  display:block;
  min-height:330px;
  transform-style:preserve-3d;
  transition:transform .55s ease;
}
.tierOption:hover .tierFlipInner,
.tierOption:focus-visible .tierFlipInner{
  transform:rotateY(180deg);
}
.tierFaceFront,
.tierFaceBack{
  position:absolute;
  inset:0;
  backface-visibility:hidden;
  border-radius:14px;
}
.tierFaceFront{
  display:flex;
  flex-direction:column;
  gap:10px;
  height:100%;
}
.tierFaceBack{
  transform:rotateY(180deg);
  padding:0;
  border:0;
  background: transparent;
  color: rgba(247,239,228,.95);
  overflow:auto;
  text-align:left;
}
.tierBackCard{
  width:100%;
  min-height:245px;
  border-radius:14px;
  border: 1px solid rgba(255,255,255,.18);
  padding:14px;
  display:flex;
  flex-direction:column;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 14px 26px rgba(0,0,0,.30);
  position:relative;
  overflow:hidden;
}
.tierBackTitle{
  text-align:center;
  font-size:16px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:650;
  margin:0 0 10px;
}
.tierBackText{
  font-size:13px;
  line-height:1.5;
  display:grid;
  gap:8px;
}
.tierBackText p{
  margin:0;
}
.tierBackText ul{
  margin:0;
  padding-left:16px;
  display:grid;
  gap:4px;
  font-size:12.5px;
  line-height:1.42;
}
.tierMini{
  width:100%;
  min-height:245px;
  border-radius:14px;
  border: 1px solid rgba(255,255,255,.18);
  padding:12px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 14px 26px rgba(0,0,0,.30);
  position:relative;
  overflow:hidden;
}
.tierMini:after{
  content:"";
  position:absolute;
  inset:-40% -20%;
  background: linear-gradient(118deg, transparent 40%, rgba(255,255,255,.24) 50%, transparent 60%);
  transform: translateX(-65%);
  opacity:.55;
}
.tierOption:hover .tierMini:after{
  transform: translateX(70%);
  transition: transform .8s ease;
}
.tierMiniLabel{font-size:12px; letter-spacing:.18em; text-transform:uppercase; opacity:.86;}
.tierMiniName{
  position:absolute;
  left:12px;
  bottom:10px;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:400;
  opacity:.86;
}
.tierMiniBrand{
  position:absolute;
  right:12px;
  bottom:10px;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:400;
  opacity:.86;
}
.tierHint{
  margin-top:4px;
  font-size:14px;
  color: rgba(242,239,231,.74);
  line-height:1.48;
}

.tier-cu .tierMini,
.tier-cu .tierBackCard{
  background:
    radial-gradient(130% 90% at 20% 10%, rgba(220,160,120,.18), transparent 60%),
    linear-gradient(138deg, #2e170d 0%, #5a341f 36%, #7d5031 52%, #4e2d1b 74%, #23120b 100%);
}
.tier-ar .tierMini,
.tier-ar .tierBackCard{
  background:
    radial-gradient(120% 90% at 20% 8%, rgba(220,228,240,.22), transparent 60%),
    linear-gradient(138deg, #2f3640 0%, #6c7584 36%, #9ea7b6 52%, #626b79 74%, #282f39 100%);
  color:#101113;
}
.tier-au .tierMini,
.tier-au .tierBackCard{
  background:
    radial-gradient(120% 90% at 22% 8%, rgba(245,230,185,.24), transparent 60%),
    linear-gradient(138deg, #3f2f0e 0%, #7f6330 34%, #d5c08a 50%, #8b6a2d 72%, #36280c 100%);
  color:#17150f;
}
.tier-pt .tierMini,
.tier-pt .tierBackCard{
  background:
    radial-gradient(125% 95% at 20% 8%, rgba(230,237,248,.18), transparent 60%),
    linear-gradient(138deg, #2d333c 0%, #5e6877 36%, #98a3b1 52%, #55606e 74%, #242a32 100%);
  color:#11141a;
}
.tier-di .tierMini,
.tier-di .tierBackCard{
  background:
    radial-gradient(circle at 24% 18%, rgba(229,250,255,.36), transparent 24%),
    radial-gradient(circle at 76% 24%, rgba(169,215,236,.24), transparent 30%),
    radial-gradient(circle at 55% 72%, rgba(218,242,252,.20), transparent 28%),
    linear-gradient(142deg, #4f6f7b 0%, #8fb5c5 40%, #c7e1ea 54%, #7da8bb 74%, #425e69 100%);
  color:#0d1b22;
}
.tier-no .tierMini,
.tier-no .tierBackCard{
  background:
    radial-gradient(120% 90% at 18% 8%, rgba(207,222,238,.08), transparent 62%),
    linear-gradient(145deg, #020204 0%, #090d12 34%, #131a21 52%, #070a0e 74%, #010103 100%);
  color:#e9edf2;
}
.tier-re .tierMini,
.tier-re .tierBackCard{
  background:
    radial-gradient(circle at 25% 15%, rgba(255,190,205,.16), transparent 40%),
    radial-gradient(circle at 70% 75%, rgba(197,25,45,.26), transparent 36%),
    linear-gradient(142deg, #170306 0%, #3a0813 35%, #741126 52%, #460b18 72%, #120205 100%);
  color:#ffeef1;
}

.tierList .tierOption:last-child{
  grid-column:auto;
  max-width:none;
  justify-self:stretch;
}

.tierDetail,.tierDetailTop,.tierName,.tierValidity,.tierBlock,.tierBlockTitle,.tierParagraph,.tierBenefits{display:none !important;}

footer{
  max-width:1120px;
  width:100%;
  margin:0 auto;
  padding:0 20px 26px;
  color: rgba(242,239,231,.55);
  font-size:12px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.tiny{letter-spacing:.16em; text-transform:uppercase;}

@media (max-width: 920px){
  main{padding:38px 16px 60px;}
  .nav{
    padding:14px 14px;
    gap:10px;
  }
  .hero{grid-template-columns:1fr;}
  .navlinks{display:none}
  .langControl{
    padding:5px 8px;
    gap:6px;
  }
  .langLabel{
    font-size:10px;
    letter-spacing:.1em;
  }
  .langSelect{
    min-width:132px;
    max-width:150px;
    font-size:10px;
    padding:6px 8px;
  }
  .cta{
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
  }
  .left{padding:32px 22px}
  .right{padding:22px}
  .heroPrime,
  .heroVisual{min-height:540px;}
  .heroVisual{padding:22px; gap:12px;}
  .heroGlow{width:320px; height:320px; top:34%;}
  .heroRadar{width:250px; height:250px; top:34%;}
  .heroCore{top:34%;}
  .heroSignal{width:360px; height:360px; top:34%;}
  .heroLedger{margin-top:300px;}
  .dot1{left:7%; top:12%;}
  .dot2{left:31%; top:7%;}
  .dot3{right:12%; top:12%;}
  .dot4{right:4%; top:26%;}
  .dot5{right:8%; top:48%;}
  .dot6{left:31%; top:57%;}
  .dot7{left:8%; top:45%;}
  .dot8{left:4%; top:28%;}
  .heroPills span{font-size:10px;}
  .viewInner{padding:30px 22px; min-height: unset;}
  .cards{grid-template-columns:1fr;}
  .ambassadorGrid{grid-template-columns:1fr;}
  .sunriseGrid{grid-template-columns:1fr;}
  .sunriseOpsSummary{grid-template-columns:1fr 1fr;}
  .sunriseShortcutRow{grid-template-columns:1fr;}
  .sunriseShortcutDockForm{grid-template-columns:1fr;}
  .sunriseLaunchGrid{grid-template-columns:1fr;}
  .sunriseDetailGrid{grid-template-columns:1fr;}
  .sunriseInboxShell{grid-template-columns:1fr;}
  .sunriseInboxComposeGrid{grid-template-columns:1fr;}
  .sunriseInboxDetailGrid{grid-template-columns:1fr;}
  .sunriseInboxSignatureHead{grid-template-columns:1fr;}
  .sunriseReplyForm{grid-template-columns:1fr;}
  .serviceQuick{grid-template-columns:1fr;}
  .contactLayout{grid-template-columns:1fr;}
  .authGrid{grid-template-columns:1fr;}
  .profileGrid{grid-template-columns:1fr;}
  .ownerMetricsGrid{grid-template-columns:1fr;}
  .ownerListWrap{grid-template-columns:1fr;}
  .teamGrid{grid-template-columns:1fr;}
  .membershipGrid{grid-template-columns:1fr;}
  .tierList{grid-template-columns:1fr;}
  .tierList .tierOption:last-child{grid-column:auto; max-width:100%; justify-self:stretch;}
  .sunriseShortcutDock{
    right:10px;
    left:10px;
    top:auto;
    bottom:10px;
    transform:none;
    width:auto;
  }
  body.sunrise-dock-visible main{
    padding-bottom: clamp(190px, 28vh, 340px);
  }
  .sunriseSessionBar{
    top:auto;
    bottom:82px;
    left:10px;
    right:10px;
    transform:none;
    justify-content:center;
  }
}

@media (max-width: 760px){
  header{
    position:sticky;
  }
  .brand{
    gap:9px;
    font-size:10px;
    letter-spacing:.14em;
  }
  .mark{
    width:30px;
    height:30px;
    border-radius:10px;
    font-size:10px;
  }
  .cta{
    width:auto;
    align-items:center;
  }
  .langLabel{
    display:none;
  }
  .langSelect{
    min-width:108px;
    max-width:116px;
  }
  .cta .btn{
    padding:9px 11px;
    font-size:10px;
    letter-spacing:.1em;
  }
  h1{
    font-size: clamp(30px, 8.8vw, 44px);
    line-height:1.02;
  }
  .h1sub{
    font-size:14px;
    line-height:1.45;
    margin-bottom:16px;
  }
  .actions{
    margin:16px 0 12px;
    gap:10px;
  }
  .actions .btn{
    flex:1 1 0;
    text-align:center;
  }
  .heroPills{
    gap:10px;
  }
  .heroPills span{
    font-size:10px;
    letter-spacing:.1em;
  }
  .btn.jumbo{
    width:100%;
    max-width:360px;
    padding:17px 24px;
    font-size:14px;
    letter-spacing:.14em;
  }
  .homeBottomCta{
    padding-top:16px;
  }
  .viewTop{
    align-items:flex-start;
    flex-direction:column;
  }
  .viewTop .btn.ghost{
    align-self:flex-start;
  }
  .viewTitle{
    font-size: clamp(24px, 7vw, 34px);
  }
  .viewSub{
    font-size:13.5px;
    line-height:1.48;
    margin-bottom:16px;
  }
  .card{
    min-height:unset;
    padding:14px;
    border-radius:16px;
  }
  .serviceQuick{
    gap:8px;
    margin-bottom:10px;
  }
  .quickMetric{
    padding:10px;
    border-radius:12px;
  }
  .contactWindow{
    min-height:360px;
    padding:20px 16px 18px;
  }
  .successMsg{
    font-size:14px;
    line-height:1.45;
  }
}

@media (max-width: 560px){
  main{
    padding:22px 10px 44px;
  }
  .nav{
    padding:12px 10px;
    gap:8px;
  }
  .brand span:last-child{
    display:none;
  }
  .cta .btn{
    padding:8px 10px;
    font-size:9px;
    letter-spacing:.08em;
  }
  .langSelect{
    min-width:94px;
    max-width:102px;
    font-size:9px;
    padding:5px 7px;
  }
  .left{
    padding:24px 14px;
  }
  .right{
    padding:14px;
  }
  .heroPrime{
    min-height:unset;
  }
  .heroVisual{
    min-height:470px;
    border-radius:22px;
  }
  .heroGlow{
    width:260px;
    height:260px;
    top:31%;
  }
  .heroRadar{
    width:210px;
    height:210px;
    top:31%;
    box-shadow: 0 0 0 24px rgba(216,198,163,.04), 0 0 0 58px rgba(216,198,163,.02);
  }
  .heroCore{
    width:74px;
    height:74px;
    border-radius:16px;
    top:31%;
  }
  .heroHat{
    width:48px;
  }
  .heroSignal{
    width:280px;
    height:280px;
    top:31%;
  }
  .heroLedger{
    margin-top:250px;
    padding:12px;
    border-radius:14px;
  }
  .heroKpiRow{
    margin-top:8px;
    padding:8px 9px;
  }
  .heroKpiRow span{
    font-size:10px;
  }
  .heroKpiRow b{
    font-size:11px;
  }
  .dot1{left:6%; top:10%;}
  .dot2{left:30%; top:6%;}
  .dot3{right:9%; top:10%;}
  .dot4{right:3%; top:23%;}
  .dot5{right:8%; top:44%;}
  .dot6{left:28%; top:53%;}
  .dot7{left:6%; top:41%;}
  .dot8{left:2%; top:25%;}
  .heroPills{
    flex-direction:column;
    gap:6px;
  }
  .heroPills span{
    padding-right:0;
  }
  .heroPills span:after{
    display:none;
  }
  .btn,
  .btn.big{
    font-size:10px;
    letter-spacing:.1em;
  }
  .btn.jumbo{
    max-width:none;
    width:100%;
    padding:16px 12px;
    font-size:13px;
  }
  .viewInner{
    padding:20px 12px;
    border-radius:20px;
  }
  .authCard{
    padding:12px;
    border-radius:16px;
  }
  .authTab{
    border-radius:10px;
    padding:9px 10px;
    font-size:10px;
  }
  .input,
  .select,
  .textarea{
    font-size:16px;
  }
  .teamItem span{
    font-size:12px;
    line-height:1.34;
    overflow-wrap:anywhere;
  }
  .profileValue{
    font-size:19px;
  }
  .profileGreeting{
    font-size: clamp(26px, 8vw, 38px);
  }
  .ownerExecutiveTag{
    font-size:12px;
    letter-spacing:.18em;
  }
}

@media (max-width: 420px){
  .cta .btn{
    padding:7px 8px;
    font-size:8.5px;
  }
  .actions{
    flex-direction:column;
  }
  .actions .btn{
    width:100%;
  }
  .viewActions{
    flex-direction:column;
  }
  .viewActions .btn{
    width:100%;
    text-align:center;
  }
  footer{
    padding:0 10px 18px;
    font-size:10.5px;
  }
}

@media (prefers-reduced-motion: reduce){
  *{
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
