/*==================================================
NeoGen Franchise Website V3
Author : NeoGen
Version : 1.0
==================================================*/


/*==================================================
GOOGLE FONT
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


/*==================================================
CSS VARIABLES
==================================================*/

:root{

--primary:#5B2C83;
--primary-dark:#35184E;
--primary-light:#F5EEFC;

--white:#ffffff;
--black:#111111;

--text:#333333;
--gray:#777777;

--bg:#FAF9FC;

--radius:22px;

--transition:.35s ease;

--shadow:0 15px 40px rgba(0,0,0,.08);

}


/*==================================================
RESET
==================================================*/

*{

margin:0;

padding:0;

box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;

font-size:16px;

font-weight:400;

color:var(--text);

background:#fff;

overflow-x:hidden;

line-height:1.7;

}

img{

display:block;

width:100%;

height:auto;

}

a{

text-decoration:none;

color:inherit;

transition:var(--transition);

}

ul{

list-style:none;

}

button{

font-family:inherit;

cursor:pointer;

border:none;

outline:none;

}

input,
textarea,
select{

font-family:inherit;

outline:none;

}


/*==================================================
CONTAINER
==================================================*/

.container{

width:100%;

max-width:1320px;

padding:0 20px;

margin:auto;

}


/*==================================================
SECTION
==================================================*/

section{

padding:110px 0;

position:relative;

}

.section-header{

max-width:760px;

margin:0 auto 70px;

text-align:center;

}

.section-tag{

display:inline-flex;

align-items:center;

justify-content:center;

padding:10px 24px;

background:var(--primary-light);

border-radius:50px;

font-size:14px;

font-weight:700;

letter-spacing:.8px;

color:var(--primary);

margin-bottom:20px;

}

.section-header h2{

font-size:54px;

font-weight:800;

line-height:1.15;

margin-bottom:20px;

color:var(--black);

}

.section-header h2 span{

color:var(--primary);

}

.section-header p{

font-size:18px;

line-height:32px;

color:var(--gray);

}


/*==================================================
BUTTONS
==================================================*/

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 36px;

background:var(--primary);

color:#fff;

font-size:16px;

font-weight:600;

border-radius:14px;

transition:var(--transition);

box-shadow:0 15px 35px rgba(91,44,131,.25);

}

.btn-primary:hover{

background:var(--primary-dark);

transform:translateY(-3px);

}

.btn-secondary{

display:inline-flex;

align-items:center;

justify-content:center;

gap:10px;

padding:18px 36px;

background:#fff;

color:var(--primary);

font-size:16px;

font-weight:600;

border-radius:14px;

transition:var(--transition);

box-shadow:var(--shadow);

}

.btn-secondary:hover{

transform:translateY(-3px);

background:var(--primary-light);

}


/*==================================================
COMMON CARD
==================================================*/

.why-card,
.service-card,
.investment-card,
.process-card,
.support-card,
.testimonial-card,
.trust-card{

background:#fff;

border-radius:22px;

box-shadow:var(--shadow);

transition:var(--transition);

}

.why-card:hover,
.service-card:hover,
.investment-card:hover,
.process-card:hover,
.support-card:hover,
.testimonial-card:hover,
.trust-card:hover{

transform:translateY(-8px);

}
/*==================================================
HEADER
==================================================*/

.header{

position:absolute;

top:0;

left:0;

width:100%;

padding:28px 0;

z-index:1000;

transition:var(--transition);

}

.header.scrolled{

position:fixed;

background:rgba(255,255,255,.96);

backdrop-filter:blur(18px);

box-shadow:0 10px 30px rgba(0,0,0,.08);

padding:18px 0;

}

.header.scrolled .call-button{

background:var(--primary);

color:#fff;

}

.navbar{

display:flex;

align-items:center;

justify-content:space-between;

}

.logo{

display:flex;

align-items:center;

}

.logo img{

height:60px;

width:auto;

transition:var(--transition);

}

.header.scrolled .logo img{

height:68px;

}

.header-action{

display:flex;

align-items:center;

}

.call-button{

display:flex;

align-items:center;

gap:12px;

padding:16px 30px;

border-radius:60px;

background:#fff;

color:var(--primary);

font-weight:600;

box-shadow:0 15px 35px rgba(0,0,0,.15);

transition:var(--transition);

}

.call-button:hover{

transform:translateY(-3px);

}

.call-button i{

font-size:18px;

}


/*==================================================
HERO
==================================================*/

.hero{
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 140px 0 120px;
    overflow: hidden;
}

.hero-background{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

object-fit:cover;

z-index:1;

}

.hero-overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

background:linear-gradient(90deg,
rgba(24,12,36,.88),
rgba(46,20,67,.72),
rgba(91,44,131,.38));

z-index:2;

}

.hero .container{

position:relative;

z-index:5;

}

.hero-wrapper{

display:grid;

grid-template-columns:1.2fr .8fr;

align-items:center;

gap:70px;

min-height:100vh;

}


/*==================================================
HERO CONTENT
==================================================*/

.hero-content{

color:#fff;

}

.hero-tag{

display:inline-flex;

padding:12px 24px;

background:rgba(255,255,255,.10);

border:1px solid rgba(255,255,255,.20);

backdrop-filter:blur(15px);

border-radius:50px;

font-size:14px;

font-weight:600;

margin-bottom:28px;

}

.hero-content h1{

font-size:72px;

font-weight:800;

line-height:1.05;

margin-bottom:28px;

letter-spacing:-1px;

}

.hero-content h1 span{

color:#D7B4FF;

}

