:root {
	--primary: #1e90ff;
	--dark: #05070a;
	--light: #ffffff;
	--accent: #00fbff;
	--slash-red: #ffa33e;
	--wild-accent: #00fbff; 
	--wild-deep: #0a192f;
	/*--tapper-sage: #cbd5c0;*/
    --tapper-sage: #000000;
	--tapper-orange: #ffb300;
	/* Goodest Boy Colors */
	--dog-brown: #8B4513;
	--dog-tan: #D2B48C;
	/* Halfmoji Colors */
	/*--half-bg: #d3eaff;*/
    --half-bg: linear-gradient(white, #d1ecff, #4ea2ff);
	--half-text: #2d3436;
	--pyra-yellow: #ffcc00;
	--pyra-wall: #332200;
    --bg-deep: #0f1115;
    --text-soft: #d1d5db;
    --accent-blue: #60a5fa;
    --white: #f3f4f6;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

body {
	background-color: var(--dark);
	color: var(--light);
	scroll-behavior: smooth;
	overflow-x: hidden;
}

/* --- HEADER --- */
header {
	position: fixed;
	top: 0;
	width: 100%;
	/*padding: 8px 5%;
	background: rgba(5, 7, 10, 0.85);*/
    padding: 4px 5%;
    background: rgba(5, 7, 10, 0.35);
	backdrop-filter: blur(10px);
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 1000; 
	/*border-bottom: 1px solid rgb(23 36 41 / 10%);*/
    user-select: none;
    text-shadow: 0px 0px 5px black;
}

.logo {
	font-size: 1.5rem;
	font-weight: bold;
	letter-spacing: 2px;
	color: var(--light);
	text-decoration: none;
	z-index: 1100;
}

.logo span {
	color: var(--primary);
}

nav {
	display: flex;
	align-items: center;
}

.nav-links {
	display: flex;
	list-style: none;
	align-items: center;
}

.nav-links a,
.dropbtn {
	color: var(--light);
	text-decoration: none;
	margin-left: 25px;
	font-size: 0.9rem;
	font-weight: 600;
	transition: 0.3s;
	background: none;
	border: none;
	cursor: pointer;
    text-shadow: 0px 0px 5px black;
}

.nav-links a:hover,
.dropbtn:hover {
	color: var(--accent);
}

/* --- HAMBURGER ICON --- */
.hamburger {
	display: none;
	flex-direction: column;
	gap: 5px;
	cursor: pointer;
	z-index: 1100;
	margin-left: 20px;
}

.hamburger span {
	width: 25px;
	height: 3px;
	background: var(--light);
	border-radius: 2px;
	transition: 0.3s;
}

/* --- DROPDOWN --- */
.dropdown {
	position: static;
}

.dropdown-content {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	background: #0a0d12;
	padding: 40px 10%;
	border-bottom: 2px solid var(--primary);
	z-index: 999;
	box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}

.dropdown-content.active {
	display: block;
}

.game-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 20px;
	max-width: 1200px;
	margin: 0 auto;
}

.game-card {
	background: #151921;
	padding: 20px;
	border-radius: 8px;
	text-decoration: none;
	border: 1px solid rgba(255,255,255,0.05);
	transition: 0.3s;
	text-align: left;
}

.game-card:hover {
	border-color: var(--primary);
	transform: translateY(-5px);
}

.game-card h3 {
	color: var(--light);
	margin-bottom: 5px;
	font-size: 1.1rem;
	text-shadow: none;
	font-style: normal;
	text-transform: none;
}

.game-card p {
	color: #777;
	font-size: 0.8rem;
	font-weight: 400;
}

/* --- HERO CAROUSEL --- */
.hero-carousel {
	position: relative;
	width: 100%;
	height: 85vh;
    min-height: 85vh;
	overflow: hidden;
}

.hero-slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s ease-in-out;
	text-align: center;
	padding: 80px 10%;
}

.hero-slide.active {
	opacity: 1;
	visibility: visible;
	z-index: 10;
}

/* --- HERO DESIGNS --- */
#quasar-slide, .sel-quasar{
    background: radial-gradient(circle at center, #0a0a1a 0%, #000 100%);
}
#quasar-slide h1{
    color: #ffffff;
    text-shadow: 0px 0px 14px #00c6eb;
    font-size: 6rem;
    margin-bottom: 10px;
}
#quasar-slide {
    background: black; /* Deep space */
    overflow: hidden;
}

