/* =====================================================
   Relationship Workshop Landing Page
   Style.css - Part 1
=====================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{

--primary:#7C3AED;
--secondary:#A855F7;
--accent:#F59E0B;

--dark:#0B0616;
--dark2:#140C24;

--text:#FFFFFF;
--gray:#B8B8C7;

--glass:rgba(255,255,255,.08);
--border:rgba(255,255,255,.10);

--radius:24px;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;

background:linear-gradient(
135deg,
#080413,
#120A24,
#1D1036,
#120A24
);

color:#fff;

overflow-x:hidden;

position:relative;

}

/* Scrollbar */

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-thumb{

background:linear-gradient(
180deg,
#A855F7,
#7C3AED
);

border-radius:20px;

}

/* Selection */

::selection{

background:#A855F7;

color:#fff;

}

/* Container */

.container{

width:90%;

max-width:1250px;

margin:auto;

}

/* Background Glow */

.gradient1{

position:fixed;

width:700px;

height:700px;

background:#7C3AED;

filter:blur(180px);

opacity:.22;

top:-200px;

left:-150px;

z-index:-2;

animation:float1 8s infinite alternate ease-in-out;

}

.gradient2{

position:fixed;

width:650px;

height:650px;

background:#F59E0B;

filter:blur(180px);

opacity:.15;

right:-150px;

bottom:-180px;

z-index:-2;

animation:float2 10s infinite alternate;

}

@keyframes float1{

100%{

transform:translateY(100px);

}

}

@keyframes float2{

100%{

transform:translateY(-120px);

}

}

/* Header */

header{

position:fixed;

top:0;

left:0;

width:100%;

padding:22px 0;

backdrop-filter:blur(25px);

background:rgba(11,6,22,.55);

border-bottom:1px solid rgba(255,255,255,.08);

z-index:999;

}

