/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
body {overflow-x:clip; overflow-y:auto;}
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');

/* ====================================================================
   MEDICAL EXPERT — HOME (z Figmy: CSL IG expert / Home)
   Brand fialová #641660, panel #f6eeee, font Montserrat
   ==================================================================== */
.med-home{--mx:var(--accent,#641660);--panel:#f6eeee;font-family:"Montserrat",-apple-system,Segoe UI,Roboto,sans-serif;}
.med-home img{max-width:100%;display:block;}

/* plná šíře napříč content kontejnerem tématu */
.med-hero,.med-bandfooter{width:100vw;margin-left:calc(50% - 50vw);}

/* ---- FIALOVÝ PRUH S LOGEM (GP Element „Header" id 52, hook before_header) ---- */
.med-topbar{width:100vw;margin-left:calc(50% - 50vw);background:var(--accent,#641660);}
.med-topbar__inner{max-width:1128px;margin:0 auto;padding:22px 24px;box-sizing:content-box;}
.med-topbar__logo{width:317px;height:auto;}
.med-topbar__link{display:block;width:fit-content;line-height:0;}

/* ---- HERO (rozměry dle Figmy: panel 540x349 @ x39, texty od x76) ---- */
.med-hero{position:relative;height:auto;min-height:500px;overflow:hidden;background:var(--panel);}
.med-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;}
.med-hero__inner{position:relative;max-width:1128px;margin:0 auto;height:100%;padding:0 24px;box-sizing:content-box;}
.med-hero__panel{position:absolute;left:-13px;top:0;width:540px;max-width:48%;height:349px;clip-path:polygon(0 0,100% 0,100% calc(100% - 30px),0 100%);
  background:var(--panel);display:flex;flex-direction:column;justify-content:flex-start;
  padding:71px 40px 0 37px;box-sizing:border-box;}
.med-hero__title{margin:0 0 17px;color:var(--mx);font-weight:700;font-size:24px;line-height:1.22;}
.med-hero__text{margin:0;color:#000;font-weight:400;font-size:16px;line-height:1.875;}

/* ---- Q&A SEKCE ---- */
.med-section{padding:60px 0 0;}
.med-section__inner{max-width:1200px;margin:0 auto;}
.med-section__title{margin:0 0 26px;color:var(--mx);font-weight:700;font-size:26px;line-height:1.23;}
.med-section__img{width:100%;height:auto;border-radius:2px;}

/* ---- INFOGRAFIKY (Home, Figma 57-345) ---- */
.med-infographics{max-width:1128px;margin:0 auto;padding:71px 24px 45px;box-sizing:content-box;
  display:grid;gap:36px;}
.med-infographic{margin:0;}
.med-infographic img{width:100%;height:auto;}

/* ---- LIGHTBOX INFOGRAFIK ---- */
.med-infographic img{cursor:zoom-in;}
.med-lb{position:fixed;inset:0;z-index:99999;background:rgba(20,8,18,.88);display:none;}
.med-lb.is-open{display:block;}
.med-lb-lock,.med-lb-lock body{overflow:hidden;}
.med-lb__scroll{position:absolute;inset:0;overflow:auto;-webkit-overflow-scrolling:touch;
  display:flex;padding:24px 24px 84px;box-sizing:border-box;}  /* dole místo pro šipky */
.med-lb__img{margin:auto;display:block;}          /* margin:auto = centrování i scroll bez ořezu */
.med-lb__close{position:fixed;top:10px;right:14px;z-index:2;width:44px;height:44px;border:0;
  border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:28px;line-height:44px;
  padding:0;cursor:pointer;}
.med-lb__close:hover{background:var(--accent,#641660);}
.med-lb__nav{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:2;
  display:flex;gap:16px;}
.med-lb__nav button{width:48px;height:48px;border:0;border-radius:50%;
  background:rgba(0,0,0,.55);color:#fff;font-size:30px;line-height:46px;padding:0;
  cursor:pointer;}
.med-lb__nav button:hover{background:var(--accent,#641660);}
@media (min-width:1600px){
  .med-lb__img{max-width:calc(100vw - 96px);max-height:calc(100vh - 120px);width:auto;height:auto;}
}
@media (max-width:1599.98px){
  /* pevná šířka 1600px = vždy větší než viewport -> čitelné texty, posun po ploše */
  .med-lb__img{width:1600px;max-width:none;cursor:grab;}
}

/* ---- FIALOVÝ PRUH S LOGEM ---- */
.med-bandfooter{background:var(--mx);margin-top:96px;}
.med-bandfooter__inner{max-width:1200px;margin:0 auto;min-height:342px;display:flex;
  align-items:center;justify-content:flex-end;padding:0 40px;box-sizing:border-box;}
.med-bandfooter__logo{width:75px;height:auto;}

/* ---- PATIČKA (GP Element „Footer" id 39, Figma Group 59:354) ---- */
.med-footer{background:var(--accent,#641660);color:#fff;
  font-family:"Montserrat",-apple-system,Segoe UI,Roboto,sans-serif;}
.med-footer__inner{max-width:1128px;margin:0 auto;padding:45px 24px 46px;box-sizing:content-box;
  display:flex;justify-content:space-between;align-items:flex-start;gap:24px;}
.med-footer p{margin:0;font-size:10px;line-height:15px;color:#fff;}
.med-footer p.med-footer__info{margin-bottom:15px;}  /* specificita nad .med-footer p */
.med-footer a{color:#fff;text-decoration:underline;}
.med-footer__partner{display:flex;flex-direction:column;flex:none;}
.med-footer__csl{width:51px;height:auto;margin:12px auto 0;}
.med-footer__partner a{display:block;width:fit-content;margin:12px auto 0;line-height:0;}  /* logo v odkazu */
.med-footer__partner a .med-footer__csl{margin:0;}
@media (max-width:900px){
  .med-footer__inner{flex-direction:column;padding:32px 22px;}
  .med-footer__partner{flex-direction:row;align-items:center;gap:10px;}
  .med-footer__csl,.med-footer__partner a{margin:0;}
}

/* ---- MODALY V PATIČCE (Ochrana os. údajů, Podmínky užití) ---- */
.med-modal{position:fixed;inset:0;z-index:99998;background:rgba(20,8,18,.6);display:flex;
  align-items:center;justify-content:center;padding:24px;}
.med-modal[hidden]{display:none;}
.med-modal-lock,.med-modal-lock body{overflow:hidden;}
.med-modal__box{position:relative;background:#fff;border-radius:8px;max-width:760px;width:100%;
  max-height:min(84vh,900px);overflow:auto;padding:36px 44px;
  font-family:"Montserrat",-apple-system,Segoe UI,Roboto,sans-serif;}
.med-modal__close{position:sticky;top:-20px;float:right;margin:-16px -28px 0 12px;width:40px;height:40px;
  border:0;border-radius:50%;background:#fff;color:#666;font-size:26px;cursor:pointer;
  line-height:40px;padding:0;}
.med-modal__close:hover{color:var(--accent,#641660);}
.med-modal__title{margin:0 0 18px;color:var(--accent,#641660);font-size:22px;font-weight:700;line-height:1.3;}
.med-modal__body{font-size:14px;line-height:1.7;color:#222;}
.med-modal__body p{margin:0 0 12px;}
.med-modal__body h2{margin:22px 0 10px;font-size:17px;color:var(--accent,#641660);}
.med-modal__body h3{margin:18px 0 8px;font-size:15px;color:#000;}
.med-modal__body h4{margin:14px 0 6px;font-size:14px;}
.med-modal__body ul,.med-modal__body ol{margin:0 0 12px;padding-left:22px;}
.med-modal__body a{color:var(--accent,#641660);}
.med-modal__doc{margin-top:20px;padding-top:16px;border-top:1px solid #e5dde4;
  font-size:14px;line-height:1.7;color:#222;}
.med-modal__doc h2{margin:22px 0 10px;font-size:17px;color:var(--accent,#641660);}
.med-modal__doc h3{margin:18px 0 8px;font-size:15px;}
.med-modal__doc p{margin:0 0 12px;}
.med-modal__doc table{width:100%;border-collapse:collapse;margin:0 0 14px;font-size:12.5px;}
.med-modal__doc th,.med-modal__doc td{border:1px solid #e5dde4;padding:6px 8px;text-align:left;vertical-align:top;}
@media (max-width:600px){
  .med-modal{padding:0;}
  .med-modal__box{max-height:100vh;height:100%;border-radius:0;padding:28px 22px;}
}

/* ---- COMPLIANZ ----- */
.cmplz-document .entry-content,
.page-id-3 .entry-content {padding-top:2em;}
#cmplz-document {max-width:100%;}
#cmplz-document .cmplz-message,
#cmplz-document .cmplz-categories {width: 100% !important;}
#cmplz-document .cmplz-category-header {/*display: flex; */gap: 10px; align-items: center;}
#cmplz-document .cmplz-category-header button {justify-self:flex-end;}
#cmplz-document .cmplz-category-title {margin-right:10px;}

/* ---- RESPONSIVE ---- */
@media (max-width:900px){
  .med-hero{height:auto;}
  .med-hero__bg{position:static;height:auto;width:100%;object-fit:cover;max-height:260px;}
  .med-hero__inner{position:static;padding:0;}
  .med-hero__panel{position:static;width:100%;max-width:100%;height:auto;clip-path:none;padding:28px 22px;}
  .med-hero__title{font-size:22px;}
  .med-hero__text br{display:none;}   /* pevné zalomení z Figmy jen na desktopu */
  .med-topbar__inner{padding:16px 22px;}
  .med-topbar__logo{width:220px;}
  .med-section{padding-top:44px;}
  .med-section__title{font-size:21px;}
  .med-infographics{padding:44px 22px 32px;gap:24px;}
  .med-bandfooter{margin-top:56px;}
  .med-bandfooter__inner{min-height:180px;justify-content:center;padding:0 22px;}
}

/* skrytí titulku stránky na úvodní stránce (Figma Home žádný nemá) */
.page-id-17 .entry-header{display:none;}
