/* A shared public front door, using the existing RIMSKY visual vocabulary. */
:root{--bg:#0b2345;--bg2:#102039;--card:#152840;--card2:#1c3450;--ink:#f0f5fa;--muted:#bac8d8;--amber:#ffb000;--cyan:#ffb000;--line:#2c435b;--header-h:5rem}
html{scroll-padding-top:var(--public-header-height,5rem)}
body{font-size:1.05rem}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid #f7bd69;outline-offset:4px}
.public-header{position:sticky;top:0;z-index:40;background:rgba(11,35,69,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.public-header>.wrap{min-height:5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.public-brand{display:inline-flex;flex-direction:column;text-decoration:none;color:var(--ink);flex-shrink:0;line-height:1.1}
.public-brand strong{font-size:1.4rem;letter-spacing:.08em}
.public-brand strong sup{font-size:.55em;color:var(--cyan)}
.public-brand span{color:var(--muted);font-size:.72rem;margin-top:.25rem;letter-spacing:.05em}
.public-nav{display:flex;align-items:center;gap:.2rem}
.public-nav>a{color:var(--ink);padding:.65rem .8rem;text-decoration:none;font-size:.91rem;font-weight:650;white-space:nowrap;border-radius:.4rem}
.public-nav>a:hover,.public-nav>a[aria-current=page]{background:var(--card2);color:var(--cyan)}
.public-nav>a.nav-signin{margin-left:.5rem;border:1px solid var(--line)}
.public-nav>a.nav-start{background:var(--cyan);color:#0b2345;margin-left:.3rem}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:.4rem;padding:.5rem .8rem;font-weight:700}
.skip-link{position:absolute;top:-6rem;left:1rem;z-index:100;background:var(--cyan);color:#0b2345;padding:.75rem 1rem;border-radius:.4rem}
.skip-link:focus{top:.75rem}
.front-hero{padding:4.5rem 0 3.5rem;background:linear-gradient(135deg,#10233c,#0b2345 70%)}
.front-hero>.wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:3.5rem;align-items:center}
.front-hero h1{font-size:clamp(3rem,6vw,4.9rem);letter-spacing:-.045em;max-width:12ch;line-height:1.04}
.front-hero .lede{margin-top:1.5rem;font-size:1.15rem;max-width:34rem}
.front-hero .small{font-size:.93rem;color:var(--muted);margin-top:1.25rem}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.button-link{min-height:2.9rem;line-height:1.3;border-radius:.45rem;padding:.75rem 1.1rem;border:1px solid var(--cyan);background:var(--cyan);color:#0b2345;display:inline-flex;align-items:center;justify-content:center;font-weight:800;text-decoration:none}
.button-link:hover{background:#ffc341;border-color:#ffc341}
.button-link.secondary{background:transparent;border-color:var(--line);color:var(--ink)}
.button-link.secondary:hover{background:var(--card)}
.hero-visual{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;align-items:center;padding:1.3rem 1.3rem 1rem;border:1px solid var(--line);border-radius:1.1rem;background:#122840}
.hero-visual img{width:100%;max-width:12rem;border:1px solid #3b5369;border-radius:1.1rem;margin:0 auto}
.hero-visual img+img{margin-top:2.5rem}
.hero-visual figcaption{grid-column:1/-1;color:var(--muted);font-size:.85rem;margin-top:.25rem}
.entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.entry-grid .card{display:flex;flex-direction:column;border-top-color:var(--cyan)}
.entry-grid h3{font-size:1.3rem}
.entry-grid p{flex:1}
.entry-grid .card-links{display:flex;flex-wrap:wrap;gap:.7rem 1rem;margin-top:1.2rem;align-items:center;font-size:.96rem;font-weight:700}
.section-head .eyebrow+.lede{margin-top:.8rem}
.inline-link{display:inline-block;margin-top:1rem;font-weight:750}
.feature-band{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.feature-band h2{max-width:20ch}
.feature-band .lede{margin-top:1rem;font-size:1.1rem}
.feature-visual{display:flex;justify-content:center;gap:1.5rem;align-items:start}
.feature-visual figure{margin:0;max-width:13rem}
.feature-visual img{border:1px solid var(--line);border-radius:1rem;max-height:27rem;width:auto;margin:0 auto}
.feature-visual figcaption{font-size:.9rem;color:var(--muted);margin-top:.6rem}
.mini-label{font-weight:800;font-size:.8rem;letter-spacing:.08em;color:var(--cyan);text-transform:uppercase;margin-bottom:.8rem;display:block}
.how-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;padding:0;margin:1.5rem 0 0;counter-reset:how}
.how-grid li{counter-increment:how;padding:1.3rem;border:1px solid var(--line);border-radius:.7rem;background:var(--card)}
.how-grid li::before{content:'0' counter(how);font-size:.8rem;letter-spacing:.1em;font-weight:800;color:var(--cyan);display:block;margin-bottom:.7rem}
.how-grid h3{margin-bottom:.6rem}.how-grid p{color:var(--muted)}
.page-hero{padding-top:3.5rem;padding-bottom:3rem}
.page-hero h1{font-size:clamp(2.6rem,5vw,4rem);letter-spacing:-.035em;max-width:20ch}
.page-hero .lede{margin-top:1.2rem;max-width:46rem}
.page-hero .eyebrow{margin-bottom:1rem}
.public-footer{border-top:1px solid var(--line);background:#091220;padding:3rem 0 1.5rem}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
.footer-grid strong{display:block;margin-bottom:.8rem;color:var(--ink)}
.footer-grid p{color:var(--muted);font-size:.93rem;max-width:25rem}
.footer-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.footer-grid a{font-size:.94rem;color:var(--muted)}
.footer-grid a:hover{color:var(--cyan)}
.footer-small{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.25rem 0 2rem}
.account-grid .card h2{font-size:1.5rem;margin-bottom:1rem}
.account-grid .card p{color:var(--muted)}
.account-grid .card .button-link{margin-top:1.4rem}
.account-grid .card>a:not(.button-link){display:block;margin-top:1rem;font-weight:650}
.legacy-manual{max-width:72rem;margin:0 auto;padding:0 1.25rem 3rem}
.legacy-manual details{background:var(--card);border:1px solid var(--line);border-radius:.7rem;margin-bottom:.8rem}
.legacy-manual summary{cursor:pointer;font-weight:700;color:var(--ink)}
.legacy-manual a{color:var(--cyan);text-decoration:underline}
.legacy-manual p,.legacy-manual td{color:var(--muted)}
.legacy-manual h2{font-size:2rem;margin-bottom:.8rem}
.network-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:2.5rem;align-items:start;padding-bottom:4rem}
.network-layout>.card{border-top-color:var(--cyan)}
.network-layout .tag-list{margin-top:1.4rem}
.network-form{display:grid;gap:1rem}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.network-form label,.network-form legend{display:block;color:var(--ink);font-size:.94rem;font-weight:700;margin-bottom:.4rem}
.network-form input,.network-form select,.network-form textarea{width:100%;background:#0b192c;color:var(--ink);border:1px solid #567087;border-radius:.45rem;padding:.75rem .85rem;min-height:2.8rem}
.network-form input::placeholder,.network-form textarea::placeholder{color:#a3b4c6}
.network-form textarea{resize:vertical;min-height:7rem}
.network-form details{padding:.9rem;border:1px solid var(--line);border-radius:.5rem}
.network-form summary{cursor:pointer;color:var(--cyan);font-weight:700}
.network-form details[open] summary{margin-bottom:1rem}
.network-form fieldset{border:0;padding:0;margin:1rem 0}
.service-options{display:flex;flex-wrap:wrap;gap:.6rem 1rem}
.service-options label{display:inline-flex;gap:.5rem;align-items:center;font-weight:500}
.service-options input{width:1.05rem;min-height:0;height:1.05rem;accent-color:var(--cyan)}
.form-message{padding:1rem;border:1px solid #f7bd69;border-radius:.5rem;color:var(--ink);background:var(--card2)}
.form-message:empty{display:none}
.network-form button:disabled{opacity:.65;cursor:wait}
.network-form .small{color:var(--muted);font-size:.9rem}
.notice-band{padding:1rem 1.25rem;background:var(--card);border-left:3px solid var(--cyan);border-radius:.35rem;color:var(--muted)}
@media(max-width:64rem){.public-header>.wrap{flex-wrap:wrap;padding-block:.85rem}.public-nav{flex-wrap:wrap}.front-hero>.wrap{gap:2rem}.entry-grid{grid-template-columns:1fr}.entry-grid .card{display:block}.feature-band{gap:2rem}}
@media(max-width:48rem){.front-hero{padding:3rem 0}.front-hero>.wrap,.feature-band,.network-layout{grid-template-columns:1fr}.hero-visual{max-width:28rem;margin:0 auto}.how-grid{grid-template-columns:1fr}.public-header>.wrap{min-height:4.5rem}.menu-toggle{display:block}.public-nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:.3rem;padding-top:.5rem}.public-nav>a{margin:0!important}.js .public-nav:not([data-open]){display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.account-grid{grid-template-columns:1fr}.network-layout{gap:1.5rem}.public-brand span{font-size:.68rem}}
@media(max-width:30rem){.field-grid{grid-template-columns:1fr}.front-hero h1{font-size:3.1rem}.hero-actions .button-link{width:100%}.hero-visual{padding:1rem}.feature-visual{gap:.75rem}.feature-visual figure{min-width:0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.page-hero h1{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Artwork viewports preserve the supplied brand guide without redrawing the logo. */
.rimsky-brandmark{display:block;width:11rem;height:auto;overflow:hidden;border-radius:.5rem}.public-brand{gap:.35rem}.public-brand .brand-tagline{font-size:.56rem;white-space:nowrap;letter-spacing:0;color:#fff}.brand-tagline b{color:#ffb000}.rimsky-corporate{display:block;width:min(100%,24rem);height:auto;overflow:hidden;border-radius:1rem;margin-bottom:1.5rem}.footer-grid .rimsky-brandmark{margin-bottom:1rem}.contact-note{margin-bottom:1rem}.front-hero{background:linear-gradient(135deg,#12365b,#0b2345 70%)}
