/*
Theme Name: Steklarska Dela
Theme URI: https://steklarskadela.si
Description: Custom WP tema za Steklarstvo Behrić — Light+IceBlue, stakleni dizajn, ACF polja
Version: 2.1
Author: Steklarstvo Behrić
Text Domain: steklarska-dela
*/

/* ===== RESET &amp; BASE ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
    font-family:&quot;Inter&quot;,-apple-system,BlinkMacSystemFont,&quot;Segoe UI&quot;,sans-serif;
    font-size:16px;line-height:1.6;color:#334155;
    background:#F5F7FA;
    -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}
a{color:#0096C7;text-decoration:none;transition:color .2s}
a:hover{color:#48CAE4}
h1,h2,h3,h4,h5,h6{color:#1A1A2E;line-height:1.25;font-weight:700}
h1{font-size:clamp(28px,5vw,48px)}
h2{font-size:clamp(24px,4vw,36px)}
h3{font-size:clamp(18px,3vw,22px)}
.section-inner{max-width:1100px;margin:0 auto;padding:80px 20px}

/* ===== BUTTONS ===== */
.btn{display:inline-block;font-weight:600;font-size:16px;padding:16px 40px;border-radius:8px;cursor:pointer;transition:all .25s;border:none;text-align:center}
.btn-primary{background:#0096C7;color:#fff}
.btn-primary:hover{background:#007BA3;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,150,199,.3)}
.btn-white{background:#fff;color:#0096C7}
.btn-white:hover{background:#f0f4f8;color:#007BA3;transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1)}
.btn-secondary{background:#f0f0f0;color:#333;border:1px solid #ddd}
.btn-secondary:hover{background:#e0e0e0;color:#333}

/* ===== HEADER (glass-morphism) ===== */
.nav-toggle-check{display:none}
.site-header{
    position:sticky;top:0;z-index:100;
    background:rgba(245,247,250,.92);backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid #DEE2E6;
}
.header-inner{max-width:1100px;margin:0 auto;padding:0 20px;display:flex;align-items:center;height:64px}
.site-logo{font-size:18px;color:#1A1A2E;text-decoration:none;flex-shrink:0}
.site-logo strong{color:#0096C7}
.site-logo:hover{color:#1A1A2E}

/* Navigation */
.main-nav .nav-list{display:flex;list-style:none;gap:8px;margin:0;padding:0}
.main-nav .nav-list li{position:relative}
.main-nav .nav-list a{display:block;padding:8px 16px;color:#334155;font-size:15px;font-weight:500;border-radius:6px;transition:all .2s;white-space:nowrap}
.main-nav .nav-list a:hover{background:rgba(0,150,199,.08);color:#0096C7}
.main-nav .current-menu-item>a,.main-nav .current_page_item>a{color:#0096C7;font-weight:600}
.main-nav .nav-cta-button a{background:#0096C7;color:#fff!important;border-radius:8px;padding:8px 20px;font-weight:600}
.main-nav .nav-cta-button a:hover{background:#007BA3}
/* Shared phone CTA — positioned differently per breakpoint */
.cta-phone-nav{display:none}
    .cta-phone-nav i{color:#dc2626!important}
@media(min-width:901px){
    .cta-phone-nav{
        display:flex;align-items:center;gap:6px;
        color:#0096C7;font-size:13px;font-weight:700;text-decoration:none;
        white-space:nowrap;z-index:5;margin-left:8px;flex-shrink:0
    }
    .cta-phone-nav:hover{color:#007BA3}
    .cta-phone-nav i{color:#dc2626!important}
    .main-nav{margin-left:auto}
}

/* Submenu dropdown */
.main-nav .nav-list .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;
    background:rgba(255,255,255,.98);backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border:1px solid #DEE2E6;border-radius:8px;padding:8px 0;
    box-shadow:0 8px 30px rgba(0,0,0,.08);z-index:200}
.main-nav .nav-list .sub-menu li{width:100%}
.main-nav .nav-list .sub-menu a{padding:10px 20px;font-size:14px;border-radius:0}
.main-nav .nav-list li:hover>.sub-menu{display:block}
.main-nav .nav-list .sub-menu .sub-menu{left:100%;top:0}

/* Vizuelne grupe u submenu (12.7.2026 — section labels) */
.main-nav .nav-list .sub-menu .nav-group-start {
    margin-top: 4px;
}
.main-nav .nav-list .sub-menu .nav-group-start > a {
    font-weight: 500;
    color: #334155;
}
/* Section label dividers */
.main-nav .nav-list .sub-menu .nav-group-dom::before,
.main-nav .nav-list .sub-menu .nav-group-zunanje::before,
.main-nav .nav-list .sub-menu .nav-group-servis::before {
    display: block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #0096C7;
    padding: 10px 20px 6px 20px;
    border-top: 1px solid #DEE2E6;
}
.main-nav .nav-list .sub-menu .nav-group-dom::before {
    content: "Steklo za dom";
}
.main-nav .nav-list .sub-menu .nav-group-zunanje::before {
    content: "Zunanje rešitve";
}
.main-nav .nav-list .sub-menu .nav-group-servis::before {
    content: "Servis";
}

/* Hamburger (CSS-only, 3 bars) */
.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;cursor:pointer;padding:0;background:none;border:none;z-index:101}
.hamburger-bar{display:block;width:22px;height:2.5px;background:#1A1A2E;border-radius:2px;transition:transform .3s,opacity .3s}
.nav-toggle-check:checked~.site-header .hamburger .hamburger-bar:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.nav-toggle-check:checked~.site-header .hamburger .hamburger-bar:nth-child(2){opacity:0}
.nav-toggle-check:checked~.site-header .hamburger .hamburger-bar:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ===== HERO ===== */
.hero{
    background-color:#0D1117;
    background-size:auto 130%;background-position:center 25%;background-repeat:no-repeat;
    min-height:600px;display:flex;align-items:center;justify-content:center;
    text-align:center;padding:60px 20px;
    position:relative;overflow:hidden;
    /* static bg — layer sistem preuzima animaciju */
    transform:translateZ(0);
    -webkit-transform:translateZ(0);
}
.hero::before{
    content:'';position:absolute;inset:0;
    background:radial-gradient(ellipse at center,rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.85) 100%);
    pointer-events:none;z-index:1;
}
.hero-inner{max-width:700px;position:relative;z-index:2}
.hero h1{color:#fff;margin-bottom:20px}
.hero-accent{color:#0096C7}
.hero-description{font-size:18px;color:#fff;margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto}

/* ===== HERO CTA GROUP ===== */
.hero-cta-group{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.btn-secondary{display:inline-block;font-weight:600;font-size:16px;padding:16px 40px;border-radius:8px;cursor:pointer;transition:all .25s;border:2px solid #0096C7;text-align:center;background:transparent;color:#0096C7}
.hero .btn-secondary{color:#fff;border-color:rgba(255,255,255,.6)}
.hero .btn-secondary:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff;transform:translateY(-2px)}

/* === HERO IMG SISTEM (JS-driven crossfade, mobile + desktop) ===
   Samo 2 <img> taga aktivna — glatka opacity tranzicija kroz JS */
.hero-img{
    display:block;
    position:absolute;inset:0;
    object-fit:cover;width:100%;height:100%;
    opacity:0;
    transition:opacity 1s ease-in-out;
    will-change:opacity;
    transform:translateZ(0);
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}
.hero-img.active{opacity:1}

/* Stari hero sistem — uklonjen */
.hero-layer,.hero-preload-mob{display:none}

/* ===== SERVICES GRID ===== */
.services{background:#F5F7FA}
.services h2{text-align:center;margin-bottom:48px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{
    background:#fff;border-radius:12px;padding:32px 24px;text-align:center;
    border:1px solid #DEE2E6;transition:all .3s;
    display:block;color:inherit;
}
.service-card:hover{
    transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,150,199,.12);
    border-color:#0096C7;
}
.service-icon{font-size:32px;color:#0096C7;margin-bottom:16px}
.service-card h3{font-size:18px;margin-bottom:8px;color:#1A1A2E}
.service-card p{font-size:14px;color:#475569;line-height:1.5}
.no-services{text-align:center;padding:40px;color:#94A3B8}

/* ===== CTA SECTION ===== */
.cta-section{background:#0096C7;text-align:center;color:#fff}
.cta-section h2{color:#fff;margin-bottom:16px}
.cta-section p{color:#E0F2FE;font-size:18px;margin-bottom:24px}

/* ===== CTA BUTTON GROUP ===== */
.cta-btn-group{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.cta-address{font-size:14px;color:#E0F2FE;margin-bottom:4px;opacity:.85}
.btn-outline-white{display:inline-block;font-weight:600;font-size:16px;padding:16px 40px;border-radius:8px;cursor:pointer;transition:all .25s;border:2px solid #fff;text-align:center;background:transparent;color:#fff}
.btn-outline-white:hover{background:rgba(255,255,255,.15);color:#fff;transform:translateY(-2px)}

/* ===== REVIEWS ===== */
.reviews{background:#fff}
.reviews h2{text-align:center;margin-bottom:48px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review-card{background:#F5F7FA;border-radius:12px;padding:28px 24px;border:1px solid #DEE2E6;transition:all .3s}
.review-card:hover{border-color:#0096C7;box-shadow:0 8px 30px rgba(0,150,199,.08)}
.review-stars{color:#F59E0B;font-size:16px;margin-bottom:12px}
.review-stars .empty{color:#DEE2E6}
.review-text{font-size:15px;color:#334155;line-height:1.6;margin-bottom:16px;font-style:italic}
.review-author{font-size:14px;color:#1A1A2E}
.review-author strong{color:#1A1A2E}
.review-location{color:#94A3B8;font-size:13px}

/* ===== SERVICE PAGE ===== */
.service-page .section-inner{padding:80px 20px}
.service-header{text-align:center;margin-bottom:40px}
.service-header-icon{font-size:48px;color:#0096C7;margin-bottom:20px}
.service-subtitle{font-size:18px;color:#5C7A9A;max-width:600px;margin:12px auto 0}
.service-content{max-width:800px;margin:0 auto;background:#fff;padding:40px;border-radius:12px;border:1px solid #DEE2E6}
.service-content h2{font-size:22px;margin:32px 0 12px;color:#1A1A2E}
.service-content h2:first-child{margin-top:0}
.service-content p{margin-bottom:16px;color:#334155;line-height:1.7}
.service-content ul,.service-content ol{margin:0 0 20px 24px;color:#334155}
.service-content li{margin-bottom:6px}
/* ===== SERVICE GALLERY ===== */
.service-gallery{margin-top:60px}
.service-gallery h2{text-align:center;font-size:clamp(26px,4vw,34px);color:#1A1A2E;margin-bottom:36px;font-weight:700;letter-spacing:-.02em}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-grid--small{grid-template-columns:repeat(2,1fr)}
.gallery-grid--large{grid-template-columns:repeat(4,1fr)}
.gallery-item{margin:0}
.gallery-link{display:block;overflow:hidden;border-radius:8px}
.gallery-link img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;transition:transform .35s ease,box-shadow .35s ease}
.gallery-link:hover img{transform:scale(1.05);box-shadow:0 8px 30px rgba(0,0,0,.15)}
.gallery-item figcaption{text-align:center;font-size:14px;color:#64748B;margin-top:10px;font-style:italic}
/* FIX5: Additional selectors for gallery images — object-fit cover instead of physical crop */
.gallery-grid img,.galerija-item img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}

/* ===== SERVICE CTA (homepage-style blue) ===== */
.service-cta{text-align:center;background:#0096C7;color:#fff;margin-top:60px;padding:60px 40px;border-radius:12px}
.service-cta h2{color:#fff;margin-bottom:16px}
.service-cta p{color:#E0F2FE;font-size:18px;margin-bottom:8px}
.service-cta .cta-address{font-size:14px;color:#E0F2FE;margin-bottom:20px;opacity:.85}
.service-cta .btn-primary{background:#fff;color:#0096C7}
.service-cta .btn-primary:hover{background:#f0f4f8;color:#007BA3}
.service-cta .btn-secondary{color:#fff;border-color:rgba(255,255,255,.6)}
.service-cta .btn-secondary:hover{background:rgba(255,255,255,.1);border-color:#fff}

/* ===== FAQ SECTION ===== */
.service-faq{background:#fff;border-top:1px solid #DEE2E6}
.service-faq .section-inner{padding:60px 20px}
.service-faq h2{text-align:center;margin-bottom:40px;color:#1A1A2E}
.faq-list{max-width:800px;margin:0 auto}
.faq-item{border:1px solid #DEE2E6;border-radius:10px;margin-bottom:12px;overflow:hidden;transition:box-shadow .2s}
.faq-item:hover{box-shadow:0 2px 12px rgba(0,150,199,.06)}
.faq-item[open]{border-color:#0096C7}
.faq-question{padding:18px 24px;font-weight:600;font-size:16px;color:#1A1A2E;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;user-select:none}
.faq-question::-webkit-details-marker{display:none}
.faq-question::after{content:'+';font-size:22px;color:#0096C7;font-weight:400;margin-left:16px;transition:transform .25s;flex-shrink:0}
.faq-item[open] .faq-question::after{content:'−';transform:rotate(180deg)}
.faq-answer{padding:0 24px 20px;font-size:15px;color:#475569;line-height:1.7}
.faq-answer p{margin-bottom:12px}
.faq-answer p:last-child{margin-bottom:0}

/* ===== FOOTER ===== */
.site-footer{background:#1A1A2E;color:#CBD5E1;padding:48px 20px 0;font-size:14px}
/* Brand row: kontakt info */
.footer-brand-row{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:32px}
.footer-contact-info{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:15px}
.footer-contact-phone{color:#fff!important;font-weight:600;font-size:18px;text-decoration:none;display:block}
.footer-contact-phone:hover{color:#48CAE4!important}
.footer-contact-email{color:#94A3B8;text-decoration:none;display:block}
.footer-contact-email:hover{color:#48CAE4}
.footer-contact-address{color:#64748B;font-size:13px;display:block}
.footer-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding-bottom:40px}
.footer-col h4{color:#fff;font-size:16px;margin-bottom:14px;font-weight:600}
.footer-col p,.footer-col a{color:#94A3B8;line-height:1.7}
.footer-col a:hover{color:#48CAE4}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col ul li{margin-bottom:8px}
.footer-tagline{margin-bottom:16px!important}
.footer-phone a,.footer-email a{font-weight:600;color:#48CAE4!important}
.footer-phone a:hover,.footer-email a:hover{color:#fff!important}
.footer-address i,.footer-phone i,.footer-email i{margin-right:8px;color:#0096C7}
.footer-services-list a{display:inline-block;padding:2px 0}
/* Social icons */
.footer-social{display:flex;gap:12px;margin-top:16px}
.footer-social .social-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#CBD5E1;font-size:16px;transition:all .25s}
.footer-social .social-icon:hover{background:#0096C7;color:#fff;transform:translateY(-2px)}
/* Footer bottom */
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 24px;padding:20px;border-top:1px solid rgba(255,255,255,.08);color:#64748B;font-size:13px}
.footer-bottom p{margin:0}
.footer-legal{display:flex;gap:12px}
.footer-legal a{color:#64748B;text-decoration:underline;text-underline-offset:2px}
.footer-legal a:hover{color:#48CAE4}

/* ===== 404 ===== */
.error404 .site-main{text-align:center;padding:80px 20px}

/* ===== KONTAKT PAGE ===== */
.kontakt-header{text-align:center;margin-bottom:48px}
.kontakt-subtitle{font-size:18px;color:#5C7A9A;max-width:600px;margin:12px auto 0}
.kontakt-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.kontakt-info{display:flex;flex-direction:column;gap:20px}
.kontakt-card{background:#fff;border-radius:12px;padding:24px;border:1px solid #DEE2E6;text-align:center}
.kontakt-icon{font-size:28px;color:#0096C7;margin-bottom:12px}
.kontakt-card h3{font-size:16px;color:#1A1A2E;margin-bottom:6px}
.kontakt-card p{color:#475569;font-size:14px}
.kontakt-card a{font-weight:600}
.kontakt-area{font-size:13px!important;color:#94A3B8!important;margin-top:4px}
.kontakt-form-wrap{background:#fff;border-radius:12px;padding:32px;border:1px solid #DEE2E6}
.kontakt-form-wrap h2{font-size:22px;margin-bottom:24px;color:#1A1A2E}
.kontakt-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kontakt-form .form-group{margin-bottom:16px}
.kontakt-form label{display:block;font-size:14px;font-weight:500;color:#1A1A2E;margin-bottom:6px}
.kontakt-form input,.kontakt-form textarea{width:100%;padding:12px 16px;border:1px solid #DEE2E6;border-radius:8px;font-family:Inter,sans-serif;font-size:15px;color:#334155;transition:border-color .2s;background:#F5F7FA}
.kontakt-form input:focus,.kontakt-form textarea:focus{outline:none;border-color:#0096C7;background:#fff}
.kontakt-form textarea{resize:vertical;min-height:120px}
.kontakt-form .btn{width:100%}
.form-success{background:#ECFDF5;color:#065F46;padding:16px;border-radius:8px;margin-top:16px;font-weight:500;text-align:center}

/* ===== POVEZANI NASVETI ===== */
.povezani-nasveti{padding:3rem 0;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%)}
.povezani-nasveti h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:#0c4a6e}
.nasveti-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.nasvet-card{background:rgba(255,255,255,.6);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.8);box-shadow:0 4px 24px rgba(0,0,0,.06);transition:transform .2s,box-shadow .2s}
.nasvet-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,0,0,.1)}
.nasvet-card-img{aspect-ratio:16/9;overflow:hidden}
.nasvet-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.nasvet-card-body{padding:1.25rem}
.nasvet-card-body h3{font-size:1.1rem;margin:0 0 .5rem;color:#0c4a6e}
.nasvet-excerpt{font-size:.9rem;color:#475569;margin-bottom:1rem;line-height:1.5}
.nasvet-link{color:#0284c7;text-decoration:none;font-weight:600;font-size:.9rem}
.nasvet-link:hover{text-decoration:underline}

/* ===== RESPONSIVE ===== */
@media(max-width:1280px){
    .section-inner{max-width:960px}
}
@media(max-width:1024px){
    .section-inner{max-width:90vw}
    .service-grid{grid-template-columns:repeat(3,1fr);gap:20px}
    .reviews-grid{grid-template-columns:repeat(2,1fr)}
    .nasveti-grid{grid-template-columns:repeat(2,1fr)}
    .gallery-grid,.gallery-grid--large{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
    .section-inner{padding:60px 20px}
    .service-grid{grid-template-columns:1fr 1fr}
    .reviews-grid{grid-template-columns:1fr}
    .footer-inner{grid-template-columns:1fr;gap:24px}
    .footer-brand-row{flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:20px;margin-bottom:20px}
    .footer-contact-info{align-items:flex-start}
    .kontakt-grid{grid-template-columns:1fr}
    .kontakt-form .form-row{grid-template-columns:1fr}
    .hamburger{display:flex;margin-left:auto}
    .cta-phone-nav{
        display:flex;align-items:center;gap:6px;
        color:#0096C7;font-size:13px;font-weight:700;text-decoration:none;
        margin-left:auto;margin-right:8px;white-space:nowrap;flex-shrink:0
    }
    .cta-phone-nav:hover{color:#007BA3}
    .cta-phone-nav i{color:#dc2626!important}
    .main-nav .nav-list{display:none;flex-direction:column;position:absolute;top:64px;left:0;right:0;
        background:rgba(245,247,250,.98);backdrop-filter:blur(12px);
        -webkit-backdrop-filter:blur(12px);
        padding:16px 20px;gap:2px;border-bottom:1px solid #DEE2E6;
        box-shadow:0 12px 30px rgba(0,0,0,.06);
        max-height:calc(100vh - 64px);overflow-y:auto}
    .nav-toggle-check:checked~.site-header .main-nav .nav-list{display:flex}
    /* Mobile submenu — always visible, indented */
    .main-nav .nav-list .sub-menu{display:block;position:static;min-width:0;
        background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;
        border:none;border-radius:0;padding:0 0 0 16px;box-shadow:none}
    .main-nav .nav-list .sub-menu a{padding:6px 16px;font-size:13px;color:#64748B}
    .main-nav .nav-list .sub-menu a:hover{color:#0096C7;background:none}
    .main-nav .nav-list .sub-menu .nav-group-dom::before,
    .main-nav .nav-list .sub-menu .nav-group-zunanje::before,
    .main-nav .nav-list .sub-menu .nav-group-servis::before{padding:8px 0 4px 0;font-size:10px}
    .nasveti-grid{grid-template-columns:1fr}
    .gallery-grid,.gallery-grid--large,.gallery-grid--medium{grid-template-columns:repeat(2,1fr)}
    /* Blog responsive */
    .post-featured-image img{max-width:100%}
    .post-content{font-size:1rem}
    .post-content table{display:block;overflow-x:auto}
    .hero{min-height:500px}
    .hero h1{font-size:clamp(24px,6vw,36px)}
    .hero-description{font-size:16px}
}
@media(max-width:480px){
    .section-inner{padding:40px 16px}
    .service-grid{grid-template-columns:1fr}
    .gallery-grid,.gallery-grid--large,.gallery-grid--medium,.gallery-grid--small{grid-template-columns:1fr}
    .hero{min-height:400px}
    .hero h1{font-size:24px}
    .hero-description{font-size:15px}
    .btn{padding:12px 24px;font-size:14px}
    .btn-secondary{padding:12px 24px;font-size:14px}
    .btn-outline-white{padding:12px 24px;font-size:14px}
    .hero-cta-group{flex-direction:column;align-items:center}
    .cta-btn-group{flex-direction:column;align-items:center}
    .hero-cta-group .btn,.cta-btn-group .btn{width:100%;max-width:300px}
    .services h2{font-size:22px;margin-bottom:32px}
    .reviews h2{font-size:22px;margin-bottom:32px}
}
@media(max-width:320px){
    .hero h1{font-size:20px}
    .hero-description{font-size:14px}
    .btn,.btn-secondary,.btn-outline-white{padding:10px 20px;font-size:13px}
    .service-card{padding:24px 16px}
}
/* ===== SINGLE BLOG POST ===== */
.single-post .section-inner{padding:60px 20px 40px}
.post-meta{display:flex;gap:1rem;font-size:.875rem;color:#64748b;margin-bottom:1rem;flex-wrap:wrap}
.post-meta a{color:#0096C7}
.post-title{font-size:clamp(28px,5vw,42px);margin-bottom:1.5rem;line-height:1.2}
.post-featured-image{margin-bottom:2rem;border-radius:12px;overflow:hidden}
.post-featured-image img{max-width:800px;height:auto;display:block;margin:0 auto;width:100%}
.post-content{max-width:800px;margin:0 auto;font-size:1.05rem;line-height:1.8;color:#334155}
.post-content h2{font-size:1.5rem;margin:2rem 0 .75rem;color:#1A1A2E}
.post-content h3{font-size:1.2rem;margin:1.5rem 0 .5rem;color:#1A1A2E}
.post-content p{margin-bottom:1.25rem}
.post-content ul,.post-content ol{margin:0 0 1.5rem 1.5rem}
.post-content li{margin-bottom:.5rem}
.post-content img{border-radius:8px;margin:1.5rem auto;display:block;max-width:100%;height:auto;box-shadow:0 4px 16px rgba(0,0,0,.08);transition:transform .3s,box-shadow .3s}
.post-content img:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.post-content blockquote{border-left:4px solid #0096C7;padding:1rem 1.5rem;margin:1.5rem 0;background:#f0f9ff;border-radius:0 8px 8px 0;color:#0c4a6e}
/* Plave ključne riječi, cijene, važni elementi */
.post-content strong,.post-content b{color:#0096C7}
.post-content .price,.post-content .accent,.post-content .highlight{color:#0096C7;font-weight:600}
/* Tabele u blog postovima */
.post-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}
.post-content th,.post-content td{border:1px solid #DEE2E6;padding:10px 14px;text-align:left}
.post-content th{background:#F0F9FF;color:#1A1A2E;font-weight:600}
.post-content tr:nth-child(even){background:#F8FAFC}
.post-content td strong,.post-content td b{color:#0096C7}
.post-cta{text-align:center;margin-top:3rem;padding:3rem 2rem;background:#fff;border-radius:12px;border:1px solid #DEE2E6;box-shadow:0 4px 20px rgba(0,0,0,.04)}
.post-cta h2{color:#1A1A2E;margin-bottom:.5rem}
.post-cta p{color:#475569;margin-bottom:1.25rem}
.post-cta a{color:#0096C7;font-weight:600}
.post-cta .btn-primary{color:#fff}

/* ===== PREBERITE TUDI ===== */
.preberite-tudi{padding:3rem 0;background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%)}
.preberite-tudi h2{text-align:center;font-size:2rem;margin-bottom:2rem;color:#0c4a6e}
/* --- Cross-link Banner --- */
.crosslink-banner{padding:2rem 0;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border-top:1px solid #bbf7d0;border-bottom:1px solid #bbf7d0}
.crosslink-banner .section-inner{text-align:center}
.crosslink-banner p{font-size:1.1rem;color:#166534;margin:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem}
.crosslink-cta{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem 1.25rem;background:#0096C7;color:#fff;border-radius:8px;font-weight:600;text-decoration:none;transition:background .2s,transform .2s}
.crosslink-cta:hover{background:#0077a0;transform:translateX(3px);color:#fff}
.crosslink-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:1rem}
.crosslink-buttons .btn{padding:12px 24px;font-size:15px}

/* --- Breadcrumbs --- */
.site-breadcrumbs {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary, #64748b);
}
.site-breadcrumbs a {
    color: var(--accent, #0096C7);
    text-decoration: none;
}
.site-breadcrumbs a:hover {
    text-decoration: underline;
}
.site-breadcrumbs .separator {
    margin: 0 0.25rem;
    color: var(--text-secondary, #94a3b8);
}

/* ===== PRINT STYLES ===== */
@media print {
    /* Hide non-essential elements */
    .site-header,
    .site-footer,
    .hamburger,
    .hero-cta-group,
    .cta-btn-group,
    .cta-section,
    .service-cta,
    .about-cta,
    .cenik-cta,
    .faq-cta,
    .post-cta,
    .crosslink-banner,
    .gallery-filter,
    .gallery-lightbox,
    .blog-cat-filter,
    .blog-pagination,
    .kontakt-form-wrap form,
    .site-breadcrumbs,
    .form-consent,
    iframe {
        display: none !important;
    }

    /* Basic typography */
    body {
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
        background: #fff;
    }

    h1, h2, h3, h4, h5, h6 {
        color: #000;
        page-break-after: avoid;
    }

    a {
        color: #000;
        text-decoration: underline;
    }

    /* Remove backgrounds and shadows */
    .service-card,
    .review-card,
    .faq-item,
    .feature-card,
    .kontakt-card,
    .gallery-item,
    .blog-card,
    .nasvet-card {
        background: #fff !important;
        border: 1px solid #ccc !important;
        box-shadow: none !important;
    }

    /* Grid adjustments */
    .service-grid,
    .reviews-grid,
    .feature-cards-grid,
    .gallery-grid,
    .blog-grid,
    .nasveti-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }

    /* Image sizing */
    img {
        max-width: 100% !important;
        page-break-inside: avoid;
    }

    /* Contact info — keep visible */
    .kontakt-info {
        display: block !important;
    }
    .kontakt-card {
        display: inline-block;
        width: 30%;
        margin: 0 1% 12pt;
        vertical-align: top;
    }

    /* Ensure link URLs are shown */
    a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 10pt;
        color: #666;
    }
    a[href^="tel"]::after,
    a[href^="mailto"]::after,
    a[href^="/"]::after {
        content: "";
    }

    /* Page breaks */
    .faq-section,
    .service-content,
    .about-content {
        page-break-inside: avoid;
    }

    .section-inner {
        max-width: 100%;
        padding: 20px 0;
    }
}

/* ===== SUPPRESS PLUGIN FOOTER (steklarska-custom) — theme footer.php handles it ===== */
.sf-custom{display:none!important}

/* ===== BLOG LISTING (index.php) ===== */
.blog-header{text-align:center;margin-bottom:48px}
.blog-header h1{color:#1A1A2E;font-size:2.5rem;margin-bottom:12px}
.blog-subtitle{font-size:1.125rem;color:#64748B;max-width:600px;margin:0 auto}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px}
.blog-card{position:relative;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #DEE2E6;
    transition:transform .2s ease,box-shadow .2s ease}
.blog-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.1)}
.blog-card-image{display:block;overflow:hidden;aspect-ratio:16/9;background:#E2E8F0}
.blog-card-img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.blog-card:hover .blog-card-img{transform:scale(1.03)}
.blog-card-body{padding:20px 24px 24px}
.blog-card-meta{display:flex;gap:12px;align-items:center;margin-bottom:10px;font-size:.875rem;color:#64748B}
.blog-card-date{color:#94A3B8}
.blog-card-category a{color:#0096C7;text-decoration:none;font-weight:500}
.blog-card-category a:hover{color:#007AA3}
.blog-card-title{font-size:1.25rem;font-weight:600;color:#1A1A2E;margin-bottom:10px;line-height:1.3}
.blog-card-title a{color:inherit;text-decoration:none}
.blog-card-title a:hover{color:#0096C7}
.blog-card-excerpt{font-size:.95rem;color:#475569;line-height:1.6;margin-bottom:16px}
.blog-card-link{font-size:.9rem;color:#0096C7;text-decoration:none;font-weight:600}
.blog-card-link:hover{color:#007AA3}
/* Full-card clickable overlay */
.blog-card-title a::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
.blog-card-image,.blog-card-category a,.blog-card-link{position:relative;z-index:2}


.blog-empty{text-align:center;padding:60px 20px;color:#64748B;font-size:16px}

/* Pagination */
.nav-links{display:flex;justify-content:center;gap:8px;margin-top:16px}
.nav-links .page-numbers{padding:8px 16px;border-radius:8px;border:1px solid #DEE2E6;color:#475569;
    text-decoration:none;font-size:.9rem;transition:all .2s}
.nav-links .page-numbers:hover{background:#EDF1F5}
.nav-links .page-numbers.current{background:#0096C7;color:#fff;border-color:#0096C7}

@media(max-width:1024px){.blog-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.blog-grid{grid-template-columns:1fr;gap:16px}
    .blog-header{margin-bottom:32px}.blog-header h1{font-size:2rem}
    .blog-card-body{padding:16px}}

/* === O-nas page — plave ključne riječi === */
.text-accent,
.about-intro strong,
.about-text-wrap strong,
.feature-card p strong,
.tri-stvari-card p strong {
  color: #0096C7 !important;
  font-weight: 600;
}
a.phone-accent {
  color: #0096C7 !important;
  font-weight: 600;
  text-decoration: none;
}
/* ===== FancyBox 3 lightbox customization ===== */
/* Darker background overlay */
.fancybox-bg {
    background: rgba(0, 0, 0, 0.9) !important;
}

/* Gallery link cursor */
.gallery-link {
    cursor: pointer;
    display: block;
}

/* Ensure gallery images don't overflow */
.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* FancyBox navigation arrows — ensure visibility */
.fancybox-button--arrow_left,
.fancybox-button--arrow_right {
    background: rgba(0,0,0,0.5);
    border-radius: 4px;
}

/* Mobile: ensure touch/swipe works, larger close button */
@media (max-width: 768px) {
    .fancybox-button--close {
        width: 44px;
        height: 44px;
        top: 8px;
        right: 8px;
    }
    .fancybox-button--arrow_left,
    .fancybox-button--arrow_right {
        width: 44px;
        height: 44px;
    }
}


/* === Blog Gallery Grid + Lightbox === */
.blog-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 2rem 0;
}
.blog-gallery a {
    display: block;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s;
    cursor: zoom-in;
    height: 200px;
}
.blog-gallery a:hover {
    transform: scale(1.03);
}
.blog-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
@media (max-width: 768px) {
    .blog-gallery {
        grid-template-columns: 1fr;
    }
    .blog-gallery a {
        height: 250px;
    }
    .blog-gallery img {
        height: 100%;
    }
}

/* Homepage service card images (4.7.2026) */
.service-card-img{overflow:hidden;border-radius:8px 8px 0 0}
.service-card-img img{width:100%;height:200px;object-fit:cover;display:block}/* FAQ kutijice — details/summary accordion (13.7.2026) */
.faq-item {
    border: 1px solid #DEE2E6;
    border-radius: 8px;
    margin-bottom: 8px;
    background: #fff;
    overflow: hidden;
}
.faq-item summary {
    padding: 16px 48px 16px 20px;
    font-weight: 600;
    font-size: 16px;
    color: #1A1A2E;
    cursor: pointer;
    position: relative;
    list-style: none;
    user-select: none;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { display: none; content: ""; }
.faq-item summary::after {
    content: "+";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    font-weight: 300;
    color: #0096C7;
    transition: transform 0.2s;
}
.faq-item[open] summary::after {
    content: "−";
    transform: translateY(-50%);
}
.faq-item[open] summary {
    border-bottom: 1px solid #DEE2E6;
    color: #0096C7;
}
.faq-item .faq-answer {
    padding: 16px 20px;
}
.faq-item .faq-answer p {
    margin: 0;
    color: #334155;
    font-size: 15px;
    line-height: 1.6;
}


/* ━━━ /nasveti/ page layout (13.7.2026) ━━━ */
.nasveti-intro {
    text-align: center;
    margin-bottom: 40px;
}
.nasveti-lead {
    font-size: 17px;
    color: #475569;
    max-width: 620px;
    margin: 0 auto;
    line-height: 1.7;
}

/* Section */
.nasveti-section {
    margin-bottom: 48px;
}
.nasveti-section h2 {
    font-size: 22px;
    color: #1A1A2E;
    margin-bottom: 20px;
    padding-bottom: 8px;
    border-bottom: 2px solid #0096C7;
    display: inline-block;
}

/* 2-col card grid */
.nasveti-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.nasveti-grid--3col {
    grid-template-columns: repeat(3, 1fr);
}

/* Card — cijela klikabilna */
.nasveti-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #E2E8F0;
    transition: box-shadow 0.2s, transform 0.2s;
    display: flex;
    flex-direction: column;
    position: relative;
}
.nasveti-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}
.nasveti-card:hover .nasveti-card-body h3 a {
    color: #0096C7;
}
.nasveti-card-img img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
}
.nasveti-card--compact .nasveti-card-img img {
    height: 140px;
}
.nasveti-card-body {
    padding: 18px 18px 14px 18px;
    flex: 1;
    display: flex;
    flex-direction: column;
    position: relative;
}
.nasveti-card-body h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 8px 0;
}
.nasveti-card-body h3 a {
    color: #1A1A2E;
    text-decoration: none;
}
/* Cijela kartica klikabilna preko title linka */
.nasveti-card-body h3 a::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.nasveti-card-body p {
    font-size: 14px;
    color: #64748B;
    line-height: 1.5;
    margin: 0 0 10px 0;
    flex: 1;
    position: relative;
    z-index: 0;
}
.nasveti-card-body time {
    font-size: 12px;
    color: #94A3B8;
    margin-top: auto;
    position: relative;
    z-index: 0;
}
/* "Preberi →" indikator */
.nasveti-card-body h3 a::before {
    content: "Preberi →";
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: #0096C7;
    margin-top: 8px;
    position: relative;
    z-index: 2;
}
.nasveti-card--compact .nasveti-card-body h3 {
    font-size: 15px;
}
.nasveti-card--compact .nasveti-card-body p {
    font-size: 13px;
}

/* CTA */
.nasveti-cta {
    background: #F0F9FF;
    border: 1px solid #BAE6FD;
    border-radius: 10px;
    padding: 24px 28px;
    text-align: center;
    margin: 40px 0;
}
.nasveti-cta p {
    margin: 0;
    font-size: 16px;
    color: #334155;
}
.nasveti-cta .btn {
    margin: 0 4px;
    vertical-align: middle;
}

/* FAQ — already handled by .faq-item */

/* Responsive */
@media (max-width: 768px) {
    .nasveti-grid,
    .nasveti-grid--3col {
        grid-template-columns: 1fr;
    }
    .nasveti-card-img img {
        height: 160px;
    }
    .nasveti-lead {
        font-size: 15px;
        padding: 0 12px;
    }
}

/* Nasveti page title (13.7.2026) */
.page-id-27425 .page-title {
    text-align: center;
    font-size: 32px;
}

/* ===== HERO DESKTOP: 9 SLIKA SEKVENCIJALNO, CROSSFADE (≥901px) ===== */
@media(min-width:901px){
    
    /* Reset mobilne animacije */
    .hero{animation:none;min-height:650px}
    .hero::after{display:none}
    
    /* === HERO LAYER SISTEM === 
       Svaki layer = jedna slika, statični background-image

    
    @keyframes heroLayerFadeFirst{
        0%     {opacity:1}
        12.05% {opacity:1}
        13.25% {opacity:0}
        98.8%  {opacity:0}
        100%   {opacity:1}
    }
    
    @keyframes heroLayerFade{
        0%     {opacity:0}
        1.2%   {opacity:1}
        12.05% {opacity:1}
        13.25% {opacity:0}
        100%   {opacity:0}
    }
    
    /* Tekst overlay */
    .hero-inner{position:relative;z-index:2;max-width:700px}
    .hero h1{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,0.7)}
    .hero-description{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,0.6)}
}
