@font-face{font-family:Finlandica;src:url('fonts/Finlandica-Regular.ttf');font-display:swap}@font-face{font-family:Obrazec;src:url('fonts/Obrazec-2.ttf');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#f7c7e8;color:#534759;font:18px/1.5 Finlandica,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3{font-family:Obrazec,Arial,sans-serif;font-weight:400;line-height:1.03;color:#eb6b2f;margin:0 0 24px}h1{font-size:clamp(54px,6vw,88px)}h2{font-size:clamp(42px,4.5vw,66px)}h3{font-size:34px}em{font-style:normal;color:#e25a9c}p{margin:0 0 22px}.shell{max-width:1280px;width:calc(100% - 48px);margin:auto}.panel{background:#f4e7d6;border-radius:28px;padding:56px;margin-top:28px;margin-bottom:28px}.kicker{font-size:12px;letter-spacing:2px;margin-bottom:26px}.lead{font-size:24px;line-height:1.35}.intro{max-width:720px}.button{display:inline-flex;align-items:center;justify-content:center;background:#eb6b2f;color:#fff;padding:15px 24px;border-radius:999px;text-decoration:none;font-weight:bold;font-size:16px;line-height:1.3;min-height:48px;transition:background .2s}.button:hover{background:#d9541c}.phone{text-decoration:none;white-space:nowrap}header{display:flex;align-items:center;gap:30px;padding:18px 28px;background:#f4e7d6;border-radius:0 0 24px 24px}header .logo{width:100px;height:92px;object-fit:contain;mix-blend-mode:multiply}nav{display:flex;gap:8px;flex-wrap:wrap;flex:1;justify-content:center}nav a,.quick a{font:24px/1.2 Obrazec,Arial,sans-serif;border:1px solid #eb6b2f;border-radius:999px;padding:9px 18px;text-decoration:none;color:#a64b25}nav a:hover,.quick a:hover{background:#eb6b2f;color:#fff}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;padding:50px}.hero-copy{align-self:center}.hero-price{font-size:24px}.hero-photo{position:relative}.hero-photo img{height:100%;max-height:760px;border-radius:180px 180px 24px 24px;object-position:center}.photo-note{position:absolute;bottom:30px;left:-20px;background:#f7c7e8;transform:rotate(-6deg);padding:16px 24px;border-radius:50%;font:32px Obrazec;color:#a64b25}.quick{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;padding:8px 0}.quick a{background:#f4e7d6}.format-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:35px}.format-grid article{display:flex;flex-direction:column;border-top:1px solid #cfb5bc;padding-top:20px}.format-grid h3{font-size:29px}.format-grid p{font-size:17px}.format-grid .button{margin-top:auto;align-self:start}.number{color:#aa7386;margin-bottom:24px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-head>p{max-width:300px}.play-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}.play{overflow:hidden;border-radius:20px;background:#fff2e2;display:flex;flex-direction:column}.play>img{height:340px;object-position:center 35%}.play>div{padding:28px;display:flex;flex-direction:column;flex:1}.play h3{font-size:38px}.meta{color:#a04d2d;font-size:16px;letter-spacing:.3px}.card-bottom{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-top:auto;padding-top:10px}.card-bottom b{font-size:22px;white-space:nowrap}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;margin-top:30px}.split img{height:470px;border-radius:20px}.split.reverse{margin-top:60px;direction:rtl}.split.reverse>*{direction:ltr}.split.reverse img{object-position:center 27%;height:500px}.costume-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:900px;margin:35px auto 0}figure{margin:0}.costume-grid img{height:590px;border-radius:130px 130px 20px 20px;object-position:top;object-fit:cover}figcaption{text-align:center;font:32px Obrazec;color:#a64b25;margin-top:20px}.terms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.terms-grid strong{display:block;font:48px Obrazec;color:#e25a9c;margin-bottom:12px}.terms-note{display:flex;gap:30px;justify-content:space-between;border-top:1px solid #cfb5bc;margin-top:20px;padding-top:24px}.terms-note p{margin:0;flex:1}.moments{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.moments img{height:230px;border-radius:18px}.moments img:first-child{grid-row:span 2;height:480px}.faq{max-width:950px}details{border-bottom:1px solid #cfb5bc;padding:20px 0}summary{cursor:pointer;font-size:23px}details p{margin:20px 0 0;max-width:800px}.contact{text-align:center}.contact .lead{max-width:760px;margin:0 auto 24px}.messengers{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:26px 0}.contact .phone{display:inline-block;margin-top:10px;font-size:26px}footer{display:flex;align-items:center;justify-content:space-between;padding:28px 0;font-size:16px}footer p{margin:0}a:focus-visible,summary:focus-visible{outline:3px solid #a64b25;outline-offset:5px}@media(max-width:1050px){header{flex-wrap:wrap;gap:12px}header nav{order:3;width:100%;flex:auto}.hero{gap:28px;padding:36px}.panel{padding:38px}.format-grid{grid-template-columns:1fr 1fr}.split{gap:30px}.card-bottom{align-items:start;flex-direction:column}.costume-grid img{height:500px}.section-head{display:block}.section-head>p{max-width:700px}.terms-grid strong{font-size:40px}}@media(max-width:680px){.shell{width:calc(100% - 24px)}.panel{padding:30px 22px;border-radius:22px;margin-top:18px;margin-bottom:18px}header{justify-content:space-between;padding:12px 18px}header .logo{width:80px;height:74px}header .phone{font-size:16px}nav a,.quick a{font-size:22px;padding:8px 14px}.hero{grid-template-columns:1fr}.hero h1{font-size:57px}.hero-photo{margin-top:8px}.hero-photo img{height:480px;border-radius:130px 130px 18px 18px}.photo-note{left:-8px}.lead{font-size:22px}.format-grid,.play-grid,.split,.costume-grid,.terms-grid{grid-template-columns:1fr}.format-grid{gap:30px}.format-grid article{display:block}.format-grid .number{display:block;margin-bottom:12px}.format-grid h3{margin-bottom:14px}.play-grid{gap:24px}.play>img{height:290px}.play>div{padding:22px}.play h3{font-size:33px}.card-bottom{flex-direction:row;align-items:center;flex-wrap:wrap}.split{gap:26px;margin-top:20px}.split img{height:340px}.split.reverse{margin-top:45px}.split.reverse img{height:460px}.costume-grid{grid-template-columns:1fr 1fr;gap:14px}.costume-grid img{height:340px;border-radius:65px 65px 15px 15px}.costume-grid figcaption{font-size:26px}.terms-grid{gap:12px}.terms-note{display:block}.terms-note p{margin-bottom:16px}.moments{grid-template-columns:1fr}.moments img,.moments img:first-child{height:270px;grid-row:auto}summary{font-size:20px}.contact h2{font-size:43px}.messengers{flex-direction:column;align-items:stretch}footer{align-items:start;gap:20px;flex-direction:column}.quick{gap:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Revised New Year content and galleries */
.hero h1{font-size:clamp(48px,5vw,72px)}.hero h1 span{display:block;font-size:.46em;line-height:1.14;margin-top:22px}.hero-photo img{height:auto;max-height:none;border-radius:24px;aspect-ratio:1344/1837;object-fit:contain}.hero-photo{align-self:center}.ticker{display:flex;gap:12px;align-items:center;margin-top:24px;margin-bottom:24px}.ticker-window{overflow:hidden;flex:1;min-width:0}.ticker-track{display:flex;width:max-content;animation:ny-ticker 42s linear infinite}.ticker-group{display:flex;gap:18px;padding-right:18px;flex-shrink:0}.ticker-group a{white-space:nowrap;font:25px/1.2 Obrazec,Arial,sans-serif;border:1px solid #eb6b2f;border-radius:999px;background:#f4e7d6;padding:12px 22px;text-decoration:none;color:#a64b25}.ticker:hover .ticker-track,.ticker:focus-within .ticker-track,.ticker.paused .ticker-track{animation-play-state:paused}.ticker button,.carousel-controls button{border:1px solid #eb6b2f;background:#eb6b2f;color:white;border-radius:999px;padding:12px 20px;font:16px Finlandica,Arial,sans-serif;cursor:pointer;min-height:44px}.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:30px 0 20px}.carousel-controls button:disabled{opacity:.45;cursor:default}.heroes-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:20px;scrollbar-color:#eb6b2f #f7c7e8}.heroes-track figure{flex:0 0 calc((100% - 48px)/3);min-width:0;scroll-snap-align:start;text-align:center}.heroes-track img{height:auto;aspect-ratio:2/3;object-fit:contain;background:#eadbd0;border-radius:18px}.heroes-track figcaption{margin:18px 0}.heroes-track .button{margin-bottom:10px}.moments{grid-template-columns:1fr 1fr}.moments img,.moments img:first-child{height:auto;aspect-ratio:3/2;grid-row:auto;object-fit:cover}.moments img:first-child{grid-column:1/-1;max-height:620px;object-fit:contain;background:#eadbd0}.play>img{height:410px;object-position:center 35%}button:focus-visible,.heroes-track:focus-visible{outline:3px solid #a64b25;outline-offset:4px}@keyframes ny-ticker{to{transform:translateX(-50%)}}@media(max-width:900px){.heroes-track figure{flex-basis:calc((100% - 24px)/2)}}@media(max-width:680px){.hero h1{font-size:52px}.hero h1 span{font-size:27px}.hero-photo img{height:auto}.ticker{gap:8px}.ticker-group a{font-size:22px}.ticker button{padding:10px 14px}.heroes-track figure{flex-basis:85%}.carousel-controls span{font-size:14px;text-align:center}.play>img{height:350px}.moments{grid-template-columns:1fr}.moments img:first-child{grid-column:auto}.moments img{height:auto}}@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}.ticker-window{overflow-x:auto}.ticker-group[aria-hidden]{display:none}#ticker-toggle{display:none}}

#contact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:clamp(24px,5vw,64px); text-align:left; align-items:start }
#contact .lead { margin:0 0 22px }
#contact .contact-links { margin:25px 0 }
#contact .contact-links>div { display:flex; gap:15px; flex-wrap:wrap; margin-top:14px }
#contact .contact-links>div a { color:inherit; font-size:13px; text-underline-offset:4px }
#holiday-request { display:grid; gap:13px; padding:clamp(18px,3vw,32px); border:1px solid #cdb7ce; border-radius:18px; background:#eadce9 }
#holiday-request h3 { margin-bottom:5px }
#holiday-request label { display:grid; gap:5px; font-size:15px }
#holiday-request input { font:inherit; color:#534759; background:#fff5e7; border:1px solid #bda7b6; border-radius:10px; padding:10px; width:100%; min-width:0 }
#holiday-request p { margin:2px 0; font-size:15px }
#holiday-request button { border:0; cursor:pointer; font-family:inherit }
@media(max-width:760px) { #contact { grid-template-columns:1fr } }
