/* Little Treasures Preschool & Childcare: DRAFT 1 */
:root{
  --green:#10B981; --green-d:#0a7c58; --forest:#0b3d2e; --mint:#E6F7EF;
  --cream:#FFFBF0; --sun:#FFC93C; --sky:#4FB7E8; --coral:#FF7A6B; --grape:#9B7EDE;
  --ink:#1d2f29; --slate:#46605a; --line:#d9eadf;
  --r:26px; --shadow:0 12px 30px rgba(11,61,46,.12);
  --fd:'Baloo 2','Nunito',system-ui,sans-serif;
  --f:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{margin:0;padding:0}
body{font-family:var(--f);font-size:18px;line-height:1.7;color:var(--slate);background:var(--cream);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,figure,address,blockquote{margin:0;padding:0}
address{font-style:normal}
ul{list-style:none}
a{color:var(--green-d);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:3px solid var(--sky);outline-offset:3px;border-radius:8px}
h1,h2,h3{font-family:var(--fd);color:var(--forest);font-weight:700;line-height:1.1}
h1{font-size:clamp(2.5rem,6vw,4.1rem)}
h2{font-size:clamp(2rem,4vw,2.8rem)}
h3{font-size:1.35rem;line-height:1.2}
.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px 12px;z-index:999}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.sec{padding:84px 0}
.center{text-align:center}
.eyebrow{display:inline-block;font-family:var(--fd);font-weight:700;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;color:var(--green-d);background:var(--mint);padding:4px 16px;border-radius:99px;margin-bottom:14px}
.lead{font-size:1.2rem;max-width:60ch}
.center .lead{margin-left:auto;margin-right:auto}
.squig{display:block;width:120px;height:14px;margin:14px 0 22px}
.center .squig{margin-left:auto;margin-right:auto}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--fd);font-weight:700;font-size:1.2rem;padding:14px 30px;border-radius:99px;border:3px solid var(--forest);background:var(--sun);color:var(--forest);box-shadow:0 5px 0 var(--forest);transition:transform .15s,box-shadow .15s;text-decoration:none}
.btn:hover{transform:translateY(2px);box-shadow:0 3px 0 var(--forest);text-decoration:none}
.btn.green{background:var(--green-d);color:#fff}
.btn.ghost{background:#fff}
.btn svg{width:22px;height:22px;fill:currentColor}

/* header */
.top{background:var(--forest);color:#d7efe4;font-size:.95rem}
.top .wrap{display:flex;justify-content:space-between;gap:16px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.top a{color:#fff;font-weight:700}
header.main{background:#fff;border-bottom:4px solid var(--green);position:sticky;top:0;z-index:50}
header.main .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:12px;color:var(--forest);text-decoration:none}
.brand:hover{text-decoration:none}
.lt{display:flex;gap:4px}
.lt span{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-family:var(--fd);font-weight:800;font-size:1.5rem;color:#fff;box-shadow:0 3px 0 rgba(0,0,0,.18)}
.lt span:nth-child(1){background:var(--green-d);transform:rotate(-6deg)}
.lt span:nth-child(2){background:var(--sun);color:var(--forest);transform:rotate(5deg)}
.brand b{display:block;font-family:var(--fd);font-size:1.3rem;line-height:1.05}
.brand small{display:block;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);font-weight:700}
nav ul{display:flex;gap:6px;align-items:center}
nav a{font-family:var(--fd);font-weight:600;font-size:1.1rem;color:var(--forest);padding:6px 14px;border-radius:99px}
nav a:hover{background:var(--mint);text-decoration:none}
nav a.cta{background:var(--green-d);color:#fff}

/* hero */
.hero{background:var(--mint);position:relative;overflow:hidden;padding:70px 0 120px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero p.lead{margin:18px 0 28px}
.hero .actions{display:flex;gap:16px;flex-wrap:wrap}
.hero h1 em{font-style:normal;color:var(--green-d);position:relative;white-space:nowrap}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:.28em;background:var(--sun);z-index:-1;border-radius:99px;transform:rotate(-1deg)}
.photo{position:relative}
.arch{border-radius:200px 200px 28px 28px;overflow:hidden;border:6px solid #fff;box-shadow:var(--shadow);background:#fff}
.arch img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:35% 50%}
.sticker{position:absolute;font-family:var(--fd);font-weight:700;color:var(--forest);background:var(--sun);border:3px solid var(--forest);border-radius:99px;padding:6px 16px;box-shadow:0 4px 0 var(--forest);transform:rotate(-6deg)}
.photo .sticker{left:-14px;bottom:36px}
.blob{position:absolute;border-radius:50%;opacity:.55;z-index:0}
.b1{width:160px;height:160px;background:var(--sun);top:-40px;right:-40px}
.b2{width:90px;height:90px;background:var(--coral);bottom:40px;left:6%}
.b3{width:60px;height:60px;background:var(--sky);top:40%;left:46%}
.hero .wrap{position:relative;z-index:1}
.wave{display:block;width:100%;height:70px;position:absolute;left:0;bottom:-1px}

/* letter */
.letter{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.note{background:#fff;border:3px solid var(--forest);border-radius:var(--r);box-shadow:8px 8px 0 var(--sun);padding:40px 42px;position:relative}
.note p+p{margin-top:1em}
.note .dear{font-family:var(--fd);font-size:1.6rem;color:var(--forest);font-weight:700;margin-bottom:.4em}
.sign{margin-top:1.4em;font-family:var(--fd);color:var(--forest);font-size:1.15rem;line-height:1.3}
.sign b{display:block;font-size:1.6rem;color:var(--green-d)}
.fact{display:flex;gap:16px;align-items:flex-start;margin-top:22px}
.fact .num{flex:none;width:76px;height:76px;border-radius:20px;display:grid;place-items:center;font-family:var(--fd);font-weight:800;font-size:1.9rem;color:#fff;box-shadow:0 4px 0 rgba(0,0,0,.18)}
.fact:nth-of-type(1) .num{background:var(--green-d);transform:rotate(-5deg)}
.fact:nth-of-type(2) .num{background:var(--coral);transform:rotate(4deg)}
.fact:nth-of-type(3) .num{background:var(--sky);transform:rotate(-3deg)}
.fact h3{margin-bottom:2px}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-top:44px}
.cards.four{grid-template-columns:repeat(4,1fr)}
@media (max-width:1020px){.cards.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.cards.four{grid-template-columns:1fr}}
.card{background:#fff;border-radius:var(--r);border:3px solid var(--forest);padding:28px 26px;box-shadow:0 6px 0 var(--forest)}
.card .ic{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;margin-bottom:14px}
.card .ic svg{width:34px;height:34px;fill:#fff}
.card:nth-child(1) .ic{background:var(--green-d)}
.card:nth-child(2) .ic{background:var(--sky)}
.card:nth-child(3) .ic{background:var(--coral)}
.card:nth-child(4) .ic{background:var(--grape)}
.card h3{margin-bottom:6px}
.bandwhite{background:#fff}
.bandgreen{background:var(--green-d);color:#e6f7ef}
.bandgreen h2,.bandgreen h3{color:#fff}
.bandgreen .eyebrow{background:rgba(255,255,255,.16);color:#fff}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pill{display:inline-block;background:var(--sun);color:var(--forest);font-family:var(--fd);font-weight:700;padding:2px 14px;border-radius:99px}
.blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:420px;margin-left:auto}
.blocks span{aspect-ratio:1;border-radius:20px;display:grid;place-items:center;font-family:var(--fd);font-weight:800;font-size:3rem;color:#fff;box-shadow:0 6px 0 rgba(0,0,0,.2)}
.blocks span:nth-child(1){background:var(--coral);transform:rotate(-5deg)}
.blocks span:nth-child(2){background:var(--sun);color:var(--forest);transform:rotate(3deg)}
.blocks span:nth-child(3){background:var(--sky);transform:rotate(-2deg)}
.blocks span:nth-child(4){background:var(--grape);transform:rotate(4deg)}
.blocks span:nth-child(5){background:var(--green);transform:rotate(-4deg)}
.blocks span:nth-child(6){background:var(--forest);transform:rotate(2deg)}

/* contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}
.cbox{background:#fff;border:3px solid var(--forest);border-radius:var(--r);padding:30px;box-shadow:0 6px 0 var(--forest)}
.cbox dl{margin:14px 0 0}
.cbox dt{font-family:var(--fd);font-weight:700;color:var(--green-d);text-transform:uppercase;letter-spacing:.06em;font-size:.9rem;margin-top:12px}
.cbox dd{margin:0;font-size:1.15rem;color:var(--ink)}
.big-phone{font-family:var(--fd);font-weight:800;font-size:clamp(2rem,5vw,2.8rem);color:var(--forest);display:block;line-height:1.1}
.disc{font-size:.95rem;color:var(--slate);margin-top:26px;max-width:70ch}

footer{background:var(--forest);color:#bcd8cc;padding:44px 0;font-size:.95rem}
footer a{color:#fff}
footer .wrap{display:grid;gap:10px}

@media (max-width:860px){
  .hero .wrap,.letter,.split,.contact{grid-template-columns:1fr}
  .blocks{margin:0 auto}
  nav ul li:not(:last-child){display:none}
  .sec{padding:60px 0}
  .photo{max-width:420px;margin:0 auto}
  .note{padding:28px 24px}
}
@media (prefers-reduced-motion:no-preference){
  .btn,.card{transition:transform .2s}
  .card:hover{transform:translateY(-4px)}
}