header .container{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{

font-size:26px;

font-weight:700;

}

nav{

display:flex;

gap:35px;

}

nav a{

color:#fff;

text-decoration:none;

transition:.3s;

}

nav a:hover{

color:#F59E0B;

}

.nav-btn{

padding:14px 28px;

border-radius:50px;

background:linear-gradient(
135deg,
#7C3AED,
#A855F7
);

text-decoration:none;

font-weight:600;

color:#fff;

box-shadow:0 15px 40px rgba(124,58,237,.45);

transition:.35s;

}

.nav-btn:hover{

transform:translateY(-3px);

}

/* Hero */

.hero{

padding-top:170px;

padding-bottom:120px;

}

.hero-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.badge{

display:inline-flex;

padding:10px 20px;

background:rgba(255,255,255,.08);

border:1px solid rgba(255,255,255,.12);

border-radius:50px;

margin-bottom:30px;

font-size:14px;

}

.hero h1{

font-size:72px;

line-height:1.08;

margin-bottom:25px;

font-weight:800;

}

.hero h1 span{

background:linear-gradient(
90deg,
#F59E0B,
#FDE68A
);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero p{

font-size:18px;

line-height:1.9;

color:#D4D4DD;

margin-bottom:35px;

max-width:600px;

}

/* Price */

.price-box{

display:inline-block;

padding:25px;

background:rgba(255,255,255,.06);

backdrop-filter:blur(25px);

border-radius:22px;

border:1px solid rgba(255,255,255,.08);

margin-bottom:35px;

}

.price-box h2{

font-size:58px;

margin:8px 0;

color:#F59E0B;

}

/* Buttons */

.hero-buttons{

display:flex;

gap:18px;

margin-bottom:45px;

}

.primary-btn{

padding:18px 34px;

border-radius:50px;

background:linear-gradient(
135deg,
#7C3AED,
#A855F7
);

color:#fff;

text-decoration:none;

font-weight:700;

transition:.35s;

box-shadow:0 20px 50px rgba(124,58,237,.45);

}

.primary-btn:hover{

transform:translateY(-4px);

}

.secondary-btn{

padding:18px 34px;

border-radius:50px;

border:1px solid rgba(255,255,255,.15);

color:#fff;

text-decoration:none;

backdrop-filter:blur(15px);

}

/* Countdown */

.countdown{

display:flex;

gap:18px;

margin-bottom:40px;

}

.countdown div{

background:rgba(255,255,255,.08);

padding:20px;

border-radius:18px;

min-width:90px;

text-align:center;

backdrop-filter:blur(20px);

}

.countdown h3{

font-size:34px;

}

/* Hero Features */

.hero-features{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.hero-features div{

padding:18px;

background:rgba(255,255,255,.06);

border-radius:16px;

border:1px solid rgba(255,255,255,.08);

}

/* Right Side */

.hero-right{

position:relative;

display:flex;

justify-content:center;

}

.coach-card{

width:420px;

padding:35px;

background:rgba(255,255,255,.08);

backdrop-filter:blur(25px);

border-radius:30px;

text-align:center;

border:1px solid rgba(255,255,255,.08);

}

.image-placeholder{

width:220px;

height:220px;

margin:auto;

border-radius:50%;

overflow:hidden;

background:#2D1B52;

}

.image-placeholder img{

width:100%;

height:100%;

object-fit:cover;

}

.coach-card h2{

margin-top:25px;

font-size:34px;

}

.coach-card p{

color:#ccc;

}

/* Floating Cards */

.floating-card{

position:absolute;

padding:16px 24px;

background:rgba(255,255,255,.08);

backdrop-filter:blur(25px);

border-radius:18px;

border:1px solid rgba(255,255,255,.08);

font-weight:600;

animation:floatCard 4s infinite ease-in-out;

}

.one{

top:40px;

left:-30px;

}

.two{

top:150px;

right:-50px;

}

.three{

bottom:80px;

left:-50px;

}

.four{

bottom:10px;

right:-30px;

}

@keyframes floatCard{

50%{

transform:translateY(-12px);

}

}

/* Trust */

.trust{

padding:80px 0;

text-align:center;

}

.trust p{

font-size:22px;

margin-bottom:40px;

}

.logos{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

}

.logos div{

padding:35px;

background:rgba(255,255,255,.06);

border-radius:20px;

font-size:24px;

font-weight:700;

}
/* ===========================================
ABOUT SECTION
===========================================*/

.about-section{

padding:120px 0;

position:relative;

}

.section-title{

text-align:center;

max-width:760px;

margin:0 auto 70px;

}

.section-title span{

display:inline-block;

padding:10px 22px;

background:rgba(255,255,255,.08);

border-radius:50px;

font-size:14px;

margin-bottom:18px;

border:1px solid rgba(255,255,255,.08);

}

.section-title h2{

font-size:56px;

margin-bottom:20px;

font-weight:700;

}

.section-title p{

color:#BFBFD3;

line-height:1.8;

font-size:18px;

}

/* ========================= */

.problems-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:50px;

}

.problem-card{

background:rgba(255,255,255,.05);

backdrop-filter:blur(20px);

padding:35px;

border-radius:28px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

position:relative;

overflow:hidden;

}

.problem-card:hover{

transform:translateY(-12px);

border-color:#A855F7;

box-shadow:0 30px 80px rgba(124,58,237,.35);

}

.problem-card .icon{

font-size:55px;

margin-bottom:20px;

}

.problem-card h3{

margin-bottom:15px;

font-size:24px;

}

.problem-card p{

line-height:1.8;

color:#BFBFD3;

}

/* ===========================================
LEARN SECTION
===========================================*/

.learn-section{

padding:120px 0;

}

.learn-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:60px;

}

.learn-card{

padding:40px;

background:linear-gradient(
180deg,
rgba(255,255,255,.06),
rgba(255,255,255,.03)
);

border-radius:30px;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.learn-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 70px rgba(168,85,247,.28);

}

.learn-card span{

display:inline-flex;

width:70px;

height:70px;

border-radius:50%;

justify-content:center;

align-items:center;

background:linear-gradient(
135deg,
#7C3AED,
#A855F7
);

font-size:26px;

font-weight:700;

margin-bottom:30px;

}

.learn-card h3{

font-size:28px;

margin-bottom:15px;

}

.learn-card p{

color:#BFBFD3;

line-height:1.8;

}

/* ===========================================
TIMELINE
===========================================*/

.timeline-section{

padding:120px 0;

}

.timeline{

max-width:900px;

margin:70px auto 0;

position:relative;

}

.timeline::before{

content:"";

position:absolute;

left:45px;

top:0;

width:3px;

height:100%;

background:#7C3AED;

}

.timeline-item{

display:flex;

gap:30px;

margin-bottom:50px;

align-items:flex-start;

}

.time{

min-width:90px;

height:90px;

display:flex;

justify-content:center;

align-items:center;

background:linear-gradient(
135deg,
#7C3AED,
#A855F7
);

border-radius:50%;

font-weight:700;

font-size:18px;

box-shadow:0 15px 40px rgba(124,58,237,.35);

z-index:2;

}

.timeline-item h3{

font-size:28px;

margin-bottom:10px;

}

.timeline-item p{

color:#BFBFD3;

line-height:1.8;

}

/* ===========================================
COACH
===========================================*/

.coach-section{

padding:120px 0;

}

.coach-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.coach-image img{

width:100%;

border-radius:35px;

box-shadow:0 30px 80px rgba(124,58,237,.35);

}

.coach-content span{

color:#F59E0B;

font-weight:600;

}

.coach-content h2{

font-size:60px;

margin:15px 0;

}

.coach-content p{

line-height:2;

color:#BFBFD3;

margin-bottom:30px;

}

.coach-content ul{

list-style:none;

display:grid;

gap:18px;

margin-bottom:40px;

}

.coach-content li{

font-size:18px;

}

/* ===========================================
BONUS
===========================================*/

.bonus-section{

padding:120px 0;

}

.bonus-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:60px;

}

