/* 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)}
