/*
Theme Name: TRTmed
Theme URI: https://trtmed.pl/
Author: TRTmed
Description: Własny, lekki motyw trtmed.pl. Odtwarza wygląd dawnej strony (motyw Flash + WPBakery) własnym kodem: bez wtyczek, bez jQuery, bez zewnętrznych serwerów. SEO i zabezpieczenia wbudowane w motyw.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
License: proprietary
Text Domain: trt
*/

/* ===== 1. Czcionka Montserrat (lokalnie, 400–700, łacina + polskie znaki) ===== */
@font-face{font-family:"Montserrat TRT";font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/montserrat.woff2) format("woff2");}

/* ===== 2. Zmienne (kolory dawnej trtmed.pl) ===== */
:root{
	--trt-dark:#313b48;      /* pasek górny, sekcje, ramki */
	--trt-darker:#28313d;    /* dolna stopka */
	--trt-footer:#2f3744;    /* stopka */
	--trt-accent:#30afb8;    /* turkus: linki, przyciski */
	--trt-accent-dk:#268f97;
	--trt-box:#30737e;       /* ramka informacyjna */
	--trt-blue:#4477ae;      /* napis „TRT” na banerze */
	--trt-navy:rgba(3,70,112,.75); /* przycisk „Zobacz” */
	--trt-text:#606060;
	--trt-menu:#4c5867;
	--trt-font:"Montserrat TRT","Montserrat","Helvetica Neue",Arial,sans-serif;
}