.hero-content p{

font-size:21px;

line-height:38px;

color:rgba(255,255,255,.92);

max-width:650px;

margin-bottom:42px;

}

.hero-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

margin-bottom:55px;

}


/*==================================================
HERO STATS
==================================================*/

.hero-stats{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:22px;

max-width:700px;

}

.hero-stat{

padding:28px;

background:rgba(255,255,255,.10);

border:1px solid rgba(255,255,255,.15);

backdrop-filter:blur(15px);

border-radius:22px;

text-align:center;

}

.hero-stat h3{

font-size:42px;

font-weight:800;

color:#fff;

margin-bottom:6px;

}

.hero-stat span{

font-size:15px;

color:#fff;

}


/*==================================================
HERO FORM
==================================================*/

.hero-form{

background:rgba(255,255,255,.14);

backdrop-filter:blur(22px);

border:1px solid rgba(255,255,255,.18);

padding:42px;

border-radius:30px;

box-shadow:0 25px 60px rgba(0,0,0,.18);

}
.hero-form{
    margin-top: 40px;
}

.hero-form h2{

font-size:40px;

font-weight:800;

color:#fff;

margin-bottom:10px;

}

.hero-form p{

font-size:16px;

color:rgba(255,255,255,.90);

margin-bottom:28px;

}

.hero-form form{

display:flex;

flex-direction:column;

gap:18px;

}

.form-group{

width:100%;

}

.form-group input,
.form-group select,
.form-group textarea{

width:100%;

padding:17px 18px;

border:none;

border-radius:14px;

background:rgba(255,255,255,.18);

color:#fff;

font-size:15px;

}

.form-group input::placeholder,
.form-group textarea::placeholder{

color:rgba(255,255,255,.82);

}

.form-group textarea{

height:130px;

resize:none;

}

.form-group select{

appearance:none;

}

.form-group option{

color:#333;

}

.form-submit{

width:100%;

height:58px;

background:#fff;

color:var(--primary);

border-radius:14px;

font-size:17px;

font-weight:700;

transition:var(--transition);

}

.form-submit:hover{

background:var(--primary);

color:#fff;

}
/*==================================================
TRUST SECTION
==================================================*/

.trust-section{

background:#ffffff;

padding:0 0 110px;

margin-top:-80px;

position:relative;

z-index:20;

}

.trust-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.trust-card{

padding:40px 30px;

text-align:center;

}

.trust-card i{

width:85px;

height:85px;

margin:0 auto 22px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary-light);

color:var(--primary);

font-size:34px;

}

.trust-card h3{

font-size:42px;

font-weight:800;

color:var(--primary);

margin-bottom:8px;

}

.trust-card p{

font-size:17px;

color:var(--gray);

}


/*==================================================
WHY SECTION
==================================================*/

.why-section{

background:var(--bg);

}

.why-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.why-card{

padding:40px 32px;

text-align:center;

}

.why-icon{

width:90px;

height:90px;

margin:0 auto 25px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:linear-gradient(135deg,var(--primary),#7A43AE);

color:#fff;

font-size:34px;

}

.why-card h3{

font-size:26px;

font-weight:700;

margin-bottom:16px;

color:var(--black);

}

.why-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
SERVICES
==================================================*/

.services-section{

background:#fff;

}

.services-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:32px;

}

.service-card{

overflow:hidden;

padding:0;

}

.service-card img{

height:250px;

object-fit:cover;

transition:var(--transition);

}

.service-card:hover img{

transform:scale(1.08);

}

.service-content{

padding:30px;

}

.service-content h3{

font-size:28px;

font-weight:700;

margin-bottom:16px;

color:var(--black);

}

.service-content p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
INVESTMENT
==================================================*/

.investment-section{

background:var(--bg);

}

.investment-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.investment-image img{

border-radius:28px;

box-shadow:0 30px 70px rgba(0,0,0,.10);

}

.investment-content h2{

font-size:52px;

font-weight:800;

line-height:1.15;

margin:18px 0 22px;

color:var(--black);

}

.investment-content h2 span{

color:var(--primary);

}

.investment-content p{

font-size:18px;

line-height:34px;

color:var(--gray);

margin-bottom:35px;

}

.investment-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:24px;

margin-bottom:40px;

}

.investment-card{

padding:30px;

text-align:center;

}

.investment-card i{

font-size:34px;

color:var(--primary);

margin-bottom:18px;

}

.investment-card h4{

font-size:17px;

font-weight:600;

color:var(--gray);

margin-bottom:10px;

}

.investment-card h3{

font-size:30px;

font-weight:800;

color:var(--primary);

}
/*==================================================
PROCESS SECTION
==================================================*/

.process-section{

background:#ffffff;

}

.process-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.process-card{

position:relative;

padding:45px 35px;

text-align:center;

overflow:hidden;

}

.process-number{

position:absolute;

top:20px;

right:25px;

font-size:60px;

font-weight:800;

color:#F1EBF8;

line-height:1;

}

.process-card i{

width:90px;

height:90px;

margin:0 auto 25px;

display:flex;

align-items:center;

justify-content:center;

background:var(--primary-light);

color:var(--primary);

border-radius:50%;

font-size:36px;

}

.process-card h3{

font-size:26px;

font-weight:700;

margin-bottom:18px;

color:var(--black);

}

.process-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
SUPPORT SECTION
==================================================*/

.support-section{

background:var(--bg);

}

.support-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:28px;

}

.support-card{

padding:35px 28px;

text-align:center;

}

.support-card i{

width:82px;

height:82px;

margin:0 auto 22px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary-light);

