/*========================================
STATISTICS SECTION
========================================*/

.stats-section{

background:linear-gradient(to bottom,#F7FAFF,#ffffff);

}

.section-heading{

margin-bottom:70px;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.stat-card{

padding:40px 30px;

border-radius:24px;

text-align:center;

transition:.35s;

}

.stat-card:hover{

transform:translateY(-12px);

}

.stat-icon{

width:80px;

height:80px;

margin:auto;

margin-bottom:20px;

display:flex;

align-items:center;

justify-content:center;

font-size:34px;

background:linear-gradient(135deg,#0A4FAF,#2E86FF);

border-radius:20px;

color:white;

box-shadow:0 12px 30px rgba(46,134,255,.25);

}

.stat-card h2{

font-size:52px;

font-weight:700;

color:var(--primary);

margin-bottom:10px;

}

.stat-card p{

color:var(--gray);

font-size:17px;

}
/*========================================
FEATURES SECTION
========================================*/

.features{
    background:#ffffff;
}

.features-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.feature-card{
    position:relative;
    overflow:hidden;
}

.feature-card::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,#0A4FAF,#2E86FF);
    transition:.4s;
}

.feature-card:hover::before{
    left:0;
}

.feature-card h3{
    font-size:24px;
}
/*========================================
PRODUCT SHOWCASE
========================================*/

.product-showcase{

padding:120px 0;

background:#f8fbff;

}

.product-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.product-image{

display:flex;

justify-content:center;

}

.product-mockup{

padding:40px;

border-radius:32px;

max-width:420px;

transition:.4s;

}

.product-mockup:hover{

transform:translateY(-12px) rotate(-2deg);

}

.product-mockup img{

width:100%;

display:block;

}

.price-row{

margin-top:40px;

display:flex;

justify-content:space-between;

align-items:center;

gap:30px;

flex-wrap:wrap;

}

.price-note{

display:block;

margin-top:6px;

color:var(--gray);

font-size:15px;

}
/*========================================
INCLUDED
========================================*/

.included{

padding:120px 0;

background:white;

}

.included-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.include-card{

padding:40px;

border-radius:28px;

transition:.35s;

text-align:left;

position:relative;

overflow:hidden;

}

.include-card:hover{

transform:translateY(-10px);

}

.include-card::after{

content:"";

position:absolute;

left:0;

bottom:0;

width:100%;

height:4px;

background:linear-gradient(90deg,#0A4FAF,#2E86FF);

transform:scaleX(0);

transition:.35s;

transform-origin:left;

}

.include-card:hover::after{

transform:scaleX(1);

}

.include-card h3{

margin:20px 0 12px;

font-size:24px;

}

.include-card p{

color:var(--gray);

line-height:1.7;

}
/*========================================
ABOUT TEAS
========================================*/

.about-teas{

padding:120px 0;

background:#F7FAFF;

}

.about-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.about-image img{

    width:100%;

    max-width:520px;

    display:block;

    margin:auto;

}

.about-content h2{

margin:20px 0;

font-size:46px;

}

.about-content p{

margin-bottom:35px;

color:var(--gray);

line-height:1.8;

}

.exam-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.exam-card{

padding:25px;

background:white;

border-radius:20px;

box-shadow:0 12px 35px rgba(0,0,0,.05);

transition:.35s;

}

.exam-card:hover{

transform:translateY(-8px);

}

.exam-card i{

width:34px;

height:34px;

color:#0A4FAF;

margin-bottom:15px;

}

.exam-card h4{

margin-bottom:8px;

font-size:20px;

}

.exam-card span{

font-size:15px;

color:var(--gray);

line-height:1.6;

}
/*========================================
EXAM OVERVIEW
========================================*/

.exam-overview{

margin-top:40px;

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.overview-item{

display:flex;

align-items:center;

gap:18px;

padding:20px;

background:white;

border-radius:18px;

border:1px solid rgba(10,79,175,.08);

box-shadow:0 10px 30px rgba(0,0,0,.05);

transition:.35s;

}

.overview-item:hover{

transform:translateY(-6px);

box-shadow:0 18px 40px rgba(46,134,255,.12);

}

.overview-icon{

width:60px;

height:60px;

border-radius:16px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0A4FAF,#2E86FF);

color:white;

flex-shrink:0;

}

.overview-icon i{

width:28px;

height:28px;

}

.overview-item h4{

margin-bottom:6px;

font-size:18px;

}

.overview-item p{

margin:0;

font-size:14px;

color:var(--gray);

line-height:1.5;

}
/*========================================
REVIEWS
========================================*/

.reviews{

padding:120px 0;

background:white;

}

.rating-banner{

display:flex;

justify-content:space-between;

align-items:center;

padding:35px 40px;

border-radius:24px;

margin-bottom:60px;

gap:30px;

}

.rating-left{

display:flex;

align-items:center;

gap:25px;

}

.rating-number{

font-size:70px;

font-weight:700;

color:var(--primary);

}

.stars{

font-size:22px;

color:#FFC107;

margin-bottom:6px;

}

.reviews-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.review-card{

padding:35px;

border-radius:24px;

transition:.35s;

}

.review-card:hover{

transform:translateY(-8px);

}

.review-top{

display:flex;

align-items:center;

gap:18px;

margin-bottom:25px;

}

.review-avatar{

width:60px;

height:60px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0A4FAF,#2E86FF);

color:white;

font-weight:700;

font-size:22px;

}

.verified{

display:flex;

align-items:center;

gap:8px;

color:#0A4FAF;

font-size:14px;

margin-top:6px;

}

.verified i{

width:18px;

height:18px;

}

.review-score{

display:flex;

justify-content:space-between;

margin-bottom:20px;

padding-bottom:15px;

border-bottom:1px solid #eef2f7;

font-weight:600;

}

.review-card p{

color:var(--gray);

line-height:1.8;

}
/*========================================
RESULTS GALLERY
========================================*/

.results-gallery{

padding:120px 0;

background:#F8FBFF;

}
.gallery-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

    max-width:1300px;

    margin:auto;

}

.gallery-card{

    background:#fff;

    border-radius:24px;

    padding:18px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

    cursor:pointer;

}
.gallery-image{

    width:100%;

    height:220px;

    object-fit:contain;

    object-position:top center;

    background:#fff;

    border-radius:18px;

    display:block;

}

.gallery-card img{

    transition:.35s;

}

.gallery-card:hover{

    transform:translateY(-8px);

    box-shadow:0 22px 50px rgba(0,0,0,.12);

}

.gallery-card:hover img{

    transform:scale(1.02);

}

.gallery-overlay{

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    padding:24px;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.88),
        rgba(0,0,0,.25),
        transparent
    );

    color:#fff;

    opacity:0;

    transition:.35s;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

}
.gallery-card:hover .gallery-overlay{

    opacity:1;

}

.gallery-card{

    cursor:pointer;

}

.score-badge{

display:inline-block;

padding:8px 14px;

border-radius:999px;

background:#0A4FAF;

margin-bottom:12px;

font-weight:600;

}

.gallery-overlay h4{

margin:0;

font-size:22px;

}
/*========================================
LIGHTBOX
========================================*/

.lightbox{

position:fixed;

inset:0;

background:rgba(0,0,0,.9);

display:flex;

justify-content:center;

align-items:center;

opacity:0;

visibility:hidden;

transition:.35s;

z-index:9999;

backdrop-filter:blur(12px);

}

.lightbox.active{

opacity:1;

visibility:visible;

}

.lightbox img{

max-width:85%;

max-height:85vh;

border-radius:18px;

box-shadow:0 30px 70px rgba(0,0,0,.5);

transform:scale(.9);

transition:.35s;

}

.lightbox.active img{

transform:scale(1);

}

.lightbox button{

position:absolute;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:white;

cursor:pointer;

display:flex;

justify-content:center;

align-items:center;

transition:.3s;

}

.lightbox button:hover{

transform:scale(1.1);

}

.lightbox button i{

width:26px;

height:26px;

}

.lightbox-close{

top:30px;

right:30px;

}

.lightbox-prev{

left:30px;

}

.lightbox-next{

right:30px;

}
.viewer{

    background:white;

    border-radius:28px;

    overflow:hidden;

    max-width:1000px;

    width:92%;

    max-height:90vh;

}

.viewer-image{

    background:#eef5ff;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:30px;

}

.viewer-image img{

max-width:100%;

max-height:80vh;

}

.viewer-info{

    padding:35px 45px 45px;

    text-align:center;

}

.viewer-score{

    text-align:center;

    margin:25px 0;

}

.viewer-score strong{

    display:block;

    font-size:72px;

    color:#0A4FAF;

    margin-top:8px;

}

.viewer-details{

display:grid;

grid-template-columns:1fr 1fr;

gap:25px;

margin-bottom:35px;

}

.viewer-review{

    margin:30px auto;

    max-width:700px;

    line-height:1.8;

    color:var(--gray);

}

.viewer-stars{

font-size:28px;

color:#FFC107;

margin-bottom:40px;

}

.viewer-nav{

    display:flex;

    justify-content:center;

    gap:20px;

    margin-top:40px;

    flex-wrap:wrap;

}

.viewer-nav button{

    min-width:180px;

    padding:15px 28px;

    border:none;

    border-radius:14px;

    background:#0A4FAF;

    color:#fff;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}
.viewer-nav button:hover{

    background:#2E86FF;

    transform:translateY(-2px);

}
/*========================================
FAQ
========================================*/

.faq-section{

padding:120px 0;

background:white;

}

.faq-list{

max-width:900px;

margin:auto;

}

.faq-item{

background:white;

border-radius:20px;

margin-bottom:20px;

overflow:hidden;

box-shadow:0 12px 30px rgba(0,0,0,.05);

border:1px solid #eef2f7;

}

.faq-question{

width:100%;

background:none;

border:none;

padding:28px;

display:flex;

justify-content:space-between;

align-items:center;

cursor:pointer;

font-size:18px;

font-weight:600;

text-align:left;

}

.faq-question i{

transition:.35s;

}

.faq-answer{

max-height:0;

overflow:hidden;

transition:max-height .4s ease;

}

.faq-answer p{

padding:0 28px 28px;

line-height:1.8;

color:var(--gray);

}

.faq-item.active .faq-answer{

max-height:300px;

}

.faq-item.active .faq-question i{

transform:rotate(45deg);

}
/*========================================
FINAL CTA
========================================*/

.final-cta{

padding:140px 0;

background:linear-gradient(180deg,#ffffff,#eef6ff);

position:relative;

overflow:hidden;

}

.cta-box{

position:relative;

padding:80px;

border-radius:36px;

background:linear-gradient(135deg,#0A4FAF,#2E86FF);

text-align:center;

color:white;

overflow:hidden;

}

.cta-box h2{

font-size:52px;

margin:25px 0;

color:white;

}

.cta-box p{

max-width:720px;

margin:auto;

font-size:18px;

line-height:1.8;

opacity:.95;

}

.cta-glow{

position:absolute;

width:450px;

height:450px;

background:rgba(255,255,255,.08);

border-radius:50%;

top:-180px;

right:-120px;

filter:blur(25px);

}

.trust-row{

display:flex;

justify-content:center;

gap:40px;

margin:50px 0;

flex-wrap:wrap;

}

.trust-row div{

display:flex;

align-items:center;

gap:10px;

font-weight:600;

}

.trust-row i{

width:22px;

height:22px;

}

.cta-price{

display:flex;

justify-content:center;

align-items:center;

gap:60px;

margin-top:30px;

flex-wrap:wrap;

}

.cta-price h3{

font-size:60px;

color:white;

}

.small-text{

display:block;

opacity:.8;

margin-bottom:8px;

}

.cta-benefits{

display:flex;

justify-content:center;

gap:40px;

margin-top:50px;

flex-wrap:wrap;

font-weight:600;

}

.cta-benefits div{

display:flex;

align-items:center;

gap:10px;

}

.cta-benefits i{

color:#0A4FAF;

width:20px;

height:20px;

}
/*========================================
FOOTER
========================================*/

.footer{

background:#071D49;

color:white;

padding:90px 0 30px;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr 1.3fr;

gap:60px;

margin-bottom:60px;

}

.footer-logo{

font-size:32px;

margin-bottom:20px;

color:white;

}

.footer-column h4{

margin-bottom:20px;

font-size:20px;

}

.footer-column p{

line-height:1.8;

opacity:.85;

}

.footer-column ul{

list-style:none;

padding:0;

margin:0;

}

.footer-column li{

margin-bottom:16px;

display:flex;

align-items:center;

gap:12px;

}

.footer-column a{

color:rgba(255,255,255,.8);

text-decoration:none;

transition:.3s;

}

.footer-column a:hover{

color:white;

padding-left:5px;

}

.footer-column i{

width:18px;

height:18px;

}

.footer-social{

display:flex;

gap:18px;

margin-top:30px;

}

.footer-social a{

width:48px;

height:48px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

background:rgba(255,255,255,.08);

transition:.3s;

}

.footer-social a:hover{

background:#2E86FF;

transform:translateY(-5px);

}

.footer-social i{

width:22px;

height:22px;

}

.footer hr{

margin:50px 0 30px;

border:none;

height:1px;

background:rgba(255,255,255,.1);

}

.footer-bottom{

display:flex;

justify-content:space-between;

gap:40px;

align-items:flex-start;

flex-wrap:wrap;

}

.footer-disclaimer{

max-width:650px;

opacity:.7;

line-height:1.7;

font-size:14px;

}
.view-result{

    margin-top:10px;

    font-size:15px;

    font-weight:600;

    opacity:.9;

}