* { box-sizing: border-box; padding: 0; margin: 0; -webkit-tap-highlight-color: transparent; user-select: none; -webkit-user-select: none;/* Safari */ -moz-user-select: none;/* Firefox */ -ms-user-select: none;/* IE/Edge */}
:root { --background-rgb: 0 0 0; --blue-rgb: 0 0 0; --primary-rgb: 50 50 50; --blob-color-1: rgb(250 250 250); --blob-color-2: orange; }
body, html { width: 100vw;min-height: 100vh; overflow-x: hidden; margin: 0; font-family: 'LEMONMILK-Regular','Roboto',sans-serif; }
a { text-decoration: none; color: #111; outline: none; }
a:hover, a:focus { color: #000; outline: none; }
/*
body::before { content: ""; position: fixed; inset: 0; background-color: #000; }
body::after {content: '';position: absolute;top: 0;left: 0;height: 100%;width: 100%;background-image: repeating-linear-gradient(transparent, transparent 2px, #aaa 3px);background-size: auto 100%;pointer-events: none;z-index: 5;opacity: .3; }
*/
.fade-sides { -webkit-mask-image: linear-gradient( to right, transparent 0%, black 15%, black 85%, transparent 100% ); mask-image: linear-gradient( to right, transparent 0%, black 15%, black 85%, transparent 100% ); }
/*.fade-sides-pro { -webkit-mask-image: linear-gradient( to right, transparent 0%, black 33%, black 66%, transparent 100% ); mask-image: linear-gradient( to right, transparent 0%, black 33%, black 66%, transparent 100% ); }*/
/*.fade-center { -webkit-mask-image: linear-gradient( to right, black 0%, transparent 25%, transparent 50%, transparent 75%, black 100% ); mask-image: linear-gradient( to right, black 0%, transparent 25%, transparent 50%, transparent 75%, black 100% ); }*/
.fade-in-out {animation: fadeInOut 1s ease-in-out infinite;}@keyframes fadeInOut {0%, 100% { opacity: 0; }50% { opacity: 1; }}

@font-face{font-family:'LEMONMILK-Regular';src:url('./assets/LEMONMILK-Regular.otf') format('opentype');font-display:swap;}
@font-face{font-family:'LEMONMILK-Bold';src:url('./assets/LEMONMILK-Bold.otf') format('opentype');font-display:swap;}
@font-face{font-family:'Serpentine';src:url('./assets/Serpentine\ Sans\ W01\ Bold.otf') format('opentype');font-display:swap;}
@font-face{font-family:'Barett Street';src:url('./assets/Barett\ Street.ttf') format('truetype');font-display:swap;}
@font-face{font-family:'Strategy';src:url('./assets/Strategy.ttf') format('truetype');font-display:swap;}

#grid-bg { position: fixed;top: 0;left: 0;width: 100%;height: 100vh; /*inset: 0;*/ z-index: 0; pointer-events: none; }

.max-txt {position: absolute;left: 0;top: 0; pointer-events: none;}
.menubg { position: absolute; inset: 0; z-index: 1; filter: url(#HoverDistort-max); }
.menubg::before { content: ''; position: absolute; top: 44%; bottom: 44%; left: -1em; right: 0em; background-color: #ffa666; transform: scaleX(0); transition: transform 0.25s ease-in-out; filter: url(#HoverDistort) drop-shadow(0px 0px 5px #ffa666); }

/* MIDDLE ITEM */
.logo-glitch-wrapper { position: fixed; top: 50%; left: 50%; width: 66vw; aspect-ratio: 1 / 1; transform: translate(-50%, -50%) rotate(-20deg); transition: transform 0.05s ease-out, width 0.5s ease, opacity 1s ease; pointer-events: auto; mix-blend-mode: overlay; opacity: 1; z-index: 0; }
.logo-base { opacity: 1;  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; object-fit: contain; top: 0; left: 0; transform: rotate(0deg); transition: all 0.5s ease-out; pointer-events: none;}

/* ================= UPPER MARQUEE ================= */
.marqueecontainer {position: absolute; left: 50%; top: 6%; transform: translate(-50%, -50%);z-index: 10; /* Make sure it's above the background/blob */width: 100vw;overflow: hidden;background: transparent; /* Or a color to test visibility */border-top: 2px solid white; border-bottom: 2px solid white;filter: drop-shadow(0px 0px 5px #fff);}
.marqueecontent {font-family: 'LEMONMILK-bold', 'Roboto', sans-serif;font-weight: lighter;display: flex;flex-direction: row;flex-wrap: nowrap;white-space: nowrap;will-change: transform; /* Helps GSAP performance */}
.marqueecontent span {display: block;padding: 0 40px; /* Space between items */font-size: 5rem; /* Make it big so you can't miss it */color: white;flex-shrink: 0; /* Prevents the items from squishing to 0 width */pointer-events: none;}
.RC {font-family: 'Serpentine', 'Barett Street', 'LEMONMILK-Regular', 'Roboto', sans-serif;}

/* ================= HERO SECTION ================= */
.hero { z-index: 4;pointer-events: none; position: relative; width:100%; height: 100vh; /*border-bottom: 2px solid #fff;*/ display: flex; flex-direction: column; justify-content: center; /*padding: 10vw;*/ overflow: hidden; mix-blend-mode: normal; pointer-events: none;} /* Hero wrapper */
.hero-bg { /*border: 2px solid #fff;*/ width: 100vw;height:100vh; position: absolute;left: 50%;top: 0%;transform: translate(-50%, 0%); display: flex;flex-direction: column;justify-content: space-between;gap: 10px;align-items: center;} /* Hero background glow */
.mini { display: none; position: absolute;left: 50%;bottom: 0%;transform: translate(-50%, 0%); font-size: 1rem; letter-spacing: 0em; text-transform: initial; color: #fff; margin-bottom: 2rem; overflow: hidden; } /* Small label */
.hero-title { color: transparent;-webkit-text-stroke: 2px #fff; position: absolute;left: 50%;top: 66%;transform: translate(-50%, -50%); font-family: 'Serpentine', 'LEMONMILK-Bold', sans-serif;font-size: clamp(20rem,30rem,40rem); line-height: 1; height: 50vh; font-weight: lighter; width: 100%; text-align: center; overflow: hidden; } /* Main title */
.htu {color: #fff; filter: drop-shadow(0px 0px 10px #fff);}
.hero-title span { z-index: 5; position: absolute;left: 50%;top: 66%;transform: translate(-50%, -50%); color: #ffa666; font-family: 'Barett Street', 'LEMONMILK-Bold', sans-serif;font-size: clamp(5rem,10rem,15rem); -webkit-text-stroke: 0px transparent;filter: drop-shadow(0px 0px 10px #ffa666); display: block; /*-webkit-text-stroke: 1px #000;*/ text-align: center;} /* Highlighted title part */
.hero-img {width: 50vw;height: auto; position: absolute;left: 50%;bottom: 0%;transform: translate(-50%, 0%); display: flex;justify-content: center;align-items: center; /*filter: grayscale(100%);*/ /* Fade out at bottom */ -webkit-mask-image: linear-gradient( to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100% ); mask-image: linear-gradient( to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100% );}
.hero-img img {position: relative;width: 100%; pointer-events: none;}
.marqueecontainerII {position: absolute; left: 42%; top: 20%; transform: translate(-50%, -50%) rotate(-15deg);width: 10vw;overflow: hidden;background: transparent; /* Or a color to test visibility */filter: drop-shadow(0px 0px 15px #ffa666);mix-blend-mode: screen;}
.marqueecontentII {display: flex;flex-direction: row;flex-wrap: nowrap;white-space: nowrap;will-change: transform; /* Helps GSAP performance */}
.marqueecontentII span {/*filter:url(#text-distortion);*/display: block;/* padding: 0 40px; Space between items */font-size: 2rem; /* Make it big so you can't miss it */color: #000;background-color: #ffa666; flex-shrink: 0; /* Prevents the items from squishing to 0 width */ font-family:'LEMONMILK-bold', 'Roboto', sans-serif; letter-spacing: 0rem; pointer-events: none;user-select: none; -webkit-user-select: none;/* Safari */ -moz-user-select: none;/* Firefox */ -ms-user-select: none;/* IE/Edge */ }
.hero-sub { position: relative; max-width: 2000px; margin-top: 3rem; font-size: 2rem; font-weight: lighter; line-height: 1.8; color: #fff; } /* Hero paragraph */
.hero-sub p { margin-bottom: 1.5rem; } /* Paragraph spacing */
/* =========================
   CINEMATIC INTRO OVERLAY
========================= */
/* ================= HERO REVEAL PREP ================= */
.hero-title, .hero-img, .screen-marqueecontainer, nav, .scroll, .mini { opacity: 0; } /* Hidden initial elements */
/* ================= HERO IMAGE ================= */
.hero-img { transform: translate(-50%, 10%) scale(.85); filter: blur(20px); } /* Initial image state */
/* ================= HERO TITLE ================= */
.hero-title { filter: blur(15px); } /* Initial title blur */
/* ================= HERO OVERLAY ================= */
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(255,255,255,.08), transparent 20%); pointer-events: none; mix-blend-mode: screen; } /* Hero light overlay */
@media screen and (max-width:2000px) {.hero-title{top: 75%; height: 66vh;font-size: clamp(15rem,20rem,25rem);} .hero-title span{top: 45%; font-size: clamp(5rem,10rem,15rem);} .mc{font-size: 12rem;} .mt{font-size: 12rem;} .hero-img {width: 44vw;} }
@media screen and (max-width:1000px) {.marqueecontent span {font-size: 5rem;} .hero-title{font-size: 5.5rem;top: 90%;line-height: .8;}.hero-title span{top: 10%;font-size: 5rem;} .hero-img {width: 150vw;} .marqueecontainerII {width: 30vw;} .marqueecontentII span{font-size: 1.5rem;}}
@media (max-width: 550px) and (max-height: 800px) {.marqueecontainerII {left: 32%;} .hero-title span{top: 15%;font-size: 5rem;}}
/* ================= ENGINE SECTION ================= 
.engine-section { position: relative; width: 100%; min-height: 100vh; padding: 0rem 2vw; overflow: hidden; z-index: 5; display: flex;flex-direction: column; align-items: center; justify-content: center; }
.engine-title { color: #fff; font-size: 5rem; font-family: 'Barett Street', 'Serpentine', 'LEMONMILK-bold', 'Roboto', sans-serif; font-weight: lighter; filter: drop-shadow(0px 0px 5px #fff);  position: absolute; left: 50%; top: 40%; transform: translate(-50%,-50%);}
.engine-stats { position: absolute; left: 50%; top: 63%; transform: translate(-50%,-50%); width: 100%; margin-top: 4rem; display: flex; gap: 3rem; }
.engine-stat { flex: 1; padding: 1rem; transition: .5s ease; text-align: center;}
.engine-stat:hover { transform: translateY(-10px); } 
.engine-stat h3 { color: #fff; font-size: 2rem; font-family: 'Serpentine'; font-weight: lighter; margin-bottom: 1rem; filter: drop-shadow(0px 0px 5px #fff); } 
.engine-stat span { color: #fff; font-size: .75rem; letter-spacing: 3px; line-height: 1.8; font-family: 'LEMONMILK-bold','Roboto',sans-serif; } 
.core-marquee { width: 100%; overflow: hidden; } 
.coremarqueecontainer {position: relative; z-index: 10;width:100%; overflow: hidden;background-color: transparent; mix-blend-mode: screen;}
.coremarqueecontent {color: #ffa666;filter: drop-shadow(0px 0px 10px #ffa666); font-family: 'Strategy', 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 70rem;letter-spacing: -2rem; line-height: 1; font-weight: lighter;display: flex;flex-direction: row;flex-wrap: nowrap;white-space: nowrap;will-change: transform;}
.coremarqueecontent span {display: block;padding: 0 40px; flex-shrink: 0;}
@media(max-width:1000px){
  .engine-title { font-size: 5rem; } 
  .engine-stats { flex-direction: column; } 
}
*/

/* ================= SUBSYSTEM 05: FUTURISTIC MISSION LOG ================= */
/* SYSTEM INTERFACE STRUCTURE */
/* ================= ROOT VARIABLES ================= */
:root { --mx: 50%; --my: 50%; --theme-accent: #ffa666; --spine-color: rgba(255,255,255,0.1); } /* Global theme variables */
/* ================= SUBSYSTEM STAGE ================= */
.subsystem-stage { position: relative; width: 100%; min-height: 100vh; padding: 8rem 2rem; display: flex; flex-direction: column; justify-content: center; overflow: hidden; box-sizing: border-box;  pointer-events: none;} /* Main timeline section */
/* ================= TIMELINE WRAPPER ================= */
.sys-timeline { position: relative; width: 100%; max-width: 1500px; margin: 0 auto; } /* Timeline container */
/* ================= TIMELINE SPINE ================= */
.timeline-spine { position: absolute; left: 50%; top: 0; bottom: 0; width: 4px; border-radius: 4px; background: var(--spine-color); transform: translateX(-50%); } /* Vertical center line */
/* ================= TIMELINE PROGRESS ================= */
.timeline-progress-bar { width: 100%; height: 0%; border-radius:50%; background: var(--theme-accent); box-shadow: 0 0 15px var(--theme-accent); } /* Animated progress line */
/* ================= NODES CONTAINER ================= */
.timeline-nodes-container { position: relative; z-index: 2; width: 100%; display: flex; flex-direction: column; gap: 10rem; } /* Timeline entries wrapper */
/* ================= TIMELINE BLOCK ================= */
.timeline-block { width: 45%; position: relative; box-sizing: border-box; } /* Single timeline entry */
.timeline-block.left { align-self: flex-start; text-align: right; } /* Left aligned entry */
.timeline-block.right { align-self: flex-end; text-align: left; } /* Right aligned entry */
/* ================= BACKGROUND YEAR ================= */
.timeline-block::after { content: attr(data-year); font-size: clamp(3rem,6vw,5rem); font-family: 'Serpentine',sans-serif; color: rgba(255,255,255,0.2); position: absolute; top: -2rem; z-index: -1; transition: color .4s ease; } /* Large faded year */
.timeline-block.left::after { right: 0; } /* Left year position */
.timeline-block.right::after { left: 0; } /* Right year position */
/* ================= TIMELINE DOT ================= */
.timeline-dot { position: absolute; top: 50%; width: 12px; height: 12px; background: #111; border: 2px solid var(--spine-color); border-radius: 50%; transform: translateY(-50%); transition: all .4s ease; } /* Timeline node */
.timeline-block.left .timeline-dot { right: calc(-5% - 8px); } /* Left node position */
.timeline-block.right .timeline-dot { left: calc(-5% - 8px); } /* Right node position */
/* ================= ACTIVE STATE ================= */
.timeline-block.is-active .timeline-dot { background: var(--theme-accent); border-color: var(--theme-accent); box-shadow: 0 0 10px var(--theme-accent); } /* Active node */
.timeline-block.is-active::after { color: rgba(255,166,102,0.2); } /* Active year highlight */
/* ================= LOG TAG ================= */
.log-tag { display: inline-block; padding: 1rem 2rem; color: #fff; font-family: 'LEMONMILK-bold','Roboto',sans-serif; font-size: clamp(1.2rem,2vw,1.8rem); letter-spacing: 2px; } /* Timeline label */
/* ================= MOBILE ================= */
@media (max-width:768px){
  .timeline-spine { left: 20px; transform: none; } /* Move spine left */
  .timeline-block { width: calc(100% - 40px); align-self: flex-end !important; text-align: left !important; } /* Full-width entries */
  .timeline-block.left::after, .timeline-block.right::after { left: 0; right: auto; } /* Reset year alignment */
  .timeline-block.left .timeline-dot, .timeline-block.right .timeline-dot { left: -24px; right: auto; } /* Reset node position */
}

/* ================= TRANSMISSION SECTION ================= */
.transmission-section { position: relative; width: 100%; padding: 10rem 5vw; z-index: 5; overflow: hidden; } /* Main transmission wrapper */
/* ================= BACKGROUND TEXT ================= */
.transmission-section::before { content: "ROCARS"; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); font-size: 22vw; color: rgba(255,255,255,.025); font-family: 'Serpentine'; pointer-events: none; white-space: nowrap; } /* Huge background title */
/* ================= TRANSMISSION HEADER ================= */
.transmission-header { display: flex; align-items: center; justify-content: center; gap: 2rem; margin-bottom: 6rem; } /* Header layout */
.transmission-header p { color: #fff;filter: drop-shadow(0px 0px 15px #fff); letter-spacing: 8px; font-family: 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 1rem; } /* Header text */
.transmission-header .dot { width: 15px; height: 15px; border-radius: 50%; background: #ffa666; box-shadow: 0 0 10px #ffa666; } /* Decorative glowing line */
/* ================= TRANSMISSION GRID ================= */
.transmission-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 2rem; position: relative; z-index: 2; } /* Cards layout */
/* ================= TRANSMISSION CARD ================= */
.trans-card { position: relative; min-height: 500px; /*padding: 2rem;*/ overflow: hidden; border: 1px solid rgba(255,255,255,1); background: rgba(255,255,255,.03); backdrop-filter: blur(30px); transition: .5s ease; } /* Main card */
/* ================= CARD LIGHT EFFECT ================= */
.trans-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 0%, rgba(255,166,102,.12) 50%, transparent 100%); opacity: 0; transition: .6s ease; } /* Gradient overlay */
.trans-card:hover::before { opacity: 1; } /* Reveal overlay on hover */
/* ================= CARD HOVER ================= */
.trans-card:hover { transform: translateY(-15px) scale(1.02); border-color: #ffa666; box-shadow: 0 0 30px rgba(255,166,102,.15), inset 0 0 20px rgba(255,255,255,.03); } /* Hover animation */
/* ================= CARD NOISE ================= */
.trans-noise { position: absolute; inset: 0; background-image: repeating-linear-gradient(transparent, transparent 2px, rgba(255,255,255,.03) 3px); opacity: .25; pointer-events: none; } /* Scanline texture */
/* ================= CARD ID ================= */
.trans-id { display: block; color: #fff; letter-spacing: 3px; font-size: .8rem; margin: 2rem; } /* Small top label */
/* ================= CARD DESCRIPTION ================= */
.trans-card p { color: #ccc; line-height: 1.8; max-width: 90%; margin: 2rem;} /* Description text */
/* ================= CARD FOOTER ================= */
.trans-footer { position: absolute; left: 2rem; right: 2rem; bottom: 2rem; display: flex; justify-content: space-between; font-size: .75rem; letter-spacing: 2px; color: #fff; } /* Footer info */
/* ================= ACTIVE CARD ================= */
.active { background: #ffa666; } /* Active card background */
.active h2, .active .trans-icon ion-icon, .active .trans-footer, .active .trans-id { color: #000; } /* Active text/icon colors */
.active h2 span { color: #fff; text-shadow: none; } /* Active highlighted text */
.active p { color: #111; } /* Active description */
/* ================= CARD MARQUEE ================= */
.cardmarqueecontainer {position: relative; transform: rotate(-10deg);z-index: 10;width:200%;left: -50%; margin-bottom: 1rem; overflow: hidden;background-color: #ffa666;filter: drop-shadow(0px 0px 15px #ffa666);mix-blend-mode: screen;}
.cardmarqueecontent {color: #000;font-family: 'Serpentine', 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 10rem;font-weight: lighter;display: flex;flex-direction: row;flex-wrap: nowrap;white-space: nowrap;will-change: transform; /* Helps GSAP performance */}
.cardmarqueecontent span {display: block;padding: 0 40px; /* Space between items */flex-shrink: 0; /* Prevents the items from squishing to 0 width */pointer-events: none;}
.OR {font-family: 'Serpentine', 'LEMONMILK-bold', 'Roboto', sans-serif;color: #000;/*filter: drop-shadow(0px 0px 5px #ffa666);*/}
.active .cardmarqueecontainer {background-color: #fff;filter: drop-shadow(0px 0px 15px #fff);}
/* ================= CARD MARQUEE II ================= */
.cardmarqueecontainerII {position: relative; transform: rotate(-10deg);z-index: 10;width:200%;left: -50%; margin-bottom: 4rem; overflow: hidden;background-color: transparent;filter: drop-shadow(0px 0px 15px #fff);mix-blend-mode: screen;}
.cardmarqueecontentII {color: #fff;font-family: 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 2rem;font-weight: lighter;display: flex;flex-direction: row;flex-wrap: nowrap;white-space: nowrap;will-change: transform; /* Helps GSAP performance */}
.cardmarqueecontentII span {display: block;padding: 0 40px; /* Space between items */flex-shrink: 0; /* Prevents the items from squishing to 0 width */pointer-events: none;}
/* ================= RESPONSIVE ================= */
@media(max-width:1000px){
  .transmission-grid { grid-template-columns: 1fr; } /* Single column layout */
  .trans-card h2 { font-size: 3rem; } /* Smaller titles */
  .transmission-section::before { font-size: 35vw; } /* Bigger background text */
}

/* ================= SUBSYSTEM 07: KINETIC STATEMENT MATRIX ================= */
/* ================= SYSTEM STATEMENT SECTION ================= */
.sys-statement { padding: 0; background: transparent; height: 100vh; overflow: hidden; } /* Fullscreen statement section */
.pin-spacer {pointer-events: none;}
/* ================= STATEMENT CANVAS ================= */
.statement-canvas { position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; } /* Centering container */
/* ================= STATEMENT FRAME ================= */
.statement-frame { position: absolute; text-align: center; opacity: 0; visibility: hidden; transform: scale(.85); filter: blur(12px); will-change: transform, opacity, filter; } /* Default hidden frame */
/* ================= FIRST FRAME VISIBLE ================= */
#msg-1 { opacity: 1; visibility: visible; transform: scale(1); filter: blur(0px); } /* Initial visible frame */
/* ================= HEADLINE ================= */
.statement-frame h2 { font-size: clamp(2.5rem,6vw,8rem); font-family: 'LEMONMILK-bold',sans-serif; line-height: 1.1; color: #fff; margin: 0; } /* Main statement text */
/* ================= OUTLINED TEXT ================= */
.statement-frame .outlined { color: transparent; -webkit-text-stroke: 2px #fff; filter: drop-shadow(0 0 5px #fff);} /* Stroke-only text */
/* ================= ACCENT TEXT ================= */
.statement-frame .accent { color: #ffa666; font-family: 'Barett Street',sans-serif; font-weight: lighter; filter: drop-shadow(0 0 5px #ffa666); } /* Highlighted accent word */
.strike-container { position: relative; display: inline-block; }
.strike-line { position: absolute; top: 50%; /* Centers the line vertically */ left: -5%; /* Gives a slight overhang on the left */ width: 110%; /* Gives a slight overhang on the right */ height: 8px; /* Thickness of the line */ border-radius: 50%; background: #ffa666; /* Your accent orange */ box-shadow: 0 0 15px rgba(255, 166, 102, 0.8); /* Matching neon glow */ /* Crucial for the animation: */ transform-origin: left center; /* Makes it draw from left to right */ transform: translateY(-50%) scaleX(0); /* Starts at 0 width */ z-index: 10; will-change: transform; }
@media(max-width:1000px){
  .statement-frame h2 { font-size: 2.4rem; } /* Single column layout */
  .statement-frame .outlined { -webkit-text-stroke: 1px #fff; } /* Smaller titles */
  .strike-line { height: 5px; } /* Bigger background text */
}

/* ================= QUOTE SECTION ================= */
.quote-section { min-height: 100vh; display: flex; justify-content: center; align-items: center; padding: 10vw; position: relative; z-index: 5; } /* Fullscreen quote section */
/* ================= QUOTE WRAPPER ================= */
.quote-wrap { max-width: 96vw; display: flex;flex-direction: column;justify-content: start;align-items: center;gap: 5rem;} /* Content width limiter */
/* ================= REFERENCES MARQUEE ================= */
.references { width: 100%; overflow: hidden; padding: 5rem 0; border-top: 1px solid #fff; border-bottom: 1px solid #fff; } /* Reference strip */
.track { display: flex; gap: 6rem; white-space: nowrap; } /* Moving track */
.ref { flex:0 0 auto; width: 200px;/*aspect-ratio: 1/1;*/height: 100; display:flex;align-items: center;justify-content: center; cursor: pointer;opacity:.6;filter: contrast(1.2) grayscale(1);transform: rotate(-1deg);transition: .3s;} /* Reference item */
.ref img {width: 100%;height: 100%;object-fit: contain;}
.ref:nth-child(even){transform: rotate(1.5deg);}
.ref:hover{opacity:1;filter: none;transform: scale(1.1) rotate(0deg);}
@media screen and (max-width:1000px) { }

/* ================= QUOTE AUTHOR ================= */
.quote-author { width: 100%; display: flex;justify-content: space-between;align-items: center; } /* Author name */
.quote-signa {width: 75%;height: 20vh;display: flex;align-items: center;justify-content: center;}
.signaone{position: relative;width: 66%;height: 100%; display: flex;align-items: center;justify-content: center; color: #fff;font-family: 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 6rem; /*border: solid 1px #fff;*/}
.signaone span { mix-blend-mode: screen; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-10deg); color: #ffa666;filter: drop-shadow(0px 0px 5px #ffa666); font-family: 'Barett Street', 'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 14rem;font-weight: lighter;}
/* ================= SQUARE PARAGRAPH ================= */
.square-paragraph { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; padding: 2rem; color: #fff; font-family: 'LEMONMILK-bold','Roboto',sans-serif; font-size: clamp(.7rem,.8rem,.9rem); line-height: 1.9; letter-spacing: .12em; text-transform: uppercase; text-align: justify; text-align-last: justify; /*border: 1px solid rgba(255,255,255,.08); background: linear-gradient(to bottom, rgba(255,255,255,.03), rgba(255,255,255,.01)); backdrop-filter: blur(20px); */position: relative; } /* Cinematic text block */
/* ================= CORNER DECORATION ================= */
.square-paragraph::before, .square-paragraph::after { content: ""; position: absolute; width: 40px; height: 40px; border-color: #ffa666; opacity: .7; display: none;} /* Decorative corners */
/* ================= TOP LEFT CORNER ================= */
.square-paragraph::before { top: 12px; left: 12px; border-top: 1px solid #ffa666; border-left: 1px solid #ffa666; } /* Top-left corner line */
/* ================= BOTTOM RIGHT CORNER ================= */
.square-paragraph::after { bottom: 12px; right: 12px; border-bottom: 1px solid #ffa666; border-right: 1px solid #ffa666; } /* Bottom-right corner line */
/* ================= RESPONSIVE ================= */
@media(max-width:1000px){ .signaone { width: 100%; padding: 4rem 0; } .square-paragraph { width: 85vw; aspect-ratio: auto; min-height: 320px; font-size: .7rem; line-height: 1.8; } /* Mobile text block */}
/* ================= QUOTE LINKS ================= */
.signathree{position: relative;width: 33%;height: 100%; /*border: solid 1px #fff;*/ display: flex;flex-direction: column;align-items: center;justify-content: space-around;}
.ql {position: relative; width: 100%;height: 33%; /*border: solid 1px #fff;*/ display: flex;align-items: center;justify-content: center;}
.signathree a {color: #fff; font-family:'LEMONMILK-bold', 'Roboto', sans-serif;font-size: 2rem; letter-spacing: 2px; position: relative; text-decoration: none;}
.signathree a:hover .menubg::before { transform: scaleX(1); transform-origin: center left; }
.quote-code { position: relative; border: solid 2px #fff;  width: 25%; height: 20vh; display: flex;align-items: center;justify-content: center;overflow: hidden;} /* Main quote img */
.quote-code video {position: absolute;left: 50%;top: 50%;transform: translate(-50%, -50%); width: 100%; pointer-events: none; object-fit: cover;}
@media(max-width:2000px){ .square-paragraph {font-size: .6rem;} .signaone span {font-size: 8rem;} }
@media(max-width:1000px){
  .quote-section { padding: 1vw; margin-bottom: 25vh;}
  .quote-author { flex-direction: column;} 
  .quote-signa { width: 96%; height: 100vh; flex-direction: column; }
  .square-paragraph {padding: 0rem;}
  .signaone span {font-size: 6rem;}
  .quote-code { width: 100%; }
}
@media (max-width: 550px) and (max-height: 800px) {
  .quote-section { margin-bottom: 33vh;}
  .quote-signa { height: 133vh; }
}

/* TV WINDOW */
.bbg {position: fixed; bottom: 5%; left: 50%; transform: translateX(-50%); z-index: 6; background-color: #000; opacity: .25; pointer-events: none; width: 100px; height: 100px; border-radius: 50%;}
.tv-wrapper { position: fixed; bottom: 5%; left: 50%; transform: translateX(-50%); mix-blend-mode: screen; border-radius: 50%; cursor: pointer; z-index: 11;}
.tv-window { position: relative; width: 100px; aspect-ratio: 1/1; border-radius: 50%; clip-path: circle(50% at 50% 50%); transform: translate3d(0, 0, 0); transition: transform 0.3s ease-out; pointer-events: auto; }
.vhs-effect { width: 100%; height: 100%; position: relative; display: flex; align-items: center; justify-content: center; }
.RCLOGO { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; height: 90%; object-fit: cover; filter: contrast(1.2) brightness(1.1) saturate(1.3) drop-shadow(0 0 2px #fff) drop-shadow(0 0 2px #fff); }
.RCTXT { opacity: 1; transition: opacity 0.5s ease; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; filter: drop-shadow(2px 0 0 black) drop-shadow(-2px 0 0 black) drop-shadow(0 2px 0 black) drop-shadow(0 -2px 0 black); }
.pulse-circles { position: fixed; bottom: 5%; left: 50%; transform: translateX(-50%); width: 100px; height: 100px; display: flex; justify-content: center; align-items: center; z-index: 10;}
.circle { position: absolute; width: 110px; height: 110px; border: 3px solid #fff; filter: drop-shadow(0 0 5px #fff) drop-shadow(0 0 5px #fff); border-radius: 50%; opacity: 0; animation: pulseOne 3s infinite; }
.circle:nth-child(1) { animation-delay: 0s; }
.circle:nth-child(2) { animation-delay: 1s; }
.circle:nth-child(3) { animation-delay: 2s; }
@keyframes pulseOne { 0% { transform: scale(1.1); opacity: 0; } 10% { transform: scale(1); opacity: 1; } 90% { transform: scale(0.9); opacity: 0; } 100% { opacity: 0; } }
/* Hover triggers opacity */
.tv-window:hover { border: 2px solid #fff; }
.tv-wrapper:hover { border: 2px solid #fff; }

/* ========== M E N U ========== */
.menu-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;overflow:hidden;z-index:99;cursor: pointer;}
.menu-bg{position:absolute;width:100%;height:100%; background-color: #000;opacity: .5;/*background:url(./public/menu.jpg) no-repeat 50% 50%;background-size:cover;*/}
#menublur{height:100%;width:100%;position:absolute;z-index:1;backdrop-filter:blur(20px);pointer-events:none;}
.menu-overlay-nav,.menu-overlay-footer{position:absolute;width:100vw;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;z-index:100;}
.menu-overlay-nav{top:0;}
.menu-overlay-footer{bottom:0;}
.menu-overlay-footer p{color: #fff;}
.close-btn{position:relative;width:1.5rem;height:1.5rem;cursor:pointer;}
.close-btn .close-btn-bar{position:absolute;top:50%;width:1.5rem;height:0.125rem;background-color:#fff;}
.close-btn .close-btn-bar:nth-child(1){transform:rotate(45deg);}
.close-btn .close-btn-bar:nth-child(2){transform:rotate(-45deg);}
.menu-overlay-items{display:flex;gap:1rem;}
.menu-overlay-items a{color: #fff;position: relative;}
.menu-overlay-items a:hover .menubg::before { transform: scaleX(1); transform-origin: center left; }
.menu-overlay-nav .menu-overlay-items a{font-size:18px;}
.circular-menu{position:relative;width:600px;height:600px;z-index:10;mix-blend-mode:lighten;}
.joystick{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120px;height:120px;background:#fff; border: 1px solid #000; border-radius:50%;display:flex;align-items:center;justify-content:center;/*user-select:none;*/cursor:grab;z-index:100;}
.joystick { touch-action: none; /* Disables all browser-level touch handling (scrolling/zooming) */ -webkit-tap-highlight-color: transparent; /* Removes the blue box on tap */ }
.center-icon{position:absolute;color:#000;font-size:12px;}
.center-main{width:50%;height:50%;pointer-events: none;}
.center-up{top:0.75rem;left:50%;transform:translateX(-50%);}
.center-down{bottom:0.75rem;left:50%;transform:translateX(-50%);}
.center-left{left:0.75rem;top:50%;transform:translateY(-50%);}
.center-right{right:0.75rem;top:50%;transform:translateY(-50%);}
.menu-segment{position:absolute;width:100%;height:100%;color:#000;background:#fff;backdrop-filter:blur(20px);cursor:pointer;}
.segment-content{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;text-align:center;transition:filter 0.25s ease,transform 0.25s ease;}
.segment-content ion-icon{font-size:40px;margin-bottom:10px;}
/* Increased label size and weight */
.label {text-transform: uppercase;font-family: 'LEMONMILK-Bold', 'BM', "Host Grotesk";font-size: 1.7rem; /* Increased size */font-weight: bolder;white-space: nowrap;}
/* Marquee container - hidden initially */
.marquee-wrapper {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%) rotate(-10deg);width: 350px;overflow: hidden;opacity: 0;pointer-events: none;display: flex;}
.marquee-content {display: flex;white-space: nowrap;}
.marquee-text {font-family:'Barett Street', 'LEMONMILK-Regular', 'Roboto', sans-serif;font-size: 3rem;font-weight: 100;padding-right: 20px;text-transform: initial;text-shadow: 0px 0px 2px #fff, 0px 0px 4px #fff, 0px 0px 6px #fff;}
/* Hide original content on hover */
.menu-segment:hover .label {opacity: 0;}
.menu-segment:hover .marquee-wrapper {opacity: 1;}
.menu-segment:hover{animation:flickerHover 500ms ease-in-out forwards;z-index:10;}
.menu-segment:hover .segment-content{animation:contentFlickerHover 350ms ease-in-out forwards;}
/* Mirror your hover effects for the .active class added by JS */
.menu-segment.active .label { opacity: 0; }
.menu-segment.active .marquee-wrapper { opacity: 1; }
.menu-overlay{opacity:0;pointer-events:none;}
@keyframes flickerHover{0%{background:#fff;backdrop-filter:blur(20px);}/*12%{background:#ffa666;backdrop-filter:blur(8px);}24%{background:#fff;backdrop-filter:blur(18px);}36%{background:#ffa666;backdrop-filter:blur(5px);}48%{background:#fff;backdrop-filter:blur(15px);}60%{background:#ffa666;backdrop-filter:blur(3px);}72%{background:#fff;backdrop-filter:blur(12px);}84%{background:#ffa666;backdrop-filter:blur(2px);}*/100%{background:#ffa666;backdrop-filter:blur(0px);}}
@keyframes contentFlickerHover{0%{color:white;opacity:1;}/*12%{color:#333;opacity:0.4;}24%{color:white;opacity:0.9;}36%{color:#333;opacity:0.3;}48%{color:white;opacity:0.8;}60%{color:#333;opacity:0.2;}72%{color:white;opacity:0.7;}84%{color:#333;opacity:0.1;}*/100%{color:#fff;opacity:1;}}
.menu-segment:hover .segment-content{filter:drop-shadow(0 0 10px #ffa666ff) drop-shadow(0 0 25px #ffb27a88) drop-shadow(0 0 40px #ffcaa266);transform:scale(1.08);}
@media (max-width:1000px){.label {font-size: .8rem;} .joystick{width: 80px;height: 80px;} .center-up{top:0.5rem;} .center-down{bottom: 0.5rem;} .center-left{left:0.5rem;} .center-right{right:0.5rem;} .menu-overlay-items{display: none;}}

@media(max-width: 2000px) {
  .screen { scale: 1; margin-bottom: 0rem; max-width: 100vw; max-height: 100vh;}
  #blob { height: 50vmin; backdrop-filter: blur(4vmax); visibility: hidden; }
  /*.absolute {visibility: visible;}*/
  .logo-glitch-wrapper{width: 100vw;}
  .logo-glitch-wrapper-b{width: 84vw;}
  .tv-wrapper:hover ~ .logo-glitch-wrapper{ width: 84vw; }
  .marqueecontainer {top: 8%;}  
  .marquee-text {font-size: 3rem;}
}

@media(max-width: 1000px) {
  body::after {display: none;}
  .screen { scale: 1; margin-bottom: 0rem; max-width: 100vw; max-height: 100vh;}
  #blob { height: 50vmin; backdrop-filter: blur(4vmax); visibility: hidden; }
  .absolute {visibility: visible;}
  .logo-glitch-wrapper{width: 100vw;}
  .marqueecontainer {top: 8%;}
  .joystick{width:80px;height:80px;}
  .marquee-text {font-size: 2rem;}
}

@media (max-width:550px) {
  .logo a {font-size: 40px;}
  .tv-wrapper {width: 100px; height: 100px; bottom: 10vh;}
  #window-text { font-size: 2rem; }
  .bbg {bottom: 10vh;}
  .pulse-circles {width: 100px; height: 100px; bottom: 10vh;}
  .circle {width: 100px; height: 100px;}
}

@media (max-width: 550px) and (max-height: 800px) {
  .screen { scale: 1; margin-bottom: 0rem; max-width: 100vw; max-height: 100vh;}
  #blob { height: 50vmin; backdrop-filter: blur(4vmax); visibility: hidden; }
  .absolute {visibility: visible;}
  .logo-glitch-wrapper{width: 120vw;}
  .marqueecontainer {top: 10%;}
  .marqueecontent span {font-size: 4rem;}
}

/* Loader CSS */
/* New Loading Experience */
.loading { position: fixed; inset: 0; z-index: 9999; display: flex; flex-direction: column; align-items: center; justify-content: center; background: transparent; /* Panels handle the color */ }
.shutter-top, .shutter-bottom { position: absolute; left: 0; width: 100%; height: 50.5%; /* Slight overlap to prevent cracks */ background: #ffa666; /* Sophisticated black */ z-index: -1; }
.shutter-top { top: 0; border-bottom: 1px solid transparent; }
.shutter-bottom { bottom: 0; border-top: 1px solid transparent; }
.loading-circle {width: 33vw; object-fit: cover;}
.loading-circle img { width: 100%; filter: drop-shadow(0px 0px 10px #fff);}
.load-counter { position: absolute;top: 79%;left: 50%;transform: translate(-50%, -50%); font-family: 'Serpentine', 'LEMONMILK-Bold', sans-serif; font-size: 10rem; color: #fff; margin-top: 15px; letter-spacing: 5px; text-shadow: 0 0 15px #fff; }
.load-status { position: absolute;top: 88%;left: 50%;transform: translate(-50%, -50%); width: 100%; font-family: 'LEMONMILK-Regular', sans-serif; font-size: 1rem; color: #fff; text-shadow: 0 0 15px #fff; text-align: center; margin-top: 10px; letter-spacing: 10px; text-transform: uppercase; }
.load-bar-container { width: 80%; height: 5px; background: transparent; margin-top: 20px; position: absolute;top: 90%;left: 50%;transform: translate(-50%, -50%); }
.load-bar { position: absolute; width: 0%; height: 100%; border-radius: 50%; background: #fff; box-shadow: 0 0 10px #fff; }
/* Hide main elements for the reveal */
.marqueecontainer, .logo-glitch-wrapper, .we, .tv-wrapper, .pulse-circles { opacity: 0; visibility: hidden; }
@media(max-width: 1000px) {
  .loading-circle {width: 90vw;}
  .load-counter { font-size: 7rem; top: 66%;}
  .load-status { top: 77%; font-size: 1rem; letter-spacing: 1px; }
  .load-bar-container {top: 80%;}
}
