:root{

    --primary:#0d5f32;
    --primary-dark:#084526;
    --accent:#e63946;
    --success:#25D366;

    --bg:#f7f8fa;
    --white:#ffffff;

    --text:#1f2937;
    --text-light:#6b7280;

    --radius-sm:12px;
    --radius-md:18px;
    --radius-lg:24px;

    --shadow-sm:
    0 4px 12px rgba(0,0,0,.06);

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

    --shadow-lg:
    0 20px 60px rgba(0,0,0,.12);

    --transition:.25s ease;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:
    Tahoma,
    Arial,
    sans-serif;

    background:
    var(--bg);

    color:
    var(--text);

    overflow-x:hidden;

    padding-bottom:90px;
}

/* ==========================
   TOP BAR
========================== */

.top-bar{

    position:sticky;
    top:0;

    z-index:9999;

    background:
    linear-gradient(
    135deg,
    var(--primary),
    var(--primary-dark)
    );

    color:white;

    text-align:center;

    padding:12px;

    font-weight:700;

    font-size:15px;
}

/* ==========================
   HERO
========================== */

.hero-section{
    background:white;
}

.hero-image img{

    width:100%;
    height:auto;
    display:block;
}

/* ==========================
   ORDERS
========================== */

.today-orders{

    background:#fff3cd;

    color:#856404;

    padding:14px;

    text-align:center;

    font-weight:bold;

    font-size:18px;
}

/* ==========================
   COUNTDOWN
========================== */

.countdown-box{

    margin:15px;

    padding:25px;

    border-radius:
    var(--radius-lg);

    background:
    linear-gradient(
    135deg,
    var(--primary),
    var(--primary-dark)
    );

    color:white;

    text-align:center;

    box-shadow:
    var(--shadow-md);
}

.countdown-title{

    font-size:18px;

    margin-bottom:10px;
}

#countdown{

    font-size:46px;

    font-weight:800;

    letter-spacing:2px;
}

/* ==========================
   TRUST
========================== */

.trust-strip{

    display:grid;

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

    gap:12px;

    padding:15px;
}

.trust-item{

    background:white;

    border-radius:
    var(--radius-md);

    padding:18px;

    text-align:center;

    box-shadow:
    var(--shadow-sm);

    font-weight:600;
}


/* ==========================
   FORM
========================== */

.order-section{

    padding:20px 15px;
}

.form-wrapper{

    background:white;

    border-radius:
    var(--radius-lg);

    padding:30px;

    max-width:700px;

    margin:auto;

    box-shadow:
    var(--shadow-md);

    border: 2px solid #094828;
}

.form-wrapper h2{

    text-align:center;

    color: #094828;

    margin-bottom:10px;
}

.form-wrapper p{

    text-align:center;

    color:
    var(--text-light);

    margin-bottom:25px;
}

.form-control{

    width:100%;

    height:56px;

    border:1px solid #ddd;

    border-radius:
    var(--radius-sm);

    padding:0 16px;

    margin-bottom:15px;

    font-size:16px;
}

.form-control:focus{

    outline:none;

    border-color:
    var(--primary);
}

.submit-btn{

    width:100%;

    height:60px;

    border:none;

    border-radius:
    var(--radius-md);

    background:
    linear-gradient(
    135deg,
    var(--primary),
    var(--primary-dark)
    );

    color:white;

    font-size:20px;

    font-weight:700;

    cursor:pointer;

    transition:
    var(--transition);
}

.submit-btn:hover{

    transform:
    translateY(-2px);
}

.submit-btn:disabled{

    opacity:.7;

    cursor:not-allowed;
}

/* ==========================
   BADGES
========================== */

.trust-badges{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    justify-content:center;

    margin-top:20px;
}

.badge-item{

    background:#f3f4f6;

    padding:10px 14px;

    border-radius:999px;

    font-size:14px;
}

/* ==========================
   WHATSAPP
========================== */

.whatsapp-float{

    position:fixed;

    left:20px;

    bottom:95px;

    width:60px;

    height:60px;

    border-radius:50%;

    background:
    var(--success);

    color:white;

    text-decoration:none;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    z-index:9998;

    box-shadow:
    var(--shadow-lg);
}

