@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500&family=Inter:wght@400;500;600&display=swap');

:root {
  --night:#020611;
  --night-soft:#071422;
  --panel:rgba(8,22,36,.82);
  --blue:#39baf3;
  --blue-soft:#c8efff;
  --gold:#e6bd69;
  --gold-soft:#ffe4a6;
  --paper:#f3f0e9;
  --muted:#a8bacb;
  --line:rgba(141,207,239,.2);
  --serif:'Bodoni Moda',Didot,'Times New Roman',serif;
  --sans:Inter,Arial,sans-serif;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;background:var(--night)}
body{margin:0;background:var(--night);color:var(--paper);font-family:var(--sans);line-height:1.6;overflow-x:hidden}
#nl-badge-frame{display:none!important;visibility:hidden!important;pointer-events:none!important}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(2,6,17,.12),rgba(2,6,17,.82)),url('../assets/milky-way-background.jpg') center top/cover no-repeat;filter:saturate(.78) contrast(1.08)}
body::after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 72% 14%,rgba(48,156,216,.13),transparent 28%),linear-gradient(90deg,rgba(2,6,17,.93) 0%,rgba(2,6,17,.64) 55%,rgba(2,6,17,.8) 100%)}
a{color:inherit}
button{font:inherit}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:100;padding:.7rem 1rem;background:#fff;color:#020611;transform:translateY(-180%)}
.skip-link:focus{transform:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:5px}