color:var(--primary);

font-size:32px;

}

.support-card h3{

font-size:22px;

font-weight:700;

margin-bottom:15px;

color:var(--black);

}

.support-card p{

font-size:15px;

line-height:28px;

color:var(--gray);

}


/*==================================================
ROI SECTION
==================================================*/

.roi-section{

background:#ffffff;

}

.roi-wrapper{

display:grid;

grid-template-columns:1.1fr .9fr;

gap:70px;

align-items:center;

}

.roi-content h2{

font-size:52px;

font-weight:800;

line-height:1.15;

margin:18px 0 25px;

}

.roi-content h2 span{

color:var(--primary);

}

.roi-content p{

font-size:18px;

line-height:34px;

color:var(--gray);

margin-bottom:35px;

}

.roi-list{

display:flex;

flex-direction:column;

gap:18px;

}

.roi-list li{

display:flex;

align-items:center;

gap:14px;

font-size:17px;

font-weight:500;

color:var(--text);

}

.roi-list i{

color:var(--primary);

font-size:20px;

}

.roi-card{

padding:45px;

background:#fff;

border-radius:26px;

box-shadow:var(--shadow);

display:grid;

grid-template-columns:repeat(2,1fr);

gap:22px;

}

.roi-box{

padding:28px;

border-radius:18px;

background:var(--primary-light);

text-align:center;

}

.roi-box h4{

font-size:16px;

font-weight:600;

color:var(--gray);

margin-bottom:10px;

}

.roi-box h3{

font-size:28px;

font-weight:800;

color:var(--primary);

}

.roi-card .btn-primary{

grid-column:1/-1;

margin-top:10px;

}


/*==================================================
GALLERY SECTION
==================================================*/

.gallery-section{

background:var(--bg);

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

grid-auto-rows:260px;

gap:22px;

}

.gallery-item{

overflow:hidden;

border-radius:24px;

box-shadow:var(--shadow);

}

.gallery-large{

grid-row:span 2;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.gallery-item:hover img{

transform:scale(1.08);

}
/*==================================================
TESTIMONIAL SECTION
==================================================*/

.testimonial-section{

background:#ffffff;

}

.rating-box{

max-width:620px;

margin:0 auto 70px;

padding:28px 35px;

background:#fff;

border-radius:24px;

box-shadow:var(--shadow);

display:flex;

align-items:center;

gap:25px;

}

.rating-score{

width:100px;

height:100px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary);

color:#fff;

font-size:34px;

font-weight:800;

flex-shrink:0;

}

.rating-content h3{

font-size:28px;

font-weight:700;

margin-bottom:8px;

color:var(--black);

}

.rating-content p{

font-size:16px;

line-height:28px;

color:var(--gray);

}

.testimonial-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.testimonial-card{

padding:35px;

}

.testimonial-icon{

font-size:34px;

color:var(--primary);

margin-bottom:20px;

}

.testimonial-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

margin-bottom:28px;

}

.testimonial-user{

display:flex;

align-items:center;

gap:15px;

}

.testimonial-user img{

width:65px;

height:65px;

border-radius:50%;

object-fit:cover;

}

.testimonial-user h4{

font-size:18px;

font-weight:700;

margin-bottom:4px;

color:var(--black);

}

.testimonial-user span{

font-size:15px;

color:var(--gray);

}


/*==================================================
FAQ SECTION
==================================================*/

.faq-section{

background:var(--bg);

}

.faq-list{

max-width:900px;

margin:auto;

}

.faq-item{

background:#fff;

border-radius:20px;

margin-bottom:20px;

overflow:hidden;

box-shadow:var(--shadow);

}

.faq-question{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:26px 30px;

background:#fff;

font-size:18px;

font-weight:600;

color:var(--black);

}

.faq-question i{

font-size:20px;

color:var(--primary);

transition:var(--transition);

}

.faq-answer{

display:none;

padding:0 30px 28px;

}

.faq-answer p{

font-size:16px;

line-height:30px;

color:var(--gray);

}

.faq-item.active .faq-answer{

display:block;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

}


/*==================================================
FINAL CTA
==================================================*/

.cta-section{

background:#fff;

}

.cta-box{

padding:90px 60px;

border-radius:30px;

background:linear-gradient(135deg,var(--primary-dark),var(--primary));

text-align:center;

color:#fff;

position:relative;

overflow:hidden;

}

.cta-box::before{

content:"";

position:absolute;

width:380px;

height:380px;

border-radius:50%;

background:rgba(255,255,255,.05);

top:-160px;

right:-120px;

}

.cta-box::after{

content:"";

position:absolute;

width:300px;

height:300px;

border-radius:50%;

background:rgba(255,255,255,.05);

left:-120px;

bottom:-150px;

}

.cta-box>*{

position:relative;

z-index:2;

}

.cta-box .section-tag{

background:rgba(255,255,255,.12);

color:#fff;

}

.cta-box h2{

font-size:54px;

font-weight:800;

line-height:1.15;

margin:22px 0;

}

.cta-box h2 span{

color:#DCC7FA;

}

.cta-box p{

max-width:760px;

margin:0 auto 40px;

font-size:19px;

line-height:34px;

color:rgba(255,255,255,.92);

}

.cta-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.cta-buttons .btn-secondary{

background:#fff;

color:var(--primary);

}
/*==================================================
FOOTER
==================================================*/

.footer{

background:#1F1230;

padding:90px 0 30px;

color:#fff;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:45px;

margin-bottom:50px;

}

.footer-logo{

width:190px;

height:auto;

margin-bottom:25px;

}

