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

@font-face{font-family:'Fredoka';src:url('assets/fonts/Fredoka-Variable.ttf') format('truetype-variations');font-weight:400 700;font-style:normal;font-display:swap;}

:root{
  --ink:#1A1206;
  --white:#FFFFFF;
  --cream:#FFF8E9;
  --orange-900:#C24A0A;
  --orange-500:#F5A623;
  --yellow-400:#FBD34D;
  --blue-600:#0C447C;
  --blue-100:#E6F1FB;
  --radius:16px;
  --border:3px;
  --shadow: 6px 6px 0 var(--ink);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Poppins',sans-serif;
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  background-color:var(--yellow-400);
  background-image:
    linear-gradient(rgba(0,0,0,0.15), rgba(0,0,0,0.15)),
    url('assets/site-background.png');
  background-size:cover, cover;
  background-position:center center, center center;
  background-repeat:no-repeat, no-repeat;
}
@media (min-width:900px){
  body{background-attachment:fixed, fixed;}
}
h1,h2,h3,.display{font-family:'Fredoka',sans-serif;font-weight:700;letter-spacing:1.5px;line-height:1.3;margin:0;text-transform:uppercase;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:1120px;margin:0 auto;padding:0 24px;}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:linear-gradient(135deg,var(--orange-500),var(--yellow-400));border-bottom:var(--border) solid var(--ink);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;max-width:1120px;margin:0 auto;}
.nav-logo{display:flex;align-items:center;gap:10px;}
.nav-logo img{height:46px;width:46px;object-fit:contain;}
.nav-logo span{font-family:'Fredoka',sans-serif;font-weight:700;font-size:20px;letter-spacing:.5px;color:var(--white);text-shadow:1.2px 0px 0 var(--ink),0.85px 0.85px 0 var(--ink),0px 1.2px 0 var(--ink),-0.85px 0.85px 0 var(--ink),-1.2px 0px 0 var(--ink),-0.85px -0.85px 0 var(--ink),0px -1.2px 0 var(--ink),0.85px -0.85px 0 var(--ink),2px 2px 0 var(--ink);text-transform:uppercase;}
.nav-links{display:flex;gap:8px;list-style:none;margin:0;padding:0;}
.nav-links a{display:inline-block;padding:8px 16px;border-radius:999px;font-weight:600;font-size:15px;transition:background .15s ease,color .15s ease;}
.nav-links a:hover,.nav-links a:focus-visible{background:var(--ink);color:var(--white);outline:none;}
.nav-links a.active{background:var(--ink);color:var(--white);}
.nav-toggle{display:none;}
@media (max-width:760px){
  .nav-links{position:fixed;top:64px;left:0;right:0;flex-direction:column;background:var(--white);border-bottom:var(--border) solid var(--ink);padding:12px 24px 20px;transform:translateY(-120%);transition:transform .2s ease;}
  .nav-links.open{transform:translateY(0);}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:var(--border) solid var(--ink);border-radius:10px;background:var(--yellow-400);font-size:20px;cursor:pointer;}
}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;border:var(--border) solid var(--ink);font-weight:700;font-size:16px;cursor:pointer;box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease;}
.btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink);}
.btn:active{transform:translate(6px,6px);box-shadow:0 0 0 var(--ink);}
.btn-primary{background:var(--ink);color:var(--white);}
.btn-secondary{background:var(--white);color:var(--ink);}

/* Hero */
.hero{position:relative;overflow:visible;background:transparent;}
.hero-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:72px 24px 64px;max-width:1120px;margin:0 auto;}
@media (max-width:860px){.hero-inner{grid-template-columns:1fr;padding-top:48px;text-align:center;}.hero-cta{justify-content:center;}}
.eyebrow{display:inline-block;background:var(--ink);color:var(--yellow-400);font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:18px;}
.hero h1{color:var(--white);font-size:clamp(38px,5.6vw,62px);text-shadow:2px 0px 0 var(--ink),1.41px 1.41px 0 var(--ink),0px 2px 0 var(--ink),-1.41px 1.41px 0 var(--ink),-2px 0px 0 var(--ink),-1.41px -1.41px 0 var(--ink),0px -2px 0 var(--ink),1.41px -1.41px 0 var(--ink),4px 4px 0 var(--ink);}
.hero p.lead{margin-top:20px;font-size:19px;font-weight:500;max-width:46ch;color:var(--ink);}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px;}
.hero-art img{border-radius:20px;border:var(--border) solid var(--ink);box-shadow:var(--shadow);max-height:480px;width:auto;margin:0 auto;}