/* ===== 3. Podstawy (okrojony Flash) ===== */
*,*::before,*::after{box-sizing:border-box;}
html{font-size:62.5%;overflow-y:scroll;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
html,body{overflow-x:hidden;}
body{margin:0;background:#fff;color:#333;font-family:var(--trt-font);font-size:14px;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,p,ul,ol,figure{margin:0;padding:0;}
h1,h2,h3,h4{font-weight:700;line-height:1.3;}
h1{font-size:25px;}h2{font-size:30px;}h3{font-size:25px;}h4{font-size:20px;}
p{margin:0 0 3rem;}
ul,ol{margin:0 0 1.5rem 2rem;}
img{max-width:100%;height:auto;vertical-align:middle;border:0;}
a{color:var(--trt-accent);text-decoration:none;transition:color .3s ease-in-out;}
a:hover{color:#b4b4b5;}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--trt-accent);outline-offset:2px;}
b,strong{font-weight:700;}
.trt-i{display:inline-block;width:1em;height:1em;fill:currentColor;vertical-align:-.125em;flex:none;}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;word-wrap:normal!important;}
.screen-reader-text:focus{background:#f1f1f1;clip:auto!important;clip-path:none;color:#21759b;display:block;font-size:14px;font-weight:700;height:auto;width:auto;left:5px;top:5px;padding:15px 23px 14px;z-index:100000;}
.tg-container{max-width:1200px;margin:0 auto;}
@media(max-width:1200px){.tg-container{padding:0 1%;width:98%;}}
.site{display:flex;flex-direction:column;min-height:100vh;background:#fff;}
.site-content{flex:1 0 auto;}

/* ===== 4. Nagłówek (Flash) ===== */
.header-top{background:var(--trt-dark);}
.header-top .tg-container{display:flex;justify-content:space-between;align-items:center;min-height:40px;}
.header-top ul{list-style:none;margin:0;display:flex;flex-wrap:wrap;gap:0 30px;}
.header-top li{font-size:12px;color:#fff;padding:5px 0;line-height:30px;}
.header-top a{color:#fff;}
.header-top a:hover{color:#fff;text-decoration:underline;}
.header-top .trt-i{margin-right:.5em;}
.header-bottom{background:#fff;}
.header-bottom .tg-container{display:flex;flex-wrap:wrap;align-items:center;min-height:69px;}
.site-branding{margin:0 auto 0 0;padding:12px 0;}
.site-title{margin:0;font-size:24px;font-weight:700;line-height:1.1;letter-spacing:.01em;}
.site-title a{color:var(--trt-dark);}
.site-title a span{color:var(--trt-accent);}
.site-description{margin:2px 0 0;font-size:12px;color:var(--trt-menu);}
#site-navigation{margin-left:auto;}
#site-navigation .menu-toggle{display:none;background:none;border:0;padding:5px;color:var(--trt-dark);font-size:30px;line-height:1;cursor:pointer;}
#site-navigation ul{list-style:none;margin:0;padding:0;}
#site-navigation ul li{float:left;padding:23px 30px 23px 0;position:relative;}
#site-navigation ul li:last-child{padding-right:0;}
#site-navigation ul li a{font-size:15px;color:var(--trt-menu);}
#site-navigation ul li:hover>a,#site-navigation ul li.current-menu-item>a,#site-navigation ul li.current_page_item>a,#site-navigation ul li.current-menu-ancestor>a,#site-navigation ul li.current-menu-parent>a{color:var(--trt-accent);}
#site-navigation .unclickable>a{cursor:default;}
#site-navigation ul.sub-menu{background:#fff;min-width:260px;padding:0;margin:0;position:absolute;box-shadow:1px 1px 6px rgba(0,0,0,.2);right:50%;top:90%;transform:translateX(50%);opacity:0;visibility:hidden;z-index:9;transition:.5s;}
#site-navigation li:hover>ul.sub-menu,#site-navigation li.focus>ul.sub-menu,#site-navigation li:focus-within>ul.sub-menu{opacity:1;visibility:visible;top:100%;}
#site-navigation ul.sub-menu li{float:none;padding:10px;width:100%;text-align:left;line-height:1.4;}
#site-navigation ul.sub-menu li:hover>a{color:var(--trt-accent);}
.sub-toggle{display:inline-block;margin-left:4px;color:#333;transition:.5s;cursor:pointer;background:none;border:0;padding:0;font-size:12px;}
#site-navigation li.menu-item-has-children:hover>.sub-toggle{color:var(--trt-accent);}
.sub-toggle .trt-i{transition:transform .5s;}
.animate-icon{transform:rotate(180deg);}
.header-sticky .is-sticky #masthead{z-index:99!important;}
.header-sticky .is-sticky .header-bottom{box-shadow:0 1px 1px rgba(0,0,0,.2);}
@media(max-width:980px){
	.header-bottom{position:relative;}
	#site-navigation{padding:15px 0;}
	#site-navigation .menu-toggle{display:inline-block;}
	#site-navigation .menu{display:none;background:#fff;position:absolute;left:0;top:100%;width:100%;z-index:9999;padding:0 20px;box-shadow:0 4px 6px rgba(0,0,0,.15);}
	#site-navigation.toggled .menu{display:block;}
	#site-navigation ul li{float:none;padding:0;border-bottom:1px solid rgba(0,0,0,.1);}
	#site-navigation ul li:last-child{border-bottom:0;}
	#site-navigation ul li a{display:block;line-height:42px;padding:0 15px;}
	#site-navigation ul.sub-menu{display:none;position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;min-width:100%;padding-left:20px;border-top:1px solid rgba(0,0,0,.1);transition:none;}
	#site-navigation li.mobile-menu--slided>ul.sub-menu{display:block;}
	#site-navigation ul.sub-menu li{padding:0;}
	#site-navigation ul.sub-menu li a{line-height:42px;padding:0 0 0 20px;}
	.sub-toggle{position:absolute;top:11px;right:15px;width:20px;height:20px;line-height:20px;text-align:center;background:var(--trt-accent);color:#fff!important;margin:0;}
}
@media(max-width:768px){.header-top{display:none;}}

/* ===== 5. Strona: układ dawnych wierszy WPBakery ===== */
.trt{color:#fff;font-family:var(--trt-font);}
.trt-in{max-width:120rem;margin:0 auto;padding:0 1.6rem;}
/* baner podstrony z H1 w ciemnej ramce (dawna „belka”) */
.trt-hero{position:relative;background-color:var(--trt-dark);background-image:var(--trt-bn);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:clamp(26rem,38vw,46rem);display:flex;align-items:flex-end;padding:7rem 0 5rem;}
.trt-hero .trt-in{width:100%;}
.trt-hero h1{display:inline-block;margin:0;color:#fff;font-size:clamp(2.8rem,1.8rem + 2vw,4.2rem);line-height:1.25;padding:0;text-shadow:0 2px 3px rgba(0,0,0,.7),0 0 16px rgba(0,0,0,.5);}
/* sekcje */
.trt-sec{background:var(--trt-dark);padding:5.5rem 0 2rem;}
.trt-sec+.trt-sec{padding-top:2rem;}
.trt-sec:last-child{padding-bottom:5rem;}
.trt-sec h2{color:#fff;font-size:clamp(2.2rem,1.7rem + 1.2vw,2.8rem);margin:0 0 1.4rem;}
.trt-sec h3{color:#fff;font-size:clamp(1.9rem,1.6rem + .7vw,2.4rem);margin:2.6rem 0 1rem;}
.trt-sec h2+h3,.trt-col>h3:first-child,.trt-col>h2:first-child{margin-top:0;}
.trt-sec p,.trt-sec li{color:#fff;font-size:1.5rem;line-height:1.7;}
.trt-sec p{margin:0 0 1.8rem;}
.trt-sec ul{padding-left:2rem;margin:0 0 1.8rem;}
.trt-sec a{color:#5fd3dd;text-decoration:underline;text-underline-offset:2px;}
.trt-sec a:hover{color:#fff;}
.trt-lead{font-weight:700;}
.trt-cols{display:flex;gap:3rem;align-items:flex-start;}
.trt-col{flex:1;min-width:0;}
.trt-img{width:100%;height:auto;display:block;margin:0 0 2rem;}
.trt-box{background:var(--trt-box);padding:2rem;margin:0 0 2rem;}
.trt-box p,.trt-box li{color:#fff;font-size:1.5rem;line-height:1.6;margin:0 0 1rem;}
.trt-box p:last-child{margin-bottom:0;}
.trt-box a{color:#fff;}
/* przycisk „ZAREZERWUJ” (dawny vc_btn3 z ikoną kalendarza) */
.trt-ctab{display:flex;align-items:center;gap:1.6rem;background:var(--trt-accent);color:#fff!important;padding:1.8rem 2.5rem;text-decoration:none!important;font-size:1.6rem;line-height:1.4;text-align:right;margin:0 0 2rem;transition:transform .3s,filter .3s;}
.trt-ctab .trt-i{font-size:2.4rem;}
.trt-ctab span{flex:1;}
.trt-ctab:hover{transform:translateY(-2px);filter:brightness(1.07);}
/* FAQ – rozwijane pytania (bez JS) */
.trt-faq details{border-bottom:1px solid rgba(255,255,255,.15);}
.trt-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.6rem;padding:1.6rem 0;color:#fff;font-size:1.7rem;font-weight:700;line-height:1.4;}
.trt-faq summary::-webkit-details-marker{display:none;}
.trt-faq summary::after{content:"+";font-size:2.4rem;line-height:1;color:var(--trt-accent);flex:none;transition:transform .3s;}
.trt-faq details[open] summary::after{transform:rotate(45deg);}
.trt-faq details>div{padding:0 0 1.4rem;}
/* pasek z napisem (dawny ciemny pasek z H4) */
.trt-bar{background:var(--trt-dark);text-align:center;padding:2rem 1.6rem;margin:0 0 2rem;}
.trt-bar h2,.trt-bar p{color:#fff;font-size:2rem;font-weight:700;margin:0;line-height:1.4;}
@media(max-width:782px){.trt-cols{flex-direction:column;gap:0;}.trt-col{width:100%;}.trt-ctab{text-align:left;}}

/* ===== 6. Strona główna ===== */
.trt-home{color:var(--trt-text);background:#fff;}
.trt-slide{position:relative;background:var(--trt-dark) var(--trt-bn) center/cover no-repeat;min-height:clamp(32rem,46vw,58.8rem);display:flex;align-items:center;}
.trt-slide .trt-in{width:100%;}
.trt-slide-t{display:inline-block;color:#fff;font-size:clamp(2.8rem,1.6rem + 2.6vw,5rem);font-weight:700;line-height:1.2;padding:0;margin:0 0 1.2rem;text-shadow:0 2px 3px rgba(0,0,0,.7),0 0 16px rgba(0,0,0,.5);}
.trt-home .trt-slide-s{display:table;color:#fff;font-size:clamp(2rem,1.4rem + 1.2vw,3rem);font-weight:600;line-height:1.2;padding:0;margin:0 0 2rem;text-shadow:0 2px 3px rgba(0,0,0,.7),0 0 16px rgba(0,0,0,.5);}
.trt-slide-b{display:inline-flex;align-items:center;gap:.8rem;background:var(--trt-navy);color:#fff!important;font-size:clamp(1.8rem,1.4rem + .8vw,2.5rem);font-weight:500;padding:1.5rem;border-radius:3px;}
.trt-slide-b:hover{background:var(--trt-accent);}
.trt-wrap{max-width:120rem;margin:0 auto;padding:3.5rem 1.6rem 5rem;}
.trt-home .trt-bar{margin:0 0 2.4rem;}
.trt-home .trt-bar h2{font-size:2rem;}
.trt-home h2.trt-c{color:var(--trt-dark);font-size:2rem;text-align:center;margin:3.5rem 0 2.4rem;}
.trt-home p{font-size:1.5rem;line-height:1.7;color:var(--trt-text);margin:0 0 1.8rem;}
.trt-intro{max-width:90rem;margin:0 auto 3rem;text-align:center;}
.trt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;}
.trt-tile{display:block;text-decoration:none!important;}
.trt-tile img{width:100%;aspect-ratio:5/4;object-fit:cover;display:block;margin:0 0 2rem;}
.trt-tile span{display:flex;align-items:center;justify-content:center;gap:1rem;background:var(--trt-dark);color:#fff;font-size:1.6rem;padding:1.8rem 2.5rem;transition:transform .3s;}
.trt-tile:hover span{transform:translateY(-3px);}
.trt-line{height:3.5rem;background:var(--trt-dark);margin:3.5rem 0 0;}
.trt-card{display:flex;flex-direction:column;justify-content:center;background:var(--trt-dark);border-radius:5px;padding:2.6rem 2rem;min-height:16.5rem;text-decoration:none!important;transition:background .3s;}
.trt-card h3{color:#fff;font-size:2rem;margin:0 0 .8rem;}
.trt-card p{color:#cfd5dc;font-size:1.4rem;margin:0;}
.trt-card:hover{background:var(--trt-box);}
@media(max-width:782px){.trt-grid{grid-template-columns:1fr;}}

/* ===== 7. Stopka (Flash) ===== */
#top-footer{background:var(--trt-footer) url(assets/footer-bg.webp) center no-repeat;padding:7rem 0 3rem;}
#top-footer .tg-container{display:grid;grid-template-columns:repeat(4,1fr);gap:3rem;}
#top-footer .widget-title{font-size:18px;font-weight:600;line-height:24px;color:#fff;border-left:3px solid var(--trt-accent);padding-left:20px;margin:0 0 2.4rem;}
#top-footer .widget-title::first-letter{color:var(--trt-accent);}
#top-footer p,#top-footer li{font-size:15px;line-height:24px;color:#fff;}
#top-footer p{margin:0 0 1.6rem;}
#top-footer ul{list-style:none;margin:0;}
#top-footer li{margin:0 0 .8rem;}
#top-footer a{color:#fff;}
#top-footer a:hover{color:var(--trt-accent);}
#top-footer .trt-ftel a{color:var(--trt-accent);font-size:18px;font-weight:700;}
#bottom-footer{background:var(--trt-darker);padding:1.6rem 0;}
#bottom-footer p{margin:0;color:#bcbaba;font-size:12px;}
#bottom-footer a{color:#bcbaba;}
@media(max-width:900px){#top-footer .tg-container{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){#top-footer .tg-container{grid-template-columns:1fr;padding:0 1.6rem;}#bottom-footer{text-align:center;}}

/* przycisk „do góry” i przycisk telefonu na komórce */
#scroll-up{position:fixed;right:8px;bottom:90px;z-index:9999;display:none;background:var(--trt-accent);color:#fff;border-radius:50%;width:56px;height:56px;align-items:center;justify-content:center;opacity:.5;font-size:18px;transition:opacity .4s;}
#scroll-up.show{display:flex;}
#scroll-up:hover{opacity:.9;color:#fff;}
.trt-callfab{display:none;}
@media(max-width:768px){
	.trt-callfab{display:flex;align-items:center;gap:.8rem;position:fixed;left:1.6rem;bottom:1.6rem;z-index:9990;background:var(--trt-accent);color:#fff!important;font-size:1.5rem;font-weight:700;padding:1.1rem 1.8rem;border-radius:3rem;box-shadow:0 .2rem .8rem rgba(0,0,0,.35);}
	body.has-callfab{padding-bottom:7rem;}
}

/* ===== 8. 404 i wyszukiwanie ===== */
.trt-plain{max-width:120rem;margin:0 auto;padding:6rem 1.6rem;color:var(--trt-text);}
.trt-plain h1{color:var(--trt-dark);font-size:2.6rem;margin:0 0 2rem;}
.trt-plain p{font-size:1.5rem;}
.trt-plain .trt-404i{font-size:12rem;color:var(--trt-accent);opacity:.25;float:right;margin:0 0 2rem 2rem;}
.searchform{display:flex;max-width:48rem;margin:2rem 0;}
.searchform input{flex:1;height:44px;border:1px solid #ccc;border-right:0;padding:0 12px;font:inherit;font-size:15px;}
.searchform button{width:52px;border:0;background:var(--trt-dark);color:#fff;font-size:18px;cursor:pointer;}
.searchform button:hover{background:var(--trt-accent);}
.trt-results article{margin:0 0 2.4rem;}
.trt-results h2{font-size:2rem;margin:0 0 .6rem;}

/* ===== 9. Ochrona treści: brak zaznaczania tekstu i przeciągania zdjęć (nie dotyczy zalogowanych) ===== */
body:not(.logged-in){-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none;}
body:not(.logged-in) input,body:not(.logged-in) textarea{-webkit-user-select:text;user-select:text;}
body:not(.logged-in) img{-webkit-user-drag:none;user-drag:none;pointer-events:auto;}

/* ===== 10. Ruch: tylko gdy użytkownik go nie wyłączył ===== */
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important;}}

/* ===== 11. Poradnik: tabele, źródła, karty w ciemnych sekcjach ===== */
.trt-tbl{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 2rem;}
.trt-sec table{width:100%;border-collapse:collapse;}
.trt-sec th,.trt-sec td{border:1px solid rgba(255,255,255,.2);padding:1rem 1.2rem;text-align:left;vertical-align:top;color:#fff;font-size:1.4rem;line-height:1.5;}
.trt-sec th{background:var(--trt-box);font-weight:700;}
.trt-sec ol{padding-left:2.2rem;margin:0 0 1.8rem;}
.trt-sec .trt-grid{margin:0 0 2rem;}
.trt-sec .trt-card{background:#3b4656;}
.trt-sec .trt-card:hover{background:var(--trt-box);}
.trt-src{border-top:1px solid rgba(255,255,255,.15);margin-top:3rem;padding-top:1.6rem;}
.trt-src li{font-size:1.3rem;color:#cfd5dc;line-height:1.5;word-break:break-word;}
.trt-sec p.trt-meta{font-size:1.3rem;color:#cfd5dc;margin:0 0 .8rem;}
.trt-home p.trt-note{font-size:1.3rem;color:#6b7480;text-align:center;margin:3.5rem auto 0;max-width:90rem;}