.footer-about p{

font-size:16px;

line-height:30px;

color:rgba(255,255,255,.75);

margin-bottom:25px;

}

.footer-column h3{

font-size:22px;

font-weight:700;

margin-bottom:22px;

color:#fff;

}

.footer-column p{

font-size:15px;

line-height:28px;

color:rgba(255,255,255,.75);

}

.footer-column ul{

display:flex;

flex-direction:column;

gap:16px;

}

.footer-column ul li{

display:flex;

align-items:flex-start;

gap:12px;

font-size:15px;

line-height:26px;

color:rgba(255,255,255,.75);

}

.footer-column ul li i{

color:#D7B4FF;

width:20px;

margin-top:4px;

}

.footer-social{

display:flex;

gap:15px;

}

.footer-social a{

width:46px;

height:46px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.08);

border-radius:50%;

color:#fff;

transition:var(--transition);

}

.footer-social a:hover{

background:var(--primary);

transform:translateY(-4px);

}

.footer-bottom{

padding-top:30px;

border-top:1px solid rgba(255,255,255,.10);

text-align:center;

}

.footer-bottom p{

font-size:15px;

color:rgba(255,255,255,.65);

}


/*==================================================
RESPONSIVE
==================================================*/

@media (max-width:1280px){

.hero-content h1{

font-size:60px;

}

.section-header h2{

font-size:46px;

}

.support-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media (max-width:992px){

.header{

padding:18px 0;

}

.logo img{

height:65px;

}

.hero{

height:auto;

padding:170px 0 100px;

min-height:auto;

}

.hero-wrapper{

grid-template-columns:1fr;

gap:50px;

}

.hero-content{

text-align:center;

}

.hero-content p{

margin-left:auto;

margin-right:auto;

}

.hero-buttons{

justify-content:center;

}

.hero-stats{

max-width:100%;

}

.trust-grid,
.why-grid,
.services-grid,
.process-grid,
.testimonial-grid{

grid-template-columns:repeat(2,1fr);

}

.investment-wrapper,
.roi-wrapper{

grid-template-columns:1fr;

}

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

.gallery-large{

grid-row:span 1;

}

.footer-grid{

grid-template-columns:repeat(2,1fr);

}

.cta-box{

padding:70px 35px;

}

.cta-box h2{

font-size:42px;

}

}

@media (max-width:768px){

.video-grid{

    grid-template-columns:1fr;
    .video-card{

border-radius:18px;

}

.video-btn{

margin-top:35px;

}

}

section{

padding:80px 0;

}

.header-action{

display:none;

}

.section-header{

margin-bottom:50px;

}

.section-header h2{

font-size:34px;

}

.section-header p{

font-size:16px;

line-height:30px;

}

.hero-content h1{

font-size:42px;

}

.hero-content p{

font-size:17px;

line-height:30px;

}

.hero-stats{

grid-template-columns:1fr;

}

.trust-grid,
.why-grid,
.services-grid,
.process-grid,
.support-grid,
.testimonial-grid,
.gallery-grid{

grid-template-columns:1fr;

}

.investment-grid{

grid-template-columns:1fr;

}

.roi-card{

grid-template-columns:1fr;

padding:30px;

}

.rating-box{

flex-direction:column;

text-align:center;

}

.cta-box{

padding:55px 25px;

}

.cta-box h2{

font-size:34px;

}

.cta-buttons{

flex-direction:column;

}

.cta-buttons a{

width:100%;

}

.footer-grid{

grid-template-columns:1fr;

gap:35px;

}

}

@media (max-width:576px){

.container{

padding:0 16px;

}

.hero-form{

padding:28px;

}

.hero-form h2{

font-size:30px;

}

.call-button{

padding:14px 20px;

font-size:14px;

}

.logo img{

height:55px;

}

.hero-tag{

font-size:13px;

padding:10px 18px;

}

.btn-primary,
.btn-secondary{

width:100%;

justify-content:center;

}

.footer{

padding-top:70px;

}

}
/*==================================================
VIDEO SECTION
==================================================*/

.video-section{

    background:#fff;

}

.video-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

    margin-top:60px;

}

.video-card{

    overflow:hidden;

    border-radius:24px;

    background:#fff;

    box-shadow:0 20px 45px rgba(0,0,0,.08);

    transition:.35s;

}

.video-card:hover{

    transform:translateY(-8px);

}
.video-card:hover iframe{

transform:scale(1.03);

transition:.4s;

}

.video-card iframe{

    width:100%;

    aspect-ratio:16/9;

    border:0;

    display:block;
    transition:.4s;

}

.video-btn{

    text-align:center;

    margin-top:50px;

}
.video-btn .btn-primary{

display:inline-flex;

align-items:center;

gap:12px;

padding:18px 34px;

}

.video-btn .btn-primary i{

font-size:22px;

}
.video-btn .btn-primary{

display:inline-flex;

align-items:center;

gap:12px;

padding:18px 34px;

}

.video-btn .btn-primary i{

font-size:22px;

}
/*==================================================
NeoGen Franchise Website V3
Author : NeoGen
Version : 1.0
==================================================*/


/*==================================================
GOOGLE FONT
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


/*==================================================
CSS VARIABLES
==================================================*/

:root{

--primary:#5B2C83;
--primary-dark:#35184E;
--primary-light:#F5EEFC;

--white:#ffffff;
--black:#111111;

--text:#333333;
--gray:#777777;

--bg:#FAF9FC;

--radius:22px;

--transition:.35s ease;

--shadow:0 15px 40px rgba(0,0,0,.08);

}