/* Trust strip */
.trust{background:var(--ink);color:var(--white);}
.trust-inner{display:flex;gap:32px;flex-wrap:wrap;justify-content:center;padding:22px 24px;max-width:1120px;margin:0 auto;font-weight:600;font-size:15px;}
.trust-item{display:flex;align-items:center;gap:8px;}
.trust-item .dot{width:8px;height:8px;border-radius:50%;background:var(--yellow-400);}

/* Sections */
.section{padding:72px 24px;}
.section-narrow{max-width:820px;margin:0 auto;}
.section-head{text-align:center;margin-bottom:44px;}
.section-head h2{font-size:clamp(32px,4.2vw,46px);color:var(--white);text-shadow:1.2px 0px 0 var(--ink),0.85px 0.85px 0 var(--ink),0px 1.2px 0 var(--ink),-0.85px 0.85px 0 var(--ink),-1.2px 0px 0 var(--ink),-0.85px -0.85px 0 var(--ink),0px -1.2px 0 var(--ink),0.85px -0.85px 0 var(--ink),2px 2px 0 var(--ink);}
.section-head p{margin-top:12px;font-size:17px;font-weight:700;color:#4a3f2d;max-width:52ch;margin-left:auto;margin-right:auto;background:var(--white);border:var(--border) solid var(--ink);border-radius:var(--radius);padding:14px 22px;display:inline-block;box-shadow:var(--shadow);}

.copy-box{
  background:var(--white);
  border:var(--border) solid var(--ink);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:20px 24px;
  font-weight:700;
}
.card{background:var(--white);border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media (max-width:820px){.grid-3{grid-template-columns:1fr;}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;}
@media (max-width:820px){.split{grid-template-columns:1fr;}.split.reverse img{order:1;}.split.reverse div{order:2;}}
.split img{border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);}

.cta-band{border-top:var(--border) solid var(--ink);border-bottom:var(--border) solid var(--ink);text-align:center;padding:64px 24px;}
.cta-band h2{color:var(--white);text-shadow:1.5px 0px 0 var(--ink),1.06px 1.06px 0 var(--ink),0px 1.5px 0 var(--ink),-1.06px 1.06px 0 var(--ink),-1.5px 0px 0 var(--ink),-1.06px -1.06px 0 var(--ink),0px -1.5px 0 var(--ink),1.06px -1.06px 0 var(--ink),3px 3px 0 var(--ink);font-size:clamp(30px,4.2vw,44px);}
.cta-band p{margin:14px 0 26px;font-weight:700;color:var(--ink);background:var(--white);border:var(--border) solid var(--ink);border-radius:999px;padding:10px 22px;display:inline-block;box-shadow:var(--shadow);}

.page-header{border-bottom:var(--border) solid var(--ink);padding:56px 24px;text-align:center;}
.page-header h1{color:var(--white);text-shadow:1.5px 0px 0 var(--ink),1.06px 1.06px 0 var(--ink),0px 1.5px 0 var(--ink),-1.06px 1.06px 0 var(--ink),-1.5px 0px 0 var(--ink),-1.06px -1.06px 0 var(--ink),0px -1.5px 0 var(--ink),1.06px -1.06px 0 var(--ink),3px 3px 0 var(--ink);font-size:clamp(30px,4.6vw,48px);}
.page-header p{margin-top:14px;font-weight:700;color:var(--ink);background:var(--white);border:var(--border) solid var(--ink);border-radius:999px;padding:10px 22px;display:inline-block;box-shadow:var(--shadow);}

/* Product catalog */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media (max-width:820px){.grid{grid-template-columns:1fr;}}
.product-card{background:var(--white);border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;}
.product-img{aspect-ratio:4/3;background:var(--cream);display:flex;align-items:center;justify-content:center;border-bottom:var(--border) solid var(--ink);overflow:hidden;}
.product-img img{width:100%;height:100%;object-fit:contain;padding:14px;}
.product-body{padding:18px 20px;}
.product-body h3{font-size:19px;letter-spacing:.5px;margin-bottom:6px;text-transform:none;}
.product-price{font-size:24px;color:var(--orange-900);margin-top:8px;}
.tag{display:inline-block;background:var(--blue-600);color:var(--white);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:10px;}

/* Form */
.form-card{background:var(--white);border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:36px;max-width:640px;margin:0 auto;}
.field{margin-bottom:20px;}
.field label{display:block;font-weight:700;margin-bottom:6px;font-size:14px;}
.field input,.field textarea{width:100%;padding:12px 14px;border:2px solid var(--ink);border-radius:10px;font-family:inherit;font-size:15px;background:var(--cream);}
.field input:focus,.field textarea:focus{outline:3px solid var(--blue-600);outline-offset:1px;}
.field textarea{resize:vertical;min-height:110px;}

/* Contact info cards */
.contact-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:640px;margin:0 auto 40px;}
@media (max-width:600px){.contact-info-grid{grid-template-columns:1fr;}}
.contact-info-card{text-align:center;background:var(--white);border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px 20px;}
.contact-info-card .label{font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--orange-900);margin-bottom:8px;}
.contact-info-card .value{font-size:19px;font-weight:700;}