/* ==========================
   STICKY CTA
========================== */

.sticky-order-btn{

    position:fixed;

    left:15px;
    right:15px;
    bottom:15px;

    height:60px;

    background:
    linear-gradient(
    135deg,
    var(--success),
    #1ebe5d
    );

    color:white;

    text-decoration:none;

    border-radius:999px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:20px;

    font-weight:700;

    z-index:9999;

    box-shadow:
    var(--shadow-lg);
}

/* ==========================
   SOCIAL PROOF
========================== */

.order-notification{

    position:fixed;

    right:15px;

    bottom:180px;

    max-width:320px;

    background:white;

    padding:15px;

    border-radius:
    var(--radius-md);

    box-shadow:
    var(--shadow-lg);

    display:none;

    z-index:9997;

    font-size:14px;
}

/* ==========================
   MODAL
========================== */

.modal{

    display:none;

    position:fixed;

    inset:0;

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

    justify-content:center;

    align-items:center;

    padding:20px;

    z-index:10000;
}

.modal-content{

    background:white;

    width:100%;
    max-width:450px;

    border-radius:
    var(--radius-lg);

    padding:30px;

    text-align:center;

    animation:
    popup .3s ease,
    pulse 2s infinite;
}

.success-icon{

    width:90px;
    height:90px;

    margin:auto;

    border-radius:50%;

    background:
    var(--success);

    color:white;

    font-size:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:20px;
}

.whatsapp-confirm{

    display:block;

    background:
    var(--success);

    color:white;

    text-decoration:none;

    padding:14px;

    border-radius:
    var(--radius-md);

    margin:20px 0;
}

.modal button{

    width:100%;

    height:50px;

    border:none;

    border-radius:
    var(--radius-md);

    background:
    var(--primary);

    color:white;

    cursor:pointer;
}

@keyframes popup{

    from{
        opacity:0;
        transform:scale(.8);
    }

    to{
        opacity:1;
        transform:scale(1);
    }
}

@keyframes pulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.02);
    }

    100%{
        transform:scale(1);
    }
}

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

@media(max-width:768px){

    .price{
        font-size:40px;
    }

    .section-title{
        font-size:24px;
    }

    #countdown{
        font-size:38px;
    }

    .offer-card{
        padding:22px;
    }
}


/* ==========================
   OFFERS
========================== */

.offers-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:12px;

    margin-bottom:25px;
}

.offer-option{

    position:relative;

    background:#fff;

    border:2px solid #e5e7eb;

    border-radius:18px;

    padding:20px 10px;

    text-align:center;

    cursor:pointer;

    transition:.25s;

    min-height:170px;

    display:flex;

    flex-direction:column;

    justify-content:center;

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

.offer-option input[type="radio"]{
    display:none;
}

.offer-option input{

    display:none;
}

/* Selected Card */

.offer-option:has(input:checked){

    border:3px solid var(--primary);

    background:#f4fff8;

    box-shadow:
    0 10px 25px rgba(13,95,50,.15);
}

.offer-title{

    font-size:22px;

    font-weight:700;

    margin-bottom:8px;
}

.offer-price{

    font-size:38px;

    font-weight:800;

    color:var(--primary);

    line-height:1;
}

.offer-price span{

    font-size:16px;
}

.offer-desc{

    margin-top:10px;

    font-size:13px;

    color:#666;

    line-height:1.4;
}

.offer-check{

    position:absolute;

    top:10px;

    left:10px;

    width:26px;

    height:26px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    font-size:14px;

    display:none;

    align-items:center;

    justify-content:center;
}

.offer-option:has(input:checked) .offer-check{

    display:flex;
}

.best-badge{

    position:absolute;

    top:-10px;

    right:50%;

    transform:translateX(50%);

    background:#d32f2f;

    color:#fff;

    padding:5px 10px;

    border-radius:999px;

    font-size:11px;

    font-weight:700;
}

.offer-option.best{

    border-color:#d32f2f;
}

/* Mobile */

@media(max-width:480px){

    .offer-title{

        font-size:18px;
    }

    .offer-price{

        font-size:30px;
    }

    .offer-desc{

        font-size:12px;
    }

    .offer-option{

        min-height:145px;

        padding:16px 8px;
    }
}
