/* Original-site fonts are self-hosted, including Hungarian accents. */
@font-face{font-family:'Bubblegum Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/bubblegum-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Bubblegum Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/bubblegum-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-display:swap;src:url('/assets/fonts/open-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 800;font-display:swap;src:url('/assets/fonts/open-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
body{font-synthesis:none}
.announcement-trigger{border:0;background:none;color:inherit;padding:0;text-align:left;font:inherit;letter-spacing:inherit;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#ffffff70}
.announcement-trigger:hover{color:#ffe649}
.announcement-trigger>span{display:inline!important}
.site-announcement{color:#32134e;border:3px solid #fff3cd;box-shadow:0 20px 80px #2d114c66;padding:0;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.site-announcement::backdrop{background:#24103875}
.tool-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:40px;height:40px;padding:10px;border:1px solid #4b206b20;border-radius:50%;background:#fff9e9;color:#421a65;z-index:2;box-shadow:0 3px 0 #4b206b16}
.tool-close svg{width:100%;height:100%}
.tool-close:hover{background:#fbd4e9}
.site-announcement{margin:auto;width:min(440px,calc(100% - 32px));border-radius:30px;background:#ffe44c;padding:30px 28px 25px;text-align:center;isolation:isolate}
.site-announcement:before{content:'';position:absolute;left:-36px;top:115px;width:95px;height:95px;border:14px solid #ef79b6;border-radius:50%;z-index:-1;opacity:.5}
.announcement-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 25px 22px 0}
.announcement-brand img{width:43px;height:55px;object-fit:contain}
.announcement-brand>span{font:400 27px/1.1 'Bubblegum Sans',sans-serif;color:#552082}
.announcement-image{display:block;width:100%;height:auto;aspect-ratio:1856/560;object-fit:contain;border:2px solid #fff7d8;border-radius:14px;margin:0 0 18px}
.announcement-eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#65257e;margin-bottom:12px}
.site-announcement h2{font:400 38px/1.08 'Bubblegum Sans',sans-serif;letter-spacing:0;color:#431369;margin:0 auto 17px;max-width:340px}
.announcement-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.announcement-tags>span{padding:5px 11px;font-size:10px;font-weight:700;background:#ffb2d8;border:1px solid #d261a2;border-radius:99px;transform:rotate(-3deg)}
.announcement-tags>span:nth-child(2){background:#a1e9ef;border-color:#53c4d1;transform:rotate(3deg)}
.announcement-tags>span:nth-child(3){background:#ddc5ff;border-color:#af86e2;transform:rotate(-2deg)}
#announcement-description{font-size:14px;line-height:1.7;color:#563260;margin-bottom:22px}
.tool-action{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;border:2px solid transparent;border-radius:17px;font-size:13px;font-weight:800;line-height:1.45;text-align:center;min-height:48px}
.announcement-whatsapp{background:#a9186e;border-color:#a9186e;color:white;box-shadow:0 4px 0 #701452}
.announcement-whatsapp:hover{color:white;background:#8c135e}
.announcement-explore{display:inline-block;color:#54217b;text-decoration:underline;text-underline-offset:4px;font-size:12px;font-weight:700;margin-top:19px}
@media(max-width:650px){.site-announcement{padding:25px 21px 23px}.site-announcement h2{font-size:34px}.announcement-brand{margin-bottom:18px}.announcement-brand>span{font-size:24px}.announcement-trigger{max-width:100%;line-height:1.5}}
@media(max-height:650px){.announcement-brand{margin-bottom:12px}.site-announcement{padding-top:22px}.site-announcement h2{font-size:30px}.announcement-tags{margin-bottom:12px}#announcement-description{font-size:12px;margin-bottom:15px}}
@media(prefers-reduced-motion:no-preference){.site-announcement[open]{animation:contact-arrive .22s ease-out}@keyframes contact-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}}


/* Match the desktop left/right ribbon, with a plain phone link on mobile. */
@media(max-width:650px){
 .top-ribbon{flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px}
 .top-ribbon .announcement-trigger{flex:1;min-width:0;max-width:none;font-size:9px;line-height:1.4;letter-spacing:0;text-align:left}
 .top-ribbon>a[href^="tel:"]{display:block;flex-shrink:0;min-height:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;font-size:11px;line-height:1.4;font-weight:700;white-space:nowrap;text-decoration:none}
 .top-ribbon .ribbon-call-label,.top-ribbon .ribbon-call-arrow{display:none}
}

/* Keep the approved 3:2 promotion whole, with real actions outside the artwork. */
.site-announcement.promotion-announcement{width:min(760px,calc(100% - 24px));padding:0;border-radius:22px;background:#fff8e9;border:2px solid #fff0c8;max-height:calc(100dvh - 24px)}
.promotion-announcement:before{display:none}
.promotion-announcement>.tool-close{position:sticky;float:right;top:10px;right:auto;width:40px;height:40px;margin:10px 10px -50px 0;border:2px solid #713bd4;background:#fff9ed;box-shadow:0 3px 10px #32134e35;z-index:3}
.promotion-announcement .announcement-poster{display:block;clear:none;background:#6c176d}
.promotion-announcement .announcement-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border:0;border-radius:0;margin:0}
.promotion-announcement .announcement-details{padding:17px 22px 20px}
.promotion-announcement #announcement-description{font-size:12px;line-height:1.6;margin:0 0 13px;color:#563260}
.promotion-announcement .announcement-actions{display:flex;align-items:stretch;justify-content:center;gap:10px}
.promotion-announcement .tool-action{flex:1;min-width:0;font-size:12px;padding:12px 14px;border-radius:99px;min-height:46px;box-shadow:none}
.promotion-announcement .announcement-package{background:#a9186e;border-color:#a9186e;color:white}
.promotion-announcement .announcement-package:hover{background:#8c135e;color:white}
.promotion-announcement .announcement-whatsapp{background:#fff8e9;border-color:#c5a6d8;color:#54217b}
.promotion-announcement .announcement-whatsapp:hover{background:#f0defa;color:#54217b}
.promotion-announcement a:focus-visible{outline:3px solid #713bd4;outline-offset:-4px}
@media(max-width:480px){.promotion-announcement .announcement-details{padding:14px 14px 17px}.promotion-announcement #announcement-description{font-size:11px;margin-bottom:12px}.promotion-announcement .announcement-actions{flex-direction:column;gap:8px}.promotion-announcement .tool-action{flex:auto;font-size:12px;min-height:44px;padding:10px 12px}}