/*==================================================
RESET
==================================================*/

*{

margin:0;

padding:0;

box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;

font-size:16px;

font-weight:400;

color:var(--text);

background:#fff;

overflow-x:hidden;

line-height:1.7;

}

img{

display:block;

width:100%;

height:auto;

}

a{

text-decoration:none;

color:inherit;

transition:var(--transition);

}

ul{

list-style:none;

}

button{

font-family:inherit;

cursor:pointer;

border:none;

outline:none;

}

input,
textarea,
select{

font-family:inherit;

outline:none;

}


/*==================================================
CONTAINER
==================================================*/

.container{

width:100%;

max-width:1320px;

padding:0 20px;

margin:auto;

}


/*==================================================
SECTION
==================================================*/

section{

padding:110px 0;

position:relative;

}

.section-header{

max-width:760px;

margin:0 auto 70px;

text-align:center;

}

.section-tag{

display:inline-flex;

align-items:center;

justify-content:center;

padding:10px 24px;

background:var(--primary-light);

border-radius:50px;

font-size:14px;

font-weight:700;

letter-spacing:.8px;

color:var(--primary);

margin-bottom:20px;

}

.section-header h2{

font-size:54px;

font-weight:800;

line-height:1.15;

margin-bottom:20px;

color:var(--black);

}

.section-header h2 span{

color:var(--primary);

}

.section-header p{

font-size:18px;

line-height:32px;

color:var(--gray);

}


/*==================================================
BUTTONS
==================================================*/

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 36px;

background:var(--primary);

color:#fff;

font-size:16px;

font-weight:600;

border-radius:14px;

transition:var(--transition);

box-shadow:0 15px 35px rgba(91,44,131,.25);

}

.btn-primary:hover{

background:var(--primary-dark);

transform:translateY(-3px);

}

.btn-secondary{

display:inline-flex;

align-items:center;

justify-content:center;

gap:10px;

padding:18px 36px;

background:#fff;

color:var(--primary);

font-size:16px;

font-weight:600;

border-radius:14px;

transition:var(--transition);

box-shadow:var(--shadow);

}

.btn-secondary:hover{

transform:translateY(-3px);

background:var(--primary-light);

}


/*==================================================
COMMON CARD
==================================================*/

.why-card,
.service-card,
.investment-card,
.process-card,
.support-card,
.testimonial-card,
.trust-card{

background:#fff;

border-radius:22px;

box-shadow:var(--shadow);

transition:var(--transition);

}

.why-card:hover,
.service-card:hover,
.investment-card:hover,
.process-card:hover,
.support-card:hover,
.testimonial-card:hover,
.trust-card:hover{

transform:translateY(-8px);

}
/*==================================================
HEADER
==================================================*/

.header{

position:absolute;

top:0;

left:0;

width:100%;

padding:28px 0;

z-index:1000;

transition:var(--transition);

}

.header.scrolled{

position:fixed;

background:rgba(255,255,255,.96);

backdrop-filter:blur(18px);

box-shadow:0 10px 30px rgba(0,0,0,.08);

padding:18px 0;

}

.header.scrolled .call-button{

background:var(--primary);

color:#fff;

}

.navbar{

display:flex;

align-items:center;

justify-content:space-between;

}

.logo{

display:flex;

align-items:center;

}

.logo img{

height:60px;

width:auto;

transition:var(--transition);

}

.header.scrolled .logo img{

height:68px;

}

.header-action{

display:flex;

align-items:center;

}

.call-button{

display:flex;

align-items:center;

gap:12px;

padding:16px 30px;

border-radius:60px;

background:#fff;

color:var(--primary);

font-weight:600;

box-shadow:0 15px 35px rgba(0,0,0,.15);

transition:var(--transition);

}

.call-button:hover{

transform:translateY(-3px);

}

.call-button i{

font-size:18px;

}


/*==================================================
HERO
==================================================*/

.hero{
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding: 140px 0 120px;
    overflow: hidden;
}

.hero-background{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

object-fit:cover;

z-index:1;

}

.hero-overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

background:linear-gradient(90deg,
rgba(24,12,36,.88),
rgba(46,20,67,.72),
rgba(91,44,131,.38));

z-index:2;

}

.hero .container{

position:relative;

z-index:5;

}

.hero-wrapper{

display:grid;

grid-template-columns:1.2fr .8fr;

align-items:center;

gap:70px;

min-height:100vh;

}


/*==================================================
HERO CONTENT
==================================================*/

.hero-content{

color:#fff;

}

.hero-tag{

display:inline-flex;

padding:12px 24px;

background:rgba(255,255,255,.10);

border:1px solid rgba(255,255,255,.20);

backdrop-filter:blur(15px);

border-radius:50px;

font-size:14px;

font-weight:600;

margin-bottom:28px;

}

.hero-content h1{

font-size:72px;

font-weight:800;

line-height:1.05;

margin-bottom:28px;

letter-spacing:-1px;

}

.hero-content h1 span{

color:#D7B4FF;

}

.hero-content p{

font-size:21px;

line-height:38px;

color:rgba(255,255,255,.92);

max-width:650px;

margin-bottom:42px;

}

.hero-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

margin-bottom:55px;

}


/*==================================================
HERO STATS
==================================================*/

.hero-stats{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:22px;

max-width:700px;

}

.hero-stat{

padding:28px;

background:rgba(255,255,255,.10);

border:1px solid rgba(255,255,255,.15);

backdrop-filter:blur(15px);

border-radius:22px;

text-align:center;

}

