/* =========================
GLOBAL
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#f7f7f7;
color:#111;
overflow-x:hidden;
line-height:1.6;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
}

/* =========================
TOP STRIP
========================= */

.top-strip{
background:#111;
color:#fff;
text-align:center;
padding:10px;
font-size:13px;
font-weight:600;
}

/* =========================
NAVBAR
========================= */

.navbar{
background:#fff;
padding:18px 5%;
display:flex;
justify-content:space-between;
align-items:center;
position:sticky;
top:0;
z-index:999;
box-shadow:0 2px 15px rgba(0,0,0,0.06);
}

.logo{
font-size:20px;
font-weight:800;
color:#ffb300;
}

.nav-links{
display:flex;
gap:28px;
align-items:center;
}

.nav-links a{
color:#111;
font-weight:500;
font-size:14px;
transition:0.3s;
}

.nav-links a:hover{
color:#ffb300;
}

.order-btn{
background:#111;
color:#fff !important;
padding:13px 22px;
border-radius:40px;
}

@media(max-width:640px){

.navbar{
display:flex;
justify-content:space-between;
align-items:center;
gap:10px;
}

.nav-links{
display:none;
}

.logo{
font-size:17px;
font-weight:700;
}

.order-btn{
padding:10px 14px;
font-size:12px;
border-radius:12px;
white-space:nowrap;
}

}
/* =========================
HERO SECTION
========================= */
.hero{
position:relative;
background:#ffcc00;
overflow:visible;
padding-bottom:40px;
}