/* FAQ */
.faq-item{border:var(--border) solid var(--ink);border-radius:var(--radius);background:var(--white);margin-bottom:16px;overflow:hidden;}
.faq-q{width:100%;text-align:left;padding:18px 20px;font-weight:700;font-size:16px;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:inherit;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;padding:0 20px;color:#4a3f2d;}
.faq-item.open .faq-a{max-height:320px;padding-bottom:18px;}
.faq-item.open .chev{transform:rotate(180deg);}
.chev{transition:transform .2s ease;}

/* Footer */
.footer{background:var(--ink);color:var(--white);padding:40px 24px 28px;}
.footer-inner{max-width:1120px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;}
.footer-brand{display:flex;align-items:center;gap:10px;}
.footer-brand img{height:36px;width:36px;object-fit:contain;}
.footer-brand span{font-family:'Fredoka',sans-serif;font-weight:700;font-size:18px;letter-spacing:.5px;color:var(--yellow-400);text-transform:uppercase;}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;font-weight:600;list-style:none;padding:0;margin:0;}
.footer-links a:hover{color:var(--yellow-400);}
.footer-social{display:flex;gap:14px;}
.footer-social a{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:2px solid var(--white);border-radius:50%;font-size:15px;transition:background .15s ease,color .15s ease;}
.footer-social a:hover{background:var(--yellow-400);color:var(--ink);border-color:var(--yellow-400);}
.footer-bottom{max-width:1120px;margin:20px auto 0;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;font-size:13px;color:rgba(255,255,255,.65);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}

/* Floating animation */
@keyframes float-bob{
  0%{transform:translateY(0px);}
  50%{transform:translateY(-14px);}
  100%{transform:translateY(0px);}
}
.float{
  animation:float-bob 3.4s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce){
  .float{animation:none;}
}

/* Slow clockwise spin */
@keyframes spin-cw{
  from{transform:rotate(0deg);}
  to{transform:rotate(360deg);}
}
.spin-slow{
  animation:spin-cw 18s linear infinite;
}
@media (prefers-reduced-motion: reduce){
  .spin-slow{animation:none;}
}

/* Scroll reveal */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .65s cubic-bezier(.22,.68,0,1.01),transform .65s cubic-bezier(.22,.68,0,1.01);}
.reveal.visible{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none;}}

/* Torn pack edge */

