@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

:root{
  --ink:#17130f;
  --cream:#f6f0e5;
  --paper:#fffaf1;
  --muted:#766d61;
  --accent:#b76b32;
  --accent-dark:#8f4e22;
  --line:rgba(23,19,15,.12);
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
@keyframes driftUp{0%{opacity:0;transform:translateY(18px)}100%{opacity:1;transform:translateY(0)}}
@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px 6%;background:rgba(255,250,241,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{width:56px;height:56px;object-fit:contain;border-radius:50%;background:rgba(255,255,255,.8);padding:2px;box-shadow:0 8px 18px rgba(23,19,15,.08)}
.brand strong{display:block;font-size:14px;letter-spacing:2px}
.brand small{display:block;font-size:8px;letter-spacing:2px;color:var(--muted)}
.nav{display:flex;gap:30px;font-size:14px;font-weight:600}
.nav a:hover{color:var(--accent)}
.menu-toggle{display:none;background:none;border:0;font-size:24px;cursor:pointer}
.hero{min-height:720px;padding:80px 7%;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:50px;background:radial-gradient(circle at 85% 35%,#ead7bf 0,transparent 30%),var(--cream)}
.hero-content{animation:driftUp .7s ease-out both}
.hero-art{animation:driftUp .9s ease-out both}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--accent);margin:0 0 16px}
.launch-note{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;padding:8px 12px;border:1px solid rgba(183,107,50,.28);border-radius:999px;background:rgba(255,250,241,.72);color:var(--accent-dark);font-size:10px;font-weight:700;letter-spacing:1.5px}
.launch-note span{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(183,107,50,.12)}
.launch-note i{font-style:normal;color:var(--muted)}
h1,h2{font-family:'Playfair Display',serif;line-height:1.05;margin:0}
h1{font-size:clamp(56px,7vw,96px);letter-spacing:-3px}
h1 em,h2 em{color:var(--accent);font-weight:600}
.hero-copy{max-width:600px;font-size:18px;color:var(--muted);margin:28px 0}
.hero-actions,.visit-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 22px;border-radius:100px;font-weight:700;font-size:14px;transition:.2s;cursor:pointer;border:1px solid transparent}
.btn-primary{background:var(--ink);color:var(--white)}
.btn-primary:hover{transform:translateY(-2px);background:var(--accent-dark)}
.btn-outline{border-color:var(--ink);background:rgba(255,255,255,.4)}
.btn-outline:hover{background:var(--ink);color:var(--white)}
.btn-whatsapp{background:#238636;color:white}
.trust-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:35px;color:var(--muted);font-size:12px}
.hero-art{position:relative;display:flex;align-items:center;justify-content:center;width:min(500px,100%);height:500px;min-height:500px}
.glow{position:absolute;width:320px;height:320px;border-radius:50%;background:#dbc09e;filter:blur(3px)}
.food-card{position:absolute;width:150px;height:150px;padding:16px 12px;border:1px solid rgba(23,19,15,.1);box-shadow:0 20px 50px rgba(60,38,20,.12);border-radius:18px;background:rgba(255,250,241,.95);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:floatCard 5s ease-in-out infinite;z-index:2}
.food-card .food-emoji{display:block;font-size:36px;line-height:1;margin-bottom:8px}
.food-card b{display:block;font-family:'Playfair Display';font-size:15px;line-height:1.2}
.food-card small{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:6px}
.tea-card{left:30px;top:36px;animation-delay:.2s}
.shawarma-card{right:30px;top:60px;animation-delay:1.2s}
.lukmi-card{left:30px;bottom:56px;animation-delay:1.8s}
.poori-card{right:30px;bottom:60px;animation-delay:2.6s}
.stamp{position:relative;z-index:1;width:120px;height:120px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;text-align:center;font-size:9px;line-height:1.2;letter-spacing:2px;transform:rotate(-12deg);color:var(--accent);font-weight:700;background:rgba(255,250,241,.72)}
.strip{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--white);padding:25px 6%;gap:20px}
.strip div{border-right:1px solid rgba(255,255,255,.15);padding-right:20px}
.strip div:last-child{border:0}
.strip strong{display:block;font-size:11px;letter-spacing:2px}
.strip span{display:block;color:#c8c0b5;font-size:12px;margin-top:4px}
.section{padding:110px 7%}
.section-heading{text-align:center;max-width:680px;margin:0 auto 55px}
.section-heading h2,.story-copy h2,.visit-section h2{font-size:clamp(42px,5vw,65px)}
.section-heading>p:last-child{color:var(--muted);margin-top:18px}
.menu-grid{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.menu-card{display:flex;gap:22px;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:18px;transition:.2s}
.menu-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(30,20,10,.08)}
.menu-icon{font-size:42px;min-width:55px}
.menu-card h3{font-family:'Playfair Display';font-size:24px;margin:0 0 5px}
.menu-card p{margin:0;color:var(--muted);font-size:14px}
.menu-note{text-align:center;color:var(--muted);font-size:13px;margin-top:28px}
.split-section{display:grid;grid-template-columns:1fr 1fr;min-height:580px}
.story-visual{background:linear-gradient(145deg,#34271d,#8e633e);display:grid;place-items:center;padding:70px}
.visual-window{width:min(330px,80%);aspect-ratio:1/1.15;border:1px solid rgba(255,255,255,.45);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.visual-window span{font-size:12px;letter-spacing:6px}
.visual-window strong{font-family:'Playfair Display';font-size:52px;line-height:1}
.visual-window small{letter-spacing:3px;margin-top:18px}
.story-copy{padding:80px 9%;display:flex;flex-direction:column;justify-content:center}
.story-copy p:not(.eyebrow){color:var(--muted);max-width:560px}
.text-link{font-weight:700;margin-top:20px;color:var(--accent)}
.hygiene-section{padding:105px 7%;background:var(--ink);color:var(--white)}
.light .eyebrow{color:#d89a63}
.light>p:last-child{color:#b9b1a7}
.hygiene-section .section-heading h2{font-size:clamp(40px,5vw,64px)}
.promise-grid{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.promise-grid div{border-top:1px solid rgba(255,255,255,.25);padding:25px 0}
.promise-grid span{font-size:12px;color:#d89a63}
.promise-grid h3{font-family:'Playfair Display';font-size:24px;margin:12px 0 5px}
.promise-grid p{color:#aaa29a;font-size:14px}
.cta-section{text-align:center;padding:110px 7%;background:var(--cream)}
.cta-section h2{font-size:clamp(55px,7vw,90px);margin-bottom:35px}
.instagram-showcase{padding:0 7% 90px}
.instagram-showcase-card{background:linear-gradient(135deg,#1f1813 0%,#352a1e 100%);color:var(--white);border-radius:28px;padding:40px 36px;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 22px 54px rgba(32,22,14,.18);animation:driftUp .8s ease-out both}
.insta-copy{max-width:560px}
.insta-copy h2{font-size:clamp(32px,4vw,48px);margin:0 0 14px;line-height:1.1}
.insta-copy p:last-child{color:rgba(255,255,255,.78);margin:0}
.insta-action-wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:flex-end}
.cta-qr{width:100px;height:100px;border-radius:16px;background:#fff;padding:8px;object-fit:cover;box-shadow:0 12px 28px rgba(0,0,0,.14)}
.visit-section{padding:100px 7%;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.visit-section>div:first-child>p:not(.eyebrow){color:var(--muted)}
.placeholder{margin:12px 0}
.map-placeholder{min-height:330px;border-radius:20px;background:#e9e0d1;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.map-placeholder span{font-size:50px}
.map-placeholder strong{font-family:'Playfair Display';font-size:24px}
.map-placeholder small{color:var(--muted);max-width:250px}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 7%;background:#0f0c09;color:#b8afa5;font-size:12px}
.footer-brand{display:flex;align-items:center;gap:14px;flex:1;animation:driftUp .8s ease-out both}
.footer-logo{width:62px;height:62px;object-fit:contain;border-radius:50%;background:#fff;padding:4px}
.footer-brand strong{display:block;color:white;letter-spacing:2px}
.footer-brand span{display:block;margin-top:3px}
.footer-social{display:flex;align-items:center;gap:14px;justify-content:flex-end;flex-wrap:wrap}
.instagram-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#fff;background:rgba(255,255,255,.03);font-weight:700}
.instagram-qr{width:92px;height:92px;border-radius:16px;background:#fff;padding:8px;object-fit:cover}
.footer-copy{white-space:nowrap}
.mobile-game-section{display:none}
.instagram-modal{position:fixed;inset:0;display:grid;place-items:center;background:rgba(17,12,9,.58);padding:20px;z-index:50}
.instagram-modal.hidden{display:none}
.instagram-modal-card{position:relative;max-width:520px;width:min(90vw,520px);background:linear-gradient(180deg,#fffaf2 0%,#f4eadb 100%);border:1px solid rgba(23,19,15,.12);border-radius:28px;padding:30px 28px 24px;box-shadow:0 28px 70px rgba(17,12,9,.25);text-align:center}
.instagram-modal-card h3{margin:0 0 12px;font-size:clamp(28px,5vw,40px);font-family:'Playfair Display',serif;line-height:1.1}
.instagram-modal-card p{margin:0;color:var(--muted)}
.modal-close{position:absolute;top:14px;right:16px;border:0;background:none;font-size:30px;cursor:pointer;color:var(--ink)}
.modal-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.modal-dismiss{background:transparent;color:var(--ink);border:1px solid rgba(23,19,15,.2)}
@media(max-width:800px){
  .site-header{padding:14px 5%}
  .menu-toggle{display:block}
  .nav{display:none;position:absolute;top:70px;left:0;right:0;padding:20px 5%;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:18px}
  .nav.open{display:flex}
  .hero{grid-template-columns:1fr;padding:65px 6%;min-height:auto}
  .hero-art{width:min(420px,100%);height:430px;min-height:430px}
  .food-card{width:132px;height:132px}
  .tea-card{left:14px;top:22px}
  .shawarma-card{right:14px;top:50px}
  .lukmi-card{left:26px;bottom:34px}
  .poori-card{right:26px;bottom:34px}
  .strip{grid-template-columns:1fr 1fr;padding:25px 6%}
  .strip div:nth-child(2){border:0}
  .menu-grid,.split-section,.visit-section{grid-template-columns:1fr}
  .story-visual{min-height:400px}
  .promise-grid{grid-template-columns:1fr}
  .visit-section{gap:35px}
  .instagram-showcase-card{flex-direction:column;align-items:flex-start}
  .insta-action-wrap{justify-content:flex-start}
  .site-footer{flex-direction:column;align-items:flex-start}
  .footer-brand,.footer-social{width:100%}
  .footer-social{justify-content:flex-start}
  .footer-copy{white-space:normal}
}
@media(max-width:767px){
  .mobile-game-section{display:block;padding:0 18px 32px}
  .mobile-game-card{max-width:420px;margin:0 auto;background:linear-gradient(180deg,#201811 0%,#2f2017 45%,#1a120d 100%);border:1px solid rgba(215,166,109,.28);border-radius:28px;padding:22px 16px 18px;box-shadow:0 20px 42px rgba(20,13,9,.26);position:relative;overflow:hidden}
  .mobile-game-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% -10%, rgba(214,162,98,.28), transparent 42%),linear-gradient(135deg, rgba(255,255,255,.06), transparent 46%);pointer-events:none}
  .mobile-game-card > *{position:relative;z-index:1}
  .mobile-game-card h2{font-size:34px;letter-spacing:-1px;color:#fff7ee}
  .mobile-game-instruction{margin:8px 0 16px;color:rgba(255,245,234,.75);font-size:14px}
  .mobile-game-topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);padding:10px 12px;border-radius:12px;margin-bottom:14px;color:#f4e6d5}
  .mobile-game-topbar strong{font-size:13px;color:#ffd9a1;display:inline-block;transition:transform .15s ease, color .15s ease}
  .mobile-game-topbar strong.is-popping{animation:scorePop .26s ease}
  .quiz-question-box{background:linear-gradient(135deg,#17130f,#7b4b2b);color:var(--white);padding:16px;border-radius:16px;margin-bottom:14px;min-height:110px;display:flex;flex-direction:column;justify-content:center;gap:12px;box-shadow:0 14px 26px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.1)}
  .quiz-badge{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;font-weight:700;border:1px solid rgba(255,255,255,.15)}
  .quiz-question-box p{margin:0;font-size:15px;line-height:1.5;color:#fffaf3}
  .quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .quiz-option{display:flex;align-items:center;justify-content:center;text-align:center;min-height:82px;padding:14px 12px;border-radius:16px;border:1px solid rgba(212,165,110,.3);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,235,220,.94));color:var(--ink);font-weight:700;font-size:13px;line-height:1.35;box-shadow:0 10px 22px rgba(0,0,0,.12);transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease}
  .quiz-option:hover{transform:translateY(-1px)}
  .quiz-option:active{transform:scale(.98)}
  .quiz-option.is-correct{background:linear-gradient(180deg,#ebf9e6,#dff3d4);border-color:#3a7a35;box-shadow:0 12px 22px rgba(58,122,53,.18);transform:scale(1.02)}
  .quiz-option.is-wrong{background:linear-gradient(180deg,#fdeae7,#f9d9d1);border-color:#b84534;box-shadow:0 12px 22px rgba(184,69,52,.16);transform:scale(0.99)}
  .quiz-option:disabled{cursor:default;opacity:1}
  .mobile-game-card.is-warning .quiz-question-box{background:linear-gradient(135deg,#7a2d1c,#c7683a);animation:pulseWarning .75s infinite alternate}
  .mobile-game-start{width:100%;margin-top:16px;box-shadow:0 14px 24px rgba(23,19,15,.2);background:linear-gradient(180deg,#cd8739,#b76b32);border:none}
  .mobile-game-start:hover{background:linear-gradient(180deg,#d79048,#a95c2a)}
  .quiz-result{position:relative;margin-top:16px;padding:18px 14px;border-radius:18px;background:linear-gradient(135deg,#f8e7c4,#fffdf7);border:1px solid rgba(183,107,50,.25);text-align:center;overflow:hidden}
  .quiz-result.hidden{display:none}
  .quiz-result h3{margin:0 0 8px;font-size:32px;font-family:'Playfair Display',serif;color:#1f160f}
  .quiz-result p{margin:0;color:#3b2f27;font-size:15px;line-height:1.5}
  .quiz-result.is-correct-feedback{background:linear-gradient(135deg,#fff6d8,#fff9ed);border-color:rgba(198,142,67,.5);box-shadow:0 18px 34px rgba(166,114,38,.18);animation:feedbackPulseGood .45s ease}
  .quiz-result.is-wrong-feedback{background:linear-gradient(135deg,#fbeae7,#fff7f5);border-color:rgba(184,69,52,.4);box-shadow:0 18px 34px rgba(184,69,52,.12);animation:feedbackPulseBad .45s ease}
  .quiz-result.is-win{background:radial-gradient(circle at top, rgba(255,245,200,.98), rgba(255,233,173,.94) 35%, rgba(255,248,230,.96));border-color:rgba(183,107,50,.45);box-shadow:0 18px 34px rgba(166,114,38,.2), inset 0 0 0 1px rgba(255,255,255,.35), 0 0 0 8px rgba(255,206,110,.12), 0 0 24px rgba(183,107,50,.22);animation:winCelebration .8s ease both}
  .quiz-result.is-win h3{font-size:38px;letter-spacing:1px;color:#3a220f;text-shadow:0 2px 10px rgba(183,107,50,.18)}
  .quiz-result.is-win p strong{color:#8d4920}
  .confetti{position:absolute;top:-10px;font-size:22px;filter:drop-shadow(0 6px 8px rgba(183,107,50,.35));animation:floatConfetti 2.5s ease-in-out infinite}
  .confetti-1{left:8%;animation-delay:.1s}
  .confetti-2{left:28%;animation-delay:.7s}
  .confetti-3{left:52%;animation-delay:.2s}
  .confetti-4{left:72%;animation-delay:.9s}
  .confetti-5{left:88%;animation-delay:1.2s}
}
@keyframes scorePop{0%{transform:scale(1)}35%{transform:scale(1.2);color:#fff5dc}100%{transform:scale(1);color:#ffd9a1}}
@keyframes pulseWarning{0%{transform:scale(1);box-shadow:0 0 0 rgba(199,104,58,0)}100%{transform:scale(1.02);box-shadow:0 0 18px rgba(199,104,58,.45)}}
@keyframes feedbackPulseGood{0%{transform:scale(1)}30%{transform:scale(1.02)}100%{transform:scale(1)}}
@keyframes feedbackPulseBad{0%{transform:translateX(0)}20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-2px)}100%{transform:translateX(0)}}
@keyframes winCelebration{0%{transform:scale(.9);opacity:0}35%{transform:scale(1.08);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes floatConfetti{0%{transform:translateY(0) rotate(0deg) scale(.7);opacity:0}20%{opacity:1}100%{transform:translateY(42px) rotate(18deg) scale(1.2);opacity:0}}
@media(max-width:480px){
  h1{font-size:52px}
  .hero-art{width:min(340px,100%);height:390px;min-height:390px}
  .glow{width:220px;height:220px}
  .food-card{width:112px;height:112px;padding:10px 8px}
  .food-card b{font-size:11px}
  .food-card small{font-size:8px}
  .food-card .food-emoji{font-size:28px;margin-bottom:4px}
  .tea-card{left:22px;top:28px}
  .shawarma-card{right:22px;top:54px}
  .lukmi-card{left:18px;bottom:36px}
  .poori-card{right:18px;bottom:36px}
  .stamp{width:92px;height:92px;font-size:8px;letter-spacing:1px}
}
