/* =========================
RAIDEN CREATIVE MASTER CSS
========================= */

:root{

--bg:#050816;

--card:
rgba(255,255,255,0.05);

--border:
rgba(255,255,255,0.08);

--text:#F5F7FF;

--muted:#9BA7C2;

--blue:#4DA3FF;
--purple:#8B5CF6;
--cyan:#4CF2FF;
--green:#6DFFB2;

--font-main:
'Outfit',sans-serif;

--font-heading:
'Space Grotesk',sans-serif;
}

/* =========================
RESET
========================= */

*{

margin:0;
padding:0;
box-sizing:border-box;
}

html{

scroll-behavior:smooth;
}

body{

font-family:var(--font-main);

background:
radial-gradient(circle at top left,
rgba(77,163,255,0.16),
transparent 35%),

radial-gradient(circle at top right,
rgba(139,92,246,0.14),
transparent 35%),

radial-gradient(circle at bottom center,
rgba(109,255,178,0.08),
transparent 35%),

#050816;

color:var(--text);

overflow-x:hidden;

position:relative;
}

/* =========================
GRID OVERLAY
========================= */

body::before{

content:'';

position:fixed;

inset:0;

background-image:
linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);

background-size:70px 70px;

opacity:.05;

pointer-events:none;

z-index:-5;
}

/* =========================
ANIMATIONS
========================= */

@keyframes floatGlow{

0%{
transform:
translateY(0px)
scale(1);
}

50%{
transform:
translateY(-30px)
scale(1.08);
}

100%{
transform:
translateY(0px)
scale(1);
}
}

@keyframes gradientMove{

0%{
background-position:0% center;
}

100%{
background-position:300% center;
}
}

@keyframes float{

0%{
transform:translateY(0px);
}

50%{
transform:translateY(-12px);
}

100%{
transform:translateY(0px);
}
}

@keyframes fadeUp{

0%{

opacity:0;

transform:
translateY(40px);
}

100%{

opacity:1;

transform:
translateY(0px);
}
}

/* =========================
GLOW SYSTEM
========================= */

.glow{

position:fixed;

width:700px;
height:700px;

border-radius:50%;

filter:blur(140px);

opacity:.15;

z-index:-4;

animation:
floatGlow 16s ease-in-out infinite;
}

.glow1{

background:#4DA3FF;

top:-250px;
left:-200px;
}

.glow2{

background:#8B5CF6;

right:-200px;
top:10%;

animation-delay:4s;
}

.glow3{

background:#6DFFB2;

bottom:-250px;
left:30%;

animation-delay:8s;
}

/* =========================
NAVBAR
========================= */

.navbar{

position:fixed;

top:0;
left:0;

width:100%;

padding:20px 34px;

display:flex;

justify-content:space-between;

align-items:center;

background:
rgba(5,8,22,0.75);

backdrop-filter:blur(18px);

border-bottom:
1px solid rgba(255,255,255,0.06);

z-index:999;
}

.logo{

font-size:30px;

font-family:var(--font-heading);

font-weight:700;

letter-spacing:1px;

background:
linear-gradient(
90deg,
var(--cyan),
var(--purple),
var(--green),
var(--blue)
);

background-size:300% auto;

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

animation:
gradientMove 6s linear infinite;
}

.nav-links{

display:flex;

gap:28px;

align-items:center;
}

.nav-links a{

text-decoration:none;

color:
rgba(255,255,255,0.85);

font-size:12px;

font-weight:700;

letter-spacing:2px;

text-transform:uppercase;

transition:.3s ease;
}

.nav-links a:hover{

color:var(--cyan);
}

.cta-nav{

padding:14px 22px;

border-radius:100px;

background:
linear-gradient(
90deg,
var(--blue),
var(--purple),
var(--green)
);

background-size:300% auto;

color:white!important;

animation:
gradientMove 5s linear infinite;
}

.mobile-toggle{

display:none;

font-size:30px;

cursor:pointer;
}

/* =========================
MOBILE MENU
========================= */

.mobile-menu{

position:fixed;

top:82px;
left:0;

width:100%;

background:
rgba(5,8,22,0.95);

backdrop-filter:blur(18px);

padding:30px 20px;

display:none;

flex-direction:column;

gap:22px;

z-index:998;

border-bottom:
1px solid rgba(255,255,255,0.06);
}

.mobile-menu.active{

display:flex;
}

.mobile-menu a{

text-decoration:none;

color:white;

font-size:15px;

font-weight:600;
}

/* =========================
HERO
========================= */

.hero{

min-height:100vh;

display:flex;

align-items:center;

max-width:1600px;

margin:auto;

padding:
180px 34px
120px;
}

.hero-grid{

display:grid;

grid-template-columns:
1.1fr .9fr;

gap:60px;

align-items:center;
}

.hero-tag{

display:inline-flex;

align-items:center;

gap:10px;

padding:12px 22px;

border-radius:100px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

margin-bottom:32px;

font-size:11px;

letter-spacing:2px;

text-transform:uppercase;

color:var(--cyan);
}