.bonus-card{

padding:45px 30px;

background:rgba(255,255,255,.05);

border-radius:28px;

font-size:24px;

font-weight:600;

text-align:center;

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.bonus-card:hover{

transform:translateY(-10px);

background:linear-gradient(
135deg,
rgba(124,58,237,.30),
rgba(168,85,247,.15)
);

box-shadow:0 25px 70px rgba(124,58,237,.30);

}

/* ===========================================
COMMON HOVER
===========================================*/

.problem-card,
.learn-card,
.bonus-card,
.timeline-item{

transition:all .4s ease;

}

.primary-btn{

position:relative;

overflow:hidden;

}

.primary-btn::before{

content:"";

position:absolute;

left:-100%;

top:0;

width:100%;

height:100%;

background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,.35),
transparent
);

transition:1s;

}

.primary-btn:hover::before{

left:100%;

}
/* ==========================================
   TESTIMONIAL SECTION
========================================== */

.testimonial-section{

padding:120px 0;

position:relative;

}

.testimonial-slider{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:70px;

}

.testimonial-card{

background:rgba(255,255,255,.05);

padding:40px;

border-radius:30px;

backdrop-filter:blur(25px);

border:1px solid rgba(255,255,255,.08);

transition:.4s;

}

.testimonial-card:hover{

transform:translateY(-12px);

box-shadow:0 30px 80px rgba(124,58,237,.35);

}

.testimonial-card p{

margin:25px 0;

line-height:1.9;

color:#CFCFDD;

}

.testimonial-card h4{

font-size:22px;

}

/* ==========================================
   PRICING
========================================== */

.pricing-section{

padding:120px 0;

}

.pricing-card{

max-width:620px;

margin:auto;

background:linear-gradient(

180deg,

rgba(124,58,237,.25),

rgba(255,255,255,.05)

);

padding:60px;

border-radius:40px;

text-align:center;

border:2px solid rgba(255,255,255,.10);

position:relative;

overflow:hidden;

}