.hero-stat h3{

font-size:42px;

font-weight:800;

color:#fff;

margin-bottom:6px;

}

.hero-stat span{

font-size:15px;

color:#fff;

}


/*==================================================
HERO FORM
==================================================*/

.hero-form{

background:rgba(255,255,255,.14);

backdrop-filter:blur(22px);

border:1px solid rgba(255,255,255,.18);

padding:42px;

border-radius:30px;

box-shadow:0 25px 60px rgba(0,0,0,.18);

}
.hero-form{
    margin-top: 40px;
}

.hero-form h2{

font-size:40px;

font-weight:800;

color:#fff;

margin-bottom:10px;

}

.hero-form p{

font-size:16px;

color:rgba(255,255,255,.90);

margin-bottom:28px;

}

.hero-form form{

display:flex;

flex-direction:column;

gap:18px;

}

.form-group{

width:100%;

}

.form-group input,
.form-group select,
.form-group textarea{

width:100%;

padding:17px 18px;

border:none;

border-radius:14px;

background:rgba(255,255,255,.18);

color:#fff;

font-size:15px;

}

.form-group input::placeholder,
.form-group textarea::placeholder{

color:rgba(255,255,255,.82);

}

.form-group textarea{

height:130px;

resize:none;

}

.form-group select{

appearance:none;

}

.form-group option{

color:#333;

}

.form-submit{

width:100%;

height:58px;

background:#fff;

color:var(--primary);

border-radius:14px;

font-size:17px;

font-weight:700;

transition:var(--transition);

}

.form-submit:hover{

background:var(--primary);

color:#fff;

}
/*==================================================
TRUST SECTION
==================================================*/

.trust-section{

background:#ffffff;

padding:0 0 110px;

margin-top:-80px;

position:relative;

z-index:20;

}

.trust-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.trust-card{

padding:40px 30px;

text-align:center;

}

.trust-card i{

width:85px;

height:85px;

margin:0 auto 22px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary-light);

color:var(--primary);

font-size:34px;

}

.trust-card h3{

font-size:42px;

font-weight:800;

color:var(--primary);

margin-bottom:8px;

}

.trust-card p{

font-size:17px;

color:var(--gray);

}


/*==================================================
WHY SECTION
==================================================*/

.why-section{

background:var(--bg);

}

.why-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.why-card{

padding:40px 32px;

text-align:center;

}

.why-icon{

width:90px;

height:90px;

margin:0 auto 25px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:linear-gradient(135deg,var(--primary),#7A43AE);

color:#fff;

font-size:34px;

}

.why-card h3{

font-size:26px;

font-weight:700;

margin-bottom:16px;

color:var(--black);

}

.why-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
SERVICES
==================================================*/

.services-section{

background:#fff;

}

.services-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:32px;

}

.service-card{

overflow:hidden;

padding:0;

}

.service-card img{

height:250px;

object-fit:cover;

transition:var(--transition);

}

.service-card:hover img{

transform:scale(1.08);

}

.service-content{

padding:30px;

}

.service-content h3{

font-size:28px;

font-weight:700;

margin-bottom:16px;

color:var(--black);

}

.service-content p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
INVESTMENT
==================================================*/

.investment-section{

background:var(--bg);

}

.investment-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.investment-image img{

border-radius:28px;

box-shadow:0 30px 70px rgba(0,0,0,.10);

}

.investment-content h2{

font-size:52px;

font-weight:800;

line-height:1.15;

margin:18px 0 22px;

color:var(--black);

}

.investment-content h2 span{

color:var(--primary);

}

.investment-content p{

font-size:18px;

line-height:34px;

color:var(--gray);

margin-bottom:35px;

}

.investment-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:24px;

margin-bottom:40px;

}

.investment-card{

padding:30px;

text-align:center;

}

.investment-card i{

font-size:34px;

color:var(--primary);

margin-bottom:18px;

}

.investment-card h4{

font-size:17px;

font-weight:600;

color:var(--gray);

margin-bottom:10px;

}

.investment-card h3{

font-size:30px;

font-weight:800;

color:var(--primary);

}
/*==================================================
PROCESS SECTION
==================================================*/

.process-section{

background:#ffffff;

}

.process-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.process-card{

position:relative;

padding:45px 35px;

text-align:center;

overflow:hidden;

}

.process-number{

position:absolute;

top:20px;

right:25px;

font-size:60px;

font-weight:800;

color:#F1EBF8;

line-height:1;

}

.process-card i{

width:90px;

height:90px;

margin:0 auto 25px;

display:flex;

align-items:center;

justify-content:center;

background:var(--primary-light);

color:var(--primary);

border-radius:50%;

font-size:36px;

}

.process-card h3{

font-size:26px;

font-weight:700;

margin-bottom:18px;

color:var(--black);

}

.process-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

}


/*==================================================
SUPPORT SECTION
==================================================*/

.support-section{

background:var(--bg);

}

.support-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:28px;

}

.support-card{

padding:35px 28px;

text-align:center;

}

.support-card i{

width:82px;

height:82px;

margin:0 auto 22px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary-light);

color:var(--primary);

font-size:32px;

}

.support-card h3{

font-size:22px;

font-weight:700;

margin-bottom:15px;

color:var(--black);

}

.support-card p{

font-size:15px;

line-height:28px;

color:var(--gray);

}


/*==================================================
ROI SECTION
==================================================*/

.roi-section{

background:#ffffff;

}

.roi-wrapper{

display:grid;

grid-template-columns:1.1fr .9fr;

gap:70px;

align-items:center;

}

