/* SOV Web v5.58.26 — final UX polish layer.
   Goal: premium feel, better homepage, cleaner mobile and less visual noise without changing data flows. */
:root{
  --sovp-bg:#05090b;
  --sovp-panel:rgba(255,255,255,.062);
  --sovp-panel-2:rgba(255,255,255,.035);
  --sovp-line:rgba(255,255,255,.13);
  --sovp-muted:#aebdb9;
  --sovp-text:#f6faf6;
  --sovp-lime:#d7f66f;
  --sovp-teal:#83e6c2;
  --sovp-gold:#d5a85b;
  --sovp-blue:#78d7ff;
  --sovp-danger:#ff8f8f;
  --sovp-radius-xl:34px;
  --sovp-radius-lg:26px;
  --sovp-radius-md:18px;
  --sovp-shadow:0 24px 90px rgba(0,0,0,.34);
  --sovp-soft-shadow:0 16px 54px rgba(0,0,0,.24);
}
html{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;background-color:var(--sovp-bg)!important;color:var(--sovp-text)}
body:before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(circle at 14% 0%,rgba(215,246,111,.10),transparent 31%),radial-gradient(circle at 82% 4%,rgba(120,215,255,.10),transparent 28%),linear-gradient(180deg,#05090b,#071012 42%,#05090b)}
a{text-underline-offset:3px}.muted,.lead,.sov-soft{color:var(--sovp-muted)!important}.eyebrow,.sov-eyebrow{border-color:rgba(215,246,111,.32)!important;background:rgba(215,246,111,.08)!important;color:#e9ffd0!important}
button,.btn,.sov-btn,.aw-btn,.as-btn,.cm-btn,.filter,.chip,a[role="button"]{min-height:44px}
input,select,textarea{font-size:16px!important}.sov-shell-normalized{box-shadow:0 18px 80px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.06)!important}.sov-shell-menu-button{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 12px 34px rgba(0,0,0,.24)!important}.sov-shell-drawer-panel{border-radius:32px!important;background:radial-gradient(circle at 18% 0%,rgba(215,246,111,.10),transparent 30%),linear-gradient(180deg,#0b1416,#06100d)!important}.sov-shell-drawer-grid a{transition:transform .16s ease,border-color .16s ease,background .16s ease}.sov-shell-drawer-grid a:hover{transform:translateX(3px);border-color:rgba(215,246,111,.38)}
/* Homepage / public portal */
body.sov-public-page .topbar{background:transparent!important;border-bottom:0!important}body.sov-public-page .sov-shell-normalized{margin-top:12px!important}
.portal-hero{min-height:min(78vh,760px)!important;isolation:isolate;overflow:hidden;background-position:center 44%!important}.portal-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 22%,rgba(215,246,111,.18),transparent 28%),radial-gradient(circle at 80% 12%,rgba(120,215,255,.14),transparent 24%),linear-gradient(90deg,rgba(3,7,9,.92),rgba(3,7,9,.50) 50%,rgba(3,7,9,.20))}.portal-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:180px;background:linear-gradient(0deg,var(--sovp-bg),transparent);pointer-events:none}.portal-hero-inner{position:relative;z-index:1;padding-bottom:74px!important}.portal-hero h1{max-width:980px!important;text-wrap:balance;text-shadow:0 12px 60px rgba(0,0,0,.55)}.portal-sub{padding:18px 20px!important;border-radius:24px!important;border:1px solid rgba(255,255,255,.12)!important;background:linear-gradient(90deg,rgba(5,10,11,.72),rgba(5,10,11,.24))!important;box-shadow:0 18px 60px rgba(0,0,0,.22);backdrop-filter:blur(10px)}.hero-actions{gap:10px!important}.hero-actions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 20px;font-weight:1000;text-decoration:none}.hero-join{background:linear-gradient(135deg,var(--sovp-lime),var(--sovp-teal))!important;color:#07100d!important}.hero-cloud,.hero-secondary{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.075);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.22)}.hero-cloud:hover,.hero-secondary:hover,.hero-join:hover{transform:translateY(-2px);border-color:rgba(215,246,111,.38)}
.expedition-banner-section{width:min(1220px,calc(100% - 34px));margin:30px auto 0!important}.expedition-banner-link{position:relative;display:block;border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);box-shadow:var(--sovp-shadow)}.expedition-banner-link img{width:100%;display:block;max-height:330px;object-fit:cover}.expedition-banner-cta{position:absolute;right:18px;bottom:18px;border-radius:999px;background:linear-gradient(135deg,var(--sovp-lime),var(--sovp-teal));color:#07100d;font-weight:1000;padding:12px 16px;box-shadow:0 14px 40px rgba(0,0,0,.32)}
.news-section,.photo-band,.video-band,.contact-band,.links-band,.quick-links{position:relative}.section-head{align-items:flex-end!important}.section-head h2{text-wrap:balance}.news-featured,.news-side-card,.news-card,.photo-tile,.video-mini,.contact-card,.link-card,.quick-inner a,.card,.doc-card,.contact-card,.link-card{border-color:rgba(255,255,255,.12)!important;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.030))!important;box-shadow:var(--sovp-soft-shadow)!important}.news-featured,.news-side-card,.news-card{position:relative;overflow:hidden}.news-featured:before,.news-side-card:before,.news-card:before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,rgba(255,255,255,.09),transparent 34%,rgba(215,246,111,.04));opacity:.9;pointer-events:none}.news-img{transition:transform .42s ease,filter .42s ease;filter:saturate(1.06) contrast(1.02)}.news-featured:hover .news-img,.news-side-card:hover .news-img,.news-card:hover .news-img{transform:scale(1.035);filter:saturate(1.16) contrast(1.05)}.news-copy{position:relative}.news-meta{color:#e8c987!important}.news-copy strong{text-wrap:balance}.news-copy em{color:#c5d2d0!important}.quick-inner{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important}.quick-inner a{transition:transform .18s ease,border-color .18s ease}.quick-inner a:hover{transform:translateY(-3px);border-color:rgba(215,246,111,.32)!important}.footer{color:#8fa09c!important;border-top:1px solid rgba(255,255,255,.08);margin-top:10px!important}
/* Cloud dashboard / app cards */
.sov-shell,.page,.wrap,.aw-shell,.as-shell,.cm-shell,.armory-shell{position:relative}.sov-hero,.aw-hero,.as-hero,.cm-hero,.hero,.import-card,.admin,.card,.sov-panel{border-color:rgba(255,255,255,.13)!important;background:radial-gradient(circle at 12% 0%,rgba(215,246,111,.08),transparent 28%),linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.030))!important;box-shadow:var(--sovp-shadow)!important}.sov-hero h1,.aw-hero h1,.as-hero h1,.cm-hero h1,.hero h1{text-wrap:balance}.sov-grid{gap:16px!important}.sov-module,.as-card,.aw-card,.cm-card,.armory-card,[class*="card"]{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.sov-module:hover,.as-card:hover,.aw-card:hover,.cm-card:hover,.armory-card:hover{transform:translateY(-3px);border-color:rgba(215,246,111,.36)!important;box-shadow:0 24px 90px rgba(0,0,0,.32)!important}.sov-module{min-height:178px}.sov-icon,.as-icon,.aw-icon,.cm-icon{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 14px 32px rgba(0,0,0,.24)}.sov-section-head{margin-top:30px!important}.sov-section-head p{max-width:720px}.sov-tag{letter-spacing:.01em}.sov-role-preview{box-shadow:0 14px 44px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.06)!important}
/* Forms and operational pages */
.field label,label{color:#c1d0cb}.input,.select,.textarea,input:not([type="checkbox"]):not([type="radio"]),select,textarea{border-color:rgba(255,255,255,.14)!important;background:rgba(3,9,10,.62)!important;color:#fff!important;border-radius:16px!important}.input:focus,.select:focus,.textarea:focus,input:focus,select:focus,textarea:focus{border-color:rgba(215,246,111,.52)!important;box-shadow:0 0 0 4px rgba(215,246,111,.12)!important;outline:0!important}.btn.primary,.sov-btn.main,.primary{background:linear-gradient(135deg,var(--sovp-lime),var(--sovp-teal))!important;color:#07100d!important;border-color:transparent!important}.msg,.status,.notice{border-radius:16px}.table-wrap,table{border-radius:18px;overflow:hidden}tbody tr:hover{background:rgba(215,246,111,.045)}
/* Back to top */
.sov-back-top{position:fixed;right:14px;bottom:14px;z-index:4000;width:48px;height:48px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:linear-gradient(135deg,rgba(215,246,111,.96),rgba(131,230,194,.92));color:#07100d;font-weight:1000;box-shadow:0 18px 44px rgba(0,0,0,.34);cursor:pointer;opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s ease}.sov-back-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.sov-back-top:focus-visible{outline:3px solid #fff;outline-offset:3px}
/* Mobile browser polish */
@media(max-width:820px){
  body{overflow-x:hidden}.portal-hero{min-height:70vh!important}.portal-hero-inner{padding:92px 16px 46px!important}.portal-hero h1{font-size:clamp(42px,14.2vw,72px)!important;line-height:.9!important;letter-spacing:-.06em!important}.portal-sub{font-size:16px!important;padding:14px 15px!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important}.hero-actions a{width:100%;box-sizing:border-box}.expedition-banner-section{width:calc(100% - 24px);margin-top:18px!important}.expedition-banner-link{border-radius:22px}.expedition-banner-cta{left:12px;right:12px;bottom:12px;text-align:center}.news-section{padding-top:34px!important}.section-head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}.news-lead{gap:16px!important}.news-featured .news-img{height:280px!important}.news-side-card{grid-template-columns:112px 1fr!important;border-radius:22px!important}.news-side-card .news-copy{padding:13px!important}.news-side-card .news-copy strong{font-size:17px!important}.news-side-card .news-copy em{display:none!important}.news-grid{gap:16px!important}.news-card{border-radius:22px!important}.news-img{height:200px!important}.news-copy{padding:17px!important}.news-copy strong{font-size:21px!important}.quick-inner{padding:22px 14px!important;gap:12px!important}.contact-grid,.links-grid{gap:12px!important}.youtube-channel{grid-template-columns:1fr!important}.sov-hero,.aw-hero,.as-hero,.cm-hero,.hero,.card,.sov-panel,.admin{border-radius:24px!important;padding:18px!important}.sov-hero h1,.aw-hero h1,.as-hero h1,.cm-hero h1{font-size:clamp(34px,10vw,56px)!important}.sov-actions{display:grid!important;grid-template-columns:1fr!important}.sov-actions .sov-btn{width:100%;box-sizing:border-box}.sov-grid,.as-cards,.aw-grid,.cm-grid{grid-template-columns:1fr!important;gap:12px!important}.sov-module{min-height:148px;border-radius:24px!important}.sov-module-foot{position:static!important;margin-top:16px}.sov-role-preview.is-on{position:fixed;left:8px;right:8px;bottom:8px;z-index:2500;max-height:96px;overflow:auto}.sov-shell-drawer-panel{left:10px!important;right:10px!important;top:10px!important;bottom:10px!important;width:auto!important}.sov-back-top{bottom:12px;right:12px;width:46px;height:46px}body.sov-has-bottom-preview .sov-back-top{bottom:112px}
}
@media(max-width:520px){.news-side-card{grid-template-columns:1fr!important}.news-side-card .news-img{height:170px!important}.news-side-card .news-copy em{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.brand-sov{max-width:calc(100vw - 86px)!important}.sov-shell-normalized{box-shadow:0 12px 42px rgba(0,0,0,.38)!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.news-img,.sov-module,.as-card,.aw-card,.cm-card,.armory-card,.sov-back-top{transition:none!important}.news-featured:hover .news-img,.news-side-card:hover .news-img,.news-card:hover .news-img{transform:none!important}}

/* v5.59.10: role preview bottom dock is mobile-browser only; desktop browser keeps it inline. */
@media (hover:hover) and (pointer:fine){
  .sov-role-preview.is-on{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;max-height:none!important;overflow:visible!important}
  body.sov-has-bottom-preview .sov-back-top{bottom:14px!important}
}
@media (max-width:820px) and (hover:none) and (pointer:coarse){
  .sov-role-preview.is-on{position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;z-index:2500!important;max-height:96px!important;overflow:auto!important}
  body.sov-has-bottom-preview .sov-back-top{bottom:112px!important}
}