.offer{

display:inline-block;

padding:12px 24px;

border-radius:50px;

background:#F59E0B;

color:#000;

font-weight:700;

margin-bottom:30px;

animation:pulse 2s infinite;

}

.old-price{

text-decoration:line-through;

font-size:28px;

color:#999;

display:block;

margin-bottom:10px;

}

.price h1{

font-size:88px;

background:linear-gradient(

90deg,

#FFD54F,

#FFF8E1

);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

margin-bottom:30px;

}

.pricing-card ul{

list-style:none;

display:grid;

gap:18px;

margin:40px 0;

}

.buy-btn{

display:inline-block;

padding:20px 45px;

border-radius:60px;

background:linear-gradient(

135deg,

#7C3AED,

#A855F7

);

font-size:20px;

font-weight:700;

text-decoration:none;

color:#fff;

box-shadow:0 25px 70px rgba(124,58,237,.45);

transition:.4s;

}

.buy-btn:hover{

transform:translateY(-6px);

}

.secure{

margin-top:25px;

font-size:14px;

color:#ccc;

}

/* ==========================================
FAQ
========================================== */

.faq-section{

padding:120px 0;

}

.faq{

max-width:900px;

margin:70px auto 0;

display:grid;

gap:25px;

}

.faq-item{

padding:30px;

background:rgba(255,255,255,.05);

border-radius:24px;

cursor:pointer;

border:1px solid rgba(255,255,255,.08);

transition:.35s;

}

.faq-item:hover{

border-color:#A855F7;

}

.faq-item h3{

font-size:24px;

margin-bottom:15px;

}

.faq-item p{

color:#CFCFDD;

line-height:1.8;

}

/* ==========================================
CTA
========================================== */

.cta-section{

padding:140px 0;

text-align:center;

position:relative;

}

.cta-section h2{

font-size:64px;

max-width:900px;

margin:auto;

margin-bottom:25px;

}

.cta-section p{

max-width:700px;

margin:0 auto 45px;

font-size:20px;

color:#D1D1DD;

}

/* ==========================================
FOOTER
========================================== */

footer{

padding:90px 0 30px;

background:#090512;

margin-top:120px;

border-top:1px solid rgba(255,255,255,.08);

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr;

gap:50px;

margin-bottom:60px;

}

.footer-grid h3{

font-size:30px;

margin-bottom:18px;

}

.footer-grid h4{

margin-bottom:20px;

}

.footer-grid ul{

list-style:none;

display:grid;

gap:14px;

}

.footer-grid a{

color:#ccc;

text-decoration:none;

transition:.3s;

}

.footer-grid a:hover{

color:#fff;

}

.copyright{

text-align:center;

padding-top:30px;

border-top:1px solid rgba(255,255,255,.08);

color:#999;

}

/* ==========================================
ANIMATIONS
========================================== */

@keyframes pulse{

0%{

transform:scale(1);

}

50%{

transform:scale(1.08);

}

100%{

transform:scale(1);

}

}

.problem-card,

.learn-card,

.bonus-card,

.testimonial-card,

.pricing-card,

.faq-item{

animation:fadeUp .8s ease both;

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:translateY(0);

}

}

html{

scroll-behavior:smooth;

}
/* ==========================================================
   RESPONSIVE
========================================================== */

@media(max-width:1200px){

.hero h1{

font-size:58px;

}

.hero-grid{

gap:40px;

}

.coach-card{

width:100%;

}

.section-title h2{

font-size:48px;

}

}