.roi-content h2{

font-size:52px;

font-weight:800;

line-height:1.15;

margin:18px 0 25px;

}

.roi-content h2 span{

color:var(--primary);

}

.roi-content p{

font-size:18px;

line-height:34px;

color:var(--gray);

margin-bottom:35px;

}

.roi-list{

display:flex;

flex-direction:column;

gap:18px;

}

.roi-list li{

display:flex;

align-items:center;

gap:14px;

font-size:17px;

font-weight:500;

color:var(--text);

}

.roi-list i{

color:var(--primary);

font-size:20px;

}

.roi-card{

padding:45px;

background:#fff;

border-radius:26px;

box-shadow:var(--shadow);

display:grid;

grid-template-columns:repeat(2,1fr);

gap:22px;

}

.roi-box{

padding:28px;

border-radius:18px;

background:var(--primary-light);

text-align:center;

}

.roi-box h4{

font-size:16px;

font-weight:600;

color:var(--gray);

margin-bottom:10px;

}

.roi-box h3{

font-size:28px;

font-weight:800;

color:var(--primary);

}

.roi-card .btn-primary{

grid-column:1/-1;

margin-top:10px;

}


/*==================================================
GALLERY SECTION
==================================================*/

.gallery-section{

background:var(--bg);

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

grid-auto-rows:260px;

gap:22px;

}

.gallery-item{

overflow:hidden;

border-radius:24px;

box-shadow:var(--shadow);

}

