@font-face{font-family:'Fredoka';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/fredoka-latin-600.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/nunito-latin-var.woff2) format('woff2')}
:root{--petrol-900:#085868;--teal-700:#106B80;--ink-900:#12262B;--shadow-sm:0 2px 6px rgba(18,38,43,.08);--font-display:'Fredoka',system-ui,sans-serif;--font-body:'Nunito',system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;font-family:var(--font-body);color:var(--ink-900);font-size:18px;line-height:1.6}
img{display:block;max-width:100%;height:auto}
a{color:var(--petrol-900)}a:hover{color:var(--teal-700)}
a:focus-visible{outline:3px solid #085868;outline-offset:3px;border-radius:6px}
h1,h2{font-family:var(--font-display);font-weight:600;color:var(--petrol-900);margin:0}
p{margin:0}
.wrap{width:min(1160px,calc(100% - 40px));margin:0 auto}

.hero{position:relative;isolation:isolate;overflow:hidden;background:#EAF7FC}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;max-width:none}
.hero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f5fcfff0 0%,#f5fcffbd 36%,#f5fcff14 60%,transparent 76%)}
.hero-fade{position:absolute;left:0;right:0;bottom:0;height:120px;z-index:-1;background:linear-gradient(transparent,#fff)}
.hero header{padding-top:24px}
.logo{width:320px;max-width:80%}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:28px 50px;align-items:center;padding:24px 0 72px}
.hero-text{display:flex;flex-direction:column;gap:20px;max-width:600px}
h1{font-size:clamp(36px,4.3vw,58px);line-height:1.12;text-wrap:balance}
.lead{font-size:clamp(18px,1.6vw,21px);max-width:540px;text-wrap:pretty}
.bird{justify-self:center;align-self:end;width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center}
.bubble{position:relative;z-index:1;margin:0 0 4px;background:#FFFAF0;border-radius:55% 45% 46% 54%/48% 52% 48% 52%;padding:22px 32px;text-align:center;font-family:var(--font-display);font-weight:600;font-size:clamp(22px,2.2vw,26px);line-height:1.2;color:var(--petrol-900);transform:rotate(-4deg);box-shadow:var(--shadow-sm)}
.bird img{width:100%;max-height:440px;object-fit:contain;object-position:center bottom}
@media (max-width:939px){
  .hero-scrim{background:linear-gradient(180deg,#f5fcffe6 0%,#f5fcffc4 40%,transparent 62%)}
  .hero-bg{object-position:62% center}
}

.features{width:min(1030px,calc(100% - 40px));margin:0 auto;padding:22px 0 28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:30px 70px}
.features h2{font-size:clamp(22px,2vw,25px);line-height:1.3;margin-bottom:10px}
.features p{font-size:17px}

.together{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:center;gap:24px 55px;padding:40px 0 36px}
.together img{width:100%;border-radius:30px}
.together h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin-bottom:12px;max-width:390px}

.closing{padding:34px 24px 36px;text-align:center;background:#EAF6FB;border-radius:55% 45% 0 0/18% 20% 0 0}
.closing h2{font-size:clamp(24px,2.4vw,28px);line-height:1.3;margin-bottom:8px;text-wrap:balance}
.closing strong{display:block;padding-top:14px}

footer{background:#EAF6FB}
footer p{padding:22px 0;font-size:15px}