.hero h1{

font-size:110px;

line-height:.88;

font-family:var(--font-heading);

margin-bottom:28px;
}

.hero h1 span{

background:
linear-gradient(
90deg,
var(--cyan),
var(--purple),
var(--green),
var(--blue)
);

background-size:300% auto;

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

animation:
gradientMove 5s linear infinite;
}

.hero p{

font-size:22px;

line-height:1.9;

max-width:760px;

color:var(--muted);

margin-bottom:40px;
}

/* =========================
BUTTONS
========================= */

.hero-buttons{

display:flex;

gap:18px;

flex-wrap:wrap;

margin-bottom:50px;
}

.btn{

padding:20px 30px;

border-radius:18px;

text-decoration:none;

font-weight:700;

transition:.3s ease;
}

.btn-primary{

background:
linear-gradient(
90deg,
var(--blue),
var(--purple),
var(--green)
);

background-size:300% auto;

color:white;

animation:
gradientMove 5s linear infinite;
}

.btn-secondary{

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

color:white;
}

.btn:hover{

transform:
translateY(-4px)
scale(1.02);
}

/* =========================
HERO CARDS
========================= */

.hero-cards{

display:grid;

grid-template-columns:
repeat(2,1fr);

gap:18px;
}

.info-card{

padding:26px;

border-radius:24px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

backdrop-filter:blur(18px);
}

.info-card h3{

font-size:26px;

font-family:var(--font-heading);

margin-bottom:12px;
}

.info-card p{

font-size:14px;

line-height:1.7;

color:var(--muted);
}

/* =========================
HERO IMAGE
========================= */

.hero-image{

position:relative;
}

.hero-image img{

width:100%;

border-radius:34px;

box-shadow:
0 30px 90px rgba(0,0,0,0.4);
}

.floating{

position:absolute;

padding:18px 22px;

border-radius:22px;

background:
rgba(5,8,22,0.85);

border:
1px solid rgba(255,255,255,0.08);

backdrop-filter:blur(18px);

font-size:14px;

line-height:1.5;

animation:
float 5s ease-in-out infinite;
}

.f1{

top:8%;
right:-30px;
}

.f2{

bottom:18%;
left:-40px;

animation-delay:2s;
}

.f3{

bottom:-20px;
right:12%;

animation-delay:4s;
}

/* =========================
SECTIONS
========================= */

.section{

max-width:1600px;

margin:
auto auto
140px;

padding:0 34px;
}

.section-title{

font-size:82px;

line-height:.92;

font-family:var(--font-heading);

margin-bottom:24px;
}

.section-title span{

background:
linear-gradient(
90deg,
var(--cyan),
var(--purple),
var(--green),
var(--blue)
);

background-size:300% auto;

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

animation:
gradientMove 5s linear infinite;
}

.section-sub{

max-width:920px;

font-size:22px;

line-height:1.9;

color:var(--muted);

margin-bottom:60px;
}

/* =========================
INDUSTRY ACCORDION
========================= */

.industry-accordion{

display:grid;

gap:24px;
}

.accordion-item{

border-radius:28px;

background:
rgba(255,255,255,0.04);

border:
1px solid rgba(255,255,255,0.08);

overflow:hidden;

transition:.4s ease;
}

.accordion-item.active{

background:
rgba(255,255,255,0.06);

box-shadow:
0 0 40px rgba(77,163,255,0.08);
}

.accordion-header{

width:100%;

padding:28px 30px;

background:none;

border:none;

outline:none;

display:flex;

justify-content:space-between;

align-items:center;

cursor:pointer;

color:white;

text-align:left;
}

.accordion-header h3{

font-size:30px;

font-family:var(--font-heading);

margin-bottom:10px;
}

.accordion-header p{

color:var(--muted);

font-size:14px;

line-height:1.7;
}

.accordion-icon{

font-size:34px;

font-weight:300;

transition:.4s ease;
}

.accordion-item.active .accordion-icon{

transform:rotate(45deg);
}

.accordion-content{

max-height:0;

overflow:hidden;

transition:
max-height .6s ease,
padding .5s ease;
}

.accordion-content{

max-height:0;

overflow:hidden;

padding:0 30px;

transition:
max-height .6s ease,
padding .5s ease;
}

.accordion-item.active .accordion-content{

max-height:3000px;

padding:
0 30px
30px;
}

/* =========================
INDUSTRY GRID
========================= */

.industry-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;
}

.industry-card{

padding:30px;

border-radius:28px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

text-decoration:none;

color:white;

transition:.35s ease;

position:relative;

overflow:hidden;
}

.industry-card::before{

content:'';

position:absolute;

inset:0;

background:
linear-gradient(
135deg,
rgba(77,163,255,0.14),
rgba(139,92,246,0.14),
rgba(109,255,178,0.12)
);

background-size:300% auto;

opacity:0;

transition:.3s ease;

animation:
gradientMove 5s linear infinite;
}