#star-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none; /* Let clicks pass through to buttons */
}
.star-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0; /* Keep stars behind text/icons */
    pointer-events: none;
}

/* Ensure parents are positioned correctly */
#quasar-slide, .sel-quasar {
    overflow: hidden;
}
#lessthan-slide, .sel-lessthan{
    background: #0D0D0D;
    color: #39FF14;
}
#lessthan-slide h1, .sel-lessthan h3{
    font-size: 4rem;
    margin-bottom: 5px;
    text-align: center;
    width: 500px;
    font-family: 'Inter', sans-serif;
    color: #f0fff0;
    text-shadow: 0 0 7px #39FF14, 0 0 10px #39FF14, 0 0 21px #39FF14, 0 0 42px #39FF14, 0 0 82px rgba(57, 255, 20, 0.5), 0 0 92px rgba(57, 255, 20, 0.3);
}
#lessthan-h1-left{
    text-align: left;
}
#lessthan-h1-right{
    text-align: right;
}
#lessthan-slide .btn-play{
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    color: #39FF14;
    border: 2px solid #39FF14;
    padding: 15px 50px;
    font-size: 1.2rem;
    font-weight: 900;
    letter-spacing: 2px;
    border-radius: 4px;
    cursor: pointer;
    box-shadow: 0 0 10px #39FF14, inset 0 0 5px #39FF14;
    text-shadow: 0 0 10px #39FF14;
    transition: all 0.2s;
    text-align: center;
    text-decoration: none;
    margin-top: 15px;
    font-size: 0.9rem;
    padding: 12px 30px;
    width: auto;
    height: 50px;
}
#wild-slide {
	background: linear-gradient(var(--wild-deep), #05070a);
}

#wild-slide h1 {
	font-size: 5.5rem;
	font-weight: 900;
	text-transform: uppercase;
	color: #fff;
	text-shadow: 0 0 20px rgba(0, 251, 255, 0.4), 4px 4px 0px #188bc4;
}

#half-slide {
	background: var(--half-bg);
}

#half-slide h1 {
	font-size: 5.5rem;
	font-weight: 900;
	color: var(--half-text);
	text-transform: lowercase;
	letter-spacing: -3px;
}

#half-slide .hero-tagline {
    text-shadow:none;
    color: #535353
}

#slash-slide {
	background: linear-gradient(#8cc4e5, #188bc4);
}

#slash-slide h1 {
	font-size: 5.5rem;
	font-weight: 900;
	font-style: italic;
	text-transform: uppercase;
	color: #fff;
	text-shadow: 6px 6px 0px var(--slash-red);
}

/* PairPlate Hero Design */
#pairplate-slide {
	background: linear-gradient(154deg, #e7f3ff 0%, #d3eaff 25%, #fdfbf0 50%, #a6d9f2 75%, #ffe4e4 100%);
	text-shadow: 0px 1px 3px black;
}

#pairplate-slide h1 {
	font-size: 5.5rem;
	font-weight: 900;
	color: #99cffc;
	text-shadow: 0px 1px 2px black;
}

#dodge-slide {
	background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)), linear-gradient(to bottom, #1e90ff 0%, #00fbff 100%);
}

#dodge-slide h1 {
	font-size: 3.2rem;
	font-weight: 800;
	letter-spacing: -3.5px;
	padding: 10px 20px;
	background-color: #7A3D31;
	background-image: linear-gradient(335deg, rgba(0,0,0,0.3) 23px, transparent 23px), linear-gradient(155deg, rgba(0,0,0,0.3) 23px, transparent 23px), linear-gradient(335deg, rgba(0,0,0,0.3) 23px, transparent 23px), linear-gradient(155deg, rgba(0,0,0,0.3) 23px, transparent 23px);
	background-size: 58px 58px;
	background-position: 0px 2px, 4px 35px, 29px 31px, 34px 6px;
	border: 3px solid #3c0505;
	border-radius: 8px;
	box-shadow: 0 8px 0 #4a251e;
	text-shadow: 2px 5px 0 #242525;
}

#balltoy-slide h1{
    font-size: 5rem;
    margin: 0;
    color: #ffcc00;
    letter-spacing: -1px;
}

#tapper-slide {
	background: var(--tapper-sage);
}

#tapper-slide h1 {
	font-size: 5rem;
	font-weight: 900;
	/*color: #2d3436;
    color: #cce81b;*/
    color: #dcff00;
	text-transform: uppercase;
	letter-spacing: -2px;
}
#tapper-slide .btn-play{
    background: #dcff00;
    color: #000;
    border: 4px solid #000; 
    box-shadow: 0 6px 0 #000;
}

