:root{--ink:#183c3b;--cream:#fff8ec;--yellow:#f8bc35;--orange:#ed684c;--pink:#ef907d;--line:rgba(24,60,59,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px}.grain{pointer-events:none;z-index:4;position:fixed;inset:0;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,92px);position:relative;z-index:3}.brand{color:var(--ink);display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-family:Outfit,sans-serif;font-weight:800;font-size:29px;letter-spacing:-1.8px}.brand svg{width:31px;height:31px;color:var(--orange)}.brand span span{color:var(--orange)}nav{display:flex;gap:33px;margin-left:120px}nav a,footer a{font-size:14px;color:var(--ink);text-decoration:none;font-weight:600}nav a:hover,footer a:hover{color:var(--orange)}.button{border:0;display:inline-flex;align-items:center;gap:18px;text-decoration:none;background:var(--orange);color:#fff;padding:17px 22px 17px 25px;border-radius:99px;font-weight:700;box-shadow:0 8px 0 rgba(123,46,38,.12);transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:0 11px 0 rgba(123,46,38,.12)}.button span{font-size:21px;line-height:11px}.button-small{font-size:14px;padding:12px 16px 12px 19px;gap:12px;box-shadow:none}.hero{min-height:650px;display:grid;grid-template-columns:1.02fr .98fr;gap:25px;padding:56px clamp(24px,10vw,155px) 71px;overflow:hidden}.hero-copy{padding-top:35px;z-index:1}.eyebrow,.section-tag{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow i{height:8px;width:8px;border-radius:100%;display:inline-block;background:var(--orange)}h1,h2,h3{font-family:Outfit,sans-serif;letter-spacing:-3.2px;margin:0;font-weight:700;line-height:.98}h1{font-size:clamp(3.4rem,6.2vw,6.2rem);max-width:680px;margin:21px 0 27px}em{font-style:normal;color:var(--orange);font-weight:500}.hero-text{font-size:17px;line-height:1.65;max-width:510px;color:#426260;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:26px}.play-link{color:var(--ink);text-decoration:none;font-size:14px;font-weight:700}.play-link b{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;margin-right:8px;border:1px solid var(--ink);font-size:10px;border-radius:50%;transition:background .2s}.play-link:hover b{background:var(--ink);color:var(--cream)}.trust{display:flex;align-items:center;gap:10px;margin-top:65px;color:#426260;font-size:12px;line-height:1.35;font-weight:600}.avatars{display:flex}.avatars img{height:35px;width:35px;border:2px solid var(--cream);border-radius:50%;object-fit:cover;margin-left:-8px}.avatars img:first-child{margin-left:0}.hero-art{position:relative;min-height:490px}.sun{height:420px;width:420px;right:-32px;top:6px;position:absolute;border-radius:50%;background:var(--yellow);animation:float 8s ease-in-out infinite}.photo-frame{width:min(420px,79%);height:490px;position:absolute;right:46px;top:31px;border-radius:210px 210px 22px 22px;overflow:hidden;transform:rotate(3deg);box-shadow:17px 19px 0 rgba(24,60,59,.09);animation:portrait 1.1s cubic-bezier(.2,.9,.2,1) both}.photo-frame img{height:100%;width:100%;object-fit:cover;object-position:center}.circle-word{position:absolute;right:-2px;top:30px;width:180px;height:180px;border:1px solid rgba(24,60,59,.35);border-radius:50%;font-size:10px;letter-spacing:3.1px;padding:44px 13px;transform:rotate(30deg);animation:spin 18s linear infinite}.floating-card{position:absolute;z-index:1;bottom:14px;left:0;border-radius:16px;background:#fff8ec;padding:15px 21px 15px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 13px 30px rgba(24,60,59,.15);animation:float 5s ease-in-out infinite}.heart{height:40px;width:40px;background:var(--pink);color:#fff;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-size:13px}.floating-card small{font-size:11px;color:#58706e;margin-top:3px}.spark{position:absolute;color:var(--orange);font-size:34px;z-index:2;animation:pulse 2s ease-in-out infinite}.spark-one{left:35px;top:84px}.spark-two{right:12px;bottom:88px;font-size:25px;animation-delay:1s}.paw{position:absolute;color:var(--ink);font-size:17px;opacity:.8}.paw:after,.paw:before{content:"";position:absolute;border-radius:50%;background:currentColor;height:7px;width:7px}.paw:before{left:-7px;top:-10px}.paw:after{right:-7px;top:-10px}.paw-one{bottom:23px;right:7px;transform:rotate(-24deg)}.paw-two{top:218px;left:8px;transform:rotate(35deg)}.marquee{overflow:hidden;background:var(--ink);color:var(--cream);padding:19px 0;white-space:nowrap}.marquee div{width:max-content;animation:marquee 22s linear infinite}.marquee span{font-family:Outfit,sans-serif;font-size:21px;font-weight:600;margin:0 32px}.marquee b{color:var(--yellow);font-size:19px}.intro{padding:131px clamp(24px,10vw,155px) 112px}.section-tag{color:var(--orange);margin-bottom:46px}.intro-content{display:grid;grid-template-columns:1.2fr .55fr;gap:9vw;align-items:end}.intro h2,.services h2,.family h2,.contact h2{font-size:clamp(2.8rem,4.9vw,5rem)}.intro-content p,.family-copy>p{line-height:1.7;color:#426260;margin:0 0 28px}.text-link{color:var(--ink);font-weight:700;font-size:14px;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:6px}.text-link span{margin-left:24px;font-size:18px}.numbers{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);margin-top:87px;padding-top:26px}.numbers div{display:flex;align-items:baseline;gap:15px}.numbers strong{font-family:Outfit,sans-serif;font-size:42px;letter-spacing:-2px}.numbers span{color:#58706e;font-size:13px}.tiny{font-size:20px!important}.services{background:var(--ink);padding:105px clamp(24px,10vw,155px) 120px;color:var(--cream)}.light{color:var(--yellow);margin-bottom:35px}.services-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:51px}.services-heading p{max-width:250px;color:#b6c7bd;font-size:15px;line-height:1.6}.services h2 em{color:var(--yellow)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{min-height:350px;border-radius:19px;padding:26px 27px;position:relative;color:var(--ink);overflow:hidden;transition:transform .3s}.service-card:hover{transform:translateY(-9px)}.cream{background:#faf0dc}.yellow{background:var(--yellow)}.pink{background:var(--pink)}.service-icon{font-size:45px;font-family:Outfit,sans-serif;display:block;line-height:1}.card-number{font-size:12px;position:absolute;right:27px;top:29px;font-weight:700}.service-card h3{font-size:39px;position:absolute;bottom:82px}.service-card p{position:absolute;bottom:24px;max-width:220px;margin:0;color:#426260;font-size:13px;line-height:1.4}.service-card a{position:absolute;right:24px;bottom:20px;height:42px;width:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ink);color:#fff;text-decoration:none;font-size:22px}.family{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10vw;padding:125px clamp(24px,10vw,155px)}.family-image{position:relative}.family-image img{width:100%;height:490px;object-fit:cover;border-radius:170px 170px 17px 17px;box-shadow:-12px 14px 0 var(--yellow)}.family-image span{position:absolute;right:-22px;top:20%;background:var(--orange);color:#fff;padding:18px;border-radius:50%;font-size:24px}.family-copy h2{margin:18px 0 29px}.family-copy{max-width:510px}.button-dark{background:var(--ink);box-shadow:none}.contact{position:relative;overflow:hidden;background:var(--yellow);padding:115px 24px;text-align:center}.contact-content{position:relative;z-index:1}.contact .eyebrow{justify-content:center}.contact h2{font-size:clamp(3.2rem,5vw,5.5rem);margin:22px 0 35px}.contact h2 em{color:var(--orange)}.contact-blobs:before,.contact-blobs:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:var(--pink);opacity:.7}.contact-blobs:before{left:-130px;bottom:-160px}.contact-blobs:after{right:-110px;top:-140px;background:#e87a54}.contact-paws{position:absolute;right:10%;bottom:30px;font-size:31px;line-height:13px;transform:rotate(-25deg);opacity:.35}footer{display:flex;align-items:center;justify-content:space-between;padding:29px clamp(24px,6vw,92px);background:var(--cream)}footer p{font-size:12px;color:#58706e}footer div{display:flex;gap:20px}@keyframes float{50%{transform:translateY(-10px)}}@keyframes spin{to{transform:rotate(390deg)}}@keyframes pulse{50%{transform:scale(1.25) rotate(12deg)}}@keyframes portrait{from{opacity:0;transform:translateY(35px) rotate(8deg)}to{opacity:1;transform:translateY(0) rotate(3deg)}}@keyframes marquee{to{transform:translateX(-33.33%)}}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.14s}.delay2{transition-delay:.28s}@media(max-width:800px){.header{height:76px}.header nav{display:none}.header .button{display:none}.hero{padding:36px 26px 80px;display:block}.hero-copy{padding-top:0}.hero-art{margin-top:45px;min-height:420px}.photo-frame{height:410px;right:23px}.sun{width:340px;height:340px}.circle-word{right:-26px}.intro,.services,.family{padding:78px 26px}.intro-content,.family{display:block}.intro-content>div{margin-top:30px}.numbers{margin-top:58px;gap:10px}.numbers div{display:block}.numbers strong{display:block;font-size:31px}.numbers span{font-size:11px}.services-heading{display:block}.services-heading p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:290px}.family-image img{height:405px}.family-copy{margin-top:65px}.contact{padding:90px 22px}footer{flex-wrap:wrap;gap:13px}footer p{order:3;width:100%;margin:0}.hero-text{font-size:16px}h1{letter-spacing:-2.5px}.trust{margin-top:45px}}@media(max-width:430px){.hero-actions{gap:15px;align-items:flex-start;flex-direction:column}.photo-frame{width:82%;right:11px}.floating-card{left:-7px}.numbers{grid-template-columns:repeat(3,1fr)}.numbers strong{font-size:25px}.family-image span{right:-10px}.brand{font-size:27px}}
