.cascade-intro,.cascade-intro-loading{background:#020308;color:#d8d4cb;font-family:Fraunces,serif;min-height:100vh}body:has(.cascade-intro),body:has(.cascade-intro-loading),html:has(.cascade-intro),html:has(.cascade-intro-loading){background:#020308}.cascade-intro *{box-sizing:border-box}.cascade-intro-loading{position:relative;overflow:hidden}.cascade-intro-loading-inner{position:relative;z-index:3;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#b0a99b;font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase}.cascade-intro-loading-inner svg{color:#6aa0ff}.cascade-intro .starfield{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}.cascade-intro .news-bar{position:relative;z-index:4;width:100%;background:rgba(10,12,20,.92);border-bottom:1px solid rgba(214,85,67,.25);backdrop-filter:blur(6px)}.cascade-intro .news-bar-inner{max-width:1200px;margin:0 auto;padding:8px 80px;display:flex;align-items:center;gap:16px;font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.04em;color:#b0a99b;overflow:hidden}.cascade-intro .live-badge{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:3px 10px;background:rgba(214,85,67,.15);border:1px solid rgba(214,85,67,.4);color:#d65543;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.cascade-intro .news-bar .ticker span{color:#b0a99b;transition:color .2s}.cascade-intro .news-bar .ticker span:hover{color:#f5f1e8}.cascade-intro .vignette{position:fixed;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 80% 60% at 30% 30%,rgba(255,230,180,.06) 0,transparent 60%),radial-gradient(ellipse 50% 40% at 80% 80%,rgba(180,30,30,.05) 0,transparent 60%),radial-gradient(ellipse 100% 100% at 50% 50%,transparent 30%,rgba(2,3,8,.65) 100%)}.cascade-intro .scanlines{position:fixed;inset:0;pointer-events:none;z-index:2;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.012),rgba(255,255,255,.012) 1px,transparent 0,transparent 3px)}.cascade-intro .page{position:relative;z-index:3;max-width:1200px;margin:0 auto;padding:60px 80px 80px}.cascade-intro{overflow-x:hidden}.cascade-intro .world-collage{width:100vw;margin:30px 0 12px calc(50% - 50vw)}.cascade-intro .world-collage-frame{position:relative;height:clamp(240px,34vw,440px);border-radius:0;overflow:hidden;background-image:url(/collage.jpg);background-image:-webkit-image-set(url("/collage.webp") 1x,url("/collage.jpg") 1x);background-image:image-set(url("/collage.webp") type("image/webp"),url("/collage.jpg") type("image/jpeg"));background-repeat:no-repeat;background-position:50%;background-size:cover;background-attachment:fixed;-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent)}.cascade-intro .world-collage-frame:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(135% 150% at 50% 50%,rgba(2,3,8,.34) 28%,rgba(2,3,8,.72) 100%)}.cascade-intro .world-collage-frame:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;background:#d65543;mix-blend-mode:soft-light;opacity:.28}.cascade-intro .world-collage figcaption{margin-top:16px;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#6a6358;text-align:center}@media (max-width:900px){.cascade-intro .world-collage-frame{background-attachment:scroll;height:clamp(160px,44vw,280px)}}@media (max-width:640px){.cascade-intro .world-collage{margin:22px 0 6px}.cascade-intro .world-collage figcaption{font-size:10px;letter-spacing:.12em}}.cascade-intro .top-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:56px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.22em;color:#6a6358}.cascade-intro .top-row .left{display:flex;gap:24px;align-items:center}.cascade-intro .pulse{display:inline-flex;align-items:center;gap:8px;color:#d65543}.cascade-intro .pulse-dot{width:7px;height:7px;border-radius:50%;background:#d65543;animation:cascade-pulse 1.4s ease-in-out infinite;box-shadow:0 0 12px #d65543}@keyframes cascade-pulse{0%,to{opacity:1}50%{opacity:.35}}.cascade-intro .stamp{transform:rotate(-3deg);border:2px solid #6a6358;padding:4px 12px;color:#6a6358;font-weight:600}.cascade-intro .protocol-line{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:400;letter-spacing:.25em;color:#d65543;margin-bottom:18px;text-transform:uppercase}.cascade-intro h1.title{font-family:Fraunces,serif;font-weight:900;font-size:96px;line-height:.88;letter-spacing:-.045em;color:#f5f1e8;margin-bottom:12px;font-variation-settings:"opsz" 144}.cascade-intro h1.title em{font-style:italic;color:#d65543;font-weight:700}.cascade-intro .section{margin-top:56px;max-width:820px}.cascade-intro .section-num{font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400;letter-spacing:.25em;color:#d65543;margin-bottom:14px}.cascade-intro .section h2{font-family:Fraunces,serif;font-size:32px;font-weight:700;line-height:1.15;color:#f5f1e8;margin-bottom:18px;letter-spacing:-.02em}.cascade-intro .section p{font-family:Fraunces,serif;font-size:18px;line-height:1.6;color:#b0a99b;font-weight:300}.cascade-intro .section p strong{color:#f5f1e8;font-weight:500}.cascade-intro .section p+p{margin-top:14px}.cascade-intro .cases-block{margin-top:28px;max-width:820px;border-top:1px solid rgba(255,255,255,.08)}.cascade-intro .case{border-bottom:1px solid rgba(255,255,255,.08)}.cascade-intro .case summary{list-style:none;cursor:pointer;padding:20px 0;display:flex;justify-content:space-between;align-items:baseline;font-family:IBM Plex Mono,monospace;font-size:13px;letter-spacing:.16em;color:#d8d4cb;text-transform:uppercase;transition:color .2s}.cascade-intro .case summary::-webkit-details-marker{display:none}.cascade-intro .case summary:after{content:"+";color:#d65543;font-family:Fraunces,serif;font-size:22px;font-weight:300}.cascade-intro .case[open] summary:after{content:"−"}.cascade-intro .case summary:hover{color:#f5f1e8}.cascade-intro .case-body{padding:0 0 28px;max-width:720px}.cascade-intro .case-body p{font-family:Fraunces,serif;font-size:17px;line-height:1.65;color:#b0a99b;font-weight:300}.cascade-intro .case-body p+p{margin-top:14px}.cascade-intro .skills-block{margin-top:28px;max-width:820px;border-top:1px solid rgba(255,255,255,.08)}.cascade-intro .skill{display:grid;grid-template-columns:200px 1fr;gap:36px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.08)}.cascade-intro .skill-label{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:400;letter-spacing:.18em;color:#d65543;text-transform:uppercase;padding-top:2px}.cascade-intro .skill-body{font-family:Fraunces,serif;font-size:17px;line-height:1.6;color:#b0a99b;font-weight:300}.cascade-intro .divider{margin:64px 0 44px;display:flex;align-items:center;gap:16px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.25em;color:#6a6358}.cascade-intro .divider:after,.cascade-intro .divider:before{content:"";flex:1;height:1px;background:rgba(255,255,255,.08)}.cascade-intro .dual{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-bottom:64px}.cascade-intro .dual>div{position:relative;padding-left:28px}.cascade-intro .dual>div:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:2px;background:#d65543}.cascade-intro .dual .tag{font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:400;letter-spacing:.25em;color:#d65543;margin-bottom:14px}.cascade-intro .dual h3{font-family:Fraunces,serif;font-size:26px;font-weight:700;line-height:1.2;color:#f5f1e8;margin-bottom:14px;letter-spacing:-.02em}.cascade-intro .dual p{font-family:Fraunces,serif;font-size:16px;line-height:1.6;color:#b0a99b;font-weight:300}.cascade-intro .cta-row{display:flex;align-items:center;gap:40px;padding-top:44px;margin-top:20px;border-top:1px solid rgba(255,255,255,.08)}.cascade-intro .cta-msg{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.2em;color:#d65543}.cascade-intro .cta-msg .blink{animation:cascade-blink 1.4s ease-in-out infinite}@keyframes cascade-blink{0%,50%{opacity:1}51%,to{opacity:0}}.cascade-intro .cta-side{font-family:Fraunces,serif;font-size:15px;color:#b0a99b;font-style:italic;max-width:360px}.cascade-intro .cta-btn{background:transparent;color:#f5f1e8;border:1px solid #3a9e57;padding:18px 38px;font-family:IBM Plex Mono,monospace;font-size:13px;letter-spacing:.2em;font-weight:600;cursor:pointer;transition:all .2s;margin-left:auto;white-space:nowrap}.cascade-intro .cta-btn:hover{background:#3a9e57;color:#020308}.cascade-intro .cta-btn:after{content:" →";margin-left:6px}.cascade-intro .footer{margin-top:48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.06);font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.16em;color:#4a443a;display:flex;justify-content:space-between}@media (max-width:900px){.cascade-intro .page{padding:40px 24px 60px}.cascade-intro .news-bar-inner{padding-left:24px;padding-right:24px}.cascade-intro h1.title{font-size:56px}.cascade-intro .section h2{font-size:26px}.cascade-intro .dual{grid-template-columns:1fr;gap:32px}.cascade-intro .skill{grid-template-columns:1fr;gap:8px}.cascade-intro .cta-row{flex-direction:column;align-items:flex-start;gap:20px}.cascade-intro .cta-btn{margin-left:0;width:100%;text-align:center}}@media (max-width:480px){.cascade-intro .page{padding:28px 16px 48px}.cascade-intro .news-bar-inner{padding-left:16px;padding-right:16px;gap:10px}.cascade-intro .live-badge{font-size:9px;padding:3px 8px}.cascade-intro .top-row{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:40px}.cascade-intro .top-row .left{flex-direction:column;align-items:flex-start;gap:8px}.cascade-intro h1.title{font-size:40px}.cascade-intro .section{margin-top:40px}.cascade-intro .section h2{font-size:22px}.cascade-intro .section p{font-size:16px}.cascade-intro .case-body p,.cascade-intro .skill-body{font-size:15px}.cascade-intro .case summary{font-size:12px;gap:12px}.cascade-intro .footer{flex-direction:column;gap:8px}}