.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:148px;padding:10px clamp(24px,6vw,88px);border-bottom:1px solid rgba(180,225,245,.12);background:linear-gradient(180deg,rgba(1,5,14,.75),rgba(1,5,14,.18));backdrop-filter:blur(8px)}
.brand-lockup{position:relative;width:275px;height:126px;color:var(--paper);text-decoration:none;isolation:isolate}
.mini-logo{position:absolute;z-index:-1;left:50%;top:46px;width:118px;height:110px;transform:translate(-50%,-50%);overflow:visible}
.mini-logo g{transform-origin:215px 199px;animation:spin 28s linear infinite;will-change:transform}
.mini-logo path{fill:none;stroke:var(--blue);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(57,186,243,.58))}
.brand-name{position:absolute;left:50%;top:27px;display:grid;justify-items:center;transform:translateX(-50%);font-family:var(--serif);font-size:16px;line-height:.84;letter-spacing:.13em;color:var(--gold-soft);text-shadow:0 0 18px rgba(255,200,95,.62)}
.brand-name span:last-child{margin-top:5px;font-size:19px;letter-spacing:.1em}
.brand-promise{position:absolute;left:50%;bottom:3px;width:max-content;transform:translateX(-50%);font-size:7px;letter-spacing:.11em;color:#e0f6ff;text-shadow:0 0 10px rgba(118,211,255,.48)}
.brand-promise b{padding:0 4px;color:var(--gold)}
.primary-nav{display:flex;align-items:center;gap:clamp(28px,4vw,55px)}
.primary-nav a{position:relative;padding:.5rem 0;text-decoration:none;font-size:14px;letter-spacing:.15em;color:#e8edf2}
.primary-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:-4px;height:1px;background:var(--gold);box-shadow:0 0 10px var(--gold);transition:left .3s,right .3s}
.primary-nav a:hover::after,.primary-nav a.active::after{left:0;right:0}
.primary-nav a.active{color:var(--gold-soft)}
.menu-button{display:none;border:1px solid var(--line);border-radius:999px;background:rgba(6,19,32,.8);color:#fff;padding:.55rem 1rem}

.hero{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;min-height:670px;padding:70px clamp(28px,7vw,110px) 85px;border-bottom:1px solid rgba(141,207,239,.12);overflow:hidden}
.hero-glow{position:absolute;width:550px;height:550px;right:5%;top:7%;border-radius:50%;background:radial-gradient(circle,rgba(48,163,218,.12),transparent 67%);filter:blur(18px);pointer-events:none}
.hero-copy{position:relative;z-index:2;max-width:700px}
.eyebrow{margin:0 0 20px;color:var(--blue-soft);font-size:12px;font-weight:600;letter-spacing:.22em}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06}
h1{max-width:800px;margin-bottom:28px;font-size:clamp(50px,6.1vw,92px);letter-spacing:-.045em}
h1 em,h2 em{color:var(--gold-soft);font-weight:400}
.hero-lede{max-width:650px;margin-bottom:34px;color:#c5d1dc;font-size:clamp(17px,1.55vw,22px);line-height:1.7}
.gold-button,.light-button{display:inline-flex;align-items:center;gap:24px;border:1px solid rgba(255,223,153,.8);border-radius:999px;padding:14px 23px;text-decoration:none;letter-spacing:.05em;transition:transform .25s,box-shadow .25s,background .25s}
.gold-button{color:#15100a;background:linear-gradient(110deg,#c99435,#ffe4a6 48%,#c59032);box-shadow:0 0 24px rgba(230,189,105,.22)}
.gold-button:hover,.light-button:hover{transform:translateY(-2px);box-shadow:0 0 35px rgba(230,189,105,.34)}
.hero-system{position:relative;z-index:1;width:min(100%,720px);min-height:570px;aspect-ratio:1.16;justify-self:end;filter:drop-shadow(0 0 25px rgba(26,144,201,.13));transition:transform .3s ease-out}
.hero-system svg{display:block;width:100%;height:auto;overflow:visible}
.constellation-lines path{fill:none;stroke:url(#none);stroke:#35b6ef;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.74;filter:drop-shadow(0 0 5px rgba(57,186,243,.55));stroke-dasharray:1300;animation:trace 4.2s ease-out both}
.constellation-lines path:nth-child(2){stroke:rgba(230,189,105,.72);animation-delay:.5s}
.node circle{fill:#f9feff;filter:url(#blue-glow)}
.node.gold circle{filter:url(#gold-glow)}
.node text{fill:#d9f4ff;font:500 13px var(--sans);letter-spacing:.08em;text-shadow:0 0 10px #3ab9f2}
.node.gold text{fill:#ffe1a0}
.system-core circle{fill:rgba(2,8,18,.88);stroke:rgba(230,189,105,.75);stroke-width:1;filter:url(#gold-glow)}
.system-core text{fill:#ffe2a0;font:500 13px var(--sans);letter-spacing:.13em}

.orbit{position:absolute;left:50%;top:49%;border:1px solid rgba(183,221,239,.28);border-radius:50%;transform:translate(-50%,-50%) rotate(-12deg);box-shadow:0 0 18px rgba(86,184,228,.035);pointer-events:none}
.orbit-one{width:94%;height:34%}
.orbit-two{width:79%;height:56%;transform:translate(-50%,-50%) rotate(22deg)}
.orbit-three{width:58%;height:82%;transform:translate(-50%,-50%) rotate(59deg)}
.hris-sun{position:absolute;left:50%;top:49%;display:flex;width:184px;height:184px;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;transform:translate(-50%,-50%);border-radius:50%;background:transparent url('../assets/hris-center-planet-photoreal-v2.png') center/108% no-repeat;filter:drop-shadow(0 0 18px rgba(247,177,60,.8)) drop-shadow(0 0 52px rgba(177,78,19,.5));text-align:center;color:#160903}
.hris-sun::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at center,rgba(255,231,167,.08) 0 24%,rgba(30,7,2,.08) 58%,rgba(2,3,8,.22) 100%)}
.hris-sun span,.hris-sun strong,.hris-sun small{position:relative;z-index:1}
.hris-sun span{font-size:10px;font-weight:800;letter-spacing:.2em;text-shadow:0 1px 5px rgba(255,222,155,.35)}
.hris-sun strong{font-family:var(--serif);font-size:35px;font-weight:600;line-height:1;text-shadow:0 1px 7px rgba(255,222,155,.42)}
.hris-sun small{max-width:120px;margin-top:6px;font-size:8px;font-weight:800;letter-spacing:.13em;text-shadow:0 1px 5px rgba(255,222,155,.35)}
.journey-planet{position:absolute;display:flex;align-items:center;gap:11px;color:#e5f5fc;font-size:12px;line-height:1.3;letter-spacing:.055em;text-shadow:0 0 11px rgba(95,200,246,.75);animation:planet-float 5s ease-in-out infinite}
.planet-sphere{display:block;flex:none;width:54px;height:54px;background:transparent center/contain no-repeat;filter:drop-shadow(0 0 8px rgba(112,208,248,.3))}
.journey-planet strong{max-width:160px;font-weight:500}
.planet-one{left:37%;top:1%;flex-direction:column;text-align:center;animation-delay:-.8s}
.planet-one .planet-sphere{width:48px;height:48px;background-image:url('../assets/hris-planet-01.png')}
.planet-two{right:-5%;top:19%;animation-delay:-2.1s}
.planet-two .planet-sphere{width:64px;height:64px;background-image:url('../assets/hris-planet-02.png')}
.planet-three{right:-3%;bottom:9%;animation-delay:-3.4s}
.planet-three .planet-sphere{width:56px;height:56px;background-image:url('../assets/hris-planet-03.png')}
.planet-four{left:4%;bottom:7%;flex-direction:row-reverse;text-align:right;animation-delay:-1.7s}
.planet-four .planet-sphere{width:60px;height:60px;background-image:url('../assets/hris-planet-04.png')}
.planet-five{left:-5%;top:22%;flex-direction:row-reverse;text-align:right;animation-delay:-4s}
.planet-five .planet-sphere{width:50px;height:50px;background-image:url('../assets/hris-planet-05.png')}
.planet-six{left:41%;bottom:1%;flex-direction:column-reverse;text-align:center;animation-delay:-2.8s}
.planet-six .planet-sphere{width:46px;height:46px;background-image:url('../assets/hris-planet-02.png');filter:drop-shadow(0 0 8px rgba(229,177,91,.28)) hue-rotate(44deg)}
.advisor-path{position:absolute;left:50%;bottom:0;display:flex;align-items:center;gap:14px;transform:translateX(-50%);color:var(--gold-soft);font-size:10px;font-weight:600;letter-spacing:.17em;white-space:nowrap;text-shadow:0 0 12px rgba(230,189,105,.45)}
.advisor-path::before,.advisor-path::after{content:"";width:68px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.advisor-path::after{background:linear-gradient(90deg,var(--gold),transparent)}

.constellation-section{position:relative;padding:110px clamp(28px,7vw,110px) 125px;background:linear-gradient(180deg,rgba(2,8,18,.94),rgba(6,18,31,.97))}
.section-heading{display:grid;grid-template-columns:1.15fr .7fr;gap:70px;align-items:end;max-width:1380px;margin:0 auto 70px}
.section-heading h2,.alignment-intro h2,.contact-band h2{margin:0;font-size:clamp(42px,5vw,70px);letter-spacing:-.04em}
.section-heading>p{max-width:480px;margin:0 0 8px;color:var(--muted);font-size:18px}
.service-explorer{display:grid;grid-template-columns:minmax(360px,.83fr) minmax(440px,1.17fr);max-width:1380px;margin:auto;border:1px solid var(--line);background:rgba(4,14,25,.76);box-shadow:0 30px 90px rgba(0,0,0,.25);backdrop-filter:blur(14px)}
.service-tabs{display:grid;border-right:1px solid var(--line)}
.service-tab{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;min-height:92px;padding:20px 26px;border:0;border-bottom:1px solid var(--line);background:transparent;color:#e8f0f6;text-align:left;cursor:pointer;transition:background .25s,color .25s}
.service-tab:last-child{border-bottom:0}
.service-tab span{color:#75cbed;font-size:12px;letter-spacing:.15em}
.service-tab strong{font-family:var(--serif);font-size:20px;font-weight:400}
.service-tab i{font-size:21px;font-style:normal;font-weight:300;transition:transform .25s}
.service-tab:hover,.service-tab.active{background:linear-gradient(90deg,rgba(26,120,166,.18),rgba(230,189,105,.06));color:var(--gold-soft)}
.service-tab.active{box-shadow:inset 3px 0 var(--gold)}
.service-tab.active i{transform:rotate(45deg);color:var(--gold)}
.service-detail{position:relative;min-height:500px;padding:58px clamp(36px,5vw,75px);overflow:hidden}
.service-detail::after{content:"";position:absolute;right:-120px;bottom:-170px;width:390px;height:390px;border:1px solid rgba(57,186,243,.12);transform:rotate(28deg);box-shadow:0 0 0 48px rgba(57,186,243,.018),0 0 0 96px rgba(57,186,243,.012)}
.detail-number{color:var(--gold);font-size:12px;letter-spacing:.17em}
.service-detail h3{max-width:700px;margin:20px 0 25px;font-size:clamp(38px,4vw,58px);color:#f8f3e9}
.detail-intro{max-width:720px;color:#c8d5df;font-size:18px;line-height:1.75}
.service-detail ul{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:13px 34px;margin:32px 0 38px;padding:0;list-style:none}
.service-detail li{position:relative;padding-left:20px;color:#dce6ec}
.service-detail li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 10px var(--blue)}
.text-link{position:relative;z-index:1;display:inline-flex;gap:14px;padding:0 0 3px;border:0;border-bottom:1px solid rgba(230,189,105,.45);background:transparent;color:var(--gold-soft);font-weight:600;text-decoration:none;cursor:pointer}
.text-link:hover{color:#fff2c6;border-color:var(--gold-soft)}

.chat-backdrop{position:fixed;inset:0;z-index:80;background:rgba(0,5,13,.66);backdrop-filter:blur(8px);opacity:0;transition:opacity .34s ease}
.chat-backdrop.open{opacity:1}
.service-chat{position:fixed;z-index:90;top:0;right:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;width:min(540px,100vw);height:100dvh;border-left:1px solid rgba(131,211,247,.24);background:linear-gradient(160deg,rgba(10,28,45,.99),rgba(2,9,19,.995) 60%);box-shadow:-35px 0 95px rgba(0,0,0,.55);transform:translateX(104%);transition:transform .42s cubic-bezier(.22,.8,.22,1);overflow:hidden}
.service-chat.open{transform:translateX(0)}
body.chat-opened{overflow:hidden}
.chat-header{display:flex;align-items:flex-start;justify-content:space-between;padding:30px 32px 22px;border-bottom:1px solid var(--line)}
.chat-kicker{margin:0 0 8px;color:var(--blue-soft);font-size:10px;font-weight:600;letter-spacing:.2em}
.chat-header h2{margin:0;color:#f8f2e7;font-size:36px}
.chat-close{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:rgba(12,37,57,.72);color:#eaf7fc;font-size:27px;line-height:1;cursor:pointer;transition:border-color .2s,transform .2s}
.chat-close:hover{border-color:var(--gold);transform:rotate(8deg)}
.chat-context{display:flex;align-items:flex-start;gap:12px;padding:14px 32px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(57,186,243,.09),rgba(230,189,105,.055))}
.chat-context span{flex:none;padding-top:2px;color:#86cdea;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.chat-context strong{color:var(--gold-soft);font-family:var(--serif);font-size:17px;font-weight:400;line-height:1.35}
.chat-messages{display:flex;flex-direction:column;gap:16px;min-height:0;padding:24px 32px;overflow-y:auto;scrollbar-color:rgba(112,199,236,.35) transparent}
.chat-message{max-width:88%;padding:15px 17px;border:1px solid rgba(136,199,228,.16);border-radius:4px 18px 18px 18px;background:rgba(13,34,51,.82);box-shadow:0 14px 35px rgba(0,0,0,.14)}
.chat-message p{margin:0;color:#d6e2e9;line-height:1.62;white-space:pre-line}
.chat-sources{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.chat-sources a{padding:5px 8px;border:1px solid rgba(117,203,237,.28);border-radius:999px;color:var(--blue-soft);font-size:10px;text-decoration:none}
.chat-message.user-message{align-self:flex-end;border-color:rgba(230,189,105,.2);border-radius:18px 4px 18px 18px;background:linear-gradient(135deg,rgba(155,103,37,.42),rgba(72,47,18,.5))}
.chat-message.user-message p{color:#fff4d6}
.message-label{display:block;margin-bottom:6px;color:#8fd8f6;font-size:9px;font-weight:600;letter-spacing:.17em}
.user-message .message-label{color:#f3d38e;text-align:right}
.typing-message{display:flex;align-items:center;gap:6px;width:max-content;padding-block:18px}
.typing-message i{width:6px;height:6px;border-radius:50%;background:var(--blue-soft);animation:chat-pulse 1.1s infinite ease-in-out}
.typing-message i:nth-child(2){animation-delay:.14s}.typing-message i:nth-child(3){animation-delay:.28s}
.chat-suggestions{display:flex;gap:8px;padding:4px 32px 19px;overflow-x:auto;scrollbar-width:none}
.chat-suggestions::-webkit-scrollbar{display:none}
.chat-suggestions button{flex:none;max-width:265px;padding:9px 13px;border:1px solid rgba(117,203,237,.3);border-radius:999px;background:rgba(10,33,51,.72);color:#d9eff8;font-size:12px;cursor:pointer;transition:border-color .2s,background .2s}
.chat-suggestions button:hover{border-color:var(--gold);background:rgba(132,88,29,.2)}
.chat-form{padding:17px 32px 18px;border-top:1px solid var(--line);background:rgba(2,9,18,.75)}
.chat-form label{display:block;margin-bottom:7px;color:#9bb0be;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.chat-input-row{display:flex;align-items:flex-end;gap:10px}
.chat-input-row textarea{width:100%;min-width:0;min-height:54px;max-height:130px;resize:vertical;padding:13px 14px;border:1px solid rgba(139,201,229,.24);border-radius:12px;background:rgba(8,24,38,.92);color:#f2f6f8;font:14px/1.5 var(--sans)}
.chat-input-row textarea::placeholder{color:#748999}
.chat-input-row textarea:focus{border-color:var(--gold);outline:0;box-shadow:0 0 0 3px rgba(230,189,105,.09)}
.chat-input-row button{flex:none;min-height:54px;padding:0 18px;border:1px solid var(--gold-soft);border-radius:999px;background:linear-gradient(115deg,#ba7d2b,#f0cf81);color:#100a04;font-weight:600;cursor:pointer}
.chat-input-row button:disabled{opacity:.55;cursor:wait}
.chat-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 32px 20px;border-top:1px solid rgba(141,207,239,.12)}
.chat-footer p{max-width:310px;margin:0;color:#7890a1;font-size:10px;line-height:1.5}
.chat-footer a{flex:none;color:var(--gold-soft);font-size:11px;font-weight:600;text-decoration:none}
@keyframes chat-pulse{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}

.alignment-band{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding:110px clamp(28px,7vw,110px);background:rgba(6,19,33,.98);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.alignment-intro{max-width:560px}
.alignment-steps{margin:0;padding:0;list-style:none}
.alignment-steps li{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:24px 0;border-top:1px solid rgba(174,211,229,.2)}
.alignment-steps li:last-child{border-bottom:1px solid rgba(174,211,229,.2)}
.alignment-steps>li>span{color:var(--blue-soft);font-size:12px;font-weight:600;letter-spacing:.15em}
.alignment-steps h3{margin:0 0 7px;font-size:26px;color:var(--gold-soft)}
.alignment-steps p{margin:0;color:var(--muted)}

.contact-band{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:90px clamp(28px,7vw,110px);background:linear-gradient(105deg,#a66525,#dcad54 45%,#8d511d);color:#100a05}
.contact-band .eyebrow{color:#22150b}
.contact-band h2{font-size:clamp(42px,5vw,72px)}
.light-button{flex:none;border-color:#fff;background:#f8f4ed;color:#071422;font-weight:600;cursor:pointer}

.site-footer{display:grid;grid-template-columns:1.3fr .65fr 1fr;gap:60px;padding:80px clamp(28px,7vw,110px) 35px;background:#03101c;color:#c6d3dd}
.site-footer h2{margin:0 0 12px;color:#fff;font-size:35px}
.site-footer h3{font:600 11px var(--sans);letter-spacing:.16em;color:var(--blue-soft)}
.site-footer a{display:block;width:max-content;margin:8px 0;color:#c6d3dd}
.site-footer p{max-width:520px}
.copyright{grid-column:1/-1;margin-top:30px;padding-top:24px;border-top:1px solid rgba(174,211,229,.15);font-size:12px}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes trace{from{stroke-dashoffset:1300}to{stroke-dashoffset:0}}
@keyframes planet-float{0%,100%{translate:0 0}50%{translate:0 -7px}}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mini-logo path,.constellation-lines path,.journey-planet{animation:none}.hero-system{transform:none!important}}
@media (max-width:980px){
  .site-header{min-height:130px;padding-inline:24px}.primary-nav{gap:22px}.primary-nav a{font-size:12px}.brand-lockup{width:225px;transform:scale(.9);transform-origin:left center}
  .hero{grid-template-columns:1fr;gap:35px;padding-top:55px}.hero-system{width:min(100%,650px);justify-self:center}.hero-copy{max-width:790px}
  .section-heading,.alignment-band{grid-template-columns:1fr;gap:45px}.service-explorer{grid-template-columns:1fr}.service-tabs{border-right:0;border-bottom:1px solid var(--line)}.service-detail{min-height:0}
  .contact-band{align-items:flex-start;flex-direction:column}.site-footer{grid-template-columns:1fr 1fr}.site-footer>div:first-child{grid-column:1/-1}
}
@media (max-width:690px){
  .site-header{display:block;min-height:auto;padding:10px 20px 18px}.brand-lockup{display:block;width:180px;height:105px;margin:0 auto;transform:scale(.82);transform-origin:center top}.menu-button{display:none}.primary-nav,.primary-nav.open{position:static;display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:18px 22px;padding:0;border:0;background:transparent}.primary-nav a{padding:.5rem 0;font-size:11px}
  .hero{min-height:auto;padding:62px 22px 70px}.hero-system{min-height:430px;margin-top:12px}.hris-sun{width:132px;height:132px}.hris-sun strong{font-size:27px}.journey-planet{font-size:9px;gap:6px}.planet-sphere{width:34px!important;height:34px!important}.planet-two{right:1%}.planet-three{right:0}.planet-four{left:1%}.planet-five{left:-2%}.advisor-path{font-size:8px}.advisor-path::before,.advisor-path::after{width:25px}
  .constellation-section,.alignment-band{padding:80px 22px}.section-heading{margin-bottom:45px}.service-tab{grid-template-columns:36px 1fr auto;padding:16px;min-height:82px}.service-tab strong{font-size:18px}.service-detail{padding:38px 24px}.service-detail ul{grid-template-columns:1fr}
  .contact-band{padding:75px 22px}.site-footer{grid-template-columns:1fr;padding:65px 22px 30px}.site-footer>div:first-child{grid-column:auto}.copyright{grid-column:1}
  .service-chat{width:100vw}.chat-header,.chat-context,.chat-messages,.chat-suggestions,.chat-form,.chat-footer{padding-left:20px;padding-right:20px}.chat-footer{align-items:flex-start;flex-direction:column}.chat-message{max-width:94%}
}

/* Prevent the orbital diagram's intrinsic width from widening mobile pages. */
@media (max-width:980px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-copy{width:100%;min-width:0}
  .hero-system{max-width:100%;min-width:0}
}
@media (max-width:690px){
  .hero-system{width:100%}
  .journey-planet strong{max-width:100px}
}
