
:root{
 --bg:#05070d;--bg2:#0a0e18;--bg3:#0d1321;--surface:rgba(255,255,255,.05);--surface2:rgba(255,255,255,.08);--line:rgba(255,255,255,.10);--text:#f3f6ff;--muted:#aab5c7;--muted2:#c4d0dd;--cyan:#70e6ff;--blue:#5c8fff;--violet:#b296ff;--font-display:'Space Grotesk',sans-serif;--font-body:'DM Sans',sans-serif;--shadow:0 20px 80px rgba(0,0,0,.45)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--text);font-family:var(--font-body);background:radial-gradient(circle at 18% 24%,rgba(90,118,255,.22),transparent 24%),radial-gradient(circle at 85% 16%,rgba(54,211,255,.18),transparent 24%),radial-gradient(circle at 50% 100%,rgba(100,64,255,.12),transparent 30%),linear-gradient(180deg,#05070d,#070a12 22%,#05070d 100%);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{text-decoration:none;color:inherit}button{font:inherit}::selection{background:var(--cyan);color:#041019}
.container{max-width:1380px;margin:0 auto;padding:0 42px}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:20px;top:20px;background:#fff;color:#000;padding:10px 14px;z-index:200}
.noise{position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 100 100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23n)' opacity='.03'/%3E%3C/svg%3E");opacity:.55;pointer-events:none;z-index:1}
.site-header{position:fixed;left:0;right:0;top:0;z-index:80;background:linear-gradient(180deg,rgba(3,5,11,.78),rgba(3,5,11,.3));backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{background:rgba(4,7,14,.86);border-color:rgba(255,255,255,.07);box-shadow:0 12px 40px rgba(0,0,0,.35)}.nav{height:92px;display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}
.logo{display:inline-flex;align-items:center;gap:12px}.logo-sign{font:800 34px/1 var(--font-display);letter-spacing:-2px}.logo-blue{color:var(--cyan)}.logo-divider{width:1px;height:36px;background:linear-gradient(180deg,transparent,#ffffff6f,transparent)}.logo-text{display:flex;flex-direction:column;font:700 28px/1 var(--font-display);letter-spacing:-1.5px}.logo-text small{margin-top:6px;font:700 9px/1.1 var(--font-display);letter-spacing:2.6px;color:#aeb9ca}
.menu{display:flex;align-items:center;gap:24px}.nav-link{font-size:13px;font-weight:700;color:#dce3ef;opacity:.78;position:relative;letter-spacing:.03em}.nav-link:after{content:'';position:absolute;left:0;bottom:-8px;width:100%;height:2px;background:linear-gradient(90deg,var(--cyan),var(--blue));transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav-link:hover,.nav-link.active{opacity:1}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.nav-cta{display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:0 22px;border-radius:16px;background:linear-gradient(180deg,#ffffff,#e7edf8);color:#09101e;font-weight:800;box-shadow:0 10px 30px rgba(255,255,255,.1)}.menu-toggle{display:none}
.hero-cinematic{position:relative;min-height:100vh;padding:150px 0 42px;overflow:hidden;z-index:2}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(103,160,255,.08) 1px,transparent 1px),linear-gradient(rgba(103,160,255,.06) 1px,transparent 1px);background-size:76px 76px;mask-image:radial-gradient(circle at center,black 38%,transparent 90%);opacity:.35;pointer-events:none}.ambient{position:absolute;filter:blur(90px);pointer-events:none}.ambient-left{width:30vw;height:30vw;left:-7vw;top:30vh;background:radial-gradient(circle,#4d5cff,transparent 68%)}.ambient-right{width:28vw;height:28vw;right:-6vw;top:10vh;background:radial-gradient(circle,#28d5ff,transparent 66%)}.ambient-bottom{width:42vw;height:22vw;left:30%;bottom:-8vw;background:radial-gradient(circle,#8b65ff,transparent 70%)}
.hero-cinematic-inner{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center;position:relative;z-index:2}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;border:1px solid rgba(112,230,255,.22);background:rgba(255,255,255,.03);backdrop-filter:blur(16px);font:700 12px/1 var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:#89ebff}.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:#7ff0ff;box-shadow:0 0 16px #7ff0ff}.section-kicker span{color:#dce8f8}
.hero-copy h1{margin:22px 0 20px;font:700 clamp(72px,8vw,128px)/.92 var(--font-display);letter-spacing:-.07em}.hero-copy h1 span{display:block;background:linear-gradient(90deg,#70e6ff,#8ea8ff 52%,#d0abff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{max-width:620px;color:var(--muted2);font-size:22px;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:58px;padding:0 24px;border-radius:18px;font-weight:800;font-size:14px;transition:transform .25s,box-shadow .25s,border-color .25s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#72e8ff,#5d8fff);color:#06111b;box-shadow:0 16px 36px rgba(77,141,255,.36)}.btn-ghost{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.03)}.btn-white{background:#f6f9ff;color:#09121d;box-shadow:0 16px 36px rgba(255,255,255,.14)}.hero-mininote{margin-top:20px;color:#88a1bb;font:700 12px/1.8 var(--font-display);letter-spacing:.18em;text-transform:uppercase}
.hero-visual{position:relative;min-height:720px;display:flex;align-items:center;justify-content:center;perspective:1400px;transform-style:preserve-3d}#cinematic-core{position:absolute;inset:10% 6%;width:88%;height:80%;z-index:0;filter:drop-shadow(0 0 34px rgba(115,224,255,.18))}.orb-shell{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 80px rgba(255,255,255,.02)}.orb-one{width:78%;aspect-ratio:1;background:radial-gradient(circle,rgba(255,255,255,.03),transparent 58%)}.orb-two{width:62%;aspect-ratio:1;border-color:rgba(112,230,255,.16)}.orb-three{width:46%;aspect-ratio:1;border-color:rgba(178,150,255,.18)}
.glass-panel{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(24px);box-shadow:var(--shadow)}.hero-monolith{position:relative;z-index:3;width:min(380px,68%);aspect-ratio:1/.98;border-radius:34px;padding:26px 26px 30px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-10deg) translateZ(40px)}.glass-top{display:flex;align-items:center;gap:10px;font:700 11px/1 var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:#c8d7e9}.live-dot{width:8px;height:8px;border-radius:50%;background:#76f0ff;box-shadow:0 0 16px #76f0ff}.monolith-symbol{font:800 clamp(96px,8vw,130px)/.88 var(--font-display);letter-spacing:-.08em;text-align:center}.monolith-symbol span{color:var(--cyan)}.monolith-line{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent)}.hero-monolith p{margin:0;text-align:center;font:700 12px/1.2 var(--font-display);letter-spacing:.34em;color:#d4e2f3}
.floating-quote{position:absolute;z-index:4;left:6%;top:18%;padding:20px 22px;border-radius:22px;max-width:220px}.floating-quote small{display:block;margin-bottom:8px;color:#86ebff;font:800 11px/1 var(--font-display);letter-spacing:.18em}.floating-quote strong{font:700 24px/1.12 var(--font-display)}.floating-quote-b{left:auto;right:2%;top:58%}.visual-tag{position:absolute;z-index:4;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(12px);font:700 12px/1 var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:#e5eef8}.tag-one{left:14%;bottom:16%}.tag-two{right:12%;top:17%}
.hero-scroll{margin-top:20px;display:flex;justify-content:space-between;gap:20px;color:#8fa5bc;font:700 11px/1 var(--font-display);letter-spacing:.22em;text-transform:uppercase}
.section{position:relative;z-index:2;padding:120px 0}.section h2{margin:22px 0 0;font:700 clamp(42px,5.5vw,84px)/.98 var(--font-display);letter-spacing:-.06em}.section h2 span,.cinematic-band h2 span,.contact-cta h2 span{background:linear-gradient(90deg,#77ecff,#8ca9ff 52%,#c9a9ff);-webkit-background-clip:text;background-clip:text;color:transparent}.section p{color:var(--muted);font-size:18px;line-height:1.8}
.manifesto-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:stretch}.manifesto-main{padding-right:24px}.manifesto-side{display:grid;gap:18px}.manifesto-card{padding:30px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow)}.manifesto-card.large{min-height:250px;background:radial-gradient(circle at 100% 0%,rgba(103,224,255,.15),transparent 35%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}.manifesto-card small,.works-top small,.band-inner small{display:block;margin-bottom:12px;color:#8cecff;font:800 11px/1 var(--font-display);letter-spacing:.18em}.manifesto-card h3{margin:0 0 10px;font:700 34px/1.06 var(--font-display)}
.section-head,.works-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px}.section-head p{max-width:500px}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.expertise-card{padding:28px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow);transition:.28s}.expertise-card:hover,.work-card:hover,.manifesto-card:hover{transform:translateY(-6px);border-color:rgba(112,230,255,.25)}.expertise-num{display:inline-flex;margin-bottom:18px;color:#86ebff;font:800 16px/1 var(--font-display);letter-spacing:.18em}.expertise-card h3{margin:0 0 12px;font:700 30px/1.06 var(--font-display)}.expertise-card a,.work-copy a{display:inline-flex;margin-top:14px;color:#92ecff;font-weight:700}
.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.work-card{padding:24px;border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow);transition:.28s}.work-visual{position:relative;height:270px;border-radius:26px;background:linear-gradient(160deg,#111726,#09111d);overflow:hidden;border:1px solid rgba(255,255,255,.08)}.work-glow{position:absolute;inset:auto auto 0 0;width:180px;height:180px;background:radial-gradient(circle,rgba(90,232,255,.7),transparent 62%);filter:blur(28px)}.work-frame{position:absolute;inset:24px;border-radius:20px;border:1px solid rgba(255,255,255,.14);transform:rotate(-8deg)}.work-badge{position:absolute;right:20px;top:20px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font:800 20px/1 var(--font-display)}.work-copy{padding:22px 6px 4px}.work-copy small{display:block;margin-bottom:10px;color:#88ebff;font:800 11px/1 var(--font-display);letter-spacing:.18em}.work-copy h3{margin:0 0 10px;font:700 32px/1.05 var(--font-display)}
.cinematic-band{padding-top:40px}.band-inner{padding:42px;border-radius:34px;background:radial-gradient(circle at 100% 0%,rgba(90,232,255,.16),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:var(--shadow)}.band-inner h2{margin:0;font:700 clamp(34px,4.5vw,62px)/1.03 var(--font-display);letter-spacing:-.05em}
.contact-cta{overflow:hidden}.contact-cta-inner{position:relative;z-index:2;max-width:980px}.contact-cta h2{margin:22px 0 0;font:700 clamp(44px,6vw,88px)/.98 var(--font-display);letter-spacing:-.06em}.watermark{position:absolute;right:-30px;bottom:-20px;font:800 clamp(120px,18vw,320px)/.9 var(--font-display);letter-spacing:-.08em;color:rgba(255,255,255,.03);z-index:1}
.footer{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(7,11,21,.24),rgba(7,11,21,.78))}.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:28px;padding:60px 42px 50px}.footer-brand{display:inline-flex;flex-direction:column;font:700 38px/1 var(--font-display);letter-spacing:-.05em}.footer-brand small{margin-top:8px;font:700 10px/1.2 var(--font-display);letter-spacing:.36em;color:#9fb0c2}.footer-top div{display:flex;flex-direction:column;gap:10px}.footer-top div span{margin-bottom:8px;color:#7ce8ff;font-size:11px;font-weight:800;letter-spacing:.24em}.footer-top a:not(.footer-brand){color:#d9e4f0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:0 42px 28px;color:#92a3b6;font-size:13px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .72s ease,transform .72s ease}.reveal.visible{opacity:1;transform:none}.cursor-glow{position:fixed;left:0;top:0;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(112,230,255,.08),transparent 68%);transform:translate(-50%,-50%);pointer-events:none;z-index:2}
.subhero{padding:195px 0 110px;background:radial-gradient(ellipse at 73% 20%,#183154,transparent 45%),#090e18;position:relative;overflow:hidden}.subhero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#6099ee12 1px,transparent 1px),linear-gradient(#6099ee12 1px,transparent 1px);background-size:75px 75px;mask-image:linear-gradient(to bottom,transparent,#000,transparent)}.subhero .container{position:relative;z-index:1}.subhero h1{font:700 clamp(48px,7vw,104px)/1.03 var(--font-display);letter-spacing:-4px;max-width:1000px;margin:24px 0}.subhero h1 em{font-style:normal;color:var(--cyan)}.subhero p{font-size:18px;line-height:1.8;max-width:670px;color:#b0c0d4}.inner-section{padding:90px 0;background:#0a101c}.inner-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.inner-panel{padding:42px;background:linear-gradient(140deg,#13233b,#0c1422);border:1px solid #ffffff1c;border-radius:18px}.inner-panel h2{font:700 30px var(--font-display);margin:0 0 17px}.inner-panel p{font-size:15px;line-height:1.9;color:#b4c0d1}.inner-panel small{color:var(--cyan);font-weight:700;letter-spacing:2px}.page-back{color:var(--cyan);display:inline-flex;margin-bottom:26px;font-size:13px}.contact-detail{display:inline-block;color:#9cecff;font-size:clamp(19px,3vw,30px);margin:22px 0}.legal-note{font-size:12px;color:#8b9bb0}
@media(max-width:1180px){.container{padding:0 28px}.hero-cinematic-inner,.manifesto-grid,.section-head,.works-top,.band-inner{grid-template-columns:1fr;display:block}.hero-visual{min-height:580px;margin-top:20px}.expertise-grid,.works-grid{grid-template-columns:repeat(2,1fr)}.manifesto-grid{display:grid}.band-inner{display:flex;flex-direction:column;align-items:flex-start}}
@media(max-width:760px){html{scroll-padding-top:76px}.container{padding:0 20px}.nav{height:76px}.site-header{background:rgba(4,7,14,.86);border-bottom:1px solid rgba(255,255,255,.08)}.logo-sign{font-size:30px}.logo-text{font-size:24px}.logo-text small{font-size:8px}.menu-toggle{display:flex;z-index:50;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:transparent;border:1px solid #34445b;border-radius:10px}.menu-toggle span{height:2px;width:19px;background:var(--text);transition:transform .2s,opacity .2s}.menu-toggle.open span:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:last-child{transform:translateY(-8px) rotate(-45deg)}.menu{display:none;position:absolute;top:75px;left:0;right:0;padding:24px 20px 30px;background:#09111e;border-bottom:1px solid #30435a;box-shadow:0 20px 35px #0006;flex-direction:column;align-items:stretch;gap:20px}.menu.open{display:flex}.nav-link{font-size:15px}.nav-cta{text-align:center;justify-content:center}
.hero-cinematic{padding-top:118px}.hero-cinematic-inner{display:block}.hero-copy h1{font-size:clamp(52px,14vw,74px)}.hero-lead{font-size:17px}.hero-visual{min-height:430px}.hero-monolith{width:min(260px,74%)}.floating-quote,.tag-two{display:none}.hero-scroll,.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}.section{padding:82px 0}.section h2,.contact-cta h2{font-size:clamp(36px,10vw,56px)}.expertise-grid,.works-grid,.inner-grid{grid-template-columns:1fr}.watermark{font-size:120px;right:-10px}.footer-top{grid-template-columns:1fr 1fr;gap:28px;padding-left:20px;padding-right:20px}.footer-brand{grid-column:1/-1}.footer-bottom{padding-left:20px;padding-right:20px}.subhero{padding:140px 0 70px}.subhero h1{font-size:clamp(43px,10vw,68px);letter-spacing:-2px}.inner-panel{padding:28px}}
@media(max-width:420px){.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.visual-tag,.floating-quote,.tag-one{display:none}.hero-visual{min-height:390px}.hero-monolith{width:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}#cinematic-core,.cursor-glow{display:none}}

/* FLCSET v4: Cinematic Portal / deliberately different full-bleed composition */
body.theme-cinematic{background:#04050b}
.portal-hero{position:relative;min-height:940px;height:max(100svh,940px);isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 70% 42%,#17225a 0%,#060917 40%,#030409 75%);}
#space-vortex{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:-3;opacity:1}
.portal-vignette{pointer-events:none;position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(2,4,12,.91) 0%,rgba(3,5,13,.70) 30%,rgba(5,7,18,.05) 67%,rgba(3,5,14,.14) 100%),linear-gradient(0deg,#03050b 0%,transparent 19%,transparent 76%,#050711 100%)}
.portal-grid{pointer-events:none;position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 49.92%,rgba(135,220,255,.07) 50%,transparent 50.08%);}
.portal-overlay{height:100%;display:flex;flex-direction:column;position:relative;padding-top:130px;padding-bottom:35px}
.portal-topline,.portal-bottomline{display:flex;justify-content:space-between;align-items:center;font:700 11px/1.5 var(--font-display);letter-spacing:.24em;color:#a8bbdf;text-transform:uppercase}
.portal-topline b{color:#56dfff}.online-dot,.portal-playing i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#66f7ff;box-shadow:0 0 16px #71e8ff;margin-right:10px;animation:onlinePulse 2.5s ease-in-out infinite}
.portal-content{flex:1;display:grid;grid-template-columns:1.05fr .95fr;gap:0;align-items:center;min-height:0}
.portal-intro{position:relative;z-index:5;padding:46px 0 40px}
.portal-mark{display:inline-block;padding:11px 0;border-bottom:1px solid #71eaff;color:#70e9ff;font:700 12px/1 var(--font-display);letter-spacing:.24em}
.portal-intro h1{font:700 clamp(86px,9.8vw,160px)/.81 var(--font-display);letter-spacing:-.095em;color:#f4f7ff;margin:32px 0 32px;white-space:nowrap;text-shadow:0 12px 60px rgba(0,0,0,.45)}
.portal-intro h1 em{font-style:normal;color:transparent;-webkit-text-stroke:2px rgba(146,218,255,.94);text-shadow:none}
.portal-period{color:#63e5ff}.portal-intro p{max-width:480px;color:#b8c9dd;font-size:19px;line-height:1.7;margin:0 0 33px}
.portal-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.portal-button{min-height:64px;padding:0 27px;display:inline-flex;gap:32px;align-items:center;justify-content:space-between;background:linear-gradient(115deg,#7cefff,#6b9bff);color:#04101b;font-size:14px;font-weight:800;border-radius:6px;box-shadow:0 14px 45px rgba(38,166,255,.35);transition:transform .25s,box-shadow .25s}.portal-button:hover{transform:translateY(-4px);box-shadow:0 20px 55px rgba(38,166,255,.48)}.portal-text-link{display:inline-flex;gap:20px;align-items:center;font-weight:700;color:#e0f1ff;font-size:14px;border-bottom:1px solid #ffffff54;padding-bottom:9px}
.portal-device{height:min(700px,78vh);width:100%;position:relative;display:grid;place-items:center;z-index:2;filter:drop-shadow(0 0 60px rgba(56,117,255,.22));animation:floatDevice 10s ease-in-out infinite}
.portal-aura{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(15,9,56,.9) 0%,rgba(18,35,104,.45) 34%,rgba(36,137,245,.12) 58%,transparent 71%);box-shadow:inset 0 0 80px rgba(82,184,255,.17),0 0 120px rgba(48,127,255,.13)}
.portal-orbit{position:absolute;width:86%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(128,217,255,.30);box-shadow:0 0 15px rgba(65,168,255,.12),inset 0 0 15px rgba(65,168,255,.12)}.orbit-outer{transform:rotateX(65deg) rotateY(-20deg);animation:orbitSpin 14s linear infinite}.orbit-inner{width:65%;border:2px solid rgba(121,217,255,.5);border-left-color:transparent;border-bottom-color:rgba(198,123,255,.28);animation:orbitSpinReverse 9s linear infinite}
.portal-emblem{position:relative;z-index:4;width:280px;height:280px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(circle at 35% 25%,#142c54 0%,#080d25 45%,#030715 95%);border:1px solid rgba(164,220,255,.6);box-shadow:0 0 40px rgba(100,196,255,.35),inset 0 0 45px rgba(76,153,255,.19),0 0 120px rgba(55,135,255,.14);animation:emblemLevitate 8s ease-in-out infinite}
.portal-emblem:before{content:'';position:absolute;inset:12px;border-radius:50%;border:1px dashed rgba(111,215,255,.24);animation:orbitSpin 22s linear infinite}.portal-emblem-letters{font:800 94px/.9 var(--font-display);letter-spacing:-.09em;color:#f7fbff;text-shadow:0 0 30px rgba(130,224,255,.5)}.portal-emblem-letters span{color:#70eaff}.portal-emblem-label{font:700 10px/1 var(--font-display);letter-spacing:.33em;color:#a9d8ff}
.portal-satellite{position:absolute;font-size:35px;color:#95eaff;text-shadow:0 0 24px #77eaff;animation:twinkle 3s ease-in-out infinite}.satellite-a{top:13%;right:24%}.satellite-b{bottom:19%;left:14%;animation-delay:1s}
.portal-coordinate{position:absolute;z-index:5;font:700 10px/1 var(--font-display);letter-spacing:.21em;color:#b8eaff;border:1px solid rgba(135,218,255,.22);background:rgba(5,13,30,.54);backdrop-filter:blur(9px);padding:12px 13px}.coord-one{top:25%;left:0}.coord-two{right:1%;bottom:23%}
.portal-bottomline b{color:#78e7ff}.portal-playing{color:#7cd6ed}
.ticker{position:relative;z-index:2;height:76px;overflow:hidden;display:flex;align-items:center;background:#08111e;border-top:1px solid rgba(101,214,255,.15);border-bottom:1px solid rgba(101,214,255,.15)}.ticker>div{white-space:nowrap;display:inline-block;min-width:200%;animation:tickerRun 28s linear infinite;font:700 16px/1 var(--font-display);letter-spacing:.35em;color:#cad8ea}.ticker span{padding:0 55px;color:#6ceeff}
@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes orbitSpinReverse{to{transform:rotate(-360deg)}}@keyframes floatDevice{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes emblemLevitate{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}@keyframes onlinePulse{0%,100%{opacity:.65}50%{opacity:1;box-shadow:0 0 23px #71e8ff}}@keyframes twinkle{0%,100%{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes tickerRun{to{transform:translateX(-50%)}}
@media(max-width:1100px){.portal-hero{height:auto;min-height:970px}.portal-overlay{padding-top:123px;padding-bottom:40px}.portal-content{grid-template-columns:1fr .8fr}.portal-intro h1{font-size:clamp(72px,9.3vw,110px)}.portal-emblem{width:215px;height:215px}.portal-emblem-letters{font-size:73px}}
@media(max-width:760px){.portal-hero{min-height:970px}.portal-overlay{padding-top:103px}.portal-content{display:flex;flex-direction:column;align-items:stretch;justify-content:center}.portal-intro{padding:40px 0 0}.portal-intro h1{font-size:clamp(67px,13.6vw,105px);margin:28px 0 25px}.portal-intro p{font-size:16px;max-width:370px}.portal-device{height:360px;min-height:360px;max-width:520px;margin:auto}.portal-emblem{width:175px;height:175px}.portal-emblem-letters{font-size:61px}.portal-emblem-label{font-size:8px}.portal-topline span:last-child,.portal-bottomline span:last-child,.portal-coordinate{display:none}.portal-bottomline{padding-top:26px}.portal-vignette{background:linear-gradient(180deg,rgba(3,5,11,.77),rgba(3,5,11,.38) 45%,rgba(3,5,11,.52) 80%,#03050b)}.portal-orbit{width:74%}.portal-aura{width:72%}.ticker{height:56px}.ticker>div{font-size:12px}}
@media(prefers-reduced-motion:reduce){.portal-device,.portal-emblem,.portal-orbit,.ticker>div,.portal-satellite,.online-dot,.portal-playing i{animation:none!important}#space-vortex{opacity:.55}}


/* FLCSET v5: Akira Expanded refinement */
@font-face{
  font-family:'Akira Expanded';
  src: local('Akira Expanded'),
       local('Akira Expanded Demo'),
       url('../fonts/Akira-Expanded.woff2') format('woff2'),
       url('../fonts/Akira-Expanded.woff') format('woff'),
       url('../fonts/Akira-Expanded.otf') format('opentype');
  font-display: swap;
}
:root{
  --font-display:'Akira Expanded','Space Grotesk',sans-serif;
  --font-ui:'Space Grotesk',sans-serif;
}
body.theme-cinematic{background:#04050b}
.nav-link,.nav-cta,.portal-mark,.portal-topline,.portal-bottomline,.section-kicker,.ticker>div,.portal-coordinate,.portal-text-link,.portal-button,.works-top small,.manifesto-card small,.expertise-card a,.work-copy a,.footer-top div span,.footer-brand small,.portal-playing,.hero-actions .btn{font-family:var(--font-ui)}
.logo-sign,.logo-text,.portal-intro h1,.section h2,.work-copy h3,.expertise-card h3,.manifesto-card h3,.band-inner h2,.contact-cta h2,.footer-brand,.portal-emblem-letters{font-family:var(--font-display)}
.logo-text{font-size:24px;letter-spacing:.02em}.logo-text small{letter-spacing:.22em}
.nav-link{font-size:12px;letter-spacing:.03em}.nav-cta{font-size:14px}
.portal-topline,.portal-bottomline{font-size:10px;letter-spacing:.22em}
.portal-mark{font-size:11px;letter-spacing:.22em}
.portal-intro{padding:38px 0 34px;max-width:620px}
.portal-intro h1{
  font-size:clamp(58px,6.8vw,108px);
  line-height:.92;
  letter-spacing:.02em;
  margin:26px 0 26px;
  white-space:normal;
  text-wrap:balance;
}
.portal-intro h1 em{display:inline-block;-webkit-text-stroke:1.6px rgba(146,218,255,.94)}
.portal-copy,.portal-intro p{max-width:510px;color:#bfd0e3;font-size:18px;line-height:1.72;margin:0 0 30px}
.portal-button{min-height:60px;padding:0 24px;border-radius:10px;font-size:14px}.portal-text-link{font-size:14px}
.portal-device{height:min(680px,76vh)}
.portal-emblem{width:260px;height:260px}.portal-emblem-letters{font-size:80px;letter-spacing:.01em}.portal-emblem-label{font-family:var(--font-ui);font-size:9px;letter-spacing:.28em}
.section{padding:110px 0}
.section h2{font-size:clamp(30px,3.7vw,56px);line-height:1.08;letter-spacing:.02em;margin-top:20px}
.section p{font-size:17px;line-height:1.78}
.manifesto-card h3{font-size:clamp(24px,2.2vw,34px);line-height:1.12;letter-spacing:.01em}
.expertise-card h3{font-size:clamp(20px,1.8vw,28px);line-height:1.12;letter-spacing:.01em}
.work-copy h3{font-size:clamp(22px,2vw,30px);line-height:1.08;letter-spacing:.01em}
.band-inner h2,.contact-cta h2{font-size:clamp(34px,3.9vw,58px);line-height:1.05;letter-spacing:.02em}
.ticker>div{font-size:14px;letter-spacing:.28em}
.footer-brand{font-size:30px;letter-spacing:.02em}
.footer-bottom{font-family:var(--font-ui)}

@media(max-width:1280px){
  .portal-intro h1{font-size:clamp(54px,6.2vw,92px)}
  .portal-emblem{width:235px;height:235px}
  .portal-emblem-letters{font-size:72px}
}
@media(max-width:1100px){
  .portal-intro h1{font-size:clamp(50px,6.5vw,82px)}
  .portal-copy,.portal-intro p{font-size:17px}
  .section h2{font-size:clamp(28px,4.2vw,44px)}
}
@media(max-width:760px){
  .logo-text{font-size:21px}.logo-text small{font-size:8px}
  .portal-intro{padding-top:30px}
  .portal-intro h1{font-size:clamp(42px,10.5vw,62px);line-height:.96;margin:20px 0 20px}
  .portal-copy,.portal-intro p{font-size:15px;max-width:360px;margin-bottom:24px}
  .portal-button{min-height:54px;padding:0 18px;font-size:13px}
  .portal-text-link{font-size:13px}
  .portal-mark{font-size:10px}
  .portal-device{height:340px;min-height:340px}
  .portal-emblem{width:165px;height:165px}.portal-emblem-letters{font-size:52px}.portal-emblem-label{font-size:7px}
  .section{padding:78px 0}
  .section h2,.band-inner h2,.contact-cta h2{font-size:clamp(26px,8.6vw,40px);line-height:1.1}
  .manifesto-card h3,.expertise-card h3,.work-copy h3{font-size:clamp(18px,6vw,24px)}
  .ticker>div{font-size:11px;letter-spacing:.2em}
  .footer-brand{font-size:24px}
}
@media(max-width:420px){
  .portal-intro h1{font-size:40px}
  .portal-mark,.portal-topline,.portal-bottomline{letter-spacing:.14em}
}


/* FLCSET v6: Option B – more crazy */
.portal-overlay{padding-top:124px}
.portal-hero{background:radial-gradient(ellipse at 70% 42%,#17225a 0%,#060917 36%,#02040a 76%)}
.portal-vignette{background:linear-gradient(90deg,rgba(2,4,12,.95) 0%,rgba(3,5,13,.72) 28%,rgba(5,7,18,.10) 64%,rgba(3,5,14,.22) 100%),linear-gradient(0deg,#02040a 0%,transparent 17%,transparent 76%,#040711 100%)}
.portal-content{grid-template-columns:1fr 1fr;align-items:center}
.portal-intro{max-width:660px}
.portal-copy{max-width:560px}
.portal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px;max-width:640px}
.portal-metric{padding:14px 14px 12px;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(127,221,255,.14);box-shadow:0 12px 30px rgba(0,0,0,.18);backdrop-filter:blur(10px)}
.portal-metric strong{display:block;font-family:var(--font-display);font-size:14px;letter-spacing:.04em;color:#eaf5ff;margin-bottom:5px}
.portal-metric span{display:block;font-family:var(--font-ui);font-size:12px;line-height:1.45;color:#9db6ce}
.portal-device{height:min(720px,80vh);overflow:visible}
.portal-beam{position:absolute;top:50%;width:48%;height:2px;transform:translateY(-50%);background:linear-gradient(90deg,transparent,rgba(113,233,255,.7),transparent);filter:blur(.3px);opacity:.7;z-index:1}
.beam-left{left:-4%;transform:translateY(-50%) rotate(-8deg)}
.beam-right{right:-4%;transform:translateY(-50%) rotate(8deg)}
.portal-rings{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px dashed rgba(116,226,255,.16);z-index:1;mix-blend-mode:screen}
.ring-one{width:96%;aspect-ratio:1;animation:spinWide 28s linear infinite}
.ring-two{width:76%;aspect-ratio:1;border-color:rgba(177,129,255,.20);animation:spinWideReverse 21s linear infinite}
.ring-three{width:56%;aspect-ratio:1;border-style:solid;border-color:rgba(112,234,255,.12);animation:spinWide 12s linear infinite}
.portal-pulse{position:absolute;left:50%;top:50%;width:360px;height:360px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(97,170,255,.12),rgba(97,170,255,.02) 42%,transparent 68%);animation:pulseAura 4.6s ease-in-out infinite;z-index:1}
.portal-hud{position:absolute;z-index:5;padding:11px 13px;border-radius:999px;background:rgba(5,13,30,.56);border:1px solid rgba(136,223,255,.20);backdrop-filter:blur(10px);font:700 10px/1 var(--font-ui);letter-spacing:.22em;color:#d2ebff;white-space:nowrap}
.hud-top{top:12%;left:15%}
.hud-right{right:-1%;top:47%}
.hud-bottom{left:20%;bottom:10%}
.portal-satellite.satellite-c{top:27%;left:8%;font-size:26px;animation-delay:1.7s}
.portal-shard{position:absolute;z-index:2;width:90px;height:90px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));backdrop-filter:blur(8px);clip-path:polygon(50% 0%, 100% 40%, 80% 100%, 18% 100%, 0% 38%);box-shadow:0 14px 34px rgba(0,0,0,.25)}
.shard-a{left:12%;top:22%;transform:rotate(18deg) scale(.72);opacity:.46}
.shard-b{right:11%;top:18%;transform:rotate(-12deg) scale(.56);opacity:.5}
.shard-c{right:18%;bottom:16%;transform:rotate(26deg) scale(.64);opacity:.44}
.portal-emblem{box-shadow:0 0 60px rgba(100,196,255,.38),inset 0 0 45px rgba(76,153,255,.19),0 0 160px rgba(55,135,255,.18)}
.portal-emblem:after{content:'';position:absolute;inset:-12px;border-radius:50%;border:1px solid rgba(114,236,255,.18);box-shadow:0 0 22px rgba(114,236,255,.16);animation:spinWideReverse 15s linear infinite}
.portal-coordinate{box-shadow:0 10px 30px rgba(0,0,0,.26)}
.ticker{box-shadow:inset 0 1px 0 rgba(114,236,255,.10), inset 0 -1px 0 rgba(114,236,255,.10)}
.manifesto-card.large{position:relative;overflow:hidden}.mini-orbit-line{position:absolute;right:-30px;bottom:-20px;width:180px;height:180px;border-radius:50%;border:1px solid rgba(126,225,255,.12);box-shadow:0 0 40px rgba(126,225,255,.08)}
.work-card{overflow:hidden}.work-card:before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(112,233,255,.05),transparent 46%,rgba(168,124,255,.05));pointer-events:none}
@keyframes spinWide{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes spinWideReverse{to{transform:translate(-50%,-50%) rotate(-360deg)}}
@keyframes pulseAura{0%,100%{transform:translate(-50%,-50%) scale(.92);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.08);opacity:.95}}
@media(max-width:1180px){
  .portal-metrics{grid-template-columns:repeat(3,1fr);max-width:560px}
  .hud-right{right:2%}
}
@media(max-width:980px){
  .portal-content{grid-template-columns:1fr;gap:12px}
  .portal-device{max-width:720px;margin:0 auto;height:520px}
  .portal-metrics{max-width:100%;grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .portal-metrics{grid-template-columns:1fr;gap:10px;max-width:350px}
  .portal-metric{padding:12px 13px}
  .portal-device{height:390px;min-height:390px}
  .portal-hud,.portal-shard,.beam-left,.beam-right,.ring-one{display:none}
  .ring-two{width:78%}.ring-three{width:62%}
  .portal-pulse{width:220px;height:220px}
}


/* FLCSET v7: iconic edition */
.portal-hero{position:relative;isolation:isolate;background:radial-gradient(circle at 76% 38%,rgba(54,105,255,.30),transparent 18%),radial-gradient(circle at 64% 52%,rgba(143,88,255,.20),transparent 26%),linear-gradient(180deg,#04060e 0%,#050916 42%,#03050c 100%)}
.portal-overlay{position:relative}
.portal-ghost-title{position:absolute;right:0;left:0;top:160px;font-family:var(--font-display);font-size:clamp(180px,27vw,420px);line-height:.8;letter-spacing:.06em;text-align:center;color:rgba(255,255,255,.028);pointer-events:none;z-index:0;filter:blur(1px)}
.portal-content,.portal-topline,.portal-bottomline{position:relative;z-index:2}
.portal-intro h1{position:relative;text-shadow:0 0 28px rgba(96,156,255,.08)}
.portal-intro h1:after{content:'';position:absolute;left:-18px;top:-16px;width:140px;height:140px;background:radial-gradient(circle,rgba(111,232,255,.12),transparent 70%);filter:blur(12px);z-index:-1}
.portal-copy{max-width:590px}
.portal-statline{display:flex;flex-wrap:wrap;gap:10px;margin:-6px 0 22px}.portal-statline span{padding:10px 14px;border-radius:999px;border:1px solid rgba(126,226,255,.18);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));font:700 11px/1 var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:#d9ebff;backdrop-filter:blur(8px)}
.portal-device{position:relative}
.portal-device:before{content:'';position:absolute;inset:4% 7%;border-radius:50%;border:1px solid rgba(127,224,255,.10);box-shadow:0 0 120px rgba(70,132,255,.12);pointer-events:none}
.portal-flare{position:absolute;border-radius:50%;filter:blur(50px);pointer-events:none;z-index:0}.flare-a{width:180px;height:180px;right:2%;top:9%;background:radial-gradient(circle,rgba(118,230,255,.28),transparent 68%)}.flare-b{width:220px;height:220px;left:5%;bottom:4%;background:radial-gradient(circle,rgba(140,86,255,.22),transparent 70%)}
.portal-signature-card{position:absolute;z-index:5;padding:12px 16px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);box-shadow:0 16px 40px rgba(0,0,0,.22);backdrop-filter:blur(16px);font:700 10px/1 var(--font-ui);letter-spacing:.24em;color:#dceeff;white-space:nowrap}.signature-top{right:8%;top:13%}.signature-bottom{left:7%;bottom:15%}
.portal-emblem{box-shadow:0 0 72px rgba(100,196,255,.42),inset 0 0 45px rgba(76,153,255,.19),0 0 220px rgba(67,111,255,.22)}
.portal-emblem-letters{text-shadow:0 0 22px rgba(121,235,255,.16)}
.portal-hud,.portal-coordinate,.portal-signature-card,.portal-statline span,.portal-metric{box-shadow:0 16px 38px rgba(0,0,0,.22)}
.manifesto-card,.expertise-card,.work-card,.band-inner{border-color:rgba(255,255,255,.11)}
.footer{padding:32px 0 0;background:linear-gradient(180deg,rgba(4,7,14,.25),rgba(3,6,13,.92));border-top:1px solid rgba(255,255,255,.06)}
.footer-panel{padding-bottom:28px}
.footer-top{display:grid;grid-template-columns:1.35fr .7fr .7fr 1fr;gap:26px;padding:42px 0 34px;border-top:1px solid rgba(255,255,255,.06)}
.footer-brand-wrap,.footer-links-block,.footer-cta-block{min-width:0}
.footer-brand-wrap{display:flex;flex-direction:column;gap:16px}
.footer-brand-copy{max-width:420px;margin:0;color:#98acc2;font:500 15px/1.8 var(--font-body)}
.footer-links-block,.footer-cta-block{display:flex;flex-direction:column;gap:12px}.footer-links-block span,.footer-cta-block span{display:block;margin-bottom:6px;color:#7ce8ff;font:800 11px/1 var(--font-ui);letter-spacing:.24em}
.footer-links-block a,.footer-cta-block p,.footer-mini-cta,.footer-backpill{font-family:var(--font-ui)}
.footer-links-block a{color:#dde8f5}
.footer-cta-block p{margin:0;color:#98acc2;font-size:14px;line-height:1.75}
.footer-mini-cta,.footer-backpill{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:14px;border:1px solid rgba(116,231,255,.14);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));color:#ecf6ff;font-weight:700;box-shadow:0 12px 26px rgba(0,0,0,.18);width:max-content}
.footer-mini-cta:hover,.footer-backpill:hover{border-color:rgba(116,231,255,.28);transform:translateY(-1px)}
.footer-backpill{margin-top:4px;background:linear-gradient(135deg,rgba(99,234,255,.14),rgba(91,143,255,.12))}
.footer-bottom{padding:22px 0 0;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;gap:20px;color:#8ea3b7;font-size:13px}
@media(max-width:1280px){.portal-ghost-title{top:180px;font-size:clamp(150px,25vw,320px)}.footer-top{grid-template-columns:1.2fr .8fr .8fr 1fr}}
@media(max-width:980px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand-wrap{grid-column:1/-1}.footer-cta-block{grid-column:1/-1}.portal-ghost-title{top:210px}}
@media(max-width:760px){.portal-ghost-title{font-size:110px;top:130px;opacity:.8}.portal-statline{gap:8px;margin:-4px 0 18px}.portal-statline span{padding:8px 12px;font-size:10px;letter-spacing:.12em}.portal-signature-card,.portal-flare{display:none}.footer-top{grid-template-columns:1fr;padding:28px 0 26px}.footer-brand-copy{font-size:14px}.footer-backpill,.footer-mini-cta{width:100%}.footer-bottom{flex-direction:column;align-items:flex-start;padding-top:18px}}


/* FLCSET v8 final refinements */
.portal-intro{padding:56px 0 36px;max-width:700px}
.portal-intro h1{font-size:clamp(60px,6.9vw,108px);line-height:.98;letter-spacing:.03em;margin:30px 0 34px;display:block}
.portal-intro h1 em{margin-left:.08em;margin-right:.02em}
.portal-copy,.portal-intro p{max-width:600px;font-size:18px;line-height:1.84;margin:0 0 36px;color:#c2d2e3}
.portal-actions{gap:34px;margin-bottom:20px}
.portal-statline{gap:12px;margin:2px 0 24px}
.portal-statline span{padding:10px 15px}
.portal-metrics{margin-top:22px;gap:14px;max-width:670px}
.portal-metric{padding:15px 16px 13px}
.portal-metric strong{margin-bottom:6px}
.footer-bottom{align-items:center}
.footer-bottom-right{display:inline-flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:flex-end}
.footer-toplink{display:inline-flex;align-items:center;gap:12px;color:#dce8f5;font:700 12px/1 var(--font-ui);letter-spacing:.18em;text-transform:uppercase;transition:opacity .22s ease,transform .22s ease}.footer-toplink span{opacity:.86}.footer-toplink i{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-style:normal;font-size:18px;line-height:1;color:#8deeff;transition:transform .22s ease,color .22s ease}.footer-toplink:hover{opacity:1;transform:translateX(2px)}.footer-toplink:hover i{transform:translate(2px,-2px);color:#c4f7ff}
.footer-mini-cta{min-height:44px;padding:0 16px;border-radius:12px}
@media(max-width:980px){.portal-intro{max-width:740px;padding-bottom:22px}.portal-copy,.portal-intro p{max-width:620px}.footer-bottom-right{justify-content:flex-start;gap:16px}}
@media(max-width:760px){.portal-intro{padding-top:34px;padding-bottom:18px}.portal-intro h1{font-size:clamp(42px,10.3vw,62px);line-height:1.02;letter-spacing:.025em;margin:18px 0 22px}.portal-copy,.portal-intro p{font-size:15px;line-height:1.78;margin-bottom:24px}.portal-actions{gap:18px;margin-bottom:16px}.portal-statline{gap:8px;margin:0 0 18px}.portal-metrics{gap:10px;margin-top:16px}.footer-bottom-right{align-items:flex-start;flex-direction:column;gap:10px}.footer-toplink{margin-top:2px}}

/* Functional-only fix, no visual redesign */
.page-top-anchor{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}

/* Functional contact form; existing site styling is unchanged */
.flc-contact-form label{display:block;margin:14px 0;color:#d7e7f8;font-size:14px}.flc-contact-form input:not([type=checkbox]),.flc-contact-form textarea{width:100%;padding:14px;margin-top:7px;box-sizing:border-box;border-radius:10px;border:1px solid rgba(118,220,255,.24);background:#091323;color:#f1f9ff;font:inherit}.flc-honeypot{position:absolute;left:-10000px}.flc-privacy{display:flex!important;align-items:flex-start;gap:10px;line-height:1.5}.flc-privacy input{margin-top:4px}

/* Requested single visual correction: keep final watermark inside viewport */
.contact-cta .watermark,.contact-section .contact-watermark{right:clamp(18px,4vw,86px);font-size:clamp(110px,16vw,270px);letter-spacing:-.07em;max-width:calc(100vw - 40px);white-space:nowrap;pointer-events:none;}
@media(max-width:700px){.contact-cta .watermark,.contact-section .contact-watermark{right:18px;font-size:clamp(66px,18vw,150px)}}

/* FLCSET: correzioni SOLO homepage. Nessun altro elemento viene modificato. */
/* Elimina la sottile linea verticale al centro della scena del portale. */
.portal-hero .portal-grid { background: none; }
/* Spazia le lettere della scritta gigante per separare soprattutto E e T. */
.contact-cta .watermark {
  letter-spacing: .005em;
  right: clamp(28px, 5vw, 100px);
  font-size: clamp(96px, 14.1vw, 245px);
  white-space: nowrap;
}
@media (max-width: 700px) {
  .contact-cta .watermark {
    right: 18px;
    font-size: clamp(54px, 15vw, 130px);
  }
}

/* ==============================================================
   FLCSET RESPONSIVE — mobile/tablet only.
   Desktop > 1200px: original approved design untouched.
   ============================================================= */
@media (max-width:1200px) {
  .container {width:100%;max-width:100%;padding-inline:clamp(20px,3.4vw,38px)}
  .nav {gap:12px}
  .menu {gap:clamp(10px,1.4vw,20px)}
  .nav-link {white-space:nowrap;font-size:11px}
  .nav-cta {white-space:nowrap;padding-inline:15px}
  .portal-content {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .portal-intro {min-width:0}
  .portal-intro h1 {font-size:clamp(45px,6.25vw,76px)}
  .portal-device {min-width:0}
  .section-head,.works-top {gap:24px}
  .section-head>div,.works-top>div {min-width:0}
  .expertise-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .works-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-top {grid-template-columns:1.25fr .75fr .85fr;gap:22px}
  .footer-cta-block {grid-column:1/-1}
  .contact-cta .watermark {font-size:clamp(75px,13.8vw,185px)}
}
@media (max-width:980px) {
  .portal-hero {height:auto;min-height:0}
  .portal-overlay {height:auto;min-height:0;padding-top:118px;padding-bottom:34px}
  .portal-content {display:flex;flex-direction:column;align-items:stretch;gap:10px}
  .portal-intro {width:100%;max-width:720px;padding:32px 0 10px}
  .portal-intro h1 {font-size:clamp(48px,8vw,78px);line-height:1.05;max-width:100%;overflow-wrap:normal}
  .portal-copy,.portal-intro p {max-width:610px;font-size:17px}
  .portal-device {width:min(100%,660px);height:460px;min-height:0;margin:8px auto 0}
  .portal-emblem {width:210px;height:210px}
  .portal-emblem-letters {font-size:66px}
  .portal-hud,.portal-coordinate {font-size:9px}
  .portal-metrics {grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px}
  .portal-bottomline {padding-top:18px}
  .manifesto-grid {grid-template-columns:1fr}
  .manifesto-main {padding-right:0}
  .contact-cta-inner {width:100%}
  .inner-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-top {grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-brand-wrap,.footer-cta-block {grid-column:auto}
}
@media (max-width:760px) {
  html {scroll-padding-top:78px}
  .container {padding-inline:20px}
  .site-header .nav {height:74px}
  .menu-toggle {flex-shrink:0;min-width:44px;min-height:44px;touch-action:manipulation}
  .menu {max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(25px,env(safe-area-inset-bottom))}
  .menu a {min-height:42px;display:flex;align-items:center}
  .menu .nav-cta {justify-content:center}
  .logo {min-width:0}.logo-text{font-size:19px}.logo-text small{letter-spacing:.12em}
  .portal-hero {min-height:0;height:auto}
  .portal-overlay {padding-top:94px;padding-bottom:26px}
  .portal-topline,.portal-bottomline {font-size:9px;letter-spacing:.1em}
  .portal-intro {padding:26px 0 12px;max-width:100%}
  .portal-intro h1 {font-size:clamp(33px,9.1vw,60px);line-height:1.09;letter-spacing:0;margin:18px 0 22px;white-space:normal;overflow-wrap:normal;text-wrap:initial}
  .portal-intro h1 em {margin-left:.04em;margin-right:0;letter-spacing:0;-webkit-text-stroke:1px rgba(146,218,255,.94)}
  .portal-copy,.portal-intro p {font-size:15px;line-height:1.72;max-width:540px;margin-bottom:23px}
  .portal-actions {display:flex;align-items:center;gap:14px;margin-bottom:14px}
  .portal-button {min-height:49px;padding:0 16px;gap:14px;font-size:12px}
  .portal-text-link {font-size:12px;gap:10px}
  .portal-statline {margin:0 0 12px;gap:7px}
  .portal-statline span {padding:8px 10px;font-size:9px}
  .portal-metrics {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0;max-width:100%}
  .portal-metric {padding:11px 9px;min-width:0}
  .portal-metric strong {font-size:12px}
  .portal-metric span {font-size:10px;overflow-wrap:anywhere}
  .portal-device {width:min(100%,480px);height:330px;min-height:0;margin:10px auto 0}
  .portal-emblem {width:160px;height:160px}
  .portal-emblem-letters {font-size:51px}
  .portal-emblem-label {font-size:7px;letter-spacing:.16em}
  .portal-orbit {width:82%}
  .portal-aura {width:85%}
  .portal-ghost-title {font-size:clamp(65px,17vw,115px);top:170px}
  .portal-coordinate,.portal-hud,.portal-signature-card,.portal-shard {display:none}
  .portal-bottomline {padding-top:16px}
  .section,.works-section,.expertise-section,.manifesto-section,.contact-cta {padding-block:72px}
  .section h2,.band-inner h2,.contact-cta h2 {font-size:clamp(25px,6.8vw,42px);line-height:1.18;letter-spacing:0;overflow-wrap:break-word}
  .section-head,.works-top {display:block;margin-bottom:28px}
  .section-head p,.section p {font-size:15px;line-height:1.75}
  .manifesto-grid,.manifesto-side,.expertise-grid,.works-grid,.inner-grid {display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  .manifesto-card,.expertise-card,.work-card,.inner-panel {min-width:0;padding:22px;border-radius:20px}
  .manifesto-card h3,.expertise-card h3,.work-copy h3 {font-size:clamp(21px,5.5vw,28px);overflow-wrap:break-word}
  .work-visual {height:210px}
  .band-inner {padding:24px;border-radius:22px}
  .band-inner .btn {width:100%;justify-content:center;margin-top:18px}
  .subhero {padding:118px 0 62px}
  .subhero h1 {font-size:clamp(34px,8.3vw,55px);letter-spacing:-.035em;line-height:1.12;overflow-wrap:break-word}
  .subhero p {font-size:15px}
  .inner-section {padding:48px 0}
  .contact-section {padding:66px 0}
  .contact-inner h2 {font-size:clamp(28px,7vw,42px)}
  .contact-cta .watermark,.contact-section .contact-watermark {font-size:clamp(48px,13vw,92px);right:12px}
  .footer {padding-top:18px}
  .footer-top {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}
  .footer-brand-wrap,.footer-cta-block {grid-column:1/-1}
  .footer-brand-copy {max-width:420px}
  .footer-bottom {padding-bottom:calc(22px + env(safe-area-inset-bottom));font-size:12px}
  .footer-toplink {min-height:44px;padding-inline:0 8px}
  .flc-contact-form input:not([type=checkbox]),.flc-contact-form textarea {font-size:16px;max-width:100%}
}
@media (max-width:390px) {
  .container {padding-inline:15px}
  .logo-sign {font-size:26px}.logo-text {font-size:17px}.logo-text small{font-size:7px}
  .portal-intro h1 {font-size:clamp(30px,8.7vw,36px)}
  .portal-actions {align-items:stretch;flex-direction:column}
  .portal-button,.portal-text-link {width:100%;justify-content:center}
  .portal-metrics {grid-template-columns:1fr;gap:7px}
  .portal-metric {display:flex;align-items:center;gap:12px}
  .portal-metric strong{margin:0;min-width:54px}
  .portal-device {height:280px}
  .portal-emblem {width:140px;height:140px}
  .portal-emblem-letters {font-size:45px}
  .footer-top {gap:24px 12px}
}
@media (prefers-reduced-motion:reduce) {
  .portal-hero #space-vortex {opacity:.5}
}

/* FLCSET — solo home su monitor grandi: contenuti più ampi e proporzionati.
   Non interviene su tablet, smartphone, admin e pagine interne. */
@media (min-width: 1450px) {
  .portal-hero .portal-overlay.container {
    width: min(100%, 1900px);
    max-width: 1900px;
    padding-left: clamp(42px, 4.6vw,88px);
    padding-right: clamp(42px, 4.6vw,88px);
  }
  .portal-hero .portal-content {
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
    gap: clamp(20px, 2vw, 60px);
  }
  .portal-hero .portal-intro {
    max-width: 900px;
  }
  .portal-hero .portal-intro h1 {
    font-size: clamp(82px, 5.7vw, 126px);
  }
  .portal-hero .portal-intro p {
    max-width: 680px;
    font-size: clamp(18px, 1.05vw, 22px);
  }
  .portal-hero .portal-device {
    min-height: 630px;
    height: min(750px, 76vh);
  }
  .portal-hero .portal-emblem {
    width: clamp(260px, 15vw, 335px);
    height: clamp(260px, 15vw, 335px);
  }
  .portal-hero .portal-emblem-letters {
    font-size: clamp(80px, 5vw, 104px);
  }
  .portal-hero .portal-metrics {max-width: 800px;}
}

/* FLCSET: Android / smartphone layout recovery — desktop unchanged */
@media (max-width: 760px) {
  html, body {width:100%;max-width:100%;overflow-x:clip}
  .portal-hero {height:auto !important;min-height:0 !important;overflow:hidden;isolation:isolate}
  .portal-hero #space-vortex {position:absolute;inset:0;width:100%;height:100%;opacity:.64;z-index:-3;pointer-events:none}
  .portal-vignette {background:linear-gradient(180deg,rgba(3,6,15,.84),rgba(5,9,23,.70) 38%,rgba(4,7,18,.55) 66%,#03050b 100%)}
  .portal-overlay.container {height:auto !important;min-height:0 !important;padding:88px 18px 24px !important;width:100% !important;max-width:100% !important}
  .portal-content {display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:0 !important;width:100%;min-width:0}
  .portal-intro {order:0 !important;width:100%;min-width:0;max-width:100%;padding:38px 0 0 !important;margin:0}
  .portal-intro h1 {font-size:clamp(32px,8.5vw,56px) !important;line-height:1.08 !important;letter-spacing:0 !important;max-width:100%;white-space:normal !important;overflow-wrap:normal;margin:20px 0 !important}
  .portal-intro h1 em{margin-left:0.04em;margin-right:0}
  .portal-intro p,.portal-copy{font-size:15px !important;line-height:1.65 !important;margin:0 0 20px !important;max-width:100%}
  .portal-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:0 0 16px !important;width:100%}
  .portal-button{width:100%;min-height:54px;justify-content:center;gap:20px;box-shadow:0 8px 22px rgba(45,125,255,.25)}
  .portal-text-link{min-height:38px;justify-content:center;width:100%;gap:12px;padding-bottom:3px}
  .portal-statline{display:flex;justify-content:flex-start;gap:6px;margin:10px 0 16px !important;flex-wrap:wrap}
  .portal-statline span{padding:7px 9px !important;font-size:9px;white-space:nowrap;background:rgba(6,15,30,.72);backdrop-filter:none !important;-webkit-backdrop-filter:none !important}
  .portal-metrics{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:7px !important;width:100%;max-width:100%;margin:0 !important}
  .portal-metric{display:block !important;min-width:0;min-height:78px;padding:11px 9px !important;border:1px solid rgba(127,221,255,.20);background:rgba(6,18,38,.86) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;box-shadow:none !important;border-radius:12px}
  .portal-metric strong{font-size:12px !important;line-height:1.25;margin:0 0 6px !important;min-width:0}
  .portal-metric span{font-size:10px !important;line-height:1.35;overflow-wrap:break-word}
  .portal-device{order:1 !important;display:grid !important;place-items:center;width:100% !important;max-width:100% !important;height:315px !important;min-height:315px !important;margin:14px auto 0 !important;overflow:hidden !important;animation:none !important;filter:none !important;contain:layout paint}
  .portal-device:before,.portal-device .portal-shard,.portal-device .portal-beam,.portal-device .portal-hud,.portal-device .portal-coordinate,.portal-device .portal-signature-card,.portal-device .portal-flare,.portal-device .portal-satellite{display:none !important}
  .portal-rings{width:82%;max-width:295px;opacity:.5}
  .portal-orbit{width:78%;max-width:280px}
  .portal-aura{width:82%;max-width:280px;opacity:.65}
  .portal-emblem{z-index:6 !important;width:160px !important;height:160px !important;flex-shrink:0;background:radial-gradient(circle at 35% 25%,#182b53 0%,#080e26 49%,#030713 95%) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;box-shadow:0 0 38px rgba(85,173,255,.38),inset 0 0 35px rgba(64,140,250,.18) !important}
  .portal-emblem-letters{font-size:53px !important}
  .portal-ghost-title{font-size:clamp(55px,15vw,90px) !important;left:0;right:0;top:120px;opacity:.34}
  .portal-topline{display:flex;align-items:center;justify-content:flex-start}.portal-topline span:last-child{display:none}
  .portal-bottomline{padding:12px 0 0;justify-content:center}
  .portal-bottomline span:last-child{display:none}
  .portal-grid{display:none}
  .portal-hero .portal-statline span,.portal-hero .portal-metric,.site-header{backdrop-filter:none !important;-webkit-backdrop-filter:none !important}
  .portal-hero .portal-pulse{opacity:.28}
  .footer-top,.inner-grid,.expertise-grid,.works-grid{min-width:0}
}

@media (max-width:390px) {
  .portal-overlay.container{padding-inline:16px !important}
  .portal-metrics{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
  .portal-metric{display:block !important;min-height:90px;padding:9px 7px !important}
  .portal-metric strong{min-width:0;margin-bottom:5px !important}
  .portal-device{height:280px !important;min-height:280px !important}
  .portal-emblem{width:142px !important;height:142px !important}
  .portal-emblem-letters{font-size:46px !important}
}

/* FLCSET desktop — correzione bordo di compositing sul portale.
   Non cambia il rendering sui dispositivi <= 760px. */
@media (min-width: 761px) {
  /* La griglia e i beam producono linee superflue sopra la scena WebGL. */
  .portal-hero .portal-grid,
  .portal-hero .portal-device .portal-beam {
    display: none !important;
  }
  /* Evita il ritaglio rettangolare del layer GPU filtrato. */
  .portal-hero .portal-device {
    filter: none !important;
  }
}


/* FLCSET - solo distacco della card finale nelle pagine Privacy e Cookie.
   Mantiene inalterati colori, dimensioni, font e tutti gli altri stili. */
.inner-section > .container > .inner-grid + .inner-panel {
  margin-top: 22px;
}
