/**
Theme Name: Mery Meal
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mery-meal
Template: astra
*/


  :root{
    --espresso:#2b241d;
    --espresso-soft:#3a322a;
    --sand:#f4efe6;
    --sand-deep:#e9e1d2;
    --paper:#fbf9f4;
    --olive:#6f7355;
    --olive-deep:#565a3f;
    --terra:#c4663a;
    --terra-deep:#a85428;
    --whatsapp:#25d366;
    --whatsapp-deep:#128c7e;
    --line:rgba(43,36,29,0.14);
    --serif:'Cormorant Garamond',Georgia,serif;
    --sans:'Jost',-apple-system,sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--sans);
    background:var(--paper);
    color:var(--espresso);
    font-weight:300;
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{background:var(--terra);color:var(--paper);}

  h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-0.005em;line-height:1.15;}
  h1{font-weight:400;}
  .eyebrow{
    font-family:var(--sans);
    font-size:0.72rem;
    letter-spacing:0.32em;
    text-transform:uppercase;
    font-weight:400;
    color:var(--terra);
  }

  /* ---------- NAV ---------- */
  nav{
    position:fixed;top:0;left:0;right:0;z-index:50;
    display:flex;justify-content:space-between;align-items:center;
    padding:1.5rem clamp(1.5rem,5vw,4.5rem);
    transition:background .4s ease,padding .4s ease,border-color .4s ease;
    border-bottom:1px solid transparent;
  }
  nav.scrolled{
    background:rgba(251,249,244,0.92);
    backdrop-filter:blur(12px);
    padding-top:1rem;padding-bottom:1rem;
    border-bottom:1px solid var(--line);
  }
  .brand{display:flex;flex-direction:column;line-height:1;text-decoration:none;color:inherit;}
  .brand .mark{font-family:var(--serif);font-size:1.9rem;letter-spacing:0.01em;font-weight:500;}
  .brand .mark em{font-style:italic;font-weight:400;}
  .brand .sub{
    font-size:0.58rem;letter-spacing:0.34em;text-transform:uppercase;
    color:var(--terra);margin-top:.4rem;font-weight:400;
  }
  .nav-right{display:flex;align-items:center;gap:1.8rem;}
  .lang-switch{display:flex;gap:.15rem;font-size:0.72rem;letter-spacing:0.12em;}
  .lang-switch button{
    background:none;border:none;cursor:pointer;color:var(--espresso);
    font-family:var(--sans);font-size:0.72rem;letter-spacing:0.12em;
    padding:.2rem .35rem;opacity:.4;transition:opacity .3s;
  }
  .lang-switch button.active{opacity:1;border-bottom:1px solid var(--terra);}
  .lang-switch span{opacity:.3;}
  .nav-cta{
    font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;
    text-decoration:none;color:var(--espresso);
    border:1px solid var(--espresso);
    padding:.72rem 1.5rem;border-radius:40px;
    transition:background .35s ease,color .35s ease;
  }
  .nav-cta:hover{background:var(--espresso);color:var(--paper);}

  /* ---------- HERO ---------- */
  .hero{
    min-height:100vh;display:flex;flex-direction:column;justify-content:center;
    padding:9rem clamp(1.5rem,5vw,4.5rem) 4rem;
    position:relative;
    background:
      radial-gradient(ellipse 70% 50% at 78% 30%,rgba(196,102,58,0.10),transparent 70%),
      radial-gradient(ellipse 60% 50% at 20% 80%,rgba(111,115,85,0.08),transparent 70%),
      var(--paper);
  }
  .hero-grid{
    display:grid;grid-template-columns:1.15fr 0.85fr;gap:clamp(2rem,5vw,5rem);
    align-items:center;max-width:1320px;margin:0 auto;width:100%;
  }
  .hero-copy .eyebrow{display:block;margin-bottom:1.8rem;
    opacity:0;animation:rise .9s .1s ease forwards;}
  .hero h1{
    font-size:clamp(3rem,6.6vw,5.6rem);
    margin-bottom:2rem;
    font-weight:400;
  }
  .hero h1 .l1,.hero h1 .l2,.hero h1 .l3{display:block;opacity:0;}
  .hero h1 .l1{animation:rise 1s .2s ease forwards;}
  .hero h1 .l2{animation:rise 1s .35s ease forwards;font-style:italic;color:var(--olive-deep);font-weight:400;}
  .hero h1 .l3{animation:rise 1s .5s ease forwards;}
  .hero-mantra{
    display:flex;gap:.85rem;align-items:center;flex-wrap:wrap;
    font-family:var(--serif);font-style:italic;font-size:1.15rem;color:var(--terra-deep);
    margin-bottom:1.8rem;opacity:0;animation:rise 1s .58s ease forwards;font-weight:500;
  }
  .hero-mantra .dot{
    width:4px;height:4px;border-radius:50%;background:var(--terra);
    display:inline-block;
  }
  .hero-lead{
    font-size:1.08rem;max-width:30rem;color:var(--espresso-soft);
    margin-bottom:2.6rem;opacity:0;animation:rise 1s .68s ease forwards;
  }
  .hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
    opacity:0;animation:rise 1s .8s ease forwards;}
  .btn-primary{
    display:inline-flex;align-items:center;gap:.7rem;
    background:var(--espresso);color:var(--paper);
    text-decoration:none;font-size:0.82rem;letter-spacing:0.16em;text-transform:uppercase;
    padding:1.1rem 2.1rem;border-radius:44px;
    transition:transform .35s ease,background .35s ease;
  }
  .btn-primary:hover{transform:translateY(-3px);background:var(--terra-deep);}
  .btn-primary .arrow{transition:transform .35s ease;}
  .btn-primary:hover .arrow{transform:translateX(5px);}
  .btn-whatsapp{
    display:inline-flex;align-items:center;gap:.6rem;
    background:transparent;color:var(--espresso);
    border:1px solid var(--espresso);
    text-decoration:none;font-size:0.82rem;letter-spacing:0.16em;text-transform:uppercase;
    padding:1.05rem 1.7rem;border-radius:44px;
    transition:transform .35s ease,background .35s ease,color .35s ease,border-color .35s ease;
  }
  .btn-whatsapp:hover{transform:translateY(-3px);background:var(--whatsapp);color:#fff;border-color:var(--whatsapp);}
  .btn-whatsapp svg{width:18px;height:18px;}
  .hero-note{font-size:0.82rem;color:var(--olive);letter-spacing:0.04em;
    width:100%;margin-top:1.2rem;display:block;}

  .hero-visual{
    position:relative;opacity:0;animation:fade 1.4s .55s ease forwards;
  }
  .hero-frame{
    position:relative;aspect-ratio:4/5;border-radius:200px 200px 12px 12px;
    overflow:hidden;background:var(--sand-deep);
    box-shadow:0 40px 80px -30px rgba(43,36,29,0.4);
  }
  .hero-frame img{width:100%;height:100%;object-fit:cover;
    filter:saturate(0.92) contrast(1.02);}
  .hero-badge{
    position:absolute;left:-2.2rem;bottom:2.6rem;
    background:var(--paper);border:1px solid var(--line);
    padding:1.1rem 1.5rem;border-radius:10px;
    box-shadow:0 24px 50px -24px rgba(43,36,29,0.45);
    max-width:14rem;
  }
  .hero-badge .num{font-family:var(--serif);font-size:2.4rem;color:var(--terra-deep);line-height:1;font-weight:500;}
  .hero-badge .lbl{font-size:0.74rem;letter-spacing:0.06em;color:var(--espresso-soft);margin-top:.3rem;}

  /* ---------- SECTION SHELL ---------- */
  section{padding:clamp(5rem,11vw,9rem) clamp(1.5rem,5vw,4.5rem);}
  .wrap{max-width:1180px;margin:0 auto;}
  .reveal{opacity:0;transform:translateY(34px);
    transition:opacity 1s ease,transform 1s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}

  .section-head{max-width:42rem;margin-bottom:4rem;}
  .section-head .eyebrow{display:block;margin-bottom:1.3rem;}
  .section-head h2{font-size:clamp(2.2rem,4.2vw,3.4rem);font-weight:400;}
  .section-head p{margin-top:1.4rem;color:var(--espresso-soft);font-size:1.05rem;}

  /* ---------- PHILOSOPHY ---------- */
  .philosophy{background:var(--sand);}
  .phil-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,6rem);align-items:center;}
  .phil-text h2{font-size:clamp(2.1rem,4vw,3.3rem);margin-bottom:1.8rem;font-weight:400;}
  .phil-text .lead-quote{
    font-family:var(--serif);font-style:italic;font-size:1.55rem;line-height:1.45;
    color:var(--olive-deep);margin-bottom:1.8rem;font-weight:500;
  }
  .phil-text p{color:var(--espresso-soft);margin-bottom:1.2rem;}
  .phil-visual{
    aspect-ratio:1/1.15;border-radius:12px 12px 160px 160px;overflow:hidden;
    background:var(--sand-deep);box-shadow:0 36px 70px -34px rgba(43,36,29,0.4);
  }
  .phil-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(0.9);}

  /* ---------- PILLARS ---------- */
  .pillars .section-head h2 em{font-style:italic;color:var(--terra-deep);font-weight:500;}
  .pillars .section-head h2 .dot-sep{color:var(--terra);margin:0 .35rem;font-style:normal;}
  .pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
  .pillar{
    background:var(--paper);border:1px solid var(--line);border-radius:14px;
    padding:2.4rem 2rem;transition:transform .4s ease,box-shadow .4s ease;
    position:relative;overflow:hidden;
  }
  .pillar::before{
    content:"";position:absolute;top:0;left:0;right:0;height:2px;
    background:linear-gradient(90deg,transparent,var(--terra),transparent);
    opacity:0;transition:opacity .5s ease;
  }
  .pillar:hover{transform:translateY(-8px);box-shadow:0 30px 55px -30px rgba(43,36,29,0.35);}
  .pillar:hover::before{opacity:1;}
  .pillar .ico{
    width:54px;height:54px;border-radius:50%;
    border:1px solid var(--terra);color:var(--terra-deep);
    display:flex;align-items:center;justify-content:center;margin-bottom:1.6rem;
    transition:background .4s ease,color .4s ease;
  }
  .pillar:hover .ico{background:var(--terra);color:var(--paper);}
  .pillar .ico svg{width:24px;height:24px;}
  .pillar h3{font-size:1.55rem;margin-bottom:.8rem;font-weight:500;}
  .pillar h3 em{color:var(--terra-deep);font-style:italic;font-weight:500;}
  .pillar p{font-size:0.96rem;color:var(--espresso-soft);}

  /* ---------- PROCESS ---------- */
  .process{background:var(--espresso);color:var(--sand);}
  .process .section-head h2,.process .eyebrow{color:var(--sand);}
  .process .eyebrow{color:var(--terra);}
  .process .section-head p{color:rgba(244,239,230,0.7);}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;}
  .step{
    padding:2.4rem 1.6rem 2rem;border-top:1px solid rgba(244,239,230,0.18);
    position:relative;
  }
  .step:not(:last-child){border-right:1px solid rgba(244,239,230,0.10);}
  .step .step-no{
    font-family:var(--serif);font-size:1.1rem;color:var(--terra);
    letter-spacing:0.14em;margin-bottom:1.4rem;font-style:italic;font-weight:500;
  }
  .step h3{font-size:1.45rem;margin-bottom:.7rem;color:var(--sand);font-weight:500;}
  .step p{font-size:0.92rem;color:rgba(244,239,230,0.68);}

  /* ---------- ABOUT ---------- */
  .about-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:clamp(2.5rem,6vw,5.5rem);align-items:center;}
  .about-visual{
    aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--sand-deep);
    box-shadow:0 36px 70px -34px rgba(43,36,29,0.4);position:relative;
  }
  .about-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(0.9);}
  .about-text h2{font-size:clamp(2.2rem,4vw,3.2rem);margin-bottom:1.6rem;font-weight:400;}
  .about-text .ueber-para{
    color:var(--espresso-soft);margin-bottom:1.1rem;font-size:1.02rem;
  }
  .about-credentials{
    display:flex;gap:2.2rem;margin:2rem 0 1.6rem;flex-wrap:wrap;
    padding-top:1.6rem;border-top:1px solid var(--line);
  }
  .about-cred .num{font-family:var(--serif);font-size:2rem;color:var(--terra-deep);line-height:1;font-weight:500;}
  .about-cred .lbl{font-size:0.74rem;letter-spacing:0.08em;color:var(--olive-deep);
    margin-top:.4rem;text-transform:uppercase;max-width:9rem;}
  .about-sign{
    font-family:var(--serif);font-style:italic;font-size:2rem;
    color:var(--olive-deep);font-weight:400;
  }

  /* ---------- TESTIMONIAL — DIRECT RESPONSE CARD STYLE ---------- */
  .testimonial{
    position:relative;
    background:
      radial-gradient(ellipse 50% 40% at 50% 0%,rgba(196,102,58,0.06),transparent 70%),
      var(--sand);
  }
  .testimonial .wrap{max-width:780px;}
  .testimonial-head{text-align:center;margin-bottom:3rem;}
  .testimonial-head .eyebrow{display:block;margin-bottom:1rem;}
  .testimonial-head h2{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;color:var(--espresso);}
  .testimonial-head h2 em{font-style:italic;color:var(--terra-deep);font-weight:500;}

  .testi-card{
    background:var(--paper);border-radius:18px;
    border:1px solid var(--line);
    box-shadow:0 50px 90px -50px rgba(43,36,29,0.35),
               0 12px 30px -20px rgba(43,36,29,0.2);
    overflow:hidden;position:relative;
  }
  .testi-card::before{
    content:"";position:absolute;top:0;left:0;width:100%;height:4px;
    background:linear-gradient(90deg,var(--terra),var(--olive));
  }
  .testi-meta{
    display:flex;align-items:center;gap:1.1rem;
    padding:1.6rem 2rem 0;
  }
  .testi-avatar{
    flex-shrink:0;width:54px;height:54px;border-radius:50%;
    background:linear-gradient(135deg,var(--olive),var(--olive-deep));
    color:var(--paper);font-family:var(--serif);font-style:italic;font-size:1.55rem;font-weight:500;
    display:flex;align-items:center;justify-content:center;
    border:2px solid var(--paper);
    box-shadow:0 4px 14px rgba(43,36,29,0.18);
  }
  .testi-id .name{
    font-family:var(--sans);font-size:0.95rem;font-weight:500;color:var(--espresso);
    line-height:1.2;
  }
  .testi-id .role{
    font-family:var(--sans);font-size:0.78rem;color:var(--olive-deep);
    letter-spacing:0.05em;margin-top:.25rem;
  }
  .testi-source{
    margin-left:auto;flex-shrink:0;display:flex;align-items:center;gap:.4rem;
    font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--terra);
  }
  .testi-source svg{width:14px;height:14px;}

  .testi-quote{
    padding:1.5rem 2rem 2rem;
  }
  .testi-quote blockquote{
    font-family:var(--serif);font-weight:400;
    font-size:clamp(1.2rem,2.1vw,1.6rem);line-height:1.5;color:var(--espresso);
  }
  .testi-quote blockquote p{margin-bottom:.9rem;}
  .testi-quote blockquote p:last-child{margin-bottom:0;}
  .testi-quote blockquote em{color:var(--terra-deep);font-style:italic;font-weight:500;}

  .testi-foot{
    display:flex;align-items:center;gap:.8rem;
    padding:1.2rem 2rem 1.6rem;border-top:1px solid var(--line);
    font-size:0.78rem;color:var(--olive);
  }
  .testi-foot .verify{
    display:inline-flex;align-items:center;gap:.4rem;color:var(--olive-deep);
  }
  .testi-foot .verify svg{width:14px;height:14px;color:var(--olive);}
  .testi-foot .sep{color:var(--terra);}

  /* ---------- MID-PAGE CTA ---------- */
  .midcta{
    background:var(--espresso);color:var(--sand);
    text-align:center;position:relative;overflow:hidden;
  }
  .midcta::before{
    content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
    width:60%;height:1px;
    background:linear-gradient(90deg,transparent,var(--terra),transparent);
  }
  .midcta .wrap{max-width:720px;}
  .midcta .eyebrow{color:var(--terra);display:block;margin-bottom:1.5rem;}
  .midcta h2{
    font-size:clamp(2rem,4vw,3rem);font-weight:400;color:var(--sand);
    margin-bottom:1.4rem;
  }
  .midcta h2 em{font-style:italic;color:var(--terra);font-weight:500;}
  .midcta p{
    color:rgba(244,239,230,0.72);font-size:1.05rem;
    margin-bottom:2.4rem;max-width:36rem;margin-inline:auto;
  }
  .midcta-actions{
    display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;
  }
  .midcta .btn-primary{background:var(--paper);color:var(--espresso);}
  .midcta .btn-primary:hover{background:var(--terra);color:var(--paper);}
  .midcta .btn-whatsapp{border-color:var(--sand);color:var(--sand);}
  .midcta .btn-whatsapp:hover{background:var(--whatsapp);border-color:var(--whatsapp);color:#fff;}
  .midcta-note{
    margin-top:1.8rem;font-size:0.8rem;letter-spacing:0.06em;
    color:rgba(244,239,230,0.55);
  }

  /* ---------- ELIGIBILITY ---------- */
  .eligible-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:start;}
  .eligible-list{list-style:none;}
  .eligible-list li{
    display:flex;gap:1.1rem;padding:1.3rem 0;border-bottom:1px solid var(--line);
  }
  .eligible-list li:first-child{border-top:1px solid var(--line);}
  .eligible-list .tick{
    flex-shrink:0;width:26px;height:26px;border-radius:50%;
    background:var(--olive);color:var(--paper);
    display:flex;align-items:center;justify-content:center;margin-top:.15rem;
  }
  .eligible-list .tick svg{width:13px;height:13px;}
  .eligible-list h3{font-size:1.2rem;font-family:var(--sans);font-weight:500;margin-bottom:.2rem;letter-spacing:0;}
  .eligible-list p{font-size:0.92rem;color:var(--espresso-soft);}
  .eligible-aside{
    background:var(--espresso);color:var(--sand);border-radius:16px;
    padding:clamp(2.2rem,4vw,3.2rem);
    position:relative;overflow:hidden;
  }
  .eligible-aside::before{
    content:"";position:absolute;top:0;left:0;width:6px;height:100%;
    background:var(--terra);
  }
  .eligible-aside .eyebrow{color:var(--terra);display:block;margin-bottom:1.2rem;}
  .eligible-aside h3{font-size:1.9rem;color:var(--sand);margin-bottom:1rem;font-weight:400;}
  .eligible-aside p{color:rgba(244,239,230,0.74);font-size:0.98rem;margin-bottom:1rem;}
  .eligible-aside p:last-of-type{margin-bottom:0;}
  .eligible-aside p em{color:var(--terra);font-style:italic;font-weight:500;}
  .eligible-aside .seats{
    margin-top:1.8rem;padding-top:1.8rem;border-top:1px solid rgba(244,239,230,0.18);
    display:flex;align-items:baseline;gap:.8rem;
  }
  .eligible-aside .seats .n{font-family:var(--serif);font-size:3.4rem;color:var(--terra);line-height:1;font-weight:500;}
  .eligible-aside .seats .t{font-size:0.86rem;color:rgba(244,239,230,0.72);}

  /* ---------- ENQUIRY ---------- */
  .enquiry{
    background:
      radial-gradient(ellipse 60% 50% at 20% 10%,rgba(111,115,85,0.10),transparent 70%),
      radial-gradient(ellipse 50% 40% at 90% 90%,rgba(196,102,58,0.08),transparent 70%),
      var(--paper);
  }
  .enquiry .wrap{max-width:920px;}
  .enquiry-head{text-align:center;margin-bottom:3.4rem;}
  .enquiry-head h2{font-size:clamp(2.2rem,4.5vw,3.4rem);margin-top:1.2rem;font-weight:400;}
  .enquiry-head p{margin-top:1.2rem;color:var(--espresso-soft);max-width:34rem;margin-inline:auto;}
  .enquiry-toggle{
    display:flex;justify-content:center;margin-bottom:2rem;
    background:var(--sand);border-radius:50px;padding:.35rem;width:fit-content;
    margin-inline:auto;border:1px solid var(--line);
  }
  .enquiry-toggle button{
    background:none;border:none;cursor:pointer;
    font-family:var(--sans);font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;
    color:var(--olive-deep);padding:.7rem 1.5rem;border-radius:50px;
    transition:background .3s ease,color .3s ease;
    display:inline-flex;align-items:center;gap:.5rem;
  }
  .enquiry-toggle button svg{width:14px;height:14px;}
  .enquiry-toggle button.active{background:var(--espresso);color:var(--paper);}
  .enquiry-toggle button.active.wa{background:var(--whatsapp-deep);}
  form{
    background:var(--paper);border:1px solid var(--line);border-radius:18px;
    padding:clamp(1.8rem,4vw,3.2rem);
    box-shadow:0 40px 80px -50px rgba(43,36,29,0.5);
  }
  .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;}
  .field{margin-bottom:1.4rem;}
  .field label{
    display:block;font-size:0.74rem;letter-spacing:0.14em;text-transform:uppercase;
    color:var(--olive-deep);margin-bottom:.55rem;
  }
  .field input,.field select,.field textarea{
    width:100%;font-family:var(--sans);font-size:1rem;font-weight:300;
    color:var(--espresso);background:var(--sand);
    border:1px solid transparent;border-radius:9px;
    padding:.95rem 1.05rem;transition:border-color .3s ease,background .3s ease;
  }
  .field textarea{resize:vertical;min-height:120px;}
  .field input:focus,.field select:focus,.field textarea:focus{
    outline:none;border-color:var(--terra);background:var(--paper);
  }
  .field select{appearance:none;cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c4663a' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 1.1rem center;}
  .form-submit{
    width:100%;cursor:pointer;border:none;
    background:var(--espresso);color:var(--paper);
    font-family:var(--sans);font-size:0.84rem;letter-spacing:0.18em;text-transform:uppercase;
    padding:1.2rem;border-radius:44px;margin-top:.6rem;
    transition:background .35s ease,transform .35s ease;
  }
  .form-submit:hover{background:var(--terra-deep);transform:translateY(-2px);}
  .form-fineprint{
    text-align:center;font-size:0.78rem;color:var(--olive);
    margin-top:1.3rem;letter-spacing:0.03em;
  }

  .wa-direct{
    display:none;background:var(--paper);border:1px solid var(--line);border-radius:18px;
    padding:clamp(2.2rem,5vw,3.8rem);text-align:center;
    box-shadow:0 40px 80px -50px rgba(43,36,29,0.5);
  }
  .wa-direct.active{display:block;}
  .wa-icon-big{
    width:72px;height:72px;border-radius:50%;
    background:var(--whatsapp);color:#fff;
    display:flex;align-items:center;justify-content:center;margin:0 auto 1.6rem;
  }
  .wa-icon-big svg{width:36px;height:36px;}
  .wa-direct h3{font-size:1.7rem;margin-bottom:.8rem;font-weight:400;}
  .wa-direct p{color:var(--espresso-soft);margin-bottom:2rem;max-width:30rem;margin-inline:auto;}
  .wa-direct .btn-wa-large{
    display:inline-flex;align-items:center;gap:.7rem;
    background:var(--whatsapp);color:#fff;text-decoration:none;
    font-size:0.86rem;letter-spacing:0.16em;text-transform:uppercase;
    padding:1.15rem 2.3rem;border-radius:44px;
    transition:transform .35s ease,background .35s ease;
  }
  .wa-direct .btn-wa-large:hover{background:var(--whatsapp-deep);transform:translateY(-3px);}
  .wa-direct .btn-wa-large svg{width:20px;height:20px;}
  .wa-direct .wa-fineprint{
    margin-top:1.4rem;font-size:0.78rem;color:var(--olive);
  }

  /* ---------- FLOATING WHATSAPP ---------- */
  .float-wa{
    position:fixed;bottom:1.8rem;right:1.8rem;z-index:40;
    width:58px;height:58px;border-radius:50%;
    background:var(--whatsapp);color:#fff;
    display:flex;align-items:center;justify-content:center;
    text-decoration:none;
    box-shadow:0 10px 30px -8px rgba(37,211,102,0.5),
               0 6px 16px -6px rgba(0,0,0,0.2);
    transition:transform .3s ease,box-shadow .3s ease;
    opacity:0;animation:floatIn 1s 1.6s ease forwards;
  }
  .float-wa:hover{transform:translateY(-4px) scale(1.05);
    box-shadow:0 14px 36px -10px rgba(37,211,102,0.6),0 8px 18px -6px rgba(0,0,0,0.25);}
  .float-wa svg{width:30px;height:30px;}
  .float-wa::after{
    content:"";position:absolute;inset:-4px;border-radius:50%;
    border:2px solid var(--whatsapp);opacity:0.4;
    animation:pulse 2.4s ease-in-out infinite;
  }
  @keyframes pulse{
    0%{transform:scale(1);opacity:0.5;}
    100%{transform:scale(1.35);opacity:0;}
  }
  @keyframes floatIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}

  /* ---------- FOOTER ---------- */
  footer{
    background:var(--espresso);color:rgba(244,239,230,0.6);
    padding:3.4rem clamp(1.5rem,5vw,4.5rem);
  }
  .foot-wrap{
    max-width:1180px;margin:0 auto;display:flex;
    justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;
  }
  .foot-brand .mark{font-family:var(--serif);font-size:1.6rem;color:var(--sand);font-weight:500;}
  .foot-brand .mark em{font-style:italic;font-weight:400;}
  .foot-brand .sub{font-size:0.6rem;letter-spacing:0.3em;text-transform:uppercase;
    color:var(--terra);margin-top:.4rem;}
  .foot-meta{font-size:0.78rem;text-align:right;line-height:1.9;}
  .foot-meta a{color:rgba(244,239,230,0.6);text-decoration:none;}
  .foot-meta a:hover{color:var(--sand);}

  /* ---------- ANIMATIONS ---------- */
  @keyframes rise{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
  @keyframes fade{from{opacity:0;}to{opacity:1;}}

  /* ---------- RESPONSIVE ---------- */
  @media(max-width:900px){
    .hero-grid,.phil-grid,.about-grid,.eligible-grid{grid-template-columns:1fr;}
    .hero-visual{order:-1;max-width:380px;margin:0 auto;}
    .hero-badge{left:0;}
    .pillars-grid{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr 1fr;}
    .about-visual{max-width:420px;margin:0 auto;}
    .phil-visual{max-width:440px;margin:0 auto;}
    .testi-meta{flex-wrap:wrap;}
    .testi-source{margin-left:0;width:100%;justify-content:flex-start;}
  }
  @media(max-width:560px){
    .field-row{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr;}
    .nav-cta{display:none;}
    .foot-wrap{flex-direction:column;align-items:flex-start;}
    .foot-meta{text-align:left;}
    .hero-mantra{font-size:1rem;}
    .hero-actions{width:100%;}
    .btn-primary,.btn-whatsapp{width:100%;justify-content:center;}
    .float-wa{width:52px;height:52px;bottom:1.2rem;right:1.2rem;}
    .float-wa svg{width:26px;height:26px;}
    .testi-quote{padding:1.2rem 1.4rem 1.6rem;}
    .testi-meta{padding:1.3rem 1.4rem 0;}
    .testi-foot{padding:1rem 1.4rem 1.3rem;}
  }