/* RC9 stage 1 only: no new highlight cards or scroll choreography. */
:root{--rc9-header-height:88px;--rc9-consent-space:0px;scroll-padding-top:calc(var(--rc9-header-height) + 20px);scroll-padding-bottom:var(--rc9-consent-space)}
body.vibrant.rc8{padding-bottom:var(--rc9-consent-space)}
body.vibrant.rc8 .site-header{position:sticky;top:0;z-index:100;background:#fffaf0f5;isolation:isolate;transition:box-shadow .18s ease,background-color .18s ease}
body.vibrant.rc8 .site-header.is-scrolled{box-shadow:0 5px 22px #17395520;background:#fffaf0ed;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
body.vibrant.rc8 .site-header .wordmark{transform-origin:left center;transition:transform .18s ease}
body.vibrant.rc8 .site-header.is-scrolled .wordmark{transform:scale(.98)}
body.vibrant.rc8 [id]{scroll-margin-top:calc(var(--rc9-header-height) + 20px)}
body.vibrant.rc8 .mobile-nav{max-height:calc(100dvh - var(--rc9-header-height) - var(--rc9-consent-space));overflow:auto;overscroll-behavior:contain}
body.vibrant.rc8 .site-header :focus-visible,.rc9-consent-banner :focus-visible,#privacy-dialog :focus-visible{outline:3px solid #1455c5;outline-offset:4px}
body.vibrant.rc8 .skip-link:focus{z-index:1300}
.rc9-price-date{font-weight:700}.visit-prices em{display:block;font-style:normal;font-weight:700;margin-top:6px}
.rc9-consent-banner{position:fixed;z-index:1200;inset:auto 16px 12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.45fr);gap:22px;max-width:1120px;margin-inline:auto;max-height:48dvh;overflow:auto;padding:24px 28px;background:#fffaf0;color:#173955;border:1px solid #17395540;border-radius:24px;box-shadow:0 8px 48px #17395535;box-sizing:border-box;text-align:left}
.rc9-consent-banner[hidden],#privacy-dialog [hidden]{display:none!important}.rc9-consent-banner *{min-width:0}.rc9-consent-banner h2{font-size:clamp(21px,3vw,28px);line-height:1.15;margin:5px 0 8px}.rc9-consent-banner p{font-size:14px;line-height:1.5;color:#173955;margin:0 0 8px}.rc9-consent-banner a,#privacy-dialog>a{color:#1455c5;text-decoration:underline;text-underline-offset:3px}.rc9-consent-actions{display:flex;flex-direction:column;justify-content:center;gap:8px}.rc9-consent-banner .btn,#privacy-dialog .btn{min-height:44px;white-space:normal;text-align:center;font-size:14px;line-height:1.35;padding:12px 16px;border-width:2px}.rc9-consent-banner .btn-outline,#privacy-dialog .btn-outline{background:#fffaf0;color:#173955;border:2px solid #173955}.rc9-consent-banner .eyebrow{font-size:11px}.rc9-consent-storage:empty{display:none}
.privacy-settings{background:none;border:0;padding:10px 0;min-height:44px;cursor:pointer;color:inherit;text-align:left;font:inherit}
#privacy-dialog{border:1px solid #17395540;border-radius:24px;width:min(640px,calc(100% - 24px));max-height:88dvh;overflow:auto;padding:clamp(18px,4vw,30px);color:#173955;background:#fffaf0;box-sizing:border-box;box-shadow:0 20px 80px #1236}
#privacy-dialog::backdrop{background:#1239}#privacy-dialog h2{font-size:clamp(25px,4vw,36px);margin:8px 0 12px}#privacy-dialog p{line-height:1.55;font-size:15px}#privacy-dialog label{display:flex;gap:12px;align-items:flex-start;padding:12px 0}#privacy-dialog small{display:block;font-size:13px;line-height:1.4;margin-top:4px}#privacy-dialog input{flex:0 0 22px;width:22px;height:22px;margin:2px 0;accent-color:#1455c5}#privacy-dialog fieldset{border:1px solid #b2c5ca;border-radius:16px;padding:12px 18px}#privacy-dialog legend{font-weight:700}.privacy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.privacy-actions .quiet-link{background:none;border:0;cursor:pointer;text-decoration:underline;min-height:44px;color:#173955;font:inherit}.privacy-close{float:right;background:none;border:0;font-size:28px;min-width:44px;min-height:44px;cursor:pointer;color:#173955}
@media(max-width:1100px){:root{--rc9-header-height:80px}}
@media(max-width:760px){:root{--rc9-header-height:78px}.rc9-consent-banner{inset:auto 8px 8px;grid-template-columns:minmax(0,1fr);padding:16px;gap:12px;border-radius:20px;max-height:46dvh}.rc9-consent-actions{display:grid;grid-template-columns:1fr 1fr}.rc9-consent-actions button:last-child{grid-column:1/-1}.rc9-consent-banner p{font-size:13px}.rc9-consent-banner h2{font-size:22px}.privacy-actions{flex-direction:column}.privacy-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){body.vibrant.rc8 .site-header,body.vibrant.rc8 .site-header .wordmark{transition:none}body.vibrant.rc8 .site-header.is-scrolled .wordmark{transform:none}}
/* Light consent surface is nested in a dark footer: contain inherited typography. */
body.vibrant.rc8 .full-footer .rc9-consent-banner :is(h2,p,small,.eyebrow){color:#173955;opacity:1}
body.vibrant.rc8 .full-footer .rc9-consent-banner h2{font-size:clamp(21px,3vw,28px);line-height:1.15;letter-spacing:normal;margin:5px 0 8px}
body.vibrant.rc8 .full-footer .rc9-consent-banner a{color:#1455c5;opacity:1;text-decoration:underline}
body.vibrant.rc8 .full-footer .rc9-consent-banner :is(a,button):focus-visible{outline:3px solid #1455c5;outline-offset:4px;box-shadow:none}
.rc9-newsletter-section{padding-top:40px}

/* RC9 stage 2: scoped presentation, no sales/privacy behavior changes. */
body.vibrant.rc8 .desktop-nav{gap:clamp(10px,1.15vw,23px)}
body.vibrant.rc8 .desktop-nav>a,body.vibrant.rc8 .more-nav>summary{font-size:16px;line-height:1.35;white-space:nowrap;color:#173955}
body.vibrant.rc8 .mobile-nav a,body.vibrant.rc8 .mobile-nav summary{font-size:18px;line-height:1.4;min-height:44px;color:#173955}
body.vibrant.rc8 .more-nav div a{font-size:16px;line-height:1.45}
body.vibrant.rc8 .story-home .visual-frame figcaption{display:flex;align-items:center;justify-content:center;text-align:center;min-height:5em;box-sizing:border-box}
body.vibrant.rc8 .story-discover .btn{font-size:18px;padding:18px 27px;min-height:52px}
.rc9-open-play{max-width:900px;margin:0 0 36px}.rc9-open-play h3{font-size:clamp(25px,3.5vw,40px);margin:8px 0 12px}.rc9-open-play p{font-size:18px;line-height:1.65;margin-bottom:22px}
body.vibrant.rc8 .season-spotlight{grid-template-columns:1fr 1.2fr;gap:clamp(24px,5vw,75px)}
body.vibrant.rc8 .season-spotlight>figure{width:100%;max-width:none;margin:0;transform:rotate(2deg)}
body.vibrant.rc8 .season-spotlight>figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 65%}
body.vibrant.rc8 .detail-categories .category-card:nth-child(2){background:#bde6d5}
body.vibrant.rc8 .detail-categories .category-card:nth-child(3){background:#ffd66b}
body.vibrant.rc8 .detail-categories .category-card:nth-child(4){background:#d4c0ee}
body.vibrant.rc8 .detail-categories .category-card:not(:first-child) :is(h3,p,.category-number,.category-arrow){color:#173955;opacity:1}
body.vibrant.rc8 .birthday-card-index{display:grid;place-items:center;padding:0;width:48px;height:48px;min-width:48px;line-height:1;transform:none;box-sizing:border-box;font-variant-numeric:tabular-nums}
.birthday-night-art{position:relative}.birthday-night-art>.birthday-card-index{position:absolute;left:12px;top:12px;z-index:2}
body.vibrant.rc8 .exclusive-sticker{display:grid;place-content:center;text-align:center;justify-self:center;align-self:center;width:152px;height:152px;min-width:152px;box-sizing:border-box;padding:16px;line-height:1.2;transform:rotate(-7deg);font-size:25px}
.rc9-benefits-grid,.rc9-coming-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.rc9-benefits-grid article,.rc9-coming-grid article{background:#ffd66b;border:2px solid #1739551f;border-radius:30px;padding:clamp(22px,3vw,35px);color:#173955;box-shadow:0 8px 0 #17395512}
.rc9-benefits-grid article:nth-child(2){background:#bde6d5}.rc9-benefits-grid article:nth-child(3){background:#f9cbb7}.rc9-benefits-grid article:nth-child(4){background:#d4c0ee}
.rc9-benefits-grid article>span{display:grid;place-items:center;width:58px;height:58px;border:2px solid #173955;border-radius:50%;font-size:32px;background:#fffaf0}
.rc9-benefits-grid h3,.rc9-coming-grid h3{font-size:clamp(22px,2vw,29px);line-height:1.18;margin:22px 0 14px}.rc9-benefits-grid p,.rc9-coming-grid p{font-size:17px;line-height:1.6;color:#173955}
.rc9-coming-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rc9-coming-grid article:nth-child(2){background:#c9e6f4}.rc9-coming-icon{display:block;font-size:85px;color:#173955}.rc9-train{display:block;width:100%;height:150px;margin:15px 0}.rc9-soon-badge{display:inline-block;width:fit-content;background:#173955;color:#fffaf0;border-radius:24px;padding:10px 17px;font-size:15px;line-height:1.4;font-weight:800;margin:0 0 16px}.rc9-coming small{display:block;font-size:14px}
body.vibrant.rc8 #zegar-binarny .story-image img{aspect-ratio:1/1;object-fit:cover;object-position:50% 0%}
.rc9-back{position:fixed;z-index:1100;left:16px;bottom:calc(var(--rc9-consent-space,0px) + env(safe-area-inset-bottom,0px) + 24px);display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 17px;border:2px solid #173955;border-radius:28px;background:#fffaf0;color:#173955;font-size:16px;font-weight:700;text-decoration:none;box-shadow:0 4px 16px #17395530;box-sizing:border-box}.rc9-back[hidden]{display:none}.rc9-back:focus-visible{outline:3px solid #1455c5;outline-offset:4px}
@keyframes rc9-arrival{from{transform:translateY(18px) scale(.985)}to{transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){.rc9-arrive{animation:rc9-arrival .55s cubic-bezier(.2,.7,.3,1) var(--rc9-delay,0ms) both}}
@media(max-width:1350px){body.vibrant.rc8 .desktop-nav{display:none}body.vibrant.rc8 .mobile-menu-toggle{display:flex}body.vibrant.rc8 .site-header .nav-shell{justify-content:space-between}}
@media(min-width:1351px){body.vibrant.rc8 .mobile-nav{display:none!important}body.vibrant.rc8 .mobile-menu-toggle{display:none}}
@media(max-width:1000px){.rc9-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.vibrant.rc8 .rc8-exclusive{grid-template-columns:65px minmax(0,1fr)}body.vibrant.rc8 .exclusive-sticker{display:grid;grid-column:2;width:128px;height:128px;min-width:128px;font-size:22px}}
@media(max-width:760px){body.vibrant.rc8 .season-spotlight{grid-template-columns:1fr}.rc9-coming-grid{grid-template-columns:1fr}.rc9-open-play p{font-size:17px}.rc9-back{left:10px}.rc9-benefits-grid{gap:14px}}
@media(max-width:540px){.rc9-benefits-grid{grid-template-columns:1fr}body.vibrant.rc8 .exclusive-sticker{grid-column:1/-1}body.vibrant.rc8 .rc8-exclusive{grid-template-columns:1fr}body.vibrant.rc8 .season-spotlight>figure{transform:none}}
@media(prefers-reduced-motion:reduce){.rc9-arrive{animation:none!important;transform:none!important}}
/* Mobile drawer must fit above the banner including its bottom inset. */
@media(max-width:1350px){body.vibrant.rc8 .mobile-nav:not([hidden]){display:block;position:absolute;left:0;right:0;top:100%;box-sizing:border-box;max-height:calc(100dvh - var(--rc9-header-height) - var(--rc9-consent-space) - 28px)}}

/* Isolated RC9 editorial/mobile layer, loaded after stage1. No SEO or assets. */
:root{
 --pk-text-body:clamp(1rem,.97rem + .12vw,1.0625rem);
 --pk-text-small:clamp(.875rem,.1350px + .1vw,.9375rem);
 --pk-text-label:clamp(.875rem,.1350px + .12vw,1rem);
 --pk-text-card:clamp(1.25rem,1.1rem + .65vw,1.625rem);
 --pk-text-section:clamp(1.625rem,1.25rem + 1.4vw,2.5rem);
 --pk-text-price:clamp(1.375rem,1.2rem + .65vw,1.875rem);
 --pk-leading-body:1.55;--pk-leading-heading:1.18;
 --pk-card-padding:clamp(1rem,.8rem + 1vw,1.5rem);
 --pk-section-space:clamp(2rem,1.5rem + 2vw,4rem);
 --pk-control-size:2.75rem;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.vibrant.rc8{font-size:var(--pk-text-body);line-height:var(--pk-leading-body)}
body.vibrant.rc8 :is(p,li,dd,dt,label,input,button,summary,figcaption){overflow-wrap:break-word;word-break:normal}
body.vibrant.rc8 :is(.container,.page-shell,.content-grid,.offer-card-grid,.offer-editorial-grid,.offer-facts,.visit-prices,.newsletter,.footer-grid,.offer-body-grid)>*{min-width:0}
body.vibrant.rc8 :is(.offer-card,.content-card,.category-card,.workshop-card,.birthday-package-card,.birthday-night-package,.birthday-addon-card,.promo-card,.rc8-event-card,.rc8-camp-card,.rc8-parent-copy,.newsletter,.offer-accordion,.faq-list details,.offer-faq details){min-width:0;max-width:100%;box-sizing:border-box;overflow-wrap:break-word}
body.vibrant.rc8 :is(.offer-card,.content-card,.category-card,.workshop-card,.promo-card,.birthday-card-content,.rc8-event-copy,.rc8-parent-copy) :is(h2,h3,h4){font-size:var(--pk-text-card);line-height:var(--pk-leading-heading);letter-spacing:-.02em;text-wrap:pretty;max-width:100%}
body.vibrant.rc8 :is(.offer-card,.card-body,.category-card,.workshop-card,.promo-card,.birthday-card-content,.rc8-event-copy,.rc8-parent-copy) :is(p,li){font-size:var(--pk-text-body);line-height:var(--pk-leading-body)}
body.vibrant.rc8 :is(.eyebrow,.card-meta,.path-number,.newsletter-tag,.birthday-night-eyebrow,.offer-price-unit,.vibrant-photo-note){font-size:var(--pk-text-label);line-height:1.4;white-space:normal;letter-spacing:.04em}
body.vibrant.rc8 :is(.btn,.quiet-link,.birthday-card-link,.offer-jump-links a,.story-tags>span,.chip,.badge,.pill){white-space:normal;overflow-wrap:anywhere;line-height:1.4;height:auto;max-width:100%;box-sizing:border-box}
body.vibrant.rc8 :is(.btn,.birthday-card-link,.offer-jump-links a){display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:var(--pk-control-size);font-size:1rem;padding:.75rem 1rem}
body.vibrant.rc8 :is(a,button,input,summary):focus-visible{outline:3px solid #1455c5;outline-offset:4px}
body.vibrant.rc8 :is(.offer-jump-links,.story-tags,.detail-actions,.contact-direct-links,.pagination){display:flex;flex-wrap:wrap;gap:.625rem;min-width:0}
body.vibrant.rc8 :is(.offer-jump-links,.story-tags,.detail-actions,.contact-direct-links,.pagination)>*{min-width:0;max-width:100%}
body.vibrant.rc8 :is(.offer-section,.section){padding-block:var(--pk-section-space)}
body.vibrant.rc8 :is(.offer-faq,.faq-list) details{padding:1rem 1.125rem}
body.vibrant.rc8 :is(.offer-faq,.faq-list) summary{font-size:var(--pk-text-body);line-height:1.45;min-height:var(--pk-control-size);padding-block:.5rem;cursor:pointer}
body.vibrant.rc8 :is(.offer-faq,.faq-list) details>p{font-size:var(--pk-text-body);line-height:var(--pk-leading-body);margin-block:.75rem}
body.vibrant.rc8 :is(.offer-summary-title,.offer-summary-meta){min-width:0;overflow-wrap:break-word;white-space:normal}
body.vibrant.rc8 .offer-summary-title{font-size:var(--pk-text-card);line-height:1.25}
body.vibrant.rc8 .offer-summary-meta{font-size:var(--pk-text-body);line-height:1.4}
body.vibrant.rc8 .offer-summary-meta strong{font-size:var(--pk-text-price)}
body.vibrant.rc8 .visit-prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:.75rem}
body.vibrant.rc8 .visit-prices>div{padding:var(--pk-card-padding);height:auto;min-width:0}
body.vibrant.rc8 .visit-prices strong{display:block;font-size:var(--pk-text-price);line-height:1.25;overflow-wrap:anywhere}
body.vibrant.rc8 .visit-prices span{font-size:var(--pk-text-body);line-height:1.45;display:block}
body.vibrant.rc8 .rc9-price-heading{font-size:var(--pk-text-section);line-height:var(--pk-leading-heading);margin-block:1rem}
body.vibrant.rc8 .newsletter{padding:var(--pk-card-padding);gap:1.25rem;margin-bottom:2rem;font-size:var(--pk-text-body);align-items:start}
body.vibrant.rc8 .newsletter h2{font-family:'DM Sans',Arial,sans-serif;font-size:var(--pk-text-section);line-height:var(--pk-leading-heading);letter-spacing:-.02em;margin:.5rem 0 .75rem}
body.vibrant.rc8 .newsletter p{font-size:var(--pk-text-body);line-height:var(--pk-leading-body)}
body.vibrant.rc8 .newsletter :is(.newsletter-help,.newsletter-consent,.newsletter-status){font-size:var(--pk-text-small);line-height:1.5}
body.vibrant.rc8 .newsletter-row{display:flex;flex-wrap:wrap;gap:.625rem}
body.vibrant.rc8 .newsletter-row input{flex:1 1 13rem;width:100%;max-width:100%;font-size:1rem;min-height:var(--pk-control-size)}
body.vibrant.rc8 .newsletter button{font-size:1rem;min-height:var(--pk-control-size);flex:1 1 11rem}
body.vibrant.rc8 .rc9-newsletter-section{padding-top:1.5rem}
body.vibrant.rc8 .full-footer :is(p,a,button){font-size:var(--pk-text-body);line-height:1.5;overflow-wrap:anywhere;white-space:normal}
body.vibrant.rc8 .full-footer h2{font-size:var(--pk-text-card);line-height:1.25}
body.vibrant.rc8 .full-footer .rc8-footer-invite h2{font-size:var(--pk-text-section)}
body.vibrant.rc8 .footer-grid a{min-height:var(--pk-control-size);padding-block:.5rem;box-sizing:border-box}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure,.vibrant-hero-main,.vibrant-hero-small,.art-page-main-photo,.art-page-small-photo,.rc8-birthday-overlay,.art-small-photo){height:auto!important;min-width:0}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure,.vibrant-hero-main,.vibrant-hero-small,.art-page-main-photo,.art-page-small-photo,.rc8-birthday-overlay,.art-small-photo) figcaption{position:static;height:auto!important;min-height:0;max-width:100%;padding:.75rem 1rem;font-size:var(--pk-text-small);line-height:1.45;white-space:normal;overflow:visible;box-sizing:border-box;background:#fffaf0;color:#173955}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure,.art-small-photo) img{height:auto;aspect-ratio:4/3;object-fit:cover}
body.vibrant.rc8 .visual-frame.frame-1 button{height:auto;min-height:0;aspect-ratio:4/3}
body.vibrant.rc8 .desktop-nav{font-size:1rem;gap:clamp(.5rem,1vw,1rem)}
body.vibrant.rc8 .desktop-nav :is(a,summary){min-height:var(--pk-control-size);white-space:nowrap;font-size:1rem;line-height:1.3}
body.vibrant.rc8 .desktop-nav .more-nav a{white-space:normal}
body.vibrant.rc8 .mobile-nav :is(a,summary){font-size:1.125rem;min-height:var(--pk-control-size);line-height:1.4;box-sizing:border-box}
body.vibrant.rc8 .mobile-menu-toggle{font-size:1rem;min-height:var(--pk-control-size);flex-shrink:0}
@media(max-width:1350px){body.vibrant.rc8 .desktop-nav{display:none}body.vibrant.rc8 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center}body.vibrant.rc8 .nav-shell{justify-content:space-between}}
@media(min-width:1351px){body.vibrant.rc8 .mobile-menu-toggle{display:none}}
@media(max-width:48rem){
 body.vibrant.rc8 :is(.content-grid,.offer-card-grid,.birthday-package-grid,.home-moments-grid,.events-business-grid,.detail-related){grid-template-columns:minmax(0,1fr)}
 body.vibrant.rc8 .offer-summary{grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;padding:1rem}
 body.vibrant.rc8 .offer-summary-photo{display:none}
 body.vibrant.rc8 .offer-summary-title{grid-column:2;font-size:1.25rem}
 body.vibrant.rc8 .offer-summary-meta{grid-column:2;grid-row:2;display:flex;flex-wrap:wrap;gap:.25rem .5rem;text-align:left}
 body.vibrant.rc8 .offer-toggle{grid-column:3;grid-row:1/3}
 body.vibrant.rc8 .offer-number{grid-column:1;grid-row:1/3}
 body.vibrant.rc8 .newsletter{grid-template-columns:minmax(0,1fr)}
 body.vibrant.rc8 .newsletter-row{flex-direction:column}
 body.vibrant.rc8 .newsletter-row :is(input,button){flex:auto;width:100%}
 body.vibrant.rc8 .birthday-night-package{grid-template-columns:minmax(0,1fr)}
 body.vibrant.rc8 .birthday-night-bookend{min-width:0}
 body.vibrant.rc8 :is(.art-page-label,.vibrant-location){max-width:100%;white-space:normal;height:auto;line-height:1.45}
 body.vibrant.rc8 :is(.vibrant-hero-actions,.art-page-copy){min-width:0}
 body.vibrant.rc8 :is(.offer-paths-grid>a,.visual-frame,.vibrant-hero-main,.vibrant-hero-small,.art-page-main-photo,.art-page-small-photo,.rc8-birthday-overlay){transform:none!important}
 body.vibrant.rc8 .vibrant-path-copy{padding:var(--pk-card-padding)}
 body.vibrant.rc8 .offer-paths-grid strong{font-size:var(--pk-text-card);line-height:1.25}
 body.vibrant.rc8 .offer-paths-grid .path-description{font-size:var(--pk-text-body);line-height:1.45}
 body.vibrant.rc8 .rc8-parent-copy h3{font-size:var(--pk-text-card);line-height:1.25}
}
@media(max-width:25.875rem){body.vibrant.rc8 .container{width:calc(100% - 2rem)}body.vibrant.rc8 .visit-prices{grid-template-columns:minmax(0,1fr)}body.vibrant.rc8 .wordmark{font-size:1rem;max-width:calc(100% - 5.5rem)}body.vibrant.rc8 .wordmark small{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){body.vibrant.rc8 *,body.vibrant.rc8 *::before,body.vibrant.rc8 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Intrinsic grids must not retain a legacy two-column span in a single column. */
body.vibrant.rc8 :is(.home-moments-grid,.birthday-package-grid,.workshop-grid,.visual-story-stage){grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
body.vibrant.rc8 .visual-story-stage{grid-template-rows:auto;padding:1rem;gap:1rem}
body.vibrant.rc8 .visual-story-stage .visual-frame{grid-column:auto;grid-row:auto}
body.vibrant.rc8 :is(.home-moments-grid figure,.birthday-package-card){grid-column:auto;grid-row:auto}
body.vibrant.rc8 .birthday-card-lead{display:flex;flex-direction:column}
body.vibrant.rc8 .birthday-card-lead .birthday-card-photo{height:255px;min-height:0}
body.vibrant.rc8 :is(.offer-card,.content-card,.category-card,.workshop-card,.birthday-package-card,.birthday-night-package,.visual-frame,.visit-prices>div,.promo-card,.newsletter) :is(h2,h3,h4,p,li,strong,span,small,figcaption){overflow-wrap:anywhere;min-width:0;max-width:100%;white-space:normal}
body.vibrant.rc8 .birthday-card-content{padding:var(--pk-card-padding)}
body.vibrant.rc8 .birthday-card-price strong{font-size:var(--pk-text-price);line-height:1.25}
body.vibrant.rc8 .birthday-card-features{padding-left:1.125rem}
body.vibrant.rc8 :is(.vibrant-hero-main,.art-page-main-photo){position:relative;inset:auto;width:100%;height:auto!important;border-bottom-width:8px;display:flex;flex-direction:column;box-sizing:border-box}
body.vibrant.rc8 :is(.vibrant-hero-main,.art-page-main-photo)>picture{display:block;width:100%;height:auto;min-height:0}
body.vibrant.rc8 :is(.vibrant-hero-main,.art-page-main-photo) img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
body.vibrant.rc8 :is(.vibrant-hero-scene,.art-page-scene){height:auto;min-height:0;padding-bottom:3rem}
body.vibrant.rc8 .site-header{container-type:inline-size}
@container (max-width:85rem){body.vibrant.rc8 .desktop-nav{display:none}body.vibrant.rc8 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center}}
@media(max-width:48rem){body.vibrant.rc8 :is(.home-moments-grid,.birthday-package-grid,.workshop-grid,.visual-story-stage){grid-template-columns:minmax(0,1fr)}body.vibrant.rc8 .home-moments-grid figure:first-child{grid-column:auto}body.vibrant.rc8 .visual-frame.frame-1{grid-column:auto;grid-row:auto}}
/* Let the brand yield space to the menu before either crosses the viewport. */
body.vibrant.rc8 .nav-shell .wordmark{flex:1 1 0;min-width:0;max-width:none;white-space:normal;overflow-wrap:anywhere}
body.vibrant.rc8 .nav-shell{gap:.5rem}
body.vibrant.rc8 .mobile-menu-toggle{padding:.5rem .75rem}
body.vibrant.rc8 .wordmark small{white-space:normal;letter-spacing:.04em}
@container (max-width:18rem){body.vibrant.rc8 .nav-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem;padding-block:.5rem}body.vibrant.rc8 .nav-shell .wordmark{grid-column:1/-1}body.vibrant.rc8 .mobile-menu-toggle{grid-column:2;justify-self:end}}
body.vibrant.rc8 .visit-practical{grid-template-columns:repeat(2,minmax(0,1fr))}
body.vibrant.rc8 .visit-practical>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
body.vibrant.rc8 .visit-practical dl>div{flex-wrap:wrap;gap:.25rem 1rem}
body.vibrant.rc8 .visit-practical dd{white-space:normal;margin:0;max-width:100%}
@media(max-width:50rem){body.vibrant.rc8 .visit-practical{grid-template-columns:minmax(0,1fr)}}
body.vibrant.rc8 :is(h1,h2,h3,h4){overflow-wrap:anywhere;word-break:normal}
body.vibrant.rc8 .footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}
body.vibrant.rc8 .visit-plan-heading>*{min-width:0;max-width:100%}
@media(max-width:48rem){body.vibrant.rc8 .vibrant-hero-small{position:relative;inset:auto;width:min(100%,16rem);height:auto!important;margin:1rem 0 0 auto}body.vibrant.rc8 .vibrant-hero-scene{padding-bottom:1.5rem}}
body.vibrant.rc8 .wordmark small{display:block;line-height:1.45}

/* Stage2 integration: preserve the centered clouds, larger CTA and new benefits. */
body.vibrant.rc8 .story-home .visual-frame figcaption{display:flex;align-items:center;justify-content:center;text-align:center;min-height:5em}
body.vibrant.rc8 .story-discover .btn{font-size:1.125rem;min-height:3.25rem;padding:1rem 1.5rem}
body.vibrant.rc8 :is(.rc9-benefits-grid,.rc9-coming-grid)>article{min-width:0;padding:var(--pk-card-padding);overflow-wrap:anywhere}
body.vibrant.rc8 :is(.rc9-benefits-grid,.rc9-coming-grid) h3{font-size:var(--pk-text-card);line-height:var(--pk-leading-heading)}
body.vibrant.rc8 :is(.rc9-benefits-grid,.rc9-coming-grid) p{font-size:var(--pk-text-body);line-height:var(--pk-leading-body)}
body.vibrant.rc8 .newsletter{border:2px solid #1739551f;border-radius:1.5rem}

@container (max-width:85rem){
 body.vibrant.rc8 .mobile-nav:not([hidden]){display:block!important;position:absolute;left:0;right:0;top:100%;box-sizing:border-box;max-height:calc(100dvh - var(--rc9-header-height) - var(--rc9-consent-space) - 28px);overflow:auto}
}
/* Shared display scale: long Polish headings should remain compact on phones. */
:root{--pk-text-display:clamp(2rem,1.6rem + 1.8vw,3.25rem)}
body.vibrant.rc8 :is(.page-hero-23 .page-hero-copy,.art-page-copy) h1{font-size:var(--pk-text-display)!important;line-height:1.16!important;margin-block:1rem!important;text-wrap:pretty}
body.vibrant.rc8 :is(.section-top,.story-heading,.rc8-parent-heading,.section-heading,.birthday-copy,.group-copy,.season-spotlight,.classes-heading,.visit-plan-heading) h2,
body.vibrant.rc8 :is(#zajecia,#wizyta,.offer-section) h2{font-size:var(--pk-text-section)!important;line-height:var(--pk-leading-heading)}
body.vibrant.rc8 .newsletter h2{font-size:var(--pk-text-card)!important}
body.vibrant.rc8 .art-page-cta{font-size:1rem;min-height:var(--pk-control-size);box-sizing:border-box;padding:.75rem 1rem;line-height:1.4;max-width:100%;overflow-wrap:anywhere}
body.vibrant.rc8 .art-page-copy p{font-size:var(--pk-text-body);line-height:var(--pk-leading-body)}
/* Keep photo captions clear of the existing collage overlay. Original photos stay. */
body.vibrant.rc8 .art-offer-hero .rc8-birthday-overlay{bottom:10rem}
body.vibrant.rc8 .art-offer-hero .art-party{bottom:10rem}
@media(max-width:48rem){
 body.vibrant.rc8 .art-offer-hero .rc8-birthday-overlay{position:relative;inset:auto;width:min(65%,13rem);margin:1rem 0 0 auto;transform:none;box-sizing:border-box}
 body.vibrant.rc8 .art-offer-hero .art-party{top:1rem;bottom:auto;right:0;width:6rem;height:auto}
}
/* Avoid narrow text columns in the four discovery tiles on phones. */
@media(max-width:48rem){
 body.vibrant.rc8 .category-grid{grid-template-columns:minmax(0,1fr)}
 body.vibrant.rc8 .category-grid:not(.detail-categories) .category-card{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,2.25fr)}
 body.vibrant.rc8 .category-grid:not(.detail-categories) .category-photo{height:100%;min-height:10rem;min-width:0}
 body.vibrant.rc8 .category-grid:not(.detail-categories) .category-photo img{height:100%;width:100%;object-fit:cover}
 body.vibrant.rc8 .category-grid .category-copy{padding:1rem;min-width:0}
}
@media(max-width:48rem){
 body.vibrant.rc8 #atrakcje .category-photo{aspect-ratio:auto;width:100%;min-width:0;overflow:hidden}
 body.vibrant.rc8 #atrakcje .category-photo>picture{display:block;width:100%;height:100%;min-width:0}
 body.vibrant.rc8 #atrakcje .category-copy{padding:1rem;min-width:0}
}
@media(max-width:48rem){
 body.vibrant.rc8 #atrakcje :is(.category-arrow,.category-action){position:static;inset:auto;display:grid;place-items:center;width:2.75rem;height:2.75rem;min-width:2.75rem;margin:.75rem 0 0 auto;transform:none}
 body.vibrant.rc8 .site-header .wordmark small{text-wrap:balance}
}

@media(max-width:48rem){body.vibrant.rc8 #atrakcje .category-action>svg{width:100%;height:100%;max-width:100%}}
/* Seasonal and attraction heroes use their own markup, but share the display scale. */
body.vibrant.rc8 :is(.rc8-camp-copy,.detail-hero-copy,.vibrant-hero-play .vibrant-hero-copy) h1{font-size:var(--pk-text-display)!important;line-height:1.16!important;letter-spacing:-.02em}
body.vibrant.rc8 :is(.device-story,.technology-heading,.picker-heading) h2{font-size:var(--pk-text-section)!important;line-height:var(--pk-leading-heading)}

/* ETAP5: one geometry contract per photo and program. */
.pk-photo{display:block;width:100%;min-width:0;line-height:0}
.pk-photo img{display:block;width:100%;max-width:100%}
.pk-photo-failed{display:none!important}
.pk-photo-error{display:block;padding:.75rem 1rem;font:600 .875rem/1.4 'DM Sans',sans-serif;color:#173955;background:#fff3cc;max-width:100%;box-sizing:border-box}
/* Remove guessed 900px boxes; native lazy still saves image transfers. */
body.vibrant.rc8 main :is(.home-band,.section,.art-world,.offer-paths,.promotions-section,.home-story,.home-play-break,.offer-section,.offer-visual-band){content-visibility:visible;contain-intrinsic-size:none}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure){align-self:start;transform:none!important;border-radius:1.5rem}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure) button,body.vibrant.rc8 .home-moments-grid figure:first-child button,body.vibrant.rc8 .visual-frame.frame-1 button{display:block;position:relative;width:100%;height:auto;min-height:0;aspect-ratio:4/3;padding:0;line-height:0;overflow:hidden}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure) button>.pk-photo{position:absolute;inset:0;height:100%}
body.vibrant.rc8 :is(.visual-frame,.home-moments-grid figure) button img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
body.vibrant.rc8 .visual-frame button img.photo-contain{object-fit:contain;background:#fffaf0}
body.vibrant.rc8 .visual-story-stage{grid-template-rows:auto;grid-auto-rows:auto;align-items:start}
body.vibrant.rc8 .promo-event .promo-media{display:block;align-self:start;height:auto;min-height:0;max-height:none;aspect-ratio:auto;padding:0;background:#fffaf0;line-height:0}
body.vibrant.rc8 .promo-event .promo-media img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:1672/941}
body.vibrant.rc8 .promo-event .promo-copy{min-width:0}
body.vibrant.rc8 .offer-accordion{--program-tone:#fff0bd;background:#fffaf0;border:2px solid #17395524;border-radius:1.5rem;margin:0 0 1rem;overflow:visible;scroll-margin-top:calc(var(--rc9-header-height) + 1rem)}
body.vibrant.rc8 .offer-accordion:nth-child(4n+2){--program-tone:#ccebdd}
body.vibrant.rc8 .offer-accordion:nth-child(4n+3){--program-tone:#dfd2f0}
body.vibrant.rc8 .offer-accordion:nth-child(4n){--program-tone:#f9d5c5}
body.vibrant.rc8 .offer-accordion-list .offer-summary{display:grid;grid-template-columns:2.75rem minmax(0,1fr) minmax(9rem,auto) 2.5rem;grid-template-rows:auto auto;gap:.5rem 1rem;align-items:center;background:var(--program-tone);color:#173955;border-radius:1.35rem;padding:1.25rem;list-style:none;cursor:pointer;box-sizing:border-box;overflow-wrap:anywhere}
body.vibrant.rc8 .offer-summary::-webkit-details-marker{display:none}
body.vibrant.rc8 .offer-summary>*{min-width:0;max-width:100%;white-space:normal;box-sizing:border-box}
body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-number{grid-area:1/1/3/2;width:2.5rem;height:2.5rem;display:grid;place-items:center;background:#173955;color:#fffaf0;border-radius:50%;font-size:1rem}
body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-title{grid-area:1/2/2/3;font-size:clamp(1.125rem,1rem + .5vw,1.5rem);line-height:1.25;overflow-wrap:anywhere}
body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-meta{grid-area:1/3/3/4;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:.125rem;font-size:1rem;line-height:1.4}
body.vibrant.rc8 .offer-summary-meta strong{color:#173955;font-size:1.5rem;line-height:1.2}
body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-toggle{grid-area:1/4/3/5;display:grid;place-items:center;background:#1455c5;color:white;border-radius:50%;width:2.5rem;height:2.5rem;font-size:1.75rem;transform:none}
body.vibrant.rc8 .offer-accordion[open] .offer-toggle{transform:rotate(45deg)}
body.vibrant.rc8 .offer-disclosure-label{grid-area:2/2/3/3;font-size:.875rem;line-height:1.4;font-weight:700;text-decoration:underline;text-underline-offset:3px}
body.vibrant.rc8 .offer-accordion[open]>.offer-summary{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:2px solid #17395524}
body.vibrant.rc8 .offer-body{padding:clamp(1rem,3vw,2rem)}
body.vibrant.rc8 .offer-body-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.75fr);gap:1.5rem;align-items:start}
body.vibrant.rc8 .offer-program-copy{min-width:0}
body.vibrant.rc8 .offer-program-copy :is(p,li){font-size:1rem;line-height:1.5;margin-block:.4rem;overflow-wrap:anywhere}
body.vibrant.rc8 .offer-program-copy h3{font-family:'DM Sans',sans-serif;font-size:1.125rem;line-height:1.3;margin:0 0 .75rem;color:#173955}
body.vibrant.rc8 .offer-program-copy ul{padding-left:1.25rem;margin:.5rem 0}
body.vibrant.rc8 .offer-program-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.75rem;margin-block:1rem}
body.vibrant.rc8 .offer-program-block{background:var(--program-tone);border-radius:1rem;padding:1rem;min-width:0}
body.vibrant.rc8 .offer-program-info{border-left:3px solid #1455c5;padding:.5rem 1rem;margin:1rem 0}
body.vibrant.rc8 .offer-program-photo{margin:0;min-width:0;border-radius:1rem;overflow:hidden;background:var(--program-tone)}
body.vibrant.rc8 .offer-program-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
body.vibrant.rc8 .offer-program-photo img[src$=".svg"]{object-fit:contain}
body.vibrant.rc8 .offer-program-cta{background:#1455c5;color:#fff;border:2px solid #173955;font-weight:800;box-shadow:3px 3px 0 #173955;min-height:3rem;margin-top:.75rem}
body.vibrant.rc8 .rc8-exclusive summary{background:#ffda24;color:#173955;border-radius:.75rem;padding:.75rem 1rem;font-weight:800;width:fit-content;max-width:100%}
body.vibrant.rc8 .rc8-exclusive summary:focus-visible{outline:3px solid white;outline-offset:4px}
body.vibrant.rc8 .offer-official{min-width:0;overflow-wrap:anywhere}
@media(max-width:60rem){body.vibrant.rc8 .offer-body-grid{grid-template-columns:minmax(0,1fr)}body.vibrant.rc8 .offer-program-photo{max-width:32rem;width:100%;justify-self:center}}
@media(max-width:48rem){
 body.vibrant.rc8 .promo-event{grid-template-columns:minmax(0,1fr)}
 body.vibrant.rc8 #urodziny .birthday-photos{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;height:auto;min-height:0;padding:0;transform:none}
 body.vibrant.rc8 #urodziny .birthday-photos :is(.birthday-main,.birthday-small){position:static;inset:auto;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transform:none;margin:0;box-sizing:border-box}
 body.vibrant.rc8 #urodziny .photo-sticker{position:static;inset:auto;margin:.25rem 0 1rem;transform:none;max-width:100%;white-space:normal}
 body.vibrant.rc8 .art-offer-hero .art-page-scene{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;padding-bottom:1rem}
 body.vibrant.rc8 .art-offer-hero .rc8-birthday-overlay{position:static;inset:auto;display:block;width:100%;max-width:100%;margin:0;transform:none;box-sizing:border-box}
 body.vibrant.rc8 .rc8-birthday-overlay .owner-photo{width:100%;height:auto;aspect-ratio:4/3}
 body.vibrant.rc8 .rc8-birthday-overlay img{width:100%;height:100%;object-fit:cover}
 body.vibrant.rc8 .art-offer-hero :is(.art-party,.art-page-stamp){display:none}
 body.vibrant.rc8 .vibrant-hero-play .vibrant-hero-scene{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem 0;height:auto;min-height:0}
 body.vibrant.rc8 .vibrant-hero-play :is(.vibrant-hero-main,.vibrant-hero-small){position:static;inset:auto;justify-self:center;width:100%;max-width:100%;margin:0;transform:none!important;box-sizing:border-box}
 body.vibrant.rc8 .vibrant-hero-play .vibrant-hero-small img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
 body.vibrant.rc8 .vibrant-hero-play :is(.vibrant-hero-stamp,.vibrant-hero-orbit){display:none}
 body.vibrant.rc8 .offer-accordion-list .offer-summary{grid-template-columns:2rem minmax(0,1fr) 2rem;grid-template-rows:auto auto auto;gap:.5rem;padding:1rem}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-number{grid-area:1/1/2/2;width:2rem;height:2rem;font-size:.875rem}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-title{grid-area:1/2/2/3;overflow-wrap:anywhere}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-meta{grid-area:2/2/3/4;display:flex;flex-wrap:wrap;flex-direction:row;gap:.25rem .75rem}
 body.vibrant.rc8 .offer-summary-meta>span{flex-basis:100%}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-toggle{grid-area:1/3/2/4;width:2rem;height:2rem}
 body.vibrant.rc8 .offer-disclosure-label{grid-area:3/2/4/4}
 body.vibrant.rc8 .visual-story-stage{padding:.5rem 0;gap:1.25rem}
 body.vibrant.rc8 .home-moments-grid{gap:1.25rem}
 body.vibrant.rc8 .offer-visual-band:nth-of-type(even){background:#e4f1eb}
}
body.vibrant.rc8 .rc9-camp-story-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2rem;align-items:start}
body.vibrant.rc8 .rc9-camp-story-grid figure{margin:0;min-width:0;border-radius:1.5rem;overflow:hidden;background:#fffaf0}
body.vibrant.rc8 .rc9-camp-story-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
body.vibrant.rc8 .rc9-camp-story-grid figcaption{padding:.75rem 1rem;font-size:.875rem;line-height:1.5}
body.vibrant.rc8 .rc9-camp-activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;margin-block:1.5rem}
body.vibrant.rc8 .rc9-camp-activity-grid article{border-radius:1.5rem;padding:1.5rem;background:#ccebdd}
body.vibrant.rc8 .rc9-camp-activity-grid article:nth-child(2){background:#dfd2f0}
body.vibrant.rc8 .rc9-camp-activity-grid h3{font-size:1.25rem;line-height:1.3}
body.vibrant.rc8 .rc8-care-notes ul{font-size:1rem;line-height:1.55;padding-left:1.25rem}
body.vibrant.rc8 .rc8-camp-care{background:#fff0bd;border-radius:2rem;padding:clamp(1.25rem,3.8vw,3rem);overflow:hidden;max-width:100%}
body.vibrant.rc8 .rc9-camp-why{margin-top:1rem}
@media(max-width:48rem){body.vibrant.rc8 .rc9-camp-story-grid{grid-template-columns:minmax(0,1fr)}body.vibrant.rc8 .vibrant-hero-play :is(.vibrant-sticker,.vibrant-doodle){width:4rem;height:4rem;pointer-events:none}}
/* Compact failure surfaces; retain the full source only in the audit/registry. */
body.vibrant.rc8 .pk-media-failed{height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:#fff3cc}
body.vibrant.rc8 .pk-media-failed .pk-photo-error{position:static;line-height:1.4}
/* Keep control tracks stable while text doubles; let words and prices wrap. */
@media(max-width:48rem){
 body.vibrant.rc8 .offer-accordion-list .offer-summary{grid-template-columns:32px minmax(0,1fr) 32px;padding:16px;gap:8px}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-number,body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-toggle{width:32px;height:32px;font-size:20px;min-width:0}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-meta{grid-area:2/1/3/4;min-width:0;max-width:100%;overflow-wrap:anywhere}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-disclosure-label{grid-area:3/1/4/4}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-title{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
 body.vibrant.rc8 .offer-summary-meta :is(strong,span,small){min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal}
}
body.vibrant.rc8 .rc8-camp-care>*{min-width:0}
body.vibrant.rc8 .rc8-camp-care :is(p,li,h2,h3){overflow-wrap:anywhere;max-width:100%}
body.vibrant.rc8 .rc8-camp-care{box-sizing:border-box}
/* Essential content never depends on an observer or an entrance animation. */
body.vibrant.rc8 .reveal{opacity:1!important;transform:none!important}

/* ETAP15: minimum touch area and keyboard focus; existing page composition is retained. */
body.vibrant.rc8 :is(button,summary,select,input:not([type=hidden])){min-height:44px;min-width:44px}
body.vibrant.rc8 :is(.quiet-link,.quick-facts>a,.footer-bottom>a,.newsletter-help>a,.address-card p a,.contact-card a,.rc8-event-card h2 a){display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
body.vibrant.rc8 main :is(p,li,dd) a:not(.btn){display:inline-flex;align-items:center;min-height:44px;min-width:44px;max-width:100%;overflow-wrap:anywhere}
body.vibrant.rc8 .newsletter-consent input{flex:0 0 44px;width:44px;height:44px;margin:0}
body.vibrant.rc8 :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #173955;outline-offset:3px;box-shadow:0 0 0 6px #fffaf0}
body.vibrant.rc8 .price-calculator{scroll-margin-top:calc(var(--rc9-header-height,80px) + 20px)}
body.vibrant.rc8 .price-calculator select{height:auto;min-height:54px}
/* Keep the native reduced-motion path active for root-level smooth scrolling too. */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body.vibrant.rc8 *,body.vibrant.rc8 *::before,body.vibrant.rc8 *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Override two inherited important declarations which made controls smaller. */
body.vibrant.rc8 .promo-card .quiet-link{min-height:44px!important}
body.vibrant.rc8 .newsletter .newsletter-help>a{display:inline-flex!important;align-items:center;min-height:44px;min-width:44px}

/* Retain the block breadcrumb: inline baseline changes must not move the hero. */
body.vibrant.rc8 .breadcrumb{min-height:44px;min-width:44px;box-sizing:border-box}
/* Match the existing 46dvh visible-banner cap before its ResizeObserver measures it. */
@media(max-width:760px){:root:has(#consent-banner:not([hidden])){--rc9-consent-space:46dvh}}

/* ETAP19: shared product controls and surfaces. Content reflows; no clipping fix. */
:root{
 --pk-ink:#173955;--pk-blue:#1455c5;--pk-yellow:#ffda24;
 --pk-cream:#fffaf0;--pk-mint:#ccebdd;--pk-lilac:#dfd2f0;
 --pk-radius-control:1rem;--pk-radius-card:1.5rem;
 --pk-space-control:.75rem;--pk-focus:3px solid var(--pk-ink);
}
body.vibrant.rc8 :is(.btn,.calc-copy){
 border-radius:var(--pk-radius-control);min-height:48px;
 line-height:1.4;white-space:normal;max-width:100%;
 padding:.75rem 1rem;box-sizing:border-box;overflow-wrap:anywhere;
}
body.vibrant.rc8 .btn-blue{background:var(--pk-blue);color:#fff;border:2px solid var(--pk-ink)}
body.vibrant.rc8 .btn-yellow{background:var(--pk-yellow);color:var(--pk-ink);border:2px solid var(--pk-ink)}
body.vibrant.rc8 :is(.btn,.calc-copy):active{transform:translateY(1px);box-shadow:none}
body.vibrant.rc8 :is(a,button,input,select,textarea,summary):focus-visible{
 outline:var(--pk-focus);outline-offset:3px;box-shadow:0 0 0 6px var(--pk-cream);
}
body.vibrant.rc8 main :is(.offer-table tbody th a,.faq-list p a,.read-notice a){
 display:inline-flex;align-items:center;min-height:44px;min-width:44px;
 max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.5;
}
/* Scrolling must not shrink a 44px brand link below its touch requirement. */
body.vibrant.rc8 .site-header.is-scrolled .wordmark{transform:none}
body.vibrant.rc8 .site-header .wordmark{min-height:44px}
/* A slightly transformed attraction card must still expose a full touch area. */
body.vibrant.rc8 .quiet-link{min-height:48px}
body.vibrant.rc8 :is(.faq-list details,.offer-faq details,.contact-actions-23,.visit-plan-23){border-radius:var(--pk-radius-card)}
body.vibrant.rc8 .faq-list details{background:var(--pk-cream);border:1px solid #17395533}
body.vibrant.rc8 .faq-list section:nth-child(2n) details{background:#e8f3ed}
body.vibrant.rc8 .contact-actions-23{background:#e6f1fa;border-color:#17395540}
body.vibrant.rc8 .visit-plan-23{background:#fff0bd;border-color:#d4b957}
body.vibrant.rc8 .visit-prices>div:nth-child(2n){background:#e8f3ed}
/* At narrow widths reserve a whole row for long Polish program names, including
   doubled text. The disclosure remains one native, full-size summary target. */
@media(max-width:430px){
 body.vibrant.rc8 .offer-accordion-list .offer-summary{grid-template-rows:auto auto auto auto}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-number{grid-area:1/1/2/2}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-toggle{grid-area:1/3/2/4}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-title{grid-area:2/1/3/4}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-summary-meta{grid-area:3/1/4/4}
 body.vibrant.rc8 .offer-accordion-list .offer-summary>.offer-disclosure-label{grid-area:4/1/5/4}
}
/* A sticky header must leave room for content and the keyboard on short screens. */
@media(max-height:500px){:root{--rc9-header-height:0px!important}body.vibrant.rc8 .site-header{position:relative}}
@media(hover:hover){
 body.vibrant.rc8 .btn-blue:hover{background:#103f91}
 body.vibrant.rc8 .btn-yellow:hover{background:#f2c900}
}
@media(prefers-reduced-motion:reduce){
 body.vibrant.rc8 :is(.btn,.calc-copy):active{transform:none}
}

/* News captions need real document height as text grows. Both photographs keep
   their dedicated source; decorated frames remain, while their captions reflow. */
body.vibrant.rc8 .art-news-intro .art-page-scene{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1rem;align-items:start;height:auto;min-height:0;padding-bottom:1rem}
body.vibrant.rc8 .art-news-intro .art-page-scene :is(.art-page-main-photo,.art-page-small-photo){position:relative;inset:auto;width:100%;max-width:100%;height:auto!important;min-height:0;margin:0;transform:none;box-sizing:border-box}
body.vibrant.rc8 .art-news-intro .art-page-small-photo{display:flex;flex-direction:column;padding:.5rem}
body.vibrant.rc8 .art-news-intro .art-page-small-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
body.vibrant.rc8 .art-news-intro .art-page-small-photo figcaption{position:static;padding:.5rem;font-size:1rem;line-height:1.5;white-space:normal;overflow-wrap:break-word}
@media(max-width:760px){body.vibrant.rc8 .art-news-intro .art-page-scene{grid-template-columns:minmax(0,1fr)}body.vibrant.rc8 .art-news-intro .art-page-small-photo img{aspect-ratio:4/3}}

/* Final scoped regressions: retain text in nested error heroes; preserve touch
   area under the existing reveal transform in the coming-soon cards. */
body.vibrant.rc8 .prose-page .page-hero-copy .eyebrow{display:inline-block;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
body.vibrant.rc8 .rc9-coming-grid .quiet-link{min-height:48px}