#boy-slide {
	background: linear-gradient(to bottom, #4facfe 0%, #00f2fe 100%);
}

#boy-slide h1 {
	font-size: 5.5rem;
	font-weight: 900;
	color: var(--dog-brown);
	text-shadow: 3px 3px 0px #fff;
	z-index: 2;
}

#boy-slide .hero-tagline,
#boy-slide .btn-play {
	z-index: 2;
}

.hero-tagline {
	position: relative;
	z-index: 5;
	font-size: 1.75rem;
	margin: 20px 0;
	font-weight: 650;
}
#pairplate-slide .hero-tagline{
    color: #4e4f50;
    text-shadow: none;
}

.btn-play {
	position: relative;
	z-index: 10;
	padding: 15px 45px;
	margin: 20px 0px;
	font-size: 1.2rem;
	text-decoration: none;
	font-weight: 900;
	transition: 0.3s;
	border-radius: 50px;
	display: inline-block;
}

#quasar-slide .btn-play{
    padding: 15px;
    background: transparent;
    text-shadow: 0px 0px 8px;
    box-shadow: 0px 0px 8px;
    border: 2px solid #00f2ff;
    color: #00f2ff;
    border-radius: 7px;
    cursor: pointer;
    font-family: monospace;
    font-weight: bold;
    transition: 0.2s;
    min-width:220px;
}

#pairplate-slide .btn-play{
    background: #98d073;
    color: white;
    text-shadow: 1px 2px 2px rgb(69 67 62 / 92%);
    border-bottom: 3px solid rgba(0, 0, 0, 0.2);
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.5), 0 4px 6px rgba(0, 0, 0, 0.2);
    font-weight: bold;
    border-radius: 50px;
}
#balltoy-slide .btn-play{
    font-size: 1.1rem;
    font-weight: bold;
    background: #3699f8;
    color: white;
    border: 4px solid #75bbff;
    border-radius: 50px;
    cursor: pointer;
    transition: transform 0.1s;
    text-decoration: none;
    display: inline-block;
}
.get-it-on-btn-container{
    margin: 20px 0px; 
    display: flex;
    justify-content: center;
    align-items: center;
    gap:30px;
}
.get-it-on-btn-container img, .get-on-amazon-app-store-btn{
    position: relative;
    height: 53px;
    z-index: 500;
}
.origins-link {
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	padding: 10px 30px;
	margin: 20px 30px;
	border-radius: 12px;
}

.doodle-bird-origins-link {
	color: #5b5b5b;
}

.pyramaze-origins-link {
	color: #e2b023;
}

.bin-master-origins-link {
	color: #191919;
}

.wild-kingdom-origins-link {
	color: #08d9fa;
}

.dodgewall-origins-link {
	color: #ffffff;
}

.pairplate-origins-link {
	color: #363636;
	text-shadow: none;
}

.halfmoji-origins-link {
	color: #000000;
}

.slashfall-origins-link {
    color: #ffedcc;
}
.megatapper-origins-link{
    color: #dcff00;
}

/* --- SELECTION BAR --- */
.selection-bar {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	width: 90%;
	display: flex;
	justify-content: flex-start;
	gap: 20px;
	background: #080b10;
	padding: 40px 5% 40px 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	overflow-x: auto;
}