.industry-card:hover::before{

opacity:1;
}

.industry-card:hover{

transform:
translateY(-8px)
scale(1.02);
}

.industry-card h3,
.industry-card p{

position:relative;

z-index:2;
}

.industry-card h3{

font-size:24px;

font-family:var(--font-heading);

margin-bottom:12px;
}

.industry-card p{

font-size:14px;

line-height:1.7;

color:var(--muted);
}

/* =========================
SERVICES
========================= */

.services-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:24px;
}

.service-card{

padding:34px;

border-radius:30px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

transition:.35s ease;
}

.service-card:hover{

transform:
translateY(-8px);
}

.service-card h3{

font-size:28px;

font-family:var(--font-heading);

margin-bottom:16px;
}

.service-card p{

line-height:1.9;

color:var(--muted);
}

/* =========================
CONSULTATION
========================= */

.builder{

padding:70px;

border-radius:40px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

position:relative;

overflow:hidden;
}

.builder::before{

content:'';

position:absolute;

width:700px;
height:700px;

border-radius:50%;

background:
radial-gradient(
circle,
rgba(77,163,255,0.15),
transparent
);

top:-300px;
right:-200px;
}

.builder-grid{

display:grid;

grid-template-columns:
1fr 1fr;

gap:50px;

align-items:center;
}

.builder-content{

position:relative;

z-index:2;
}

.builder-content h2{

font-size:70px;

line-height:.92;

font-family:var(--font-heading);

margin-bottom:24px;
}

.builder-content h2 span{

background:
linear-gradient(
90deg,
var(--cyan),
var(--purple),
var(--green),
var(--blue)
);

background-size:300% auto;

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

animation:
gradientMove 5s linear infinite;
}

.builder-content p{

font-size:20px;

line-height:1.9;

color:var(--muted);

margin-bottom:30px;
}

/* =========================
STEPS
========================= */

.steps{

display:grid;

gap:14px;
}

.step{

padding:18px 22px;

border-radius:18px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);
}

/* =========================
FORM
========================= */

form{

display:grid;

gap:18px;

position:relative;

z-index:2;
}

input,
select,
textarea{

width:100%;

padding:18px 20px;

border-radius:18px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);

color:white;

font-family:var(--font-main);

outline:none;

font-size:15px;
}

textarea{

min-height:120px;

resize:vertical;
}

select option{

background:#050816;
}

.submit-btn{

border:none;

padding:22px;

border-radius:18px;

background:
linear-gradient(
90deg,
var(--blue),
var(--purple),
var(--green)
);

background-size:300% auto;

color:white;

font-size:15px;

font-weight:800;

letter-spacing:1px;

text-transform:uppercase;

cursor:pointer;

transition:.3s ease;

animation:
gradientMove 5s linear infinite;
}

.submit-btn:hover{

transform:
translateY(-4px)
scale(1.02);
}

/* =========================
ABOUT
========================= */

.about-box{

padding:60px;

border-radius:36px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);
}

.about-box p{

font-size:20px;

line-height:2;

color:var(--muted);

max-width:1200px;
}

/* =========================
CONTACT
========================= */

.contact-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:24px;
}

.contact-card{

padding:32px;

border-radius:28px;

background:
rgba(255,255,255,0.05);

border:
1px solid rgba(255,255,255,0.08);
}

.contact-card h3{

font-size:22px;

font-family:var(--font-heading);

margin-bottom:12px;
}

.contact-card a{

color:var(--muted);

text-decoration:none;

line-height:1.8;

transition:.3s ease;
}

.contact-card a:hover{

color:var(--cyan);
}

/* =========================
FOOTER
========================= */

footer{

padding:60px 34px;

border-top:
1px solid rgba(255,255,255,0.06);

margin-top:120px;
}

.footer-bottom{

max-width:1600px;

margin:auto;

display:flex;

justify-content:space-between;

flex-wrap:wrap;

gap:20px;

color:var(--muted);
}

/* =========================
RESPONSIVE
========================= */

@media(max-width:1200px){

.hero-grid,
.builder-grid{

grid-template-columns:1fr;
}

.hero h1{

font-size:82px;
}

.section-title{

font-size:62px;
}

.builder-content h2{

font-size:52px;
}
}

@media(max-width:768px){

.navbar{

padding:18px 20px;
}

.nav-links{

display:none;
}

.mobile-toggle{

display:block;
}

.hero{

padding:
150px 20px
100px;
}

.section{

padding:0 20px;
}

.hero h1{

font-size:56px;
}

.hero p,
.section-sub,
.about-box p{

font-size:18px;
}

.section-title{

font-size:44px;
}

.builder{

padding:30px;
}

.builder-content h2{

font-size:40px;
}

.hero-cards,
.industry-grid,
.services-grid,
.contact-grid{

grid-template-columns:1fr;
}

.floating{

display:none;
}
}