/*
Theme Name: Písnička – bloky
Description: Hravá bloková šablona Mateřské školy Písnička – U Mevy.
Template: twentytwentyfive
Version: 1.0.0
Text Domain: pisnicka-blocks
*/

:root{--pisnicka-yellow:#fec20b;--pisnicka-orange:#fd8e00;--pisnicka-sky:#26b4d7;--pisnicka-cream:#fff9ec;--pisnicka-ink:#27364b}
html{scroll-behavior:smooth}
body{margin:0;overflow-wrap:anywhere}
.wp-site-blocks{padding-top:0!important;padding-bottom:0!important}
a{text-underline-offset:.2em}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #087991;outline-offset:5px}
img{max-width:100%;height:auto}
.pisnicka-header{background:#fff;border-bottom:4px solid var(--pisnicka-yellow);margin-block-start:0!important}
.pisnicka-topbar-inner{font-size:12px;line-height:1.5;background:var(--pisnicka-cream);padding:9px 28px;max-width:none!important}
.pisnicka-topbar-inner>p{margin:0}
.pisnicka-topbar-inner a{text-decoration:none;font-weight:700}
.pisnicka-header-inner{padding:24px 28px;gap:30px;max-width:1200px!important;margin:auto!important}
.pisnicka-logo{flex-shrink:0;margin:0!important;width:264px;line-height:0}
.pisnicka-logo img{width:264px;height:auto!important}
.pisnicka-main-nav{font-size:14px;font-weight:700;line-height:1.5}
.pisnicka-main-nav .wp-block-navigation__container{gap:22px}
.pisnicka-main-nav a{text-decoration:none;padding:10px 0}
.pisnicka-main-nav .current-menu-item>a,.pisnicka-main-nav a:hover{color:#995300}
.pisnicka-main-nav .wp-block-navigation__submenu-container{border:1px solid #efdfbc!important;border-radius:16px;background:#fffdf6!important;box-shadow:0 14px 36px #26364b18;min-width:250px!important;padding:12px!important}
.pisnicka-main-nav .wp-block-navigation__submenu-container a{padding:8px 12px;border-radius:8px}
.pisnicka-main-nav .wp-block-navigation__submenu-container a:hover{background:#fff1c5}
.pisnicka-main{padding:52px 28px 64px;max-width:1256px!important;min-height:45vh;margin-inline:auto!important;margin-block-start:0}
.pisnicka-main:has(.pisnicka-hero){padding-top:0}
.pisnicka-main:has(.pisnicka-hero)>.wp-block-post-content{margin-block-start:0}
.pisnicka-main>.wp-block-post-title{margin:8px 0 40px;font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.16}
.pisnicka-main>.wp-block-post-title:after{content:"";display:block;width:78px;height:6px;border-radius:4px;background:var(--pisnicka-yellow);margin-top:25px}
.wp-block-post-content{font-size:17px;line-height:1.8}
.wp-block-post-content h2{font-size:clamp(1.6rem,3vw,2.1rem)}
.wp-block-post-content h3{font-size:clamp(1.25rem,2.3vw,1.55rem)}
.wp-block-post-content>p{margin-top:1.2em}
.pisnicka-section{margin-block:38px}
.pisnicka-section:first-child{margin-top:0}
.pisnicka-columns{gap:28px;margin-block:36px}
.pisnicka-cards>.wp-block-column{background:#fff;padding:28px;border:1px solid #efe5cd;border-radius:24px;box-shadow:0 8px 24px #26364b06}
.pisnicka-cards .wp-block-image img{object-fit:contain}
.pisnicka-cards>.wp-block-column:empty{display:none}
.wp-block-button__link{border-radius:999px;padding:13px 25px;font-weight:700;font-size:15px;line-height:1.5;box-sizing:border-box;text-decoration:none;transition:background-color .15s,transform .15s}
.wp-block-button__link:hover{transform:translateY(-1px);filter:brightness(.97)}
.wp-block-button.is-style-outline>.wp-block-button__link{border:2px solid #dfa500;color:#664900;background:#fffdfa}
.pisnicka-hero{background:#fff5d5 url('/wp-content/uploads/revslider/general/sunshine_home1.png') center/cover no-repeat;border-radius:0 0 48px 48px;overflow:hidden;margin-inline:-28px!important;width:calc(100% + 56px)!important;max-width:none!important;position:relative}
.pisnicka-hero:after{content:"";position:absolute;bottom:-18px;left:-2%;width:104%;height:35px;border-radius:50% 50% 0 0;background:#fffcf5;pointer-events:none}
.pisnicka-hero-columns{max-width:1200px!important;margin:auto!important;padding:56px 42px 52px;gap:24px}
.pisnicka-eyebrow{font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#586b71}
.pisnicka-hero h1{font-size:clamp(3.3rem,6.5vw,5.5rem);font-weight:800;line-height:1.04;letter-spacing:-.045em;color:#087f9c;margin:18px 0 22px}
.pisnicka-hero-lead{font-size:clamp(1.1rem,2.1vw,1.45rem);font-weight:500;color:#42515d;margin-block:0 28px}
.pisnicka-hero-picture{margin:0!important;text-align:center}
.pisnicka-hero-picture img{width:100%;max-height:430px;object-fit:contain}
.pisnicka-quicklinks{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-block:36px 56px;align-items:stretch}
.pisnicka-quicklinks>.wp-block-column{min-width:0}
.pisnicka-quick-card{background:#fff;border:1px solid #efdfbb;border-radius:24px;box-shadow:0 7px 22px #26364b06;padding:24px;height:100%;box-sizing:border-box;display:flex;flex-direction:column}
.pisnicka-card-icon{font-size:31px;line-height:1;background:#fff1bb;color:#885d00;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;margin:0 0 18px!important}
.pisnicka-quick-card h3{margin:0 0 12px;font-size:21px}
.pisnicka-quick-card>p:not(.pisnicka-card-icon){font-size:14px;line-height:1.75;margin:0 0 20px}
.pisnicka-quick-card>.wp-block-buttons{margin-top:auto}
.pisnicka-quick-card .wp-block-button__link{font-size:13px;padding:9px 16px}
.pisnicka-news .wp-block-post-template{gap:25px}
.pisnicka-news-card{height:100%;background:#fff;border:1px solid #efe5cd;border-radius:22px;overflow:hidden;box-shadow:0 8px 24px #26364b06}
.pisnicka-news-card .wp-block-post-featured-image{margin:0}
.pisnicka-news-card .wp-block-post-featured-image img{display:block;transition:transform .3s}
.pisnicka-news-card .wp-block-post-featured-image:hover img{transform:scale(1.025)}
.pisnicka-card-preview{aspect-ratio:4/3;position:relative;margin:0;overflow:hidden;background:#e6f3f5}
.pisnicka-card-preview>a{position:relative;display:block;height:100%;width:100%;text-decoration:none}
.pisnicka-card-preview img{display:block;width:100%;height:100%;object-fit:cover}
.pisnicka-card-preview.is-video img{object-fit:contain;background:#253442}
.pisnicka-video-badge{position:absolute;left:16px;bottom:15px;padding:7px 12px;border-radius:999px;background:#ffffffed;color:#193b4b;font-size:13px;font-weight:800;box-shadow:0 2px 9px #0002}
.pisnicka-text-preview{background:radial-gradient(circle at 100% 0,#e1f3f5 0,transparent 65%),#fff3ca}
.pisnicka-text-preview>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:25px;box-sizing:border-box;color:#26434d}
.pisnicka-preview-icon{font-size:28px;line-height:1;color:#8a6600}
.pisnicka-preview-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#61777d}
.pisnicka-preview-summary{font-size:16px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper{position:relative;aspect-ratio:16/9}
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper:before{display:none}
.wp-block-embed.is-provider-youtube iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pisnicka-video-link{font-size:14px;margin-top:12px}
.pisnicka-news-text{padding:20px 23px 26px}
.pisnicka-news-text .wp-block-post-date{font-size:12px;color:#61727c;margin:0 0 10px}
.pisnicka-news-text h3{font-size:19px!important;line-height:1.4!important;margin:0}
.pisnicka-news-text a{text-decoration:none;color:var(--pisnicka-ink)}
.pisnicka-news-text a:hover{text-decoration:underline;text-decoration-color:#fec20b}
.wp-block-query-pagination{flex-wrap:wrap;gap:14px;margin-block:32px}
.wp-block-query-pagination .page-numbers{display:inline-block;padding:5px 9px;margin:0 2px;border-radius:8px}
.wp-block-query-pagination .current{background:#ffe382;color:#4b3b00;font-weight:800}
.wp-block-details{background:#fff;border:1px solid #e9dfc6;border-radius:16px;margin-block:14px;overflow:hidden}
.wp-block-details summary{padding:18px 22px;cursor:pointer;font-weight:750;color:#164e5e}
.wp-block-details[open] summary{background:#fff3cd;border-bottom:1px solid #e9dfc6;margin-bottom:20px}
.wp-block-details>*:not(summary){margin-left:22px;margin-right:22px}
.wp-block-details>:last-child{margin-bottom:24px}
.wp-block-table{overflow:auto;border-radius:12px;background:#fff}
.wp-block-table table{font-size:14px;border-collapse:collapse}
.wp-block-table td,.wp-block-table th{padding:11px 14px;border-color:#e3ddcd;vertical-align:top}
.wp-block-table th{background:#fff0bc}
.pisnicka-notice{padding:20px 24px;border-left:5px solid #ecac13;border-radius:0 15px 15px 0;background:#fff2ce;margin-block:24px}
iframe{max-width:100%;border-radius:18px}
.wp-block-html iframe{display:block}
.wp-block-video video{max-height:82vh;border-radius:18px;background:#f0eade}
.pisnicka-single-image img{max-height:80vh;object-fit:contain!important;display:block;background:#f5efdf;border-radius:22px}
.pisnicka-footer{margin-top:0!important;background:#125469;color:#fff;position:relative}
.pisnicka-footer-decoration{margin:0!important;background:#fffcf5;line-height:0;width:100%;max-width:none!important}
.pisnicka-footer-decoration img{display:block;width:100%;height:auto;max-height:145px;object-fit:cover;object-position:bottom}
.pisnicka-footer-columns{padding:44px 28px 55px;margin:auto!important;gap:45px;max-width:1200px!important}
.pisnicka-footer h3{font-size:19px;line-height:1.4;color:#fff5c5;margin-top:0}
.pisnicka-footer p{font-size:13px;line-height:1.9;color:#e8f5f7}
.pisnicka-footer a{color:#fff;text-decoration-color:#9ac9d5}
.pisnicka-footer a:hover{color:#ffe087}
.pisnicka-footer .wp-block-search__input{font-size:13px;padding:10px 12px;border-radius:12px 0 0 12px;min-width:0}
.pisnicka-footer .wp-block-search__button{background:#fec20b;color:#23364a;border-radius:0 12px 12px 0;margin:0;padding:8px 11px}
.wp-block-post-content>.wp-block-image.alignright{margin:0 0 24px 28px}
@media(max-width:1100px){.pisnicka-header-inner{padding:20px 24px;gap:20px}.pisnicka-logo{width:220px}.pisnicka-logo img{width:220px!important}.pisnicka-main-nav .wp-block-navigation__container{gap:15px}.pisnicka-main-nav{font-size:13px}.pisnicka-quicklinks{grid-template-columns:repeat(2,minmax(0,1fr))}.pisnicka-hero-columns{padding:42px 32px}.pisnicka-hero h1{font-size:clamp(3rem,6.7vw,5rem)}}
@media(max-width:800px){.pisnicka-main-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}.pisnicka-main-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.pisnicka-main-nav .is-menu-open{background:#fffdf6!important;padding:30px!important;color:#27364b}.pisnicka-main-nav .is-menu-open .wp-block-navigation__container{align-items:flex-start!important;gap:14px;font-size:18px}.pisnicka-main-nav .is-menu-open .wp-block-navigation__submenu-container{box-shadow:none;border:0!important;background:transparent!important;padding:4px 0 4px 20px!important;min-width:0!important}.pisnicka-main{padding:32px 20px 44px}.pisnicka-hero{margin-inline:-20px!important;width:calc(100% + 40px)!important}.pisnicka-hero-columns{padding:32px 26px 38px;gap:10px}.pisnicka-hero h1{font-size:clamp(3rem,9vw,4.3rem)}.pisnicka-hero-columns>.wp-block-column{flex-basis:100%!important}.pisnicka-hero-columns{flex-wrap:wrap!important}.pisnicka-hero-picture img{max-height:310px}.pisnicka-main .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}.pisnicka-cards>.wp-block-column{padding:22px}.pisnicka-footer-columns{gap:28px}.pisnicka-footer-columns>.wp-block-column{flex-basis:100%!important}.pisnicka-footer-columns{flex-wrap:wrap!important}}
@media(max-width:600px){.pisnicka-topbar-inner{padding:8px 20px;font-size:11px;gap:3px}.pisnicka-top-address{display:none}.pisnicka-header-inner{padding:18px 20px}.pisnicka-logo,.pisnicka-logo img{width:210px!important}.pisnicka-hero-columns{padding:28px 22px 34px}.pisnicka-eyebrow{font-size:10px!important}.pisnicka-hero h1{font-size:3.3rem}.pisnicka-hero-lead{font-size:18px}.pisnicka-hero-picture img{max-height:260px}.pisnicka-quicklinks{grid-template-columns:1fr;margin-block:24px 40px;gap:14px}.pisnicka-quick-card{padding:22px}.pisnicka-quick-card h3{font-size:21px}.pisnicka-main .wp-block-post-template{grid-template-columns:1fr}.pisnicka-columns{gap:20px}.wp-block-post-content{font-size:16px}.wp-block-post-content>.wp-block-image.alignright{float:none;margin:20px auto;width:100%;text-align:center}.wp-block-post-content>.wp-block-image.alignright img{max-width:320px}.wp-block-details summary{padding:16px 18px}.wp-block-table table{font-size:12px;min-width:520px}.pisnicka-footer-decoration img{height:75px;object-fit:cover}.pisnicka-footer-columns{padding:30px 22px 40px}.pisnicka-main>.wp-block-post-title{font-size:2.1rem}.wp-block-post-navigation-link{max-width:45%;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Mobile navigation alignment, retained unchanged. */
@media(max-width:800px) {
    /* Reset the right-aligned desktop layout on every mobile menu level. */
    .pisnicka-main-nav .is-menu-open {
        --navigation-layout-justify:flex-start;
        --navigation-layout-align:flex-start;
        padding:24px!important;
        padding-bottom:max(24px,env(safe-area-inset-bottom))!important;
        text-align:left;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation__responsive-container-content {
        align-items:stretch!important;
        justify-content:flex-start!important;
        width:100%!important;
        box-sizing:border-box;
        padding-top:42px!important;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation__container {
        --navigation-layout-justify:flex-start;
        --navigation-layout-align:flex-start;
        align-items:stretch!important;
        justify-content:flex-start!important;
        width:100%!important;
        gap:0!important;
        font-size:18px!important;
        line-height:1.4;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation-item {
        --navigation-layout-justify:flex-start;
        --navigation-layout-align:flex-start;
        align-items:flex-start!important;
        width:100%!important;
        box-sizing:border-box;
        text-align:left;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation-item__content {
        padding:10px 0!important;
        min-height:44px;
        width:100%!important;
        box-sizing:border-box;
        color:var(--pisnicka-ink)!important;
        text-align:left;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation__submenu-container {
        align-items:flex-start!important;
        min-width:0!important;
        width:100%!important;
        max-width:none!important;
        box-sizing:border-box;
        margin:2px 0 12px!important;
        padding:0 0 0 18px!important;
        border-left:2px solid #efdfbc!important;
        border-radius:0!important;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        font-size:15px;
        font-weight:500;
        line-height:1.5;
    }
    .pisnicka-main-nav .is-menu-open a:focus-visible {
        outline:3px solid #087991;
        outline-offset:2px;
    }
    .pisnicka-main-nav .is-menu-open a:focus:not(:focus-visible) {
        outline:none;
    }
    .pisnicka-main-nav .is-menu-open .wp-block-navigation__responsive-container-close {
        min-width:44px;
        min-height:44px;
        justify-content:center;
        align-items:center;
    }
}

/* Artwork belongs to the whole Group; the image itself is set in block styles. */
.pisnicka-header {
    min-height:300px;
    background-color:#d9f1f7;
}
.pisnicka-header:after { content:none;display:none; }
.pisnicka-header .pisnicka-topbar-inner { background:#fff9ecef; }
.pisnicka-header .pisnicka-header-inner { padding-top:96px;padding-bottom:42px; }
.pisnicka-header nav.pisnicka-main-nav { background:#fffdf5e8;border-radius:999px;padding:5px 16px; }
@media(max-width:1100px) {
    .pisnicka-header { min-height:280px; }
    .pisnicka-header .pisnicka-header-inner { padding-top:90px;padding-bottom:38px; }
}
@media(max-width:800px) {
    .pisnicka-header nav.pisnicka-main-nav { background:transparent;border-radius:0;padding:0; }
}
@media(max-width:600px) {
    .pisnicka-header { min-height:252px; }
    .pisnicka-header .pisnicka-header-inner { padding-top:104px;padding-bottom:24px; }
}
