/* JUSTIN RUSCHEINSKI — bespoke responsive website */
:root{color-scheme:dark;--bg:#06101b;--ink:#edf7ff;--muted:#9bb1c8;--cyan:#48dfff;--blue:#4c91ff;--border:rgba(113,195,250,.19);--panel:#0b1c2d;--panel2:#102a40;--radius:18px;--w:1190px;--shadow:0 20px 80px rgba(0,0,0,.28)}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 70vw 44vw at 100% 2%,rgba(0,114,194,.14),transparent 70%),radial-gradient(ellipse 40vw 32vw at 0% 40%,rgba(55,56,137,.09),transparent 70%)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer}p{margin:0 0 1.1em}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.04em;margin:0}h1{font-size:clamp(3.3rem,6.3vw,6.6rem);font-weight:840}h2{font-size:clamp(2.3rem,4.4vw,4.7rem);font-weight:820}h3{font-size:1.5rem}strong{color:#f7fcff}::selection{background:#50d6ff;color:#061321}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #83e4ff;outline-offset:4px}.container{width:min(calc(100% - 48px),var(--w));margin-inline:auto}.skip{position:absolute;z-index:999;left:20px;top:-100px;background:#fff;color:#000;padding:10px 20px}.skip:focus{top:15px}.eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:850;color:#6de5ff}.eyebrow:before{content:"";display:inline-block;width:25px;height:2px;margin:0 12px 4px 0;background:var(--cyan)}.highlight,.gradient{background:linear-gradient(115deg,#adf8ff,#39d6ff 39%,#639dff 90%);color:transparent;background-clip:text}.text-muted,.subtext{color:var(--muted)}.section{padding:105px 0}.section-soft{background:linear-gradient(130deg,rgba(11,39,64,.8),rgba(6,17,29,.8));border-block:1px solid var(--border)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:34px}.section-head h2{max-width:740px}.section-head>p{max-width:400px;color:var(--muted);margin:0}.section-head .eyebrow{margin-bottom:20px}.arrow{display:inline-block;transition:transform .2s}.btn:hover .arrow,.text-link:hover .arrow{transform:translate(4px,-2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid transparent;border-radius:11px;padding:13px 21px;font-weight:770;font-size:.92rem;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#03111f;background:linear-gradient(120deg,#6bebff,#4cbeff);box-shadow:0 12px 35px rgba(41,167,245,.25)}.btn-primary:hover{box-shadow:0 14px 40px rgba(41,167,245,.38)}.btn-outline{border-color:#477d9f;background:rgba(10,31,50,.66)}.btn-outline:hover{border-color:var(--cyan);background:#113250}.btn-quiet{border-color:var(--border);background:#10243a}.text-link{display:inline-flex;gap:10px;align-items:center;font-weight:760;color:#6bdefc;font-size:.93rem}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.pill{display:inline-block;padding:6px 12px;border:1px solid #315675;border-radius:999px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#a9d9f7}.button-row{display:flex;gap:12px;flex-wrap:wrap}.topbar{border-bottom:1px solid rgba(118,204,246,.12);background:#091626}.topbar .container{display:flex;justify-content:space-between;align-items:center;padding:7px 0;font-size:.65rem;letter-spacing:.19em;font-weight:800;text-transform:uppercase;color:#82a9c5}.topbar strong{color:#5ae6ff}.header{position:sticky;top:0;z-index:60;backdrop-filter:blur(18px);background:rgba(5,16,29,.95);border-bottom:1px solid var(--border)}.nav-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}.brand-symbol{display:grid;place-items:center;width:46px;height:46px;border:1px solid #347695;background:linear-gradient(135deg,#183a56,#061827);border-radius:11px;color:#8aeaff;font-weight:950;font-size:1.35rem;font-style:italic;letter-spacing:-.13em;padding-right:3px}.brand-title{display:flex;flex-direction:column;gap:1px;font-size:.87rem;font-weight:900;letter-spacing:.07em;line-height:1.3}.brand-sub{font-size:.54rem;letter-spacing:.24em;color:#9bb9ce;font-weight:700}.nav{display:flex;align-items:center;gap:24px}.nav a{font-size:.83rem;font-weight:660;color:#c5d6e8;transition:color .2s}.nav a:hover,.nav a[aria-current="page"]{color:#62dfff}.nav-cta{background:rgba(37,166,212,.1);border:1px solid #3ab4e7;border-radius:9px;padding:9px 14px}.menu-toggle{display:none;border:1px solid var(--border);background:#10263b;border-radius:9px;padding:8px 12px;color:var(--ink);font-size:1.4rem}.hero{padding:100px 0 70px;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 70% 25%,rgba(29,135,243,.14),transparent 47%)}.hero-layout{display:grid;grid-template-columns:1.04fr 1fr;gap:40px;align-items:center;position:relative}.hero h1{margin:16px 0 25px}.hero p.lead{font-size:1.13rem;max-width:570px;color:#b9cce0;line-height:1.8}.hero .button-row{margin:30px 0}.hero-footnotes{display:flex;gap:24px;flex-wrap:wrap;margin-top:40px;font-size:.79rem;color:#8faac2}.hero-footnotes span:before{content:"◆";font-size:.56rem;color:#50e2fb;margin-right:8px}.hero-visual{position:relative}.hero-visual:after{content:"";position:absolute;z-index:-1;inset:-20px;border-radius:50%;background:radial-gradient(circle,rgba(48,150,255,.21),transparent 65%);filter:blur(16px)}.hero-visual img{width:100%;border-radius:27px;border:1px solid rgba(93,196,250,.25);box-shadow:0 35px 100px rgba(0,0,0,.35)}.float-label{position:absolute;left:-30px;bottom:35px;padding:12px 16px;background:rgba(10,34,55,.94);backdrop-filter:blur(12px);border:1px solid #236a91;border-radius:9px;font-size:.74rem;font-weight:780;letter-spacing:.14em;color:#b3ecff}.ticker{overflow:hidden;border-block:1px solid var(--border);background:#0d2032}.ticker-in{display:flex;gap:44px;justify-content:space-between;min-width:900px;padding:18px 0;font-size:.76rem;letter-spacing:.18em;font-weight:900;color:#a1bacd}.ticker-in i{font-style:normal;color:#4ce2ff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:54px}.stat{padding:23px 25px;background:rgba(16,42,65,.6);border:1px solid var(--border);border-radius:14px}.stat strong{display:block;font-size:1.05rem;margin:5px 0}.stat span{color:#8cabc2;font-size:.8rem}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;overflow:hidden;display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(140deg,#112942,#081727 70%);box-shadow:var(--shadow);transition:transform .25s,border-color .25s}.card:hover{transform:translateY(-5px);border-color:#357f9f}.card-illustration{aspect-ratio:1.75;overflow:hidden;background:#12273b}.card-illustration img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.045)}.card-body{padding:26px;display:flex;flex-direction:column;flex:1}.card .eyebrow{font-size:.64rem;letter-spacing:.13em;margin:0 0 12px}.card h3{margin-bottom:13px}.card p{color:#aabed1;font-size:.92rem;line-height:1.75;flex:1}.card .text-link{margin-top:15px}.feature{border:1px solid var(--border);background:linear-gradient(110deg,#0b2034,#071626);border-radius:22px;padding:39px;display:grid;grid-template-columns:1fr .92fr;gap:60px;align-items:center}.feature img{border-radius:18px;border:1px solid #264d6c}.feature h2{margin:20px 0}.feature p{color:#b1c8dd}.feature .button-row{margin-top:24px}.feature .checks{list-style:none;padding:0;margin:20px 0}.checks li{padding:5px 0;color:#c3d9e9}.checks li:before{content:"✦";color:#50dcff;margin-right:10px}.project-list{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.project-list .card-body{padding:22px}.project-list .card h3{font-size:1.26rem}.project-list .card-illustration{aspect-ratio:1.45}.section-cta{margin-top:30px;text-align:center}.editorial{display:grid;grid-template-columns:1.2fr .8fr;gap:25px;align-items:start}.editorial .panel{padding:36px;border:1px solid var(--border);border-radius:20px;background:#0d2237}.panel h2{font-size:clamp(1.8rem,3vw,3.1rem)}.editorial .panel p{color:#a7bfd2}.panel .eyebrow{margin-bottom:22px}.editorial-aside{border:1px solid #2b7397;border-radius:20px;padding:30px;background:linear-gradient(145deg,#124468,#0b2135)}.editorial-aside h3{margin:15px 0}.editorial-aside p{color:#c4d9e7}.quote{font-size:1.45rem;line-height:1.4;letter-spacing:-.03em}.cta-band{background:radial-gradient(ellipse at top right,rgba(63,176,255,.25),transparent 55%),linear-gradient(125deg,#0d3655,#061725);border:1px solid #317eaa;border-radius:24px;padding:52px 58px;display:flex;gap:24px;justify-content:space-between;align-items:center}.cta-band h2{font-size:clamp(2rem,4vw,3.7rem);margin:11px 0}.cta-band p{color:#b6d2e6;max-width:630px;margin:0}.cta-band .btn{flex-shrink:0}.site-footer{border-top:1px solid var(--border);background:#06111d}.footer-main{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;padding:75px 0 60px}.footer-main p{max-width:290px;color:#8daec6;margin-top:18px}.footer-nav{display:grid;align-content:start;gap:10px}.footer-nav h4{font-size:.78rem;letter-spacing:.17em;color:#65d6ff;margin-bottom:7px}.footer-nav a{font-size:.86rem;color:#9bb7cd}.footer-nav a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding:19px 0 27px;font-size:.76rem;color:#7897ae}.footer-bottom a{color:#a4cde5}.page-hero{padding:82px 0 67px;background:radial-gradient(ellipse 60% 95% at 85% 50%,rgba(16,91,162,.17),transparent 70%);border-bottom:1px solid var(--border)}.page-hero .eyebrow{margin-bottom:18px}.page-hero h1{font-size:clamp(3rem,5.5vw,5.4rem);max-width:940px;margin:0 0 20px}.page-hero p{font-size:1.12rem;line-height:1.8;color:#b4cce0;max-width:750px}.breadcrumbs{display:flex;gap:8px;align-items:center;color:#789bb5;font-size:.76rem;margin-bottom:30px}.breadcrumbs a:hover{color:var(--cyan)}.breadcrumbs span{color:#d7ecfd}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split img{border:1px solid var(--border);border-radius:22px}.copy p{color:#b6cbdc;line-height:1.85}.copy h2{margin-bottom:20px}.stack{display:grid;gap:18px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.detail{padding:29px;border:1px solid var(--border);border-radius:15px;background:#0d2236}.detail strong{font-size:1.22rem}.detail p{color:#aac2d7;margin:9px 0 0}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}.filter-bar button{border:1px solid #35516a;border-radius:9px;background:#0b2236;color:#c5d9e7;padding:9px 16px;font-size:.84rem;font-weight:700}.filter-bar button:hover,.filter-bar button[aria-pressed=true]{background:#165277;border-color:#55d9ff;color:#fff}.hidden-filter{display:none!important}.article-layout{display:grid;grid-template-columns:minmax(0,770px) minmax(260px,1fr);gap:58px;align-items:start}.article-body{color:#b4c9dc;font-size:1.03rem}.article-body h2{font-size:2.15rem;color:#f2faff;margin:48px 0 16px}.article-body h3{font-size:1.45rem;color:#eaf6ff;margin:35px 0 13px}.article-body p{line-height:1.95;margin:0 0 19px}.article-body ul,.article-body ol{padding-left:25px;line-height:1.9;margin-bottom:25px}.article-body li{padding-bottom:5px}.article-body a{color:#64ddff;text-decoration:underline}.article-body blockquote{padding:22px 29px;margin:30px 0;border-left:3px solid #47dfff;background:#0e2941;font-size:1.17rem;color:#fff}.article-hero{width:100%;border-radius:17px;border:1px solid var(--border);margin:28px 0 35px}.article-meta{display:flex;gap:14px;flex-wrap:wrap;color:#89adc8;font-size:.83rem}.toc{position:sticky;top:107px;border:1px solid var(--border);background:#0d2235;border-radius:16px;padding:22px}.toc strong{display:block;margin-bottom:14px}.toc a{display:block;padding:6px 0;color:#a6c5d9;font-size:.86rem}.toc a:hover{color:#6edfff}.ad-space{margin-top:20px;border:1px dashed #437391;border-radius:15px;background:linear-gradient(135deg,#102a41,#0b1e30);padding:24px}.ad-space small{font-size:.66rem;letter-spacing:.13em;color:#78acc9}.ad-space p{color:#b2cfdf;font-size:.88rem}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.resource{padding:31px;background:linear-gradient(135deg,#102941,#081b2e);border:1px solid var(--border);border-radius:17px}.resource h3{margin:14px 0}.resource p{color:#aec5d5}.resource .pill{margin-top:4px}.resource small{color:#81a7be}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:38px;align-items:start}.contact-form{border:1px solid var(--border);background:#0e2336;border-radius:20px;padding:37px}.field{display:grid;gap:6px;margin-bottom:17px}.field label{font-size:.8rem;font-weight:800;color:#b3d4e8}.field input,.field textarea,.field select{width:100%;border-radius:9px;padding:13px 14px;border:1px solid #335671;color:#eafaff;background:#081928;outline:none}.field input:focus,.field textarea:focus{border-color:#58deff;box-shadow:0 0 0 3px #47cff122}.field textarea{min-height:140px;resize:vertical}.form-note{font-size:.81rem;color:#a6c0d4;margin-top:15px}.form-status{margin-top:16px;min-height:1.5em;color:#a6e7ff}.honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none}.legal{max-width:830px}.legal h2{font-size:2rem;margin:36px 0 17px}.legal h3{font-size:1.3rem;margin:28px 0 11px}.legal p,.legal li{color:#b4cadd;line-height:1.85}.legal a{color:#67dfff;text-decoration:underline}.note{padding:19px 23px;background:#102c43;border:1px solid #387da5;border-radius:12px;color:#d1e6f6}.accordion{border:1px solid var(--border);border-radius:12px;padding:19px 22px;background:#0d263c;margin:12px 0}.accordion summary{cursor:pointer;font-weight:750}.accordion p{color:#a8c3d5;margin:14px 0 0}.small{font-size:.86rem}.divider{border:0;border-top:1px solid var(--border);margin:45px 0}.reveal{opacity:0;transform:translateY(14px);transition:opacity .65s,transform .65s}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.nav{gap:13px}.nav a{font-size:.75rem}.project-list{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:clamp(3rem,6vw,5.4rem)}}
@media(max-width:820px){.container{width:min(calc(100% - 34px),var(--w))}.topbar .container span:last-child{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;padding:15px 22px 24px;background:#071827;border-bottom:1px solid #2e759c;flex-direction:column;align-items:stretch;gap:4px;box-shadow:0 22px 40px #0007}.nav.is-open{display:flex}.nav a{padding:13px 14px;font-size:1rem}.nav-cta{text-align:center}.hero-layout,.split,.feature,.editorial,.article-layout,.contact-grid{grid-template-columns:1fr}.hero{padding:65px 0 55px}.hero h1{font-size:clamp(3.2rem,9vw,5.3rem)}.hero-visual{max-width:640px;margin:auto}.float-label{left:10px}.cards{grid-template-columns:repeat(2,1fr)}.section{padding:80px 0}.section-head{align-items:start;flex-direction:column}.section-head>p{max-width:600px}.footer-main{grid-template-columns:repeat(2,1fr)}.toc{position:static}.page-hero{padding:60px 0}.cta-band{padding:37px;align-items:flex-start;flex-direction:column}.feature{gap:30px}}
@media(max-width:560px){.container{width:min(calc(100% - 30px),var(--w))}.brand-title{font-size:.75rem}.brand-sub{font-size:.48rem}.brand-symbol{width:42px;height:42px}.hero h1{font-size:clamp(2.75rem,12vw,4.15rem)}.hero p.lead{font-size:1rem}.hero-footnotes{margin-top:20px}.float-label{font-size:.58rem}.cards,.project-list,.detail-grid,.resource-grid,.stats,.footer-main{grid-template-columns:1fr}.stat{padding:15px 20px}.section{padding:67px 0}.page-hero h1{font-size:clamp(2.7rem,10vw,4rem)}.feature{padding:22px}.cta-band{padding:28px 22px}.footer-main{padding:55px 0 35px;gap:28px}.footer-bottom{flex-wrap:wrap}.contact-form{padding:22px}.article-body h2{font-size:1.77rem}.article-layout{gap:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
