/* =====================================================
   MEMER MART
   style.css
   PART 1
===================================================== */

:root{

    --primary:#14b8a6;
    --primary-dark:#0f766e;

    --background:#f8fafc;
    --surface:#ffffff;

    --border:#e5e7eb;

    --text:#111827;
    --text-light:#6b7280;

    --shadow:
        0 10px 40px rgba(15,23,42,.08);

    --radius:14px;

    --transition:.35s ease;

}

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--background);

    color:var(--text);

    overflow-x:hidden;

}


/* ===========================
    BACKGROUND BLOBS
=========================== */

body::before{

    content:"";

    position:fixed;

    width:500px;
    height:500px;

    border-radius:50%;

    background:rgba(20,184,166,.08);

    top:-150px;
    right:-120px;

    filter:blur(70px);

    z-index:-2;

}

body::after{

    content:"";

    position:fixed;

    width:420px;
    height:420px;

    border-radius:50%;

    background:rgba(56,189,248,.06);

    bottom:-180px;
    left:-120px;

    filter:blur(80px);

    z-index:-2;

}


/* ===========================
TYPOGRAPHY
=========================== */

h1{

    font-size:66px;

    line-height:1.1;

    font-weight:800;

}

h2{

    font-size:40px;

    font-weight:700;

}

p{

    color:var(--text-light);

    line-height:1.8;

}


/* ===========================
BUTTONS
=========================== */

.heroButton,
.navButton{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    color:#fff;

    background:var(--primary);

    padding:16px 34px;

    border-radius:999px;

    font-weight:600;

    transition:var(--transition);

    box-shadow:
    0 12px 25px rgba(20,184,166,.25);

}

.heroButton:hover,
.navButton:hover{

    transform:translateY(-4px);

    background:var(--primary-dark);

}


/* ===========================
NAVBAR
=========================== */

header{

    position:sticky;

    top:0;

    z-index:1000;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:22px 8%;

    backdrop-filter:blur(18px);

    background:rgba(255,255,255,.82);

    border-bottom:1px solid rgba(0,0,0,.04);

}

.logo{

    display:flex;

    align-items:center;

    gap:14px;

}

.logoIcon{

    width:42px;

    height:42px;

    flex-shrink:0;

    border-radius:50%;

    box-shadow:0 8px 18px rgba(15,118,110,.35);

    transition:var(--transition);

}

.logo:hover .logoIcon{

    transform:rotate(-8deg) scale(1.05);

}

.logoText{

    display:flex;

    flex-direction:column;

    line-height:1.25;

}

.brand{

    font-size:24px;

    font-weight:700;

    letter-spacing:.2px;

}

.tagline{

    color:var(--text-light);

    font-size:13px;

}

nav{

    display:flex;

    gap:38px;

}

nav a{

    text-decoration:none;

    color:var(--text);

    font-weight:500;

    transition:var(--transition);

}

nav a:hover{

    color:var(--primary);

}

.headerActions{

    display:flex;

    align-items:center;

    gap:16px;

}

.menuToggle{

    display:none;

    flex-direction:column;

    justify-content:center;

    gap:5px;

    width:32px;

    height:32px;

    background:none;

    border:none;

    padding:0;

    cursor:pointer;

    flex-shrink:0;

}

.menuToggle span{

    display:block;

    width:100%;

    height:3px;

    border-radius:3px;

    background:var(--text);

    transition:var(--transition);

}

.menuToggle.active span:nth-child(1){

    transform:translateY(8px) rotate(45deg);

}

.menuToggle.active span:nth-child(2){

    opacity:0;

}

.menuToggle.active span:nth-child(3){

    transform:translateY(-8px) rotate(-45deg);

}


/* ===========================
HERO
=========================== */

.hero{

    width:min(1350px,92%);

    margin:90px auto 110px;

    display:flex;

    justify-content:center;

}

