/*
Theme Name: Tkanica Linz
Theme URI: https://kudtkanicalinz.at
Author: ProArt Marketing
Author URI: https://proart.marketing
Description: Specijalno kreirana tema za KUD Tkanica Linz. Izradio ProArt Marketing (proart.marketing). Uređivanje u Elementoru, header i footer bez Elementor Pro, jednostavan unos događaja.
Version: 1.4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: tkanica
*/

:root{
  --tk-heading:#142B3B; --tk-text:#46606D; --tk-primary:#174D68; --tk-primary-hover:#103C51;
  --tk-light:#E7F3FA; --tk-warm:#FAF8F3; --tk-white:#fff; --tk-border:#CBDDE6; --tk-gold:#B98A4F;
  --tk-container:1240px; --tk-pad-x:32px; --tk-pad-y:88px; --tk-gap:24px; --tk-radius:16px;
  --tk-card-pad:24px; --tk-title-gap:32px; --tk-border-h:16px;
  --e-global-color-primary:#142B3B; --e-global-color-secondary:#46606D; --e-global-color-text:#46606D; --e-global-color-accent:#174D68;
}
@media (max-width:1024px){:root{--tk-pad-x:28px;--tk-pad-y:64px;--tk-gap:20px;--tk-card-pad:20px;--tk-title-gap:24px;--tk-border-h:12px}}
@media (max-width:767px){:root{--tk-pad-x:20px;--tk-pad-y:48px;--tk-gap:16px;--tk-card-pad:16px;--tk-title-gap:20px;--tk-radius:12px;--tk-border-h:10px}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--tk-white);color:var(--tk-text);font:400 16px/26px "DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
@media (max-width:767px){body{line-height:24px}}
img{max-width:100%;height:auto;display:block}
a{color:var(--tk-primary);text-decoration:none}
a:hover{color:var(--tk-primary-hover)}
:focus-visible{outline:2px solid var(--tk-primary);outline-offset:3px}
.tk-dark :focus-visible{outline-color:#fff}

h1,h2,h3{font-family:"Playfair Display",Georgia,serif;color:var(--tk-heading);margin:0}
h1{font-weight:700;font-size:72px;line-height:78px;letter-spacing:-1.4px}
h2{font-weight:700;font-size:44px;line-height:52px}
h3{font-weight:600;font-size:26px;line-height:34px}
@media (max-width:1024px){h1{font-size:52px;line-height:58px;letter-spacing:-1px}h2{font-size:38px;line-height:46px}h3{font-size:24px;line-height:32px}}
@media (max-width:767px){h1{font-size:40px;line-height:44px;letter-spacing:-.6px}h2{font-size:32px;line-height:38px}h3{font-size:22px;line-height:28px}}
.tk-lead{font-size:18px;line-height:28px}
@media (max-width:1024px){.tk-lead{font-size:17px;line-height:26px}}
@media (max-width:767px){.tk-lead{font-size:16px;line-height:24px}}
.tk-eyebrow{font:700 13px/20px "DM Sans",sans-serif;letter-spacing:1.3px;text-transform:uppercase;color:var(--tk-primary)}
.tk-meta{font:500 14px/20px "DM Sans",sans-serif}

/* Layout */
.tk-section{padding:var(--tk-pad-y) var(--tk-pad-x)}
.tk-inner{max-width:var(--tk-container);margin:0 auto}
.tk-section-title{margin-bottom:var(--tk-title-gap)}
.bg-light{background:var(--tk-light)} .bg-warm{background:var(--tk-warm)} .bg-white{background:#fff}

/* Buttons */
.tk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:8px;border:1px solid var(--tk-primary);font:700 15px/20px "DM Sans",sans-serif;cursor:pointer;transition:background .2s,color .2s}
.tk-btn--primary{background:var(--tk-primary);color:#fff}
.tk-btn--primary:hover{background:var(--tk-primary-hover);border-color:var(--tk-primary-hover);color:#fff}
.tk-btn--outline{background:transparent;color:var(--tk-primary)}
.tk-btn--outline:hover{background:var(--tk-primary);color:#fff}
.tk-link{font:600 15px/20px "DM Sans",sans-serif;color:var(--tk-primary)}
.tk-link:hover{text-decoration:underline}

/* Header */
.tk-block--header{position:sticky;top:0;z-index:50}
.admin-bar .tk-block--header{top:var(--wp-admin--admin-bar--height,32px)}
@media (max-width:600px){.admin-bar .tk-block--header{top:0}}
.tk-header{position:relative;background:#fff;border-bottom:1px solid var(--tk-border)}
.tk-block .elementor-widget-tk_header>.elementor-widget-container{margin:0;padding:0}
.tk-header .tk-logo{display:inline-flex;align-items:center}
.tk-header__bar{height:84px;max-width:calc(var(--tk-container) + 2 * var(--tk-pad-x));margin:0 auto;padding:0 var(--tk-pad-x);display:flex;align-items:center;justify-content:space-between;gap:24px}
.tk-logo{font:600 20px/1 "Playfair Display",serif;color:var(--tk-heading)}
.tk-logo img{max-height:48px;width:auto}
.tk-nav{display:flex;align-items:center;gap:24px}
.tk-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:24px;align-items:center}
.tk-nav a{font:600 15px/20px "DM Sans",sans-serif;color:var(--tk-heading)}
.tk-nav a:hover{color:var(--tk-primary)}
.tk-nav .tk-btn{color:var(--tk-primary);min-height:40px}
.tk-nav .tk-btn:hover{color:#fff}
.tk-burger{display:none;width:44px;height:44px;border:1px solid var(--tk-border);border-radius:8px;background:#fff;cursor:pointer;padding:0;align-items:center;justify-content:center}
.tk-burger span,.tk-burger span::before,.tk-burger span::after{display:block;width:18px;height:2px;background:var(--tk-heading);position:relative;content:""}
.tk-burger span::before{position:absolute;top:-6px}.tk-burger span::after{position:absolute;top:6px}
.tk-burger span,.tk-burger span::before,.tk-burger span::after{transition:transform .3s ease,top .3s ease,background-color .2s ease;border-radius:2px}
.tk-header.is-open .tk-burger span{background-color:transparent!important}
.tk-header.is-open .tk-burger span::before{top:0;transform:rotate(45deg)}
.tk-header.is-open .tk-burger span::after{top:0;transform:rotate(-45deg)}
.tk-langs{font:700 15px/20px "DM Sans",sans-serif;color:var(--tk-heading)}
@media (max-width:1024px){
  .tk-header__bar{height:72px}
  .tk-burger{display:inline-flex}
  .tk-nav{display:flex;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--tk-border);padding:16px var(--tk-pad-x) 24px;flex-direction:column;align-items:flex-start;gap:16px}
  .tk-nav ul{flex-direction:column;align-items:flex-start;gap:14px}
  .tk-header.is-open .tk-nav{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:opacity .25s ease,transform .25s ease}
  .tk-header__actions{display:flex;align-items:center;gap:12px}
}
@media (max-width:767px){.tk-header__bar{height:64px}}
@media (min-width:1025px){.tk-header__actions{display:contents}}

/* Border pattern */
.tk-border{height:var(--tk-border-h);background:url("assets/img/border.svg") repeat-x left center/auto 100%}

/* Hero */
.tk-hero{background:var(--tk-light);padding:72px var(--tk-pad-x)}
.tk-hero__inner{max-width:var(--tk-container);margin:0 auto;display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:center}
.tk-hero h1{margin:16px 0 20px}
.tk-hero p{margin:0 0 28px;max-width:520px}
.tk-hero__btns{display:flex;gap:12px;flex-wrap:wrap}
.tk-hero__img{width:100%;height:500px;object-fit:cover;object-position:center;border-radius:var(--tk-radius)}
@media (max-width:1024px){
  .tk-hero{padding:48px var(--tk-pad-x)}
  .tk-hero__inner{grid-template-columns:1fr 1fr;gap:24px}
  .tk-hero h1{margin-bottom:20px}.tk-hero p{margin-bottom:24px}
  .tk-hero__img{height:380px}
}
@media (max-width:767px){
  .tk-hero{padding:32px var(--tk-pad-x)}
  .tk-hero__inner{grid-template-columns:1fr}
  .tk-hero__btns{flex-direction:column;gap:8px}.tk-hero__btns .tk-btn{width:100%}
  .tk-hero__img{height:auto;aspect-ratio:4/3}
}

/* Cards */
.tk-grid{display:grid;gap:var(--tk-gap)}
.tk-grid--events{grid-template-columns:1.36fr 1fr 1fr}
.tk-grid--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1024px){.tk-grid--events{grid-template-columns:1fr 1fr}.tk-grid--events>:first-child{grid-column:1/-1}}
@media (max-width:767px){.tk-grid--events,.tk-grid--3{grid-template-columns:1fr}.tk-grid--events>:first-child{grid-column:auto}}
.tk-card{background:#fff;border:1px solid var(--tk-border);border-radius:var(--tk-radius);overflow:hidden;display:flex;flex-direction:column}
.tk-card__media{aspect-ratio:16/9;background:var(--tk-light);display:flex;align-items:center;justify-content:center;font:500 14px/20px "DM Sans",sans-serif;color:var(--tk-text)}
.tk-card__media--43{aspect-ratio:4/3}
.tk-card__media img{width:100%;height:100%;object-fit:cover}
.tk-card__body{padding:var(--tk-card-pad);display:flex;flex-direction:column;gap:8px;flex:1}
.tk-card__body h3 a{color:inherit}
.tk-card__body p{margin:0}
.tk-card__body .tk-link{margin-top:auto;padding-top:8px}

/* Slavonska večer */
.tk-split{display:grid;grid-template-columns:55fr 45fr;background:var(--tk-warm)}
.tk-split__img{width:100%;height:100%;min-height:320px;object-fit:cover}
.tk-split__text{padding:48px;display:flex;flex-direction:column;justify-content:center;gap:16px}
.tk-split__text p{margin:0}
@media (max-width:1024px){.tk-split{grid-template-columns:1fr 1fr}.tk-split__text{padding:28px}}
@media (max-width:767px){.tk-split{grid-template-columns:1fr}.tk-split__text{padding:24px}}
.tk-split-wrap{padding:0 var(--tk-pad-x) var(--tk-pad-y)}
.tk-split-wrap .tk-split{max-width:var(--tk-container);margin:0 auto;border:1px solid var(--tk-border);border-radius:var(--tk-radius);overflow:hidden}

/* Two cols */
.tk-two{display:grid;grid-template-columns:1fr 1fr;gap:var(--tk-gap);max-width:var(--tk-container);margin:0 auto}
@media (max-width:767px){.tk-two{grid-template-columns:1fr}}
.tk-panel{border:1px solid var(--tk-border);border-radius:var(--tk-radius);padding:32px;display:flex;flex-direction:column;gap:12px;background:#fff}
.tk-panel p{margin:0}
.tk-panel .tk-links{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.tk-panel.bg-light{background:var(--tk-light)}
@media (max-width:1024px){.tk-panel{padding:24px}}
@media (max-width:767px){.tk-panel{padding:20px}}

/* Sponsors */
.tk-sponsors{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--tk-gap)}
.tk-sponsors .logo{background:var(--tk-light);border-radius:12px;min-height:88px;display:flex;align-items:center;justify-content:center;font:500 14px/20px "DM Sans",sans-serif}
.tk-sponsors img{max-height:64px;width:auto}
@media (max-width:1024px){.tk-sponsors{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.tk-sponsors{grid-template-columns:repeat(2,1fr)}}

/* Footer */
.tk-footer{background:var(--tk-heading);color:#fff;padding:48px var(--tk-pad-x)}
.tk-footer a{color:#fff}.tk-footer a:hover{text-decoration:underline;color:#fff}
.tk-footer__inner{max-width:var(--tk-container);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--tk-gap)}
.tk-footer h2{color:#fff;font-size:32px;line-height:38px}
.tk-footer h3{color:#fff;font:700 13px/20px "DM Sans",sans-serif;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:8px;opacity:.8}
.tk-footer p{margin:0 0 4px;color:#dbe8ef;font:500 14px/20px "DM Sans",sans-serif}
@media (max-width:1024px){.tk-footer{padding:40px var(--tk-pad-x)}.tk-footer__inner{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.tk-footer{padding:32px var(--tk-pad-x)}.tk-footer__inner{grid-template-columns:1fr}}

/* Single / pages */
.tk-article{max-width:820px;margin:0 auto;padding:var(--tk-pad-y) var(--tk-pad-x)}
.tk-article h1{font-size:52px;line-height:58px;margin:12px 0 24px}
.tk-article .poster{border-radius:var(--tk-radius);margin:0 0 32px;width:100%}
.skip-link{position:absolute;left:-999px}.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}

/* Elementor: neutralise theme width so containers control layout */
.elementor-page .tk-main{padding:0}

@media (prefers-reduced-motion:reduce){.tk-burger span,.tk-burger span::before,.tk-burger span::after,.tk-nav{transition:none!important}}

/* Elementor footer blok */
.tk-footer-links a{color:#fff}
.tk-footer-links a:hover{color:#fff;text-decoration:underline}
.tk-footer-links p{margin:0}
.tk-block .e-con{--container-default-padding-top:0px;--container-default-padding-bottom:0px}

/* Događaji */
.tk-card__media{position:relative}
.tk-badge{position:absolute;top:12px;left:12px;background:#B98A4F;color:#fff;font:700 12px/1 "DM Sans",sans-serif;letter-spacing:.6px;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.tk-badge--red{background:#9B2C2C}
.tk-card.is-cancelled h3{text-decoration:line-through;opacity:.7}
.tk-card__excerpt{font-size:15px;line-height:22px}
.tk-ev-title{font-size:56px;line-height:62px;letter-spacing:-1px;margin:16px 0 16px}
@media (max-width:1024px){.tk-ev-title{font-size:44px;line-height:50px}}
@media (max-width:767px){.tk-ev-title{font-size:34px;line-height:40px;letter-spacing:-.5px}}
.tk-ev-hero .tk-lead{max-width:720px;margin:0}
.tk-ev{display:grid;grid-template-columns:340px 1fr;gap:48px;align-items:start}
@media (max-width:1024px){.tk-ev{grid-template-columns:1fr;gap:32px}}
.tk-ev__info{background:var(--tk-warm);border:1px solid var(--tk-border);border-radius:var(--tk-radius);padding:24px;position:sticky;top:110px}
@media (max-width:1024px){.tk-ev__info{position:static}}
.tk-ev__info dl{margin:0;display:grid;gap:4px}
.tk-ev__info dt{font:700 13px/20px "DM Sans",sans-serif;letter-spacing:1.3px;text-transform:uppercase;color:var(--tk-primary);margin-top:12px}
.tk-ev__info dt:first-child{margin-top:0}
.tk-ev__info dd{margin:0;color:var(--tk-heading);font-weight:500}
.tk-ev__btns{display:flex;flex-direction:column;gap:8px;margin-top:24px}
.tk-ev__poster{width:100%;height:auto;border-radius:var(--tk-radius);margin-bottom:32px}
.tk-ev__content>*:first-child{margin-top:0}
.tk-ev-gal{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tk-ev-gal img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;transition:transform .2s}
.tk-ev-gal a:hover img{transform:scale(1.02)}
@media (max-width:1024px){.tk-ev-gal{grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.tk-ev-gal{grid-template-columns:repeat(2,1fr);gap:10px}}

/* ---- Elementor: ugniježđeni kontejneri bez dodatnih 10 px (razmaci po PDF-u) ---- */
.elementor .e-con{
  --container-default-padding-top:0px!important;--container-default-padding-right:0px!important;
  --container-default-padding-bottom:0px!important;--container-default-padding-left:0px!important;
  --container-default-padding-block-start:0px!important;--container-default-padding-block-end:0px!important;
  --container-default-padding-inline-start:0px!important;--container-default-padding-inline-end:0px!important}
/* Dugmad */
.tk-el-btn .elementor-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;text-align:center}
.tk-el-btn .elementor-button-content-wrapper{justify-content:center}
@media (max-width:767px){
  .e-con>.tk-el-btn,.tk-el-btn{width:100%!important;max-width:100%!important;--container-widget-width:100%}
  .tk-el-btn .elementor-button{width:100%}
}
.tk-el-link .elementor-button{padding:0;min-height:0;background:transparent}
/* Slike */
.tk-el-hero-img img{width:100%;height:500px;object-fit:cover;object-position:center;border-radius:16px}
@media (max-width:1024px){.tk-el-hero-img img{height:380px}}
@media (max-width:767px){.tk-el-hero-img img{height:auto;aspect-ratio:4/3;border-radius:12px}}
.tk-cardimg img,.tk-el-card-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.tk-el-cover,.tk-el-cover .elementor-widget-container{height:100%}
.tk-el-cover img{width:100%;height:100%;min-height:320px;object-fit:cover}

/* Slike u karticama uvijek ostaju u okviru (jače od Elementorovog img{height:auto}) */
.tk-card .tk-card__media{position:relative;overflow:hidden;display:block}
.tk-card .tk-card__media:not(:has(img)){display:flex}
.tk-card .tk-card__media img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;border-radius:0}
.tk-card .tk-badge{z-index:1}
.tk-ev__poster{height:auto!important}
.tk-el-map iframe{border-radius:16px}
@media (max-width:767px){.tk-el-map iframe{border-radius:12px}}

/* Elementor Pro forma u stilu teme */
.tk-el-form .elementor-field-group>label,.tk-el-form .elementor-field-label{font:600 15px/20px "DM Sans",sans-serif;color:var(--tk-heading);margin-bottom:6px}
.tk-el-form .elementor-field-textual,.tk-el-form select.elementor-field{background:#fff!important;border:1px solid var(--tk-border)!important;border-radius:8px!important;min-height:48px;padding:10px 14px!important;font:400 16px/24px "DM Sans",sans-serif;color:var(--tk-heading)}
.tk-el-form textarea.elementor-field-textual{min-height:140px}
.tk-el-form .elementor-field-textual:focus{border-color:var(--tk-primary)!important;outline:2px solid var(--tk-primary);outline-offset:1px;box-shadow:none}
.tk-el-form .elementor-field-type-acceptance label{font:400 14px/20px "DM Sans",sans-serif;color:var(--tk-text)}
.tk-el-form .elementor-button{background:var(--tk-primary)!important;color:#fff!important;border-radius:8px!important;min-height:48px;font:700 15px/20px "DM Sans",sans-serif!important;transition:background .2s}
.tk-el-form .elementor-button:hover{background:var(--tk-primary-hover)!important}
.tk-el-form .elementor-message{font:500 15px/22px "DM Sans",sans-serif}
.tk-el-form .elementor-message-success{color:#1f6b3a}
.tk-el-form .elementor-mark-required .elementor-field-label:after{color:#B98A4F}
.tk-el-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px}
@media (max-width:767px){.tk-el-portrait img{border-radius:12px}}

/* Kontakt v2 */
.tk-contact-info a{color:var(--tk-heading);text-decoration:underline;text-decoration-color:var(--tk-border);text-underline-offset:3px}
.tk-contact-info a:hover{color:var(--tk-primary);text-decoration-color:currentColor}
.tk-contact-info .tk-el-btn a,.tk-contact-info .elementor-button{text-decoration:none}
.tk-contact-info p{margin:0}
.tk-el-map iframe{display:block;width:100%}

/* Mobilni meni: centrirane stavke, plavo dugme */
@media (max-width:1024px){
  .tk-header .tk-nav{align-items:center;text-align:center}
  .tk-header .tk-nav ul{align-items:center;width:100%}
  .tk-header .tk-nav ul li{width:100%;text-align:center}
  .tk-header .tk-nav ul a{display:block;padding:6px 0}
  .tk-header .tk-nav .tk-langs{text-align:center}
  .tk-header .tk-nav .tk-btn,.tk-header .tk-nav .tk-btn:hover{background:var(--tk-primary)!important;border-color:var(--tk-primary)!important;color:#fff!important;width:100%;max-width:320px}
  .tk-header .tk-nav .tk-btn:hover{background:var(--tk-primary-hover)!important}
}