@media(max-width:992px){

header{

padding:18px 0;

}

header .container{

flex-direction:column;

gap:20px;

}

nav{

flex-wrap:wrap;

justify-content:center;

}

.hero{

padding-top:180px;

}

.hero-grid{

grid-template-columns:1fr;

text-align:center;

}

.hero p{

margin:auto;

}

.hero-buttons{

justify-content:center;

flex-wrap:wrap;

}

.hero-features{

grid-template-columns:1fr 1fr;

}

.problems-grid,

.learn-grid,

.bonus-grid,

.testimonial-slider{

grid-template-columns:repeat(2,1fr);

}

.coach-grid{

grid-template-columns:1fr;

}

.footer-grid{

grid-template-columns:1fr;

text-align:center;

}

.timeline::before{

display:none;

}

.timeline-item{

flex-direction:column;

align-items:center;

text-align:center;

}

}



@media(max-width:768px){

.container{

width:92%;

}

.logo{

font-size:22px;

}

nav{

display:none;

}

.nav-btn{

padding:14px 22px;

}

.hero{

padding-top:150px;

padding-bottom:80px;

}

.hero h1{

font-size:42px;

line-height:1.2;

}

.hero p{

font-size:16px;

}

.price-box h2{

font-size:44px;

}

.hero-buttons{

flex-direction:column;

}

.primary-btn,

.secondary-btn{

width:100%;

text-align:center;

}

.countdown{

flex-wrap:wrap;

justify-content:center;

}

.countdown div{

min-width:80px;

padding:15px;

}

.hero-features{

grid-template-columns:1fr;

}

.image-placeholder{

width:180px;

height:180px;

}

.floating-card{

display:none;

}

.section-title{

margin-bottom:45px;

}

.section-title h2{

font-size:36px;

}

.problems-grid,

.learn-grid,

.bonus-grid,

.testimonial-slider,

.logos{

grid-template-columns:1fr;

}

.problem-card,

.learn-card,

.bonus-card,

.testimonial-card{

padding:28px;

}

.timeline-item{

margin-bottom:35px;

}

.time{

width:70px;

height:70px;

font-size:15px;

}

.coach-content h2{

font-size:40px;

}

.pricing-card{

padding:35px 25px;

}

.price h1{

font-size:64px;

}

.buy-btn{

width:100%;

}

.cta-section{

padding:80px 0;

}

.cta-section h2{

font-size:38px;

}

.footer-grid{

gap:35px;

}

}



@media(max-width:480px){

.hero h1{

font-size:34px;

}

.hero p{

font-size:15px;

}

.badge{

font-size:12px;

}

.price-box{

padding:18px;

}

.price-box h2{

font-size:38px;

}

.section-title h2{

font-size:30px;

}

.section-title p{

font-size:15px;

}

.problem-card h3,

.learn-card h3,

.testimonial-card h4{

font-size:22px;

}

.pricing-card{

border-radius:25px;

}

.offer{

font-size:13px;

padding:10px 18px;

}

.price h1{

font-size:52px;

}

.buy-btn{

font-size:18px;

padding:18px;

}

.cta-section h2{

font-size:32px;

}

.copyright{

font-size:13px;

}

}



/* ==============================
UTILITY CLASSES
============================== */

.text-center{

text-align:center;

}

.mt-30{

margin-top:30px;

}

.mt-50{

margin-top:50px;

}

.mb-30{

margin-bottom:30px;

}

.mb-50{

margin-bottom:50px;

}

.hidden{

display:none;

}

.shadow{

box-shadow:0 20px 60px rgba(124,58,237,.25);

}

.glass{

background:rgba(255,255,255,.05);

backdrop-filter:blur(20px);

border:1px solid rgba(255,255,255,.08);

border-radius:24px;

}

.gradient-text{

background:linear-gradient(90deg,#F59E0B,#FFD54F);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}



/* ==============================
SMOOTH ANIMATIONS
============================== */

html{

scroll-behavior:smooth;

}

body{

animation:pageLoad .8s ease;

}

@keyframes pageLoad{

from{

opacity:0;

transform:translateY(15px);

}

to{

opacity:1;

transform:translateY(0);

}

}

img{

max-width:100%;

display:block;

}

button,

a{

transition:all .35s ease;

}