.heroLeft{

    display:flex;

    flex-direction:column;

    align-items:center;

    max-width:780px;

    text-align:center;

}

.badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 18px;

    border-radius:999px;

    background:#e6fffb;

    color:var(--primary-dark);

    font-weight:600;

    margin-bottom:28px;

}

.hero h1{

    margin-bottom:22px;

}

.hero h1 span{

    color:var(--primary);

    display:inline-block;

}

.hero p{

    max-width:560px;

    font-size:18px;

    margin:0 auto 38px;

}


/* ===========================
TRUST ROW
=========================== */

.trustRow{

    display:flex;

    gap:14px;

    flex-wrap:wrap;

    justify-content:center;

    margin-bottom:45px;

}

.trust{

    display:flex;

    gap:15px;

    align-items:center;

    background:white;

    padding:16px 22px;

    border-radius:12px;

    border:1px solid var(--border);

    box-shadow:var(--shadow);

    transition:var(--transition);

    text-align:left;

}

.trust:hover{

    transform:translateY(-6px);

    border-color:rgba(20,184,166,.35);

}

.trustIcon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:46px;

    height:46px;

    flex-shrink:0;

    font-size:20px;

    border-radius:10px;

    background:linear-gradient(135deg,rgba(20,184,166,.16),rgba(20,184,166,.06));

}

.trust h4{

    font-size:15px;

    margin-bottom:2px;

}

.trust span{

    font-size:13px;

    color:var(--text-light);

}


/* ===========================
SECTION TITLE
=========================== */

.sectionTitle{

    text-align:center;

    margin-bottom:60px;

}

.sectionTitle h2{

    margin-bottom:12px;

}


/* ===========================
RESPONSIVE
=========================== */

@media(max-width:1100px){

header{

padding:18px 5%;

}

.menuToggle{

display:flex;

}

nav{

position:absolute;

top:100%;

left:0;

width:100%;

flex-direction:column;

gap:0;

background:rgba(255,255,255,.98);

backdrop-filter:blur(18px);

max-height:0;

overflow:hidden;

opacity:0;

box-shadow:0 20px 30px rgba(15,23,42,.08);

transition:max-height .35s ease,opacity .3s ease;

}

nav.open{

max-height:400px;

opacity:1;

border-bottom:1px solid var(--border);

}

nav a{

padding:16px 8%;

border-top:1px solid var(--border);

}

.tagline{

display:none;

}

h1{

font-size:52px;

}

}

@media(max-width:700px){

.hero{

margin-top:40px;

}

h1{

font-size:40px;

}

.heroButton{

width:100%;

}

.trust{

width:100%;

}

#packages,

.features,

#about,

#reviews,

#faq{

margin:70px auto;

}

.sectionTitle{

margin-bottom:36px;

}

footer{

margin-top:80px;

}

}

@media(max-width:480px){

header{

padding:14px 4%;

}

.brand{

font-size:20px;

}

.navButton{

padding:10px 18px;

font-size:14px;

}

.badge{

font-size:12px;

padding:8px 14px;

}

h1{

font-size:32px;

}

.hero p{

font-size:15px;

}

}




/* =====================================================
   MEMER MART
   style.css
   PART 2
===================================================== */


/* ===========================
PACKAGES
=========================== */

#packages{

    width:min(1350px,92%);

    margin:120px auto;

}

#packageGrid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));

    gap:16px;

}

.packageCard{

    background:var(--surface);

    border:1px solid var(--border);

    border-radius:14px;

    padding:26px 24px;

    box-shadow:var(--shadow);

    transition:var(--transition);

    position:relative;

    overflow:hidden;

    max-width:280px;

    margin:0 auto;

    width:100%;

}

.packageCard::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:6px;

    background:linear-gradient(
        90deg,
        var(--primary),
        #4fd1c5
    );

}

.packageCard:hover{

    transform:translateY(-12px);

    box-shadow:
    0 35px 70px rgba(15,23,42,.12);

}

