/* Audit 26. 9. 2026: čitateľnosť, prístupnosť a responzívne správanie. */
.contact-actions{display:grid;gap:12px;margin-top:24px}
.contact-grid address .contact-action{display:block;margin:0;padding:16px 20px;min-height:64px;border:1px solid rgba(18,48,69,.35);border-radius:16px;background:rgba(255,255,255,.22);text-decoration:none;transition:background .2s,transform .2s}
.contact-action span{display:block;font-size:.85rem;font-weight:600;margin-bottom:5px}
.contact-action strong{font-size:1.05rem;overflow-wrap:anywhere}
.contact-grid address .contact-action:hover{background:rgba(255,255,255,.5);transform:translateY(-2px)}
.group-contacts a,.church-contact a[href^="tel:"],.site-footer a[href^="tel:"],.site-footer a[href^="mailto:"]{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
.gateway-panel.child.orb-enabled .gateway-cta{border:2px solid transparent;transition:border-color .35s,box-shadow .35s,transform .2s}
.gateway-panel.child.orb-arrived .gateway-cta{border-color:var(--orange);box-shadow:0 0 0 2px var(--orange),0 10px 26px rgba(18,48,69,.18)}
.gateway-panel.child.orb-enabled .gateway-symbol{transform:none;right:max(28px,4%)}
.gateway-orb{position:absolute;z-index:4;top:0;left:0;display:block;border-radius:50%;background:var(--orange);pointer-events:none;transform-origin:center;will-change:transform}
@media(prefers-reduced-motion:reduce){.contact-grid address .contact-action{transition:none}.contact-grid address .contact-action:hover{transform:none}}
[hidden]{display:none!important}
/* HTML dimensions reserve space; CSS must still keep the natural image ratio. */
img{height:auto}
html{scroll-padding-top:100px}
section[id]{scroll-margin-top:100px}
h1,h2,h3{line-height:1.08;overflow-wrap:normal}
/* Prose wraps between words, not within syllables. Long contact URLs may still wrap. */
p,h1,h2,h3,h4,li,dt,dd,figcaption{hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:normal}
a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #28718d;outline-offset:5px}
.dark-page a:focus-visible,.site-header a:focus-visible,.site-header button:focus-visible,.site-footer a:focus-visible{outline-color:var(--yellow)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.container>*,.nav-wrap>*,.hero-grid>*,.statement-grid>*,.calendar-layout>*,.social-layout>*,.contact-grid>*{min-width:0}
.eyebrow,.gateway-choice,.field label,.form-hint,.check,.future-thumb span,.calendar-weekdays,.gallery-photo figcaption,.footer-bottom{font-size:.875rem}
.form-hint{color:#3f5260;line-height:1.6;max-width:none}
.form-hint a{text-underline-offset:3px}
.blue-card{color:var(--navy)}
.blue-card p{color:var(--navy)}
.hero-copy h1{font-size:clamp(2.8rem,6.2vw,6.1rem)}
.hero-copy h1 span,.gallery-hero h1 span{color:var(--navy)}
.church-hero h1{font-size:clamp(2.7rem,6.6vw,6.4rem)}
.church-hero{min-height:min(780px,85svh)}
.site-header .brand{flex-shrink:0}
.site-header .nav-links{gap:18px}
.gateway-header{background:linear-gradient(180deg,rgba(18,48,69,.88),rgba(18,48,69,0));padding-bottom:48px}
.gateway-footer{padding:22px 4.5vw;display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between;background:var(--navy);font-size:.875rem}
.gateway-footer>div{display:flex;flex-wrap:wrap;gap:18px}
.gateway-footer a,.gateway-footer button{color:#fff}
.social-feed{min-width:0;padding:16px;overflow:hidden}
.social-feed iframe{max-width:100%;border:0}
.feed-direct{display:block;margin-top:20px;font-size:.95rem;text-underline-offset:4px}
.future-thumbs button[aria-pressed="true"]{border-color:var(--yellow)}
.email-result{margin-top:24px;border-top:1px solid var(--line);padding-top:22px}
.email-result>label{display:block;margin:16px 0 8px;font-weight:600}
.email-result textarea{width:100%;resize:vertical;min-height:200px;padding:12px;border:1px solid #73818a;border-radius:12px;font-size:1rem;color:var(--navy);background:#f4f7f8}
.email-result .actions{margin-top:18px}
.email-result .button{max-width:none;width:auto}
.secondary-button{background:#fff;color:var(--navy)}
.form-card>.button{margin-top:18px;max-width:100%}
.calendar-day.today{outline:2px solid var(--navy);outline-offset:2px}
.calendar-weekdays{color:#344e60}
.cookie-banner p,.cookie-banner a,.cookie-actions .button,.cookie-modal-actions .button,.cookie-note,.cookie-option p,.cookie-option>span{font-size:.875rem}
.cookie-banner{max-height:70svh;overflow:auto}
.cookie-modal-card h2{padding-right:30px;line-height:1.1}
.cookie-option p,.cookie-note{color:#425461}
.cookie-option>input{flex-shrink:0}
.cookie-option a,.cookie-note a{text-underline-offset:3px}
.cookie-banner strong{font-size:1.15rem}
.cookie-actions .cookie-secondary,.cookie-actions .yellow{background:#fff;border-color:#fff;color:var(--navy);box-shadow:none}
.cookie-actions .button:hover{background:var(--light-blue);border-color:var(--light-blue)}
.scope-label{display:block;margin-bottom:8px;font-weight:600}
#consent-area{width:100%;padding:12px;border:1px solid #637e90;border-radius:10px;background:#fff;color:var(--navy);font-size:1rem}
.modal-open{overflow:hidden}
.legal-table{overflow-x:auto}
.legal-table table{width:100%;border-collapse:collapse;min-width:480px}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:18px;border-bottom:1px solid var(--line)}
.legal-table th{background:var(--navy);color:#fff}
.legal-wrap address{font-style:normal;line-height:1.7}
.legal-wrap a{overflow-wrap:anywhere;text-underline-offset:3px}
.legal-note{padding:18px 22px;border-left:4px solid var(--yellow);background:#fff}
.footer-cookie-link{min-height:32px}
.form-row>*{min-width:0}
.contact-grid address a{overflow-wrap:anywhere}
.cookie-modal-actions .button{flex:1;min-width:0}
@media(max-width:960px){.programme-heading{grid-template-columns:1fr;gap:24px}.join-grid{grid-template-columns:1fr;margin-top:36px}.join-grid article,.join-grid article:first-child{padding:28px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.3)}.join-grid article:last-child{border-bottom:0}}
@media(max-width:1200px){html:not(.js) .nav-wrap{flex-wrap:wrap;padding:16px 0}html:not(.js) .nav-links{display:flex;position:static;padding:0;flex-direction:row;flex-wrap:wrap}html:not(.js) .nav-toggle{display:none}}
@media(max-width:1200px){.js .nav-links{display:none;position:absolute;top:82px;left:0;right:0;padding:24px;max-height:calc(100svh - 82px);overflow-y:auto;flex-direction:column;align-items:flex-start;background:var(--navy)}.js .nav-links.open{display:flex}.js .nav-toggle{display:block}.nav-wrap>.button{display:none}.nav-links a{padding:7px 0;font-size:1rem}}
@media(max-width:960px){html:not(.js) .nav-wrap{flex-wrap:wrap;padding:16px 0}html:not(.js) .nav-links{display:flex;position:static;padding:0;flex-direction:row;flex-wrap:wrap}html:not(.js) .nav-toggle{display:none}.church-hero{min-height:650px}.social-layout{gap:36px}}
@media(max-width:640px){.gallery-photo figcaption{font-size:.875rem;line-height:1.3;border-radius:12px}.photo-gallery,.full-photo-grid{grid-auto-rows:190px}.hero-copy h1{font-size:clamp(2.55rem,10vw,3.8rem)}.church-hero h1{font-size:clamp(2.4rem,9vw,3.8rem)}.hero-grid{padding-top:52px}.photo-scene{height:370px}.photo-badge{right:0}.section h2{font-size:clamp(2.2rem,10vw,3.2rem)}.section{padding:64px 0}.button{max-width:100%;padding:14px 20px;white-space:normal;overflow-wrap:break-word}.church-hero{min-height:620px}.cookie-actions{grid-template-columns:1fr}.cookie-actions .button:last-child{grid-column:auto}.cookie-banner{max-height:56svh}.cookie-banner .cookie-actions{gap:7px}.cookie-actions .button{min-height:44px}.cookie-modal{padding:12px}.cookie-modal-card{max-height:calc(100svh - 24px)}.cookie-modal-card h2{font-size:2.25rem}.cookie-modal-actions{grid-template-columns:1fr}.cookie-modal-actions .button{width:100%;min-width:0}.gateway-footer>div{gap:12px 20px}.form-card{padding:24px 20px}.future-thumbs{grid-template-columns:1fr}.future-thumb:first-child{grid-column:auto}.future-thumb img{height:130px}}
@media(max-width:380px){.container,.nav-wrap{width:calc(100% - 24px)}.gateway-panel{padding-left:20px;padding-right:20px}.gateway-copy h2{font-size:2.9rem}.form-card{padding:20px 16px}.calendar-card{padding:12px}.group-contacts li{flex-direction:column}.brand img{width:140px}}
@media print{.site-header,.cookie-banner,.cookie-modal,.social-feed,.nav-toggle,.form-card{display:none!important}body,.dark-page,.section{color:#000!important;background:#fff!important}.section{padding:24px 0}.church-hero{min-height:0;background:#fff!important;color:#000}.church-hero .container{padding:24px 0}.container{width:100%}.actions{display:none}.belief-list details{break-inside:avoid}.site-footer{background:#fff;color:#000}}

@media(max-width:640px){.church-hero{background-image:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.18)),url("assets/optimized/krestanske-centrum-program-960.webp")} .gateway-panel.church{background-image:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.12)),url("assets/optimized/krestanske-centrum-program-960.webp")}}

.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:.875rem;margin:0 0 24px;line-height:1.6}.breadcrumbs a{text-underline-offset:3px}.faq-section{background:#fff}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list summary{font-size:1.1rem;font-weight:600;cursor:pointer;line-height:1.5}.faq-list p{margin:16px 0 0;line-height:1.7}@media(max-width:960px){.faq-layout{grid-template-columns:1fr;gap:28px}}

/* Cenník detského centra – rovnaké farby, typografia a zaoblenia ako zvyšok webu. */
.pricing-section{background:#fff}
.pricing-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;align-items:end;margin-bottom:42px}
.pricing-heading h2{max-width:650px;margin-bottom:0}
.pricing-intro{max-width:480px;line-height:1.65}
.pricing-validity{font-size:.875rem;margin-bottom:0}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pricing-card{padding:32px;border-radius:var(--radius);display:flex;flex-direction:column;min-width:0;color:var(--navy)}
.pricing-card-younger{background:var(--light-blue)}
.pricing-card-older{background:var(--yellow)}
.pricing-card-flexible{background:var(--navy);color:#fff}
.pricing-kicker{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;margin-bottom:14px}
.pricing-card h3{font-size:clamp(1.75rem,2.4vw,2.25rem);min-height:2.3em;margin-bottom:22px}
.pricing-rates{margin:0}
.pricing-rates>div{border-top:1px solid rgba(18,48,69,.28);padding:20px 0}
.pricing-card-flexible .pricing-rates>div{border-color:rgba(255,255,255,.35)}
.pricing-rates dt{font-size:1rem;line-height:1.5;margin-bottom:8px}
.pricing-rates dd{margin:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.pricing-rates strong{font-size:clamp(2.5rem,3.5vw,3.2rem);letter-spacing:-.04em;font-weight:600;line-height:1.1;white-space:nowrap}
.pricing-rates dd span{font-size:.875rem;white-space:nowrap}
.pricing-availability{margin:auto 0 20px;padding-top:24px;max-width:260px;line-height:1.6}
.pricing-extras{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.pricing-meals,.pricing-sibling{border:1px solid var(--line);border-radius:var(--radius);padding:30px 32px;min-width:0}
.pricing-extras h3{font-size:1.6rem;margin-bottom:12px;letter-spacing:-.03em}
.pricing-meals p{font-size:1rem;max-width:420px}
.pricing-meals dl{display:flex;flex-wrap:wrap;gap:22px 48px;margin:22px 0 0}
.pricing-meals dt{font-size:.9rem;margin-bottom:4px}
.pricing-meals dd{margin:0;font-size:1.75rem;font-weight:600;white-space:nowrap}
.pricing-sibling{display:flex;align-items:center;gap:26px;background:var(--orange);border-color:var(--orange)}
.pricing-discount{font-size:clamp(3rem,5vw,4.5rem);font-weight:600;letter-spacing:-.055em;line-height:1;white-space:nowrap}
.pricing-sibling p{margin:0;font-size:1rem}
.pricing-next{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:38px}
.pricing-next>div{max-width:680px}
.pricing-next h3{font-size:1.6rem;margin-bottom:10px}
.pricing-next p{margin-bottom:0}
.pricing-next .button{flex-shrink:0}
@media(max-width:960px){.pricing-heading{grid-template-columns:1fr;gap:24px}.pricing-intro{max-width:620px}.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-card-flexible{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.pricing-card-flexible .pricing-kicker,.pricing-card-flexible h3{grid-column:1}.pricing-card-flexible h3{min-height:0;margin:0}.pricing-card-flexible .pricing-rates{grid-column:2;grid-row:1/4}.pricing-card-flexible .pricing-rates>div{padding:12px 0;border-top:0}.pricing-availability{grid-column:1;margin:0;padding-top:18px;max-width:none}.pricing-sibling{flex-direction:column;align-items:flex-start;justify-content:center;gap:18px}}
@media(max-width:640px){.pricing-heading{margin-bottom:30px}.pricing-grid,.pricing-extras{grid-template-columns:1fr;gap:16px}.pricing-card{padding:28px 24px}.pricing-card h3{min-height:0;margin-bottom:24px}.pricing-card-flexible{display:flex;grid-column:auto}.pricing-card-flexible .pricing-rates>div{border-top:1px solid rgba(255,255,255,.35);padding:20px 0}.pricing-availability{padding-top:4px;margin:0}.pricing-meals,.pricing-sibling{padding:28px 24px}.pricing-sibling{flex-direction:row;align-items:center;justify-content:flex-start;gap:20px}.pricing-discount{font-size:3.2rem}.pricing-next{align-items:flex-start;flex-direction:column;margin-top:30px}.pricing-next .button{width:100%}}
@media(max-width:380px){.pricing-sibling{flex-direction:column;align-items:flex-start}}

/* Hodnoty nadväzujú na tmavý vizuál kresťanského centra. */
.church-values{padding:44px 0;background:#000;color:#fff}
.church-values h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:24px;color:var(--yellow)}
.church-values-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;padding:0;margin:0;border-top:1px solid rgba(245,166,5,.5);border-bottom:1px solid rgba(245,166,5,.5)}
.church-values-grid li{padding:28px 16px;background:transparent;color:#fff;font-size:clamp(1.3rem,2.4vw,2rem);font-weight:600;letter-spacing:.055em;text-align:center;text-transform:uppercase;line-height:1.3;min-width:0}
.church-values-grid li+li{border-left:1px solid rgba(245,166,5,.35)}
@media(max-width:640px){.church-values{padding:32px 0}.church-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.church-values-grid li{padding:24px 10px;font-size:1.2rem}.church-values-grid li:nth-child(3){border-left:0}.church-values-grid li:nth-child(n+3){border-top:1px solid rgba(245,166,5,.35)}}

/* Pripravovaná MŠ: rovnaká identita, jasné oddelenie dnešnej a budúcej služby. */
.admissions-notice{margin-top:26px;padding:20px 22px;border-left:4px solid var(--navy);background:rgba(255,255,255,.6);border-radius:0 18px 18px 0}
.admissions-notice strong{display:block;font-size:1.08rem;line-height:1.45;margin-bottom:8px}
.admissions-notice a{font-size:1rem;line-height:1.5;text-underline-offset:3px}
.admissions-actions{gap:12px;margin-top:24px}
.admissions-actions .button{font-size:1rem}
.admissions-actions .secondary-button{background:transparent;border-color:var(--navy);color:var(--navy);box-shadow:none}
.form-card .field select{display:block;width:100%;min-width:0;min-height:52px;border:1px solid #7c8e9c;border-radius:12px;padding:12px;color:var(--navy);background:#fff;font-size:1rem}
.form-card,.form-card .field{min-width:0}
.form-card .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-card input[type=month]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;max-inline-size:100%;min-height:52px;-webkit-appearance:none;appearance:none}
.form-card input[type=month]::-webkit-date-and-time-value{min-width:0;text-align:left}
@media(max-width:640px){.form-card .form-row{grid-template-columns:1fr}}
.form-card .field select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.form-card [data-interest-help]{min-height:3em}
.admissions-hero{background:var(--light-blue);padding:64px 0}
.admissions-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.admissions-hero-grid>*{min-width:0}
.admissions-date{display:inline-block;padding:9px 16px;border-radius:99px;background:var(--yellow);font-weight:600;font-size:1rem;margin-bottom:24px}
.admissions-hero h1{font-size:clamp(2.8rem,4.5vw,4.7rem);line-height:1.03}
.admissions-hero h1 span{color:var(--navy)}
.admissions-hero .lead{font-size:1.18rem;line-height:1.6}
.admissions-current{margin:25px 0 0;font-size:1rem;line-height:1.6}
.admissions-current a{font-weight:600;text-underline-offset:3px}
.admissions-hero-photo{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 40px rgba(18,48,69,.12)}
.admissions-hero-photo img{width:100%;height:auto;aspect-ratio:2820/1620;object-fit:cover}
.admissions-hero-photo figcaption{padding:18px 22px;font-size:.9rem;line-height:1.55}
.admissions-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:42px}
.admissions-principles article{border-top:3px solid var(--yellow);padding-top:24px}
.admissions-principles article>span{display:block;font-size:1rem;margin-bottom:18px;font-weight:600}
.admissions-principles h3{font-size:1.8rem;line-height:1.1;letter-spacing:-.03em}
.admissions-principles p{font-size:1rem;line-height:1.7;margin-bottom:0}
.admissions-spaces{background:var(--light-blue)}
.admissions-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.admissions-gallery figure{margin:0;background:#fff;border-radius:22px;overflow:hidden}
.admissions-gallery img{width:100%;height:auto;aspect-ratio:2820/1620;object-fit:cover;transition:transform .2s}
.admissions-gallery a{display:block;overflow:hidden}
.admissions-gallery a:hover img{transform:scale(1.025)}
.admissions-gallery figcaption{padding:18px 20px;font-size:1rem;line-height:1.4}
.admissions-timeline{list-style:none;padding:0;margin:42px 0 26px}
.admissions-timeline li{display:grid;grid-template-columns:240px 1fr;gap:38px;border-top:1px solid var(--line);padding:30px 0}
.admissions-timeline li:last-child{border-bottom:1px solid var(--line)}
.admissions-timeline li>span{font-size:1.3rem;font-weight:600}
.admissions-timeline h3{font-size:1.8rem;line-height:1.2;margin-bottom:12px}
.admissions-timeline p{max-width:700px;margin:0;line-height:1.65}
.admissions-faq{background:#f3f7fa}
.preschool-page .section-heading>p{font-size:1.1rem;line-height:1.65}
@media(max-width:960px){.admissions-hero-grid{grid-template-columns:1fr;gap:36px}.admissions-hero-photo{max-width:760px}.admissions-hero h1{font-size:clamp(2.8rem,7vw,4.7rem)}.admissions-principles{gap:22px}.admissions-timeline li{grid-template-columns:190px 1fr;gap:24px}}
@media(max-width:640px){.admissions-hero{padding:40px 0}.admissions-principles,.admissions-gallery{grid-template-columns:1fr;gap:24px}.admissions-principles{margin-top:28px}.admissions-timeline li{grid-template-columns:1fr;gap:14px;padding:24px 0}.admissions-timeline{margin-top:28px}.admissions-actions{align-items:stretch;flex-direction:column}.admissions-actions .button{width:100%;font-size:1rem}.admissions-notice{padding:18px}.admissions-hero .actions{align-items:flex-start;flex-direction:column}.admissions-hero .actions .button{width:100%}.admissions-date{font-size:.95rem}.preschool-page .section-heading>p{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.admissions-gallery img{transition:none}}

/* Parent-first content, using the established daycare palette and typography. */
.daycare-essentials{list-style:none;padding:0;margin:24px 0;font-size:1rem;line-height:1.6;display:grid;gap:8px}
.daycare-essentials a{text-underline-offset:4px}
.montessori-note{display:grid;grid-template-columns:1fr 1.4fr;gap:32px;margin-top:32px;padding:32px;border-radius:var(--radius);background:var(--light-blue);color:var(--navy)}
.montessori-note h3{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15;margin:0;letter-spacing:0}
.montessori-note p:last-child{font-size:1.1rem;line-height:1.7;margin:0}
.vision-heading{margin-bottom:40px}
.vision-heading p:not(.eyebrow){max-width:850px;font-size:1.1rem;line-height:1.65}
.future-copy h3{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.12;letter-spacing:-.035em}
.admissions-hero-photo .vision-caption{background:var(--navy);color:#fff;padding:20px 24px}
.vision-caption strong{display:block;color:var(--yellow);font-size:1.35rem;line-height:1.3;margin-bottom:7px}
.vision-caption span{display:block;font-size:1rem;line-height:1.5}
@media(max-width:640px){.montessori-note{grid-template-columns:1fr;gap:18px;padding:24px}.montessori-note p:last-child,.vision-heading p:not(.eyebrow){font-size:1rem}.vision-heading{margin-bottom:28px}}

/* Current daycare education and facilities supplied by the operator. */
.education-copy{margin-top:42px}.education-copy h3{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15}.education-copy p{max-width:900px;font-size:1.1rem;line-height:1.7}
.facilities-section{background:var(--light-blue)}.facilities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.facilities-grid article{padding:28px;background:#fff;border-radius:var(--radius)}.facilities-grid h3{font-size:1.5rem;line-height:1.2}.facilities-grid p{font-size:1rem;line-height:1.65;margin-bottom:0}
@media(max-width:640px){.facilities-grid{grid-template-columns:1fr}.education-copy p{font-size:1rem}}
.opening-hours{margin:24px 0;padding:20px 24px;background:var(--navy);color:#fff;border-radius:20px;border-left:6px solid var(--yellow)}
.opening-hours span{display:block;font-size:1rem;line-height:1.5}.opening-hours strong{display:block;color:var(--yellow);font-size:clamp(2rem,4vw,3rem);line-height:1.2;margin-top:6px}
.contact-hours{padding:18px 0;border-block:2px solid var(--navy);font-size:1.15rem;line-height:1.5}
.current-interior{margin-top:40px}.current-interior h3{font-size:clamp(1.6rem,3vw,2.3rem)}
.interior-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 32px}.interior-grid figure{margin:0;background:white;border-radius:22px;overflow:hidden}.interior-grid a{display:block;position:relative}.interior-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}.interior-grid figcaption{padding:16px 20px;font-size:1rem;line-height:1.45}
@media(max-width:640px){.interior-grid{grid-template-columns:1fr;gap:18px}.opening-hours{padding:18px 20px}}

/* Rovnaká tichá animácia aj vo vstupnom rozdelení; ovládanie mimo odkazu. */
.gateway-motion-panel{position:relative;min-width:0;display:grid;isolation:isolate}
.gateway-motion-panel .gateway-panel.church{background-image:url("assets/optimized/krestanske-centrum-hero-soft-1536.webp")}
.gateway-motion-panel .gateway-panel.church:after{z-index:2;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.12))}
.gateway-motion-panel .church-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;opacity:0;pointer-events:none;transition:opacity .4s}
.gateway-motion-panel.has-motion .church-hero-video{opacity:1}
.gateway-motion-panel .hero-motion-toggle{position:absolute;right:24px;bottom:18px;z-index:4;padding:9px 14px;border:1px solid rgba(255,255,255,.65);border-radius:99px;background:#123045;color:#fff;font:inherit;font-size:.75rem;cursor:pointer}
.gateway-motion-panel .hero-motion-toggle[hidden]{display:none}
.gateway-motion-panel .hero-motion-toggle:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
@media(max-width:640px){.gateway-motion-panel .gateway-panel.church{background-image:url("assets/optimized/krestanske-centrum-hero-soft-960.webp")}}
@media(prefers-reduced-motion:reduce){.gateway-motion-panel .church-hero-video{transition:none}}
