:root{--navy:#1f3a33;--mint:#7fd8be;--sun:#ffd34d;--coral:#ff7b6b;--cream:#fff8ec}
*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(var(--mint) 0 300px,var(--cream) 300px);color:var(--navy);font:400 17px/1.6 Nunito,sans-serif;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}
#trail{position:fixed;inset:0;pointer-events:none;z-index:2}#trail svg{position:absolute;width:22px;height:22px;fill:var(--navy);opacity:.18;animation:fade 1.6s forwards}@keyframes fade{to{opacity:0;transform:scale(.5)}}
header{position:sticky;top:12px;z-index:20;margin:12px 3vw 0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px 10px 22px;background:#fff;border-radius:60px;box-shadow:0 6px 0 var(--navy);border:3px solid var(--navy)}
.logo img{height:40px;width:auto}nav{display:flex;gap:6px}nav a{text-decoration:none;font:700 17px 'Baloo 2';padding:6px 16px;border-radius:30px;transition:background .2s}nav a:hover{background:var(--sun)}
.btn,.call{display:inline-block;font:800 18px 'Baloo 2';text-decoration:none;border:3px solid var(--navy);border-radius:40px;padding:12px 26px;background:var(--coral);color:#fff;box-shadow:0 6px 0 var(--navy);cursor:pointer;position:relative;transition:transform .15s,box-shadow .15s}
.call{padding:8px 20px;background:var(--mint);color:var(--navy)}.btn.alt{background:#fff;color:var(--navy)}
.bouncy:hover{animation:jelly .6s}.bouncy:active{transform:translateY(5px);box-shadow:0 1px 0 var(--navy)}
@keyframes jelly{0%{transform:scale(1)}30%{transform:scale(1.15,.85)}45%{transform:scale(.9,1.1)}60%{transform:scale(1.05,.95)}75%{transform:scale(.98,1.02)}100%{transform:scale(1)}}
.hero{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:3vw;align-items:center;padding:60px 6vw 120px;background:var(--mint);margin-top:-60px;padding-top:120px}
.pill{display:inline-block;background:#fff;border:3px solid var(--navy);border-radius:30px;padding:2px 14px;font:700 15px 'Baloo 2'}
h1{font:800 clamp(44px,5.4vw,84px)/1.18 'Baloo 2';margin:10px 0}h1 .w{line-height:1.18}h1 .w{display:inline-block}h1 .w:nth-child(2){color:#fff;-webkit-text-stroke:3px var(--navy);paint-order:stroke fill}h1 .w:nth-child(4){color:var(--coral)}
.ht>p:not(.pill){font-size:19px;max-width:500px}.btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.dogbox{position:relative;text-align:center}#dog{width:min(440px,100%);height:auto;overflow:visible}#tail{transform-origin:215px 200px;animation:wag .35s ease-in-out infinite alternate}@keyframes wag{from{transform:rotate(-14deg)}to{transform:rotate(18deg)}}
#head{transform-origin:150px 180px;animation:tilt 4s ease-in-out infinite}@keyframes tilt{0%,70%,100%{transform:rotate(0)}80%{transform:rotate(-8deg)}90%{transform:rotate(6deg)}}
.ear{transform-box:fill-box;transform-origin:50% 10%;animation:ear 2.2s ease-in-out infinite}.ear.r{animation-delay:-1.1s}@keyframes ear{50%{transform:rotate(14deg)}}#tongue{animation:pant .5s ease-in-out infinite alternate;transform-origin:150px 156px}@keyframes pant{to{transform:scaleY(1.3)}}
.bubble{position:absolute;top:0;right:0;max-width:200px;background:#fff;border:3px solid var(--navy);border-radius:24px 24px 24px 4px;padding:10px 14px;font:700 15px/1.3 'Baloo 2';animation:bob 3s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-10px) rotate(2deg)}}
.wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:80px}
section{padding:90px 6vw}h2{font:800 clamp(36px,4vw,60px)/1.05 'Baloo 2';margin-bottom:30px;text-align:center}
.usl{background:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.c{background:var(--b);border:3px solid var(--navy);border-radius:32px;padding:26px;box-shadow:0 8px 0 var(--navy);transition:transform .3s cubic-bezier(.3,1.8,.5,1)}.c:hover{transform:translateY(-8px) rotate(-2deg)}.c:nth-child(even):hover{transform:translateY(-8px) rotate(2deg)}
.ic{width:46px;height:46px;fill:var(--navy)}.c:hover .ic{animation:wig .5s}@keyframes wig{25%{transform:rotate(-18deg)}75%{transform:rotate(18deg)}}.c h3{font:800 24px 'Baloo 2';margin-top:8px}.c b{display:inline-block;margin-top:10px;background:#fff;border:2px solid var(--navy);border-radius:20px;padding:2px 12px;font-family:'Baloo 2'}
.size{text-align:center;background:var(--sun)}.size>p{margin:-14px 0 30px}.sz{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center;background:#fff;border:3px solid var(--navy);border-radius:40px;padding:30px;box-shadow:0 10px 0 var(--navy);max-width:1000px;margin:auto}
.stage{height:260px;display:flex;align-items:flex-end;justify-content:center}#szdog{width:200px;height:200px;fill:var(--coral);transform-origin:bottom center;transition:transform .5s cubic-bezier(.3,1.8,.5,1)}
input[type=range]{width:100%;height:16px;-webkit-appearance:none;appearance:none;background:var(--mint);border:3px solid var(--navy);border-radius:20px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:36px;height:36px;border-radius:50%;background:var(--coral);border:3px solid var(--navy);cursor:grab}input[type=range]::-moz-range-thumb{width:32px;height:32px;border-radius:50%;background:var(--coral);border:3px solid var(--navy)}
.read{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:20px 0;font-family:'Baloo 2';flex-wrap:wrap}.read b{font-size:24px}.read span{font-size:22px}.read strong{font:800 50px 'Baloo 2';color:var(--coral)}.read strong.bump{animation:jelly .5s}
.ticks{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:13px;text-align:left}.ticks span{background:var(--cream);border-radius:12px;padding:4px 10px}
.kasia{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}.photos{position:relative;height:520px}.photos img{position:absolute;border:4px solid var(--navy);border-radius:34px;object-fit:cover;box-shadow:0 8px 0 var(--navy)}
.p1{width:62%;height:70%;left:0;top:0;transform:rotate(-4deg)}.p2{width:52%;height:52%;right:0;top:12%;transform:rotate(5deg)}.p3{width:46%;height:44%;left:22%;bottom:0;transform:rotate(-2deg)}
.kt h2{text-align:left}.revs{display:grid;gap:12px;margin-top:20px}blockquote{background:#fff;border:3px solid var(--navy);border-radius:24px 24px 24px 6px;padding:14px 18px;font-weight:700}cite{display:block;font-style:normal;color:var(--coral);font-family:'Baloo 2'}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:0}.gal img{border-radius:40px 40px 40px 8px;border:3px solid var(--navy);aspect-ratio:1;object-fit:cover;width:100%;transition:transform .35s cubic-bezier(.3,1.8,.5,1)}.gal img:hover{transform:scale(1.04) rotate(-2deg)}
.viz{background:var(--coral)}.card{max-width:760px;margin:auto;background:#fff;border:3px solid var(--navy);border-radius:40px;padding:40px;box-shadow:0 10px 0 var(--navy);text-align:center}
form{display:grid;gap:12px}input:not([type]){border:3px solid var(--navy);border-radius:20px;padding:14px 18px;font:700 17px Nunito}form .btn{justify-self:center}.adr{margin-top:20px;font-size:15px}
footer{text-align:center;padding:24px 6vw 70px;font-size:14px}.badge{position:fixed;left:12px;bottom:12px;z-index:30;background:#fff;border:2px solid var(--navy);border-radius:20px;font:700 12px 'Baloo 2';padding:4px 12px;text-decoration:none}
.conf{position:fixed;width:26px;height:26px;fill:var(--coral);pointer-events:none;z-index:60}
.pop{opacity:0;transform:translateY(40px) scale(.9)}.pop.in{animation:spring .9s cubic-bezier(.3,1.6,.5,1) forwards}@keyframes spring{to{opacity:1;transform:none}}
.photos .pop.in{animation:none;opacity:1;transition:transform .9s cubic-bezier(.3,1.6,.5,1)}.photos .pop{transition:none}
@media(max-width:860px){nav{display:none}header{margin:10px 4vw 0}.logo img{height:32px}.hero{grid-template-columns:1fr;padding:100px 6vw 110px;text-align:center}.ht>p:not(.pill){margin:auto}.btns{justify-content:center}.bubble{position:relative;display:inline-block;margin-bottom:6px}#dog{width:min(300px,80vw)}
.grid,.gal{grid-template-columns:1fr}.sz{grid-template-columns:1fr;padding:22px}.stage{height:180px}#szdog{width:140px;height:140px}.read strong{font-size:40px}.ticks{grid-template-columns:1fr}.kasia{grid-template-columns:1fr}.photos{height:380px}section{padding:64px 6vw}.card{padding:26px}h1 .w:nth-child(2){-webkit-text-stroke:2px var(--navy)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.pop{opacity:1;transform:none}}
