:root{--bg:#081422;--bg2:#0c1b2c;--card:#112339;--edge:#26394d;--text:#f0f4fa;--muted:#9baec4;--brand:#f6be63;--cyan:#5de0df;--violet:#a59cff;--width:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;overflow-x:hidden}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.shell{width:min(calc(100% - 64px),var(--width));margin-inline:auto}.top-glow{pointer-events:none;position:absolute;top:-330px;left:32%;width:950px;height:680px;background:radial-gradient(ellipse,rgba(34,84,112,.26),transparent 68%);z-index:0}.site-header{border-bottom:1px solid rgba(177,200,224,.11);position:relative;z-index:10;background:rgba(8,20,34,.8);backdrop-filter:blur(12px)}.nav-shell{height:88px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:13px;min-width:232px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;background:linear-gradient(135deg,#223c4c,#0b2632);border:1px solid rgba(99,209,216,.4);color:#6cdddb;border-radius:12px;font-size:34px}.brand-img{height:48px;max-width:80px;object-fit:contain}.brand-copy{display:grid;gap:2px;font-family:Manrope,sans-serif}.brand-copy b{font-size:19px;font-weight:800;letter-spacing:-.7px}.brand-copy small{font-size:9px;letter-spacing:2.4px;color:var(--muted)}.site-nav{display:flex;align-items:center;gap:30px;flex:1;justify-content:center}.site-nav a{font-size:13px;font-weight:700;color:#b9c8da;transition:color .2s}.site-nav a:hover,.text-link:hover{color:var(--brand)}.nav-live{display:flex;gap:11px;align-items:center;border:1px solid rgba(96,225,221,.4);border-radius:8px;padding:13px 17px;font-size:11px;letter-spacing:1.1px;font-weight:800;color:#9ef1ee;white-space:nowrap}.nav-live:hover{background:rgba(35,138,153,.13)}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#49f5bb;box-shadow:0 0 0 4px rgba(57,246,185,.12),0 0 16px #49f5bb;flex-shrink:0}.live-dot.small{width:6px;height:6px;box-shadow:none}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:white;margin:5px 0}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse 90% 90% at 0% 90%,rgba(31,64,90,.31),transparent 72%),linear-gradient(180deg,#0a1828,#0b1a2b);border-bottom:1px solid rgba(184,204,231,.08)}.hero:before{content:"";position:absolute;inset:0;opacity:.15;background-image:linear-gradient(rgba(97,155,205,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(97,155,205,.12) 1px,transparent 1px);background-size:66px 66px;mask-image:linear-gradient(180deg,transparent 10%,#000 100%);pointer-events:none}.hero:after{content:"";position:absolute;border-radius:100%;width:500px;height:500px;left:-380px;bottom:-220px;border:75px solid rgba(60,166,191,.06);pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,510px);gap:65px;align-items:center;position:relative;z-index:1;padding-block:70px 85px}.hero-copy{padding:25px 0 50px}.hero-pill{display:inline-flex;align-items:center;gap:10px;border:1px solid #344a59;background:rgba(51,86,108,.19);border-radius:100px;padding:10px 14px;font-size:10px;letter-spacing:2px;color:#97d4dc;font-weight:800;margin-bottom:31px}.pill-square{width:8px;height:8px;background:var(--brand);transform:rotate(45deg)}.hero h1{font-family:Manrope,system-ui,sans-serif;font-size:clamp(45px,5.2vw,73px);line-height:1.16;letter-spacing:-3.5px;font-weight:800;margin-bottom:26px}.hero h1 em{font-style:normal;color:var(--brand);display:inline-block}.hero-description{font-size:16px;line-height:1.95;max-width:490px;color:#a5b8cc}.hero-buttons{display:flex;flex-wrap:wrap;gap:13px;align-items:center;margin-top:34px}.btn-primary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:17px;border-radius:9px;font-size:13px;font-weight:800;padding:17px 22px;transition:transform .2s,box-shadow .2s}.btn-primary{background:var(--brand);color:#182536;box-shadow:0 12px 35px rgba(246,190,99,.09)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(246,190,99,.19)}.btn-ghost{border:1px solid #3a5166;color:#d7e5f3}.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}.hero-meta{margin-top:52px;display:flex;align-items:center;gap:25px}.hero-count{display:flex;align-items:center;gap:12px}.hero-count b{font-size:34px;color:#ecf4ff}.hero-count span{font-size:11px;line-height:1.6;color:var(--muted)}.vertical-line{width:1px;height:36px;background:#3d5062}.meta-note{display:flex;align-items:center;gap:10px;color:#b7c9d8;font-size:12px}.radio-panel{background:linear-gradient(145deg,rgba(28,55,75,.95),rgba(11,29,47,.95));border:1px solid #38556a;border-radius:20px;padding:18px;box-shadow:0 25px 90px rgba(0,0,0,.25),0 0 70px rgba(57,156,168,.09)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;font-weight:800;letter-spacing:.7px}.panel-heading>div{display:flex;align-items:center;gap:12px}.on-air{background:#223e49;border:1px solid #456979;border-radius:5px;padding:6px 9px;color:#82e8dc;font-size:10px;letter-spacing:1px}.panel-caption{font-size:12px;color:#a5bed1;margin:8px 0 14px 21px}.radio-panel iframe{display:block;background:#0a1724;width:100%;min-width:0;max-height:75vh;min-height:520px}.panel-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 3px 0;color:#a4bad0;font-size:11px}.panel-foot span{display:flex;align-items:center;gap:7px}.panel-foot a{color:#80d2dd}.section-pad{padding:72px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{color:var(--cyan);font-size:10px;letter-spacing:2.2px;font-weight:800;display:flex;align-items:center;gap:13px;margin-bottom:19px}.eyebrow-line{width:26px;height:1px;background:var(--cyan)}.section-heading h2,.about-grid h2{font-family:Manrope,system-ui;font-size:clamp(26px,3.2vw,41px);letter-spacing:-1.5px;line-height:1.24;margin-bottom:12px}.section-heading p{color:#9eb3c9;font-size:14px;line-height:1.6;margin:0}.carousel-actions{display:flex;gap:10px}.round-arrow{width:42px;height:42px;background:#13283b;border:1px solid #35516a;color:#e5f3ff;border-radius:50%;font-size:21px;transition:background .2s}.round-arrow:hover{background:#24425a}.projects-section{background:#0b192a}.project-rail{display:flex;gap:17px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#42637b transparent;padding:4px 2px 23px}.project-card{flex:0 0 273px;min-height:268px;background:linear-gradient(145deg,#142a3f,#102236);border:1px solid #2a4358;border-radius:15px;padding:21px;display:flex;flex-direction:column;scroll-snap-align:start;transition:transform .22s,border-color .22s}.project-card:hover{border-color:var(--card-accent);transform:translateY(-3px)}.project-card.compact{flex-basis:275px}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:21px}.project-icon{width:59px;height:59px;border-radius:13px;background:color-mix(in srgb,var(--card-accent) 12%,#0e2635);border:1px solid color-mix(in srgb,var(--card-accent) 40%,#1d3d52);display:grid;place-items:center;color:var(--card-accent);font-size:28px;font-weight:800;overflow:hidden}.project-icon img{width:100%;height:100%;object-fit:contain;padding:6px}.card-category{font-size:10px;border:1px solid #31516c;padding:6px 8px;border-radius:6px;color:#bbccdf;max-width:133px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-content{flex:1}.project-content h3{font-family:Manrope,system-ui;font-size:18px;margin-bottom:11px;letter-spacing:-.4px}.project-content p{font-size:12px;color:#9eb3c7;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-link{border-top:1px solid #2c4257;padding-top:14px;display:flex;justify-content:space-between;color:#e0ecf9;font-size:12px;font-weight:800}.project-link span{color:var(--card-accent);font-size:16px}.section-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:13px;align-items:center;color:#8da5bb;font-size:12px}.text-link{color:#b8e8ec;font-size:13px;font-weight:800}.banner-section{background:#0a1726}.banner-section .small-heading{margin-bottom:24px}.banner-stage{position:relative}.banner-slide{display:none;min-height:234px;position:relative;overflow:hidden;align-items:center;justify-content:space-between;gap:25px;background:radial-gradient(ellipse at 82% 12%,rgba(33,130,161,.3),transparent 42%),linear-gradient(115deg,#12384e,#0c2437);border:1px solid #30566a;border-radius:17px;background-position:center;background-size:cover;padding:30px 50px}.banner-slide.is-active{display:flex}.banner-content{max-width:650px;position:relative;z-index:1}.banner-label{font-size:10px;font-weight:800;letter-spacing:2px;color:#a1dfe4}.banner-content h3{font-family:Manrope,system-ui;font-size:31px;line-height:1.2;letter-spacing:-1px;margin:15px 0 8px}.banner-content p{font-size:14px;line-height:1.7;color:#c3d8e8;margin-bottom:21px}.banner-cta{font-size:12px;font-weight:800;color:#ffe2a9}.banner-art{font-size:155px;color:rgba(102,226,219,.15);transform:rotate(-17deg);line-height:1}.banner-dots{display:flex;justify-content:center;gap:9px;margin-top:14px}.banner-dots button{border:0;background:#466076;border-radius:20px;width:9px;height:9px;padding:0}.banner-dots button.active{width:27px;background:var(--brand)}.about-section{background:#0b192a;border-block:1px solid #1c3246}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.about-copy p{font-size:15px;color:#b8cadd;line-height:1.95}.closing{padding:90px 0;background:radial-gradient(ellipse at 50% 100%,rgba(43,121,150,.24),transparent 70%),#081522;text-align:center}.closing-inner{display:flex;align-items:center;flex-direction:column}.closing .eyebrow{color:var(--brand)}.closing h2{font-family:Manrope,system-ui;letter-spacing:-1.8px;max-width:670px;font-size:clamp(28px,4vw,48px);margin:10px 0 25px}.closing h2 em{color:var(--brand);font-style:normal}.footer{border-top:1px solid #26394a;background:#07111d}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding:39px 0}.footer-brand{font-family:Manrope,sans-serif;font-weight:800;font-size:20px}.footer-brand:first-letter{color:var(--cyan)}.footer-top p{font-size:12px;color:#9db1c5;margin:8px 0}.footer-contact{display:grid;gap:10px;font-size:12px}.footer-contact>span:first-child{color:var(--muted);font-size:10px;letter-spacing:1.5px}.footer-contact a{color:#b1e6e8;font-size:14px;font-weight:700}.footer-bottom{border-top:1px solid #1b3143;display:flex;justify-content:space-between;gap:10px;padding:21px 0;color:#8198af;font-size:11px}.footer-bottom a:hover{color:var(--brand)}.footer-sep{margin-inline:12px}.directory-page{min-height:65vh;padding:85px 0 110px;background:radial-gradient(ellipse at 75% 2%,rgba(54,145,167,.14),transparent 45%)}.directory-top{max-width:790px}.directory-top h1{font-family:Manrope,sans-serif;font-size:clamp(40px,5vw,65px);letter-spacing:-2.3px;margin:0 0 13px}.directory-top h1 em{font-style:normal;color:var(--brand)}.directory-top p{color:#adbed1;line-height:1.7}.directory-tools{margin:35px 0 27px;display:flex;flex-wrap:wrap;align-items:center;gap:18px}.search{border:1px solid #335069;background:#142a3f;border-radius:8px;display:flex;align-items:center;padding-left:14px;gap:7px;min-width:250px}.search span{font-size:22px;color:#7cabbf}.search input{border:0;background:none;color:white;padding:13px 14px 13px 0;outline:none;min-width:0;width:100%}.search input::placeholder{color:#809aaf}.category-filters{display:flex;gap:7px;flex-wrap:wrap}.filter{border:1px solid #335069;background:#102237;color:#a9bed1;font-size:12px;font-weight:700;border-radius:7px;padding:12px 14px}.filter.active,.filter:hover{background:var(--brand);border-color:var(--brand);color:#162536}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(242px,1fr));gap:18px}.project-grid .project-card{min-height:280px}.empty-state{padding:30px;border:1px dashed #3a5269;color:var(--muted);border-radius:10px;text-align:center}[hidden]{display:none!important}
@media(max-width:1080px){.hero-grid{grid-template-columns:1fr 450px;gap:32px}.hero h1{font-size:55px}.site-nav{gap:17px}.brand{min-width:190px}.brand-copy b{font-size:17px}}
@media(max-width:875px){.nav-shell{height:76px;flex-wrap:wrap}.menu-toggle{display:block;order:3;margin-left:auto}.site-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#102237;border-bottom:1px solid #39516a;padding:20px 6%;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:15px;border-bottom:1px solid #294158}.nav-live{margin-left:auto}.hero-grid{grid-template-columns:1fr;gap:30px;padding-block:55px}.hero-copy{padding:0}.hero h1{font-size:clamp(45px,8vw,72px)}.hero-description{max-width:680px}.hero-meta{margin-top:32px}.radio-panel{max-width:600px;width:100%;margin-inline:auto}.about-grid{gap:30px}}
@media(max-width:580px){.shell{width:min(calc(100% - 34px),var(--width))}.nav-shell{gap:10px}.brand{min-width:0}.brand-copy b{font-size:15px}.brand-copy small{font-size:8px;letter-spacing:1.3px}.brand-mark{width:37px;height:37px;font-size:27px}.nav-live{font-size:0;padding:9px 10px;gap:7px}.nav-live .live-dot{width:7px;height:7px}.nav-live span:last-child{font-size:17px}.nav-live{margin-left:auto}.menu-toggle{margin-left:0}.hero-grid{padding:38px 0 58px}.hero h1{font-size:clamp(40px,10.4vw,56px);letter-spacing:-2.5px}.hero-pill{margin-bottom:23px;font-size:9px;letter-spacing:1.3px}.hero-description{font-size:14px;line-height:1.8}.hero-buttons{gap:10px}.btn-primary,.btn-ghost{padding:15px 18px;font-size:12px}.hero-meta{flex-wrap:wrap;gap:15px}.hero-count b{font-size:28px}.radio-panel{padding:12px;border-radius:15px}.panel-heading{font-size:10px}.panel-caption{margin-left:6px}.radio-panel iframe{height:620px!important;max-height:none;min-height:0}.panel-foot{font-size:10px;flex-wrap:wrap}.section-pad{padding:52px 0}.section-heading h2{font-size:27px}.section-heading{align-items:flex-start}.carousel-actions{align-self:flex-end}.round-arrow{width:35px;height:35px}.project-card.compact{flex-basis:245px}.project-card{min-height:245px;padding:17px}.project-grid{grid-template-columns:1fr 1fr;gap:9px}.project-grid .project-card{min-height:265px;padding:12px}.project-grid .project-icon{width:44px;height:44px;font-size:21px}.project-grid .card-category{max-width:85px;font-size:9px}.project-grid .project-content h3{font-size:14px}.project-grid .project-content p{font-size:11px}.project-grid .project-link{font-size:11px}.banner-slide{padding:24px;min-height:255px}.banner-content h3{font-size:25px}.banner-art{display:none}.about-grid{grid-template-columns:1fr;gap:5px}.closing{padding:62px 0}.footer-top{flex-direction:column}.footer-bottom{flex-direction:column;gap:12px}.directory-page{padding:47px 0 75px}.directory-top h1{font-size:40px}.directory-tools{gap:12px}.search{width:100%}.section-bottom{flex-direction:column;align-items:flex-start}.category-filters{width:100%}}
@media(max-width:360px){.project-grid{grid-template-columns:1fr}.nav-live{padding:8px}.brand-copy small{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Hero photo is editable through the mini admin; text stays readable. */
.hero-photo{position:absolute;inset:0;z-index:0;background-position:center var(--hero-position,50%);background-size:cover;background-repeat:no-repeat;opacity:var(--hero-opacity,.35);pointer-events:none}
.tv-scroll{background:#152e43;border-top:1px solid #31516a;border-bottom:1px solid #31516a;overflow:hidden}
.tv-scroll-inner{display:flex;align-items:center;gap:20px;min-height:45px}
.tv-scroll-label{font-size:10px;letter-spacing:1.4px;font-weight:800;color:var(--brand);white-space:nowrap;position:relative;z-index:1;background:#152e43;padding-right:16px;flex-shrink:0}
.tv-scroll-track{min-width:0;overflow:hidden;flex:1;font-size:12px;color:#dfebf7}
.tv-scroll-track span{display:inline-block;white-space:nowrap;animation:tv-scroll 22s linear infinite;padding-left:100%}
@keyframes tv-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.tv-scroll-track span{padding-left:0;animation:none;white-space:normal}}

.social-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:17px}.social-links a{font-size:12px;color:#9fdce7;font-weight:700}.social-links a:hover{color:var(--brand)}
