@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;500;600;700;800&family=Nunito:wght@400;600;700;800&display=swap');

:root{
  --pink:#e50072; --purple:#6b22a6; --blue:#168bc9; --green:#54a900;
  --orange:#f79200; --yellow:#f7c900; --red:#ef2025; --ink:#503113;
  --cream:#fffaf3; --line:#efc08d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;font-family:Nunito,Arial,sans-serif;color:#4d351d;line-height:1.6}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 5%;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:0 4px 20px rgba(80,49,19,.08)}
.brand img{width:180px;height:62px;object-fit:contain;object-position:left center}
.main-nav{display:flex;align-items:center;gap:25px}
.main-nav a{color:var(--ink);font-weight:800;text-decoration:none;font-size:1.05rem}
.main-nav a:hover{color:var(--pink)}
.nav-cta,.btn-primary{background:linear-gradient(135deg,var(--pink),var(--purple));color:white!important;padding:10px 20px;border-radius:999px;box-shadow:0 8px 18px rgba(229,0,114,.18)}
.menu-toggle{display:none;border:0;background:transparent;font-size:1.8rem;color:var(--purple)}
.hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:80px 7%;overflow:hidden;background:radial-gradient(circle at 15% 20%,#fff1bd 0,transparent 26%),radial-gradient(circle at 90% 10%,#e9d8ff 0,transparent 27%),linear-gradient(180deg,#fff 0%,#fffaf4 100%)}
.hero-content{max-width:650px}
.eyebrow{font-family:"Baloo 2",cursive;font-size:1.1rem;font-weight:800;color:var(--pink);letter-spacing:.04em}
h1,h2,h3{font-family:"Baloo 2",cursive;line-height:1.05;margin:.2em 0 .5em}
h1{font-size:clamp(3rem,6vw,5.7rem);font-weight:800;background:linear-gradient(90deg,var(--red),var(--pink),var(--purple),var(--blue),var(--green),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(2.3rem,4vw,4rem)}
.hero-text{font-size:1.2rem;max-width:620px}
.hero-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.btn{display:inline-block;text-decoration:none;font-weight:800;padding:13px 24px;border-radius:999px;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(80,49,19,.18)}
.btn-secondary{border:2px solid var(--orange);color:var(--ink);background:white}
.hero-art{padding:20px}
.hero-art img{width:100%;filter:drop-shadow(0 18px 20px rgba(90,50,10,.12))}
.section{padding:90px 7%}
.section-light{background:#fff8ef}
.section-color{background:linear-gradient(135deg,#fff2cc,#f7e5ff 55%,#dff5ff)}
.section-heading{text-align:center;max-width:780px;margin:0 auto 45px}
.section-heading p{font-size:1.15rem}
.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;max-width:1400px;margin:auto}
.image-card{position:relative;min-height:250px;border-radius:30px;overflow:hidden;background:white;text-decoration:none;box-shadow:0 15px 35px rgba(80,49,19,.11);display:flex;align-items:center;justify-content:center;padding:25px;transition:transform .25s}
.image-card:hover{transform:translateY(-7px)}
.image-card img{width:100%;max-height:230px;object-fit:contain}
.image-card span{position:absolute;left:25px;bottom:20px;background:rgba(255,255,255,.93);padding:7px 15px;border-radius:999px;color:var(--ink);font-family:"Baloo 2";font-weight:800}
.card-wide{grid-column:span 2}
.split{max-width:1400px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.feature-image{background:rgba(255,255,255,.7);border-radius:40px;padding:25px}
.feature-image img{width:100%;max-height:380px;object-fit:contain}
.text-link{font-weight:900;color:var(--pink);text-decoration:none}
.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1200px;margin:auto}
.concept-card{background:white;border-radius:30px;padding:30px;box-shadow:0 12px 30px rgba(80,49,19,.08)}
.concept-card img{height:100px;max-width:100%;object-fit:contain;margin-bottom:15px}
.emoji{font-size:4rem}
.voucher{margin:70px 7%;padding:45px 6%;border-radius:45px;background:linear-gradient(135deg,#fff4c8,#ffe1f0);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px}
.voucher img{max-height:280px;margin:auto}
.contact-section{background:linear-gradient(180deg,#fff,#f4fbff)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1200px;margin:auto}
.contact-card,.map-placeholder{background:white;border-radius:35px;padding:35px;box-shadow:0 15px 35px rgba(80,49,19,.09)}
.contact-card img{max-height:140px;object-fit:contain;object-position:left center;margin-bottom:15px}
.map-placeholder{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#d9f3ff,#e7ffd9)}
.map-placeholder span{font-size:4rem}
.site-footer{padding:35px 7%;background:#503113;color:white;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}
.site-footer img{width:160px;filter:brightness(1.25)}
.site-footer a{color:white;text-decoration:none;margin-right:18px;font-weight:700}
.site-footer p{margin:0}
@media(max-width:900px){
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:83px;left:0;right:0;background:white;padding:25px 5%;flex-direction:column;align-items:flex-start}
  .main-nav.open{display:flex}
  .hero,.split,.voucher,.contact-grid{grid-template-columns:1fr}
  .reverse .feature-image{order:0}
  .concept-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .hero,.section{padding-left:5%;padding-right:5%}
  .hero{padding-top:50px;min-height:auto}
  .card-grid{grid-template-columns:1fr}
  .card-wide{grid-column:auto}
  .site-footer{flex-direction:column;align-items:flex-start}
}