.sel-card {
	min-width: 190px;
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	cursor: pointer;
	border: 3px solid transparent;
	transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	text-align: center;
	overflow: hidden;
	position: relative;
}
.sel-quasar{
    color: #ffffff;
    text-shadow: 0px 0px 14px #00c6eb;
    font-size: 6rem;
    margin-bottom: 10px;
    background: radial-gradient(circle at center, #0a0a1a 0%, #000 100%);
}
.sel-card h3 {
	font-size: 1.1rem;
	position: relative;
	z-index: 2;
	pointer-events: none;
}
.sel-lessthan h3{
    font-size:1rem;
    width: 75%;
}
.sel-wild {
	background: linear-gradient(var(--wild-deep), #05070a);
}

.sel-wild h3 {
	font-weight: 900;
	text-transform: uppercase;
	text-shadow: 0 0 10px rgba(0, 251, 255, 0.4), 2px 2px 0px #188bc4;
}

.sel-half {
	background: var(--half-bg);
}

.sel-half h3 {
	color: var(--half-text);
	font-weight: 900;
	text-transform: lowercase;
}

.sel-slash {
	background: linear-gradient(#8cc4e5, #188bc4);
}

.sel-slash h3 {
	font-weight: 900;
	font-style: italic;
	text-transform: uppercase;
	text-shadow: 3px 3px 0px var(--slash-red);
}

.sel-dodge {
	background: linear-gradient(to bottom, #1e90ff, #00fbff);
}

.sel-dodge h3 {
	font-weight: 800;
	letter-spacing: -1px;
	padding: 5px 10px;
	background-color: #7A3D31;
	border: 2px solid #3c0505;
	border-radius: 4px;
	box-shadow: 0 4px 0 #4a251e;
	text-shadow: 1px 2px 0 #242525;
	font-size: 0.9rem;
}

.sel-tapper {
	background: var(--tapper-sage);
    border: 3px solid #dcff00;
}

.sel-tapper h3 {
	color: #dcff00;
	font-weight: 900;
	text-transform: uppercase;
}

.sel-boy {
	background: linear-gradient(to bottom, #4facfe, #00f2fe);
}

.sel-boy h3 {
	color: var(--dog-brown);
	font-weight: 900;
	text-shadow: 1px 1px 0px #fff;
}

/* Selection Bar Style */
.sel-pair {
	background: linear-gradient(154deg, #e7f3ff 0%, #d3eaff 25%, #fdfbf0 50%, #a6d9f2 75%, #ffe4e4 100%);;
	border: 1px solid #333;
}

.sel-pair h3 {
	color: #99cffc;
	text-shadow: 0px 1px 2px black;
}

.sel-card:hover {
	transform: scale(1.05);
}

.sel-card.active {
	border-color: var(--light);
	box-shadow: 0 0 20px rgba(255,255,255,0.2);
	transform: translateY(-5px);
}

/* --- INFO SECTION --- */
.info-section {
	padding: 80px 10%;
	background: #05070a;
	min-height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.info-content {
	display: none;
	max-width: 900px;
}

.info-content.active {
	display: block;
	animation: fadeIn 0.8s;
}

.info-content h3 {
	font-size: 3rem;
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 20px;
	color: var(--primary);
}

.info-content p {
	font-size: 1.3rem;
	color: #d1d1d1;
	line-height: 1.6;
}

.highlight {
	color: var(--accent);
	font-weight: bold;
}

/* --- Doodle Bird Slide --- */
@font-face {
	font-family: 'Patrick Hand';
	src: url('PatrickHand-Regular.ttf') format('truetype');
}

#doodle-bird-slide {
	background: linear-gradient(#7ac5e7, #f2fbff, #ffffff);
	overflow: hidden;
	font-family: 'Patrick Hand';
	color: #363636;
}

#doodle-bird-slide h1 {
	position: relative;
	font-size: 5.5rem;
	font-weight: 900;
	color: #0b0b0a;
	z-index: 5;
	font-family: 'Patrick Hand';
}

#doodle-bird-slide .btn-play,
.sel-doodle-bird h3 {
	border: 2px solid black;
	border-radius: 0;
	font-family: 'Patrick Hand';
	font-weight: 800;
}

.sel-doodle-bird h3 {
	border: none;
	font-size: 1.4rem;
}

/* --- Pyramaze Hero Slide --- */
#pyra-slide {
	background: linear-gradient(to bottom, #a78339, #3d2200);
	overflow: hidden;
}

#pyra-slide h1 {
	position: relative;
	font-size: 6.5rem;
	font-weight: 900;
	color: var(--pyra-yellow);
	text-transform: uppercase;
	z-index: 5;
    transform: unset;
    gap: 8px;
}

.pyra-grid-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: grid;
	grid-template-columns: repeat(20, 1fr);
	grid-template-rows: repeat(20, 1fr);
	opacity: 0.3;
	z-index: 1;
	pointer-events: none;
}

.pyra-wall-block {
	background: var(--pyra-wall);
	border: 1px solid #443311;
	box-shadow: inset 0 0 10px #000;
}

/* --- Selection Bar --- */
.sel-doodle-bird{
	background: linear-gradient(#7ac5e7, #f2fbff, #ffffff);
	color: #0b0b0a;
}

.sel-pyra { 
	background: linear-gradient(to bottom, #a78339, #3d2200); 
	border: 1px solid #333;     
	text-shadow: 0 0 20px rgba(255, 204, 0, 0.4), 4px 4px 0px #242321;
}
.sel-pyra h3 { 
	color: var(--pyra-yellow); 
	font-weight: 900; 
	text-transform: uppercase; 
	text-shadow: 2px 2px 0px #664400; 
}

.sel-bin-master{
	background: linear-gradient(#b8e8f7, #fbffff);
}
#bin-master-slide{
	background: linear-gradient(#b8e8f7, #fbffff);
}
#bin-master-slide h1, .sel-bin-master h3{
	color: #ffcd00;
	font-style: italic;
	font-size: 5rem;
	font-weight: 900;
	text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}

.sel-bin-master h3{
	font-size:1.1rem;
}

#bin-master-slide .hero-tagline{
	color: #313131;
	text-shadow: none;
}

#bin-master-slide .btn-play{
	background: #fff;
	color: #000;
	padding: 15px 30px;
	margin: 10px;
	background: #f2d19f;
	color: #ffffff;
	text-decoration: none;
	text-shadow: 0px 2px 2px black;
	border: none;
	border-radius: 8px;
	font-weight: bold;
	cursor: pointer;
	font-size: 18px;
	/* width: 200px; */
	box-shadow: 0px 4px 2px black;
}

/* --- STUDIO & FOOTER --- */
#about { 
	display: flex;
    flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 100px 10%;
	/*background: linear-gradient(#90c0fc, #a7bdd4);*/
    background: linear-gradient(#90c0fc, #a7c8eb, white);
	text-align: center;
	min-height: 100vh;
}
.section-title {
	font-size: 4rem;
	font-weight: 800;
	margin-bottom: 20px;
	color: #f2f8ff;
}
#about .section-title{
    display: flex;
    flex-direction: column;
}
#about-logo{
    max-width:unset !important;
}
#blueprints .section-title{
    font-size: 3rem;
}
.about-text {
	max-width: 800px;
	margin: 0 auto;
	line-height: 1.4;
	font-size: 1.7rem;
	font-weight: 500;
	color: #414445;
	text-align: left;  
}

#about-text-sub-1, #about-text-sub-2{
	max-width: 800px;
	margin: 0 auto;
	line-height: 1.4;
	font-size: 1.75rem;
	font-weight: 500;
	color: #414445;
	text-align: left;
	margin-bottom: 40px;
}
#ending-tagline{
	color: black;
	font-weight: 700;
	font-size: 1.9rem;
}

