:root{color-scheme:light;--ink:#23454b;--blue:#00aeca;--green:#55ad32;--pink:#ef9cc3;--yellow:#ffcf00}
*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:52px 38px 26px;font-family:"Trebuchet MS",Arial,sans-serif;color:var(--ink);background:#143e49;isolation:isolate}body::before{content:"";position:fixed;inset:-15px;z-index:-2;background:url("assets/jatszohaz.webp") center 53%/cover no-repeat;filter:blur(4px);pointer-events:none}body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(115deg,#083e4fda,#123d49b3 60%,#143c37d1);pointer-events:none}.page{width:min(100%,850px);text-align:center}.card{position:relative;isolation:isolate;padding:34px 44px 25px;border:2px solid #ffffffe6;border-radius:42px 58px 42px 58px;background:#fffcf5;box-shadow:0 28px 90px #001f3b50,0 0 0 10px #ffffff13}.card::before{content:"";position:absolute;inset:-7px;z-index:-2;border-radius:47px 62px 47px 62px;background:conic-gradient(from 40deg,#49bcd4,#65b941 25%,#ffd840 50%,#f4a2c6 75%,#49bcd4);transform:rotate(-1deg)}.card::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(ellipse at 100% 0,#e9f5eb80,transparent 55%),#fffcf5}.logo{display:block;width:min(100%,292px);height:auto;margin:0 auto 21px}.badge{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:99px;background:#edf3e4;color:#53753d;font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.badge span{width:6px;height:6px;background:#6aaa42;border-radius:50%}h1{position:relative;width:fit-content;margin:21px auto 24px;font-size:clamp(34px,5.5vw,55px);line-height:1.09;letter-spacing:-2.2px;font-weight:900}h1 span{color:#079ebc}h1 svg{position:absolute;left:6%;bottom:-13px;width:88%;height:15px;fill:none;stroke:#ffd04a;stroke-width:6;stroke-linecap:round}.intro,.invite{font-size:15px;line-height:1.7;color:#64777a;margin:0}.invite{margin:15px 0 24px;font-size:14px}.invite strong{color:#34545b}.contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:121px;padding:16px 8px;border:1px solid #ffffff90;border-radius:21px;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s;background:var(--surface);box-shadow:0 5px 0 var(--shadow);overflow:hidden}.button::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff80 50%,transparent 75%);transform:translateX(-150%) skewX(-15deg);transition:transform .65s;pointer-events:none}.button:hover{transform:translateY(-5px) rotate(-2deg);box-shadow:0 10px 0 var(--shadow)}.button:nth-child(2):hover{transform:translateY(-5px) rotate(2deg)}.button:hover::after{transform:translateX(150%) skewX(-15deg)}.button:active{transform:translateY(3px);box-shadow:0 2px 0 var(--shadow)}.button:focus-visible{outline:3px solid var(--ink);outline-offset:6px}.facebook{--surface:#def3f8;--shadow:#abd9e3}.email{--surface:#fff0b9;--shadow:#e9d28a}.phone{--surface:#f9e1ec;--shadow:#e7b9ce}.icon-wrap{display:grid;place-items:center}.icon-wrap svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.label{display:flex;flex-direction:column;gap:7px}.button strong{font-size:15px}.button small{font-size:11px;white-space:nowrap;color:#53676b}.thanks{margin:25px 0 0;font-size:12px;color:#7e8c87;display:flex;align-items:center;justify-content:center;gap:7px}.thanks span{font-size:24px;color:#dc91b4}footer{margin-top:24px;color:#ffffffb0;font-size:9px;letter-spacing:1.4px;line-height:1.8}footer span{padding:0 12px;color:#e4bd54}.toy{position:absolute;pointer-events:none;opacity:.82;filter:drop-shadow(0 8px 8px #0e364522);animation:float 7s ease-in-out infinite}.blocks{width:84px;height:70px;top:-19px;left:-32px;background:#43c3dfb3;border:2px solid #baf4ffb3;border-radius:13px;transform:rotate(-17deg);box-shadow:inset -8px -8px 0 #1589ac30;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px}.blocks span{border-radius:50%;background:#92e4efa3;box-shadow:0 3px 0 #1685aa55;border:1px solid #d5faff7a}.star{width:98px;height:98px;top:-32px;right:-34px;fill:#ffd751d9;stroke:#fff9;stroke-width:2;transform:rotate(14deg);animation-delay:-2s}.shine{fill:none;stroke:#fff9;stroke-width:4;stroke-linecap:round}.ball{width:81px;height:81px;bottom:-21px;left:-32px;transform:rotate(-20deg);animation-delay:-4s}.rings{width:94px;height:94px;bottom:-24px;right:-31px;transform:rotate(14deg);animation-delay:-1s}.confetti{position:absolute;pointer-events:none;width:9px;height:18px;border-radius:4px;background:#ffce4d;opacity:.7}.c1{left:42px;top:165px;transform:rotate(-30deg)}.c2{right:52px;top:203px;background:#eda2c4;transform:rotate(30deg)}.c3{left:70px;bottom:194px;width:8px;height:8px;background:#73bd97;border-radius:50%}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -8px}}@media(min-width:1100px) and (min-height:850px){.card{padding-top:42px;padding-bottom:31px}.logo{width:320px}.invite{margin-bottom:28px}.page{width:880px}}@media(max-width:650px){body{padding:40px 25px 22px}.card{padding:29px 22px 23px;border-radius:30px 40px 30px 40px}.card::before{border-radius:35px 45px 35px 45px}.logo{width:245px;margin-bottom:20px}.badge{font-size:8px;letter-spacing:.8px;padding:9px 11px}h1{letter-spacing:-1.3px;margin-top:20px}.intro{font-size:14px}.desktop{display:none}.invite{font-size:13px;margin:13px 0 20px}.contacts{grid-template-columns:1fr;gap:13px}.button{min-height:73px;flex-direction:row;justify-content:flex-start;gap:17px;padding:14px 20px;text-align:left;border-radius:17px}.label{gap:5px}.button small{font-size:12px}.blocks{width:59px;height:52px;left:-18px;top:-16px;padding:7px;gap:6px;border-radius:10px}.star{width:71px;height:71px;right:-22px;top:-24px}.ball{width:59px;height:59px;left:-21px;bottom:-17px}.rings{width:70px;height:70px;right:-24px;bottom:-21px}.confetti{display:none}footer{font-size:8px;letter-spacing:.7px}footer span{padding:0 5px}.thanks{margin-top:23px}}@media(prefers-reduced-motion:reduce){*,*::after{animation:none!important;transition:none!important}}
/* Keep narrow screens within the viewport. */
.page{min-width:0;width:100%;max-width:850px}.card{min-width:0}@media(min-width:1100px) and (min-height:850px){.page{max-width:880px}}

body{grid-template-columns:minmax(0,1fr)}.page{justify-self:center}
.contacts{grid-template-columns:repeat(2,minmax(0,1fr))}.map{--surface:#e5f2da;--shadow:#c0d9ab}.button{min-height:100px}@media(max-width:650px){.contacts{grid-template-columns:1fr}.button{min-height:73px}}

/* Image Gen toy cutouts and compact contact buttons. */
.toy{object-fit:contain;opacity:.86;width:125px;height:125px;filter:drop-shadow(0 10px 8px #163b4726)}
.toy-blocks{left:-45px;top:-35px;transform:rotate(-14deg)}
.toy-star{right:-39px;top:-36px;transform:rotate(14deg);animation-delay:-2s}
.toy-ball{left:-40px;bottom:-32px;transform:rotate(-15deg);animation-delay:-4s}
.toy-rings{right:-42px;bottom:-35px;transform:rotate(12deg);animation-delay:-1s}
.contacts{max-width:580px;margin-inline:auto;gap:12px}
.button{min-height:76px;padding:12px 16px;flex-direction:row;justify-content:flex-start;gap:13px;border-radius:16px;text-align:left}
.label{gap:5px}.button strong{font-size:14px}.button small{font-size:11px}.icon-wrap svg{width:23px;height:23px}
@media(max-width:650px){.contacts{max-width:290px}.button{min-height:68px;padding:11px 15px}.toy{width:82px;height:82px}.toy-blocks{left:-24px;top:-26px}.toy-star{right:-24px;top:-27px}.toy-ball{left:-24px;bottom:-23px}.toy-rings{right:-24px;bottom:-24px}}
