/*
Theme Name: FPE Komunikace
Theme URI: https://www.fpe.zcu.cz/
Author: OpenAI
Description: WordPress sablona pro komunikacni portal FPE: staticka titulka, uzka hlavicka, samostatny Fakultnik a Studentnik, workflow Podklady -> Vydani, slozky/sady podkladu a preddefinovane obrazky sekci.
Version: 95.12
Requires at least: 6.3
Requires PHP: 8.0
Text Domain: fpe-komunikace
*/

:root{
  --fpe-green:#8abd24;
  --fpe-green-dark:#6d970e;
  --fpe-text:#1c1c1c;
  --fpe-muted:#5e6670;
  --fpe-line:#e3e6e8;
  --fpe-bg:#f7f8f8;
  --fpe-blue:#005a8b;
  --site-width:1160px;
}

*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--fpe-text);font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;font-size:17px;line-height:1.65}
a{color:var(--fpe-blue);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
.wrap{width:min(100% - 36px,var(--site-width));margin:0 auto}

.site-header{background:#fff;border-bottom:1px solid var(--fpe-line);position:sticky;top:0;z-index:50}
.header-inner{height:68px;display:flex;align-items:center;gap:24px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:18px;color:var(--fpe-green);text-decoration:none;min-width:0}
.brand img{width:150px;height:auto;display:block}
.brand-title{font-size:18px;line-height:1.1;font-weight:700;color:var(--fpe-green);white-space:nowrap}
.header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.header-button{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 15px;border:2px solid var(--fpe-green);color:var(--fpe-green);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.03em;background:#fff}
.header-button:hover{background:var(--fpe-green);color:#fff;text-decoration:none}

.static-home{padding:56px 0 70px;background:#fff}
.home-title{font-size:clamp(38px,6vw,72px);line-height:1;margin:0 0 14px;letter-spacing:-.035em}
.home-lead{font-size:20px;color:var(--fpe-muted);max-width:760px;margin:0}
.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}
.home-card{border-top:8px solid var(--fpe-green);background:#f8faf6;padding:26px;min-height:190px}
.home-card h2{font-size:28px;line-height:1.05;margin:0 0 12px}
.home-card p{color:var(--fpe-muted);margin:0 0 18px}
.home-card a{font-weight:700;text-transform:uppercase;color:var(--fpe-green-dark);font-size:14px}

.page-hero{background:#fff;border-bottom:1px solid var(--fpe-line);padding:46px 0}
.page-hero .kicker{font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--fpe-green);margin-bottom:8px}
.page-hero h1{font-size:clamp(34px,5vw,64px);line-height:1;margin:0;letter-spacing:-.035em}

.content-wrap{padding:44px 0}
.content-panel{background:#fff;border:1px solid var(--fpe-line);padding:34px}

.issue-page{background:#fff;padding:0 0 80px}
.issue-title{width:100%;max-width:none;margin:0 0 52px;background:var(--fpe-green);color:#fff;padding:58px max(36px,calc((100vw - var(--site-width))/2 + 18px));position:relative;overflow:hidden}
.issue-title::after{content:"";position:absolute;right:-80px;top:-120px;width:420px;height:420px;background:rgba(255,255,255,.16);transform:rotate(18deg)}
.issue-title .kicker{font-size:13px;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.issue-title h1{font-size:clamp(40px,6vw,86px);line-height:.94;margin:5px 0 10px;letter-spacing:-.045em;position:relative;z-index:1;max-width:1120px}
.issue-title p{margin:0;color:#fff;font-weight:700;position:relative;z-index:1;max-width:1120px}

.issue-section{max-width:1120px;margin:0 auto 48px}
.issue-section-hero{height:220px;background:#111;color:#fff;position:relative;display:flex;align-items:flex-end;padding:34px 44px;background-size:cover;background-position:center}
.issue-section-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.12))}
.issue-section-hero.green{background:var(--fpe-green)}
.issue-section-hero.black{background:#000}
.issue-section-hero .inner{position:relative;z-index:1}
.issue-dash{display:block;width:28px;height:7px;background:#fff;margin:0 0 10px}
.issue-section-hero h2{font-size:42px;font-weight:400;line-height:1.05;margin:0;color:#fff}
.issue-section-body{max-width:760px;margin:46px 0 0 170px}
.issue-item{margin:0 0 34px}
.issue-item + .issue-item{border-top:1px solid var(--fpe-line);padding-top:28px}
.issue-item-content p{margin:0 0 16px}
.issue-item-content ul{padding-left:21px}
.issue-item-content strong{font-weight:700}
.issue-green-mark{width:28px;height:7px;background:var(--fpe-green);margin:34px 0 0}

.archive-list{display:grid;gap:16px}
.archive-item{border:1px solid var(--fpe-line);background:#fff;padding:24px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.archive-item h2{font-size:28px;line-height:1.1;margin:0 0 6px}
.archive-item p{margin:0;color:var(--fpe-muted)}
.btn{display:inline-flex;padding:12px 17px;background:var(--fpe-green);color:#fff;font-weight:700;text-transform:uppercase;font-size:13px}
.btn:hover{text-decoration:none;background:var(--fpe-green-dark)}

.site-footer{border-top:1px solid var(--fpe-line);padding:28px 0;color:var(--fpe-muted);font-size:14px;background:#fff}

@media(max-width:850px){
  .header-inner{height:auto;padding:14px 0;align-items:flex-start;flex-direction:column}
  .brand-title{white-space:normal}
  .home-grid{grid-template-columns:1fr}
  .issue-section-body{margin-left:0;max-width:none}
  .issue-section-hero{height:190px;padding:26px}
  .issue-section-hero h2{font-size:34px}
  .archive-item{grid-template-columns:1fr}
}


.issue-toc{max-width:760px;margin:0 auto 46px;background:#f8faf6;border-left:8px solid var(--fpe-green);padding:22px 26px}
.issue-toc-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--fpe-green-dark);font-weight:700;margin-bottom:10px}
.issue-toc ol{margin:0;padding-left:22px;columns:2;column-gap:42px}
.issue-toc li{break-inside:avoid;margin:0 0 8px}
.issue-toc a{font-weight:700;color:var(--fpe-text)}
@media(max-width:850px){.issue-toc ol{columns:1}}



.contact-card{display:flex;gap:14px;align-items:center;border-left:6px solid var(--fpe-green);background:#f8faf6;padding:14px 16px}
.contact-card__image{width:64px;height:64px;flex:0 0 64px;background:#e6e9ea;overflow:hidden}
.contact-card__image img{width:100%;height:100%;object-fit:cover}
.contact-card__label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--fpe-green-dark);margin-bottom:2px}
.contact-card__name{font-size:18px;font-weight:700;color:var(--fpe-text);display:block}
.contact-card__role{color:var(--fpe-muted);font-size:14px}
.contact-card__email{font-size:14px;font-weight:700}
@media(max-width:850px){.contact-card{align-items:flex-start}.contact-card__image{width:52px;height:52px;flex-basis:52px}}


.editable-page-header{background:#fff;border-bottom:1px solid var(--fpe-line);padding:34px 0}
.editable-page-footer{background:#f8faf6;border-top:1px solid var(--fpe-line);padding:34px 0;margin-top:20px}
.editable-header-widget,.editable-footer-widget{margin:0 0 18px}
.editable-header-widget:last-child,.editable-footer-widget:last-child{margin-bottom:0}
.editable-area-title{font-size:28px;line-height:1.1;margin:0 0 10px;color:var(--fpe-text)}


.front-news{margin-top:54px}
.front-news h2{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:0 0 24px}
.post-list{display:grid;gap:18px}
.post-card{background:#fff;border:1px solid var(--fpe-line);display:grid;grid-template-columns:240px 1fr;overflow:hidden}
.post-card__thumb{display:block;background:#eef1f2;min-height:170px}
.post-card__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.post-card__content{padding:22px}
.post-card__meta,.post-meta{font-size:13px;color:var(--fpe-muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.post-card h3{font-size:26px;line-height:1.12;margin:0 0 10px}
.post-card p{margin:0;color:var(--fpe-muted)}
.single-featured-image{margin:0 0 24px}
.single-featured-image img{width:100%;height:auto}
.entry-content > *:first-child{margin-top:0}
.entry-content > *:last-child{margin-bottom:0}
@media(max-width:850px){.post-card{grid-template-columns:1fr}}


.header-menu{margin-left:auto}
.main-menu{list-style:none;margin:0;padding:0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.main-menu li{position:relative}
.main-menu a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:2px solid var(--fpe-green);color:var(--fpe-green);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.03em;background:#fff}
.main-menu a:hover{background:var(--fpe-green);color:#fff;text-decoration:none}
.main-menu ul{display:none;position:absolute;top:100%;left:0;z-index:30;background:#fff;border:1px solid var(--fpe-line);padding:8px;min-width:220px;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.main-menu li:hover > ul{display:block}
.main-menu ul a{border:0;justify-content:flex-start;width:100%;color:var(--fpe-text);text-transform:none}
.main-menu ul a:hover{color:#fff;background:var(--fpe-green)}
.pattern-hero{border-top:10px solid var(--fpe-green);background:#f8faf6;padding:34px;margin:0 0 24px}
.notice-box{border-left:8px solid var(--fpe-green);background:#f8faf6;padding:22px;margin:20px 0}
.brandcloud-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.brandcloud-card{border:1px solid var(--fpe-line);background:#fff;padding:20px}
.brandcloud-card img{width:100%;height:150px;object-fit:cover;margin:0 0 14px}
.brandcloud-card h3{font-size:22px;line-height:1.1;margin:0 0 8px}
.brandcloud-card p{color:var(--fpe-muted);margin:0 0 14px}
.event-list{display:grid;gap:14px}
.event-card{border-left:8px solid var(--fpe-green);background:#fff;border-top:1px solid var(--fpe-line);border-right:1px solid var(--fpe-line);border-bottom:1px solid var(--fpe-line);padding:18px 22px}
.event-date{font-size:13px;font-weight:700;color:var(--fpe-green-dark);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.event-card h3{margin:0 0 6px;font-size:24px}
.google-calendar-embed{border:1px solid var(--fpe-line);background:#fff;padding:8px}
@media(max-width:850px){.header-menu{width:100%}.main-menu{align-items:stretch}.main-menu a{width:100%}.main-menu li{width:100%}.main-menu ul{position:static;display:block;box-shadow:none}}


/* v4.19 visual refresh */
body{font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;background:#f5f7f4}
.site-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.08)}
.header-inner{min-height:66px;height:auto;padding:12px 0}
.brand-title{font-weight:400;text-transform:none;letter-spacing:0;color:var(--fpe-green);font-size:17px}
.header-menu{margin-left:auto}
.main-menu{list-style:none;margin:0;padding:0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.main-menu li{position:relative}
.main-menu a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:9px 12px;border:0;background:transparent;color:var(--fpe-green);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.03em}
.main-menu a:hover,.main-menu .current-menu-item>a,.main-menu .current_page_item>a{background:var(--fpe-green);color:#fff;text-decoration:none}
.main-menu ul{display:none;position:absolute;top:100%;left:0;z-index:30;background:#fff;border:0;padding:8px;min-width:220px;box-shadow:0 16px 34px rgba(0,0,0,.14)}
.main-menu li:hover > ul{display:block}
.main-menu ul a{justify-content:flex-start;width:100%;color:var(--fpe-text);text-transform:none}
.main-menu ul a:hover{color:#fff;background:var(--fpe-green)}
.page-hero{min-height:170px;display:flex;align-items:center;background-size:cover;background-position:center;position:relative;color:#fff;border:0;padding:0}
.page-hero.no-image{background:var(--fpe-green)}
.page-hero.has-image{background-color:#111}
.page-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.1))}
.page-hero.no-image .page-hero__shade{display:none}
.page-hero__inner{position:relative;z-index:1;padding:34px 0}
.page-hero .kicker{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;margin-bottom:8px}
.page-hero h1{color:#fff;font-size:clamp(26px,4vw,44px);line-height:1.05;letter-spacing:.02em;text-transform:uppercase;margin:0;font-weight:700}
.static-home{background:#fff;padding:0}
.front-intro{background:#fff;padding:26px 0 10px}
.front-intro__content{max-width:820px;color:var(--fpe-muted);font-size:19px}
.portal-section{padding:46px 0;background:#fff}
.portal-section--soft{background:#f1f7e8}
.section-heading{margin:0 0 22px}
.section-heading span{display:inline-block;color:var(--fpe-green-dark);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.section-heading h2{font-size:clamp(30px,4vw,52px);line-height:1;margin:0;letter-spacing:-.035em}
.portal-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.portal-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid var(--fpe-line);border-top:8px solid var(--fpe-green);padding:24px;min-height:150px;color:var(--fpe-text);transition:transform .16s ease, box-shadow .16s ease}
.portal-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(0,0,0,.10);text-decoration:none}
.portal-card__label{font-size:24px;line-height:1.08;font-weight:700}
.portal-card__desc{color:var(--fpe-muted)}
.front-news{background:#fff;padding:46px 0;margin:0}
.post-card{border:0;box-shadow:0 8px 24px rgba(0,0,0,.07)}
.content-panel{border:0;box-shadow:0 8px 28px rgba(0,0,0,.06)}
.pattern-hero{border-top:10px solid var(--fpe-green);background:#f8faf6;padding:34px;margin:0 0 24px}
.notice-box{border-left:8px solid var(--fpe-green);background:#f8faf6;padding:22px;margin:20px 0}
.brandcloud-intro{background:var(--fpe-green);color:#fff;padding:32px;margin:0 0 24px}
.brandcloud-intro h2{font-size:clamp(30px,4vw,52px);line-height:1;margin:0 0 8px}
.brandcloud-intro p{margin:0;font-size:19px}
.brandcloud-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.brandcloud-card{border:0;background:#fff;padding:0;box-shadow:0 10px 28px rgba(0,0,0,.08);overflow:hidden}
.brandcloud-card img{width:100%;height:170px;object-fit:cover;margin:0}
.brandcloud-card h3{font-size:24px;line-height:1.1;padding:20px 20px 0;margin:0 0 8px}
.brandcloud-card p{padding:0 20px;color:var(--fpe-muted)}
.brandcloud-card .link-more{display:inline-flex;margin:0 20px 20px;color:var(--fpe-green-dark);font-weight:700;text-transform:uppercase;font-size:13px}
.event-card{border:0;border-left:8px solid var(--fpe-green);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.btn,.wp-block-button__link{background:var(--fpe-green);color:#fff;border-radius:0}
@media(max-width:850px){.header-menu{width:100%}.main-menu{align-items:stretch}.main-menu a{width:100%}.main-menu li{width:100%}.main-menu ul{position:static;display:block;box-shadow:none}.page-hero{min-height:140px}.page-hero h1{font-size:28px}.portal-section{padding:34px 0}}


/* v4.20 hierarchy and tile refresh */
:root{--hero-home-min:340px}
.page-hero h1{font-size:clamp(28px,4vw,46px)}
.section-heading h2,.front-news h2,.portal-section h2,.brandcloud-intro h2{font-size:clamp(24px,3vw,36px);line-height:1.08}
.entry-content h2{font-size:clamp(24px,3vw,34px);line-height:1.12}
.entry-content h3{font-size:clamp(20px,2.4vw,28px);line-height:1.16}
.front-hero{min-height:var(--hero-home-min);display:flex;align-items:center;background-size:cover;background-position:center;position:relative;color:#fff}
.front-hero.has-image{min-height:420px}
.front-hero.no-image{background:var(--fpe-green)}
.front-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.12))}
.front-hero.no-image .front-hero__shade{display:none}
.front-hero__inner{position:relative;z-index:1;padding:58px 0;max-width:900px}
.front-hero .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;margin-bottom:10px;color:#fff}
.front-hero h1{font-size:clamp(42px,7vw,82px);line-height:.94;letter-spacing:-.045em;margin:0 0 16px;color:#fff;text-transform:uppercase}
.front-hero__text{max-width:720px;font-size:19px;color:#fff}
.front-hero__text p{margin:0 0 10px}
.front-access{padding:46px 0;background:#fff}
.front-access__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.access-panel{padding:28px;min-height:100%;border:1px solid var(--fpe-line)}
.access-panel--employee{background:var(--fpe-green);color:#fff;border-color:var(--fpe-green)}
.access-panel--employee .section-heading span,.access-panel--employee .section-heading h2{color:#fff}
.access-panel--student{background:#fff;color:var(--fpe-text)}
.portal-card-grid--compact{grid-template-columns:1fr 1fr;gap:12px}
.access-panel--employee .portal-card{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.38);border-top-color:#fff;color:#fff}
.access-panel--employee .portal-card__desc{color:rgba(255,255,255,.86)}
.access-panel--employee .portal-card:hover{background:#fff;color:var(--fpe-text)}
.access-panel--employee .portal-card:hover .portal-card__desc{color:var(--fpe-muted)}
.portal-card-grid--light .portal-card{background:#f8faf6}
.visual-tile{background:var(--fpe-green);color:#fff;padding:26px;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .18s ease, filter .18s ease, box-shadow .18s ease}
.visual-tile h3{font-size:clamp(22px,2.8vw,32px);line-height:1.05;margin:0 0 10px;color:#fff}
.visual-tile p{color:rgba(255,255,255,.92);margin:0}
.visual-tile:hover{transform:translateY(-4px);filter:brightness(.95);box-shadow:0 18px 36px rgba(0,0,0,.14)}
.visual-tile--image{position:relative;overflow:hidden}
.visual-tile--image .wp-block-cover__background{transition:opacity .22s ease}
.visual-tile--image:hover .wp-block-cover__background{opacity:.08!important}
.visual-tile--image .wp-block-cover__inner-container{transition:transform .22s ease, background .22s ease;padding:18px}
.visual-tile--image:hover .wp-block-cover__inner-container{background:rgba(138,189,36,.82);transform:translateY(4px)}
.tile-columns{gap:18px}
.split-content{align-items:center}
.steps-box{background:#fff;border-left:8px solid var(--fpe-green);padding:24px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
@media(max-width:900px){.front-access__grid{grid-template-columns:1fr}.portal-card-grid--compact{grid-template-columns:1fr}.front-hero.has-image{min-height:320px}.front-hero h1{font-size:40px}}


/* v4.21 modules */
.current-notice{position:relative;background:var(--fpe-green);background-size:cover;background-position:center;color:#fff;margin:0}
.current-notice__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.08))}
.current-notice.no-image .current-notice__shade{display:none}
.current-notice__inner{position:relative;z-index:1;padding:22px 0}
.current-notice__content{display:flex;align-items:center;gap:18px;justify-content:space-between}
.current-notice__kicker{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}
.current-notice h2{font-size:clamp(22px,3vw,34px);margin:0;line-height:1.05;color:#fff}
.current-notice p{margin:0;color:#fff;max-width:520px}
.current-notice__btn{background:#fff;color:var(--fpe-green-dark)}
.news-archive-link{margin:22px 0 0;text-align:center}
.google-events-list{display:grid;gap:12px}
.google-event-card{background:#fff;border-left:8px solid var(--fpe-green);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.google-event-card summary{cursor:pointer;display:grid;grid-template-columns:170px 1fr;gap:14px;align-items:center;padding:18px 22px}
.google-event-date{font-size:13px;font-weight:700;color:var(--fpe-green-dark);text-transform:uppercase;letter-spacing:.06em}
.google-event-detail{padding:0 22px 18px 206px;color:var(--fpe-muted)}
.issue-archive-module{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.issue-archive-card{background:#fff;border-top:8px solid var(--fpe-green);padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.issue-archive-card__date{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--fpe-green-dark);font-weight:700;margin-bottom:8px}
.issue-archive-card h3{font-size:24px;line-height:1.1;margin:0 0 8px}
.advent-calendar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;position:relative}
.advent-day{background:#fff;border:1px solid var(--fpe-line);box-shadow:0 8px 24px rgba(0,0,0,.06)}
.advent-day summary{cursor:pointer;padding:16px;display:flex;gap:10px;align-items:center}
.advent-day summary span{display:inline-grid;place-items:center;background:var(--fpe-green);color:#fff;width:34px;height:34px;font-weight:700}
.advent-day__content{padding:0 16px 16px}
.advent-quiz label{display:block;margin:10px 0}
.advent-quiz input{width:100%;margin-top:4px}
.advent-score{position:sticky;bottom:10px;background:var(--fpe-green);color:#fff;padding:12px 16px;grid-column:1/-1;font-weight:700}
.advent-day.is-done{opacity:.7}
@media(max-width:760px){.current-notice__content{display:block}.current-notice p{margin:8px 0}.google-event-card summary{grid-template-columns:1fr}.google-event-detail{padding:0 22px 18px}}


/* v4.22 - přiblížení vizuálu fakultnímu webu */
:root{
  --fpe-green:#8abd24;
  --fpe-green-dark:#6d970e;
  --fpe-blue:#003b73;
  --fpe-blue-link:#0063ad;
  --fpe-text:#3f4a54;
  --fpe-muted:#5d6975;
  --fpe-line:#dfe7f1;
  --fpe-bg:#eef3f9;
}

body{
  background:var(--fpe-bg);
  color:var(--fpe-text);
}

a{color:var(--fpe-blue-link)}
a:hover{color:var(--fpe-blue);}

.site-header{
  background:#fff;
  border-bottom:1px solid #dce5ef;
  box-shadow:0 1px 0 rgba(0,0,0,.02);
}

.brand-title{
  color:var(--fpe-green);
}

.main-menu a{
  color:var(--fpe-blue);
  background:transparent;
  border:0;
}

.main-menu a:hover,
.main-menu .current-menu-item>a,
.main-menu .current_page_item>a{
  background:transparent;
  color:var(--fpe-green-dark);
  text-decoration:none;
}

.main-menu a::after{
  content:"";
  display:block;
  height:3px;
  background:transparent;
  margin-top:4px;
}

.main-menu a:hover::after,
.main-menu .current-menu-item>a::after,
.main-menu .current_page_item>a::after{
  background:var(--fpe-green);
}

.page-hero{
  min-height:150px;
}

.page-hero.no-image{
  background:var(--fpe-green);
}

.page-hero.has-image .page-hero__shade,
.front-hero.has-image .front-hero__shade{
  background:linear-gradient(90deg,rgba(0,40,77,.68),rgba(0,40,77,.18));
}

.page-hero h1{
  color:#fff;
  font-size:clamp(28px,4vw,44px);
  font-weight:700;
  letter-spacing:.02em;
}

.page-hero .kicker{
  color:#fff;
}

.front-hero{
  border-bottom:0;
}

.front-hero.has-image{
  min-height:420px;
}

.front-hero h1{
  color:#fff;
  font-size:clamp(42px,7vw,78px);
  text-transform:uppercase;
}

.front-hero__text{
  color:#fff;
}

.front-access,
.portal-section,
.front-news{
  background:var(--fpe-bg);
}

.front-access__grid{
  align-items:stretch;
}

.access-panel{
  background:#fff;
  border:0;
  box-shadow:none;
  padding:38px 40px;
}

.access-panel--employee{
  background:#fff;
  color:var(--fpe-text);
  border:0;
}

.access-panel--employee .section-heading span,
.access-panel--employee .section-heading h2{
  color:var(--fpe-blue);
}

.access-panel--student{
  background:#fff;
  color:var(--fpe-text);
}

.section-heading{
  text-align:left;
  margin-bottom:28px;
}

.section-heading span{
  color:var(--fpe-green-dark);
  font-size:13px;
  font-weight:700;
  letter-spacing:.12em;
}

.section-heading h2{
  color:var(--fpe-blue);
  font-size:clamp(28px,3.5vw,40px);
  font-weight:500;
  letter-spacing:.01em;
  text-transform:uppercase;
}

.portal-card-grid{
  gap:10px;
}

.portal-card{
  background:transparent;
  border:0;
  border-top:0;
  min-height:auto;
  padding:8px 0 8px 22px;
  box-shadow:none;
  position:relative;
  color:var(--fpe-blue-link);
}

.portal-card::before{
  content:"➤";
  position:absolute;
  left:0;
  top:8px;
  color:var(--fpe-blue-link);
  font-size:14px;
}

.portal-card:hover{
  transform:none;
  box-shadow:none;
  color:var(--fpe-green-dark);
  background:transparent;
}

.portal-card:hover::before{
  color:var(--fpe-green);
}

.portal-card__label{
  font-size:18px;
  line-height:1.18;
  font-weight:700;
  text-decoration:underline;
}

.portal-card__desc{
  font-size:14px;
  color:var(--fpe-muted);
}

.access-panel--employee .portal-card{
  background:transparent;
  color:var(--fpe-blue-link);
  border:0;
}

.access-panel--employee .portal-card__desc{
  color:var(--fpe-muted);
}

.access-panel--employee .portal-card:hover{
  color:var(--fpe-green-dark);
  background:transparent;
}

.content-panel,
.post-card,
.event-card,
.brandcloud-card,
.issue-archive-card{
  background:#fff;
  border:0;
  box-shadow:none;
}

.content-panel{
  padding:44px;
}

.front-news .section-heading{
  text-align:center;
}

.front-news .section-heading h2{
  color:var(--fpe-blue);
  font-size:clamp(30px,4vw,42px);
  font-weight:400;
}

.post-list{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  display:grid;
  gap:18px;
}

.post-card{
  display:block;
  overflow:hidden;
}

.post-card__thumb{
  min-height:180px;
  height:180px;
}

.post-card__thumb img{
  height:100%;
  object-fit:cover;
}

.post-card__content{
  padding:20px 22px;
}

.post-card__meta{
  color:var(--fpe-green-dark);
  font-size:12px;
}

.post-card h3{
  color:var(--fpe-blue);
  font-size:18px;
  line-height:1.25;
  margin:0;
  text-transform:uppercase;
  font-weight:700;
}

.post-card h3 a{
  color:var(--fpe-blue);
}

.post-card p{
  margin-top:10px;
  font-size:15px;
}

.news-archive-link .btn,
.btn{
  background:var(--fpe-green);
  color:#fff;
  border-radius:0;
  font-weight:700;
  letter-spacing:.03em;
}

.news-archive-link .btn:hover,
.btn:hover{
  background:var(--fpe-green-dark);
  color:#fff;
}

.current-notice{
  background:var(--fpe-green);
}

.current-notice h2{
  color:#fff;
  font-weight:600;
}

.google-event-card{
  background:#fff;
  border-left:6px solid var(--fpe-green);
  box-shadow:none;
}

.google-event-date{
  color:var(--fpe-green-dark);
}

.brandcloud-intro{
  background:#fff;
  color:var(--fpe-text);
  border-left:10px solid var(--fpe-green);
}

.brandcloud-intro h2{
  color:var(--fpe-blue);
  font-weight:500;
}

.brandcloud-card{
  border-top:8px solid var(--fpe-green);
}

.brandcloud-card h3{
  color:var(--fpe-blue);
}

.visual-tile{
  background:var(--fpe-green);
}

.visual-tile h3{
  font-size:clamp(20px,2.6vw,28px);
}

.issue-toc{
  background:#fff;
  border-left-color:var(--fpe-green);
}

.site-footer{
  background:#fff;
  border-top:1px solid var(--fpe-line);
}

@media(max-width:900px){
  .access-panel{padding:28px}
  .post-list{grid-template-columns:1fr}
}


/* v4.23 - revize kontrastů a návrat atraktivnějších rychlých přístupů */
body{
  background:var(--fpe-bg);
  color:var(--fpe-text);
}

/* Bezpečný kontrast hero bannerů všude */
.page-hero{
  background:var(--fpe-green)!important;
  color:#fff;
  min-height:150px;
}
.page-hero.has-image{
  background-color:#12395d!important;
  background-size:cover;
  background-position:center;
}
.page-hero.no-image{
  background:var(--fpe-green)!important;
}
.page-hero__shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,45,85,.72),rgba(0,45,85,.2));
}
.page-hero.no-image .page-hero__shade{
  display:none;
}
.page-hero__inner{
  position:relative;
  z-index:2;
}
.page-hero h1,
.page-hero .kicker{
  color:#fff!important;
}
.page-hero h1{
  font-size:clamp(30px,4.4vw,50px);
  line-height:1.05;
  text-transform:uppercase;
  letter-spacing:.015em;
  font-weight:700;
}

/* Detail vydání Fakultníku/Studentníku - větší a jednotný nadpis */
.issue-title{
  background:var(--fpe-green)!important;
  color:#fff!important;
}
.issue-title h1{
  color:#fff!important;
  font-size:clamp(42px,6vw,82px);
  line-height:.94!important;
  font-weight:700!important;
  letter-spacing:-.045em!important;
  text-transform:none!important;
}
.issue-title .kicker,
.issue-title p{
  color:#fff!important;
}

/* Rychlé přístupy: zpět k dlaždicím, jeden sloupec zelený */
.front-access{
  background:var(--fpe-bg);
  padding:46px 0;
}
.front-access__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  align-items:stretch;
}
.access-panel{
  padding:30px;
  min-height:100%;
  border:0;
  box-shadow:none;
}
.access-panel--employee{
  background:var(--fpe-green)!important;
  color:#fff!important;
}
.access-panel--student{
  background:#fff!important;
  color:var(--fpe-text)!important;
}
.access-panel--employee .section-heading span,
.access-panel--employee .section-heading h2{
  color:#fff!important;
}
.access-panel--student .section-heading span{
  color:var(--fpe-green-dark)!important;
}
.access-panel--student .section-heading h2{
  color:var(--fpe-blue)!important;
}
.section-heading span{
  display:block;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:6px;
}
.section-heading h2{
  font-size:clamp(28px,3.5vw,42px);
  line-height:1.02!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}

/* Dlaždicové odkazy */
.portal-card-grid,
.portal-card-grid--compact{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.portal-card{
  display:flex!important;
  flex-direction:column;
  justify-content:flex-end;
  min-height:145px;
  padding:22px!important;
  border:0!important;
  border-top:8px solid rgba(255,255,255,.75)!important;
  text-decoration:none!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
  position:relative;
  overflow:hidden;
}
.portal-card::before{
  content:"";
  display:none!important;
}
.portal-card__label{
  font-size:22px;
  line-height:1.08!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.portal-card__desc{
  font-size:14px;
  line-height:1.35;
  margin-top:8px;
}
.access-panel--employee .portal-card{
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  border-top-color:#fff!important;
}
.access-panel--employee .portal-card__desc{
  color:rgba(255,255,255,.88)!important;
}
.access-panel--employee .portal-card:hover{
  background:#fff!important;
  color:var(--fpe-blue)!important;
  transform:translateY(-3px);
  box-shadow:0 18px 36px rgba(0,0,0,.16);
}
.access-panel--employee .portal-card:hover .portal-card__desc{
  color:var(--fpe-muted)!important;
}
.access-panel--student .portal-card,
.portal-card-grid--light .portal-card{
  background:var(--fpe-green)!important;
  color:#fff!important;
  border-top-color:var(--fpe-blue)!important;
}
.access-panel--student .portal-card__desc,
.portal-card-grid--light .portal-card__desc{
  color:rgba(255,255,255,.88)!important;
}
.access-panel--student .portal-card:hover,
.portal-card-grid--light .portal-card:hover{
  background:var(--fpe-blue)!important;
  color:#fff!important;
  transform:translateY(-3px);
  box-shadow:0 18px 36px rgba(0,0,0,.12);
}

/* Aktuality: bez kickeru, čistší sekce */
.front-news .section-heading{
  text-align:center;
}
.front-news .section-heading span{
  display:none!important;
}
.front-news .section-heading h2{
  color:var(--fpe-blue)!important;
  font-size:clamp(34px,4.5vw,48px);
  text-transform:uppercase!important;
  font-weight:400!important;
  letter-spacing:.01em!important;
}
.post-card h3{
  color:var(--fpe-blue)!important;
  font-size:18px;
}

/* Běžný obsah - h1 vždy nejvýraznější, nižší úrovně nepřebíjejí */
.entry-content h2,
.content-panel h2{
  color:var(--fpe-blue);
  font-size:clamp(24px,3vw,34px);
}
.entry-content h3,
.content-panel h3{
  color:var(--fpe-blue);
  font-size:clamp(20px,2.3vw,27px);
}

/* Brand a moduly - bezpečné kontrasty */
.brandcloud-intro{
  background:#fff!important;
  color:var(--fpe-text)!important;
  border-left:10px solid var(--fpe-green);
}
.brandcloud-intro h2{
  color:var(--fpe-blue)!important;
}
.current-notice h2,
.current-notice p,
.current-notice__kicker{
  color:#fff!important;
}

@media(max-width:900px){
  .front-access__grid{
    grid-template-columns:1fr;
  }
  .portal-card-grid,
  .portal-card-grid--compact{
    grid-template-columns:1fr;
  }
  .issue-title h1{
    font-size:40px;
  }
}


/* v4.24 - jemnější sekční titulky a sjednocení vydání */
.section-heading h2,
.front-news .section-heading h2,
.portal-section .section-heading h2{
  font-size:clamp(26px,3.2vw,38px);
  line-height:1.08!important;
}

.front-news .section-heading h2{
  font-size:clamp(28px,3.8vw,40px);
  letter-spacing:.01em!important;
}

.issue-title{
  padding-top:52px!important;
  padding-bottom:52px!important;
}

.issue-back-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#fff!important;
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:20px;
  opacity:.92;
  position:relative;
  z-index:2;
}

.issue-back-link:hover{
  color:#fff!important;
  opacity:1;
  text-decoration:underline;
}

.issue-title h1{
  font-size:clamp(40px,5.4vw,74px);
  line-height:.98!important;
  font-weight:700!important;
  color:#fff!important;
}

.issue-title .kicker{
  font-size:13px;
  letter-spacing:.1em!important;
  font-weight:700!important;
}

.issue-title p{
  font-size:16px;
}

.issue-section-hero h2{
  font-size:clamp(30px,4vw,44px);
  line-height:1.06!important;
  font-weight:500!important;
}

.issue-item-content{
  font-size:17px;
  line-height:1.68!important;
}

.issue-item-content h2{
  font-size:clamp(24px,3vw,32px);
  line-height:1.12!important;
  color:var(--fpe-blue)!important;
}

.issue-item-content h3{
  font-size:clamp(20px,2.4vw,26px);
  line-height:1.18!important;
  color:var(--fpe-blue)!important;
}

.issue-toc-title{
  font-size:12px;
}

.issue-toc a{
  font-size:16px;
}

@media(max-width:850px){
  .section-heading h2,
  .front-news .section-heading h2,
  .portal-section .section-heading h2{
    font-size:28px;
  }
  .issue-title h1{
    font-size:36px;
  }
  .issue-section-hero h2{
    font-size:30px;
  }
}


/* v4.25 - drobné úpravy podle připomínek */
.main-menu a{
  color:var(--fpe-green)!important;
}
.main-menu a:hover,
.main-menu .current-menu-item>a,
.main-menu .current_page_item>a{
  color:var(--fpe-blue)!important;
  background:transparent!important;
}
.main-menu a:hover::after,
.main-menu .current-menu-item>a::after,
.main-menu .current_page_item>a::after{
  background:var(--fpe-blue)!important;
}

/* Studentské dlaždice na titulní stránce bez výplně */
.access-panel--student .portal-card,
.portal-card-grid--light .portal-card{
  background:transparent!important;
  color:var(--fpe-blue-link)!important;
  border-top:0!important;
  border-left:0!important;
  border-bottom:1px solid var(--fpe-line)!important;
  padding:14px 0 14px 22px!important;
  min-height:auto!important;
  box-shadow:none!important;
  position:relative;
}
.access-panel--student .portal-card::before,
.portal-card-grid--light .portal-card::before{
  content:"➤"!important;
  display:block!important;
  position:absolute;
  left:0;
  top:15px;
  color:var(--fpe-blue-link);
  font-size:14px;
}
.access-panel--student .portal-card__label,
.portal-card-grid--light .portal-card__label{
  font-size:18px;
  line-height:1.18!important;
  color:var(--fpe-blue-link)!important;
  text-decoration:underline!important;
}
.access-panel--student .portal-card__desc,
.portal-card-grid--light .portal-card__desc{
  color:var(--fpe-muted)!important;
}
.access-panel--student .portal-card:hover,
.portal-card-grid--light .portal-card:hover{
  background:transparent!important;
  color:var(--fpe-green-dark)!important;
  transform:none!important;
  box-shadow:none!important;
}
.access-panel--student .portal-card:hover::before,
.portal-card-grid--light .portal-card:hover::before{
  color:var(--fpe-green)!important;
}
.access-panel--student .portal-card:hover .portal-card__label,
.portal-card-grid--light .portal-card:hover .portal-card__label{
  color:var(--fpe-green-dark)!important;
}

.google-event-detail p{
  white-space:pre-line;
}


/* v4.26 - náhledový obrázek jako hero vydání Fakultníku/Studentníku */
.issue-title{
  position:relative;
  overflow:hidden;
  background:var(--fpe-green)!important;
  background-size:cover!important;
  background-position:center!important;
  color:#fff!important;
  width:100%;
  max-width:none;
  margin:0 0 52px;
}

.issue-title.has-image{
  background-color:#12395d!important;
}

.issue-title__shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,45,85,.72),rgba(0,45,85,.18));
  z-index:1;
}

.issue-title__inner{
  position:relative;
  z-index:2;
  padding:52px max(36px,calc((100vw - var(--site-width))/2 + 18px));
}

.issue-title.no-image .issue-title__inner{
  background:transparent;
}

.issue-title h1,
.issue-title .kicker,
.issue-title p,
.issue-title .issue-back-link{
  position:relative;
  z-index:2;
  color:#fff!important;
}


/* v4.27 - oprava hero obrázku vydání, zmenšení textu a studentské dlaždice */
.issue-title{
  background-color:var(--fpe-green)!important;
  background-image:none!important;
  background-size:cover!important;
  background-position:center!important;
  min-height:260px;
  display:flex;
  align-items:center;
}

.issue-title.has-image{
  background-image:var(--issue-hero-image)!important;
  background-color:#12395d!important;
}

.issue-title.no-image .issue-title__shade{
  display:none!important;
}

.issue-title.has-image .issue-title__shade{
  display:block!important;
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,45,85,.74),rgba(0,45,85,.18))!important;
  z-index:1;
}

.issue-title__inner{
  width:100%;
  padding:42px max(36px,calc((100vw - var(--site-width))/2 + 18px))!important;
}

.issue-title h1{
  font-size:clamp(32px,4.2vw,58px);
  line-height:1.02!important;
  letter-spacing:-.025em!important;
}

.issue-title .kicker{
  font-size:12px;
}

.issue-title p{
  font-size:14px;
}

.issue-back-link{
  font-size:12px;
  margin-bottom:16px!important;
}

.issue-section-hero{
  height:180px!important;
  padding:28px 36px!important;
}

.issue-section-hero h2{
  font-size:clamp(26px,3.2vw,36px);
  line-height:1.08!important;
}

.issue-section-body{
  margin-top:34px!important;
}

.issue-item-content{
  font-size:16px;
  line-height:1.65!important;
}

.issue-item-content h2{
  font-size:clamp(22px,2.6vw,28px);
}

.issue-item-content h3{
  font-size:clamp(19px,2.2vw,24px);
}

/* Úvodní stránka: studentské dlaždice stejné jako zaměstnanecké, ale průhledné se zeleným obrysem */
.access-panel--student .portal-card,
.portal-card-grid--light .portal-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  min-height:145px!important;
  padding:22px!important;
  background:transparent!important;
  color:var(--fpe-green-dark)!important;
  border:2px solid var(--fpe-green)!important;
  border-top:8px solid var(--fpe-green)!important;
  text-decoration:none!important;
  box-shadow:none!important;
  position:relative;
  transition:background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.access-panel--student .portal-card::before,
.portal-card-grid--light .portal-card::before{
  display:none!important;
  content:""!important;
}

.access-panel--student .portal-card__label,
.portal-card-grid--light .portal-card__label{
  font-size:22px;
  line-height:1.08!important;
  font-weight:700!important;
  color:var(--fpe-green-dark)!important;
  text-decoration:none!important;
}

.access-panel--student .portal-card__desc,
.portal-card-grid--light .portal-card__desc{
  color:var(--fpe-muted)!important;
  font-size:14px;
  margin-top:8px!important;
}

.access-panel--student .portal-card:hover,
.portal-card-grid--light .portal-card:hover{
  background:var(--fpe-green)!important;
  color:#fff!important;
  transform:translateY(-3px)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.12)!important;
}

.access-panel--student .portal-card:hover .portal-card__label,
.portal-card-grid--light .portal-card:hover .portal-card__label{
  color:#fff!important;
}

.access-panel--student .portal-card:hover .portal-card__desc,
.portal-card-grid--light .portal-card:hover .portal-card__desc{
  color:rgba(255,255,255,.9)!important;
}

/* Lehké zmenšení obou panelů, aby úvod nepůsobil přerostle */
.portal-card__label{
  font-size:21px;
}

.portal-card__desc{
  font-size:14px;
}

@media(max-width:850px){
  .issue-title{
    min-height:210px;
  }
  .issue-title h1{
    font-size:32px;
  }
  .issue-section-hero{
    height:150px!important;
    padding:24px!important;
  }
}


/* v4.28 - sjednocení modulů s typografií úvodní stránky + vyhledávání ve vydání */
.entry-content .section-heading,
.content-panel .section-heading,
.brandcloud-intro,
.issue-archive-module,
.google-events-list,
.event-list,
.brandcloud-grid,
.advent-calendar{
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
}

.entry-content .section-heading span,
.content-panel .section-heading span,
.module-kicker,
.brandcloud-intro .module-kicker{
  display:block;
  color:var(--fpe-green-dark);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:6px;
}

.entry-content .section-heading h2,
.content-panel .section-heading h2,
.entry-content > h2,
.content-panel > h2{
  color:var(--fpe-blue);
  font-size:clamp(26px,3.2vw,38px);
  line-height:1.08!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}

.issue-archive-card h3,
.event-card h3,
.google-event-card summary strong,
.brandcloud-card h3{
  color:var(--fpe-blue);
  font-size:clamp(19px,2.4vw,24px);
  line-height:1.12!important;
  font-weight:700!important;
}

.issue-archive-card p,
.event-card p,
.google-event-detail,
.brandcloud-card p{
  font-size:15px;
  line-height:1.55;
  color:var(--fpe-muted);
}

.issue-archive-card__date,
.event-date,
.google-event-date,
.post-card__meta{
  color:var(--fpe-green-dark);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
}

.issue-search{
  max-width:760px;
  margin:0 auto 42px;
  background:#fff;
  border-left:8px solid var(--fpe-green);
  padding:20px 24px;
}

.issue-search label{
  display:block;
  color:var(--fpe-blue);
  font-weight:700;
  font-size:15px;
  margin-bottom:8px;
}

.issue-search__row{
  display:flex;
  gap:10px;
  align-items:center;
}

.issue-search input[type="search"]{
  flex:1;
  min-height:44px;
  border:1px solid var(--fpe-line);
  padding:0 14px;
  font-size:16px;
}

.issue-search__result{
  margin-top:8px;
  color:var(--fpe-muted);
  font-size:14px;
}

.issue-search .btn{
  min-height:44px;
  border:0;
  cursor:pointer;
}

@media(max-width:760px){
  .issue-search__row{
    display:block;
  }
  .issue-search .btn{
    margin-top:10px;
    width:100%;
  }
}


/* v4.29 - Brandcloud: jednotná modrá typografie */
.brandcloud-intro h1,
.brandcloud-intro h2,
.brandcloud-intro h3,
.brandcloud-card h1,
.brandcloud-card h2,
.brandcloud-card h3,
.brandcloud-card h3 a,
.post-type-archive-brand_asset .page-hero h1,
.single-brand_asset .page-hero h1,
.single-brand_asset .entry-content h1,
.single-brand_asset .entry-content h2,
.single-brand_asset .entry-content h3{
  color:var(--fpe-blue)!important;
}

.brandcloud-card h3{
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.brandcloud-card h3 a:hover{
  color:var(--fpe-green-dark)!important;
}

.brandcloud-intro{
  border-left-color:var(--fpe-green)!important;
}

.brandcloud-intro p,
.brandcloud-card p{
  color:var(--fpe-muted)!important;
}


/* v4.30 - růstové moduly */
.quicklinks{
  display:grid;
  gap:16px;
}

.quicklinks--tiles{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}

.quicklink-card{
  background:#fff;
  border-top:8px solid var(--fpe-green);
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  overflow:hidden;
}

.quicklink-card.is-highlighted{
  border-top-color:var(--fpe-blue);
}

.quicklink-card__image img{
  width:100%;
  height:150px;
  object-fit:cover;
  display:block;
}

.quicklink-card__body{
  padding:20px;
}

.quicklink-card h3{
  margin:0 0 8px;
  color:var(--fpe-blue);
  font-size:22px;
  line-height:1.1;
}

.quicklink-card h3 a{
  color:var(--fpe-blue);
}

.quicklink-card p{
  color:var(--fpe-muted);
  font-size:15px;
  margin:0 0 14px;
}

.faq-list{
  display:grid;
  gap:10px;
}

.faq-item{
  background:#fff;
  border-left:6px solid var(--fpe-green);
  box-shadow:0 6px 18px rgba(0,0,0,.05);
}

.faq-item summary{
  cursor:pointer;
  padding:16px 20px;
  color:var(--fpe-blue);
  font-weight:700;
}

.faq-item__content{
  padding:0 20px 18px;
  color:var(--fpe-text);
}

.contact-list-module{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
}

.contact-person-card{
  background:#fff;
  border-left:8px solid var(--fpe-green);
  padding:18px;
  display:flex;
  gap:14px;
  align-items:flex-start;
  box-shadow:0 8px 24px rgba(0,0,0,.05);
}

.contact-person-card__image{
  width:72px;
  height:72px;
  flex:0 0 72px;
  overflow:hidden;
  background:#eef3f9;
}

.contact-person-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.contact-person-card h3{
  margin:0 0 4px;
  color:var(--fpe-blue);
  font-size:20px;
}

.contact-person-card__role{
  color:var(--fpe-muted);
  font-size:14px;
  margin-bottom:8px;
}

.contact-person-card a,
.contact-person-card span{
  display:block;
  font-size:14px;
}


/* v4.31 - opravy vyhledávání, akcí, záhlaví a fontů */

/* sjednocení fontu v Chrome/Edge přes stejný systémový stack */
html, body, button, input, select, textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: auto;
}

/* záhlaví odolnější vůči WordPress admin baru / přihlášenému uživateli */
.site-header{
  position:relative;
  z-index:50;
  width:100%;
}

.admin-bar .site-header{
  top:auto;
}

.header-inner{
  display:flex;
  align-items:center;
  gap:22px;
  min-height:64px;
  height:auto!important;
  padding-top:10px;
  padding-bottom:10px;
  flex-wrap:wrap;
}

.brand{
  display:flex;
  align-items:center;
  min-width:220px;
  flex:0 1 auto;
}

.brand img,
.brand svg{
  max-width:150px;
  height:auto;
  display:block;
}

.brand-title{
  white-space:normal;
  line-height:1.2;
}

.header-menu{
  margin-left:auto;
  min-width:0;
}

.main-menu{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px 12px;
}

.main-menu a{
  white-space:nowrap;
}

@media(max-width:960px){
  .header-inner{
    display:block;
  }
  .brand{
    margin-bottom:10px;
  }
  .header-menu{
    width:100%;
    margin-left:0;
  }
  .main-menu{
    justify-content:flex-start;
  }
  .main-menu a{
    white-space:normal;
  }
}

/* menší a méně tučné názvy akcí */
.google-event-card summary{
  grid-template-columns:150px 1fr;
  gap:12px;
  padding:15px 18px;
}

.google-event-card summary strong,
.event-card h3,
.event-card h3 a{
  font-size:18px;
  line-height:1.22!important;
  font-weight:700!important;
  color:var(--fpe-blue)!important;
}

.google-event-date,
.event-date{
  font-size:11px;
}

/* vyhledávání v oběžníku */
.issue-search{
  max-width:760px;
  margin:0 auto 36px;
  background:#fff;
  border-left:8px solid var(--fpe-green);
  padding:18px 22px;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
}

.issue-search label{
  display:block;
  color:var(--fpe-blue);
  font-weight:700;
  font-size:15px;
  margin-bottom:8px;
}

.issue-search__row{
  display:flex;
  gap:10px;
  align-items:center;
}

.issue-search input[type="search"]{
  flex:1;
  min-height:42px;
  border:1px solid var(--fpe-line);
  padding:0 14px;
  font-size:15px;
  background:#fff;
}

.issue-search__result{
  margin-top:8px;
  color:var(--fpe-muted);
  font-size:14px;
}

.issue-search .btn{
  min-height:42px;
  border:0;
  cursor:pointer;
}

@media(max-width:760px){
  .issue-search__row{
    display:block;
  }
  .issue-search .btn{
    margin-top:10px;
    width:100%;
  }
  .google-event-card summary{
    grid-template-columns:1fr;
  }
}

/* drobné zklidnění globálních modulových nadpisů */
.google-events-list h3,
.event-list h3{
  font-weight:700!important;
}


/* v4.32 - úvodní aktuality a zápatí */
.front-news .section-heading,
.front-news .section-heading--news{
  text-align:left!important;
}

.front-news .section-heading--news span{
  display:block!important;
  color:var(--fpe-green-dark)!important;
  font-size:12px;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  font-weight:700!important;
  margin-bottom:6px!important;
}

.front-news .section-heading--news h2{
  color:var(--fpe-blue)!important;
  font-size:clamp(30px,3.8vw,42px);
  line-height:1.08!important;
  text-transform:none!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  margin:0!important;
}

.site-footer{
  background:#fff!important;
  border-top:1px solid var(--fpe-line)!important;
  padding:26px 0!important;
}

.footer-inner{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:28px;
}

.footer-links,
.footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
}

.footer-links a,
.footer-legal a,
.footer-user a{
  color:var(--fpe-blue-link);
  font-weight:700;
}

.footer-links a:hover,
.footer-legal a:hover,
.footer-user a:hover{
  color:var(--fpe-green-dark);
}

.footer-meta{
  text-align:right;
  color:var(--fpe-muted);
  font-size:14px;
}

.footer-copy{
  margin-bottom:6px;
  color:var(--fpe-text);
  font-weight:700;
}

.footer-legal{
  justify-content:flex-end;
  margin-bottom:6px;
}

.footer-user{
  font-size:13px;
  color:var(--fpe-muted);
}

@media(max-width:800px){
  .footer-inner{
    display:block;
  }
  .footer-meta{
    text-align:left;
    margin-top:18px;
  }
  .footer-legal{
    justify-content:flex-start;
  }
}


/* v4.33 - vyhledávání v přehledu vydání Fakultníku/Studentníku */
.issue-archive-module-wrap{
  width:100%;
}

.issue-archive-search{
  background:#fff;
  border-left:8px solid var(--fpe-green);
  padding:18px 22px;
  margin:0 0 22px;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
}

.issue-archive-search label{
  display:block;
  color:var(--fpe-blue);
  font-weight:700;
  font-size:15px;
  margin-bottom:8px;
}

.issue-archive-search__row{
  display:flex;
  gap:10px;
  align-items:center;
}

.issue-archive-search input[type="search"]{
  flex:1;
  min-height:42px;
  border:1px solid var(--fpe-line);
  padding:0 14px;
  font-size:15px;
  background:#fff;
}

.issue-archive-search__result{
  margin-top:8px;
  color:var(--fpe-muted);
  font-size:14px;
}

.issue-archive-search .btn{
  min-height:42px;
  border:0;
  cursor:pointer;
}

@media(max-width:760px){
  .issue-archive-search__row{
    display:block;
  }
  .issue-archive-search .btn{
    margin-top:10px;
    width:100%;
  }
}


/* v4.33.1 - cílené opravy z verze 34 */
.issue-search,
.issue-archive-search{
  display:none!important;
}

.front-news .section-heading--news h2,
.front-news .section-heading h2{
  font-weight:400!important;
  text-transform:none!important;
}

.footer-user,
.header-user,
.user-info,
.login-info,
.account-info,
.logged-in-user{
  display:none!important;
}


/* v3.5: čistší záhlaví, nástroje přesunuty do zápatí */
.site-header .search-form,
.site-header form[role="search"],
.site-header .wp-block-search,
.site-header .header-search,
.site-header .site-search,
.site-header .search-box,
.site-header .user-info,
.site-header .user-meta,
.site-header .user-profile,
.site-header .current-user,
.site-header .login-info,
.site-header .account,
.site-header .fpe-user,
.site-header .fpe-search,
header .search-form,
header form[role="search"],
header .wp-block-search,
header .user-info,
header .current-user,
header .login-info {
    display: none !important;
}

.fpe-footer-tools {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255,255,255,.18);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.fpe-footer-tool {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;
    padding: 1rem;
}

.fpe-footer-tool h2 {
    margin: 0 0 .65rem;
    font-size: .95rem;
    color: #fff;
}

.fpe-footer-tool p {
    margin: .35rem 0;
}

.fpe-footer-tool a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.fpe-footer-tool .search-form,
.fpe-footer-tool form[role="search"] {
    display: flex;
    gap: .5rem;
    align-items: center;
}

.fpe-footer-tool input[type="search"],
.fpe-footer-tool .search-field {
    width: 100%;
    min-width: 0;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.35);
    padding: .65rem .9rem;
    background: rgba(255,255,255,.95);
    color: #102a43;
}

.fpe-footer-tool input[type="submit"],
.fpe-footer-tool .search-submit,
.fpe-footer-tool button[type="submit"] {
    border: 0;
    border-radius: 999px;
    padding: .65rem 1rem;
    background: #8abd24;
    color: #102a43;
    font-weight: 700;
    cursor: pointer;
}

/* v3.5: sjednocení barev modulů do klidnějšího FPE stylu */
:root {
    --fpe-blue-deep: #153b66;
    --fpe-blue: #1f5d8c;
    --fpe-blue-soft: #eaf3f8;
    --fpe-green: #8abd24;
    --fpe-green-soft: #eef8df;
    --fpe-surface: #ffffff;
    --fpe-border: rgba(21,59,102,.12);
    --fpe-text: #102a43;
    --fpe-muted: #5f7388;
}

.fpe-card,
.fpe-panel,
.fpe-box,
.fpe-module,
.fpe-quicklink,
.fpe-contact-card,
.fpe-faq-item,
.fpe-brand-card,
.fpe-newsletter-card,
.fpe-issue-card,
.fpe-item-card,
.fpe-advent-card {
    background: var(--fpe-surface);
    color: var(--fpe-text);
    border: 1px solid var(--fpe-border);
    box-shadow: 0 14px 34px rgba(16,42,67,.07);
}

.fpe-card h2,
.fpe-card h3,
.fpe-panel h2,
.fpe-panel h3,
.fpe-box h2,
.fpe-box h3,
.fpe-module h2,
.fpe-module h3,
.fpe-quicklink h2,
.fpe-quicklink h3,
.fpe-contact-card h2,
.fpe-contact-card h3,
.fpe-faq-item h2,
.fpe-faq-item h3,
.fpe-brand-card h2,
.fpe-brand-card h3,
.fpe-newsletter-card h2,
.fpe-newsletter-card h3,
.fpe-issue-card h2,
.fpe-issue-card h3 {
    color: var(--fpe-blue-deep);
}

.fpe-label,
.fpe-badge,
.fpe-chip,
.fpe-tag,
.fpe-pill,
.fpe-kicker,
.badge,
.tag {
    background: var(--fpe-green-soft);
    color: #365c0b;
    border: 1px solid rgba(138,189,36,.25);
}

.fpe-btn,
.fpe-button,
.button.fpe-button,
.fpe-cta,
.wp-block-button__link {
    background: var(--fpe-green);
    color: #102a43;
    border-radius: 999px;
    border: 0;
    font-weight: 700;
}

.fpe-btn:hover,
.fpe-button:hover,
.button.fpe-button:hover,
.fpe-cta:hover,
.wp-block-button__link:hover {
    filter: brightness(.96);
    color: #102a43;
}

.fpe-section,
.fpe-section-soft,
.fpe-home-block,
.fpe-archive-intro {
    background: linear-gradient(180deg, #ffffff 0%, var(--fpe-blue-soft) 100%);
    color: var(--fpe-text);
}

.fpe-notice,
.fpe-current-notice {
    background: #f6fbef;
    color: var(--fpe-text);
    border-left: 5px solid var(--fpe-green);
}

.fpe-hero,
.fpe-page-hero,
.fpe-issue-hero {
    color: #fff;
}

.fpe-hero a,
.fpe-page-hero a,
.fpe-issue-hero a {
    color: #fff;
}

@media (max-width: 760px) {
    .fpe-footer-tools {
        grid-template-columns: 1fr;
    }

    .fpe-footer-tool .search-form,
    .fpe-footer-tool form[role="search"] {
        flex-direction: column;
        align-items: stretch;
    }
}


/* v3.7: jemnější typografie a méně nadužívané tučné písmo */
body {
    font-weight: 400;
}

p,
li,
td,
th,
input,
textarea,
select,
button,
.wp-block-paragraph,
.entry-content,
.content-panel,
.home-card,
.event-card,
.archive-item,
.issue-item-content,
.fpe-card,
.fpe-panel,
.fpe-box,
.fpe-module {
    font-weight: 400;
}

strong,
b,
.entry-content strong,
.entry-content b,
.wp-block-paragraph strong,
.wp-block-paragraph b {
    font-weight: 600;
}

em,
i,
.entry-content em,
.entry-content i {
    font-style: italic;
    font-weight: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.page-title,
.entry-title {
    font-weight: 600;
}

.home-card h3,
.event-card h3,
.archive-item h2,
.issue-item h3,
.issue-archive-card h3 {
    font-weight: 600;
}

/* Nadpisy sekcí na úvodní straně sjednoceně */
.front-section-title,
.home-section-title,
.section-title,
.news-title,
.events-title,
.latest-news h2,
.upcoming-events h2,
.home-news h2,
.home-events h2,
.front-news h2,
.front-events h2 {
    font-size: clamp(1.7rem, 2.4vw, 2.45rem);
    line-height: 1.08;
    letter-spacing: -0.025em;
    font-weight: 500;
    color: var(--fpe-blue-deep, #153b66);
    margin: 0 0 1rem;
}

/* Pokud jsou konkrétní texty v běžném H2 bez třídy, ať působí stejně */
main h2 {
    font-weight: 500;
}

main h2 strong,
main h2 b {
    font-weight: 500;
}

/* v3.7: skrytí WordPress / uživatelského stavu v záhlaví */
#wpadminbar {
    display: none !important;
}

html {
    margin-top: 0 !important;
}

body.admin-bar {
    margin-top: 0 !important;
}

.site-header .ab-top-menu,
.site-header .wp-admin-bar,
.site-header .wp-adminbar,
.site-header .admin-bar,
.site-header .avatar,
.site-header .display-name,
.site-header .username,
.site-header .user-display-name,
.site-header .wp-user,
.site-header .wp-login,
.site-header .login-username,
.site-header .logged-in-as,
.site-header .edit-link,
header .ab-top-menu,
header .wp-admin-bar,
header .wp-adminbar,
header .admin-bar,
header .avatar,
header .display-name,
header .username,
header .user-display-name,
header .wp-user,
header .wp-login,
header .login-username,
header .logged-in-as,
header .edit-link {
    display: none !important;
}

/* v3.7: kompaktnější zápatí bez vyhledávání */
.fpe-footer-tools,
.fpe-footer-tools.fpe-footer-tools--compact {
    margin-top: 1rem;
    padding-top: .85rem;
    border-top: 1px solid rgba(255,255,255,.16);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem .85rem;
    font-size: .9rem;
}

.fpe-footer-tools--compact .fpe-footer-tool-label {
    font-weight: 600;
    opacity: .9;
}

.fpe-footer-tools--compact strong {
    font-weight: 600;
}

.fpe-footer-tools--compact a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 500;
}

.fpe-footer-tool,
.fpe-footer-tools .fpe-footer-tool {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

.fpe-footer-tools h2,
.fpe-footer-tools .search-form,
.fpe-footer-tools form[role="search"],
.fpe-footer-tools .wp-block-search,
.fpe-footer-tool:has(.search-form),
.fpe-footer-tool:has(form[role="search"]) {
    display: none !important;
}

/* nižší vertikální rytmus ve footeru */
.site-footer,
footer.site-footer,
footer {
    --footer-compact-gap: .75rem;
}

.site-footer p,
footer p {
    margin-top: .25rem;
    margin-bottom: .25rem;
}

/* v3.7: některé starší moduly měly moc výrazné řezy */
.kicker,
.fpe-kicker,
.fpe-label,
.fpe-badge,
.fpe-chip,
.fpe-tag,
.fpe-pill,
.badge,
.tag {
    font-weight: 600;
}

.btn,
.fpe-btn,
.fpe-button,
.button.fpe-button,
.fpe-cta,
.wp-block-button__link {
    font-weight: 600;
}


/* v3.8: maximální běžná tučnost 700 */
strong,
b,
h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.page-title,
.entry-title,
.kicker,
.fpe-kicker,
.fpe-label,
.fpe-badge,
.fpe-chip,
.fpe-tag,
.fpe-pill,
.badge,
.tag,
.btn,
.fpe-btn,
.fpe-button,
.button.fpe-button,
.fpe-cta,
.wp-block-button__link,
.site-header a,
.main-navigation a,
.fpe-footer-inner a {
    font-weight: 700;
}

[style*="font-weight:700"],
[style*="font-weight:700"],
[style*="font-weight:700"],
[style*="font-weight:700"] {
    font-weight: 700 !important;
}

/* v3.8: kompaktní zápatí v jedné řádce */
.site-footer.fpe-site-footer,
.fpe-site-footer {
    padding: 0;
    margin: 0;
    background: #fff;
    color: #004b8d;
    border-top: 1px solid rgba(21,59,102,.08);
}

.fpe-footer-inner {
    max-width: var(--site-width, 1160px);
    margin: 0 auto;
    min-height: 72px;
    padding: 0 18px;
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto minmax(280px, 1fr);
    gap: 18px;
    align-items: center;
    font-size: 14px;
    line-height: 1.25;
}

.fpe-footer-links,
.fpe-footer-user,
.fpe-footer-legal {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.fpe-footer-links {
    justify-content: flex-start;
}

.fpe-footer-user {
    justify-content: center;
    color: #5f7388;
    white-space: nowrap;
}

.fpe-footer-legal {
    justify-content: flex-end;
    flex-wrap: wrap;
    row-gap: 4px;
}

.fpe-footer-inner a {
    color: #005aa8;
    text-decoration: none;
    white-space: nowrap;
}

.fpe-footer-inner a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.fpe-footer-inner span {
    white-space: nowrap;
}

.fpe-footer-tools,
.fpe-footer-tool,
.fpe-footer-tools--compact {
    display: none !important;
}

/* odstranění případného zbytku uživatele mimo footer */
body > .fpe-footer-tools,
body > .fpe-footer-tool,
body > div.fpe-footer-tools,
body > span.fpe-footer-user,
body > .logged-in-as {
    display: none !important;
}

@media (max-width: 980px) {
    .fpe-footer-inner {
        grid-template-columns: 1fr;
        min-height: auto;
        padding-top: 16px;
        padding-bottom: 16px;
        gap: 10px;
    }

    .fpe-footer-links,
    .fpe-footer-user,
    .fpe-footer-legal {
        justify-content: flex-start;
        flex-wrap: wrap;
        white-space: normal;
    }

    .fpe-footer-user,
    .fpe-footer-inner span,
    .fpe-footer-inner a {
        white-space: normal;
    }
}


/* v3.9: jednotná typografie napříč webem */
:root {
    --fpe-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
    --fpe-font-size-body: 16px;
    --fpe-line-height-body: 1.55;
    --fpe-font-size-small: 14px;
    --fpe-font-size-meta: 13px;
    --fpe-h1: clamp(2.15rem, 4.2vw, 4.25rem);
    --fpe-h2: clamp(1.65rem, 2.5vw, 2.5rem);
    --fpe-h3: clamp(1.25rem, 1.6vw, 1.55rem);
    --fpe-h4: 1.12rem;
    --fpe-weight-regular: 400;
    --fpe-weight-medium: 500;
    --fpe-weight-bold: 700;
    --fpe-text-blue: #153b66;
    --fpe-text-body: #334e68;
    --fpe-text-muted: #62758a;
    --fpe-green-main: #8abd24;
}

html {
    font-size: var(--fpe-font-size-body);
}

body,
button,
input,
select,
textarea {
    font-family: var(--fpe-font-family);
    font-size: var(--fpe-font-size-body);
    line-height: var(--fpe-line-height-body);
    font-weight: var(--fpe-weight-regular);
    color: var(--fpe-text-body);
}

p,
li,
td,
th,
figcaption,
.wp-block-paragraph,
.entry-content,
.content-panel,
.page-content,
.post-content,
.home-card,
.brandcloud-card,
.event-card,
.archive-item,
.issue-item-content,
.issue-archive-card,
.fpe-card,
.fpe-panel,
.fpe-box,
.fpe-module {
    font-size: var(--fpe-font-size-body);
    line-height: var(--fpe-line-height-body);
    font-weight: var(--fpe-weight-regular);
    color: var(--fpe-text-body);
}

small,
.meta,
.kicker,
.fpe-kicker,
.fpe-label,
.fpe-badge,
.fpe-chip,
.fpe-tag,
.fpe-pill,
.badge,
.tag,
.event-date,
.issue-archive-card__date,
.google-event-date,
.archive-item p,
.brandcloud-card p,
.home-card p {
    font-size: var(--fpe-font-size-small);
    line-height: 1.45;
}

h1,
.page-title,
.entry-title,
.page-hero h1,
.issue-title h1 {
    font-family: var(--fpe-font-family);
    font-size: var(--fpe-h1);
    line-height: .98;
    letter-spacing: -0.035em;
    font-weight: var(--fpe-weight-bold);
    color: var(--fpe-text-blue);
}

h2,
.front-section-title,
.home-section-title,
.section-title,
.news-title,
.events-title,
.latest-news h2,
.upcoming-events h2,
.home-news h2,
.home-events h2,
.front-news h2,
.front-events h2 {
    font-family: var(--fpe-font-family);
    font-size: var(--fpe-h2);
    line-height: 1.08;
    letter-spacing: -0.025em;
    font-weight: var(--fpe-weight-medium);
    color: var(--fpe-text-blue);
}

h3,
.home-card h3,
.brandcloud-card h3,
.event-card h3,
.archive-item h2,
.issue-item h3,
.issue-archive-card h3 {
    font-family: var(--fpe-font-family);
    font-size: var(--fpe-h3);
    line-height: 1.18;
    letter-spacing: -0.015em;
    font-weight: var(--fpe-weight-bold);
    color: var(--fpe-text-blue);
}

h4,
h5,
h6 {
    font-family: var(--fpe-font-family);
    font-size: var(--fpe-h4);
    line-height: 1.25;
    font-weight: var(--fpe-weight-bold);
    color: var(--fpe-text-blue);
}

strong,
b {
    font-weight: var(--fpe-weight-bold);
}

em,
i {
    font-style: italic;
    font-weight: inherit;
}

/* Omezí starší přímé styly a příliš těžké řezy */
[style*="font-weight:700"],
[style*="font-weight:700"],
[style*="font-weight:700"],
[style*="font-weight:700"] {
    font-weight: var(--fpe-weight-bold) !important;
}

/* v3.9: zelený podklad = vždy bílý text */
.has-fpe-green-background-color,
.has-background.has-fpe-green-background-color,
.wp-block-cover.has-fpe-green-background-color,
.wp-block-group.has-fpe-green-background-color,
.page-hero,
.pattern-hero,
.issue-title,
.issue-section-hero.green,
.visual-tile,
.access-panel--employee,
.access-panel--student,
.notice-green,
.bg-green,
.fpe-bg-green,
[style*="background:#8abd24"],
[style*="background: #8abd24"],
[style*="background-color:#8abd24"],
[style*="background-color: #8abd24"],
[style*="background:var(--fpe-green"],
[style*="background: var(--fpe-green"],
[style*="background-color:var(--fpe-green"],
[style*="background-color: var(--fpe-green"] {
    color: #fff !important;
}

.has-fpe-green-background-color *,
.has-background.has-fpe-green-background-color *,
.wp-block-cover.has-fpe-green-background-color *,
.wp-block-group.has-fpe-green-background-color *,
.page-hero *,
.pattern-hero *,
.issue-title *,
.issue-section-hero.green *,
.visual-tile *,
.access-panel--employee *,
.access-panel--student *,
.notice-green *,
.bg-green *,
.fpe-bg-green *,
[style*="background:#8abd24"] *,
[style*="background: #8abd24"] *,
[style*="background-color:#8abd24"] *,
[style*="background-color: #8abd24"] *,
[style*="background:var(--fpe-green"] *,
[style*="background: var(--fpe-green"] *,
[style*="background-color:var(--fpe-green"] *,
[style*="background-color: var(--fpe-green"] * {
    color: #fff !important;
}

.has-fpe-green-background-color a,
.has-background.has-fpe-green-background-color a,
.wp-block-cover.has-fpe-green-background-color a,
.wp-block-group.has-fpe-green-background-color a,
.page-hero a,
.pattern-hero a,
.issue-title a,
.issue-section-hero.green a,
.visual-tile a,
.access-panel--employee a,
.access-panel--student a,
.notice-green a,
.bg-green a,
.fpe-bg-green a {
    color: #fff !important;
    text-decoration-color: rgba(255,255,255,.75);
}

/* Brandcloud a obsahové karty sjednoceně */
.brandcloud-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 18px;
}

.brandcloud-card,
.home-card,
.event-card,
.issue-archive-card,
.archive-item {
    background: #fff;
    border: 1px solid rgba(21,59,102,.10);
    border-top: 6px solid var(--fpe-green-main);
    box-shadow: 0 10px 28px rgba(16,42,67,.06);
}

.brandcloud-card {
    padding: 0 0 20px;
    overflow: hidden;
}

.brandcloud-card img {
    width: 100%;
    aspect-ratio: 1.45 / 1;
    object-fit: cover;
    display: block;
}

.brandcloud-card h3,
.brandcloud-card p,
.brandcloud-card .link-more {
    margin-left: 20px;
    margin-right: 20px;
}

.brandcloud-card h3 {
    margin-top: 20px;
    margin-bottom: 8px;
}

.brandcloud-card p {
    margin-top: 0;
    margin-bottom: 16px;
    color: var(--fpe-text-muted);
}

.link-more,
.brandcloud-card .link-more,
.issue-archive-card .link-more,
.archive-item .link-more {
    font-size: var(--fpe-font-size-small);
    font-weight: var(--fpe-weight-bold);
    color: #5c8f00;
    text-transform: uppercase;
    letter-spacing: .01em;
}

/* Stránkový hero: na zelené ploše bílá, ne modrá */
.page-hero {
    background: var(--fpe-green-main);
}

.page-hero h1,
.page-hero .kicker,
.page-hero p,
.page-hero a {
    color: #fff !important;
}

/* Když je zelený pruh jen header stránky, nepřebarvovat pod ním karty */
.page-hero + *,
.pattern-hero + * {
    color: inherit;
}

/* Méně přerostlé titulky v heru */
.page-hero h1 {
    max-width: 1120px;
    font-weight: var(--fpe-weight-bold);
}

.page-hero .kicker,
.issue-title .kicker,
.kicker,
.fpe-kicker {
    font-weight: var(--fpe-weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* Sjednocení textu v menu */
.site-header,
.site-header a,
.main-navigation a {
    font-family: var(--fpe-font-family);
}

.main-navigation a,
.site-header nav a {
    font-size: 14px;
    font-weight: var(--fpe-weight-bold);
    letter-spacing: .02em;
}

/* Sjednocení textu ve footeru */
.fpe-footer-inner {
    font-size: var(--fpe-font-size-small);
    line-height: 1.35;
}

.fpe-footer-inner a,
.fpe-footer-inner span {
    font-size: var(--fpe-font-size-small);
}

/* Na úzkých displejích držet jednu čitelnou škálu */
@media (max-width: 760px) {
    :root {
        --fpe-font-size-body: 15.5px;
        --fpe-h1: clamp(2rem, 11vw, 3rem);
        --fpe-h2: 1.55rem;
        --fpe-h3: 1.22rem;
    }

    .page-hero,
    .issue-title {
        padding-top: 38px;
        padding-bottom: 42px;
    }
}


/* =========================================================
   FPE Komunikace v4.0 — finální sjednocující design system
   Tato vrstva je záměrně na konci souboru a přepisuje starší
   rozdílné styly modulů.
   ========================================================= */

:root {
    --fpe-ds-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;

    --fpe-ds-green: #8abd24;
    --fpe-ds-green-dark: #5f8f08;
    --fpe-ds-blue: #005a9c;
    --fpe-ds-blue-dark: #123d63;
    --fpe-ds-text: #314a5f;
    --fpe-ds-muted: #637789;
    --fpe-ds-bg: #edf4f9;
    --fpe-ds-surface: #ffffff;
    --fpe-ds-border: rgba(18, 61, 99, .12);

    --fpe-ds-container: 1120px;
    --fpe-ds-radius: 0px;
    --fpe-ds-shadow: 0 10px 26px rgba(18, 61, 99, .06);

    --fpe-ds-text-size: 16px;
    --fpe-ds-small-size: 14px;
    --fpe-ds-meta-size: 13px;

    --fpe-ds-h1: clamp(2.4rem, 4vw, 4.4rem);
    --fpe-ds-h2: clamp(1.75rem, 2.4vw, 2.55rem);
    --fpe-ds-h3: clamp(1.2rem, 1.45vw, 1.45rem);
    --fpe-ds-h4: 1.05rem;

    --fpe-ds-space-1: .5rem;
    --fpe-ds-space-2: 1rem;
    --fpe-ds-space-3: 1.5rem;
    --fpe-ds-space-4: 2rem;
    --fpe-ds-space-5: 3rem;
    --fpe-ds-space-6: 4rem;
}

/* Základní rytmus a písmo */
html {
    font-size: var(--fpe-ds-text-size);
}

body {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-text-size);
    line-height: 1.55;
    font-weight: 400;
    color: var(--fpe-ds-text);
    background: var(--fpe-ds-bg);
    -webkit-font-smoothing: antialiased;
    text-rendering: auto;
}

body,
button,
input,
select,
textarea {
    font-family: var(--fpe-ds-font) !important;
}

p,
li,
td,
th,
blockquote,
figcaption,
.entry-content,
.page-content,
.post-content,
.content-panel,
.wp-block-paragraph,
.home-card,
.brandcloud-card,
.event-card,
.archive-item,
.issue-item,
.issue-item-content,
.issue-archive-card,
.fpe-card,
.fpe-panel,
.fpe-box,
.fpe-module,
.fpe-quicklink,
.fpe-contact-card,
.fpe-faq-item {
    font-size: var(--fpe-ds-text-size) ;
    line-height: 1.55;
    font-weight: 400;
    color: var(--fpe-ds-text);
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

small,
.meta,
.kicker,
.fpe-kicker,
.event-date,
.google-event-date,
.issue-archive-card__date,
.fpe-label,
.fpe-badge,
.fpe-chip,
.fpe-tag,
.fpe-pill,
.badge,
.tag,
.link-more {
    font-size: var(--fpe-ds-small-size) ;
    line-height: 1.35;
}

/* Jednotná škála nadpisů */
h1,
.page-title,
.entry-title,
.page-hero h1,
.issue-title h1 {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h1) ;
    line-height: .98 !important;
    letter-spacing: -0.035em;
    font-weight: 700 !important;
    color: var(--fpe-ds-blue-dark);
    margin-top: 0;
    margin-bottom: .8rem;
}

h2,
.front-section-title,
.home-section-title,
.section-title,
.news-title,
.events-title,
.latest-news h2,
.upcoming-events h2,
.home-news h2,
.home-events h2,
.front-news h2,
.front-events h2,
.wp-block-heading.is-style-section-title {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h2) ;
    line-height: 1.08 !important;
    letter-spacing: -0.026em;
    font-weight: 600 !important;
    color: var(--fpe-ds-blue-dark);
    margin-top: 0;
    margin-bottom: 1rem;
}

h3,
.home-card h3,
.brandcloud-card h3,
.event-card h3,
.archive-item h2,
.issue-item h3,
.issue-archive-card h3,
.fpe-card h3,
.fpe-panel h3 {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h3) ;
    line-height: 1.18 !important;
    letter-spacing: -0.012em;
    font-weight: 700 !important;
    color: var(--fpe-ds-blue-dark);
    margin-top: 0;
    margin-bottom: .65rem;
}

h4,
h5,
h6 {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h4) ;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: var(--fpe-ds-blue-dark);
    margin-top: 0;
    margin-bottom: .65rem;
}

strong,
b {
    font-weight: 700 !important;
}

em,
i {
    font-style: italic;
    font-weight: inherit !important;
}

/* Kontejnery a rozestupy */
.site-main,
main,
.content-wrap,
.page-content,
.entry-content {
    width: 100%;
}

.content-wrap,
.page-content > *,
.entry-content > *,
.wp-block-group:not(.alignfull),
.wp-block-columns:not(.alignfull),
.brandcloud-grid,
.event-list,
.issue-archive-module,
.archive-list {
    max-width: var(--fpe-ds-container);
    margin-left: auto;
    margin-right: auto;
}

.content-wrap {
    padding-top: var(--fpe-ds-space-5);
    padding-bottom: var(--fpe-ds-space-5);
}

.wp-block-group,
.wp-block-columns,
.home-section,
.front-section,
.latest-news,
.upcoming-events,
.home-news,
.home-events {
    margin-top: 0;
    margin-bottom: var(--fpe-ds-space-4);
}

/* Header */
.site-header,
header.site-header {
    background: #fff;
    border-bottom: 1px solid rgba(18, 61, 99, .07);
}

.site-header a,
.main-navigation a,
.site-header nav a {
    font-size: 14px ;
    line-height: 1.2;
    font-weight: 700 !important;
    letter-spacing: .02em;
    color: var(--fpe-ds-green-dark);
}

.site-header .site-description,
.site-header .site-title,
.site-header .custom-logo-link + *,
.site-branding {
    font-weight: 400 !important;
}

/* Hero bloky: jednotné, moderní, čitelné */
.page-hero,
.pattern-hero,
.issue-title {
    background: var(--fpe-ds-green) !important;
    color: #fff !important;
    padding-top: clamp(3rem, 6vw, 5.5rem) !important;
    padding-bottom: clamp(3rem, 6vw, 5.5rem) !important;
    margin-bottom: var(--fpe-ds-space-5) !important;
    position: relative;
    overflow: hidden;
}

.page-hero::after,
.pattern-hero::after,
.issue-title::after {
    content: "";
    position: absolute;
    right: -7vw;
    top: -16vw;
    width: min(42vw, 560px);
    height: min(42vw, 560px);
    background: rgba(255,255,255,.18);
    transform: rotate(18deg);
    pointer-events: none;
}

.page-hero > *,
.pattern-hero > *,
.issue-title > *,
.issue-title__inner {
    position: relative;
    z-index: 1;
    max-width: var(--fpe-ds-container);
    margin-left: auto;
    margin-right: auto;
}

.page-hero h1,
.pattern-hero h1,
.issue-title h1,
.page-hero h2,
.pattern-hero h2,
.issue-title h2,
.page-hero p,
.pattern-hero p,
.issue-title p,
.page-hero a,
.pattern-hero a,
.issue-title a,
.page-hero .kicker,
.pattern-hero .kicker,
.issue-title .kicker {
    color: #fff !important;
}

.page-hero h1,
.pattern-hero h1,
.issue-title h1 {
    max-width: 760px;
    margin-left: 0;
}

.page-hero .kicker,
.pattern-hero .kicker,
.issue-title .kicker,
.kicker,
.fpe-kicker {
    display: block;
    font-size: var(--fpe-ds-meta-size) ;
    line-height: 1.35;
    font-weight: 700 !important;
    letter-spacing: .085em;
    text-transform: uppercase;
    margin-bottom: .8rem;
}

/* Zelený podklad vždy bílý text */
.has-fpe-green-background-color,
.has-background.has-fpe-green-background-color,
.wp-block-cover.has-fpe-green-background-color,
.wp-block-group.has-fpe-green-background-color,
.issue-section-hero.green,
.visual-tile,
.access-panel--employee,
.access-panel--student,
.notice-green,
.bg-green,
.fpe-bg-green,
[style*="background:#8abd24"],
[style*="background: #8abd24"],
[style*="background-color:#8abd24"],
[style*="background-color: #8abd24"],
[style*="background:var(--fpe-green"],
[style*="background: var(--fpe-green"],
[style*="background-color:var(--fpe-green"],
[style*="background-color: var(--fpe-green"] {
    color: #fff !important;
}

.has-fpe-green-background-color *,
.has-background.has-fpe-green-background-color *,
.wp-block-cover.has-fpe-green-background-color *,
.wp-block-group.has-fpe-green-background-color *,
.issue-section-hero.green *,
.visual-tile *,
.access-panel--employee *,
.access-panel--student *,
.notice-green *,
.bg-green *,
.fpe-bg-green *,
[style*="background:#8abd24"] *,
[style*="background: #8abd24"] *,
[style*="background-color:#8abd24"] *,
[style*="background-color: #8abd24"] *,
[style*="background:var(--fpe-green"] *,
[style*="background: var(--fpe-green"] *,
[style*="background-color:var(--fpe-green"] *,
[style*="background-color: var(--fpe-green"] * {
    color: #fff !important;
}

/* Karty a moduly: jeden vizuální jazyk */
.home-card,
.brandcloud-card,
.event-card,
.archive-item,
.issue-archive-card,
.fpe-card,
.fpe-panel,
.fpe-box,
.fpe-module,
.fpe-quicklink,
.fpe-contact-card,
.fpe-faq-item,
.content-panel,
.notice-box {
    background: var(--fpe-ds-surface) !important;
    color: var(--fpe-ds-text) !important;
    border: 1px solid var(--fpe-ds-border) !important;
    border-top: 6px solid var(--fpe-ds-green) !important;
    border-radius: var(--fpe-ds-radius) !important;
    box-shadow: var(--fpe-ds-shadow) !important;
    padding: var(--fpe-ds-space-3) !important;
}

.brandcloud-card,
.event-card,
.issue-archive-card {
    padding: 0 0 var(--fpe-ds-space-3) !important;
    overflow: hidden;
}

.brandcloud-card > *:not(a:first-child):not(img),
.event-card > *:not(a:first-child):not(img),
.issue-archive-card > * {
    margin-left: var(--fpe-ds-space-3);
    margin-right: var(--fpe-ds-space-3);
}

.brandcloud-card img,
.event-card img,
.home-card img,
.issue-archive-card img {
    display: block;
    width: 100%;
    height: auto;
}

.brandcloud-card img {
    aspect-ratio: 1.55 / 1;
    object-fit: cover;
}

.brandcloud-card h3,
.event-card h3,
.issue-archive-card h3 {
    margin-top: var(--fpe-ds-space-3);
}

.brandcloud-card p,
.event-card p,
.issue-archive-card p,
.home-card p,
.archive-item p {
    color: var(--fpe-ds-muted) !important;
    margin-bottom: 1rem;
}

/* Gridy: sjednocené rozložení */
.brandcloud-grid,
.issue-archive-module,
.event-list,
.archive-list {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    gap: var(--fpe-ds-space-3) !important;
}

.home-grid,
.cards-grid,
.fpe-grid,
.quicklinks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    gap: var(--fpe-ds-space-3);
}

/* Odkazy, CTA a tlačítka */
a {
    color: var(--fpe-ds-blue);
}

.link-more,
.brandcloud-card .link-more,
.issue-archive-card .link-more,
.archive-item .link-more {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: var(--fpe-ds-small-size) ;
    font-weight: 700 !important;
    color: var(--fpe-ds-green-dark) !important;
    text-transform: uppercase;
    letter-spacing: .025em;
    text-decoration: none;
}

.link-more:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.btn,
.fpe-btn,
.fpe-button,
.button.fpe-button,
.fpe-cta,
.wp-block-button__link,
button,
input[type="submit"] {
    border-radius: 0 !important;
    background: var(--fpe-ds-green) !important;
    color: #fff !important;
    border: 0 !important;
    font-size: var(--fpe-ds-small-size) ;
    line-height: 1.2;
    font-weight: 700 !important;
    letter-spacing: .02em;
    padding: .78rem 1.1rem !important;
    text-decoration: none !important;
}

.btn:hover,
.fpe-btn:hover,
.fpe-button:hover,
.wp-block-button__link:hover {
    background: var(--fpe-ds-green-dark) !important;
    color: #fff !important;
}

/* Upozornění a zvýrazněné obsahové bloky */
.notice-box,
.fpe-notice,
.fpe-current-notice {
    background: #fff !important;
    border-left: 6px solid var(--fpe-ds-green) !important;
    border-top: 1px solid var(--fpe-ds-border) !important;
}

/* Newsletter detail */
.issue-page {
    background: var(--fpe-ds-bg) !important;
}

.issue-section {
    max-width: var(--fpe-ds-container) !important;
    margin: 0 auto var(--fpe-ds-space-5) !important;
    background: transparent !important;
}

.issue-section-hero {
    min-height: 210px;
    height: auto !important;
    padding: var(--fpe-ds-space-4) !important;
    display: flex;
    align-items: flex-end;
    background-size: cover;
    background-position: center;
}

.issue-section-hero h2 {
    color: #fff !important;
    font-size: var(--fpe-ds-h2) ;
    font-weight: 600 !important;
}

.issue-section-body {
    max-width: 820px !important;
    margin: var(--fpe-ds-space-4) auto 0 !important;
    background: #fff;
    border: 1px solid var(--fpe-ds-border);
    box-shadow: var(--fpe-ds-shadow);
    padding: var(--fpe-ds-space-4);
}

.issue-item {
    margin-bottom: var(--fpe-ds-space-4) !important;
}

.issue-item + .issue-item {
    border-top: 1px solid var(--fpe-ds-border) !important;
    padding-top: var(--fpe-ds-space-4) !important;
}

.issue-green-mark {
    width: 28px;
    height: 5px;
    background: var(--fpe-ds-green);
    margin-top: var(--fpe-ds-space-3);
}

/* Footer: držet kompaktní */
.fpe-site-footer {
    background: #fff !important;
    border-top: 1px solid var(--fpe-ds-border);
}

.fpe-footer-inner {
    max-width: var(--fpe-ds-container) !important;
    min-height: 64px !important;
    font-size: var(--fpe-ds-small-size) ;
}

.fpe-footer-inner a,
.fpe-footer-inner span {
    font-size: var(--fpe-ds-small-size) ;
    font-weight: 600 !important;
}

/* Skrytí WP admin baru / login stavu v headeru */
#wpadminbar {
    display: none !important;
}

html,
body.admin-bar {
    margin-top: 0 !important;
}

.site-header .avatar,
.site-header .display-name,
.site-header .username,
.site-header .user-display-name,
.site-header .wp-user,
.site-header .wp-login,
.site-header .login-username,
.site-header .logged-in-as,
.site-header .edit-link,
header .avatar,
header .display-name,
header .username,
header .user-display-name,
header .wp-user,
header .wp-login,
header .login-username,
header .logged-in-as,
header .edit-link {
    display: none !important;
}

/* Tvrdé sjednocení starých inline/legacy rozdílů */
[style*="font-size"] {
    font-family: var(--fpe-ds-font) !important;
}

[style*="font-weight:800"],
[style*="font-weight: 800"],
[style*="font-weight:900"],
[style*="font-weight: 900"] {
    font-weight: 700 !important;
}

/* Responzivita */
@media (max-width: 980px) {
    :root {
        --fpe-ds-text-size: 15.5px;
        --fpe-ds-h1: clamp(2.15rem, 9vw, 3.2rem);
        --fpe-ds-h2: clamp(1.55rem, 6vw, 2.05rem);
        --fpe-ds-h3: 1.2rem;
    }

    .content-wrap {
        padding-top: var(--fpe-ds-space-4);
        padding-bottom: var(--fpe-ds-space-4);
    }

    .brandcloud-grid,
    .issue-archive-module,
    .event-list,
    .archive-list {
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }

    .issue-section-body {
        padding: var(--fpe-ds-space-3);
    }
}

@media (max-width: 640px) {
    .brandcloud-grid,
    .issue-archive-module,
    .event-list,
    .archive-list,
    .home-grid,
    .cards-grid,
    .fpe-grid,
    .quicklinks-grid {
        grid-template-columns: 1fr !important;
    }

    .page-hero,
    .pattern-hero,
    .issue-title {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .fpe-footer-inner {
        grid-template-columns: 1fr !important;
        gap: .55rem !important;
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .fpe-footer-links,
    .fpe-footer-user,
    .fpe-footer-legal {
        justify-content: flex-start !important;
    }
}


/* =========================================================
   FPE Komunikace v4.1 — opravy úvodky, akcí, checklistů a Brandcloudu
   ========================================================= */

/* 1) Zelené dlaždice: hover opraven ve v4.2 */

/* 2) Sjednocení nadpisů Co je nového / Nejbližší akce */
.home-news h2,
.home-events h2,
.latest-news h2,
.upcoming-events h2,
.front-news h2,
.front-events h2,
.home-section h2,
.front-section h2 {
    font-size: var(--fpe-ds-h2) ;
    line-height: 1.08 !important;
    letter-spacing: -0.026em !important;
    font-weight: 600 !important;
    color: var(--fpe-ds-blue-dark) !important;
}

/* Pojistka proti starším explicitním strong/b v titulku sekcí */
.home-news h2 strong,
.home-events h2 strong,
.latest-news h2 strong,
.upcoming-events h2 strong,
.front-news h2 strong,
.front-events h2 strong {
    font-weight: 600 !important;
}

/* 3) Akce: sjednocení stránky /akce i dlaždice */
a[href="/akce"],
a[href="/akce/"],
.home-card a[href*="/akce"],
.visual-tile a[href*="/akce"] {
    cursor: pointer;
}

body.page .event-list,
body.page .events-list,
body.page .wp-block-query .wp-block-post-template,
.page-akce .event-list,
.page-akce .events-list {
    max-width: var(--fpe-ds-container);
    margin-left: auto;
    margin-right: auto;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: var(--fpe-ds-space-3);
}

body.page .event-card,
body.page .akce-card,
body.page .wp-block-post,
.page-akce .event-card,
.page-akce .akce-card {
    background: #fff !important;
    border: 1px solid var(--fpe-ds-border) !important;
    border-top: 6px solid var(--fpe-ds-green) !important;
    box-shadow: var(--fpe-ds-shadow) !important;
    padding: var(--fpe-ds-space-3) !important;
}

body.page .event-card h2,
body.page .event-card h3,
body.page .akce-card h2,
body.page .akce-card h3,
body.page .wp-block-post-title,
.page-akce .event-card h2,
.page-akce .event-card h3 {
    font-size: var(--fpe-ds-h3) ;
    line-height: 1.18 !important;
    font-weight: 700 !important;
    color: var(--fpe-ds-blue-dark) !important;
}

body.page .event-card p,
body.page .akce-card p,
body.page .wp-block-post-excerpt,
.page-akce .event-card p {
    font-size: var(--fpe-ds-text-size) ;
    line-height: 1.55 !important;
    color: var(--fpe-ds-text) !important;
}

/* 4) Checklisty: vrácení čitelného modulu, který design-system nerozbije */
.checklist,
.fpe-checklist,
.wp-block-list.checklist,
.wp-block-group.checklist,
.wp-block-group.fpe-checklist,
.checklist-box,
.fpe-checklist-box,
.todo-list,
.fpe-todo-list {
    max-width: var(--fpe-ds-container);
    margin: var(--fpe-ds-space-3) auto;
    background: #fff !important;
    border: 1px solid var(--fpe-ds-border) !important;
    border-left: 6px solid var(--fpe-ds-green) !important;
    border-top: 1px solid var(--fpe-ds-border) !important;
    box-shadow: var(--fpe-ds-shadow) !important;
    padding: var(--fpe-ds-space-3) !important;
    color: var(--fpe-ds-text) !important;
}

.checklist *,
.fpe-checklist *,
.checklist-box *,
.fpe-checklist-box *,
.todo-list *,
.fpe-todo-list * {
    color: var(--fpe-ds-text) !important;
}

.checklist h2,
.checklist h3,
.fpe-checklist h2,
.fpe-checklist h3,
.checklist-box h2,
.checklist-box h3,
.fpe-checklist-box h2,
.fpe-checklist-box h3 {
    color: var(--fpe-ds-blue-dark) !important;
}

.checklist ul,
.fpe-checklist ul,
.checklist-box ul,
.fpe-checklist-box ul,
.todo-list ul,
.fpe-todo-list ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.checklist li,
.fpe-checklist li,
.checklist-box li,
.fpe-checklist-box li,
.todo-list li,
.fpe-todo-list li {
    position: relative;
    padding: .7rem 0 .7rem 2rem;
    border-bottom: 1px solid rgba(18,61,99,.08);
}

.checklist li:last-child,
.fpe-checklist li:last-child,
.checklist-box li:last-child,
.fpe-checklist-box li:last-child,
.todo-list li:last-child,
.fpe-todo-list li:last-child {
    border-bottom: 0;
}

.checklist li::before,
.fpe-checklist li::before,
.checklist-box li::before,
.fpe-checklist-box li::before,
.todo-list li::before,
.fpe-todo-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: .7rem;
    width: 1.2rem;
    height: 1.2rem;
    display: inline-grid;
    place-items: center;
    background: var(--fpe-ds-green);
    color: #fff !important;
    font-size: .8rem;
    font-weight: 700;
}

/* 5) Brandcloud: hero bílý text. Obsah stránky se už neschovává, aby jej šlo spravovat ve WordPressu. */

/* Brandcloud karty ponechat jednotné */
.brandcloud-grid {
    margin-top: var(--fpe-ds-space-3);
}

.brandcloud-card {
    min-height: 100%;
}

/* Pojistka: žádný modrý text přímo na zeleném heru */
.page-hero > *,
.page-hero .page-title,
.page-hero .entry-title,
.pattern-hero > *,
.issue-title > * {
    color: #fff !important;
}


/* =========================================================
   FPE Komunikace v4.2 — přesné opravy úvodky a permalinks UX
   ========================================================= */

/* 1) Hover zelených dlaždic pouze na konkrétní dlaždici, ne na celý blok/sekci.
   Záměrně necílíme na obecné .wp-block-group.visual-tile:hover, protože to mohlo
   trefit i nadřazený wrapper a vybílit celý blok. */
.tile-columns > .wp-block-column > .visual-tile:hover,
.front-access-columns > .wp-block-column > .access-panel:hover,
.home-grid > .home-card.visual-tile:hover,
.cards-grid > .visual-tile:hover,
.fpe-grid > .visual-tile:hover,
.quicklinks-grid > .visual-tile:hover {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-blue-dark) !important;
    border-color: rgba(18,61,99,.14) !important;
}

.tile-columns > .wp-block-column > .visual-tile:hover *,
.front-access-columns > .wp-block-column > .access-panel:hover *,
.home-grid > .home-card.visual-tile:hover *,
.cards-grid > .visual-tile:hover *,
.fpe-grid > .visual-tile:hover *,
.quicklinks-grid > .visual-tile:hover * {
    color: var(--fpe-ds-blue-dark) !important;
}

.tile-columns > .wp-block-column > .visual-tile:hover a,
.front-access-columns > .wp-block-column > .access-panel:hover a,
.home-grid > .home-card.visual-tile:hover a,
.cards-grid > .visual-tile:hover a,
.fpe-grid > .visual-tile:hover a,
.quicklinks-grid > .visual-tile:hover a {
    color: var(--fpe-ds-green-dark) !important;
}

/* Nadřazené bloky nesmí na hover měnit pozadí. */
.tile-columns:hover,
.front-access-columns:hover,
.home-grid:hover,
.cards-grid:hover,
.fpe-grid:hover,
.quicklinks-grid:hover,
.wp-block-columns:hover,
.wp-block-group:hover {
    background-color: inherit;
}

/* Pokud starší pravidla nastavila wrapperu bílé pozadí přes :hover, vrátíme mu původní stav. */
.wp-block-columns.tile-columns:hover,
.wp-block-columns.front-access-columns:hover {
    background: transparent !important;
}

/* 2) Co je nového / Nejbližší akce: úplně stejný řez, velikost i vykreslení.
   Problém často vzniká tím, že jeden nadpis má v HTML <strong> nebo jinou třídu. */
.home-news h2,
.home-events h2,
.latest-news h2,
.upcoming-events h2,
.front-news h2,
.front-events h2,
.home-section--news h2,
.home-section--events h2,
section[aria-label="Co je nového"] h2,
section[aria-label="Nejbližší akce"] h2 {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h2) ;
    line-height: 1.08 !important;
    letter-spacing: -0.026em !important;
    font-weight: 600 !important;
    font-variation-settings: "wght" 600 !important;
    color: var(--fpe-ds-blue-dark) !important;
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricPrecision;
}

.home-news h2 *,
.home-events h2 *,
.latest-news h2 *,
.upcoming-events h2 *,
.front-news h2 *,
.front-events h2 *,
.home-section--news h2 *,
.home-section--events h2 *,
section[aria-label="Co je nového"] h2 *,
section[aria-label="Nejbližší akce"] h2 * {
    font: inherit !important;
    font-weight: inherit !important;
    font-variation-settings: inherit !important;
    color: inherit !important;
    letter-spacing: inherit !important;
}

/* Pojistka pro běžné textové nadpisy na úvodce, i když nemají specifické třídy. */
.front-page h2,
.home h2,
body.home main h2 {
    font-family: var(--fpe-ds-font) !important;
    font-weight: 600 !important;
    font-variation-settings: "wght" 600 !important;
}

.front-page h2 strong,
.home h2 strong,
body.home main h2 strong,
.front-page h2 b,
.home h2 b,
body.home main h2 b {
    font-weight: 600 !important;
    font-variation-settings: "wght" 600 !important;
}

/* 3) Dlaždice Akce na úvodce — vizuální pojistka pro odkazy na /akce/ */
a[href="/akce"],
a[href="/akce/"],
a[href$="/akce"],
a[href$="/akce/"] {
    text-decoration-thickness: 1px;
}

/* 4) Stránka /akce — jednotnější, i když je vytvořená ručně ve WordPress editoru */
body.page-slug-akce .entry-content > *,
body.page-id-akce .entry-content > *,
body[class*="akce"] .entry-content > .wp-block-group,
body[class*="akce"] .entry-content > .wp-block-columns,
body[class*="akce"] .entry-content > .wp-block-query {
    max-width: var(--fpe-ds-container);
    margin-left: auto;
    margin-right: auto;
}

body[class*="akce"] .wp-block-query .wp-block-post-template,
body[class*="akce"] .wp-block-latest-posts,
body[class*="akce"] .event-list,
body[class*="akce"] .events-list {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: var(--fpe-ds-space-3);
    padding-left: 0;
    list-style: none;
}

body[class*="akce"] .wp-block-query .wp-block-post,
body[class*="akce"] .wp-block-latest-posts li,
body[class*="akce"] .event-card,
body[class*="akce"] .akce-card {
    background: #fff !important;
    border: 1px solid var(--fpe-ds-border) !important;
    border-top: 6px solid var(--fpe-ds-green) !important;
    box-shadow: var(--fpe-ds-shadow) !important;
    padding: var(--fpe-ds-space-3) !important;
}

body[class*="akce"] .wp-block-post-title,
body[class*="akce"] .wp-block-post-title a,
body[class*="akce"] .event-card h2,
body[class*="akce"] .event-card h3,
body[class*="akce"] .akce-card h2,
body[class*="akce"] .akce-card h3 {
    font-family: var(--fpe-ds-font) !important;
    font-size: var(--fpe-ds-h3) ;
    line-height: 1.18 !important;
    font-weight: 700 !important;
    color: var(--fpe-ds-blue-dark) !important;
    text-decoration: none;
}

/* 5) Brandcloud hero pojistka — jakýkoliv nadpis na zeleném heru musí být bílý */
body[class*="brandcloud"] .page-hero,
body[class*="brandcloud"] .pattern-hero,
.post-type-archive-brand_asset .page-hero {
    background: var(--fpe-ds-green) !important;
}

body[class*="brandcloud"] .page-hero *,
body[class*="brandcloud"] .pattern-hero *,
.post-type-archive-brand_asset .page-hero * {
    color: #fff !important;
    font-family: var(--fpe-ds-font) !important;
}

/* 6) Checklisty — zabránit dědění bílého textu z případných zelených wrapperů mimo samotnou ikonu */
.checklist,
.fpe-checklist,
.checklist-box,
.fpe-checklist-box,
.todo-list,
.fpe-todo-list {
    background: #fff !important;
    color: var(--fpe-ds-text) !important;
}

.checklist :not(li::before),
.fpe-checklist :not(li::before),
.checklist-box :not(li::before),
.fpe-checklist-box :not(li::before),
.todo-list :not(li::before),
.fpe-todo-list :not(li::before) {
    color: var(--fpe-ds-text) !important;
}


/* =========================================================
   FPE Komunikace v4.3 — hero, hover dlaždic, Brandcloud stránka
   ========================================================= */

/* Menší a klidnější hero bannery napříč webem */
:root {
    --fpe-ds-h1: clamp(2rem, 3.2vw, 3.45rem);
    --fpe-ds-h2: clamp(1.55rem, 2.15vw, 2.2rem);
}

.page-hero,
.pattern-hero,
.issue-title {
    padding-top: clamp(2.25rem, 4.2vw, 4.1rem) !important;
    padding-bottom: clamp(2.25rem, 4.2vw, 4.1rem) !important;
    margin-bottom: var(--fpe-ds-space-4) !important;
}

.page-hero h1,
.pattern-hero h1,
.issue-title h1 {
    font-size: var(--fpe-ds-h1) ;
    line-height: 1.02 !important;
    letter-spacing: -0.032em !important;
}

/* Hover zelených dlaždic: pouze daná dlaždice, nadpis zelený, text modrý */
.tile-columns > .wp-block-column > .visual-tile:hover,
.front-access-columns > .wp-block-column > .access-panel:hover,
.home-grid > .home-card.visual-tile:hover,
.cards-grid > .visual-tile:hover,
.fpe-grid > .visual-tile:hover,
.quicklinks-grid > .visual-tile:hover {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text) !important;
    border-color: rgba(18,61,99,.14) !important;
}

.tile-columns > .wp-block-column > .visual-tile:hover h1,
.tile-columns > .wp-block-column > .visual-tile:hover h2,
.tile-columns > .wp-block-column > .visual-tile:hover h3,
.tile-columns > .wp-block-column > .visual-tile:hover h4,
.front-access-columns > .wp-block-column > .access-panel:hover h1,
.front-access-columns > .wp-block-column > .access-panel:hover h2,
.front-access-columns > .wp-block-column > .access-panel:hover h3,
.front-access-columns > .wp-block-column > .access-panel:hover h4,
.home-grid > .home-card.visual-tile:hover h1,
.home-grid > .home-card.visual-tile:hover h2,
.home-grid > .home-card.visual-tile:hover h3,
.home-grid > .home-card.visual-tile:hover h4,
.cards-grid > .visual-tile:hover h1,
.cards-grid > .visual-tile:hover h2,
.cards-grid > .visual-tile:hover h3,
.cards-grid > .visual-tile:hover h4,
.fpe-grid > .visual-tile:hover h1,
.fpe-grid > .visual-tile:hover h2,
.fpe-grid > .visual-tile:hover h3,
.fpe-grid > .visual-tile:hover h4,
.quicklinks-grid > .visual-tile:hover h1,
.quicklinks-grid > .visual-tile:hover h2,
.quicklinks-grid > .visual-tile:hover h3,
.quicklinks-grid > .visual-tile:hover h4 {
    color: var(--fpe-ds-green-dark) !important;
}

.tile-columns > .wp-block-column > .visual-tile:hover p,
.tile-columns > .wp-block-column > .visual-tile:hover li,
.tile-columns > .wp-block-column > .visual-tile:hover span,
.front-access-columns > .wp-block-column > .access-panel:hover p,
.front-access-columns > .wp-block-column > .access-panel:hover li,
.front-access-columns > .wp-block-column > .access-panel:hover span,
.home-grid > .home-card.visual-tile:hover p,
.home-grid > .home-card.visual-tile:hover li,
.home-grid > .home-card.visual-tile:hover span,
.cards-grid > .visual-tile:hover p,
.cards-grid > .visual-tile:hover li,
.cards-grid > .visual-tile:hover span,
.fpe-grid > .visual-tile:hover p,
.fpe-grid > .visual-tile:hover li,
.fpe-grid > .visual-tile:hover span,
.quicklinks-grid > .visual-tile:hover p,
.quicklinks-grid > .visual-tile:hover li,
.quicklinks-grid > .visual-tile:hover span {
    color: var(--fpe-ds-text) !important;
}

.tile-columns > .wp-block-column > .visual-tile:hover a,
.front-access-columns > .wp-block-column > .access-panel:hover a,
.home-grid > .home-card.visual-tile:hover a,
.cards-grid > .visual-tile:hover a,
.fpe-grid > .visual-tile:hover a,
.quicklinks-grid > .visual-tile:hover a {
    color: var(--fpe-ds-green-dark) !important;
}

/* Přepsání staršího pravidla zelený podklad = bílý text právě při hoveru */
.tile-columns > .wp-block-column > .visual-tile:hover *,
.front-access-columns > .wp-block-column > .access-panel:hover *,
.home-grid > .home-card.visual-tile:hover *,
.cards-grid > .visual-tile:hover *,
.fpe-grid > .visual-tile:hover *,
.quicklinks-grid > .visual-tile:hover * {
    text-shadow: none !important;
}

/* Brandcloud: text hera bílý, ale obsah stránky už neschovávat.
   Vlastní texty se řeší ručně ve WordPress stránce + shortcode [fpe_brandcloud]. */
body[class*="brandcloud"] .page-hero *,
body[class*="brandcloud"] .pattern-hero *,
.post-type-archive-brand_asset .page-hero *,
.post-type-archive-brand_asset .pattern-hero * {
    color: #fff !important;
}

body[class*="brandcloud"] .content-panel:first-child,
body[class*="brandcloud"] .wp-block-group:first-child,
.page-brandcloud .content-panel:first-child,
.page-brandcloud .wp-block-group:first-child {
    display: revert !important;
}

/* Brandcloud filtr */
.fpe-brandcloud-filter {
    max-width: var(--fpe-ds-container);
    margin: 0 auto var(--fpe-ds-space-3);
    background: #fff;
    border: 1px solid var(--fpe-ds-border);
    border-left: 6px solid var(--fpe-ds-green);
    box-shadow: var(--fpe-ds-shadow);
    padding: 1rem 1.25rem;
}

.fpe-brandcloud-filter__title {
    display: block;
    font-size: var(--fpe-ds-small-size);
    font-weight: 700;
    color: var(--fpe-ds-blue-dark);
    margin-bottom: .6rem;
}

.fpe-brandcloud-filter__options {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem .8rem;
}

.fpe-brandcloud-filter label {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-size: var(--fpe-ds-small-size);
    color: var(--fpe-ds-text);
    cursor: pointer;
}

.fpe-brandcloud-filter input[type="checkbox"] {
    accent-color: var(--fpe-ds-green);
}

.fpe-brandcloud-card.is-hidden-by-filter {
    display: none !important;
}

/* Fallback: když nejsou typy, filtr se nezobrazí a grid se chová normálně */
.fpe-brandcloud-grid {
    margin-top: var(--fpe-ds-space-3);
}


/* =========================================================
   FPE Komunikace v4.4 — Brandcloud jako běžná stránka + hero fix
   ========================================================= */

/* Nejsilnější pojistka: v zeleném/hero banneru vždy bílý text */
.page-hero,
.pattern-hero,
.archive-hero,
.hero,
.hero-section,
.entry-header.hero,
.site-main > header,
main > header {
    color: #fff;
}

.page-hero h1,
.page-hero h2,
.page-hero h3,
.page-hero p,
.page-hero a,
.page-hero span,
.pattern-hero h1,
.pattern-hero h2,
.pattern-hero h3,
.pattern-hero p,
.pattern-hero a,
.pattern-hero span,
.archive-hero h1,
.archive-hero h2,
.archive-hero h3,
.archive-hero p,
.archive-hero a,
.archive-hero span,
.hero h1,
.hero h2,
.hero h3,
.hero p,
.hero a,
.hero span,
.hero-section h1,
.hero-section h2,
.hero-section h3,
.hero-section p,
.hero-section a,
.hero-section span,
.entry-header.hero h1,
.entry-header.hero h2,
.entry-header.hero p,
.site-main > header h1,
.site-main > header h2,
.site-main > header p,
main > header h1,
main > header h2,
main > header p {
    color: #fff !important;
}

/* Pokud je hero zelené přes inline styl nebo starší proměnné, také vše bílé */
[style*="#8abd24"] h1,
[style*="#8abd24"] h2,
[style*="#8abd24"] h3,
[style*="#8abd24"] p,
[style*="#8abd24"] a,
[style*="#8abd24"] span,
[style*="--fpe-green"] h1,
[style*="--fpe-green"] h2,
[style*="--fpe-green"] h3,
[style*="--fpe-green"] p,
[style*="--fpe-green"] a,
[style*="--fpe-green"] span {
    color: #fff !important;
}

/* Brandcloud stránka se má chovat jako běžná WP stránka. Staré archivní intro bloky se nemají vnucovat. */
.post-type-archive-brand_asset .content-panel:first-child,
.post-type-archive-brand_asset .wp-block-group:first-child,
.post-type-archive-brand_asset .archive-description,
.post-type-archive-brand_asset .page-description {
    display: none !important;
}

/* Když uživatel vytvoří stránku se slugem brandcloud, její obsah se nesmí skrývat. */
body.page .entry-content .fpe-brandcloud-filter,
body.page .entry-content .fpe-brandcloud-grid,
body.page .entry-content .brandcloud-grid {
    display: grid;
}

body.page .entry-content .fpe-brandcloud-filter {
    display: block;
}


/* =========================================================
   FPE Komunikace v4.7 — oprava hoveru pouze v části Pro zaměstnance
   ========================================================= */

/*
 * Důležité: netýkat se bloku Pro studující.
 * Cílíme výhradně na .access-panel--employee a jeho vnitřní dlaždice.
 */

/* Zaměstnanecký panel jako celek zůstává zelený i při hoveru */
.access-panel--employee,
.access-panel--employee:hover {
    background: var(--fpe-ds-green, #8abd24) !important;
    background-color: var(--fpe-ds-green, #8abd24) !important;
    color: #fff !important;
}

.access-panel--employee > h1,
.access-panel--employee > h2,
.access-panel--employee > h3,
.access-panel--employee > p,
.access-panel--employee > .kicker,
.access-panel--employee:hover > h1,
.access-panel--employee:hover > h2,
.access-panel--employee:hover > h3,
.access-panel--employee:hover > p,
.access-panel--employee:hover > .kicker {
    color: #fff !important;
}

/* Hover se vztahuje jen na konkrétní vnitřní dlaždici zaměstnaneckého panelu */
.access-panel--employee .home-card:hover,
.access-panel--employee .visual-tile:hover,
.access-panel--employee .wp-block-group.home-card:hover,
.access-panel--employee .wp-block-group.visual-tile:hover,
.access-panel--employee .wp-block-column > .wp-block-group:hover {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Nadpis v hoverované zaměstnanecké dlaždici má být zelený */
.access-panel--employee .home-card:hover h1,
.access-panel--employee .home-card:hover h2,
.access-panel--employee .home-card:hover h3,
.access-panel--employee .home-card:hover h4,
.access-panel--employee .visual-tile:hover h1,
.access-panel--employee .visual-tile:hover h2,
.access-panel--employee .visual-tile:hover h3,
.access-panel--employee .visual-tile:hover h4,
.access-panel--employee .wp-block-group.home-card:hover h1,
.access-panel--employee .wp-block-group.home-card:hover h2,
.access-panel--employee .wp-block-group.home-card:hover h3,
.access-panel--employee .wp-block-group.home-card:hover h4,
.access-panel--employee .wp-block-group.visual-tile:hover h1,
.access-panel--employee .wp-block-group.visual-tile:hover h2,
.access-panel--employee .wp-block-group.visual-tile:hover h3,
.access-panel--employee .wp-block-group.visual-tile:hover h4,
.access-panel--employee .wp-block-column > .wp-block-group:hover h1,
.access-panel--employee .wp-block-column > .wp-block-group:hover h2,
.access-panel--employee .wp-block-column > .wp-block-group:hover h3,
.access-panel--employee .wp-block-column > .wp-block-group:hover h4 {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Text v hoverované zaměstnanecké dlaždici má být tmavý */
.access-panel--employee .home-card:hover p,
.access-panel--employee .home-card:hover li,
.access-panel--employee .home-card:hover span,
.access-panel--employee .visual-tile:hover p,
.access-panel--employee .visual-tile:hover li,
.access-panel--employee .visual-tile:hover span,
.access-panel--employee .wp-block-group.home-card:hover p,
.access-panel--employee .wp-block-group.home-card:hover li,
.access-panel--employee .wp-block-group.home-card:hover span,
.access-panel--employee .wp-block-group.visual-tile:hover p,
.access-panel--employee .wp-block-group.visual-tile:hover li,
.access-panel--employee .wp-block-group.visual-tile:hover span,
.access-panel--employee .wp-block-column > .wp-block-group:hover p,
.access-panel--employee .wp-block-column > .wp-block-group:hover li,
.access-panel--employee .wp-block-column > .wp-block-group:hover span {
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Odkazy v hoverované zaměstnanecké dlaždici zelené */
.access-panel--employee .home-card:hover a,
.access-panel--employee .visual-tile:hover a,
.access-panel--employee .wp-block-group.home-card:hover a,
.access-panel--employee .wp-block-group.visual-tile:hover a,
.access-panel--employee .wp-block-column > .wp-block-group:hover a {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Studující část necháváme bez zásahu — explicitní pojistka proti přepsání */
.access-panel--student .home-card:hover,
.access-panel--student .visual-tile:hover,
.access-panel--student .wp-block-group:hover {
    /* intentionally no override */
}


/* =========================================================
   FPE Komunikace v4.8 — přesná oprava hoveru karet z fpekom_render_menu_cards('home_employee')
   ========================================================= */

/*
 * Funkce fpekom_render_menu_cards generuje jiné HTML/třídy než blokové dlaždice.
 * Proto cílíme přímo na zaměstnanecký panel a všechny pravděpodobné vnitřní
 * odkazy/karty/menu-card prvky v něm.
 */

/* Hover se má aplikovat na konkrétní kartu/odkaz, ne na celý panel. */
.access-panel--employee .menu-card:hover,
.access-panel--employee .menu-card:hover *,
.access-panel--employee .quick-card:hover,
.access-panel--employee .quick-card:hover *,
.access-panel--employee .home-menu-card:hover,
.access-panel--employee .home-menu-card:hover *,
.access-panel--employee .menu-cards a:hover,
.access-panel--employee .menu-cards a:hover *,
.access-panel--employee .home-menu a:hover,
.access-panel--employee .home-menu a:hover *,
.access-panel--employee .quick-links a:hover,
.access-panel--employee .quick-links a:hover *,
.access-panel--employee .home-card[href]:hover,
.access-panel--employee a.home-card:hover,
.access-panel--employee a.visual-tile:hover,
.access-panel--employee .access-card:hover,
.access-panel--employee .access-card:hover * {
    text-shadow: none !important;
}

/* Konkrétní karta zbělá */
.access-panel--employee .menu-card:hover,
.access-panel--employee .quick-card:hover,
.access-panel--employee .home-menu-card:hover,
.access-panel--employee .menu-cards a:hover,
.access-panel--employee .home-menu a:hover,
.access-panel--employee .quick-links a:hover,
.access-panel--employee .home-card[href]:hover,
.access-panel--employee a.home-card:hover,
.access-panel--employee a.visual-tile:hover,
.access-panel--employee .access-card:hover {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Nadpis/název v kartě musí být při hoveru zelený.
   Cílíme i na situaci, kdy je název přímo text odkazu bez h3. */
.access-panel--employee .menu-card:hover h1,
.access-panel--employee .menu-card:hover h2,
.access-panel--employee .menu-card:hover h3,
.access-panel--employee .menu-card:hover h4,
.access-panel--employee .menu-card:hover .title,
.access-panel--employee .menu-card:hover .card-title,
.access-panel--employee .menu-card:hover .menu-title,
.access-panel--employee .menu-card:hover .home-card-title,
.access-panel--employee .quick-card:hover h1,
.access-panel--employee .quick-card:hover h2,
.access-panel--employee .quick-card:hover h3,
.access-panel--employee .quick-card:hover h4,
.access-panel--employee .quick-card:hover .title,
.access-panel--employee .quick-card:hover .card-title,
.access-panel--employee .quick-card:hover .menu-title,
.access-panel--employee .home-menu-card:hover h1,
.access-panel--employee .home-menu-card:hover h2,
.access-panel--employee .home-menu-card:hover h3,
.access-panel--employee .home-menu-card:hover h4,
.access-panel--employee .home-menu-card:hover .title,
.access-panel--employee .home-menu-card:hover .card-title,
.access-panel--employee .home-menu-card:hover .menu-title,
.access-panel--employee .access-card:hover h1,
.access-panel--employee .access-card:hover h2,
.access-panel--employee .access-card:hover h3,
.access-panel--employee .access-card:hover h4,
.access-panel--employee .access-card:hover .title,
.access-panel--employee .access-card:hover .card-title,
.access-panel--employee .access-card:hover .menu-title,
.access-panel--employee .menu-cards a:hover h1,
.access-panel--employee .menu-cards a:hover h2,
.access-panel--employee .menu-cards a:hover h3,
.access-panel--employee .menu-cards a:hover h4,
.access-panel--employee .menu-cards a:hover .title,
.access-panel--employee .menu-cards a:hover .card-title,
.access-panel--employee .menu-cards a:hover .menu-title,
.access-panel--employee .home-menu a:hover h1,
.access-panel--employee .home-menu a:hover h2,
.access-panel--employee .home-menu a:hover h3,
.access-panel--employee .home-menu a:hover h4,
.access-panel--employee .home-menu a:hover .title,
.access-panel--employee .home-menu a:hover .card-title,
.access-panel--employee .home-menu a:hover .menu-title,
.access-panel--employee .quick-links a:hover h1,
.access-panel--employee .quick-links a:hover h2,
.access-panel--employee .quick-links a:hover h3,
.access-panel--employee .quick-links a:hover h4,
.access-panel--employee .quick-links a:hover .title,
.access-panel--employee .quick-links a:hover .card-title,
.access-panel--employee .quick-links a:hover .menu-title,
.access-panel--employee a.home-card:hover h1,
.access-panel--employee a.home-card:hover h2,
.access-panel--employee a.home-card:hover h3,
.access-panel--employee a.home-card:hover h4,
.access-panel--employee a.home-card:hover .title,
.access-panel--employee a.home-card:hover .card-title,
.access-panel--employee a.home-card:hover .menu-title,
.access-panel--employee a.visual-tile:hover h1,
.access-panel--employee a.visual-tile:hover h2,
.access-panel--employee a.visual-tile:hover h3,
.access-panel--employee a.visual-tile:hover h4,
.access-panel--employee a.visual-tile:hover .title,
.access-panel--employee a.visual-tile:hover .card-title,
.access-panel--employee a.visual-tile:hover .menu-title {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Když je název přímo text odkazu, musí zezelenat samotný a:hover */
.access-panel--employee .menu-cards a:hover,
.access-panel--employee .home-menu a:hover,
.access-panel--employee .quick-links a:hover,
.access-panel--employee a.home-card:hover,
.access-panel--employee a.visual-tile:hover,
.access-panel--employee a.access-card:hover {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Popis/text v hoverované kartě tmavý */
.access-panel--employee .menu-card:hover p,
.access-panel--employee .menu-card:hover li,
.access-panel--employee .menu-card:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .quick-card:hover p,
.access-panel--employee .quick-card:hover li,
.access-panel--employee .quick-card:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .home-menu-card:hover p,
.access-panel--employee .home-menu-card:hover li,
.access-panel--employee .home-menu-card:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .access-card:hover p,
.access-panel--employee .access-card:hover li,
.access-panel--employee .access-card:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .menu-cards a:hover p,
.access-panel--employee .menu-cards a:hover li,
.access-panel--employee .menu-cards a:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .home-menu a:hover p,
.access-panel--employee .home-menu a:hover li,
.access-panel--employee .home-menu a:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee .quick-links a:hover p,
.access-panel--employee .quick-links a:hover li,
.access-panel--employee .quick-links a:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee a.home-card:hover p,
.access-panel--employee a.home-card:hover li,
.access-panel--employee a.home-card:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title),
.access-panel--employee a.visual-tile:hover p,
.access-panel--employee a.visual-tile:hover li,
.access-panel--employee a.visual-tile:hover span:not(.title):not(.card-title):not(.menu-title):not(.home-card-title) {
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Ještě přesnější fallback pro vnitřní h3 v home_employee kartách, kdy starší pravidlo zeleného pozadí přebíjí vše na bílo. */
.access-panel--employee [class*="card"]:hover h3,
.access-panel--employee [class*="menu"]:hover h3,
.access-panel--employee [class*="tile"]:hover h3,
.access-panel--employee a:hover h3 {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Část Pro studující je záměrně bez zásahu. */


/* =========================================================
   FPE Komunikace v4.9 — oprava hoveru přímo pro fpekom_render_menu_cards('home_employee')
   ========================================================= */

/*
 * Analýza: zaměstnanecké dlaždice jsou výstupem PHP menu funkce, ne standardní Gutenberg dlaždice.
 * Starší pravidlo "zelený podklad = vše bílé" přebíjí název karty i po změně karty na bílé pozadí.
 * Tady proto cílíme pouze na zelený zaměstnanecký panel a jeho přímé karty.
 */

/* Nadřazený panel zaměstnanců se nesmí měnit na bílou */
.access-panel--employee,
.access-panel--employee:hover,
.access-panel--employee:focus-within {
    background: var(--fpe-ds-green, #8abd24) !important;
    background-color: var(--fpe-ds-green, #8abd24) !important;
    color: #fff !important;
}

/* Vnitřní karty v zaměstnaneckém panelu */
.access-panel--employee .home-card,
.access-panel--employee .menu-card,
.access-panel--employee .access-card,
.access-panel--employee .quick-card,
.access-panel--employee .wp-block-group {
    transition: background-color .16s ease, color .16s ease;
}

/* Hover jen nad konkrétní kartou */
.access-panel--employee .home-card:hover,
.access-panel--employee .menu-card:hover,
.access-panel--employee .access-card:hover,
.access-panel--employee .quick-card:hover,
.access-panel--employee .wp-block-group:hover,
.access-panel--employee a:hover.home-card,
.access-panel--employee a:hover.menu-card,
.access-panel--employee a:hover.access-card,
.access-panel--employee a:hover.quick-card {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Název karty po hoveru zelený — včetně variant h3, strong, a, span a nově přidané třídy */
.access-panel--employee .home-card:hover .fpe-menu-card-title,
.access-panel--employee .menu-card:hover .fpe-menu-card-title,
.access-panel--employee .access-card:hover .fpe-menu-card-title,
.access-panel--employee .quick-card:hover .fpe-menu-card-title,
.access-panel--employee .wp-block-group:hover .fpe-menu-card-title,
.access-panel--employee .home-card:hover h1,
.access-panel--employee .home-card:hover h2,
.access-panel--employee .home-card:hover h3,
.access-panel--employee .home-card:hover h4,
.access-panel--employee .home-card:hover strong:first-child,
.access-panel--employee .home-card:hover a:first-child,
.access-panel--employee .home-card:hover span:first-child,
.access-panel--employee .menu-card:hover h1,
.access-panel--employee .menu-card:hover h2,
.access-panel--employee .menu-card:hover h3,
.access-panel--employee .menu-card:hover h4,
.access-panel--employee .menu-card:hover strong:first-child,
.access-panel--employee .menu-card:hover a:first-child,
.access-panel--employee .menu-card:hover span:first-child,
.access-panel--employee .access-card:hover h1,
.access-panel--employee .access-card:hover h2,
.access-panel--employee .access-card:hover h3,
.access-panel--employee .access-card:hover h4,
.access-panel--employee .access-card:hover strong:first-child,
.access-panel--employee .access-card:hover a:first-child,
.access-panel--employee .access-card:hover span:first-child,
.access-panel--employee .quick-card:hover h1,
.access-panel--employee .quick-card:hover h2,
.access-panel--employee .quick-card:hover h3,
.access-panel--employee .quick-card:hover h4,
.access-panel--employee .quick-card:hover strong:first-child,
.access-panel--employee .quick-card:hover a:first-child,
.access-panel--employee .quick-card:hover span:first-child,
.access-panel--employee .wp-block-group:hover h1,
.access-panel--employee .wp-block-group:hover h2,
.access-panel--employee .wp-block-group:hover h3,
.access-panel--employee .wp-block-group:hover h4,
.access-panel--employee .wp-block-group:hover strong:first-child,
.access-panel--employee .wp-block-group:hover a:first-child,
.access-panel--employee .wp-block-group:hover span:first-child {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

/* Popis karty po hoveru tmavý */
.access-panel--employee .home-card:hover .fpe-menu-card-description,
.access-panel--employee .menu-card:hover .fpe-menu-card-description,
.access-panel--employee .access-card:hover .fpe-menu-card-description,
.access-panel--employee .quick-card:hover .fpe-menu-card-description,
.access-panel--employee .wp-block-group:hover .fpe-menu-card-description,
.access-panel--employee .home-card:hover p,
.access-panel--employee .home-card:hover li,
.access-panel--employee .home-card:hover span:not(:first-child),
.access-panel--employee .menu-card:hover p,
.access-panel--employee .menu-card:hover li,
.access-panel--employee .menu-card:hover span:not(:first-child),
.access-panel--employee .access-card:hover p,
.access-panel--employee .access-card:hover li,
.access-panel--employee .access-card:hover span:not(:first-child),
.access-panel--employee .quick-card:hover p,
.access-panel--employee .quick-card:hover li,
.access-panel--employee .quick-card:hover span:not(:first-child),
.access-panel--employee .wp-block-group:hover p,
.access-panel--employee .wp-block-group:hover li,
.access-panel--employee .wp-block-group:hover span:not(:first-child) {
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Pokud je celá karta odkaz, samotný odkaz se nesmí tvářit jako bílý text */
.access-panel--employee a.home-card:hover,
.access-panel--employee a.menu-card:hover,
.access-panel--employee a.access-card:hover,
.access-panel--employee a.quick-card:hover {
    color: var(--fpe-ds-text, #314a5f) !important;
    text-decoration: none !important;
}

/* Text přímo v panelovém nadpisu Pro zaměstnance zůstává bílý */
.access-panel--employee > h1,
.access-panel--employee > h2,
.access-panel--employee > h3,
.access-panel--employee > p,
.access-panel--employee > .kicker,
.access-panel--employee:hover > h1,
.access-panel--employee:hover > h2,
.access-panel--employee:hover > h3,
.access-panel--employee:hover > p,
.access-panel--employee:hover > .kicker {
    color: #fff !important;
}

/* Část Pro studující záměrně bez zásahu. */
.access-panel--student .home-card:hover h3,
.access-panel--student .menu-card:hover h3,
.access-panel--student .access-card:hover h3,
.access-panel--student .quick-card:hover h3 {
    color: inherit;
}


/* =========================================================
   FPE Komunikace v5.0 — jednodušší hover zaměstnaneckých dlaždic
   ========================================================= */

/*
 * Nové řešení: zaměstnanecké dlaždice už při hoveru nebělají.
 * Zůstávají zelené s bílým textem a pouze dostanou bílé ohraničení.
 * Tím se vyhne konfliktům se starším pravidlem "zelený podklad = bílý text".
 */

.access-panel--employee .portal-card,
.access-panel--employee .portal-card:link,
.access-panel--employee .portal-card:visited {
    background: rgba(255,255,255,.12) !important;
    background-color: rgba(255,255,255,.12) !important;
    color: #fff !important;
    border: 2px solid transparent !important;
    box-shadow: none !important;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.access-panel--employee .portal-card *,
.access-panel--employee .portal-card .portal-card__label,
.access-panel--employee .portal-card .portal-card__desc {
    color: #fff !important;
}

.access-panel--employee .portal-card:hover,
.access-panel--employee .portal-card:focus,
.access-panel--employee .portal-card:focus-visible {
    background: rgba(255,255,255,.12) !important;
    background-color: rgba(255,255,255,.12) !important;
    color: #fff !important;
    border-color: #fff !important;
    box-shadow: none !important;
    transform: translateY(-1px);
    text-decoration: none !important;
}

.access-panel--employee .portal-card:hover *,
.access-panel--employee .portal-card:focus *,
.access-panel--employee .portal-card:focus-visible *,
.access-panel--employee .portal-card:hover .portal-card__label,
.access-panel--employee .portal-card:hover .portal-card__desc,
.access-panel--employee .portal-card:focus .portal-card__label,
.access-panel--employee .portal-card:focus .portal-card__desc {
    color: #fff !important;
}

/* Přepsání starších pokusů, které na hoveru měnily zaměstnaneckou kartu na bílou. */
.access-panel--employee .portal-card:hover h1,
.access-panel--employee .portal-card:hover h2,
.access-panel--employee .portal-card:hover h3,
.access-panel--employee .portal-card:hover h4,
.access-panel--employee .portal-card:hover p,
.access-panel--employee .portal-card:hover span,
.access-panel--employee .portal-card:hover a,
.access-panel--employee .portal-card:hover strong {
    color: #fff !important;
}

/* Zelený zaměstnanecký panel zůstává zelený. */
.access-panel--employee,
.access-panel--employee:hover,
.access-panel--employee:focus-within {
    background: var(--fpe-ds-green, #8abd24) !important;
    background-color: var(--fpe-ds-green, #8abd24) !important;
    color: #fff !important;
}

/* Studující část zůstává beze změny. */


/* =========================================================
   FPE Komunikace v5.1 — sjednocení dlaždic Pro studující
   ========================================================= */

/*
 * Sekce Pro studující má zůstat bílá s tmavým textem,
 * ale dlaždice mají vizuálně odpovídat zaměstnaneckým kartám.
 */

.access-panel--student .portal-card,
.access-panel--student .portal-card:link,
.access-panel--student .portal-card:visited {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text, #314a5f) !important;
    border: 2px solid var(--fpe-ds-green, #8abd24) !important;
    border-top-width: 2px !important;
    box-shadow: none !important;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.access-panel--student .portal-card::before,
.access-panel--student .portal-card::after {
    display: none !important;
}

.access-panel--student .portal-card .portal-card__label {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
    font-weight: 700 !important;
}

.access-panel--student .portal-card .portal-card__desc {
    color: var(--fpe-ds-text, #314a5f) !important;
    font-weight: 400 !important;
}

/* Hover studujících: podobný princip jako zaměstnanci, bez masivní změny vzhledu */
.access-panel--student .portal-card:hover,
.access-panel--student .portal-card:focus,
.access-panel--student .portal-card:focus-visible {
    background: #fff !important;
    background-color: #fff !important;
    border-color: var(--fpe-ds-green-dark, #5f8f08) !important;
    box-shadow: none !important;
    transform: translateY(-1px);
    text-decoration: none !important;
}

.access-panel--student .portal-card:hover .portal-card__label,
.access-panel--student .portal-card:focus .portal-card__label,
.access-panel--student .portal-card:focus-visible .portal-card__label {
    color: var(--fpe-ds-green-dark, #5f8f08) !important;
}

.access-panel--student .portal-card:hover .portal-card__desc,
.access-panel--student .portal-card:focus .portal-card__desc,
.access-panel--student .portal-card:focus-visible .portal-card__desc {
    color: var(--fpe-ds-text, #314a5f) !important;
}

/* Nadřazený panel Pro studující zůstává bílý */
.access-panel--student,
.access-panel--student:hover,
.access-panel--student:focus-within {
    background: #fff !important;
    background-color: #fff !important;
    color: var(--fpe-ds-text, #314a5f) !important;
}


/* v52: Fakultník / Studentník - veřejné výpisy a detail */
.fpe-newsletter-archive-page .wrap,
.fpe-newsletter-content.wrap,
.fpe-newsletter-back.wrap {
  max-width: 1160px;
}

.fpe-newsletter-archive-list {
  display: grid;
  gap: 16px;
}

.fpe-newsletter-archive-card {
  background: #fff;
  border-left: 5px solid #8abd24;
  padding: 18px 22px;
  box-shadow: 0 8px 22px rgba(0,0,0,.04);
}

.fpe-newsletter-archive-card__date {
  color: #607387;
  font-size: 14px;
  margin-bottom: 4px;
}

.fpe-newsletter-archive-card h2 {
  margin: 0 0 8px;
  color: #123d63;
}

.fpe-newsletter-archive-card h2 a {
  color: inherit;
  text-decoration: none;
}

.fpe-newsletter-back {
  display: block;
  margin-top: 14px;
  margin-bottom: 10px;
  color: #123d63;
  text-decoration: none;
  font-weight: 500;
  font-size: 14px;
}

.fpe-newsletter-back:hover {
  text-decoration: underline;
}

.fpe-newsletter-hero {
  min-height: 330px;
  display: flex;
  align-items: flex-end;
  background-color: #123d63;
  background-size: cover;
  background-position: center;
  color: #fff;
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
}

.fpe-newsletter-hero.has-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(18,61,99,.72), rgba(18,61,99,.22));
}

.fpe-newsletter-hero__inner {
  position: relative;
  z-index: 1;
  padding-top: 48px;
  padding-bottom: 48px;
}

.fpe-newsletter-hero h1 {
  max-width: 900px;
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 4.6vw, 56px);
  line-height: 1.05;
}

.fpe-newsletter-hero p {
  margin: 8px 0 0;
  color: #fff;
  font-weight: 500;
}

.fpe-newsletter-content {
  margin-bottom: 56px;
}

.fpe-newsletter-content .issue-toc-card,
.fpe-newsletter-content .issue-section {
  width: 100%;
  box-sizing: border-box;
}

.fpe-newsletter-content .issue-toc-card {
  background: #fff;
  border-left: 6px solid #8abd24;
  padding: 18px 28px;
  margin: 0 0 24px;
}

.fpe-newsletter-content .issue-section {
  margin: 24px 0 32px;
  background: #fff;
}

.fpe-newsletter-content .issue-section-hero {
  min-height: 205px;
  background-size: cover;
  background-position: center;
}

@media (max-width: 760px) {
  .fpe-newsletter-hero {
    min-height: 270px;
  }
  .fpe-newsletter-hero__inner {
    padding-top: 34px;
    padding-bottom: 34px;
  }
}


/* v53: doladění výpisů Fakultníku / Studentníku */
.fpe-newsletter-archive-hero {
  background-color: #123d63;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}

.fpe-newsletter-archive-hero.has-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(18,61,99,.72), rgba(18,61,99,.22));
}

.fpe-newsletter-archive-hero .wrap {
  position: relative;
  z-index: 1;
}

.fpe-newsletter-archive-hero.has-image,
.fpe-newsletter-archive-hero.has-image .kicker,
.fpe-newsletter-archive-hero.has-image h1,
.fpe-newsletter-archive-hero.has-image p {
  color: #fff;
}

.fpe-newsletter-archive-page .wrap {
  max-width: 1160px;
}

.fpe-newsletter-archive-list {
  width: 100%;
}

.fpe-newsletter-archive-card {
  width: 100%;
  box-sizing: border-box;
}

.fpe-newsletter-archive-card h2 {
  font-size: 24px;
  line-height: 1.22;
  font-weight: 700;
}

.fpe-newsletter-archive-card p {
  max-width: 920px;
}

/* v53: detail konkrétního vydání */
.fpe-newsletter-content .issue-item h3 {
  font-size: 21px ;
  line-height: 1.28 !important;
}

.fpe-newsletter-content .issue-section-hero {
  min-height: 185px !important;
}

.fpe-newsletter-content .issue-section-hero-inner {
  padding-bottom: 26px !important;
}

@media (max-width: 760px) {
  .fpe-newsletter-archive-card h2 {
    font-size: 21px;
  }

  .fpe-newsletter-content .issue-item h3 {
    font-size: 20px ;
  }

  .fpe-newsletter-content .issue-section-hero {
    min-height: 165px !important;
  }
}


/* v55: finální zarovnání a zjemnění výpisů Fakultníku / Studentníku */
.fpe-newsletter-archive-hero {
  background-color: #123d63;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}

.fpe-newsletter-archive-hero.has-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(18,61,99,.72), rgba(18,61,99,.22));
}

.fpe-newsletter-archive-hero.has-image .wrap {
  position: relative;
  z-index: 1;
}

.fpe-newsletter-archive-hero.has-image,
.fpe-newsletter-archive-hero.has-image .kicker,
.fpe-newsletter-archive-hero.has-image h1,
.fpe-newsletter-archive-hero.has-image p {
  color: #fff;
}

.fpe-newsletter-archive-page {
  padding-top: 48px;
}

.fpe-newsletter-archive-page .wrap,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-archive-list,
.fpe-newsletter-archive-card {
  width: 100%;
  max-width: 1160px;
  box-sizing: border-box;
}

.fpe-newsletter-archive-wrap {
  margin-left: auto;
  margin-right: auto;
}

.fpe-newsletter-archive-list {
  display: grid;
  gap: 16px;
  margin-left: 0;
  margin-right: 0;
}

.fpe-newsletter-archive-card {
  margin: 0;
  padding: 18px 24px;
  background: #fff;
  border-left: 5px solid #8abd24;
  box-shadow: 0 8px 22px rgba(0,0,0,.04);
}

.fpe-newsletter-archive-card h2 {
  font-size: 24px ;
  line-height: 1.22 !important;
  font-weight: 700 !important;
  margin: 4px 0 8px !important;
}

.fpe-newsletter-archive-card h2 a {
  color: #123d63;
  text-decoration: none;
}

.fpe-newsletter-archive-card__date {
  color: #456177;
  font-size: 14px;
}

/* v55: detail konkrétního vydání */
.fpe-newsletter-content .issue-item h3 {
  font-size: 21px ;
  line-height: 1.28 !important;
}

.fpe-newsletter-content .issue-section-hero {
  min-height: 180px !important;
}

.fpe-newsletter-content .issue-section-hero-inner {
  padding-bottom: 24px !important;
}

@media (max-width: 760px) {
  .fpe-newsletter-archive-page {
    padding-top: 28px;
  }

  .fpe-newsletter-archive-card h2 {
    font-size: 21px ;
  }

  .fpe-newsletter-content .issue-item h3 {
    font-size: 20px ;
  }

  .fpe-newsletter-content .issue-section-hero {
    min-height: 160px !important;
  }
}


/* v56: výpisy Fakultníku / Studentníku - zarovnání, roky, menší nadpisy */
.fpe-newsletter-archive-hero {
  background-color: #123d63;
  background-size: cover;
  background-position: center;
}

.fpe-newsletter-archive-hero.has-image {
  background-size: cover;
  background-position: center;
}

.fpe-newsletter-archive-hero.has-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(18,61,99,.72), rgba(18,61,99,.22));
}

.fpe-newsletter-archive-hero.has-image .wrap {
  position: relative;
  z-index: 1;
}

.fpe-newsletter-archive-page > .wrap,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-archive-list {
  width: 100%;
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.fpe-newsletter-archive-list {
  display: block;
}

.fpe-newsletter-archive-year {
  margin: 0 0 14px;
  color: #123d63;
  font-size: 26px;
  line-height: 1.2;
}

.fpe-newsletter-archive-year:not(:first-child) {
  margin-top: 34px;
}

.fpe-newsletter-archive-card {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  margin: 0 0 16px;
}

.fpe-newsletter-archive-card h2,
.fpe-newsletter-archive-card h3 {
  margin: 4px 0 8px !important;
  color: #123d63;
  font-size: 22px ;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

.fpe-newsletter-archive-card h2 a,
.fpe-newsletter-archive-card h3 a {
  color: inherit;
  text-decoration: none;
}

@media (max-width: 760px) {
  .fpe-newsletter-archive-card h2,
  .fpe-newsletter-archive-card h3 {
    font-size: 20px ;
  }

  .fpe-newsletter-archive-year {
    font-size: 23px;
  }
}


/* v57: oprava zobrazení hero obrázků Fakultník / Studentník */
.fpe-newsletter-archive-hero.has-image {
  background-image: var(--fpekom-newsletter-hero-image) !important;
  background-color: #123d63 !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.fpe-newsletter-archive-hero.has-image::before {
  background: linear-gradient(90deg, rgba(18,61,99,.66), rgba(18,61,99,.18)) !important;
  pointer-events: none;
}


/* v58: hamburger menu, breadcrumbs, newsletter footer, mobile */
.menu-toggle{display:inline-flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--fpe-line);background:#fff;border-radius:4px;cursor:pointer}
.menu-toggle span{display:block;width:22px;height:2px;background:#123d63}
.header-menu{display:none;position:absolute;right:18px;top:68px;background:#fff;border:1px solid var(--fpe-line);box-shadow:0 16px 36px rgba(0,0,0,.12);min-width:260px;padding:10px;z-index:60}
body.menu-open .header-menu{display:block}
.header-menu .main-menu{display:block;margin:0;padding:0;list-style:none}
.header-menu .main-menu li{margin:0}
.header-menu .main-menu a{display:block;padding:10px 12px;color:#123d63;font-weight:700;text-decoration:none}
.header-menu .main-menu a:hover{background:#eef5f9}

.fpe-breadcrumbs{font-size:14px;color:#607387;margin-top:14px;margin-bottom:10px}
.fpe-breadcrumbs a{color:#123d63;text-decoration:none;font-weight:600}
.fpe-breadcrumbs .sep{margin:0 8px;color:#9aa8b4}

.fpe-newsletter-end{margin-top:34px;margin-bottom:58px}
.fpe-newsletter-events{background:#fff;border-left:6px solid var(--fpe-green);padding:22px 26px;margin-bottom:18px}
.fpe-newsletter-events h2{margin:0 0 14px;color:#123d63;font-size:24px}
.fpe-newsletter-events-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fpe-newsletter-event{background:#f4f8fb;padding:14px}
.fpe-newsletter-event .date{font-size:13px;color:#607387;margin-bottom:4px}
.fpe-newsletter-event h3{font-size:18px;line-height:1.25;margin:0 0 6px;color:#123d63}
.fpe-newsletter-event p{margin:0 0 6px}
.fpe-newsletter-signoff{background:#123d63;color:#fff;padding:22px 26px}
.fpe-newsletter-signoff .socials{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-top:10px}
.fpe-newsletter-signoff a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.45);border-radius:999px;color:#fff;text-decoration:none;font-weight:700}

@media (max-width: 760px){
  .front-hero{min-height:auto!important;padding:46px 0!important}
  .front-hero__inner{padding-top:28px!important;padding-bottom:30px!important}
  .front-hero h1{font-size:34px}
  .front-hero__text{font-size:16px}

  .front-access{padding:28px 0!important}
  .front-access__grid{gap:14px!important}
  .access-panel{padding:18px!important}
  .portal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .portal-card{padding:13px!important;min-height:auto!important}
  .portal-card__label{font-size:15px}
  .portal-card__desc{font-size:13px}

  .header-inner{height:60px}
  .brand img{width:120px}
  .brand-title{font-size:14px;white-space:normal}
  .header-menu{top:60px;left:14px;right:14px;min-width:0}

  .fpe-newsletter-events-list{grid-template-columns:1fr}
  .fpe-newsletter-events,.fpe-newsletter-signoff{padding:18px}
}


/* v59: desktop menu jako tlačítka, hamburger jen na mobilu */
@media (min-width: 761px){
  .menu-toggle{display:none!important}
  .header-menu{
    display:block!important;
    position:static!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    min-width:0!important;
    padding:0!important;
  }
  .header-menu .main-menu{
    display:flex!important;
    gap:10px!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .header-menu .main-menu a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:38px!important;
    padding:0 14px!important;
    border:2px solid var(--fpe-green)!important;
    color:var(--fpe-green)!important;
    background:#fff!important;
    font-weight:700!important;
    text-transform:uppercase!important;
    font-size:13px;
    letter-spacing:.03em!important;
    text-decoration:none!important;
  }
  .header-menu .main-menu a:hover{
    background:var(--fpe-green)!important;
    color:#fff!important;
  }
}

@media (max-width: 760px){
  .menu-toggle{
    display:inline-flex!important;
    background:#fff!important;
    border:2px solid var(--fpe-green)!important;
  }
  .menu-toggle span{
    background:#123d63!important;
  }
}


/* v60: mobilní header, sjednocení dlaždic a závěr newsletteru */
@media (max-width: 760px){
  .header-inner{
    height:60px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
  }
  .brand{
    flex:1 1 auto!important;
    min-width:0!important;
    gap:10px!important;
  }
  .brand img{width:108px!important;flex:0 0 auto!important}
  .brand-title{
    font-size:13px;
    line-height:1.1!important;
    white-space:normal!important;
    min-width:0!important;
  }
  .menu-toggle{
    flex:0 0 42px!important;
    margin-left:auto!important;
  }

  .access-panel--employee .portal-card__label,
  .access-panel--student .portal-card__label{
    font-size:15px;
    line-height:1.2!important;
  }
  .access-panel--employee .portal-card,
  .access-panel--student .portal-card{
    padding:12px!important;
  }
}

/* v60: nejbližší akce ve stylu úvodní stránky */
.fpe-newsletter-events{
  background:transparent!important;
  border-left:0!important;
  padding:0!important;
}
.fpe-newsletter-events .kicker{
  color:var(--fpe-green);
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:700;
  margin-bottom:4px;
}
.fpe-newsletter-events h2{
  color:#123d63!important;
  font-size:21px;
  line-height:1.28!important;
  margin:0 0 16px!important;
}
.fpe-newsletter-events-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.fpe-newsletter-event{
  background:#fff!important;
  border-left:5px solid var(--fpe-green)!important;
  padding:0!important;
}
.fpe-newsletter-event summary{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:12px;
  align-items:center;
  cursor:pointer;
  list-style:none;
  padding:12px 16px;
}
.fpe-newsletter-event summary::-webkit-details-marker{display:none}
.fpe-newsletter-event .date{
  color:var(--fpe-green-dark);
  font-size:13px;
  font-family:monospace;
  font-weight:700;
}
.fpe-newsletter-event strong{
  color:#123d63;
  font-size:16px;
  line-height:1.25;
}
.fpe-newsletter-event .event-detail{
  border-top:1px solid #e3e6e8;
  padding:12px 16px 14px 178px;
  font-size:15px;
}
.fpe-newsletter-signoff .socials a[aria-label="Instagram"]{
  font-family:Arial,sans-serif;
  font-size:12px;
  text-transform:uppercase;
}

@media (max-width: 760px){
  .fpe-newsletter-event summary{
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
  .fpe-newsletter-event .event-detail{
    padding:10px 14px 14px!important;
  }
  .fpe-newsletter-signoff{
    text-align:center!important;
  }
  .fpe-newsletter-signoff .socials{
    justify-content:center!important;
    display:grid!important;
    grid-template-columns:auto auto!important;
    gap:8px 10px!important;
  }
  .fpe-newsletter-signoff .socials a{
    justify-self:end!important;
  }
  .fpe-newsletter-signoff .socials span{
    justify-self:start!important;
  }
}


/* v61: mobilní záhlaví, hero detailu a jednotný kalendář */
@media (max-width: 760px){
  .site-header .wrap.header-inner{
    width:calc(100% - 24px)!important;
    height:72px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px!important;
    align-items:center!important;
    gap:10px!important;
  }
  .brand{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:116px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
  }
  .brand img{width:116px!important;max-width:116px!important}
  .brand-title{
    display:block!important;
    font-size:16px;
    line-height:1.12!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .menu-toggle{
    grid-column:2!important;
    justify-self:end!important;
    align-self:center!important;
  }
}

.fpe-newsletter-hero{
  min-height:360px!important;
}
.fpe-newsletter-back--hero{
  display:inline-flex!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.65)!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  margin:0 0 18px!important;
  font-size:14px;
  text-decoration:none!important;
  background:rgba(18,61,99,.28)!important;
}
.fpe-newsletter-back--hero:hover{
  background:rgba(18,61,99,.45)!important;
  text-decoration:none!important;
}

.fpe-newsletter-events,
.fpe-newsletter-events *{
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif!important;
}
.fpe-newsletter-event .date{
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif!important;
  font-size:14px;
}

.fpe-newsletter-signoff{
  background:var(--fpe-green)!important;
  color:#fff!important;
}
.fpe-newsletter-signoff a{
  border-color:rgba(255,255,255,.7)!important;
  color:#fff!important;
}
.fpe-newsletter-signoff strong,
.fpe-newsletter-signoff span{
  color:#fff!important;
}


/* v62: drobné úpravy vzhledu a hero obrázků běžných stránek */
@media (min-width: 761px){
  .header-menu .main-menu a{
    border:0!important;
    background:transparent!important;
    color:#123d63!important;
    min-height:auto!important;
    padding:8px 10px!important;
  }
  .header-menu .main-menu a:hover{
    background:transparent!important;
    color:var(--fpe-green)!important;
    text-decoration:none!important;
  }
}

.fpe-newsletter-hero{
  min-height:315px!important;
}
.fpe-newsletter-hero__inner{
  padding-top:38px!important;
  padding-bottom:38px!important;
}

.page-hero.has-image{
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  position:relative!important;
  color:#fff!important;
}
.page-hero.has-image::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(18,61,99,.70), rgba(18,61,99,.20));
  pointer-events:none;
}
.page-hero.has-image .page-hero__inner,
.page-hero.has-image .wrap{
  position:relative;
  z-index:1;
}
.page-hero.has-image h1,
.page-hero.has-image .kicker{
  color:#fff!important;
}

/* Brandcloud / starší filtry: bez levého zeleného pruhu */
.brandcloud-filter,
.brandcloud-filters,
.filter-panel,
.archive-filters,
.brand-filters{
  border-left:0!important;
}

/* Mobilní doladění */
@media (max-width: 760px){
  .access-panel--employee .portal-card__label,
  .access-panel--student .portal-card__label,
  .portal-card__label{
    font-size:16px;
    line-height:1.22!important;
  }

  .fpe-newsletter-hero{
    min-height:245px!important;
  }
  .fpe-newsletter-hero__inner{
    padding-top:28px!important;
    padding-bottom:30px!important;
  }
  .fpe-newsletter-hero h1{
    font-size:34px;
  }

  .fpe-newsletter-back--hero{
    margin-bottom:12px!important;
    font-size:13px;
    padding:5px 9px!important;
  }

  .page-hero{
    padding:34px 0!important;
  }
}


/* v63: další snížení hero detailu, filtry bez zeleného pruhu, jednotný checklist a odběr notifikací */
.fpe-newsletter-hero{
  min-height:285px!important;
}
@media (max-width:760px){
  .fpe-newsletter-hero{
    min-height:210px!important;
  }
  .fpe-newsletter-hero__inner{
    padding-top:22px!important;
    padding-bottom:24px!important;
  }
}

.brandcloud-filter,
.brandcloud-filters,
.filter-panel,
.archive-filters,
.brand-filters,
.wp-block-group:has(input[type="checkbox"]){
  border-left:0!important;
  border-top:0!important;
}

input[type="checkbox"]{
  width:16px;
  height:16px;
  accent-color:var(--fpe-green);
}
.brandcloud-filter label,
.brandcloud-filters label,
.filter-panel label,
.archive-filters label,
.brand-filters label,
.wp-block-group label{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-right:14px;
}

.fpenews-subscribe-toggle{
  background:#fff;
  border:1px solid #dce5ec;
  padding:14px 16px;
  margin:0 0 18px;
}
.fpenews-switch{
  display:flex;
  align-items:center;
  gap:12px;
  color:#123d63;
  font-weight:700;
}
.fpenews-switch input{
  position:absolute;
  opacity:0;
}
.fpenews-switch .slider{
  width:46px;
  height:24px;
  border-radius:999px;
  background:#cbd6df;
  position:relative;
  flex:0 0 auto;
  transition:.2s;
}
.fpenews-switch .slider:before{
  content:"";
  width:18px;
  height:18px;
  border-radius:999px;
  background:#fff;
  position:absolute;
  left:3px;
  top:3px;
  transition:.2s;
  box-shadow:0 1px 4px rgba(0,0,0,.25);
}
.fpenews-switch input:checked + .slider{
  background:var(--fpe-green);
}
.fpenews-switch input:checked + .slider:before{
  transform:translateX(22px);
}
.fpenews-switch .label{
  font-size:15px;
  line-height:1.35;
}

@media(max-width:760px){
  .fpenews-subscribe-toggle{
    padding:12px;
  }
  .fpenews-switch{
    align-items:flex-start;
  }
}


/* v64: menší mezera po hero banneru výpisu */
.fpe-newsletter-archive-page{
  padding-top:24px!important;
}
@media(max-width:760px){
  .fpe-newsletter-archive-page{
    padding-top:18px!important;
  }
}


/* v65: spolehlivé zobrazení hero obrázku běžných stránek včetně Brandcloudu */
.page-hero.has-image {
  background-image: var(--fpekom-page-hero-image) !important;
  background-color: #123d63 !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
  overflow: hidden !important;
}

.page-hero.has-image .page-hero__shade {
  display: none !important;
}

.page-hero.has-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(18,61,99,.68), rgba(18,61,99,.20));
  pointer-events: none;
  z-index: 0;
}

.page-hero.has-image .page-hero__inner,
.page-hero.has-image .wrap {
  position: relative !important;
  z-index: 1 !important;
}

.page-hero.has-image h1,
.page-hero.has-image .kicker,
.page-hero.has-image p {
  color: #fff !important;
}


/* v67: robustní obnova hero obrázků pro /fakultnik/ a /studentnik/ */
.page-hero.fpe-newsletter-archive-hero.has-image,
.fpe-newsletter-archive-hero.has-image {
  background-image: var(--fpekom-newsletter-hero-image) !important;
  background-color: #123d63 !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
  overflow: hidden !important;
}

.page-hero.fpe-newsletter-archive-hero.has-image::before,
.fpe-newsletter-archive-hero.has-image::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background: linear-gradient(90deg, rgba(18,61,99,.66), rgba(18,61,99,.18)) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.page-hero.fpe-newsletter-archive-hero.has-image .wrap,
.fpe-newsletter-archive-hero.has-image .wrap {
  position: relative !important;
  z-index: 1 !important;
}

.page-hero.fpe-newsletter-archive-hero.has-image .page-hero__shade,
.fpe-newsletter-archive-hero.has-image .page-hero__shade {
  display: none !important;
}


/* v68: kompaktní jednotné vzory pro obsahové stránky */
.fpe-pattern,
.editor-styles-wrapper .fpe-pattern {
  font-family: inherit;
  color: #123d63;
  background: #fff;
  border: 1px solid rgba(18,61,99,.12);
  padding: 18px 20px;
  margin: 14px 0;
  box-shadow: 0 6px 18px rgba(18,61,99,.04);
}

.fpe-pattern * {
  box-sizing: border-box;
}

.fpe-pattern h2,
.editor-styles-wrapper .fpe-pattern h2 {
  font-size: clamp(22px, 2.4vw, 32px);
  line-height: 1.12;
  margin: 0 0 8px;
  letter-spacing: -.02em;
  color: #123d63;
  font-weight: 800;
}

.fpe-pattern h3,
.editor-styles-wrapper .fpe-pattern h3 {
  font-size: 17px;
  line-height: 1.22;
  margin: 0 0 5px;
  color: #123d63;
  font-weight: 800;
}

.fpe-pattern p,
.fpe-pattern li,
.fpe-pattern summary,
.editor-styles-wrapper .fpe-pattern p,
.editor-styles-wrapper .fpe-pattern li,
.editor-styles-wrapper .fpe-pattern summary {
  font-size: 15px;
  line-height: 1.45;
  color: #314a5f;
}

.fpe-pattern p {
  margin: 0 0 7px;
}

.fpe-pattern p:last-child {
  margin-bottom: 0;
}

.fpe-pattern ul,
.fpe-pattern ol {
  margin: 6px 0 0 18px;
  padding: 0;
}

.fpe-pattern li + li {
  margin-top: 4px;
}

.fpe-pattern a {
  color: #123d63;
  font-weight: 700;
}

.fpe-pattern .wp-block-buttons {
  margin-top: 10px;
}

.fpe-pattern .wp-block-button__link {
  background: #8abd24;
  color: #fff;
  border-radius: 0;
  padding: 9px 13px;
  font-size: 13px;
  line-height: 1.2;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .035em;
}

.fpe-pattern-columns,
.editor-styles-wrapper .fpe-pattern-columns {
  gap: 10px !important;
  margin: 8px 0 0;
}

.fpe-pattern-columns > .wp-block-column,
.editor-styles-wrapper .fpe-pattern-columns > .wp-block-column {
  background: #f6f9fb;
  border: 1px solid #dce5ec;
  padding: 12px;
}

.fpe-pattern-faq details,
.editor-styles-wrapper .fpe-pattern-faq details {
  border: 1px solid #dce5ec;
  background: #f6f9fb;
  padding: 8px 10px;
  margin: 6px 0;
}

.fpe-pattern-faq summary {
  cursor: pointer;
  font-weight: 800;
  color: #123d63;
}

.fpe-pattern-cta {
  background: #123d63;
  border-color: #123d63;
}

.fpe-pattern-cta h2,
.fpe-pattern-cta p,
.editor-styles-wrapper .fpe-pattern-cta h2,
.editor-styles-wrapper .fpe-pattern-cta p {
  color: #fff;
}

.fpe-pattern-contact,
.fpe-pattern-intro {
  border-left: 5px solid #8abd24;
}

.fpe-pattern-timeline li::marker,
.fpe-pattern-steps li::marker {
  color: #8abd24;
  font-weight: 800;
}

@media (max-width: 760px) {
  .fpe-pattern,
  .editor-styles-wrapper .fpe-pattern {
    padding: 14px;
    margin: 12px 0;
  }

  .fpe-pattern p,
  .fpe-pattern li,
  .fpe-pattern summary {
    font-size: 14px;
  }

  .fpe-pattern-columns > .wp-block-column {
    padding: 10px;
  }
}


/* v69: menší mezera mezi hero bannerem a obsahem + kompaktnější vzory */
.page-hero,
.fpe-newsletter-archive-hero,
.issue-title,
.fpe-brandcloud-single-hero,
.fpe-brandcloud-hero {
  margin-bottom: 0 !important;
}

.content-wrap,
.fpe-newsletter-archive-page,
.static-page,
.page-content,
.site-main,
main.content-wrap {
  padding-top: 18px !important;
}

.page-hero + .content-wrap,
.page-hero + main,
.page-hero + .site-main,
.fpe-newsletter-archive-hero + .content-wrap,
.fpe-newsletter-archive-hero + main,
.issue-title + .fpe-newsletter-content,
.issue-title + main,
.fpe-brandcloud-single-hero + main,
.fpe-brandcloud-hero + main {
  margin-top: 0 !important;
  padding-top: 18px !important;
}

.breadcrumbs + .page-hero,
.breadcrumbs + .fpe-newsletter-archive-hero {
  margin-top: 0 !important;
}

.fpe-newsletter-archive-page {
  margin-top: 0 !important;
}

.fpe-newsletter-archive-wrap,
.fpe-newsletter-content,
.entry-content,
.page .entry-content {
  margin-top: 0 !important;
}

.fpe-pattern,
.editor-styles-wrapper .fpe-pattern {
  padding: 12px 14px !important;
  margin: 8px 0 !important;
  box-shadow: 0 4px 12px rgba(18,61,99,.035) !important;
}

.fpe-pattern h2,
.editor-styles-wrapper .fpe-pattern h2 {
  font-size: clamp(20px, 2vw, 28px) ;
  line-height: 1.1 !important;
  margin: 0 0 5px !important;
}

.fpe-pattern h3,
.editor-styles-wrapper .fpe-pattern h3 {
  font-size: 16px ;
  line-height: 1.18 !important;
  margin: 0 0 3px !important;
}

.fpe-pattern p,
.fpe-pattern li,
.fpe-pattern summary,
.editor-styles-wrapper .fpe-pattern p,
.editor-styles-wrapper .fpe-pattern li,
.editor-styles-wrapper .fpe-pattern summary {
  font-size: 14px ;
  line-height: 1.35 !important;
}

.fpe-pattern p {
  margin: 0 0 4px !important;
}

.fpe-pattern ul,
.fpe-pattern ol {
  margin: 4px 0 0 16px !important;
}

.fpe-pattern li + li {
  margin-top: 2px !important;
}

.fpe-pattern .wp-block-buttons {
  margin-top: 6px !important;
}

.fpe-pattern .wp-block-button__link {
  padding: 7px 10px !important;
  font-size: 12px ;
}

.fpe-pattern-columns,
.editor-styles-wrapper .fpe-pattern-columns {
  gap: 6px !important;
  margin: 5px 0 0 !important;
}

.fpe-pattern-columns > .wp-block-column,
.editor-styles-wrapper .fpe-pattern-columns > .wp-block-column {
  padding: 8px !important;
}

.fpe-pattern-faq details,
.editor-styles-wrapper .fpe-pattern-faq details {
  padding: 6px 8px !important;
  margin: 4px 0 !important;
}

.wp-block-group.fpe-pattern > * + *,
.editor-styles-wrapper .wp-block-group.fpe-pattern > * + * {
  margin-top: 5px !important;
  margin-bottom: 0 !important;
}

.fpe-pattern .wp-block-columns,
.fpe-pattern .wp-block-buttons,
.fpe-pattern .wp-block-list {
  margin-bottom: 0 !important;
}

@media (max-width: 760px) {
  .content-wrap,
  .fpe-newsletter-archive-page,
  .page-hero + .content-wrap,
  .page-hero + main,
  .fpe-newsletter-archive-hero + .content-wrap,
  .fpe-newsletter-archive-hero + main {
    padding-top: 12px !important;
  }

  .fpe-pattern,
  .editor-styles-wrapper .fpe-pattern {
    padding: 10px 11px !important;
    margin: 7px 0 !important;
  }
}


/* v70: jednoduché upravitelné vzory v identitě FPE */
.fpe-simple,
.editor-styles-wrapper .fpe-simple {
  font-family: inherit;
  color: #314a5f;
  margin: 7px 0 !important;
}

.fpe-simple p,
.fpe-simple li,
.fpe-simple figcaption,
.editor-styles-wrapper .fpe-simple p,
.editor-styles-wrapper .fpe-simple li,
.editor-styles-wrapper .fpe-simple figcaption {
  font-size: 14px ;
  line-height: 1.35 !important;
  color: #314a5f !important;
  margin-top: 0 !important;
  margin-bottom: 4px !important;
}

.fpe-simple h3,
.editor-styles-wrapper .fpe-simple h3 {
  color: #123d63 !important;
  font-size: 16px ;
  line-height: 1.18 !important;
  margin: 0 0 4px !important;
  font-weight: 800 !important;
}

.fpe-simple a,
.editor-styles-wrapper .fpe-simple a {
  color: #123d63 !important;
  font-weight: 700;
}

.fpe-simple-highlight,
.editor-styles-wrapper .fpe-simple-highlight {
  background: #f1f7e8;
  border-left: 4px solid #8abd24;
  padding: 8px 10px;
}

.fpe-simple-note,
.editor-styles-wrapper .fpe-simple-note {
  background: #f6f9fb;
  border: 1px solid #dce5ec;
  padding: 7px 9px;
}

.fpe-simple-note p,
.editor-styles-wrapper .fpe-simple-note p {
  font-size: 13px ;
  color: #607387 !important;
}

.fpe-simple-box,
.editor-styles-wrapper .fpe-simple-box {
  background: #fff;
  border: 1px solid rgba(18,61,99,.14);
  border-top: 3px solid #8abd24;
  padding: 10px 12px;
}

.fpe-simple-columns,
.editor-styles-wrapper .fpe-simple-columns {
  gap: 7px !important;
  margin: 7px 0 !important;
}

.fpe-simple-columns > .wp-block-column,
.editor-styles-wrapper .fpe-simple-columns > .wp-block-column {
  padding: 9px 10px;
  border: 1px solid #dce5ec;
  background: #fff;
}

.fpe-simple-columns--cards > .wp-block-column,
.editor-styles-wrapper .fpe-simple-columns--cards > .wp-block-column {
  background: #f6f9fb;
  border-top: 3px solid #8abd24;
}

.fpe-simple-media,
.editor-styles-wrapper .fpe-simple-media {
  margin: 8px 0 !important;
}

.fpe-simple-media figure,
.editor-styles-wrapper .fpe-simple-media figure {
  margin: 0 !important;
}

.fpe-simple-media img {
  display: block;
  width: 100%;
  height: auto;
}

.fpe-simple-media figcaption,
.editor-styles-wrapper .fpe-simple-media figcaption {
  background: #f6f9fb;
  border-left: 3px solid #8abd24;
  padding: 6px 8px;
  margin: 0 !important;
  text-align: left;
}

.fpe-simple-quote,
.editor-styles-wrapper .fpe-simple-quote {
  border-left: 5px solid #8abd24 !important;
  margin: 8px 0 !important;
  padding: 8px 12px !important;
  background: #123d63;
}

.fpe-simple-quote p,
.editor-styles-wrapper .fpe-simple-quote p {
  color: #fff !important;
  font-size: 16px ;
  line-height: 1.35 !important;
  font-weight: 700;
}

.fpe-simple-list,
.editor-styles-wrapper .fpe-simple-list {
  border: 1px solid #dce5ec;
  background: #fff;
  padding: 9px 11px;
}

.fpe-simple-list ul {
  margin: 4px 0 0 17px !important;
  padding: 0 !important;
}

.fpe-simple-list li + li {
  margin-top: 2px !important;
}

.fpe-simple-list li::marker {
  color: #8abd24;
}

.fpe-simple-link-row,
.editor-styles-wrapper .fpe-simple-link-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid #dce5ec;
  background: #f6f9fb;
  padding: 8px 10px;
}

.fpe-simple-link-row p {
  margin: 0 !important;
}

.fpe-simple-link-row .wp-block-buttons {
  margin: 0 !important;
  flex-shrink: 0;
}

.fpe-simple .wp-block-button__link,
.editor-styles-wrapper .fpe-simple .wp-block-button__link {
  background: #8abd24 !important;
  color: #fff !important;
  border-radius: 0 !important;
  padding: 7px 10px !important;
  font-size: 12px ;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: .035em;
}

@media (max-width: 760px) {
  .fpe-simple-link-row,
  .editor-styles-wrapper .fpe-simple-link-row {
    display: block;
  }

  .fpe-simple-link-row .wp-block-buttons {
    margin-top: 6px !important;
  }

  .fpe-simple-columns > .wp-block-column,
  .editor-styles-wrapper .fpe-simple-columns > .wp-block-column {
    padding: 8px;
  }
}


/* v71: výrazná zelená dlaždice */
.fpe-simple-green-tile,
.editor-styles-wrapper .fpe-simple-green-tile {
  background: #8abd24 !important;
  border: 1px solid #7aa71f !important;
  border-left: 6px solid #123d63 !important;
  padding: 14px 16px !important;
  margin: 8px 0 !important;
  color: #123d63 !important;
  box-shadow: 0 8px 20px rgba(18,61,99,.08) !important;
}

.fpe-simple-green-tile h3,
.editor-styles-wrapper .fpe-simple-green-tile h3 {
  color: #123d63 !important;
  font-size: 19px ;
  line-height: 1.14 !important;
  margin: 0 0 5px !important;
  font-weight: 900 !important;
}

.fpe-simple-green-tile p,
.editor-styles-wrapper .fpe-simple-green-tile p {
  color: #123d63 !important;
  font-size: 14px ;
  line-height: 1.35 !important;
  margin: 0 0 7px !important;
  font-weight: 600;
}

.fpe-simple-green-tile .wp-block-buttons,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-buttons {
  margin-top: 7px !important;
  margin-bottom: 0 !important;
}

.fpe-simple-green-tile .wp-block-button__link,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link {
  background: #123d63 !important;
  border: 2px solid #123d63 !important;
  color: #fff !important;
  border-radius: 0 !important;
  padding: 7px 11px !important;
  font-size: 12px ;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  text-transform: uppercase;
  letter-spacing: .035em;
}

.fpe-simple-green-tile .wp-block-button__link:hover,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link:hover {
  background: #0c2d4a !important;
  border-color: #0c2d4a !important;
  color: #fff !important;
}


/* v72: menší mezera za pattern-hero */
.pattern-hero,
.wp-block-group.pattern-hero,
.editor-styles-wrapper .pattern-hero,
.editor-styles-wrapper .wp-block-group.pattern-hero {
  margin-bottom: 8px !important;
  padding-bottom: 18px !important;
}

.pattern-hero + *,
.wp-block-group.pattern-hero + *,
.editor-styles-wrapper .pattern-hero + *,
.editor-styles-wrapper .wp-block-group.pattern-hero + * {
  margin-top: 0 !important;
}

.pattern-hero + .fpe-pattern,
.pattern-hero + .fpe-simple,
.wp-block-group.pattern-hero + .fpe-pattern,
.wp-block-group.pattern-hero + .fpe-simple {
  margin-top: 6px !important;
}

.pattern-hero h1,
.pattern-hero h2,
.wp-block-group.pattern-hero h1,
.wp-block-group.pattern-hero h2 {
  margin-bottom: 6px !important;
}

.pattern-hero p,
.wp-block-group.pattern-hero p {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

.pattern-hero > *:last-child,
.wp-block-group.pattern-hero > *:last-child {
  margin-bottom: 0 !important;
}

.entry-content > .pattern-hero:first-child,
.entry-content > .wp-block-group.pattern-hero:first-child,
.page .entry-content > .pattern-hero:first-child,
.page .entry-content > .wp-block-group.pattern-hero:first-child {
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .pattern-hero,
  .wp-block-group.pattern-hero,
  .editor-styles-wrapper .pattern-hero,
  .editor-styles-wrapper .wp-block-group.pattern-hero {
    margin-bottom: 6px !important;
    padding-bottom: 14px !important;
  }
}


/* v73: sjednocení výrazné zelené dlaždice */
.fpe-simple-green-tile,
.editor-styles-wrapper .fpe-simple-green-tile {
  background: #8abd24 !important;
  border: 1px solid #8abd24 !important;
  border-left: 0 !important;
  padding: 13px 15px !important;
  margin: 8px 0 !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(18,61,99,.06) !important;
}

.fpe-simple-green-tile h3,
.editor-styles-wrapper .fpe-simple-green-tile h3 {
  color: #fff !important;
  font-size: 18px ;
  line-height: 1.16 !important;
  margin: 0 0 5px !important;
  font-weight: 700 !important;
}

.fpe-simple-green-tile p,
.editor-styles-wrapper .fpe-simple-green-tile p {
  color: #fff !important;
  font-size: 14px ;
  line-height: 1.35 !important;
  margin: 0 0 7px !important;
  font-weight: 400 !important;
}

.fpe-simple-green-tile strong,
.editor-styles-wrapper .fpe-simple-green-tile strong {
  color: #fff !important;
  font-weight: 700 !important;
}

.fpe-simple-green-tile a:not(.wp-block-button__link),
.editor-styles-wrapper .fpe-simple-green-tile a:not(.wp-block-button__link) {
  color: #fff !important;
  font-weight: 700 !important;
  text-decoration: underline;
}

.fpe-simple-green-tile .wp-block-buttons,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-buttons {
  margin-top: 7px !important;
  margin-bottom: 0 !important;
}

.fpe-simple-green-tile .wp-block-button__link,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link {
  background: #fff !important;
  border: 1px solid #fff !important;
  color: #123d63 !important;
  border-radius: 0 !important;
  padding: 7px 10px !important;
  font-size: 12px ;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.fpe-simple-green-tile .wp-block-button__link:hover,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link:hover {
  background: #123d63 !important;
  border-color: #123d63 !important;
  color: #fff !important;
}

/* v74: kontaktní osoby */
.fpe-contact-grid{display:grid;gap:10px;margin:10px 0}
.fpe-contact-grid--cols-1{grid-template-columns:1fr}.fpe-contact-grid--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.fpe-contact-grid--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.fpe-contact-grid--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.fpe-contact-card{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:start;background:#fff;border:1px solid #dce5ec;border-top:3px solid #8abd24;padding:11px;color:#314a5f}
.fpe-contact-card__media img,.fpe-contact-card__placeholder{width:92px;height:92px;object-fit:cover;display:block;background:#f1f7e8}
.fpe-contact-card__placeholder{display:flex;align-items:center;justify-content:center;color:#123d63;font-size:34px;font-weight:700}
.fpe-contact-card h3{color:#123d63;font-size:18px;line-height:1.16;margin:0 0 3px;font-weight:700}
.fpe-contact-card__role{color:#607387;font-size:13px;line-height:1.3;margin:0 0 6px;font-weight:700}
.fpe-contact-card__text,.fpe-contact-card__text p{color:#314a5f;font-size:13px;line-height:1.35;margin:0 0 6px}
.fpe-contact-card dl{display:grid;gap:3px;margin:0}.fpe-contact-card dl div{display:grid;grid-template-columns:72px 1fr;gap:6px;align-items:baseline}
.fpe-contact-card dt{color:#607387;font-size:12px;font-weight:700}.fpe-contact-card dd{margin:0;color:#314a5f;font-size:13px}.fpe-contact-card a{color:#123d63;font-weight:700}.fpe-contact-card__link{margin:7px 0 0;font-size:13px}
.fpe-contact-card--compact{grid-template-columns:64px 1fr;padding:9px}.fpe-contact-card--compact .fpe-contact-card__media img,.fpe-contact-card--compact .fpe-contact-card__placeholder{width:64px;height:64px;font-size:24px}
.fpe-manual-contact,.editor-styles-wrapper .fpe-manual-contact{background:#fff;border:1px solid #dce5ec;border-top:3px solid #8abd24;padding:11px;margin:8px 0}
.fpe-manual-contact .wp-block-columns,.editor-styles-wrapper .fpe-manual-contact .wp-block-columns{gap:12px!important;margin:0!important}
.fpe-manual-contact h3,.editor-styles-wrapper .fpe-manual-contact h3{color:#123d63!important;font-size:18px;line-height:1.16!important;margin:0 0 3px!important;font-weight:700!important}
.fpe-manual-contact p,.editor-styles-wrapper .fpe-manual-contact p{color:#314a5f!important;font-size:13px;line-height:1.35!important;margin:0 0 5px!important}
.fpe-manual-contact__role,.editor-styles-wrapper .fpe-manual-contact__role{color:#607387!important;font-weight:700!important}.fpe-manual-contact__photo,.editor-styles-wrapper .fpe-manual-contact__photo{margin:0!important}.fpe-manual-contact__photo img{object-fit:cover}
@media(max-width:900px){.fpe-contact-grid--cols-3,.fpe-contact-grid--cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.fpe-contact-grid,.fpe-contact-grid--cols-2,.fpe-contact-grid--cols-3,.fpe-contact-grid--cols-4{grid-template-columns:1fr}.fpe-contact-card{grid-template-columns:72px 1fr}.fpe-contact-card__media img,.fpe-contact-card__placeholder{width:72px;height:72px}}

/* v75: sjednocená typografie a vzhled kontaktů */
.fpe-contact-grid,
.contact-list-module {
  display: grid;
  gap: 10px;
  margin: 10px 0;
}

.fpe-contact-grid--cols-1 { grid-template-columns: 1fr; }
.fpe-contact-grid--cols-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fpe-contact-grid--cols-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.fpe-contact-grid--cols-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }

.fpe-contact-card,
.contact-person-card {
  display: grid !important;
  grid-template-columns: 82px 1fr !important;
  gap: 12px !important;
  align-items: start !important;
  background: #fff !important;
  border: 1px solid #dce5ec !important;
  border-top: 3px solid #8abd24 !important;
  padding: 10px !important;
  color: #314a5f !important;
  font-family: inherit !important;
  font-size: 14px ;
  line-height: 1.35 !important;
}

.fpe-contact-card__media img,
.fpe-contact-card__placeholder,
.contact-person-card__image img {
  width: 82px !important;
  height: 82px !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 50% !important;
  background: #f1f7e8 !important;
}

.fpe-contact-card__placeholder {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #123d63 !important;
  font-size: 28px ;
  font-weight: 700 !important;
}

.fpe-contact-card h3,
.contact-person-card h3 {
  color: #123d63 !important;
  font-size: 17px ;
  line-height: 1.18 !important;
  margin: 0 0 3px !important;
  font-weight: 700 !important;
}

.fpe-contact-card__role,
.contact-person-card__role {
  color: #607387 !important;
  font-size: 13px ;
  line-height: 1.3 !important;
  margin: 0 0 6px !important;
  font-weight: 700 !important;
}

.fpe-contact-card p,
.fpe-contact-card dd,
.fpe-contact-card dt,
.fpe-contact-card a,
.contact-person-card p,
.contact-person-card span,
.contact-person-card a {
  font-size: 13px ;
  line-height: 1.35 !important;
}

.fpe-contact-card p,
.contact-person-card p {
  margin: 0 0 5px !important;
  color: #314a5f !important;
  font-weight: 400 !important;
}

.fpe-contact-card dl {
  display: grid !important;
  gap: 3px !important;
  margin: 0 !important;
}

.fpe-contact-card dl div {
  display: grid !important;
  grid-template-columns: 68px 1fr !important;
  gap: 6px !important;
}

.fpe-contact-card dt {
  color: #607387 !important;
  font-weight: 700 !important;
}

.fpe-contact-card dd {
  margin: 0 !important;
  color: #314a5f !important;
  font-weight: 400 !important;
}

.fpe-contact-card a,
.contact-person-card a {
  color: #123d63 !important;
  font-weight: 700 !important;
}

.fpe-contact-card--compact {
  grid-template-columns: 64px 1fr !important;
  padding: 9px !important;
}

.fpe-contact-card--compact .fpe-contact-card__media img,
.fpe-contact-card--compact .fpe-contact-card__placeholder {
  width: 64px !important;
  height: 64px !important;
  font-size: 22px ;
}

.fpe-contact-events-module {
  display: grid;
  grid-template-columns: minmax(260px, .85fr) minmax(320px, 1.15fr);
  gap: 12px;
  align-items: start;
  margin: 10px 0;
}

.fpe-contact-events-module__events {
  background: #fff;
  border: 1px solid #dce5ec;
  border-top: 3px solid #8abd24;
  padding: 10px;
}

.fpe-contact-events-module__events h2 {
  color: #123d63 !important;
  font-size: 20px ;
  line-height: 1.15 !important;
  margin: 0 0 8px !important;
  font-weight: 700 !important;
}

@media(max-width:900px){
  .fpe-contact-grid--cols-3,.fpe-contact-grid--cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fpe-contact-events-module{grid-template-columns:1fr}
}
@media(max-width:680px){
  .fpe-contact-grid,.fpe-contact-grid--cols-2,.fpe-contact-grid--cols-3,.fpe-contact-grid--cols-4,.contact-list-module{grid-template-columns:1fr}
  .fpe-contact-card,.contact-person-card{grid-template-columns:64px 1fr!important}
  .fpe-contact-card__media img,.fpe-contact-card__placeholder,.contact-person-card__image img{width:64px!important;height:64px!important}
}


/* v76: oprava hover efektu u dvojice rozcestníků zaměstnanci / studující */
.portal-card,
.portal-card *,
.audience-card,
.audience-card *,
.fpe-audience-card,
.fpe-audience-card *,
.quick-access-card,
.quick-access-card *,
.quicklink-card,
.quicklink-card *,
.fpe-pattern-cards .wp-block-column,
.fpe-pattern-cards .wp-block-column *,
.fpe-simple-columns--cards .wp-block-column,
.fpe-simple-columns--cards .wp-block-column * {
  transition: background-color .16s ease, color .16s ease, border-color .16s ease;
}

.portal-card:hover,
.portal-card:focus-within,
.audience-card:hover,
.audience-card:focus-within,
.fpe-audience-card:hover,
.fpe-audience-card:focus-within,
.quick-access-card:hover,
.quick-access-card:focus-within,
.quicklink-card:hover,
.quicklink-card:focus-within,
.fpe-pattern-cards .wp-block-column:hover,
.fpe-pattern-cards .wp-block-column:focus-within,
.fpe-simple-columns--cards .wp-block-column:hover,
.fpe-simple-columns--cards .wp-block-column:focus-within {
  background: #8abd24 !important;
  border-color: #8abd24 !important;
}

.portal-card:hover,
.portal-card:hover *,
.portal-card:focus-within,
.portal-card:focus-within *,
.audience-card:hover,
.audience-card:hover *,
.audience-card:focus-within,
.audience-card:focus-within *,
.fpe-audience-card:hover,
.fpe-audience-card:hover *,
.fpe-audience-card:focus-within,
.fpe-audience-card:focus-within *,
.quick-access-card:hover,
.quick-access-card:hover *,
.quick-access-card:focus-within,
.quick-access-card:focus-within *,
.quicklink-card:hover,
.quicklink-card:hover *,
.quicklink-card:focus-within,
.quicklink-card:focus-within *,
.fpe-pattern-cards .wp-block-column:hover,
.fpe-pattern-cards .wp-block-column:hover *,
.fpe-pattern-cards .wp-block-column:focus-within,
.fpe-pattern-cards .wp-block-column:focus-within *,
.fpe-simple-columns--cards .wp-block-column:hover,
.fpe-simple-columns--cards .wp-block-column:hover *,
.fpe-simple-columns--cards .wp-block-column:focus-within,
.fpe-simple-columns--cards .wp-block-column:focus-within * {
  color: #123d63 !important;
}

.portal-card:hover a,
.portal-card:focus-within a,
.audience-card:hover a,
.audience-card:focus-within a,
.fpe-audience-card:hover a,
.fpe-audience-card:focus-within a,
.quick-access-card:hover a,
.quick-access-card:focus-within a,
.quicklink-card:hover a,
.quicklink-card:focus-within a,
.fpe-pattern-cards .wp-block-column:hover a,
.fpe-pattern-cards .wp-block-column:focus-within a,
.fpe-simple-columns--cards .wp-block-column:hover a,
.fpe-simple-columns--cards .wp-block-column:focus-within a {
  color: #123d63 !important;
  text-decoration-color: #123d63 !important;
}

.portal-card a:visited,
.audience-card a:visited,
.fpe-audience-card a:visited,
.quick-access-card a:visited,
.quicklink-card a:visited,
.fpe-pattern-cards .wp-block-column a:visited,
.fpe-simple-columns--cards .wp-block-column a:visited {
  color: inherit;
}


/* v77: sjednocení vzorů - žádný modrý text na zeleném hoveru, žádný bílý text na bílém pozadí */

/* Výchozí stav všech světlých rozcestníků/karet */
.portal-card,
.audience-card,
.fpe-audience-card,
.quick-access-card,
.quicklink-card,
.fpe-pattern-cards .wp-block-column,
.fpe-simple-columns--cards .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-pattern-columns > .wp-block-column {
  background: #fff !important;
  color: #314a5f !important;
  border-color: #dce5ec !important;
}

.portal-card *,
.audience-card *,
.fpe-audience-card *,
.quick-access-card *,
.quicklink-card *,
.fpe-pattern-cards .wp-block-column *,
.fpe-simple-columns--cards .wp-block-column *,
.fpe-simple-columns > .wp-block-column *,
.fpe-pattern-columns > .wp-block-column * {
  color: #314a5f !important;
}

.portal-card h2,
.portal-card h3,
.audience-card h2,
.audience-card h3,
.fpe-audience-card h2,
.fpe-audience-card h3,
.quick-access-card h2,
.quick-access-card h3,
.quicklink-card h2,
.quicklink-card h3,
.fpe-pattern-cards .wp-block-column h2,
.fpe-pattern-cards .wp-block-column h3,
.fpe-simple-columns--cards .wp-block-column h2,
.fpe-simple-columns--cards .wp-block-column h3,
.fpe-simple-columns > .wp-block-column h2,
.fpe-simple-columns > .wp-block-column h3,
.fpe-pattern-columns > .wp-block-column h2,
.fpe-pattern-columns > .wp-block-column h3 {
  color: #123d63 !important;
}

/* Odkazy ve světlých kartách */
.portal-card a,
.audience-card a,
.fpe-audience-card a,
.quick-access-card a,
.quicklink-card a,
.fpe-pattern-cards .wp-block-column a,
.fpe-simple-columns--cards .wp-block-column a,
.fpe-simple-columns > .wp-block-column a,
.fpe-pattern-columns > .wp-block-column a {
  color: #123d63 !important;
  font-weight: 700 !important;
}

/* U rozcestníkových vzorů vypínáme barevný hover, aby se nerozbíjela čitelnost */
.portal-card:hover,
.portal-card:focus-within,
.audience-card:hover,
.audience-card:focus-within,
.fpe-audience-card:hover,
.fpe-audience-card:focus-within,
.quick-access-card:hover,
.quick-access-card:focus-within,
.quicklink-card:hover,
.quicklink-card:focus-within,
.fpe-pattern-cards .wp-block-column:hover,
.fpe-pattern-cards .wp-block-column:focus-within,
.fpe-simple-columns--cards .wp-block-column:hover,
.fpe-simple-columns--cards .wp-block-column:focus-within,
.fpe-simple-columns > .wp-block-column:hover,
.fpe-simple-columns > .wp-block-column:focus-within,
.fpe-pattern-columns > .wp-block-column:hover,
.fpe-pattern-columns > .wp-block-column:focus-within {
  background: #f6f9fb !important;
  border-color: #8abd24 !important;
  color: #314a5f !important;
  box-shadow: none !important;
  transform: none !important;
}

.portal-card:hover *,
.portal-card:focus-within *,
.audience-card:hover *,
.audience-card:focus-within *,
.fpe-audience-card:hover *,
.fpe-audience-card:focus-within *,
.quick-access-card:hover *,
.quick-access-card:focus-within *,
.quicklink-card:hover *,
.quicklink-card:focus-within *,
.fpe-pattern-cards .wp-block-column:hover *,
.fpe-pattern-cards .wp-block-column:focus-within *,
.fpe-simple-columns--cards .wp-block-column:hover *,
.fpe-simple-columns--cards .wp-block-column:focus-within *,
.fpe-simple-columns > .wp-block-column:hover *,
.fpe-simple-columns > .wp-block-column:focus-within *,
.fpe-pattern-columns > .wp-block-column:hover *,
.fpe-pattern-columns > .wp-block-column:focus-within * {
  color: #314a5f !important;
}

.portal-card:hover h2,
.portal-card:hover h3,
.portal-card:focus-within h2,
.portal-card:focus-within h3,
.audience-card:hover h2,
.audience-card:hover h3,
.audience-card:focus-within h2,
.audience-card:focus-within h3,
.fpe-audience-card:hover h2,
.fpe-audience-card:hover h3,
.fpe-audience-card:focus-within h2,
.fpe-audience-card:focus-within h3,
.quick-access-card:hover h2,
.quick-access-card:hover h3,
.quick-access-card:focus-within h2,
.quick-access-card:focus-within h3,
.quicklink-card:hover h2,
.quicklink-card:hover h3,
.quicklink-card:focus-within h2,
.quicklink-card:focus-within h3,
.fpe-pattern-cards .wp-block-column:hover h2,
.fpe-pattern-cards .wp-block-column:hover h3,
.fpe-pattern-cards .wp-block-column:focus-within h2,
.fpe-pattern-cards .wp-block-column:focus-within h3,
.fpe-simple-columns--cards .wp-block-column:hover h2,
.fpe-simple-columns--cards .wp-block-column:hover h3,
.fpe-simple-columns--cards .wp-block-column:focus-within h2,
.fpe-simple-columns--cards .wp-block-column:focus-within h3,
.fpe-simple-columns > .wp-block-column:hover h2,
.fpe-simple-columns > .wp-block-column:hover h3,
.fpe-simple-columns > .wp-block-column:focus-within h2,
.fpe-simple-columns > .wp-block-column:focus-within h3,
.fpe-pattern-columns > .wp-block-column:hover h2,
.fpe-pattern-columns > .wp-block-column:hover h3,
.fpe-pattern-columns > .wp-block-column:focus-within h2,
.fpe-pattern-columns > .wp-block-column:focus-within h3 {
  color: #123d63 !important;
}

.portal-card:hover a,
.portal-card:focus-within a,
.audience-card:hover a,
.audience-card:focus-within a,
.fpe-audience-card:hover a,
.fpe-audience-card:focus-within a,
.quick-access-card:hover a,
.quick-access-card:focus-within a,
.quicklink-card:hover a,
.quicklink-card:focus-within a,
.fpe-pattern-cards .wp-block-column:hover a,
.fpe-pattern-cards .wp-block-column:focus-within a,
.fpe-simple-columns--cards .wp-block-column:hover a,
.fpe-simple-columns--cards .wp-block-column:focus-within a,
.fpe-simple-columns > .wp-block-column:hover a,
.fpe-simple-columns > .wp-block-column:focus-within a,
.fpe-pattern-columns > .wp-block-column:hover a,
.fpe-pattern-columns > .wp-block-column:focus-within a {
  color: #123d63 !important;
  text-decoration-color: #123d63 !important;
}

/* Výrazná zelená dlaždice zůstává zelená, ale má vždy bílý text a bez problematického hoveru */
.fpe-simple-green-tile,
.fpe-simple-green-tile:hover,
.fpe-simple-green-tile:focus-within,
.editor-styles-wrapper .fpe-simple-green-tile {
  background: #8abd24 !important;
  border-color: #8abd24 !important;
  color: #fff !important;
  transform: none !important;
}

.fpe-simple-green-tile *,
.fpe-simple-green-tile:hover *,
.fpe-simple-green-tile:focus-within *,
.editor-styles-wrapper .fpe-simple-green-tile * {
  color: #fff !important;
}

.fpe-simple-green-tile .wp-block-button__link,
.fpe-simple-green-tile:hover .wp-block-button__link,
.fpe-simple-green-tile:focus-within .wp-block-button__link,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link {
  background: #fff !important;
  border-color: #fff !important;
  color: #123d63 !important;
}

.fpe-simple-green-tile .wp-block-button__link:hover,
.editor-styles-wrapper .fpe-simple-green-tile .wp-block-button__link:hover {
  background: #123d63 !important;
  border-color: #123d63 !important;
  color: #fff !important;
}

/* Modré CTA bloky zůstávají modré s bílým textem */
.fpe-pattern-cta,
.fpe-pattern-cta:hover,
.fpe-pattern-cta:focus-within {
  background: #123d63 !important;
  color: #fff !important;
}

.fpe-pattern-cta *,
.fpe-pattern-cta:hover *,
.fpe-pattern-cta:focus-within * {
  color: #fff !important;
}

/* v78: jednotný kompaktní vizuální systém pro vzory a obsah */
:root{
  --fpe-ui-blue:#123d63;
  --fpe-ui-text:#314a5f;
  --fpe-ui-muted:#607387;
  --fpe-ui-green:#8abd24;
  --fpe-ui-line:#dce5ec;
  --fpe-ui-soft:#f6f9fb;
  --fpe-ui-gap:8px;
  --fpe-ui-gap-small:5px;
  --fpe-ui-pad:12px;
  --fpe-ui-pad-mobile:9px;
}

/* Rytmus obsahu */
.entry-content,
.page .entry-content,
.content-wrap,
.site-main,
.fpe-newsletter-archive-page{
  --wp--style--block-gap:var(--fpe-ui-gap)!important;
}

.entry-content > *,
.page .entry-content > *,
.content-wrap > *,
.site-main > *,
.content-wrap .wrap > *,
.site-main .wrap > *{
  margin-top:0!important;
  margin-bottom:var(--fpe-ui-gap)!important;
}

.entry-content > *:last-child,
.page .entry-content > *:last-child,
.content-wrap > *:last-child,
.site-main > *:last-child,
.content-wrap .wrap > *:last-child,
.site-main .wrap > *:last-child{
  margin-bottom:0!important;
}

/* Jednotná typografie pro vzory, karty a kontakty */
.fpe-pattern,
.fpe-simple,
.pattern-hero,
.wp-block-group.pattern-hero,
.notice-box,
.fpe-manual-contact,
.fpe-contact-card,
.contact-person-card,
.quicklink-card,
.portal-card,
.audience-card,
.fpe-audience-card,
.quick-access-card,
.editor-styles-wrapper .fpe-pattern,
.editor-styles-wrapper .fpe-simple,
.editor-styles-wrapper .pattern-hero,
.editor-styles-wrapper .wp-block-group.pattern-hero,
.editor-styles-wrapper .fpe-manual-contact{
  font-family:inherit!important;
  font-size:14px;
  line-height:1.35!important;
  color:var(--fpe-ui-text)!important;
  box-sizing:border-box!important;
}

.fpe-pattern *,
.fpe-simple *,
.pattern-hero *,
.wp-block-group.pattern-hero *,
.notice-box *,
.fpe-manual-contact *,
.fpe-contact-card *,
.contact-person-card *,
.quicklink-card *,
.portal-card *,
.audience-card *,
.fpe-audience-card *,
.quick-access-card *,
.editor-styles-wrapper .fpe-pattern *,
.editor-styles-wrapper .fpe-simple *,
.editor-styles-wrapper .pattern-hero *,
.editor-styles-wrapper .wp-block-group.pattern-hero *{
  box-sizing:border-box!important;
}

.fpe-pattern h1,.fpe-pattern h2,.fpe-pattern h3,.fpe-pattern h4,
.fpe-simple h1,.fpe-simple h2,.fpe-simple h3,.fpe-simple h4,
.pattern-hero h1,.pattern-hero h2,.pattern-hero h3,
.wp-block-group.pattern-hero h1,.wp-block-group.pattern-hero h2,.wp-block-group.pattern-hero h3,
.fpe-manual-contact h1,.fpe-manual-contact h2,.fpe-manual-contact h3,
.fpe-contact-card h1,.fpe-contact-card h2,.fpe-contact-card h3,
.contact-person-card h1,.contact-person-card h2,.contact-person-card h3,
.quicklink-card h1,.quicklink-card h2,.quicklink-card h3,
.portal-card h1,.portal-card h2,.portal-card h3,
.audience-card h1,.audience-card h2,.audience-card h3,
.fpe-audience-card h1,.fpe-audience-card h2,.fpe-audience-card h3,
.quick-access-card h1,.quick-access-card h2,.quick-access-card h3,
.editor-styles-wrapper .fpe-pattern h1,.editor-styles-wrapper .fpe-pattern h2,.editor-styles-wrapper .fpe-pattern h3,
.editor-styles-wrapper .fpe-simple h1,.editor-styles-wrapper .fpe-simple h2,.editor-styles-wrapper .fpe-simple h3,
.editor-styles-wrapper .pattern-hero h1,.editor-styles-wrapper .pattern-hero h2,.editor-styles-wrapper .pattern-hero h3{
  color:var(--fpe-ui-blue)!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
  margin:0 0 var(--fpe-ui-gap-small)!important;
}

.fpe-pattern h2,.fpe-simple h2,.pattern-hero h2,.wp-block-group.pattern-hero h2,
.editor-styles-wrapper .fpe-pattern h2,.editor-styles-wrapper .fpe-simple h2,.editor-styles-wrapper .pattern-hero h2{
  font-size:clamp(20px,2vw,27px);
  line-height:1.12!important;
}

.fpe-pattern h3,.fpe-simple h3,.pattern-hero h3,.wp-block-group.pattern-hero h3,
.fpe-contact-card h3,.contact-person-card h3,.quicklink-card h3,.portal-card h3,
.editor-styles-wrapper .fpe-pattern h3,.editor-styles-wrapper .fpe-simple h3,.editor-styles-wrapper .pattern-hero h3{
  font-size:16px;
  line-height:1.18!important;
}

.fpe-pattern p,.fpe-pattern li,.fpe-pattern summary,.fpe-pattern figcaption,
.fpe-simple p,.fpe-simple li,.fpe-simple summary,.fpe-simple figcaption,
.pattern-hero p,.pattern-hero li,.wp-block-group.pattern-hero p,.wp-block-group.pattern-hero li,
.notice-box p,.notice-box li,
.fpe-manual-contact p,.fpe-manual-contact li,
.fpe-contact-card p,.fpe-contact-card li,.fpe-contact-card dd,.fpe-contact-card dt,
.contact-person-card p,.contact-person-card span,.contact-person-card a,
.quicklink-card p,.quicklink-card li,
.portal-card p,.portal-card li,
.audience-card p,.audience-card li,
.fpe-audience-card p,.fpe-audience-card li,
.quick-access-card p,.quick-access-card li,
.editor-styles-wrapper .fpe-pattern p,.editor-styles-wrapper .fpe-pattern li,
.editor-styles-wrapper .fpe-simple p,.editor-styles-wrapper .fpe-simple li,
.editor-styles-wrapper .pattern-hero p{
  color:var(--fpe-ui-text)!important;
  font-size:14px;
  line-height:1.35!important;
  font-weight:400!important;
  margin:0 0 var(--fpe-ui-gap-small)!important;
}

.fpe-pattern strong,.fpe-simple strong,.pattern-hero strong,
.fpe-contact-card strong,.contact-person-card strong{
  font-weight:700!important;
}

/* Jednotný vzhled karet a běžných vzorů */
.fpe-pattern,
.fpe-simple-box,
.fpe-simple-list,
.fpe-simple-note,
.fpe-simple-highlight,
.fpe-manual-contact,
.fpe-contact-card,
.contact-person-card,
.quicklink-card,
.portal-card,
.audience-card,
.fpe-audience-card,
.quick-access-card,
.fpe-pattern-cards .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column,
.fpe-pattern-columns > .wp-block-column,
.editor-styles-wrapper .fpe-pattern,
.editor-styles-wrapper .fpe-simple-box,
.editor-styles-wrapper .fpe-simple-list,
.editor-styles-wrapper .fpe-simple-note,
.editor-styles-wrapper .fpe-simple-highlight,
.editor-styles-wrapper .fpe-manual-contact,
.editor-styles-wrapper .fpe-pattern-cards .wp-block-column,
.editor-styles-wrapper .fpe-simple-columns > .wp-block-column,
.editor-styles-wrapper .fpe-pattern-columns > .wp-block-column{
  background:#fff!important;
  border:1px solid var(--fpe-ui-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:var(--fpe-ui-pad)!important;
  margin:0 0 var(--fpe-ui-gap)!important;
}

.fpe-pattern,
.fpe-simple-box,
.fpe-simple-list,
.fpe-manual-contact,
.fpe-contact-card,
.contact-person-card,
.quicklink-card,
.portal-card,
.audience-card,
.fpe-audience-card,
.quick-access-card,
.fpe-pattern-cards .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column,
.fpe-pattern-columns > .wp-block-column{
  border-top:3px solid var(--fpe-ui-green)!important;
}

/* Kompaktní sloupce a mezery mezi dlaždicemi */
.fpe-pattern-columns,
.fpe-simple-columns,
.fpe-simple-columns--cards,
.fpe-pattern .wp-block-columns,
.fpe-simple .wp-block-columns,
.editor-styles-wrapper .fpe-pattern-columns,
.editor-styles-wrapper .fpe-simple-columns{
  gap:var(--fpe-ui-gap)!important;
  margin:var(--fpe-ui-gap) 0 0!important;
}

.fpe-pattern-columns > .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column,
.fpe-pattern-cards .wp-block-column{
  margin-bottom:0!important;
  min-width:0!important;
}

/* Zrušení nadbytečných spodních mezer uvnitř vzorů */
.fpe-pattern > *:first-child,
.fpe-simple > *:first-child,
.fpe-manual-contact > *:first-child,
.pattern-hero > *:first-child,
.wp-block-group.pattern-hero > *:first-child{
  margin-top:0!important;
}

.fpe-pattern > *:last-child,
.fpe-simple > *:last-child,
.fpe-manual-contact > *:last-child,
.pattern-hero > *:last-child,
.wp-block-group.pattern-hero > *:last-child,
.fpe-pattern-columns > .wp-block-column > *:last-child,
.fpe-simple-columns > .wp-block-column > *:last-child,
.fpe-simple-columns--cards > .wp-block-column > *:last-child{
  margin-bottom:0!important;
}

/* pattern-hero sjednocený s ostatními bloky */
.pattern-hero,
.wp-block-group.pattern-hero,
.editor-styles-wrapper .pattern-hero,
.editor-styles-wrapper .wp-block-group.pattern-hero{
  background:var(--fpe-ui-soft)!important;
  border:1px solid var(--fpe-ui-line)!important;
  border-top:5px solid var(--fpe-ui-green)!important;
  padding:var(--fpe-ui-pad)!important;
  margin:0 0 var(--fpe-ui-gap)!important;
}

/* Tlačítka ve vzorech */
.fpe-pattern .wp-block-button__link,
.fpe-simple .wp-block-button__link,
.pattern-hero .wp-block-button__link,
.editor-styles-wrapper .fpe-pattern .wp-block-button__link,
.editor-styles-wrapper .fpe-simple .wp-block-button__link,
.editor-styles-wrapper .pattern-hero .wp-block-button__link{
  background:var(--fpe-ui-green)!important;
  color:#fff!important;
  border:1px solid var(--fpe-ui-green)!important;
  border-radius:0!important;
  padding:7px 10px!important;
  font-size:12px;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}

.fpe-pattern .wp-block-buttons,
.fpe-simple .wp-block-buttons,
.pattern-hero .wp-block-buttons{
  margin:var(--fpe-ui-gap) 0 0!important;
}

/* Hover jen jemný a čitelný */
.fpe-pattern:hover,
.fpe-simple:hover,
.fpe-pattern-cards .wp-block-column:hover,
.fpe-simple-columns > .wp-block-column:hover,
.fpe-simple-columns--cards > .wp-block-column:hover,
.fpe-pattern-columns > .wp-block-column:hover,
.quicklink-card:hover,
.portal-card:hover,
.audience-card:hover,
.fpe-audience-card:hover,
.quick-access-card:hover{
  transform:none!important;
  box-shadow:none!important;
  background:#fff!important;
  color:var(--fpe-ui-text)!important;
  border-color:var(--fpe-ui-line)!important;
  border-top-color:var(--fpe-ui-green)!important;
}

/* Zelená dlaždice: jediný výrazný zelený blok */
.fpe-simple-green-tile,
.fpe-simple-green-tile:hover,
.fpe-simple-green-tile:focus-within,
.editor-styles-wrapper .fpe-simple-green-tile{
  background:var(--fpe-ui-green)!important;
  border:1px solid var(--fpe-ui-green)!important;
  color:#fff!important;
  padding:var(--fpe-ui-pad)!important;
  margin:0 0 var(--fpe-ui-gap)!important;
}

.fpe-simple-green-tile h1,.fpe-simple-green-tile h2,.fpe-simple-green-tile h3,
.fpe-simple-green-tile p,.fpe-simple-green-tile li,.fpe-simple-green-tile strong,
.fpe-simple-green-tile a:not(.wp-block-button__link),
.editor-styles-wrapper .fpe-simple-green-tile h1,.editor-styles-wrapper .fpe-simple-green-tile h2,.editor-styles-wrapper .fpe-simple-green-tile h3,
.editor-styles-wrapper .fpe-simple-green-tile p,.editor-styles-wrapper .fpe-simple-green-tile li,.editor-styles-wrapper .fpe-simple-green-tile strong{
  color:#fff!important;
}

.fpe-simple-green-tile h3{font-size:16px;font-weight:700!important}
.fpe-simple-green-tile p{font-weight:400!important}
.fpe-simple-green-tile .wp-block-button__link{
  background:#fff!important;
  border-color:#fff!important;
  color:var(--fpe-ui-blue)!important;
}

/* Modré CTA zůstane modré a čitelné */
.fpe-pattern-cta,
.fpe-pattern-cta:hover,
.fpe-pattern-cta:focus-within{
  background:var(--fpe-ui-blue)!important;
  border-color:var(--fpe-ui-blue)!important;
  color:#fff!important;
}

.fpe-pattern-cta h1,.fpe-pattern-cta h2,.fpe-pattern-cta h3,
.fpe-pattern-cta p,.fpe-pattern-cta a:not(.wp-block-button__link){
  color:#fff!important;
}

/* Kontakty a fotografie */
.fpe-contact-grid,
.contact-list-module{
  gap:var(--fpe-ui-gap)!important;
  margin:var(--fpe-ui-gap) 0!important;
}

.fpe-contact-card,
.contact-person-card,
.fpe-manual-contact{
  margin-bottom:0!important;
}

.fpe-contact-card__media img,
.fpe-contact-card__placeholder,
.contact-person-card__image img,
.fpe-manual-contact__photo img{
  border-radius:50%!important;
}

/* Mobil: menší rozestupy a dlaždice blíž u sebe */
@media(max-width:782px){
  :root{
    --fpe-ui-gap:6px;
    --fpe-ui-gap-small:3px;
    --fpe-ui-pad:9px;
  }

  .entry-content > *,
  .page .entry-content > *,
  .content-wrap > *,
  .site-main > *,
  .content-wrap .wrap > *,
  .site-main .wrap > *{
    margin-bottom:var(--fpe-ui-gap)!important;
  }

  .fpe-pattern,
  .fpe-simple-box,
  .fpe-simple-list,
  .fpe-simple-note,
  .fpe-simple-highlight,
  .fpe-simple-green-tile,
  .fpe-manual-contact,
  .fpe-contact-card,
  .contact-person-card,
  .quicklink-card,
  .portal-card,
  .audience-card,
  .fpe-audience-card,
  .quick-access-card,
  .pattern-hero,
  .wp-block-group.pattern-hero{
    padding:var(--fpe-ui-pad)!important;
    margin-bottom:var(--fpe-ui-gap)!important;
  }

  .fpe-pattern-columns,
  .fpe-simple-columns,
  .fpe-simple-columns--cards,
  .fpe-pattern .wp-block-columns,
  .fpe-simple .wp-block-columns,
  .wp-block-columns{
    gap:var(--fpe-ui-gap)!important;
    margin-top:var(--fpe-ui-gap)!important;
    margin-bottom:0!important;
  }

  .wp-block-column,
  .fpe-pattern-columns > .wp-block-column,
  .fpe-simple-columns > .wp-block-column,
  .fpe-simple-columns--cards > .wp-block-column,
  .fpe-pattern-cards .wp-block-column{
    margin-bottom:var(--fpe-ui-gap)!important;
  }

  .wp-block-column:last-child,
  .fpe-pattern-columns > .wp-block-column:last-child,
  .fpe-simple-columns > .wp-block-column:last-child,
  .fpe-simple-columns--cards > .wp-block-column:last-child,
  .fpe-pattern-cards .wp-block-column:last-child{
    margin-bottom:0!important;
  }

  .fpe-pattern h2,.fpe-simple h2,.pattern-hero h2{font-size:20px}
  .fpe-pattern h3,.fpe-simple h3,.pattern-hero h3,.fpe-contact-card h3,.contact-person-card h3{font-size:16px}
}

/* v79: kompaktní rozcestníky, bez dvojích rámečků, sjednocené rychlé přístupy */

/* Rozcestníky: vnější skupiny nesmí vytvářet druhý rámeček ani velkou bílou kartu */
.fpe-pattern:has(.fpe-simple-green-tile),
.fpe-pattern:has(.fpe-home-quick-access-card),
.fpe-simple:has(.fpe-simple-green-tile),
.fpe-pattern-cards,
.fpe-simple-columns--cards,
.fpe-home-quick-access-pattern,
.editor-styles-wrapper .fpe-pattern:has(.fpe-simple-green-tile),
.editor-styles-wrapper .fpe-pattern:has(.fpe-home-quick-access-card),
.editor-styles-wrapper .fpe-home-quick-access-pattern {
  background: transparent !important;
  border: 0 !important;
  border-top: 0 !important;
  padding: 0 !important;
  margin: 0 0 6px !important;
  box-shadow: none !important;
}

/* Pokud prohlížeč neumí :has, aspoň konkrétní patterny držet bez dvojitého dojmu */
.fpe-pattern.fpe-pattern-cards,
.fpe-pattern.fpe-pattern-tools,
.fpe-pattern.fpe-pattern-contact-list,
.fpe-pattern.fpe-pattern-contact-events {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* Kompaktní mezery mezi dlaždicemi */
.fpe-pattern .wp-block-columns,
.fpe-simple .wp-block-columns,
.fpe-simple-columns,
.fpe-simple-columns--cards,
.fpe-pattern-columns,
.fpe-home-quick-access-columns,
.wp-block-columns.fpe-home-quick-access-columns {
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.fpe-pattern .wp-block-column,
.fpe-simple .wp-block-column,
.fpe-home-quick-access-columns .wp-block-column {
  margin-bottom: 0 !important;
}

/* Zelené rozcestníkové dlaždice: menší odsazení, bez přehnané výšky */
.fpe-simple-green-tile,
.fpe-simple-green-tile:hover,
.fpe-simple-green-tile:focus-within,
.editor-styles-wrapper .fpe-simple-green-tile {
  min-height: 0 !important;
  padding: 18px 20px !important;
  margin: 0 0 8px !important;
  display: block !important;
  background: var(--fpe-ui-green, #8abd24) !important;
  border: 0 !important;
  color: #fff !important;
}

.fpe-simple-columns .fpe-simple-green-tile,
.fpe-simple-columns--cards .fpe-simple-green-tile,
.fpe-pattern-columns .fpe-simple-green-tile,
.fpe-pattern-cards .fpe-simple-green-tile,
.fpe-home-quick-access-columns .fpe-simple-green-tile {
  margin-bottom: 0 !important;
}

.fpe-simple-green-tile h2,
.fpe-simple-green-tile h3,
.editor-styles-wrapper .fpe-simple-green-tile h2,
.editor-styles-wrapper .fpe-simple-green-tile h3 {
  color: #fff !important;
  font-size: 18px ;
  line-height: 1.18 !important;
  font-weight: 700 !important;
  margin: 0 0 6px !important;
}

.fpe-simple-green-tile p,
.fpe-simple-green-tile li,
.editor-styles-wrapper .fpe-simple-green-tile p,
.editor-styles-wrapper .fpe-simple-green-tile li {
  color: #fff !important;
  font-size: 14px ;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  margin: 0 0 4px !important;
}

/* Standardní dlaždice/karty: bez dvojích rámečků a menší vnitřní padding */
.fpe-pattern-cards .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column,
.fpe-pattern-columns > .wp-block-column,
.fpe-simple-columns > .wp-block-column {
  padding: 12px !important;
  margin: 0 !important;
  border: 1px solid var(--fpe-ui-line, #dce5ec) !important;
  border-top: 3px solid var(--fpe-ui-green, #8abd24) !important;
  background: #fff !important;
  box-shadow: none !important;
}

/* Rychlé přístupy na homepage i ve vzoru */
.fpe-home-quick-access,
.home-quick-access,
.quick-access,
.quick-access-grid,
.fpe-home-quick-access-pattern {
  margin: 0 0 8px !important;
}

.fpe-home-quick-access-columns,
.quick-access-grid,
.home-quick-access__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

.fpe-home-quick-access-columns.wp-block-columns {
  display: flex !important;
}

.fpe-home-quick-access-columns.wp-block-columns > .wp-block-column {
  display: flex !important;
}

.fpe-home-quick-access-card,
.quick-access-card,
.home-quick-access-card,
.fpe-home-quick-access-columns .wp-block-column > .wp-block-group {
  width: 100% !important;
  min-height: 0 !important;
  height: 100% !important;
  background: #fff !important;
  border: 1px solid var(--fpe-ui-line, #dce5ec) !important;
  border-top: 3px solid var(--fpe-ui-green, #8abd24) !important;
  padding: 12px !important;
  margin: 0 !important;
  color: var(--fpe-ui-text, #314a5f) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

.fpe-home-quick-access-card h2,
.fpe-home-quick-access-card h3,
.quick-access-card h2,
.quick-access-card h3,
.home-quick-access-card h2,
.home-quick-access-card h3 {
  color: var(--fpe-ui-blue, #123d63) !important;
  font-size: 17px ;
  line-height: 1.18 !important;
  font-weight: 700 !important;
  margin: 0 0 6px !important;
}

.fpe-home-quick-access-card ul,
.quick-access-card ul,
.home-quick-access-card ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 4px !important;
}

.fpe-home-quick-access-card li,
.quick-access-card li,
.home-quick-access-card li {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px ;
  line-height: 1.35 !important;
}

.fpe-home-quick-access-card a,
.quick-access-card a,
.home-quick-access-card a {
  color: var(--fpe-ui-blue, #123d63) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 2px !important;
}

/* Žádný zelený hover s nečitelným textem */
.fpe-home-quick-access-card:hover,
.quick-access-card:hover,
.home-quick-access-card:hover,
.fpe-pattern-cards .wp-block-column:hover,
.fpe-simple-columns--cards > .wp-block-column:hover,
.fpe-pattern-columns > .wp-block-column:hover,
.fpe-simple-columns > .wp-block-column:hover {
  background: #fff !important;
  color: var(--fpe-ui-text, #314a5f) !important;
  border-color: var(--fpe-ui-line, #dce5ec) !important;
  border-top-color: var(--fpe-ui-green, #8abd24) !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Mobilní zobrazení: menší odsazení a menší mezery mezi dlaždicemi */
@media (max-width: 782px) {
  .fpe-pattern:has(.fpe-simple-green-tile),
  .fpe-pattern:has(.fpe-home-quick-access-card),
  .fpe-home-quick-access-pattern,
  .fpe-pattern-cards,
  .fpe-simple-columns--cards {
    margin-bottom: 5px !important;
  }

  .fpe-pattern .wp-block-columns,
  .fpe-simple .wp-block-columns,
  .fpe-simple-columns,
  .fpe-simple-columns--cards,
  .fpe-pattern-columns,
  .fpe-home-quick-access-columns,
  .wp-block-columns.fpe-home-quick-access-columns {
    gap: 6px !important;
  }

  .fpe-home-quick-access-columns.wp-block-columns {
    display: block !important;
  }

  .fpe-home-quick-access-columns.wp-block-columns > .wp-block-column,
  .fpe-pattern .wp-block-column,
  .fpe-simple .wp-block-column {
    margin-bottom: 6px !important;
  }

  .fpe-home-quick-access-columns.wp-block-columns > .wp-block-column:last-child,
  .fpe-pattern .wp-block-column:last-child,
  .fpe-simple .wp-block-column:last-child {
    margin-bottom: 0 !important;
  }

  .fpe-simple-green-tile,
  .fpe-simple-green-tile:hover,
  .fpe-simple-green-tile:focus-within {
    padding: 12px 13px !important;
    margin-bottom: 6px !important;
  }

  .fpe-simple-columns .fpe-simple-green-tile,
  .fpe-simple-columns--cards .fpe-simple-green-tile,
  .fpe-pattern-columns .fpe-simple-green-tile,
  .fpe-pattern-cards .fpe-simple-green-tile,
  .fpe-home-quick-access-columns .fpe-simple-green-tile {
    margin-bottom: 0 !important;
  }

  .fpe-simple-green-tile h2,
  .fpe-simple-green-tile h3 {
    font-size: 17px ;
    margin-bottom: 4px !important;
  }

  .fpe-simple-green-tile p,
  .fpe-simple-green-tile li {
    font-size: 14px ;
    line-height: 1.32 !important;
  }

  .fpe-pattern-cards .wp-block-column,
  .fpe-simple-columns--cards > .wp-block-column,
  .fpe-pattern-columns > .wp-block-column,
  .fpe-simple-columns > .wp-block-column,
  .fpe-home-quick-access-card,
  .quick-access-card,
  .home-quick-access-card,
  .fpe-home-quick-access-columns .wp-block-column > .wp-block-group {
    padding: 9px !important;
  }

  .fpe-home-quick-access-columns,
  .quick-access-grid,
  .home-quick-access__grid {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }
}


/* v80: velikosti textu nastavené v editoru se propíší i do publikované verze */
.fpe-pattern .has-small-font-size,
.fpe-simple .has-small-font-size,
.pattern-hero .has-small-font-size,
.wp-block-group.pattern-hero .has-small-font-size,
.fpe-manual-contact .has-small-font-size,
.fpe-contact-card .has-small-font-size,
.contact-person-card .has-small-font-size,
.quicklink-card .has-small-font-size,
.portal-card .has-small-font-size,
.audience-card .has-small-font-size,
.fpe-audience-card .has-small-font-size,
.quick-access-card .has-small-font-size,
.editor-styles-wrapper .fpe-pattern .has-small-font-size,
.editor-styles-wrapper .fpe-simple .has-small-font-size {
  font-size: var(--wp--preset--font-size--small, 13px) !important;
}

.fpe-pattern .has-medium-font-size,
.fpe-simple .has-medium-font-size,
.pattern-hero .has-medium-font-size,
.wp-block-group.pattern-hero .has-medium-font-size,
.fpe-manual-contact .has-medium-font-size,
.fpe-contact-card .has-medium-font-size,
.contact-person-card .has-medium-font-size,
.quicklink-card .has-medium-font-size,
.portal-card .has-medium-font-size,
.audience-card .has-medium-font-size,
.fpe-audience-card .has-medium-font-size,
.quick-access-card .has-medium-font-size,
.editor-styles-wrapper .fpe-pattern .has-medium-font-size,
.editor-styles-wrapper .fpe-simple .has-medium-font-size {
  font-size: var(--wp--preset--font-size--medium, 20px) !important;
}

.fpe-pattern .has-large-font-size,
.fpe-simple .has-large-font-size,
.pattern-hero .has-large-font-size,
.wp-block-group.pattern-hero .has-large-font-size,
.fpe-manual-contact .has-large-font-size,
.fpe-contact-card .has-large-font-size,
.contact-person-card .has-large-font-size,
.quicklink-card .has-large-font-size,
.portal-card .has-large-font-size,
.audience-card .has-large-font-size,
.fpe-audience-card .has-large-font-size,
.quick-access-card .has-large-font-size,
.editor-styles-wrapper .fpe-pattern .has-large-font-size,
.editor-styles-wrapper .fpe-simple .has-large-font-size {
  font-size: var(--wp--preset--font-size--large, 26px) !important;
}

.fpe-pattern .has-x-large-font-size,
.fpe-simple .has-x-large-font-size,
.pattern-hero .has-x-large-font-size,
.wp-block-group.pattern-hero .has-x-large-font-size,
.fpe-manual-contact .has-x-large-font-size,
.fpe-contact-card .has-x-large-font-size,
.contact-person-card .has-x-large-font-size,
.quicklink-card .has-x-large-font-size,
.portal-card .has-x-large-font-size,
.audience-card .has-x-large-font-size,
.fpe-audience-card .has-x-large-font-size,
.quick-access-card .has-x-large-font-size,
.editor-styles-wrapper .fpe-pattern .has-x-large-font-size,
.editor-styles-wrapper .fpe-simple .has-x-large-font-size {
  font-size: var(--wp--preset--font-size--x-large, 32px) !important;
}

/* Výchozí velikost běžného textu zůstává jednotná, ale už není !important, takže vlastní velikost z editoru ji přepíše. */
.fpe-pattern p,
.fpe-pattern li,
.fpe-pattern summary,
.fpe-pattern figcaption,
.fpe-simple p,
.fpe-simple li,
.fpe-simple summary,
.fpe-simple figcaption,
.pattern-hero p,
.pattern-hero li,
.wp-block-group.pattern-hero p,
.wp-block-group.pattern-hero li,
.notice-box p,
.notice-box li,
.fpe-manual-contact p,
.fpe-manual-contact li,
.fpe-contact-card p,
.fpe-contact-card li,
.fpe-contact-card dd,
.fpe-contact-card dt,
.contact-person-card p,
.contact-person-card span,
.quicklink-card p,
.quicklink-card li,
.portal-card p,
.portal-card li,
.audience-card p,
.audience-card li,
.fpe-audience-card p,
.fpe-audience-card li,
.quick-access-card p,
.quick-access-card li {
  font-size: 14px;
}

/* v81: úvodní stránka - spravovatelné a proporčně stejné rychlé přístupy */
.front-access .front-access__grid {
  align-items: stretch !important;
}

.front-access .access-panel {
  display: flex !important;
  flex-direction: column !important;
}

.front-access .portal-card-grid,
.front-access .portal-card-grid--home,
.front-access .portal-card-grid--compact,
.front-access .portal-card-grid--light {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
  margin: 0 !important;
  flex: 1 1 auto !important;
}

.front-access .portal-card {
  min-height: 112px !important;
  height: 100% !important;
  padding: 14px 15px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 6px !important;
  background: var(--fpe-ui-green, #8abd24) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
}

.front-access .portal-card:hover,
.front-access .portal-card:focus {
  background: var(--fpe-ui-green, #8abd24) !important;
  color: #fff !important;
  transform: none !important;
  box-shadow: none !important;
}

.front-access .portal-card__label,
.front-access .portal-card__desc,
.front-access .portal-card:hover .portal-card__label,
.front-access .portal-card:hover .portal-card__desc {
  color: #fff !important;
}

.front-access .portal-card__label {
  font-size: 18px !important;
  line-height: 1.18 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.front-access .portal-card__desc {
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  margin: 0 !important;
}

.front-access .access-panel--employee .portal-card,
.front-access .access-panel--student .portal-card {
  padding: 14px 15px !important;
  min-height: 112px !important;
}

.front-access .access-panel--student .portal-card-grid {
  grid-auto-rows: 1fr !important;
}

/* Spravovatelné důležité odkazy použité mimo homepage */
.quicklinks {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 8px !important;
  margin: 8px 0 !important;
}

.quicklink-card {
  min-height: 112px !important;
}

/* Aktuality se při nulovém počtu vůbec nevykreslí, toto jen drží návazné mezery */
.front-news + .portal-section {
  margin-top: 0 !important;
}

@media (max-width: 782px) {
  .front-access .portal-card-grid,
  .front-access .portal-card-grid--home,
  .front-access .portal-card-grid--compact,
  .front-access .portal-card-grid--light {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  .front-access .portal-card,
  .front-access .access-panel--employee .portal-card,
  .front-access .access-panel--student .portal-card {
    min-height: 0 !important;
    padding: 11px 12px !important;
    gap: 4px !important;
  }

  .front-access .portal-card__label {
    font-size: 17px !important;
  }

  .front-access .portal-card__desc {
    font-size: 14px !important;
    line-height: 1.32 !important;
  }
}

/* v82: samostatná správa Úvodní tlačítka - stejný frontend vzhled */
.front-access .portal-card-grid--zamestnanci,
.front-access .portal-card-grid--studujici {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
}

.front-access .portal-card-grid--studujici .portal-card,
.front-access .portal-card-grid--zamestnanci .portal-card {
  min-height: 112px !important;
  padding: 14px 15px !important;
}

@media (max-width: 782px) {
  .front-access .portal-card-grid--zamestnanci,
  .front-access .portal-card-grid--studujici {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  .front-access .portal-card-grid--studujici .portal-card,
  .front-access .portal-card-grid--zamestnanci .portal-card {
    min-height: 0 !important;
    padding: 11px 12px !important;
  }
}

/* v83: detail Fakultníku/Studentníku - zamezení zdvojení a nafouknutí layoutu */
.single-fpe_news_issue .fpe-newsletter-content {
  width: calc(100% - 40px) !important;
  max-width: 1080px !important;
  margin: 18px auto 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-toc-card {
  margin: 0 0 14px !important;
  padding: 14px 18px !important;
  border-left: 0 !important;
  border-top: 3px solid #8abd24 !important;
  background: #fff !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-section {
  margin: 14px 0 18px !important;
  background: #fff !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero {
  min-height: 128px !important;
  margin: 0 !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero-inner {
  padding: 0 20px 18px !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-section-title {
  font-size: clamp(22px, 2.5vw, 30px) !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-section-body {
  padding: 18px 22px !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-item {
  margin: 0 0 16px !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-item h3 {
  font-size: 21px !important;
  margin: 0 0 6px !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-item-content {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.single-fpe_news_issue .fpe-newsletter-content .issue-green-mark {
  margin-top: 12px !important;
  height: 4px !important;
}

@media(max-width:760px){
  .single-fpe_news_issue .fpe-newsletter-content {
    width: calc(100% - 24px) !important;
    margin-top: 12px !important;
  }

  .single-fpe_news_issue .fpe-newsletter-content .issue-section {
    margin: 12px 0 14px !important;
  }

  .single-fpe_news_issue .fpe-newsletter-content .issue-section-hero {
    min-height: 112px !important;
  }

  .single-fpe_news_issue .fpe-newsletter-content .issue-section-hero-inner {
    padding: 0 16px 15px !important;
  }

  .single-fpe_news_issue .fpe-newsletter-content .issue-section-body {
    padding: 15px 16px !important;
  }
}

/* v84: detail vydání - oprava horizontálního přetečení a mobilního oddalování stránky */
html,
body {
  max-width: 100% !important;
}

body.single-fpe_news_issue,
body.single-fakultnik_issue,
body.single-studentnik_issue {
  overflow-x: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.single-fpe_news_issue *,
body.single-fakultnik_issue *,
body.single-studentnik_issue * {
  box-sizing: border-box !important;
}

body.single-fpe_news_issue .site,
body.single-fpe_news_issue .site-header,
body.single-fpe_news_issue main,
body.single-fpe_news_issue .fpe-newsletter-single,
body.single-fpe_news_issue .fpe-newsletter-hero,
body.single-fpe_news_issue .fpe-newsletter-content,
body.single-fpe_news_issue .wrap,
body.single-fakultnik_issue .site,
body.single-fakultnik_issue .site-header,
body.single-fakultnik_issue main,
body.single-fakultnik_issue .issue-page,
body.single-studentnik_issue .site,
body.single-studentnik_issue .site-header,
body.single-studentnik_issue main,
body.single-studentnik_issue .issue-page {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
}

body.single-fpe_news_issue .wrap,
body.single-fpe_news_issue .fpe-newsletter-hero__inner,
body.single-fpe_news_issue .fpe-newsletter-content {
  width: min(1080px, calc(100% - 24px)) !important;
  max-width: calc(100% - 24px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.single-fpe_news_issue .fpe-newsletter-hero {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  background-size: cover !important;
  background-position: center !important;
}

body.single-fpe_news_issue .fpe-newsletter-hero__inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.single-fpe_news_issue .fpe-newsletter-content {
  margin-top: 14px !important;
  padding: 0 !important;
}

body.single-fpe_news_issue .issue-toc-card,
body.single-fpe_news_issue .issue-section,
body.single-fpe_news_issue .issue-section-hero,
body.single-fpe_news_issue .issue-section-body,
body.single-fpe_news_issue .issue-item,
body.single-fpe_news_issue .issue-item-content,
body.single-fpe_news_issue .fpenews-attachments,
body.single-fpe_news_issue .fpenews-file-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

body.single-fpe_news_issue .issue-item-content img,
body.single-fpe_news_issue .issue-item-content figure,
body.single-fpe_news_issue .issue-item-content table,
body.single-fpe_news_issue .issue-item-content iframe,
body.single-fpe_news_issue .issue-item-content video,
body.single-fpe_news_issue .issue-item-content embed,
body.single-fpe_news_issue .issue-item-content object {
  max-width: 100% !important;
}

body.single-fpe_news_issue .issue-item-content img,
body.single-fpe_news_issue .issue-item-content video {
  height: auto !important;
}

body.single-fpe_news_issue .issue-item-content table {
  display: block !important;
  overflow-x: auto !important;
  width: 100% !important;
}

body.single-fpe_news_issue .issue-toc-list {
  columns: 1 !important;
  column-gap: 0 !important;
  padding-left: 20px !important;
  margin-left: 0 !important;
}

body.single-fpe_news_issue .issue-toc-list li,
body.single-fpe_news_issue .issue-toc-list a {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}

body.single-fpe_news_issue .fpenews-file-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

body.single-fpe_news_issue .fpenews-file-main,
body.single-fpe_news_issue .fpenews-file-actions {
  min-width: 0 !important;
  max-width: 100% !important;
}

body.single-fpe_news_issue .fpenews-file-actions {
  justify-content: flex-start !important;
}

@media (max-width: 760px) {
  body.single-fpe_news_issue .wrap,
  body.single-fpe_news_issue .fpe-newsletter-hero__inner,
  body.single-fpe_news_issue .fpe-newsletter-content {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-hero {
    min-height: 205px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-hero h1 {
    font-size: clamp(26px, 8vw, 34px) !important;
    line-height: 1.1 !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero {
    min-height: 95px !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero-inner {
    padding: 0 13px 13px !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-section-body {
    padding: 13px !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-item h3 {
    font-size: 20px !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-item-content {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
}

/* v85: širší obsah webu, oprava obsahu vydání a hero sekcí */
:root{
  --fpe-page-width: 1360px;
  --fpe-wide-width: 1480px;
}

.wrap,
.content-wrap .wrap,
.site-main .wrap,
.front-access .wrap,
.front-news .wrap,
.portal-section .wrap,
.page-hero .wrap,
.fpe-newsletter-content,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-archive-page .wrap {
  max-width: var(--fpe-page-width) !important;
}

@media (min-width: 1500px) {
  .wrap,
  .content-wrap .wrap,
  .site-main .wrap,
  .front-access .wrap,
  .front-news .wrap,
  .portal-section .wrap,
  .page-hero .wrap,
  .fpe-newsletter-content,
  .fpe-newsletter-archive-wrap,
  .fpe-newsletter-archive-page .wrap {
    max-width: var(--fpe-wide-width) !important;
  }
}

body.single-fpe_news_issue .wrap,
body.single-fpe_news_issue .fpe-newsletter-hero__inner,
body.single-fpe_news_issue .fpe-newsletter-content {
  width: min(var(--fpe-page-width), calc(100% - 32px)) !important;
  max-width: min(var(--fpe-page-width), calc(100% - 32px)) !important;
}

@media (min-width: 1500px) {
  body.single-fpe_news_issue .wrap,
  body.single-fpe_news_issue .fpe-newsletter-hero__inner,
  body.single-fpe_news_issue .fpe-newsletter-content {
    width: min(var(--fpe-wide-width), calc(100% - 48px)) !important;
    max-width: min(var(--fpe-wide-width), calc(100% - 48px)) !important;
  }
}

/* Obsah vydání: čísluje pouze <ol>, sekce už nepřidává druhé číslo */
.issue-toc-list span:first-child {
  display: none !important;
}

.issue-toc-list .issue-toc-text {
  display: inline !important;
}

/* Herobannery sekcí vydání */
body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero {
  min-height: var(--fpekom-issue-section-height, 150px) !important;
  background-position: var(--fpekom-issue-section-position, center center) !important;
}

body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero::before,
body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero:before {
  background: linear-gradient(90deg, rgba(18,61,99,.46), rgba(18,61,99,.08)) !important;
}

body.single-fpe_news_issue .fpe-newsletter-content .issue-section-title {
  color: #fff !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.35) !important;
}

@media(max-width:760px){
  body.single-fpe_news_issue .wrap,
  body.single-fpe_news_issue .fpe-newsletter-hero__inner,
  body.single-fpe_news_issue .fpe-newsletter-content {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
  }

  body.single-fpe_news_issue .fpe-newsletter-content .issue-section-hero {
    min-height: max(115px, calc(var(--fpekom-issue-section-height, 150px) - 28px)) !important;
  }
}

/* v86: jednotná šířka obsahu napříč celým webem + oprava detailu vydání */
:root {
  --fpe-page-width: 1360px;
  --fpe-page-gutter: 32px;
}

@media (min-width: 1500px) {
  :root {
    --fpe-page-width: 1360px;
    --fpe-page-gutter: 40px;
  }
}

/* Jedna společná šířka pro všechny běžné stránky, úvod, výpisy, detail vydání i moduly */
.wrap,
.header-inner,
.site-header .wrap,
.front-hero__inner,
.front-access .wrap,
.front-news .wrap,
.portal-section .wrap,
.page-hero .wrap,
.page-hero__inner,
.content-wrap,
.content-wrap > .wrap,
.site-main > .wrap,
.static-page,
.page-content,
.entry-content,
.page .entry-content,
.fpe-newsletter-content,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-archive-page .wrap,
.fpe-newsletter-hero__inner,
.issue-page > .issue-content,
.issue-content,
.fpenews-public-wrap,
.fpenews-public-archive,
.fpe-brandcloud-wrap,
.fpe-brandcloud-single-content {
  width: min(var(--fpe-page-width), calc(100% - var(--fpe-page-gutter))) !important;
  max-width: min(var(--fpe-page-width), calc(100% - var(--fpe-page-gutter))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Prvky, které mají být full-width, nesmí zdědit úzký sloupec */
.front-hero,
.page-hero,
.fpe-newsletter-hero,
.issue-title,
.fpe-newsletter-archive-hero,
.site-header,
.site-footer,
main,
.content-wrap .entry-content,
.page-content .entry-content,
.static-page .entry-content {
  width: 100% !important;
  max-width: 100% !important;
}

/* U běžného obsahu uvnitř sjednoceného wrapperu už znovu nezmenšovat */
.content-wrap .entry-content,
.page-content .entry-content,
.static-page .entry-content,
.fpe-newsletter-content .entry-content {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Detail vydání: sjednocená šířka a žádné přetékání */
body.single-fpe_news_issue .wrap,
body.single-fpe_news_issue .fpe-newsletter-hero__inner,
body.single-fpe_news_issue .fpe-newsletter-content {
  width: min(var(--fpe-page-width), calc(100% - var(--fpe-page-gutter))) !important;
  max-width: min(var(--fpe-page-width), calc(100% - var(--fpe-page-gutter))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.single-fpe_news_issue .fpe-newsletter-content {
  margin-top: 16px !important;
}

/* Obsah vydání má být na desktopu minimálně ve dvou sloupcích */
body.single-fpe_news_issue .issue-toc-list,
.issue-toc-list {
  columns: 2 !important;
  column-gap: 42px !important;
  list-style: decimal !important;
  padding-left: 22px !important;
  margin: 0 !important;
}

body.single-fpe_news_issue .issue-toc-list li,
.issue-toc-list li {
  break-inside: avoid !important;
  margin: 0 0 6px !important;
  padding-left: 0 !important;
}

/* Po opravě dvojitého číslování zůstává číslování jen z <ol> */
body.single-fpe_news_issue .issue-toc-list span:first-child,
.issue-toc-list span:first-child {
  display: none !important;
}

body.single-fpe_news_issue .issue-toc-list .issue-toc-text,
.issue-toc-list .issue-toc-text {
  display: inline !important;
}

/* Oprava překrytí názvů sekcí: overlay je pod textem, text je vždy nad ním */
body.single-fpe_news_issue .issue-section-hero,
.issue-section-hero {
  min-height: var(--fpekom-issue-section-height, 160px) !important;
  background-position: var(--fpekom-issue-section-position, center center) !important;
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

body.single-fpe_news_issue .issue-section-hero::before,
body.single-fpe_news_issue .issue-section-hero:before,
.issue-section-hero::before,
.issue-section-hero:before {
  z-index: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(18,61,99,.38), rgba(18,61,99,.04)) !important;
}

body.single-fpe_news_issue .issue-section-hero-inner,
.issue-section-hero-inner {
  position: relative !important;
  z-index: 2 !important;
}

body.single-fpe_news_issue .issue-section-title,
.issue-section-title {
  position: relative !important;
  z-index: 3 !important;
  color: #fff !important;
  opacity: 1 !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.42) !important;
  mix-blend-mode: normal !important;
}

/* Pokud existuje starší černá vrstva nebo pseudo-element z plug-inu/šablony, nesmí ležet nad titulkem */
body.single-fpe_news_issue .issue-section-hero > *:not(.issue-section-hero-inner) {
  z-index: 1 !important;
}

/* Mobil: jednotné okraje, obsah vydání v jednom sloupci kvůli čitelnosti */
@media (max-width: 760px) {
  :root {
    --fpe-page-gutter: 20px;
  }

  .wrap,
  .header-inner,
  .site-header .wrap,
  .front-hero__inner,
  .front-access .wrap,
  .front-news .wrap,
  .portal-section .wrap,
  .page-hero .wrap,
  .page-hero__inner,
  .content-wrap,
  .content-wrap > .wrap,
  .site-main > .wrap,
  .static-page,
  .page-content,
  .entry-content,
  .page .entry-content,
  .fpe-newsletter-content,
  .fpe-newsletter-archive-wrap,
  .fpe-newsletter-archive-page .wrap,
  .fpe-newsletter-hero__inner,
  body.single-fpe_news_issue .wrap,
  body.single-fpe_news_issue .fpe-newsletter-hero__inner,
  body.single-fpe_news_issue .fpe-newsletter-content {
    width: calc(100% - var(--fpe-page-gutter)) !important;
    max-width: calc(100% - var(--fpe-page-gutter)) !important;
  }

  body.single-fpe_news_issue .issue-toc-list,
  .issue-toc-list {
    columns: 1 !important;
    column-gap: 0 !important;
  }

  body.single-fpe_news_issue .issue-section-hero,
  .issue-section-hero {
    min-height: max(125px, calc(var(--fpekom-issue-section-height, 160px) - 25px)) !important;
  }
}

/* v87: sjednocení layoutového systému pro šablonu i moduly pluginů */
:root{
  --fpe-layout-width: 1360px;
  --fpe-layout-gutter: 32px;
  --fpe-layout-gap: 14px;
}

@media (min-width: 1500px){
  :root{
    --fpe-layout-width: 1360px;
    --fpe-layout-gutter: 40px;
  }
}

@media (max-width: 760px){
  :root{
    --fpe-layout-gutter: 20px;
    --fpe-layout-gap: 8px;
  }
}

/* Jedna společná osa a šířka pro web, moduly i pluginy */
.wrap,
.header-inner,
.site-header .wrap,
.front-hero__inner,
.front-access .wrap,
.front-news .wrap,
.portal-section .wrap,
.page-hero .wrap,
.page-hero__inner,
.content-wrap,
.content-wrap > .wrap,
.site-main > .wrap,
.static-page,
.page-content,
.entry-content,
.page .entry-content,
.fpe-newsletter-content,
.fpe-newsletter-hero__inner,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-archive-page .wrap,
.issue-content,
.fpenews-public-wrap,
.fpenews-public-archive,
.issue-archive-module,
.fpe-brandcloud-filter,
.fpe-brandcloud-grid.brandcloud-grid,
.fpe-brandcloud-single-content,
.fpe-brandcloud-hero__inner,
.fpe-brandcloud-single-hero__inner,
.brandcloud-grid,
.brandcloud-filter,
.quicklinks,
.fpe-contact-grid,
.fpe-contact-events-module {
  width: min(var(--fpe-layout-width), calc(100% - var(--fpe-layout-gutter))) !important;
  max-width: min(var(--fpe-layout-width), calc(100% - var(--fpe-layout-gutter))) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Full-width obálky zůstávají full-width, vnitřek se zarovná přes .wrap/inner */
main,
.site-header,
.site-footer,
.front-hero,
.page-hero,
.fpe-newsletter-hero,
.fpe-newsletter-archive-hero,
.issue-title,
.fpe-brandcloud-hero,
.fpe-brandcloud-single-hero,
.fpenews-hero-wrap {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* Pokud je obsah uvnitř již omezeného wrapperu, nepřidávat další vnořené zúžení */
.content-wrap .entry-content,
.page-content .entry-content,
.static-page .entry-content,
.fpe-newsletter-content .entry-content,
.wrap .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Sloupce a blokové moduly mají využít celou dostupnou šířku */
.entry-content > .wp-block-columns,
.entry-content > .wp-block-group,
.entry-content > .wp-block-cover,
.entry-content > .wp-block-media-text,
.page .entry-content > .wp-block-columns,
.page .entry-content > .wp-block-group,
.fpe-pattern,
.fpe-simple,
.fpe-pattern-columns,
.fpe-simple-columns,
.fpe-simple-columns--cards,
.fpe-home-quick-access-pattern,
.fpe-home-quick-access-columns,
.portal-card-grid,
.front-access__grid,
.post-list,
.event-list,
.quicklinks,
.fpe-contact-events-module,
.fpe-brandcloud-grid.brandcloud-grid,
.brandcloud-grid,
.issue-section,
.issue-section-body,
.issue-toc-card {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Sloupcové layouty napříč webem - stejný gap a vyplnění šířky */
.wp-block-columns,
.fpe-pattern .wp-block-columns,
.fpe-simple .wp-block-columns,
.fpe-pattern-columns,
.fpe-simple-columns,
.fpe-simple-columns--cards,
.fpe-home-quick-access-columns,
.front-access__grid,
.portal-card-grid,
.post-list,
.event-list,
.quicklinks,
.fpe-contact-events-module,
.fpe-brandcloud-grid.brandcloud-grid,
.brandcloud-grid {
  gap: var(--fpe-layout-gap) !important;
}

.wp-block-columns > .wp-block-column,
.fpe-pattern .wp-block-column,
.fpe-simple .wp-block-column,
.fpe-pattern-columns > .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column {
  min-width: 0 !important;
  max-width: 100% !important;
}

/* Gridy modulů na širší layout */
.post-list,
.event-list,
.quicklinks,
.fpe-brandcloud-grid.brandcloud-grid,
.brandcloud-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  align-items: stretch !important;
}

/* Brandcloud nesmí zůstávat na starých 1120 px */
.fpe-brandcloud-filter,
.fpe-brandcloud-grid.brandcloud-grid,
.fpe-brandcloud-hero__inner,
.fpe-brandcloud-single-hero__inner,
.fpe-brandcloud-single-content {
  max-width: min(var(--fpe-layout-width), calc(100% - var(--fpe-layout-gutter))) !important;
}

/* Newsletterové výpisy a detail vydání na stejné šířce */
.fpe-newsletter-content,
.fpe-newsletter-archive-wrap,
.issue-content,
.issue-toc-card,
.issue-section,
.issue-section-body,
.fpenews-public-wrap,
.fpenews-public-archive,
.issue-archive-card {
  max-width: min(var(--fpe-layout-width), calc(100% - var(--fpe-layout-gutter))) !important;
}

/* Obsah vydání: na širším layoutu lépe využít šířku */
@media (min-width: 980px){
  .issue-toc-list,
  body.single-fpe_news_issue .issue-toc-list{
    columns: 2 !important;
    column-gap: 56px !important;
  }
}

@media (min-width: 1300px){
  .issue-toc-list,
  body.single-fpe_news_issue .issue-toc-list{
    columns: 3 !important;
    column-gap: 58px !important;
  }
}

/* Herobannery sekcí vydání - text nesmí překrýt žádná vrstva */
.issue-section-hero,
body.single-fpe_news_issue .issue-section-hero{
  isolation: isolate !important;
}

.issue-section-hero::before,
.issue-section-hero:before,
body.single-fpe_news_issue .issue-section-hero::before,
body.single-fpe_news_issue .issue-section-hero:before{
  z-index: 0 !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

.issue-section-hero-inner,
body.single-fpe_news_issue .issue-section-hero-inner{
  position: relative !important;
  z-index: 5 !important;
}

.issue-section-title,
body.single-fpe_news_issue .issue-section-title{
  position: relative !important;
  z-index: 6 !important;
  color: #fff !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.55) !important;
}

/* Mobile */
@media (max-width: 760px){
  .wrap,
  .header-inner,
  .site-header .wrap,
  .front-hero__inner,
  .front-access .wrap,
  .front-news .wrap,
  .portal-section .wrap,
  .page-hero .wrap,
  .page-hero__inner,
  .content-wrap,
  .content-wrap > .wrap,
  .site-main > .wrap,
  .static-page,
  .page-content,
  .entry-content,
  .page .entry-content,
  .fpe-newsletter-content,
  .fpe-newsletter-hero__inner,
  .fpe-newsletter-archive-wrap,
  .fpe-newsletter-archive-page .wrap,
  .issue-content,
  .fpenews-public-wrap,
  .fpenews-public-archive,
  .issue-archive-module,
  .fpe-brandcloud-filter,
  .fpe-brandcloud-grid.brandcloud-grid,
  .fpe-brandcloud-single-content,
  .fpe-brandcloud-hero__inner,
  .fpe-brandcloud-single-hero__inner,
  .brandcloud-grid,
  .brandcloud-filter,
  .quicklinks,
  .fpe-contact-grid,
  .fpe-contact-events-module {
    width: calc(100% - var(--fpe-layout-gutter)) !important;
    max-width: calc(100% - var(--fpe-layout-gutter)) !important;
  }

  .post-list,
  .event-list,
  .quicklinks,
  .fpe-brandcloud-grid.brandcloud-grid,
  .brandcloud-grid,
  .fpe-contact-events-module{
    grid-template-columns: 1fr !important;
  }

  .issue-toc-list,
  body.single-fpe_news_issue .issue-toc-list{
    columns: 1 !important;
  }
}

/* v88: finální zarovnání layoutu modulů, editorového obsahu a newsletterových výpisů */
:root{
  --fpe-layout-width: 1360px;
  --fpe-layout-gutter: 32px;
  --fpe-layout-inner: min(var(--fpe-layout-width), calc(100% - var(--fpe-layout-gutter)));
  --fpe-layout-gap: 14px;
}

/* Všechny hlavní obalové kontejnery na jednu osu */
.wrap,
.header-inner,
.front-hero__inner,
.front-access .wrap,
.front-news .wrap,
.portal-section .wrap,
.page-hero__inner,
.page-hero .wrap,
.content-wrap,
.content-wrap > .wrap,
.site-main > .wrap,
.static-page,
.page-content,
body.page .entry-content,
body.single .entry-content,
.fpe-newsletter-archive-page .wrap,
.fpe-newsletter-archive-wrap,
.fpe-newsletter-content,
.fpe-newsletter-hero__inner,
.fpenews-subscribe-toggle,
.issue-archive-module,
.fpenews-public-archive,
.fpenews-public-wrap,
.issue-content,
.fpe-brandcloud-filter,
.fpe-brandcloud-grid.brandcloud-grid,
.fpe-brandcloud-single-content,
.fpe-brandcloud-hero__inner,
.fpe-brandcloud-single-hero__inner {
  width: var(--fpe-layout-inner) !important;
  max-width: var(--fpe-layout-inner) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Zamezit vnořenému zúžení obsahu vloženého přes editor */
.content-wrap .entry-content,
.page-content .entry-content,
.static-page .entry-content,
.wrap .entry-content,
body.page .entry-content > *,
body.single .entry-content > *,
.entry-content > .wp-block-group,
.entry-content > .wp-block-columns,
.entry-content > .wp-block-cover,
.entry-content > .wp-block-media-text,
.entry-content > .wp-block-table,
.entry-content > .wp-block-image,
.entry-content > .wp-block-shortcode,
.entry-content > .fpe-pattern,
.entry-content > .fpe-simple,
.entry-content > .pattern-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* Gutenberg align classes nesmí zavádět jinou osu v rámci portálu */
.entry-content .alignwide,
.entry-content .alignfull {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Skupiny, které obsahují sloupce/dlaždice, nesmí přidávat další vnitřní zúžení */
.entry-content .wp-block-group,
.entry-content .wp-block-group__inner-container,
.fpe-pattern,
.fpe-simple,
.fpe-pattern > *,
.fpe-simple > * {
  max-width: 100% !important;
}

.entry-content .wp-block-group > .wp-block-columns,
.entry-content .wp-block-group__inner-container > .wp-block-columns,
.fpe-pattern > .wp-block-columns,
.fpe-simple > .wp-block-columns,
.fpe-pattern-columns,
.fpe-simple-columns,
.fpe-simple-columns--cards,
.fpe-home-quick-access-columns {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: var(--fpe-layout-gap) !important;
}

/* Sloupce a dlaždice mají vyplnit celou šířku stejně, bez odsazené první řady */
.wp-block-columns > .wp-block-column,
.fpe-pattern .wp-block-column,
.fpe-simple .wp-block-column,
.fpe-pattern-columns > .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column {
  min-width: 0 !important;
  flex-basis: 0 !important;
  flex-grow: 1 !important;
  max-width: 100% !important;
}

.fpe-simple-green-tile,
.fpe-pattern-cards .wp-block-column,
.fpe-simple-columns > .wp-block-column,
.fpe-simple-columns--cards > .wp-block-column,
.fpe-pattern-columns > .wp-block-column,
.fpe-home-quick-access-card,
.portal-card,
.quicklink-card {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Zaměstnanci / rozcestníkové vzory: první zelená řada nesmí být užší než ostatní karty */
.entry-content .wp-block-columns:has(.fpe-simple-green-tile),
.entry-content .wp-block-group:has(.fpe-simple-green-tile) > .wp-block-columns,
.fpe-pattern:has(.fpe-simple-green-tile) > .wp-block-columns,
.fpe-simple:has(.fpe-simple-green-tile) > .wp-block-columns {
  width: 100% !important;
  max-width: 100% !important;
}

/* Výpis newsletterů: přepínač, roky i karty na jedné ose a karty přes celou dostupnou šířku */
.fpe-newsletter-archive-page .fpenews-subscribe-toggle,
.fpe-newsletter-archive-page .issue-archive-module,
.fpe-newsletter-archive-page .issue-archive-card,
.fpe-newsletter-archive-page .fpenews-public-archive,
.issue-archive-module,
.issue-archive-card {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

.fpe-newsletter-archive-wrap .fpenews-subscribe-toggle,
.fpe-newsletter-archive-wrap .issue-archive-module,
.fpe-newsletter-archive-wrap .issue-archive-card,
.fpe-newsletter-archive-page .wrap > .fpenews-subscribe-toggle,
.fpe-newsletter-archive-page .wrap > .issue-archive-module {
  width: 100% !important;
  max-width: 100% !important;
}

.fpe-newsletter-archive-wrap h2,
.issue-archive-module h2,
.fpenews-public-archive h2 {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
}

/* Když je archivní modul omylem mimo wrapper, i tak ho zarovnat na jednotnou osu */
body .issue-archive-module.fpenews-public-archive,
body .fpenews-public-archive.issue-archive-module {
  width: var(--fpe-layout-inner) !important;
  max-width: var(--fpe-layout-inner) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Editorové stránky typu Akce: bloky uvnitř skupin mají držet plnou šířku wrapperu */
.page .entry-content .wp-block-group > *,
.page .entry-content .wp-block-group__inner-container > *,
.page .entry-content .wp-block-cover > *,
.page .entry-content .wp-block-media-text > * {
  max-width: 100% !important;
}

.page .entry-content .wp-block-heading,
.page .entry-content h1,
.page .entry-content h2,
.page .entry-content h3,
.page .entry-content p,
.page .entry-content ol,
.page .entry-content ul {
  box-sizing: border-box !important;
}

/* Brandcloud i newsletter gridy jednotně */
.fpe-brandcloud-grid.brandcloud-grid,
.brandcloud-grid,
.quicklinks,
.post-list,
.event-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: var(--fpe-layout-gap) !important;
  align-items: stretch !important;
}

/* Mobile */
@media (max-width: 760px){
  :root{
    --fpe-layout-gutter: 20px;
    --fpe-layout-gap: 8px;
  }

  .wrap,
  .header-inner,
  .front-hero__inner,
  .front-access .wrap,
  .front-news .wrap,
  .portal-section .wrap,
  .page-hero__inner,
  .page-hero .wrap,
  .content-wrap,
  .content-wrap > .wrap,
  .site-main > .wrap,
  .static-page,
  .page-content,
  body.page .entry-content,
  body.single .entry-content,
  .fpe-newsletter-archive-page .wrap,
  .fpe-newsletter-archive-wrap,
  .fpe-newsletter-content,
  .fpe-newsletter-hero__inner,
  .fpenews-subscribe-toggle,
  .issue-archive-module,
  .fpenews-public-archive,
  .fpenews-public-wrap,
  .issue-content,
  .fpe-brandcloud-filter,
  .fpe-brandcloud-grid.brandcloud-grid,
  .fpe-brandcloud-single-content,
  .fpe-brandcloud-hero__inner,
  .fpe-brandcloud-single-hero__inner {
    width: var(--fpe-layout-inner) !important;
    max-width: var(--fpe-layout-inner) !important;
  }

  .wp-block-columns,
  .entry-content .wp-block-group > .wp-block-columns,
  .entry-content .wp-block-group__inner-container > .wp-block-columns,
  .fpe-pattern > .wp-block-columns,
  .fpe-simple > .wp-block-columns {
    gap: var(--fpe-layout-gap) !important;
  }
}


/* v89: horizontální modul nejbližších akcí z Google kalendáře */
.fpe-events-strip {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 14px 0 !important;
  padding: 16px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f6f9fb 100%) !important;
  border: 1px solid #dce5ec !important;
  border-top: 4px solid #8abd24 !important;
}

.fpe-events-strip__head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 13px !important;
}

.fpe-events-strip__kicker {
  display: block !important;
  color: #8abd24 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
}

.fpe-events-strip h2 {
  color: #123d63 !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.fpe-events-strip__head p {
  color: #314a5f !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  margin: 5px 0 0 !important;
}

.fpe-events-strip__all {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  background: #123d63 !important;
  color: #fff !important;
  text-decoration: none !important;
  padding: 8px 11px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
}

.fpe-events-strip__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

.fpe-events-strip-card {
  min-width: 0 !important;
  margin: 0 !important;
  background: #fff !important;
  border: 1px solid #dce5ec !important;
  box-shadow: 0 8px 18px rgba(18,61,99,.055) !important;
}

.fpe-events-strip-card__link {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 11px !important;
  align-items: stretch !important;
  min-height: 118px !important;
  padding: 11px !important;
  color: inherit !important;
  text-decoration: none !important;
}

.fpe-events-strip-card__date {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  background: #8abd24 !important;
  color: #fff !important;
  min-height: 78px !important;
  padding: 7px 5px !important;
  text-align: center !important;
}

.fpe-events-strip-card__date strong {
  color: #fff !important;
  display: block !important;
  font-size: 23px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

.fpe-events-strip-card__date em {
  color: #fff !important;
  display: block !important;
  font-style: normal !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  margin-top: 3px !important;
}

.fpe-events-strip-card__body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
}

.fpe-events-strip-card__time {
  display: block !important;
  color: #607387 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  margin: 0 0 5px !important;
}

.fpe-events-strip-card__title {
  display: block !important;
  color: #123d63 !important;
  font-size: 15px !important;
  line-height: 1.22 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.fpe-events-strip-card__meta {
  display: block !important;
  color: #314a5f !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  margin-top: 6px !important;
}

.fpe-events-strip-card:hover {
  border-color: #8abd24 !important;
}

.fpe-events-strip-card:hover .fpe-events-strip-card__title {
  text-decoration: underline !important;
}

@media (max-width: 1100px) {
  .fpe-events-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .fpe-events-strip {
    padding: 11px !important;
    margin: 10px 0 !important;
  }

  .fpe-events-strip__head {
    display: block !important;
    margin-bottom: 10px !important;
  }

  .fpe-events-strip__all {
    margin-top: 9px !important;
  }

  .fpe-events-strip__grid {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  .fpe-events-strip-card__link {
    min-height: 0 !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    padding: 9px !important;
  }

  .fpe-events-strip-card__date {
    min-height: 62px !important;
  }
}

/* v90: horizontální akce jako rozbalovací karty bez falešných odkazů */
.fpe-events-strip__all {
  display: none !important;
}

.fpe-events-strip-card {
  position: relative !important;
  overflow: hidden !important;
}

.fpe-events-strip-card__link {
  display: none !important;
}

.fpe-events-strip-card__summary {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) 24px !important;
  gap: 11px !important;
  align-items: stretch !important;
  min-height: 118px !important;
  padding: 11px !important;
  color: inherit !important;
  cursor: pointer !important;
  list-style: none !important;
}

.fpe-events-strip-card__summary::-webkit-details-marker {
  display: none !important;
}

.fpe-events-strip-card__summary::marker {
  content: "" !important;
}

.fpe-events-strip-card__toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  width: 22px !important;
  height: 22px !important;
  background: #f1f7e8 !important;
  color: #123d63 !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

.fpe-events-strip-card[open] .fpe-events-strip-card__toggle {
  background: #123d63 !important;
  color: #fff !important;
}

.fpe-events-strip-card[open] .fpe-events-strip-card__toggle::before {
  content: "−" !important;
}

.fpe-events-strip-card[open] .fpe-events-strip-card__toggle {
  font-size: 0 !important;
}

.fpe-events-strip-card__detail {
  border-top: 1px solid #dce5ec !important;
  padding: 10px 12px 12px !important;
  background: #f6f9fb !important;
}

.fpe-events-strip-card__detail p {
  color: #314a5f !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  margin: 0 0 7px !important;
}

.fpe-events-strip-card__detail p:last-child {
  margin-bottom: 0 !important;
}

.fpe-events-strip-card__detail a {
  color: #123d63 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

.fpe-events-strip-card:hover .fpe-events-strip-card__title,
.fpe-events-strip-card__summary:hover .fpe-events-strip-card__title {
  text-decoration: none !important;
}

.fpe-events-strip-card__summary:focus {
  outline: 2px solid #8abd24 !important;
  outline-offset: -2px !important;
}

@media (max-width: 760px) {
  .fpe-events-strip-card__summary {
    min-height: 0 !important;
    grid-template-columns: 54px minmax(0, 1fr) 24px !important;
    padding: 9px !important;
  }
}

/* v91: popis akce pouze po rozbalení, ne v zavřené kartě */
.fpe-events-strip-card:not([open]) .fpe-events-strip-card__detail {
  display: none !important;
}

/* v92: v zavřené kartě akce jen datum/čas a název; místo/link/popis až po rozbalení */
.fpe-events-strip-card__summary .fpe-events-strip-card__meta {
  display: none !important;
}

.fpe-events-strip-card:not([open]) .fpe-events-strip-card__detail,
.fpe-events-strip-card:not([open]) .fpe-events-strip-card__detail * {
  display: none !important;
}


/* v95: decentní informační lišta o nezbytných cookies */
.fpe-cookie-notice {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: rgba(255,255,255,.98);
  border-top: 1px solid var(--fpe-line, #e3e6e8);
  box-shadow: 0 -3px 14px rgba(18,61,99,.06);
  color: var(--fpe-muted, #5e6670);
  font-size: 13px;
  line-height: 1.4;
}

.fpe-cookie-notice[hidden] {
  display: none !important;
}

.fpe-cookie-notice__inner {
  width: min(100% - 28px, var(--site-width, 1160px));
  min-height: 46px;
  margin: 0 auto;
  padding: 8px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.fpe-cookie-notice__text {
  margin: 0;
  color: var(--fpe-muted, #5e6670);
  font-size: 13px;
  font-weight: 400;
}

.fpe-cookie-notice__text a {
  color: var(--fpe-blue, #005a8b);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.fpe-cookie-notice__actions {
  flex: 0 0 auto;
}

.fpe-cookie-notice__accept {
  min-height: 30px;
  padding: 5px 11px;
  border: 1px solid var(--fpe-green, #8abd24);
  background: transparent;
  color: var(--fpe-green-dark, #6d970e);
  font: inherit;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 600;
  cursor: pointer;
}

.fpe-cookie-notice__accept:hover,
.fpe-cookie-notice__accept:focus-visible {
  background: var(--fpe-green, #8abd24);
  color: #fff;
  outline: none;
}

body.fpe-cookie-notice-visible {
  padding-bottom: 48px;
}

@media (max-width: 640px) {
  .fpe-cookie-notice__inner {
    width: min(100% - 20px, var(--site-width, 1160px));
    min-height: 0;
    padding: 8px 0;
    gap: 9px;
  }

  .fpe-cookie-notice__text {
    font-size: 12px;
    line-height: 1.35;
  }

  .fpe-cookie-notice__accept {
    padding: 5px 9px;
    white-space: nowrap;
  }

  body.fpe-cookie-notice-visible {
    padding-bottom: 62px;
  }
}


/* v95.1: zabezpečený osobní profil a upravená patička bez veřejného přihlášení. */
.fpe-footer-inner.is-guest{
  grid-template-columns:minmax(260px,1fr) minmax(280px,1fr);
}
.fpe-footer-inner.is-guest .fpe-footer-legal{
  grid-column:2;
  justify-content:flex-end;
}
.fpe-footer-user__name{
  color:inherit;
  font-weight:700;
  text-decoration:none;
}
.fpe-footer-user__name:hover,
.fpe-footer-user__name:focus-visible{
  text-decoration:underline;
  text-underline-offset:3px;
}

.fpe-profile-page{
  background:#eef5f9;
  padding:28px 0 56px;
}
.fpe-profile-shell{
  display:grid;
  gap:16px;
}
.fpe-profile-card{
  background:#fff;
  border:1px solid #dce5ec;
  border-top:4px solid var(--fpe-green);
  padding:22px;
  box-shadow:0 8px 24px rgba(18,61,99,.05);
}
.fpe-profile-card h2{
  margin:0 0 14px;
  color:#123d63;
  font-size:25px;
  line-height:1.15;
}
.fpe-profile-card h3{
  margin:18px 0 10px;
  color:#123d63;
  font-size:19px;
  line-height:1.2;
}
.fpe-profile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.fpe-profile-details{
  display:grid;
  grid-template-columns:minmax(130px,190px) 1fr;
  gap:7px 16px;
  margin:0;
}
.fpe-profile-details dt{
  font-weight:700;
  color:#607387;
}
.fpe-profile-details dd{
  margin:0;
  min-width:0;
  overflow-wrap:anywhere;
}
.fpe-profile-groups{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin:0;
  padding:0;
  list-style:none;
}
.fpe-profile-groups li{
  display:inline-flex;
  padding:4px 8px;
  background:#f1f5f7;
  border:1px solid #dce5ec;
  color:#123d63;
  font-size:12px;
  font-weight:700;
}
.fpe-profile-task-list{
  display:grid;
  gap:8px;
}
.fpe-profile-empty{
  margin:0;
  color:#607387;
}
.fpe-profile-archived-list{
  margin:0;
  padding-left:20px;
}
.fpe-profile-settings-form{
  display:grid;
  gap:4px;
}
.fpe-profile-setting-check{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:11px 0;
  border-top:1px solid #e3e9ed;
  cursor:pointer;
}
.fpe-profile-setting-check:first-of-type{
  border-top:0;
  padding-top:0;
}
.fpe-profile-setting-check input{
  width:17px;
  height:17px;
  margin:3px 0 0;
}
.fpe-profile-setting-check span{
  display:grid;
  gap:2px;
}
.fpe-profile-setting-check small,
.fpe-profile-note{
  color:#607387;
  font-size:14px;
  line-height:1.45;
}
.fpe-profile-settings-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #e3e9ed;
}
.fpe-profile-settings-row p{
  margin:0;
}
.fpe-profile-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  border:0;
  background:#8abd24;
  color:#fff;
  padding:8px 13px;
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  text-decoration:none;
}
.fpe-profile-action:hover,
.fpe-profile-action:focus-visible{
  background:#6d970e;
  color:#fff;
  text-decoration:none;
}
.fpe-profile-action.is-secondary{
  border:1px solid #b9c8d2;
  background:#fff;
  color:#123d63;
}
.fpe-profile-action.is-secondary:hover,
.fpe-profile-action.is-secondary:focus-visible{
  border-color:#8abd24;
  background:#f3f8ea;
  color:#123d63;
}
.fpe-profile-alert{
  padding:10px 12px;
  background:#f3f8ea;
  border-left:4px solid #8abd24;
  color:#314a5f;
  margin:0;
}
.fpe-profile-privacy-note{
  margin:0;
  padding:10px 12px;
  background:#fff;
  border:1px solid #dce5ec;
  color:#607387;
  font-size:14px;
}

/* v95.10: přihlášené aktuality, Orion výzva a opt-in e-mailová upozornění. */
.front-news__heading-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.front-news__heading-row .section-heading{
  margin-bottom:0;
}
.fpe-news-alert-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0;
}
.fpe-news-alert-toggle__copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  text-align:center;
}
.fpe-news-alert-toggle .screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.fpe-news-alert-toggle__label{
  color:#536b7e;
  font-size:14px;
  font-weight:650;
  white-space:nowrap;
}
.fpe-news-alert-switch{
  -webkit-appearance:none;
  appearance:none;
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:48px;
  min-width:48px;
  max-width:48px;
  height:26px;
  min-height:26px;
  flex:0 0 48px;
  border:1px solid #75838d!important;
  border-radius:999px!important;
  background:#8f9ca5!important;
  background-color:#8f9ca5!important;
  background-image:none!important;
  color:transparent!important;
  box-shadow:inset 0 1px 2px rgba(16,43,66,.18);
  padding:2px!important;
  margin:0!important;
  line-height:1!important;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.fpe-news-alert-switch__knob{
  display:block;
  width:20px!important;
  min-width:20px!important;
  max-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  flex:0 0 20px!important;
  aspect-ratio:1/1;
  border:0!important;
  border-radius:50%!important;
  background:#fff;
  box-shadow:0 1px 4px rgba(16,43,66,.38);
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  transform:translateX(0);
  transition:transform .18s ease;
}
.fpe-news-alert-switch.is-on{
  border-color:#6f9f0f!important;
  background:#84bd00!important;
  background-color:#84bd00!important;
}
.fpe-news-alert-switch.is-off{
  border-color:#75838d!important;
  background:#8f9ca5!important;
  background-color:#8f9ca5!important;
}
.fpe-news-alert-switch.is-on .fpe-news-alert-switch__knob{
  transform:translateX(22px);
}
.fpe-news-alert-toggle__state{
  color:#687984;
  font-size:12px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.fpe-news-alert-toggle__state.is-on{
  color:#5f8d08;
}
.fpe-news-alert-switch:hover{
  background:#7e8b94!important;
  background-color:#7e8b94!important;
}
.fpe-news-alert-switch.is-on:hover{
  background:#76aa00!important;
  background-color:#76aa00!important;
}
.fpe-news-alert-switch:focus-visible{
  outline:2px solid rgba(132,189,0,.3);
  outline-offset:2px;
}
.fpe-news-alert-message{
  margin:0 0 14px;
  padding:9px 11px;
  border-left:4px solid #84bd00;
  background:#f3f8ea;
  color:#314a5f;
  font-size:14px;
}
.fpe-news-alert-message.is-error{
  border-left-color:#c45a45;
  background:#fff2ef;
}
.fpe-profile-settings-row .fpe-news-alert-toggle{
  flex:0 0 auto;
}
.front-news--guest{
  padding-top:30px;
  padding-bottom:34px;
}
.front-news__guest-heading{
  margin-bottom:10px!important;
}
.front-news-login{
  display:flex;
  align-items:center;
  gap:12px;
  padding:11px 14px;
  border-left:3px solid #84bd00;
  background:#f6f9fb;
  color:#536b7e;
  font-size:14px;
}
.front-news-login p{
  margin:0;
}
.front-news-login .fpe-orion-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 12px;
  border:1px solid #84bd00;
  color:#4e7900;
  background:#fff;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
}
.front-news-login .fpe-orion-login:hover,
.front-news-login .fpe-orion-login:focus-visible{
  background:#84bd00;
  color:#fff;
}

@media(max-width:760px){
  .fpe-profile-page{padding:16px 0 38px}
  .fpe-profile-card{padding:15px}
  .fpe-profile-grid{grid-template-columns:1fr;gap:10px}
  .fpe-profile-details{grid-template-columns:1fr;gap:1px}
  .fpe-profile-details dd{margin-bottom:8px}
  .fpe-profile-settings-row{align-items:flex-start;flex-direction:column}
  .fpe-footer-inner.is-guest{grid-template-columns:1fr}
  .fpe-footer-inner.is-guest .fpe-footer-legal{grid-column:auto;justify-content:flex-start}
  .front-news__heading-row{align-items:flex-start;flex-direction:column;gap:9px}
  .front-news-login{align-items:flex-start;flex-direction:column;gap:8px}
}


/* v95.2: stabilni systemova typografie pro Edge a ceskou diakritiku */
:root {
  --fpe-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
  --fpe-ds-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
}

html,
body,
button,
input,
select,
textarea,
.entry-content .section-heading,
.content-panel .section-heading,
.brandcloud-intro,
.issue-archive-module,
.google-events-list,
.event-list,
.brandcloud-grid,
.advent-calendar,
.fpe-newsletter-events,
.fpe-newsletter-events *,
.fpe-newsletter-event .date {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif !important;
  font-kerning: normal;
  text-rendering: auto;
}

body {
  font-synthesis: none;
}


/* v95.4: odkazy v popisech udalosti z Google Kalendare */
.fpe-google-event-description{margin:10px 0;color:inherit;overflow-wrap:anywhere}
.fpe-google-event-description p{margin:0 0 8px}
.fpe-google-event-description p:last-child{margin-bottom:0}
.fpe-google-event-description ul,.fpe-google-event-description ol{margin:8px 0 8px 20px;padding:0}
.fpe-google-event-description a{font-weight:700;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}


/* v95.5: skutečně klikatelné hypertexty v popisech Google Kalendáře */
.fpe-google-event-description a {
  position: relative !important;
  z-index: 3 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
.google-event-detail,
.fpe-newsletter-event .event-detail,
.fpe-events-strip-card__detail {
  position: relative;
  z-index: 2;
}

/* =========================================================
   FPE Komunikace 95.6 - archiv aktualit a detail aktuality
   ========================================================= */

/* Nadpis detailu aktuality zachovává běžnou velikost písmen z editoru. */
body.single-post .page-hero h1 {
  text-transform: none !important;
  letter-spacing: -0.035em;
}

/* Stránkování shortcodu archivu aktualit. Karty používají stejné třídy
   jako aktuality na úvodní straně. */
.fpe-aktuality-archive-shortcode .post-list {
  margin: 0;
}

.fpe-aktuality-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 28px 0 0;
}

.fpe-aktuality-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: 7px 12px;
  border: 1px solid var(--fpe-line);
  background: #fff;
  color: var(--fpe-green-dark);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.fpe-aktuality-pagination .page-numbers:hover,
.fpe-aktuality-pagination .page-numbers:focus-visible,
.fpe-aktuality-pagination .page-numbers.current {
  border-color: var(--fpe-green);
  background: var(--fpe-green);
  color: #fff;
  text-decoration: none;
}