.hero-wrapper{
max-width:1300px;
margin:auto;
padding:70px 5% 120px;
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

.hero-left{
position:relative;
z-index:2;
}

.hero-tag{
display:inline-block;
background:rgba(255,255,255,0.35);
backdrop-filter:blur(8px);
padding:10px 18px;
border-radius:40px;
font-size:13px;
font-weight:600;
margin-bottom:22px;
}

.hero-left h1{
font-size:58px;
line-height:1.05;
font-weight:800;
letter-spacing:-1px;
margin-bottom:20px;
color:#111;
}

.hero-left h1 span{
display:block;
width:fit-content;
background:#111;
color:#fff;
padding:8px 18px;
border-radius:18px;
margin-top:10px;
}

.hero-left p{
font-size:16px;
line-height:1.8;
max-width:560px;
color:#222;
margin-bottom:30px;
}

.hero-buttons{
display:flex;
gap:15px;
flex-wrap:wrap;
margin-bottom:28px;
}

.hero-btn{
padding:15px 26px;
border-radius:50px;
font-weight:700;
font-size:14px;
transition:0.3s;
display:inline-block;
}

.hero-btn:hover{
transform:translateY(-3px);
}

.primary-btn{
background:#111;
color:#fff;
}

.secondary-btn{
background:#fff;
color:#111;
}

.hero-features{
display:flex;
gap:12px;
flex-wrap:wrap;
margin-bottom:25px;
}

.feature-pill{
background:#fff;
padding:11px 16px;
border-radius:40px;
font-size:13px;
font-weight:600;
box-shadow:0 4px 14px rgba(0,0,0,0.08);
}

.hero-small{
display:flex;
gap:22px;
flex-wrap:wrap;
font-size:13px;
font-weight:500;
}

.hero-image{
position:relative;
}

.hero-image img{
width:100%;
height:620px;
object-fit:cover;
border-radius:36px;
box-shadow:0 20px 50px rgba(0,0,0,0.2);
}

.price-card{
position:absolute;
background:#fff;
padding:16px 22px;
border-radius:18px;
font-weight:800;
font-size:16px;
box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

.price1{
top:25px;
left:-20px;
}

.price2{
bottom:25px;
right:-20px;
}
.hero-curve{
position:absolute;
bottom:0;
left:0;
width:100%;
height:90px;
background:#f7f7f7;
border-radius:100% 100% 0 0;
z-index:1;
pointer-events:none;
}

/* =========================
COMMON SECTIONS
========================= */

.section{
padding:55px 5%;
}

.section-title{
text-align:center;
margin-bottom:35px;
}

.section-title h2{
font-size:34px;
margin-bottom:8px;
color:#111;
}

.section-title p{
font-size:15px;
color:#666;
line-height:1.7;
}

/* =========================
PROBLEM SECTION
========================= */

.problem-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:24px;
}

.problem-card{
background:#fff;
padding:35px 28px;
border-radius:28px;
text-align:center;
box-shadow:0 5px 18px rgba(0,0,0,0.06);
transition:0.3s;
}

.problem-card:hover{
transform:translateY(-6px);
}

.problem-card h3{
margin:18px 0;
font-size:20px;
}

.problem-card p{
font-size:14px;
line-height:1.7;
color:#555;
}
/* =========================
PROBLEM BOTTOM TEXT
========================= */

.problem-bottom-text{
margin-top:45px;
max-width:1100px;
margin-left:auto;
margin-right:auto;
text-align:center;
}

.problem-bottom-text p{
font-size:18px;
line-height:1.9;
color:#333;
margin-bottom:14px;
}

/* TABLET */

@media(max-width:992px){

.problem-bottom-text{
margin-top:38px;
}

.problem-bottom-text p{
font-size:16px;
line-height:1.8;
}

}

/* MOBILE */

@media(max-width:640px){

.problem-bottom-text{
margin-top:30px;
padding:0 10px;
}

.problem-bottom-text p{
font-size:15px;
line-height:1.8;
}

}
/* =========================
HOW IT WORKS
========================= */

.how-section{
background:#ffcc00;
border-radius:36px;
padding:55px;
overflow:hidden;
}

.steps{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:22px;
align-items:stretch;
}

.step{
background:#fff;
padding:30px 24px;
border-radius:24px;
position:relative;
min-height:220px;
display:flex;
flex-direction:column;
justify-content:flex-start;
box-shadow:0 8px 20px rgba(0,0,0,0.06);
}

.step-number{
position:absolute;
top:14px;
right:14px;
background:#111;
color:#fff;
width:34px;
height:34px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-weight:700;
font-size:13px;
}

.step h3{
font-size:20px;
line-height:1.4;
margin-bottom:14px;
padding-right:40px;
}

.step p{
font-size:14px;
line-height:1.8;
color:#555;
}

/* =========================
TABLET
========================= */

@media(max-width:992px){

.how-section{
padding:40px 28px;
}

.steps{
grid-template-columns:1fr;
gap:18px;
}

.step{
min-height:auto;
padding:26px 22px;
}

.step h3{
font-size:18px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.how-section{
padding:28px 16px;
border-radius:26px;
}

.steps{
grid-template-columns:1fr;
gap:14px;
}

.step{
padding:22px 18px;
border-radius:18px;
min-height:auto;
}

.step-number{
top:10px;
right:10px;
width:28px;
height:28px;
font-size:11px;
}

.step h3{
font-size:16px;
line-height:1.5;
margin-bottom:10px;
padding-right:34px;
}

.step p{
font-size:13px;
line-height:1.7;
}

}
/* =========================
WHY CHOOSE US
========================= */

.features-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:24px;
}

.feature-box{
background:#fff;
padding:32px;
border-radius:28px;
box-shadow:0 5px 18px rgba(0,0,0,0.06);
transition:0.3s;
}

.feature-box:hover{
transform:translateY(-6px);
}

.feature-box h3{
font-size:20px;
margin-bottom:10px;
}

.feature-box p{
font-size:14px;
line-height:1.7;
color:#555;
}

/* =========================
MENU
========================= */

.menu-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:24px;
}

.menu-card{
background:#fff;
border-radius:28px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:0.3s;
}

.menu-card:hover{
transform:translateY(-6px);
}

.menu-card img{
width:100%;
height:220px;
object-fit:cover;
}

.menu-content{
padding:25px;
}

.menu-content h3{
font-size:22px;
margin-bottom:12px;
}

.menu-content p{
font-size:14px;
line-height:1.8;
color:#555;
}
/* =========================
PLANS SECTION FIXED
========================= */