footer { 
	background: #05070a; 
	padding: 60px 10% 30px; 
	border-top: 1px solid rgba(255,255,255,0.05); 
}
.footer-grid { 
	display: grid; 
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); 
	gap: 40px; 
}
.footer-col h4 { margin-bottom: 20px; }
.footer-col ul { list-style: none; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: #777; text-decoration: none; transition: 0.3s; }
.footer-col ul li a:hover { color: var(--light); }
.copyright { 
	text-align: center; 
	padding-top: 30px; 
	margin-top: 30px; 
	border-top: 1px solid rgba(255,255,255,0.05); 
	font-size: 0.8rem; 
	color: #87ceea; 
}

.spore, .falling-ball, .wall, .tap-circle, .bone, .floating-emoji { 
	position: absolute; 
	pointer-events: none; 
	z-index: 1; 
}

.wall { 
    position: absolute; 
    border-radius: 4px; 
    box-shadow: 0 4px 6px rgba(0,0,0,0.2);
    z-index: 2; 
    background-image: linear-gradient(335deg, rgba(0,0,0,0.3) 23px, transparent 23px);
    background-size: 58px 58px;
    border: 1px solid rgba(0,0,0,0.4);
}

.tap-circle { 
	border-radius: 50%;
    background: #dcff00;
    border: 4px solid #79b900;
}
.bone { 
	font-size: 24px; 
	color: white; 
	opacity: 0.6; 
}

.cloud {
	position: absolute;
	font-size: 3rem;
	opacity: 0.6;
	animation: drift linear infinite;
}

@keyframes drift {
	from { transform: translateX(110vw); }
	to { transform: translateX(-20vw); }
}

@keyframes fadeIn { 
	from { opacity: 0; transform: translateY(20px); } 
	to { opacity: 1; transform: translateY(0); } 
}

@font-face {
	font-family: 'Anton';
	src: url('Anton-Regular.ttf') format('truetype');
}

#pyramaze-logo{
	display: inline-flex;
	align-items: center; /* Centers them vertically */
	gap: 4px;
	transform: scaleX(1.2);
	transform-origin: center;
	margin-bottom: 5px;
	position: relative;
	font-size: 3.3rem;
	font-weight: 900;
	font-family: 'Anton', sans-serif;
	color: #ffcc00;
	text-transform: uppercase;
	text-shadow: 0 0 20px rgba(255, 204, 0, 0.4), 4px 4px 0px #242321;
}