.packageBadge{

    position:absolute;

    top:16px;

    right:16px;

    background:var(--primary);

    color:white;

    font-size:11px;

    font-weight:600;

    padding:6px 12px;

    border-radius:999px;

}

.packageAmount{

    font-size:30px;

    font-weight:700;

    margin-top:14px;

}

.packageSub{

    margin-top:6px;

    font-size:14px;

    color:var(--text-light);

}

.packagePrice{

    margin-top:18px;

    font-size:34px;

    font-weight:800;

    color:var(--primary);

}

.packagePrice span{

    font-size:18px;

    color:var(--text-light);

    margin-left:4px;

}

.packageList{

    list-style:none;

    margin:20px 0;

    font-size:14px;

}

.packageList li{

    margin:10px 0;

    display:flex;

    align-items:center;

    gap:10px;

    color:var(--text-light);

}

.packageList li::before{

    content:"✓";

    color:var(--primary);

    font-weight:bold;

}

.buyButton{

    width:100%;

    padding:14px;

    border:none;

    border-radius:999px;

    background:var(--primary);

    color:white;

    font-weight:600;

    cursor:pointer;

    transition:var(--transition);

    font-size:15px;

}

.buyButton:hover{

    background:var(--primary-dark);

    transform:translateY(-3px);

}


/* ===========================
FEATURES
=========================== */

.features{

    width:min(1350px,92%);

    margin:120px auto;

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    gap:16px;

}

.feature{

    background:white;

    border-radius:14px;

    padding:26px 18px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

    border:1px solid var(--border);

    aspect-ratio:1/1;

    max-width:220px;

    margin:0 auto;

    width:100%;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    font-size:16px;

}

.feature:hover{

    transform:translateY(-8px);

}

.featureIcon{

    display:flex;

    align-items:center;

    justify-content:center;

    width:60px;

    height:60px;

    font-size:26px;

    line-height:1;

    margin-bottom:14px;

    border-radius:10px;

    background:linear-gradient(135deg,rgba(20,184,166,.16),rgba(20,184,166,.06));

}

.feature h3{

    font-size:17px;

    margin:0 0 8px;

    line-height:1.2;

}

.feature p{

    font-size:13px;

    line-height:1.5;

    margin:0;

}


/* ===========================
REVIEWS
=========================== */

#reviews{

    width:min(1350px,92%);

    margin:120px auto;

}

.reviewGrid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:20px;

}

.review{

    background:white;

    border-radius:14px;

    padding:35px;

    box-shadow:var(--shadow);

    transition:var(--transition);

    border:1px solid var(--border);

}

.review:hover{

    transform:translateY(-8px);

}

.review:first-line{

    font-size:20px;

}

.review p{

    margin:18px 0;

}

.review strong{

    color:var(--primary);

}

.reviewsMore{

    text-align:center;

    margin-top:40px;

    font-size:15px;

    font-weight:500;

    color:var(--text-light);

    letter-spacing:.3px;

}


/* ===========================
SCROLL ANIMATION
=========================== */

.reveal{

    opacity:0;

    transform:translateY(60px);

    transition:
    opacity .8s ease,
    transform .8s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}


/* ===========================
HOVER GLOW
=========================== */

.packageCard:hover::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:18px;

    box-shadow:
    inset 0 0 0 1px rgba(20,184,166,.15);

    pointer-events:none;

}


/* ===========================
POPULAR CARD
=========================== */

.packageCard.popular{

    transform:scale(1.04);

    border:2px solid var(--primary);

}

.packageCard.popular:hover{

    transform:scale(1.04) translateY(-12px);

}

/* =====================================================
   MEMER MART
   style.css
   PART 3
===================================================== */


/* ===========================
FAQ
=========================== */

#faq{

    width:min(1000px,92%);

    margin:120px auto;

}


/* ===========================
ABOUT / SEO CONTENT
=========================== */

