/*
Theme Name:   ZD Šentjur (Hello Elementor Child)
Theme URI:    https://zd-sentjur.si/
Description:  Otroška tema Hello Elementor za Zdravstveni dom Šentjur – oblikovni tokeni, tipografija Inter, dostopnostni dodatki. Izgled strani ureja Elementor Pro, podatke ambulant plugin »ZD Šentjur«.
Author:       Marcelino
Template:     hello-elementor
Version:      1.4.7
Text Domain:  zd-sentjur-child
*/

/* Oblikovni tokeni (enaki kot Elementor Global Colors – glej docs/02-elementor-nastavitve.md) */
:root {
  --zd-primary: #0B3D6E;
  --zd-primary-dark: #082C50;
  --zd-secondary: #1F6FB8;
  --zd-secondary-light: #E6F0FA;
  --zd-red: #D7282F;
  --zd-green: #1B7F3B;
  --zd-bg: #F4F7FB;
  --zd-text: #1B2431;
  --zd-muted: #55657A;
  --zd-border: #D9E2EC;
  --zd-focus: #FFB300;
  --zd-font: "Inter", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
}

html { font-size: 100%; }
/* Velikost pisave, kontrast ipd. ureja orodje za dostopnost (assets/css/a11y-tool.css). */

body { font-family: var(--zd-font); color: var(--zd-text); background: var(--zd-bg); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6 { color: var(--zd-primary); line-height: 1.2; letter-spacing: -.01em; }
a { color: var(--zd-secondary); }
a:hover { color: var(--zd-primary); }

/* Fokus – jasno viden (WCAG 2.4.7) */
:focus-visible { outline: 3px solid var(--zd-focus) !important; outline-offset: 2px; }

/* Skoči na vsebino */
.skip-link { position: absolute; left: 8px; top: -60px; z-index: 100000; background: var(--zd-primary); color: #fff; padding: .6rem 1rem; border-radius: 8px; font-weight: 600; text-decoration: none; }
.skip-link:focus { top: 8px; width: auto; height: auto; clip: auto; clip-path: none; }

/* Orodja za dostopnost v glavi (Elementor Shortcode widget: [zd_a11y_tools]) */
.zd-a11y { display: inline-flex; gap: .2rem; align-items: center; }
.zd-a11y button { background: none; border: 1px solid transparent; font: inherit; font-weight: 700; color: var(--zd-primary); min-width: 36px; min-height: 36px; padding: .3rem .5rem; border-radius: 8px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.zd-a11y button:hover { background: var(--zd-secondary-light); }
.zd-a11y button[aria-pressed="true"] { background: var(--zd-primary); color: #fff; }

/* 112 značka (Elementor gumb z razredom .zd-112) */
.zd-112 .elementor-button { background: var(--zd-red) !important; color: #fff !important; border-radius: 8px !important; font-weight: 800; line-height: 1; text-align: center; }
.zd-112 .elementor-button:hover { background: #b51f25 !important; }

/* Hitre kartice (Elementor Icon Box z razredom .zd-quick-card) */
.zd-quick-card .elementor-widget-container { background: #fff; border: 1px solid var(--zd-border); border-radius: 12px; box-shadow: 0 1px 2px rgba(11,61,110,.06), 0 4px 16px rgba(11,61,110,.06); transition: transform .15s, box-shadow .15s; }
.zd-quick-card:hover .elementor-widget-container { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(11,61,110,.14); }

/* Kartica (Elementor container z razredom .zd-card-box) */
.zd-card-box { background: #fff; border: 1px solid var(--zd-border); border-radius: 12px; box-shadow: 0 1px 2px rgba(11,61,110,.06), 0 4px 16px rgba(11,61,110,.06); }

/* Mobilna spodnja vrstica (Elementor container z razredom .zd-bottom-nav; vidnost: samo mobilno) */
.zd-bottom-nav { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background: var(--zd-primary); padding-bottom: env(safe-area-inset-bottom); }
.zd-bottom-nav a { color: #fff; }
@media (max-width: 767px) { body.zd-has-bottom-nav { padding-bottom: 72px; } }

/* Tabele v vsebini */
.elementor-widget-text-editor table th { background: var(--zd-secondary-light); color: var(--zd-primary); }
.elementor-widget-text-editor table th, .elementor-widget-text-editor table td { padding: .55rem .7rem; border-bottom: 1px solid var(--zd-border); text-align: left; vertical-align: top; }

@media print { .zd-bottom-nav, .zd-a11y, .skip-link { display: none !important; } }

/* Hero: jasna fotografija desno (Elementor Image widget z razredom .zd-hero-media) */
.zd-hero-media { position: relative; height: 100%; min-height: 600px; }
.zd-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 50%; }
.zd-hero-media::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, var(--zd-primary) 0%, rgba(11,61,110,.55) 12%, rgba(11,61,110,0) 32%); }
@media (max-width: 767px) { .zd-hero-media { min-height: 260px; } .zd-hero-media::before { background: linear-gradient(180deg, rgba(11,61,110,0) 70%, var(--zd-primary) 100%); } }

/* Glava: modra podlaga, bel tekst, besedilni logotip (Elementor Header predloga z razredom .zd-header) */
.zd-header { background: var(--zd-primary); color: #fff; }
.zd-header a, .zd-header .elementor-nav-menu a, .zd-header .zd-a11y button { color: #fff; }
.zd-header .elementor-nav-menu a:hover, .zd-header .elementor-nav-menu .current-menu-item > a { background: rgba(255,255,255,.14); color: #fff; }
.zd-header .elementor-nav-menu .current-menu-item > a { box-shadow: inset 0 -3px 0 #fff; }
.zd-logo-text { color: #fff; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; line-height: 1; font-size: 20px; text-decoration: none; display: inline-block; }
.zd-logo-text small { display: block; font-size: 26px; letter-spacing: .16em; margin-top: 3px; }

/* Hero na vstopni strani: zoom-out efekt slike (Elementor Image widget z razredom .zd-hero-media) */
@keyframes zd-hero-zoom-out { from { transform: scale(1.14); } to { transform: scale(1); } }
.zd-hero-media { overflow: hidden; }
.zd-hero-media img { transform-origin: 70% 50%; animation: zd-hero-zoom-out 9s cubic-bezier(.22,.61,.36,1) both; will-change: transform; }
@media (prefers-reduced-motion: reduce) { .zd-hero-media img { animation: none; transform: none; } }

/* ---------- Noga (Elementor footer template z razredom .zd-footer): modra kot glava, večji fonti ---------- */
.zd-footer { background: var(--zd-primary, #0B3D6E); color: #fff; padding: 3rem 0 1.5rem; font-size: 1.05rem; }
.zd-footer h3, .zd-footer .elementor-heading-title { font-size: .95rem; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,.7); margin-bottom: .8rem; }
.zd-footer a { color: #fff; text-decoration: none; }
.zd-footer a:hover, .zd-footer a:focus-visible { text-decoration: underline; }
.zd-footer li { margin-bottom: .55rem; line-height: 1.5; }
.zd-footer .zd-logo-text { color: #fff; font-size: 1.25rem; }
.zd-footer .zd-logo-text small { font-size: 1.55rem; }
.zd-footer .zd-footer-bottom { margin-top: 2.2rem; padding-top: 1.2rem; border-top: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.72); font-size: .95rem; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.zd-footer .zd-footer-bottom a { color: rgba(255,255,255,.85); margin-right: 1rem; }

/* Logotip: ZDRAVSTVENI DOM (verzalke, večje) / Šentjur (male črke, manjše) */
.zd-logo-text { font-size: 26px; letter-spacing: .05em; }
.zd-logo-text small { text-transform: none; font-size: 19px; font-weight: 600; letter-spacing: .03em; margin-top: 3px; }
.zd-footer .zd-logo-text { font-size: 1.45rem; }
.zd-footer .zd-logo-text small { font-size: 1.1rem; }

/* Logotip naročnika (bela PNG različica z EKG črto): assets/img/zd-sentjur-logotip-bel(@2x).png – v Elementor header/footer templatu kot Image widget */
.zd-logo-img { display: block; height: 44px; width: auto; }
.zd-footer .zd-logo-img { height: 52px; }
@media (max-width: 1380px) { .zd-logo-img { height: 40px; } }
@media (max-width: 1150px) { .zd-logo-img { height: 38px; } }
@media (max-width: 480px)  { .zd-logo-img { height: 30px; } }