#pyramaze-logo span {
	display: inline-block;
	transform-origin: center; /* Now scaling from the middle */
	transform: skewX(-5deg); /* The aggressive Doom look */
    font-family: 'Anton', sans-serif;
}

#pyramaze-logo span:nth-child(1) { transform: scaleY(1.6) skewX(0deg) translateY(-1px); }
#pyramaze-logo span:nth-child(2) { transform: scaleY(1.3) skewX(0deg) translateY(-5px); }
#pyramaze-logo span:nth-child(3) { transform: scaleY(1.2) skewX(0deg) translateY(-6px); }
#pyramaze-logo span:nth-child(4) { transform: scaleY(1.0) skewX(0deg) translateY(-10px); }
#pyramaze-logo span:nth-child(5) { transform: scaleY(1.0) skewX(0deg) translateY(-10px); }
#pyramaze-logo span:nth-child(6) { transform: scaleY(1.2) skewX(0deg) translateY(-6px); }
#pyramaze-logo span:nth-child(7) { transform: scaleY(1.34) skewX(0deg) translateY(-4px); }
#pyramaze-logo span:nth-child(8) { transform: scaleY(1.47) skewX(0deg) translateY(-3px); }

/* --- NEW FEATURES SECTIONS --- */
.feature-section {
	width: 100%;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 20px 10%;
	text-align: center;
}

.feature-section h2 {
	font-size: 5rem;
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 20px;
	line-height: 1;
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 58%);
}

.feature-section p {
	/*font-size: 1.75rem;*/
    font-size: 1.85rem;
    font-weight: 500;
	max-width: 800px;
	line-height: 1.8;
	opacity: 0.9;
	text-align: left;
}