.plan-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:24px;
max-width:1000px;
margin:auto;
align-items:stretch;
}

.plan-card{
background:#fff;
padding:32px 26px;
border-radius:28px;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:0.3s;
display:flex;
flex-direction:column;
justify-content:space-between;
height:100%;
min-height:420px;
}

.plan-card:hover{
transform:translateY(-6px);
}

.plan-card.active{
background:#111;
color:#fff;
transform:none;
}

.plan-card h3{
font-size:24px;
margin-bottom:14px;
font-weight:700;
}

.plan-price{
font-size:42px;
font-weight:800;
margin-bottom:20px;
line-height:1;
}

.plan-card ul{
list-style:none;
margin-bottom:28px;
flex-grow:1;
}

.plan-card ul li{
margin-bottom:12px;
font-size:14px;
line-height:1.6;
}

.plan-btn{
display:block;
width:100%;
text-align:center;
padding:15px 20px;
background:#ffcc00;
border-radius:14px;
font-weight:700;
color:#111;
font-size:14px;
margin-top:auto;
}

/* =========================
TABLET
========================= */

@media(max-width:992px){

.plan-grid{
grid-template-columns:repeat(3,1fr);
gap:18px;
}

.plan-card{
padding:28px 22px;
min-height:390px;
}

.plan-price{
font-size:36px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.plan-grid{
grid-template-columns:repeat(3,minmax(240px,1fr));
gap:14px;
max-width:100%;
overflow-x:auto;
padding-bottom:10px;
}

.plan-card{
min-height:auto;
padding:22px 18px;
min-width:240px;
}

.plan-card h3{
font-size:20px;
}

.plan-price{
font-size:30px;
}

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

.about-box{
background:#fff3d8;
padding:50px;
border-radius:40px;
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

.about-box img{
width:100%;
height:450px;
object-fit:cover;
border-radius:28px;
}

.about-box h2{
font-size:34px;
margin-bottom:20px;
}

.about-box p{
font-size:15px;
line-height:1.9;
color:#444;
}

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

.faq-grid{
display:grid;
gap:18px;
}

.faq-item{
background:#fff;
padding:24px;
border-radius:20px;
box-shadow:0 5px 18px rgba(0,0,0,0.05);
}

.faq-item h3{
font-size:18px;
margin-bottom:10px;
}

.faq-item p{
font-size:14px;
line-height:1.7;
color:#555;
}

/* =========================
CONTACT SECTION
========================= */

.contact-box{
position:relative;
padding:90px 40px;
border-radius:40px;
text-align:center;
overflow:hidden;
background:
linear-gradient(rgba(0,0,0,0.72), rgba(0,0,0,0.72)),
url('image/tiffin-img4.webp');

background-size:cover;
background-position:center;
background-repeat:no-repeat;

color:#fff;
box-shadow:0 15px 40px rgba(0,0,0,0.18);
}

.contact-box::before{
content:'';
position:absolute;
inset:0;
background:linear-gradient(
135deg,
rgba(255,204,0,0.15),
rgba(0,0,0,0.1)
);
z-index:1;
}

.contact-box h2{
position:relative;
z-index:2;
font-size:42px;
margin-bottom:18px;
font-weight:800;
}

.contact-box p{
position:relative;
z-index:2;
font-size:17px;
line-height:1.8;
max-width:700px;
margin:auto;
opacity:0.95;
}

.whatsapp-btn{
position:relative;
z-index:2;
display:inline-block;
margin-top:28px;
padding:16px 30px;
background:#25D366;
border-radius:18px;
font-weight:700;
color:#fff;
font-size:15px;
transition:0.3s;
box-shadow:0 8px 20px rgba(0,0,0,0.18);
}

.whatsapp-btn:hover{
transform:translateY(-3px);
}

/* TABLET */

@media(max-width:992px){

.contact-box{
padding:70px 30px;
}

.contact-box h2{
font-size:34px;
}

.contact-box p{
font-size:16px;
}

}

/* MOBILE */

@media(max-width:640px){

.contact-box{
padding:55px 22px;
border-radius:28px;
background-position:center;
}

.contact-box h2{
font-size:28px;
line-height:1.3;
}

.contact-box p{
font-size:14px;
line-height:1.8;
}

.whatsapp-btn{
width:100%;
text-align:center;
padding:15px 18px;
font-size:14px;
}

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

footer{
padding:35px;
text-align:center;
color:#666;
font-size:14px;
}

/* =========================
STICKY BUTTON
========================= */

.sticky-btn{
position:fixed;
bottom:20px;
right:20px;
background:#25D366;
color:#fff;
padding:16px 24px;
border-radius:50px;
font-weight:700;
font-size:14px;
box-shadow:0 10px 25px rgba(0,0,0,0.18);
z-index:999;
}

/* =========================
MOBILE
========================= */

@media(max-width:1100px){

.hero-wrapper,
.about-box{
grid-template-columns:1fr;
}
	
.nav-links{
display:none;
}

}

/* =========================
MENU SECTION
========================= */

.menu-tabs{
display:grid;
grid-template-columns:repeat(7,1fr);
gap:14px;
margin-top:35px;
margin-bottom:35px;
}

.menu-tab{
border:none;
background:#ececec;
padding:18px 10px;
border-radius:22px;
font-size:18px;
font-weight:600;
cursor:pointer;
transition:0.3s;
width:100%;
}

.menu-tab.active{
background:#ffcc00;
color:#111;
}

.menu-display{
margin-top:10px;
}

.menu-day{
display:none;
animation:fadeMenu 0.3s ease;
}

.menu-day.active-menu{
display:block;
}

@keyframes fadeMenu{

from{
opacity:0;
transform:translateY(8px);
}

to{
opacity:1;
transform:translateY(0);
}

}
/* =========================
MENU CARD
========================= */

.menu-box{
background:#fff;
border:2px solid #ffcc00;
padding:34px;
border-radius:28px;
box-shadow:0 10px 25px rgba(0,0,0,0.05);
text-align:center;
}

.menu-box h3{
font-size:34px;
margin-bottom:14px;
font-weight:700;
color:#111;
text-align:center;
}

.menu-description{
font-size:17px;
line-height:1.9;
color:#555;
margin-bottom:30px;
max-width:850px;
margin-left:auto;
margin-right:auto;
text-align:center;
}

.menu-items{
display:flex;
flex-wrap:wrap;
gap:16px;
justify-content:center;
}

.menu-item-box{
background:#f5f5f5;
padding:16px 22px;
border-radius:16px;
font-size:17px;
font-weight:600;
text-align:center;
min-width:140px;
}

/* =========================
MENU FOOT NOTE
========================= */

.menu-note{
margin-top:20px;
font-size:16px;
line-height:1.8;
color:#555;
text-align:center;
}

.menu-extra-text{
margin-top:40px;
font-size:15px;
line-height:1.9;
text-align:center;
color:#444;
}
/* =========================
TABLET
========================= */

@media(max-width:992px){

.menu-tabs{
grid-template-columns:repeat(4,1fr);
}

.menu-box h3{
font-size:28px;
}

.menu-description{
font-size:16px;
}

.menu-item-box{
font-size:16px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.menu-tabs{
display:flex;
overflow-x:auto;
gap:12px;
padding-bottom:8px;
scrollbar-width:none;
}

.menu-tabs::-webkit-scrollbar{
display:none;
}

.menu-tab{
min-width:110px;
padding:14px 16px;
font-size:15px;
border-radius:18px;
}

.menu-box{
padding:24px;
border-radius:22px;
}

.menu-box h3{
font-size:24px;
line-height:1.3;
}

.menu-description{
font-size:15px;
line-height:1.8;
margin-bottom:22px;
}

.menu-items{
gap:12px;
}

.menu-item-box{
width:100%;
font-size:15px;
padding:14px 16px;
}

.menu-note{
font-size:14px;
line-height:1.8;
margin-top:22px;
}

}
/* =========================
SUBSCRIPTION FEATURES
========================= */

.subscription-features{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:14px;
margin-top:40px;
}

.sub-feature{
border:2px solid #ffcc00;
background:#fff;
padding:14px 22px;
border-radius:50px;
font-size:17px;
font-weight:600;
display:flex;
align-items:center;
gap:10px;
transition:0.3s;
}

.sub-feature:hover{
background:#ffcc00;
transform:translateY(-3px);
}

/* TABLET */

@media(max-width:992px){

.sub-feature{
font-size:15px;
padding:12px 18px;
}

}

/* MOBILE */

@media(max-width:640px){

.subscription-features{
gap:10px;
}

.sub-feature{
width:100%;
justify-content:center;
font-size:14px;
padding:12px 16px;
border-radius:18px;
}

}
/* =========================
VENAAR PG SECTION
========================= */

.venaar-pg-section{
background:#fff8e8;
border-radius:40px;
}

.pg-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
margin-top:20px;
}

.pg-card{
background:#fff;
border-radius:30px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:0.3s;
display:flex;
flex-direction:column;
}

.pg-card:hover{
transform:translateY(-6px);
}

.pg-image img{
width:100%;
height:240px;
object-fit:cover;
}

.pg-content{
padding:26px;
text-align:center;
display:flex;
flex-direction:column;
height:100%;
}

.pg-content h3{
font-size:26px;
margin-bottom:14px;
line-height:1.3;
}

.pg-content p{
font-size:15px;
line-height:1.8;
color:#555;
margin-bottom:24px;
flex-grow:1;
}

.pg-btn{
display:inline-block;
padding:14px 22px;
background:#111;
color:#fff;
border-radius:16px;
font-size:14px;
font-weight:700;
transition:0.3s;
}

.pg-btn:hover{
background:#ffcc00;
color:#111;
}

.pg-note{
margin-top:40px;
text-align:center;
font-size:16px;
line-height:1.9;
max-width:950px;
margin-left:auto;
margin-right:auto;
color:#444;
}

/* =========================
TABLET
========================= */

@media(max-width:992px){

.pg-grid{
grid-template-columns:repeat(2,1fr);
gap:22px;
}

.pg-content h3{
font-size:22px;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:640px){

.pg-grid{
grid-template-columns:1fr;
}

.pg-image img{
height:220px;
}

.pg-content{
padding:22px;
}

.pg-content h3{
font-size:22px;
}

.pg-content p{
font-size:14px;
line-height:1.7;
}

.pg-btn{
width:100%;
text-align:center;
}

.pg-note{
font-size:14px;
line-height:1.8;
margin-top:30px;
}

}
/* =========================
FINAL MOBILE HERO FIX
========================= */

@media(max-width:640px){

html,
body{
overflow-x:hidden;
width:100%;
}

.hero{
padding-bottom:18px;
overflow:hidden;
}

.hero-wrapper{
padding:40px 18px 90px;
gap:28px;
width:100%;
overflow:hidden;
}

.hero-left{
width:100%;
padding:0;
margin:0;
text-align:center;
}

.hero-left h1{
font-size:32px;
line-height:1.12;
word-break:break-word;
margin-bottom:18px;
}

.hero-left h1 span{
margin:auto;
margin-top:10px;
}

.hero-left p{
font-size:14px;
line-height:1.75;
max-width:100%;
margin-bottom:24px;
}

.hero-buttons{
width:100%;
}

.hero-btn{
width:100%;
text-align:center;
}

.hero-features{
justify-content:center;
gap:10px;
}

.feature-pill{
font-size:12px;
padding:10px 14px;
}

.hero-small{
justify-content:center;
font-size:12px;
gap:14px;
}

.hero-image{
width:100%;
margin:0 auto;
position:relative;
}

.hero-image img{
width:100%;
height:270px;
border-radius:24px;
object-fit:cover;
}

.price-card{
font-size:12px;
padding:10px 14px;
border-radius:14px;
}

.price1{
left:10px;
top:10px;
}

.price2{
right:10px;
bottom:10px;
}

.hero-curve{
height:40px;
bottom:-1px;
left:0;
width:100%;
border-radius:100% 100% 0 0;
}

}