/* Nyro design system. Breakpoints: 1120 (compact), 900 (menu), 767 (stack), 480 (small). */
:root {
 --blue:#3c2eff; --blue-hover:#2a1fdb; --lavender:#efedff; --ink:#191923; --muted:#696975; --line:#dedee7; --paper:#fff; --soft:#f7f7fa; --night:#1b1932;
 --content:1280px; --gutter:clamp(22px,4.5vw,72px); --section:clamp(72px,8vw,128px);
 --space-1:8px; --space-2:16px; --space-3:24px; --space-4:32px; --space-5:48px; --space-6:64px;
 --radius:20px; --radius-sm:10px; --radius-lg:32px; --shadow:0 18px 54px #201d5020;
 --ease:cubic-bezier(.22,1,.36,1); --fast:180ms; --duration:600ms; --header-height:100px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 28px)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto;display:block}
svg{width:24px;height:24px;flex-shrink:0}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
:focus-visible{outline:3px solid var(--blue);outline-offset:6px;border-radius:3px}
[hidden]{display:none!important}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{font-weight:600;line-height:1.15;letter-spacing:-.045em;text-wrap:balance}
h1{font-size:clamp(48px,6.1vw,88px)}
h2{font-size:clamp(32px,3.6vw,50px)}
h3{font-size:clamp(23px,2.2vw,30px)}
h4{font-size:18px;letter-spacing:-.02em}
p{color:var(--muted);max-width:64ch}
p+p{margin-top:20px}
.container{width:calc(100% - var(--gutter)*2);max-width:var(--content);margin-inline:auto}
.section{padding-block:var(--section)}
.accent{color:var(--blue)}
.muted{color:var(--muted)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.5;font-weight:500;letter-spacing:.11em;text-transform:uppercase;margin-bottom:24px}
.brand-dot{width:8px;height:8px;background:var(--blue);border-radius:50%}
.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-bottom:64px;align-items:start}
.section-intro>.eyebrow{padding-top:10px}
.section-intro p{margin-top:24px;max-width:54ch}
.screen-reader-text,.honeypot{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:20px;z-index:1000001;background:var(--ink);color:white;padding:16px}
.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid transparent;transition:border-color var(--fast),box-shadow var(--fast)}
.site-header.is-scrolled{border-color:var(--line);box-shadow:0 6px 24px #18182b05}
.header-inner{display:flex;align-items:center;gap:32px;min-height:var(--header-height)}
.site-branding{margin-right:auto;flex:0 0 122px}
.site-branding img{width:122px;height:auto;max-height:44px;object-fit:contain}
.nav-menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.nav-menu a{font-size:13px;font-weight:500;display:block;position:relative;padding-block:14px}
.nav-menu a::after{content:"";position:absolute;bottom:7px;left:0;right:0;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform var(--fast)}
.nav-menu a:hover::after,.nav-menu .current-menu-item>a::after{transform:scaleX(1)}
.header-cta{display:flex;gap:18px;align-items:center;border:1px solid var(--line);border-radius:100px;padding:12px 20px;font-size:13px;font-weight:500;white-space:nowrap;transition:background var(--fast),border-color var(--fast)}
.header-cta:hover{background:var(--lavender);border-color:var(--blue)}
.menu-toggle{display:none}
.sub-menu{list-style:none;padding:12px;background:white;box-shadow:var(--shadow);position:absolute;border-radius:var(--radius-sm);display:none;min-width:180px}
.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu{display:block}
.button,.text-link{display:inline-flex;align-items:center;justify-content:center;gap:24px;font-size:14px;font-weight:500;line-height:1.5;min-height:50px}
.button{border:1px solid var(--blue);background:var(--blue);color:white;padding:16px 24px;border-radius:100px;transition:background var(--fast),transform var(--fast),box-shadow var(--fast);text-align:center}
.button:hover{background:var(--blue-hover);box-shadow:0 8px 20px #3c2eff20}
.button svg,.text-link svg,.header-cta svg{transition:transform var(--fast);width:21px;height:21px}
.button:hover svg,.text-link:hover svg,.header-cta:hover svg{transform:translateX(3px)}
.button:active{transform:scale(.98)}
.button--outline{background:transparent;color:var(--blue)}
.button--outline:hover{background:var(--lavender)}
.button--dark{background:var(--ink);border-color:var(--ink)}
.button--dark:hover{background:#343440}
.text-link{justify-content:flex-start;gap:16px}
.text-link:hover{text-decoration:underline}
.button-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}
.content-prose{max-width:850px;min-height:50vh}
.content-prose h1{margin-bottom:40px}
.content-prose h2,.content-prose h3{margin-block:40px 20px}
.content-prose a{text-decoration:underline;color:var(--blue)}
.content-prose ul{padding-left:20px}
.content-prose img{border-radius:var(--radius);margin-block:24px}
.closing-cta{background:var(--lavender);overflow:hidden}
.closing-inner{position:relative;padding-block:80px 88px;isolation:isolate}
.closing-inner h2{font-size:clamp(42px,5.8vw,80px);max-width:850px;margin-bottom:32px}
.closing-inner h2 span{color:var(--blue)}
.site-footer{background:var(--ink);color:white;padding-top:72px}
.footer-top{display:grid;grid-template-columns:1.2fr .8fr 1.2fr;gap:64px;padding-bottom:72px}
.footer-logo{width:125px;max-height:48px;object-fit:contain}
.footer-brand p{margin-top:24px;color:#adadb8;font-size:15px}
.footer-label{display:block;color:#adadb8;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:24px}
.footer-top nav{display:flex;flex-direction:column;align-items:start;gap:10px;font-size:14px}
.footer-top a:hover{color:#bdb8ff}
.footer-contact>a{display:inline-flex;align-items:center;gap:16px;font-size:clamp(14px,1.35vw,18px);overflow-wrap:anywhere}
.footer-contact p{color:#adadb8;font-size:13px;margin-top:20px}
.footer-bottom{border-top:1px solid #ffffff24;display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:26px;font-size:12px;color:#adadb8}
.footer-bottom small{font-size:inherit}
body.admin-bar .site-header{top:32px}
@media(min-width:768px){[data-reveal].reveal-pending{opacity:0;transform:translateY(22px)}[data-reveal]{transition:opacity var(--duration) var(--ease),transform var(--duration) var(--ease)}}
@media(max-width:1120px){.header-inner{gap:22px}.nav-menu{gap:20px}.header-cta{padding:10px 16px;gap:10px}.header-cta svg{display:none}.footer-top{gap:32px}}
@media(max-width:900px){
 :root{--header-height:82px}
 .header-cta{display:none}.site-branding{flex-basis:115px}.site-branding img{width:115px}
 html:not(.js-nav) .header-inner{flex-wrap:wrap;padding-block:20px}
 .menu-toggle:not([hidden]){display:flex;align-items:center;gap:14px;min-height:44px;border:1px solid var(--line);background:white;padding:10px 16px;border-radius:100px;font-size:13px}
 .primary-navigation{width:100%}.nav-menu{flex-wrap:wrap;gap:8px 20px}
 .js-nav .primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;padding:20px var(--gutter) 32px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 24px #19192310;max-height:calc(100dvh - var(--header-height));overflow-y:auto}
 .js-nav.menu-is-open .primary-navigation{display:block}
 .js-nav .nav-menu{display:block}.js-nav .nav-menu a{font-size:22px;padding-block:14px}.js-nav .nav-menu a::after{display:none}.js-nav .nav-menu .current-menu-item>a{color:var(--blue)}
 .sub-menu{position:static;box-shadow:none;padding-left:20px;display:block}
 .section-intro{gap:32px;grid-template-columns:1fr 2fr}
 .footer-top{grid-template-columns:1fr 1fr}.footer-contact{grid-column:1/-1}
}
@media(max-width:767px){
 h1{font-size:clamp(44px,8vw,62px)}h2{font-size:clamp(31px,5.6vw,42px)}
 .section-intro{grid-template-columns:1fr;gap:0;margin-bottom:40px}.section-intro>.eyebrow{padding:0}
 .eyebrow{font-size:11px;margin-bottom:20px}
 .closing-inner{padding-block:64px}.closing-mark{width:280px;right:-150px;top:35%}
 .footer-top{gap:40px 24px;padding-bottom:48px}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:16px}.footer-bottom>span{order:3;flex-basis:100%}
 body.admin-bar .site-header{top:46px}
}
@media(max-width:480px){
 body{font-size:15px}.button{font-size:13px;padding:14px 20px}.button-row{gap:12px 20px}.text-link{font-size:13px}.footer-brand{grid-column:1/-1}.footer-top{grid-template-columns:1fr}.footer-contact{grid-column:auto}
 .header-inner{gap:16px}.desktop-break{display:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 [data-reveal].reveal-pending{opacity:1;transform:none}
}
@media print{.site-header,.page-transition,.closing-cta,.site-footer{display:none}.section{padding-block:24px}[data-reveal].reveal-pending{opacity:1;transform:none}body{color:#000}}