/* Backgrounds for each section */
.bg-easy { 
	background: linear-gradient(183deg, #ffbc42, #af6d00);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 58%);
}
.bg-bite { 
	background: linear-gradient(195deg, #30c2a2, #2a6693);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 58%);
}
.bg-mobile { 
	background: linear-gradient(135deg, #93337b, #ad7644);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 58%);
}

.games-directory, .game-previews { 
	padding: 80px 10%; 
	background: #080b10; 
	text-align: center; 
    align-items: normal;
}
.game-previews{
    background: linear-gradient(135deg, #020e1e, #021b25, #010d11);
}
.game-cards-container { 
	display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
	margin-top: 50px; 
}
.catalog-card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background: #141a23;
	border-radius: 21px;
	overflow: hidden;
	border: 1px solid rgb(0 0 0 / 5%);
	transition: 0.3s ease;
}
.preview-card{
    transition: 0.3s ease;
}
.catalog-card:hover , .preview-card:hover{ 
	transform: translateY(-10px); 
	border-color: var(--primary); 
}
.card-preview { 
	height: 160px; 
	background: #222; 
} 
.card-preview img{
	position: relative;
	width: 100%;
	top: -108%;
}
.card-body {
	position: relative;
	padding: 25px;
	text-align: left;
	background: linear-gradient(162deg, rgba(0, 0, 0, 70%), rgba(0, 0, 0, 90%));
	backdrop-filter: blur(3px);
	bottom: 0px;
}
.card-body h3 { 
	margin-bottom: 10px; 
	font-size: 1.4rem; 
	color: var(--light); 
}
.card-body p { 
	color: #b5b5b5; 
	font-size: 0.95rem; 
	line-height: 1.5; 
	margin-bottom: 20px; 
}
.card-btn { 
	display: inline-block; 
	padding: 10px 10px; 
	background: var(--primary); 
	color: white; 
	text-decoration: none; 
	border-radius: 5px; 
	font-weight: bold; 
	font-size: 0.85rem; 
}
/* Quick specific bgs for cards */
.pyra-bg { background: linear-gradient(45deg, #a78339, #3d2200); }
.wild-bg { background: linear-gradient(45deg, var(--wild-deep), var(--wild-accent)); }

.card-actions {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	gap: 10px;
	margin-top: 15px;
}
.card-btn-secondary {
	border: 1px solid #1a3550;
	padding: 8px 12px;
	text-decoration: none;
	color: #3c88d2;
	border-radius: 5px;
	font-weight: 700;
}


 /* --- SECTION BASE --- */
section {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 80px 10%;
    text-align: center;
}

/* --- ABOUT HERO --- */
#about-hero, #contact-hero, #tos-hero, #policy-hero {
    min-height: 40vh;
    max-height: 40vh;
    position: relative;
    overflow: hidden;
    background: linear-gradient(rgba(5, 7, 10, 0.2), rgba(5, 7, 10, 0.5)), linear-gradient(to bottom, #1e90ff 0%, #00fbff 100%);
    z-index: 1; /* Base layer */
}

.hero-content {
    max-width: 800px;
    position: relative;
    z-index: 10; /* Ensures text is ABOVE the falling bricks */
}

.hero-content h1 {
    font-size: 3.5rem;
    margin-bottom: 20px;
    text-shadow: 0 5px 15px rgba(0,0,0,0.5);
}

/* --- CONTENT SECTION --- */
.content-section {
    background-color: #0a0d12;
    padding: 100px 15%;
    line-height: 1.8;
    text-align: left;
    position: relative;
    z-index: 20; /* Ensure this section covers the falling bricks from the hero */
}

.content-container {
    max-width: 900px;
    margin: 0 auto;
}

.content-section h2 {
    font-size: 2.5rem;
    color: var(--primary);
    margin-bottom: 30px;
}

.content-section p {
    font-size: 1.1rem;
    color: #a0a0a0;
    margin-bottom: 20px;
}
.preview-grid{
    position: relative;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 50px;
}
.preview-card{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 1.1rem;
    font-weight: 400;
    color: #c9d9dc;
    line-height: 1.8rem;
    text-align: left;
    background: linear-gradient(135deg, #011622, #010d1b, #010f19);
    padding: 16px;
    /*border: 3px solid #1c2d3b;*/
    border: 2px solid #162532;
    border-radius: 12px;
}
.preview-card h3{
    text-align: center;
    font-size: 1.55rem;
    padding: 20px 0px 10px;
    color: #f1f6f9;
    line-height: 2.7rem;
}
.preview-card p{
    color: #93b4cc;
}
.preview-card-link-container{
    position:relative;
    padding: 20px 0px;
    text-align: right;
}
.preview-card a{
    color: #ffffff;
    font-weight: 500;
    background: #283d50;
    padding: 8px 20px;
    border-radius: 6px;
    margin: 20px 0px;
    text-decoration: none;
}

.blueprint-coming-soon{
    text-align: center;
    justify-content: flex-start;
    background: linear-gradient(135deg, #01060a, #061017, #010305);
}

.origins-header { margin-bottom: 50px; border-left: 3px solid var(--accent-blue); padding-left: 20px; }
        
        .blueprint-body{
            background: linear-gradient(135deg, #01070f, #000304, #000304);
        }
        .origins-container {
            max-width: 700px;
            margin: 80px auto;
            padding: 0 20px;
            color: #b4c7d7;
        }
.origins-container strong{
    color: #bad2d7 !important;
}
.origins-container a{
    color: #63dbff;
    text-decoration: none;
    font-weight: 500;
}
.origins-container .play-now-btn, .origins-container .btn-back{
    color: #ffffff !important;
}
        h1 { color: var(--white); font-size: 2.5rem; margin-bottom: 10px; }
        .meta { color: var(--accent-blue); font-size: 0.9rem; text-transform: uppercase; letter-spacing: 1px; }

.content{
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
}
        
        .content p { margin-bottom: 25px; font-size: 1.15rem;line-height: 1.75rem; }
        .content strong { color: var(--white); }

        .btn-back {
            display: inline-block;
            margin-top: 40px;
            padding: 10px 20px;
            background: #1e293b;
            color: var(--white);
            text-decoration: none;
            border-radius: 5px;
            transition: 0.3s;
        }
        .btn-back:hover { background: var(--accent-blue); }

        
        .quote{
            position: relative;
            display: flex;
            flex-direction: column;
            gap: 5px;
            background: #0b0b0b;
            border: 1px solid #14232a;
            border-radius: 12px;
            padding: 10px;
            font-size: 1.2rem;
            color: #b1c0d2;
            text-align: center;
            margin: 82px auto;
        }
        .quote-author{
            display: flex;
            justify-content: center;
            position: relative;
            float: right;
            font-size: 0.9rem;
            text-align: center;
            background: #0a0a0b;
            padding: 8px;
            border-radius: 12px;
        }
        img {
            max-width:300px;
        }
        .in-article-img{
            position:relative;
            display:flex;
            justify-content: center;
            align-items: center;
            margin: 30px 0px;
        }
        .play-btn-container{
            position:relative;
            display:flex;
            justify-content: center;
            align-items: center;
            margin: 20px;
        }
        .play-now-btn{
            position: relative;
            background: var(--accent-blue);
            color: white;
            padding: 10px 20px;
            border-radius: 12px;
            font-weight: 700;
            font-size: 1.5rem;
            text-decoration: none;
        }


/* --- CUSTOM SCROLLBAR --- */
/* The width of the scrollbar */
::-webkit-scrollbar {
	width: 10px;
}

/* The background of the scrollbar track (Rail) */
::-webkit-scrollbar-track {
	background: #151921; /* Slightly lighter than the body background */
}

/* The moving part of the scrollbar (Scroller) */
::-webkit-scrollbar-thumb {
	background-color: var(--accent);
	border-radius: 5px;
	border: 2px solid #151921; /* Adds a bit of padding around the thumb */
}

/* Optional: Color change on hover */
::-webkit-scrollbar-thumb:hover {
	background-color: #00d1d4; /* A slightly darker shade of accent */
}


@media (max-width: 600px) {
            .origins-container {
                margin: 120px auto;
            }
            h1 { font-size: 1.8rem; }
        }

@media (max-width: 768px) {
    header{
        width: 100vw;
    }
	.hamburger { 
		display: flex;
		position: absolute;
		right: 20px;
	}
	.nav-links { 
		position: fixed; 
		top: 0; 
		right: -100%; 
		height: 100vh; 
		width: 100%; 
		background: var(--dark); 
		flex-direction: column; 
		justify-content: center; 
		transition: 0.4s ease; 
		z-index: 1000; 
	}
	.nav-links.active { right: 0; }
	.nav-links a, .dropbtn { margin: 15px 0; font-size: 1.5rem; }
	.dropdown-content { 
		position: relative; 
		padding: 20px 5%; 
		box-shadow: none; 
		border-bottom: none; 
		border-top: 1px solid var(--primary); 
	}
    .hero-carousel{
        /*height: 83vh;
        min-height: 83vh;*/
        height: 75vh;
        min-height: 75vh;
    }
    .hero-slide{
        
    }
	#quasar-slide h1, #pyra-slide h1, #wild-slide h1, #half-slide h1, #slash-slide h1, #tapper-slide h1, #boy-slide h1, #pairplate-slide h1{ 
		font-size: 3rem; 
	}
    #wild-slide h1{
        font-size: 2.3rem;
    }
    #balltoy-slide h1{
        font-size: 3rem;
    }
	#pyra-slide h1{ font-size: 3.7rem; }
	#bin-master-slide h1{ font-size: 2.5rem; }
    #lessthan-slide h1{
        font-size: 2rem;
        width: 253px;
    }
	#doodle-bird-slide h1{ font-size: 4rem; }
	.info-content h3 { font-size: 2rem; }
	.selection-bar { justify-content: flex-start; padding: 20px 5%; }
	.sel-card { min-width: 160px; height: 90px; }
	.btn-play { 
		position: relative; 
		z-index: 10;
		padding: 15px 45px;
		font-size: 0.8rem;
		font-weight: 900;
		transition: 0.3s;
		border-radius: 50px;
		display: inline-block;
		text-decoration: none;
	}
	.hero-tagline{ font-size: 1.1rem; }
    #lessthan-slide .hero-tagline{
        font-size: 1rem;
    }
    #lessthan-slide .btn-play{
        font-size: 0.65rem;
    }
    
	.feature-section h2{ font-size: 3rem; }
	.feature-section p{
		font-size: 1.4rem;
		max-width: 800px;
		line-height: 1.75;
		opacity: 0.9;
	}
	#about{ flex-direction: column; }
	.section-title { font-size: 3rem; }
	#about-logo{ max-width:80vw; }
    #about-hero, #contact-hero, #tos-hero, #policy-hero{
        padding-top: 150px;
    }
    #about-hero h1, #contact-hero h1, #tos-hero h1, #policy-hero h1{
        font-size: 2rem;
    }
    #about-hero .hero-tagline, #contact-hero .hero-tagline, #tos-hero .hero-tagline, #policy-hero .hero-tagline{
        font-size: 1rem;
    }
    .get-it-on-btn-container{
        flex-direction:column;
    }
}
