:root{
  --cream:#fff8e9;
  --cream-2:#f4ead5;
  --ink:#1e3544;
  --coral:#ef6b5d;
  --yellow:#f7c83f;
  --mint:#9bcdb9;
  --line:rgba(30,53,68,.18);
  --white:#fffdf7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:"DM Sans",sans-serif}
a{color:inherit;text-decoration:none}
.navbar{height:76px;padding:0 5.7%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(30,53,68,.06)}
.brand{display:flex;align-items:center;gap:10px;line-height:1}
.brand-mark{display:grid;place-items:center;width:31px;height:31px;background:var(--coral);border:2px solid var(--ink);border-radius:50%;font-family:"Nunito";font-weight:900;font-size:16px;transform:rotate(-8deg)}
.brand strong{display:block;font-size:9px;letter-spacing:.12em}
.brand small{display:block;font-size:9px;margin-top:3px;font-weight:700}
.nav-links{display:flex;align-items:center;gap:29px;font-size:12px;font-weight:700}
.nav-cta{background:var(--ink);color:#fff;padding:12px 17px;border-radius:22px}
.nav-cta span{margin-left:5px}.menu-toggle{display:none;background:none;border:0;font-size:25px}
.hero{height:340px;position:relative;overflow:hidden;background:#20333e}
.hero-bg{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,35,46,.82) 0%,rgba(13,35,46,.45) 45%,rgba(13,35,46,.05) 75%)}
.hero-content{position:absolute;left:9%;top:50%;transform:translateY(-50%);color:white}
.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:800;margin:0 0 18px}
.yellow{color:var(--yellow)}.coral{color:var(--coral)}
.hero h1{font-family:"Nunito";font-size:32px;line-height:.98;margin:0 0 17px;font-weight:900}
.hero h1 em{font-family:"Caveat";font-size:34px;color:var(--yellow);font-weight:600}
.hero p:not(.eyebrow){font-size:12px;line-height:1.7;margin-bottom:18px}
.text-link{font-size:11px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:4px}
.students-badge{position:absolute;right:8%;top:28px;background:var(--yellow);color:var(--ink);width:76px;height:76px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;text-align:center;font-size:8px;line-height:1.1;transform:rotate(8deg)}
.students-badge b{font-size:11px}
.intro,.collection,.order{position:relative;padding:74px 9%}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:55px;background:var(--cream)}
.section-number{position:absolute;left:3.2%;top:18px;font-family:"Nunito";font-weight:900;font-size:15px}
.intro-title h2,.collection h2,.order h2{font-family:"Nunito";font-size:40px;line-height:.98;margin:0;font-weight:900;letter-spacing:-1.5px}
.intro-title h2 span,.order h2 span{font-family:"Caveat";color:var(--yellow);font-size:43px;font-weight:600}
.intro-copy{padding-top:8px;max-width:390px;font-size:13px;line-height:1.65}
.stats{border-top:1px solid var(--line);margin-top:29px;padding-top:17px;display:flex;gap:40px}
.stats strong{display:block;font-family:"Nunito";font-size:19px}
.stats span{font-size:8px;display:block}
.collection{background:var(--cream-2);padding-top:72px}
.collection-head p:not(.eyebrow){font-size:13px;line-height:1.6;margin:22px 0 25px}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}
.filter{border:1px solid rgba(30,53,68,.15);background:var(--cream);color:var(--ink);padding:11px 18px;border-radius:24px;font:700 11px "DM Sans";cursor:pointer}
.filter.active{background:var(--ink);color:white}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:900px}
.card{background:var(--cream);border:1px solid rgba(30,53,68,.12);transition:.2s;overflow:hidden}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px rgba(30,53,68,.1)}
.card-image{height:270px;position:relative;overflow:hidden;background:#ddd}
.card-image img{width:100%;height:100%;object-fit:cover;display:block}
.type-pill{position:absolute;left:14px;bottom:13px;background:var(--cream);border:1px solid var(--ink);border-radius:18px;padding:7px 12px;font-size:9px;font-weight:800}
.card-body{padding:17px 15px 18px}.card-category{font-size:9px;letter-spacing:.16em;font-weight:800;color:var(--coral);margin:0 0 9px}.card h3{font-family:"Nunito";font-size:17px;margin:0 0 7px}.card-body>p:last-child{font-size:10px;margin:0;color:#53616a}
.placeholder{display:grid;place-items:center;text-align:center;font-family:"Nunito";font-weight:900;font-size:28px;background:#b8d5c7}
.order{background:var(--mint);padding-bottom:80px}
.order-inner{max-width:950px}
.order h2{font-size:42px;margin-bottom:34px}
.order h2 span{font-size:43px}
.steps{border-top:1px solid rgba(30,53,68,.25)}
.step{display:grid;grid-template-columns:52px 1fr;gap:0;padding:25px 0;border-bottom:1px solid rgba(30,53,68,.2)}
.step-no{font-family:"Caveat";font-size:20px;font-weight:700}
.step h3{font-family:"Nunito";font-size:15px;margin:0 0 9px}.step p{font-size:11px;margin:0}
footer{background:var(--ink);color:#fff;padding:48px 7% 35px;min-height:315px;position:relative}
.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:30px}.footer-brand .brand-mark{background:var(--coral);border-color:white;color:white}.footer-brand strong{font-family:"Nunito";font-size:24px;display:block}.footer-brand em{font-family:"Caveat";color:var(--yellow);font-size:24px}
.footer-contact .eyebrow{margin-bottom:14px}.footer-contact a{font-family:"Nunito";font-size:20px;font-weight:900;display:block}.footer-contact small{font-size:10px;color:#a9bec7}
.instagram{display:block;margin-top:35px;font-size:11px;font-weight:700}.copyright{font-size:9px;color:#86a2ae;margin-top:38px}
@media(max-width:700px){
  .navbar{height:65px;padding:0 5%}.nav-links{display:none}.menu-toggle{display:block}
  .nav-links.open{display:flex;position:absolute;top:65px;left:0;right:0;padding:20px;background:var(--cream);flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .hero{height:410px}.hero-content{left:7%;right:7%}.hero h1{font-size:34px}.students-badge{right:7%;top:20px}
  .intro,.collection,.order{padding:65px 7%}.intro{grid-template-columns:1fr;gap:25px}.section-number{left:3%;top:16px}
  .intro-title h2,.collection h2{font-size:36px}.cards{grid-template-columns:1fr}.card-image{height:260px}.extra-card{display:none}
  .order h2{font-size:36px}.desktop{display:none}
}