.gallery-large{

grid-row:span 2;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.gallery-item:hover img{

transform:scale(1.08);

}
/*==================================================
TESTIMONIAL SECTION
==================================================*/

.testimonial-section{

background:#ffffff;

}

.rating-box{

max-width:620px;

margin:0 auto 70px;

padding:28px 35px;

background:#fff;

border-radius:24px;

box-shadow:var(--shadow);

display:flex;

align-items:center;

gap:25px;

}

.rating-score{

width:100px;

height:100px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:var(--primary);

color:#fff;

font-size:34px;

font-weight:800;

flex-shrink:0;

}

.rating-content h3{

font-size:28px;

font-weight:700;

margin-bottom:8px;

color:var(--black);

}

.rating-content p{

font-size:16px;

line-height:28px;

color:var(--gray);

}

.testimonial-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.testimonial-card{

padding:35px;

}

.testimonial-icon{

font-size:34px;

color:var(--primary);

margin-bottom:20px;

}

.testimonial-card p{

font-size:16px;

line-height:30px;

color:var(--gray);

margin-bottom:28px;

}

.testimonial-user{

display:flex;

align-items:center;

gap:15px;

}

.testimonial-user img{

width:65px;

height:65px;

border-radius:50%;

object-fit:cover;

}

.testimonial-user h4{

font-size:18px;

font-weight:700;

margin-bottom:4px;

color:var(--black);

}

.testimonial-user span{

font-size:15px;

color:var(--gray);

}


/*==================================================
FAQ SECTION
==================================================*/

.faq-section{

background:var(--bg);

}

.faq-list{

max-width:900px;

margin:auto;

}

.faq-item{

background:#fff;

border-radius:20px;

margin-bottom:20px;

overflow:hidden;

box-shadow:var(--shadow);

}

.faq-question{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:26px 30px;

background:#fff;

font-size:18px;

font-weight:600;

color:var(--black);

}

.faq-question i{

font-size:20px;

color:var(--primary);

transition:var(--transition);

}

.faq-answer{

display:none;

padding:0 30px 28px;

}

.faq-answer p{

font-size:16px;

line-height:30px;

color:var(--gray);

}

.faq-item.active .faq-answer{

display:block;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

}


/*==================================================
FINAL CTA
==================================================*/

.cta-section{

background:#fff;

}

.cta-box{

padding:90px 60px;

border-radius:30px;

background:linear-gradient(135deg,var(--primary-dark),var(--primary));

text-align:center;

color:#fff;

position:relative;

overflow:hidden;

}

.cta-box::before{

content:"";

position:absolute;

width:380px;

height:380px;

border-radius:50%;

background:rgba(255,255,255,.05);

top:-160px;

right:-120px;

}

.cta-box::after{

content:"";

position:absolute;

width:300px;

height:300px;

border-radius:50%;

background:rgba(255,255,255,.05);

left:-120px;

bottom:-150px;

}

.cta-box>*{

position:relative;

z-index:2;

}

.cta-box .section-tag{

background:rgba(255,255,255,.12);

color:#fff;

}

.cta-box h2{

font-size:54px;

font-weight:800;

line-height:1.15;

margin:22px 0;

}

.cta-box h2 span{

color:#DCC7FA;

}

.cta-box p{

max-width:760px;

margin:0 auto 40px;

font-size:19px;

line-height:34px;

color:rgba(255,255,255,.92);

}

.cta-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.cta-buttons .btn-secondary{

background:#fff;

color:var(--primary);

}
/*==================================================
FOOTER
==================================================*/

.footer{

background:#1F1230;

padding:90px 0 30px;

color:#fff;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:45px;

margin-bottom:50px;

}

.footer-logo{

width:190px;

height:auto;

margin-bottom:25px;

}

.footer-about p{

font-size:16px;

line-height:30px;

color:rgba(255,255,255,.75);

margin-bottom:25px;

}

.footer-column h3{

font-size:22px;

font-weight:700;

margin-bottom:22px;

color:#fff;

}

.footer-column p{

font-size:15px;

line-height:28px;

color:rgba(255,255,255,.75);

}

.footer-column ul{

display:flex;

flex-direction:column;

gap:16px;

}

.footer-column ul li{

display:flex;

align-items:flex-start;

gap:12px;

font-size:15px;

line-height:26px;

color:rgba(255,255,255,.75);

}

.footer-column ul li i{

color:#D7B4FF;

width:20px;

margin-top:4px;

}

.footer-social{

display:flex;

gap:15px;

}

.footer-social a{

width:46px;

height:46px;

display:flex;

align-items:center;

justify-content:center;

background:rgba(255,255,255,.08);

border-radius:50%;

color:#fff;

transition:var(--transition);

}

.footer-social a:hover{

background:var(--primary);

transform:translateY(-4px);

}

.footer-bottom{

padding-top:30px;

border-top:1px solid rgba(255,255,255,.10);

text-align:center;

}

.footer-bottom p{

font-size:15px;

color:rgba(255,255,255,.65);

}


/*==================================================
RESPONSIVE
==================================================*/

@media (max-width:1280px){

.hero-content h1{

font-size:60px;

}

.section-header h2{

font-size:46px;

}

.support-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media (max-width:992px){

.header{

padding:18px 0;

}

.logo img{

height:65px;

}

.hero{

height:auto;

padding:170px 0 100px;

min-height:auto;

}

.hero-wrapper{

grid-template-columns:1fr;

gap:50px;

}

.hero-content{

text-align:center;

}

.hero-content p{

margin-left:auto;

margin-right:auto;

}

.hero-buttons{

justify-content:center;

}

.hero-stats{

max-width:100%;

}

.trust-grid,
.why-grid,
.services-grid,
.process-grid,
.testimonial-grid{

grid-template-columns:repeat(2,1fr);

}

.investment-wrapper,
.roi-wrapper{

grid-template-columns:1fr;

}

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

.gallery-large{

grid-row:span 1;

}

.footer-grid{

grid-template-columns:repeat(2,1fr);

}

.cta-box{

padding:70px 35px;

}

.cta-box h2{

font-size:42px;

}

}

@media (max-width:768px){

.video-grid{

    grid-template-columns:1fr;
    .video-card{

border-radius:18px;

}

.video-btn{

margin-top:35px;

}

}

section{

padding:80px 0;

}

.header-action{

display:none;

}

.section-header{

margin-bottom:50px;

}

.section-header h2{

font-size:34px;

}

.section-header p{

font-size:16px;

line-height:30px;

}

.hero-content h1{

font-size:42px;

}

.hero-content p{

font-size:17px;

line-height:30px;

}

.hero-stats{

grid-template-columns:1fr;

}

.trust-grid,
.why-grid,
.services-grid,
.process-grid,
.support-grid,
.testimonial-grid,
.gallery-grid{

grid-template-columns:1fr;

}

.investment-grid{

grid-template-columns:1fr;

}

.roi-card{

grid-template-columns:1fr;

padding:30px;

}

.rating-box{

flex-direction:column;

text-align:center;

}

.cta-box{

padding:55px 25px;

}

.cta-box h2{

font-size:34px;

}

.cta-buttons{

flex-direction:column;

}

.cta-buttons a{

width:100%;

}

.footer-grid{

grid-template-columns:1fr;

gap:35px;

}

}

@media (max-width:576px){

.container{

padding:0 16px;

}

.hero-form{

padding:28px;

}

.hero-form h2{

font-size:30px;

}

.call-button{

padding:14px 20px;

font-size:14px;

}

.logo img{

height:55px;

}

.hero-tag{

font-size:13px;

padding:10px 18px;

}

.btn-primary,
.btn-secondary{

width:100%;

justify-content:center;

}

.footer{

padding-top:70px;

}

}
/*==================================================
VIDEO SECTION
==================================================*/

.video-section{

    background:#fff;

}

.video-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

    margin-top:60px;

}

.video-card{

    overflow:hidden;

    border-radius:24px;

    background:#fff;

    box-shadow:0 20px 45px rgba(0,0,0,.08);

    transition:.35s;

}

.video-card:hover{

    transform:translateY(-8px);

}
.video-card:hover iframe{

transform:scale(1.03);

transition:.4s;

}

.video-card iframe{

    width:100%;

    aspect-ratio:16/9;

    border:0;

    display:block;
    transition:.4s;

}

.video-btn{

    text-align:center;

    margin-top:50px;

}
.video-btn .btn-primary{

display:inline-flex;

align-items:center;

gap:12px;

padding:18px 34px;

}

.video-btn .btn-primary i{

font-size:22px;

}
.video-btn .btn-primary{

display:inline-flex;

align-items:center;

gap:12px;

padding:18px 34px;

}

.video-btn .btn-primary i{

font-size:22px;

}
/*==============================
FLOATING WHATSAPP
==============================*/

.whatsapp-float{

position:fixed;

right:25px;

bottom:25px;

width:65px;

height:65px;

border-radius:50%;

background:#25D366;

display:flex;

align-items:center;

justify-content:center;

font-size:34px;

color:#fff;

box-shadow:0 15px 35px rgba(0,0,0,.25);

z-index:9999;

transition:.35s;

}

.whatsapp-float:hover{

transform:scale(1.1);

}
/*==============================
BACK TO TOP
==============================*/

.back-top{

position:fixed;

right:25px;

bottom:105px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#5B2C83;

color:#fff;

display:none;

align-items:center;

justify-content:center;

font-size:20px;

cursor:pointer;

z-index:9998;

box-shadow:0 10px 30px rgba(0,0,0,.25);

transition:.3s;

}

.back-top:hover{

transform:translateY(-4px);

}