.aboutSection{

    width:min(820px,92%);

    margin:120px auto;

    text-align:center;

}

.aboutText p{

    font-size:16px;

    line-height:1.9;

    margin-bottom:20px;

}

.aboutText p:last-child{

    margin-bottom:0;

}

.faq{

    display:flex;

    flex-direction:column;

    gap:22px;

}

.faqItem{

    background:white;

    border:1px solid var(--border);

    border-radius:14px;

    padding:28px 30px;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.faqItem:hover{

    transform:translateY(-5px);

}

.faqItem h3{

    font-size:20px;

    margin-bottom:14px;

}

.faqItem p{

    color:var(--text-light);

    line-height:1.8;

}


/* ===========================
FOOTER
=========================== */

footer{

    margin-top:140px;

    padding:70px 8%;

    background:white;

    border-top:1px solid var(--border);

    text-align:center;

}

footer h2{

    color:var(--primary);

    margin-bottom:12px;

}

footer p{

    margin-top:8px;

}


/* ===========================
SCROLLBAR
=========================== */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#eef2f7;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--primary-dark);

}


/* ===========================
TEXT SELECTION
=========================== */

::selection{

    background:var(--primary);

    color:white;

}


/* ===========================
LINKS
=========================== */

a{

    transition:var(--transition);

}


/* ===========================
IMAGES
=========================== */

img{

    display:block;

    max-width:100%;

}


/* ===========================
SMALL ANIMATIONS
=========================== */

.fadeUp{

    animation:fadeUp .8s ease both;

}

@keyframes fadeUp{

0%{

opacity:0;

transform:translateY(40px);

}

100%{

opacity:1;

transform:translateY(0);

}

}


.fade{

    animation:fade .7s ease;

}

@keyframes fade{

from{

opacity:0;

}

to{

opacity:1;

}

}


/* ===========================
PULSE BUTTON
=========================== */

.buyButton{

    position:relative;

    overflow:hidden;

}

.buyButton::after{

    content:"";

    position:absolute;

    width:0;

    height:0;

    left:50%;

    top:50%;

    border-radius:50%;

    background:rgba(255,255,255,.35);

    transform:translate(-50%,-50%);

    transition:.6s;

}

.buyButton:hover::after{

    width:420px;

    height:420px;

}


/* ===========================
HERO BUTTON SHINE
=========================== */

.heroButton{

    position:relative;

    overflow:hidden;

}

.heroButton::before{

    content:"";

    position:absolute;

    left:-120%;

    top:0;

    width:70%;

    height:100%;

    background:

    linear-gradient(

        120deg,

        transparent,

        rgba(255,255,255,.45),

        transparent

    );

    transition:1s;

}

.heroButton:hover::before{

    left:150%;

}


/* ===========================
CARD ICON SIZE (handled via .featureIcon now)
=========================== */

.review{

    position:relative;

}


/* ===========================
RESPONSIVE
=========================== */

@media(max-width:900px){

.features{

grid-template-columns:repeat(2,1fr);

}

.reviewGrid{

grid-template-columns:1fr;

}

#packageGrid{

grid-template-columns:1fr;

}

.packageCard.popular{

transform:none;

}

.packageCard.popular:hover{

transform:translateY(-10px);

}

}


@media(max-width:600px){

.sectionTitle h2{

font-size:30px;

}

.packageAmount{

font-size:26px;

}

.packagePrice{

font-size:28px;

}

footer{

padding:55px 20px;

}

}


/* ===========================
UTILITY CLASSES
=========================== */

.center{

text-align:center;

}

.mt-1{

margin-top:10px;

}

.mt-2{

margin-top:20px;

}

.mt-3{

margin-top:30px;

}

.mb-1{

margin-bottom:10px;

}

.mb-2{

margin-bottom:20px;

}

.mb-3{

margin-bottom:30px;

}

.hidden{

display:none;

}


/* =====================================================
END OF FILE
===================================================== */
