/*
Theme Name: IPER d.o.o.
Theme URI: https://iper.si/
Author: IPER d.o.o.
Author URI: https://iper.si/
Description: WordPress tema za cestne kontejnerske prevoze (IPER d.o.o.).
Version: 10.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iper-doo
Tags: custom-background, custom-logo, custom-menu, featured-images, translation-ready
*/
:root{--brand:#0056b3;--brand2:#0b3f87;--dark:#0b1b2b;--muted:#5b6b7a;--bg:#f4f6f9;--radius:14px}.header-container{padding:0}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:16px;top:16px;width:auto;height:auto;padding:10px 14px;background:#fff;border-radius:10px;z-index:100000;box-shadow:0 10px 30px rgba(0,0,0,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#111;background:#fff}img{max-width:100%;height:auto;display:block}a{color:inherit}.container{width:90%;max-width:1200px;margin:0 auto;padding:60px 0}section h2{text-align:center;font-size:36px;margin:0 0 36px}.section-lead{text-align:center;color:var(--muted);margin:-22px auto 34px;max-width:820px;line-height:1.7}.site-.header-inner{display:flex;align-items:center;justify-content:center;gap:16px;padding:0;height:76px;}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;letter-spacing:.2px}.brand-badge{width:34px;height:34px;border-radius:10px;background:var(--brand);display:inline-block}.brand span{color:var(--dark)}.site-nav ul{list-style:none;display:flex;gap:14px;padding:0;margin:0}.site-nav a{text-decoration:none;padding:12px 14px;border-radius:12px;font-weight:800;color:var(--dark);font-size:16px;position:relative;}.site-nav a:hover{background:rgba(0,86,179,.08)}.header-cta{display:flex;gap:10px;align-items:center}.btn-primary{background:var(--brand);color:#fff;padding:12px 18px;text-decoration:none;border-radius:10px;font-weight:800;display:inline-block;border:0;cursor:pointer}.btn-primary:hover{background:var(--brand2)}.btn-secondary{background:rgba(11,27,43,.06);color:var(--dark);padding:12px 18px;text-decoration:none;border-radius:10px;font-weight:800;display:inline-block;border:1px solid rgba(11,27,43,.10)}.hero{position:relative;height:90vh;background:center/cover no-repeat;display:flex;align-items:center}.hero-overlay{background:transparent;width:100%;height:100%;display:flex;align-items:center}.hero-content{color:#fff;text-align:left}.hero-content h1{font-size:56px;margin:0;line-height:1.05}.hero-content h2{font-size:28px;margin:14px 0 10px;line-height:1.2;text-align:left}.hero-content p{font-size:18px;margin:0 0 26px;opacity:.95}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.services{background:var(--bg)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-box{background:#fff;padding:26px;border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.06);text-align:left;transform:translateY(12px);opacity:0;transition:transform .5s ease,opacity .5s ease,box-shadow .35s ease}.service-box.in{transform:translateY(0);opacity:1}.service-box:hover{box-shadow:0 16px 42px rgba(0,0,0,.10)}.service-box .icon{font-size:28px;margin-bottom:10px}.service-box h3{margin:8px 0 8px}.service-box p{margin:0;color:var(--muted);line-height:1.6}.about{background:#fff}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}.about-text h2{text-align:left;margin-bottom:16px}.about-text p{color:var(--muted);line-height:1.7;margin:0 0 16px}.about-media img{width:100%;height:360px;object-fit:cover;border-radius:var(--radius);box-shadow:0 14px 45px rgba(0,0,0,.12)}.ticks{margin:16px 0 22px;padding:0;list-style:none}.ticks li{padding-left:26px;margin:10px 0;position:relative}.ticks li::before{content:"✓";position:absolute;left:0;top:0;color:var(--brand);font-weight:900}.port-video{background:linear-gradient(180deg,var(--bg),#fff);padding:10px 0}.video-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}.video-text h2{text-align:left;margin-bottom:14px}.video-text p{color:var(--muted);line-height:1.7;margin:0 0 10px}.video-frame{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius);overflow:hidden;box-shadow:0 14px 45px rgba(0,0,0,.12);background:#000}.video-frame video{width:100%;height:100%;object-fit:cover}.fleet-gallery{background:#fff;padding:20px 0 80px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-card{appearance:none;border:0;padding:0;background:transparent;text-align:left;cursor:pointer;border-radius:var(--radius);overflow:hidden;transform:translateY(12px);opacity:0;transition:transform .5s ease,opacity .5s ease,box-shadow .35s ease;box-shadow:0 10px 30px rgba(0,0,0,.08)}.gallery-card.in{transform:translateY(0);opacity:1}.gallery-card img{width:100%;height:260px;object-fit:cover;display:block;transform:scale(1.02);transition:transform .45s ease}.gallery-card:hover img{transform:scale(1.07)}.gallery-card:hover{box-shadow:0 16px 48px rgba(0,0,0,.16)}.gallery-caption{display:block;padding:12px 14px;font-weight:800;font-size:14px;background:#fff}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;padding:18px;z-index:9999}.lightbox.is-open{display:flex}.lightbox-img{max-width:min(1100px,100%);max-height:85vh;border-radius:12px;box-shadow:0 20px 70px rgba(0,0,0,.45)}.lightbox-close{position:fixed;top:14px;right:14px;width:44px;height:44px;border-radius:999px;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:22px;cursor:pointer}.contact{background:var(--dark);color:#fff}.contact-lead{text-align:center;color:rgba(255,255,255,.82);margin:-18px auto 26px;max-width:760px;line-height:1.7}.contact a{color:#fff;font-weight:900;text-decoration:underline;text-underline-offset:3px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:start}.contact-card{background:rgba(255,255,255,.08);padding:22px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.12)}.contact-form{display:flex;flex-direction:column;gap:12px}.contact-form input,.contact-form textarea{padding:12px 12px;border-radius:10px;border:0;outline:none}.contact-form textarea{min-height:130px;resize:vertical}.site-footer{background:#071321;color:rgba(255,255,255,.8);padding:18px 0}.footer-inner{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:nowrap}.footer-inner a{color:#fff;font-weight:800}@media (max-width:1024px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{grid-template-columns:1fr}.video-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{grid-template-columns:1fr}.site-nav ul{gap:8px;flex-wrap:wrap;justify-content:flex-end}}@media (max-width:640px){.container{padding:46px 0}section h2{font-size:28px;margin-bottom:26px}.hero{height:78vh}.hero-content h1{font-size:36px}.hero-content h2{font-size:20px}.hero-content p{font-size:16px}.btn-primary,.btn-secondary{width:100%;max-width:360px;text-align:center}.service-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;gap:14px}.gallery-card img{height:230px}.about-media img{height:260px}.header-inner{flex-wrap:wrap}}.header-phone a{font-weight:900;color:var(--brand);text-decoration:none;padding:12px 14px;border-radius:12px;font-size:16px;transition:transform .2s ease,background .2s ease}.header-phone a:hover{background:rgba(0,86,179,.08)}@media (max-width:640px){.header-phone{width:100%;text-align:center;margin-bottom:6px}}.floating-contact{position:fixed;left:12px;right:12px;bottom:12px;z-index:9999;display:none;gap:12px;align-items:center;justify-content:center;height:76px;padding:0 12px;background:rgba(255,255,255,.92);border:1px solid rgba(0,0,0,.08);border-radius:18px;box-shadow:0 16px 50px rgba(0,0,0,.18);backdrop-filter:blur(8px);}.floating-contact a{text-decoration:none;border-radius:14px;font-weight:900;display:inline-flex;align-items:center;gap:8px;padding:12px 14px;white-space:nowrap;font-size:16px;line-height:1;transition:transform .2s ease,filter .2s ease}.floating-call{background:var(--brand);color:#fff;flex:0 0 auto}.floating-call:hover{background:var(--brand2)}.floating-phone{background:rgba(0,86,179,.08);color:var(--dark);flex:0 0 auto;justify-content:center}.floating-phone .fc-label{overflow:hidden;text-overflow:ellipsis}.floating-mail{background:rgba(11,27,43,.06);color:var(--dark);border:1px solid rgba(11,27,43,.10);flex:0 0 auto}.fc-icon{font-size:18px;line-height:1}.fc-text{font-size:14px}@media (max-width:768px){.floating-contact{display:flex}.site-footer{padding-bottom:80px}}@media (max-width:380px){.floating-phone{display:none}.floating-contact{gap:10px}}.floating-mail{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}.floating-call{background:#00c853;color:#fff;animation:pulseCall 1.8s infinite}.floating-call:hover{background:#00b34a}@keyframes slideUpFade{to{transform:translateY(0);opacity:1}}@keyframes pulseCall{0%{box-shadow:0 0 0 0 rgba(0,200,83,.7)}70%{box-shadow:0 0 0 14px rgba(0,200,83,0)}100%{box-shadow:0 0 0 0 rgba(0,200,83,0)}}.floating-contact a:hover{transform:translateY(-2px);transition:all .2s ease}.info-icons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:40px}.info-item{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.08);padding:18px;border-radius:14px;border:1px solid rgba(255,255,255,.15)}.info-icon{font-size:28px}.contact-map{background:#fff;padding:10px;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.15)}@media (max-width:768px){.contact-grid{grid-template-columns:1fr}}}.site-header .container{padding:0 5%}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:nowrap}.brand{flex:0 0 auto}.site-nav{flex:1 1 auto;display:flex;justify-content:center}.site-nav ul{flex-wrap:nowrap}.lang-switcher{flex:0 0 auto}.header-phone{flex:0 0 auto}.header-cta{flex:0 0 auto;display:flex;gap:8px}.site-nav a{padding:8px 8px;font-size:14px}.lang-switcher button{padding:5px 8px;font-size:13px}.header-phone a{font-size:14px}@media (max-width:1024px){.site-nav{display:none}}.site-header{position:sticky;top:0;z-index:1000;transition:box-shadow .25s ease,background .25s ease,transform .25s ease}.site-header.is-sticky{background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(0,0,0,.08)}.site-header.is-sticky .header-inner{padding:8px 0}.brand-logo{height:42px;width:auto;display:block;transition:height .2s ease}.site-header.is-sticky .brand-logo{height:36px}.brand{display:flex;align-items:center}body{background:linear-gradient(180deg,#e6f4fb 0%,#f4f9fc 40%,#ffffff 100%)}.hero-overlay{background:linear-gradient(135deg,rgba(0,86,179,0.85),rgba(0,150,199,0.65))}.services{background:linear-gradient(180deg,#f0f8fc,#e1f1f9)}.about{background:linear-gradient(180deg,#ffffff,#f2fbff)}.port-video{background:linear-gradient(180deg,#dff3fb,#ffffff)}.fleet-gallery{background:linear-gradient(180deg,#f6fcff,#ffffff)}.contact{background:linear-gradient(135deg,#003f5c,#005f87,#0077a6)}section{position:relative}body{background:linear-gradient(-45deg,#e6f4fb,#cfefff,#f4f9fc,#dff3fb);background-size:400% 400%;animation:oceanFlow 18s ease infinite}@keyframes oceanFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.wave-separator{position:relative;width:100%;height:80px;overflow:hidden;margin-top:-2px}.wave-separator svg{width:100%;height:100%;display:block}.service-box,.contact-card,.info-item{background:rgba(255,255,255,0.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.35)}section{opacity:0;transform:translateY(30px);animation:fadeUp 1s ease forwards}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.site-footer{position:fixed;bottom:0;left:0;width:100%;z-index:998;box-shadow:0 -8px 30px rgba(0,0,0,.15)}main{padding-bottom:120px}@media (max-width:768px){main{padding-bottom:160px}}.site-footer{background:transparent;border-top:1px solid rgba(255,255,255,.18)}.footer-infobar{background:rgba(255,255,255,.12);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.14)}.infobar-inner{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center;padding:10px 0}.info-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(0,0,0,.14);color:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.14);font-weight:800;font-size:13px;line-height:1}.info-pill a{color:#fff;text-decoration:none}.info-pill a:hover{text-decoration:underline;text-underline-offset:3px}.pill-ico{font-size:16px}.footer-glass{background:rgba(7,19,33,.58);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0;color:rgba(255,255,255,.86)}.footer-mini-contact{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:nowrap}.mini-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;text-decoration:none;font-weight:900;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18)}.mini-btn:hover{background:rgba(255,255,255,.18)}main{padding-bottom:150px}@media (max-width:768px){.footer-inner{justify-content:center;text-align:center}.footer-mini-contact{width:100%;justify-content:center}main{padding-bottom:190px}}@media (max-width:380px){.info-pill{font-size:12px}}body{padding-top:20px}@media(max-width:768px){.top-contact-bar{right:10px;top:8px}.top-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-weight:900;text-decoration:none;font-size:16px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}}.top-contact-bar{position:fixed;top:10px;right:18px;z-index:2000;display:flex;gap:10px;transform:translateY(-10px);opacity:0;transition:transform .35s ease,opacity .35s ease,filter .35s ease}.top-contact-bar.is-ready{transform:translateY(0);opacity:1}.top-btn{padding:10px 14px;border-radius:999px;font-weight:900;text-decoration:none;color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 8px 25px rgba(0,0,0,.22);transition:transform .25s ease,box-shadow .25s ease,padding .25s ease,font-size .25s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.call-btn{background:linear-gradient(135deg,#00c853,#00e676)}.mail-btn{background:linear-gradient(135deg,#0056b3,#00a6ff)}.top-btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(0,0,0,.32)}.top-contact-bar.is-compact .top-btn{padding:8px 12px;font-size:13px}.top-contact-bar.is-compact .btn-text{display:none}.site-header{padding-right:210px}.site-nav a{font-size:13px;padding:7px 7px}.header-phone a{font-size:13px;padding:7px 10px}.btn-primary,.btn-secondary{padding:10px 14px;font-size:13px}.header-inner,.site-nav ul{flex-wrap:nowrap}.site-nav ul{gap:10px}.brand-logo{height:40px}@media (max-width:1024px){.site-header{padding-right:170px}}@media (max-width:768px){.top-contact-bar{top:8px;right:10px;gap:8px}.top-btn{padding:8px 10px;font-size:13px}.btn-text{display:none}.site-header{padding-right:120px}}:root{--phone-yellow:#ffd400}a[href^="tel:"]:not(.top-btn):not(.floating-call):not(.floating-phone):not(.mini-btn){color:var(--phone-yellow);font-weight:900;text-decoration:none}a[href^="tel:"]:not(.top-btn):not(.floating-call):not(.floating-phone):not(.mini-btn):hover{text-decoration:underline;text-underline-offset:3px}.header-phone a{color:var(--phone-yellow) !important}.info-pill a[href^="tel:"]{color:var(--phone-yellow) !important}.brand-logo,.footer-logo{transition:transform .25s ease,filter .25s ease,opacity .25s ease}.brand-logo:hover{transform:translateY(-1px) scale(1.02);filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))}.footer-logo{height:34px;width:auto;opacity:.92}.footer-logo:hover{opacity:1;transform:translateY(-1px)}.site-header{animation:headerDrop .5s ease both}@keyframes headerDrop{from{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.wave-separator svg path{animation:waveFloat 6s ease-in-out infinite;transform-origin:center}@keyframes waveFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}.header-phone a,.info-pill a[href^="tel:"]{position:relative}.header-phone a::after,.info-pill a[href^="tel:"]::after{content:"";position:absolute;inset:-6px -10px;border-radius:999px;box-shadow:0 0 0 0 rgba(255,212,0,.0);transition:box-shadow .25s ease}.site-header.is-sticky .header-phone a::after{animation:phoneGlow 2.4s infinite}@keyframes phoneGlow{0%{box-shadow:0 0 0 0 rgba(255,212,0,.45)}70%{box-shadow:0 0 0 12px rgba(255,212,0,0)}100%{box-shadow:0 0 0 0 rgba(255,212,0,0)}}.top-btn,.header-phone a,.header-cta a,.site-nav a{font-size:12px !important;line-height:1 !important;padding:6px 10px !important;white-space:nowrap !important}.top-btn{height:32px;display:inline-flex;align-items:center;justify-content:center}.header-phone a{height:30px;display:inline-flex;align-items:center}.site-.site-nav a{font-size:11px !important}.header-phone a{font-size:11px !important}.top-btn{font-size:11px !important}.header-cta a{font-size:11px !important}.brand-logo{height:36px !important}.site-header{background:rgba(255,255,255,.86) !important;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid rgba(11,27,43,.06) !important;box-shadow:none !important}.site-header.is-sticky{background:rgba(255,255,255,.90) !important;box-shadow:0 8px 24px rgba(0,0,0,.06) !important}.header-inner{gap:14px !important}.brand-logo{height:34px !important;filter:none !important}.site-nav a{color:rgba(11,27,43,.78) !important;font-weight:800 !important;letter-spacing:.1px;background:transparent !important;border:0 !important}.site-nav a:hover{background:rgba(0,86,179,.06) !important;color:rgba(11,27,43,.92) !important}.header-phone a{color:var(--phone-yellow) !important;background:transparent !important;border:1px solid rgba(255,212,0,.22) !important;padding:6px 10px !important;border-radius:999px !important}.header-cta a.btn-secondary,.header-cta a.btn-primary{background:transparent !important;color:rgba(11,27,43,.82) !important;border:1px solid rgba(11,27,43,.12) !important;border-radius:999px !important;box-shadow:none !important}.header-cta a.btn-primary{border-color:rgba(0,86,179,.22) !important;color:rgba(0,86,179,.95) !important}.header-cta a:hover{background:rgba(11,27,43,.06) !important}.site-header{padding-right:190px !important}.top-contact-bar{top:10px !important;right:14px !important;gap:8px !important}.top-btn{background:rgba(11,27,43,.08) !important;color:rgba(11,27,43,.88) !important;border:1px solid rgba(11,27,43,.10) !important;box-shadow:none !important}.top-btn:hover{background:rgba(11,27,43,.12) !important;transform:translateY(-2px) !important;box-shadow:none !important}.hero-overlay{background:linear-gradient(135deg,rgba(0,86,179,0.78),rgba(0,150,199,0.58)) !important}@media (max-width:768px){.site-header{padding-right:120px !important}.brand-logo{height:32px !important}.header-phone a{padding:6px 9px !important}.header-cta{display:none !important}}.header-inner{justify-content:flex-start !important}.brand{margin-right:30px}.site-nav{justify-content:flex-start !important;margin-right:20px}.header-phone{margin-left:auto}.header-cta{margin-left:10px}.site-.site-header .header-inner{height:70px;align-items:center}.site-header.is-sticky{height:70px !important}.brand-logo{height:36px !important}:root{--brand:#0B5ED7;--brand2:#0847A6;--ink:#071321;--text:#0c1726;--muted2:#6b7a8b;--surface:rgba(255,255,255,.78);--surface2:rgba(255,255,255,.62);--stroke:rgba(11,27,43,.10);--shadow:0 18px 55px rgba(7,19,33,.12);--shadow2:0 10px 30px rgba(7,19,33,.10);--radius:16px;--radius2:20px}body{color:var(--text);letter-spacing:.1px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:radial-gradient(1200px 600px at 20% 0%,rgba(0,166,255,.14),transparent 60%),radial-gradient(900px 500px at 85% 20%,rgba(11,94,215,.12),transparent 55%),linear-gradient(180deg,#eef8ff 0%,#f7fbff 45%,#ffffff 100%);animation:none !important}.container{padding:72px 0}@media (max-width:640px){.container{padding:54px 0}}section h2{font-size:34px;letter-spacing:.2px}.section-lead{color:var(--muted2)}.hero-overlay{background:radial-gradient(900px 600px at 20% 30%,rgba(255,255,255,.10),rgba(255,255,255,0) 60%),linear-gradient(135deg,rgba(7,19,33,.72),rgba(11,94,215,.42))}.hero-content h1{font-weight:900;letter-spacing:.4px}.hero-content p{color:rgba(255,255,255,.92)}.btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand2));border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 24px rgba(11,94,215,.22)}.btn-primary:hover{filter:brightness(1.02);box-shadow:0 14px 34px rgba(11,94,215,.26)}.btn-secondary{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);color:#fff}.service-box,.contact-card,.info-item{border-radius:var(--radius2);box-shadow:var(--shadow2);border:1px solid var(--stroke)}.service-box{background:var(--surface)}.service-box h3{letter-spacing:.2px}.service-box p{color:var(--muted2)}.service-box .icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(11,94,215,.10);border:1px solid rgba(11,94,215,.10)}.about-media img,.video-frame,.gallery-card{border-radius:var(--radius2)}.video-frame{box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.22)}.gallery-caption{font-weight:800;color:rgba(7,19,33,.88)}.gallery-card{border:1px solid rgba(7,19,33,.08)}.contact{background:radial-gradient(900px 500px at 20% 0%,rgba(11,94,215,.40),transparent 55%),linear-gradient(135deg,#071321,#0b2a46)}.contact-lead{color:rgba(255,255,255,.82)}.contact-form input,.contact-form textarea{background:rgba(255,255,255,.96);border:1px solid rgba(0,0,0,.06)}.footer-infobar{background:rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.12)}.footer-glass{background:rgba(7,19,33,.62)}.top-btn{border:1px solid rgba(7,19,33,.10) !important;background:rgba(255,255,255,.85) !important;color:rgba(7,19,33,.86) !important}.call-btn{background:rgba(255,255,255,.85) !important;border-color:rgba(255,212,0,.28) !important}.mail-btn{background:rgba(255,255,255,.85) !important;border-color:rgba(11,94,215,.22) !important}:root{--phone-yellow:#2e7d32}.header-phone a{border-color:rgba(255,204,0,.28) !important}.header-phone a:hover{background:rgba(255,204,0,.10) !important}.service-box,.gallery-card,.contact-card,.info-item{transition:transform .22s ease,box-shadow .22s ease}.service-box:hover,.gallery-card:hover,.contact-card:hover,.info-item:hover{transform:translateY(-2px);box-shadow:0 22px 60px rgba(7,19,33,.14)}section{opacity:1 !important;transform:none !important;animation:none !important}.wave-separator{height:64px}.wave-separator svg path{animation:none !important;opacity:.92}.site-header{background:rgba(255,255,255,.92) !important;border-bottom:1px solid rgba(7,19,33,.06) !important}.site-header.is-sticky{box-shadow:0 10px 30px rgba(7,19,33,.08) !important}

/* =============================
   Ultra Corporate PRO v37 – Header/Footer refinements
   (requested: bigger header button text, header/footer height, animations, footer buttons one row, remove hero overlay)
   ============================= */

/* HEADER: sizing + cleaner layout */
.site-
.site-header .header-inner{height:76px !important;align-items:center !important}
.site-header.is-sticky{height:72px !important;min-height:72px !important}
.site-header.is-sticky .header-inner{height:72px !important}

/* Bigger text in header "buttons" */
.top-btn,.header-phone a,.header-cta a,.site-nav a{font-size:14px !important;line-height:1.1 !important}
.site-nav a{padding:8px 10px !important}
.header-phone a{padding:8px 12px !important}
.header-cta a.btn-primary,.header-cta a.btn-secondary{padding:8px 14px !important}
.top-btn{padding:10px 14px !important;height:36px !important}
.brand-logo{height:40px !important}

/* Header micro‑animations */
.header-inner > *{animation:hdrItem .55s cubic-bezier(.2,.9,.2,1) both}
.header-inner > *:nth-child(1){animation-delay:.05s}
.header-inner > *:nth-child(2){animation-delay:.10s}
.header-inner > *:nth-child(3){animation-delay:.15s}
.header-inner > *:nth-child(4){animation-delay:.20s}
.header-inner > *:nth-child(5){animation-delay:.25s}
@keyframes hdrItem{from{transform:translateY(-6px);opacity:0}to{transform:translateY(0);opacity:1}}

/* Nav underline animation */
.site-nav a{position:relative;overflow:hidden}
.site-nav a::after{content:"";position:absolute;left:10px;right:10px;bottom:6px;height:2px;border-radius:2px;background:rgba(11,94,215,.85);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.site-nav a:hover::after,.site-nav a:focus-visible::after{transform:scaleX(1)}

/* Button hover: subtle lift */
.header-cta a,.top-btn,.header-phone a{transition:transform .18s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease}
.header-cta a:hover,.top-btn:hover,.header-phone a:hover{transform:translateY(-2px)}

/* Responsive: keep header usable on smaller screens */
@media (max-width:1024px){
  .site-header{padding-right:170px !important}
  .site-nav a{font-size:13px !important}
}
@media (max-width:768px){
  .site-
  .site-header .header-inner{height:70px !important}
  .brand-logo{height:36px !important}
  .site-nav a{font-size:12px !important;padding:7px 8px !important}
  .header-phone a{font-size:12px !important}
  .top-btn{font-size:12px !important;height:34px !important}
}

/* FOOTER: buttons one row + height + animations */
.site-footer{padding:18px 0 !important}
.footer-inner{align-items:center !important;gap:14px !important}
.footer-mini-contact{display:flex !important;gap:10px !important;flex-wrap:nowrap !important;align-items:center !important;justify-content:flex-end !important;white-space:nowrap !important}
.footer-mini-contact .mini-btn{padding:9px 12px !important;font-size:13px !important;line-height:1.1 !important}
.footer-glass{animation:ftrFade .65s ease both}
.footer-infobar{animation:ftrFade .65s ease both;animation-delay:.05s}
@keyframes ftrFade{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}
.mini-btn{transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.mini-btn:hover{transform:translateY(-2px)}

@media (max-width:768px){
  .footer-inner{justify-content:space-between !important;text-align:left !important}
  .footer-mini-contact{justify-content:flex-end !important;width:auto !important}
  .footer-mini-contact .mini-btn{padding:8px 10px !important;font-size:12px !important}
}
@media (max-width:420px){
  .footer-mini-contact .mini-btn{padding:7px 9px !important;font-size:11px !important}
}

/* HERO: remove overlay completely, keep text readable via glass panel */
.hero-overlay{background:transparent !important}
.hero-content.container{color:rgba(7,19,33,.92) !important;background:rgba(255,255,255,.78);backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%);border:1px solid rgba(7,19,33,.10);border-radius:22px;box-shadow:0 20px 60px rgba(7,19,33,.14);padding:28px 28px !important;max-width:980px}
.hero-content h1,.hero-content h2{color:rgba(7,19,33,.96) !important}
.hero-content p{color:rgba(7,19,33,.72) !important;opacity:1 !important}
.hero .btn-secondary{color:rgba(7,19,33,.88) !important;border-color:rgba(7,19,33,.16) !important;background:rgba(255,255,255,.55) !important}

@keyframes headerRise{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.site-header .header-inner>*{animation:headerRise .55s ease both}
.site-header .header-inner>*:nth-child(1){animation-delay:.02s}.site-header .header-inner>*:nth-child(2){animation-delay:.06s}.site-header .header-inner>*:nth-child(3){animation-delay:.10s}.site-header .header-inner>*:nth-child(4){animation-delay:.14s}.site-header .header-inner>*:nth-child(5){animation-delay:.18s}
.site-header .header-inner a:hover{transform:translateY(-1px)}
@keyframes footerUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.site-footer .footer-inner>*{animation:footerUp .6s ease both}
.site-footer .footer-inner>*:nth-child(1){animation-delay:.04s}.site-footer .footer-inner>*:nth-child(2){animation-delay:.08s}
.floating-contact{animation:footerUp .6s ease both}


/* Reset button (Footer) */
.iper-reset-btn{
  font: inherit;
  font-weight: 700;
  letter-spacing: .02em;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.15);
  background: rgba(255,255,255,.85);
  cursor: pointer;
  transition: transform .18s ease, opacity .18s ease;
}
.iper-reset-btn:hover{ transform: translateY(-1px); }
.iper-reset-btn:active{ transform: translateY(0); opacity: .9; }
.iper-reset-btn.is-loading{ opacity: .7; cursor: wait; }



/* Unified Footer (merged floating + footer) */
.iper-unified-footer{
  height:76px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ffffff;
  border-top:1px solid rgba(0,0,0,.08);
}

.iper-footer-row{
  width:100%;
  max-width:1200px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 24px;
}

.iper-footer-actions{
  display:flex;
  gap:12px;
}

.iper-footer-btn{
  padding:10px 16px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  border:1px solid rgba(0,0,0,.15);
  background:#f5f5f5;
  transition:all .2s ease;
}

.iper-footer-btn:hover{
  transform:translateY(-2px);
}


/* Centered Header Layout */


header nav,
.header-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
}


/* Premium Symmetric Header (max symmetry) */
.iper-header--premium{
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.iper-header-wrap{
  height: 76px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

.iper-header-left,
.iper-header-right{
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.iper-header-left{ justify-content: flex-start; }
.iper-header-right{ justify-content: flex-end; }

.iper-header-link{
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .01em;
}

.iper-header-sep{
  opacity: .55;
  font-weight: 700;
}

.iper-header-center{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
}

.iper-brand{ line-height: 1; }
.iper-brand-text{
  text-decoration: none;
  font-weight: 900;
  letter-spacing: .18em;
  font-size: 18px;
}

.iper-nav{ display: flex; justify-content: center; }
.iper-menu{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: center;
}
.iper-menu a{
  text-decoration: none;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .04em;
  position: relative;
  padding: 6px 2px;
  transition: transform .18s ease, opacity .18s ease;
}
.iper-menu a::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 2px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .2s ease;
  background: currentColor;
  opacity: .9;
}
.iper-menu a:hover{ transform: translateY(-1px); }
.iper-menu a:hover::after{ transform: scaleX(1); }

/* Premium entrance animation */
@media (prefers-reduced-motion: no-preference){
  .iper-header--premium{
    animation: iperFadeDown .55s ease both;
  }
  .iper-header-left{ animation: iperSlideIn .65s ease .05s both; }
  .iper-header-center{ animation: iperFadeUp .65s ease .1s both; }
  .iper-header-right{ animation: iperSlideInR .65s ease .05s both; }
}
@keyframes iperFadeDown{
  from{ opacity:0; transform: translateY(-10px); }
  to{ opacity:1; transform: translateY(0); }
}
@keyframes iperFadeUp{
  from{ opacity:0; transform: translateY(8px); }
  to{ opacity:1; transform: translateY(0); }
}
@keyframes iperSlideIn{
  from{ opacity:0; transform: translateX(-10px); }
  to{ opacity:1; transform: translateX(0); }
}
@keyframes iperSlideInR{
  from{ opacity:0; transform: translateX(10px); }
  to{ opacity:1; transform: translateX(0); }
}

/* Responsive: keep symmetry but stack center if needed */
@media (max-width: 820px){
  .iper-header-wrap{
    grid-template-columns: 1fr;
    height: auto;
    padding: 14px 16px;
    row-gap: 10px;
    justify-items: center;
  }
  .iper-header-left,
  .iper-header-right{
    justify-content: center;
  }
}


/* Glass system (Header + Footer) */
:root{
  --iper-glass-bg: rgba(255,255,255,.78);
  --iper-glass-border: rgba(0,0,0,.08);
  --iper-glass-shadow: 0 10px 30px rgba(0,0,0,.08);
}

/* Header refinements */
.iper-header--premium{
  background: var(--iper-glass-bg);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--iper-glass-border);
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

.iper-header-wrap{
  max-width: 1240px;
}

/* Footer glass + symmetry (mirrors header) */

.iper-footer--glass{
  position: relative;
  bottom: auto;
  z-index: 1;
  background: var(--iper-glass-bg);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid var(--iper-glass-border);
  box-shadow: 0 -6px 18px rgba(0,0,0,.06);
}


.iper-footer-wrap{
  height: 76px;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

.iper-footer-left,
.iper-footer-right{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.iper-footer-left{ justify-content:flex-start; }
.iper-footer-right{ justify-content:flex-end; }

.iper-footer-center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}

.iper-footer-brand{
  font-weight: 900;
  letter-spacing: .18em;
  font-size: 14px;
  opacity: .9;
}

.iper-footer-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.14);
  background: rgba(255,255,255,.7);
  text-decoration:none;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .02em;
  transition: transform .18s ease, opacity .18s ease;
  cursor: pointer;
}

.iper-footer-btn:hover{ transform: translateY(-1px); }
.iper-footer-btn:active{ transform: translateY(0); opacity:.9; }

/* Ensure reset button matches */
.iper-reset-btn{
  background: rgba(255,255,255,.7);
}

/* Footer responsive */
@media (max-width: 820px){
  .iper-footer-wrap{
    grid-template-columns: 1fr;
    height: auto;
    padding: 14px 16px;
    row-gap: 10px;
    justify-items: center;
  }
  .iper-footer-left,
  .iper-footer-right{
    justify-content:center;
  }
  .iper-footer-center{
    flex-wrap: wrap;
  }
}

/* Shared premium micro-animations */
@media (prefers-reduced-motion: no-preference){
  
.iper-footer--glass{
  position: relative;
  bottom: auto;
  z-index: 1;
  background: var(--iper-glass-bg);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid var(--iper-glass-border);
  box-shadow: 0 -6px 18px rgba(0,0,0,.06);
}

  .iper-footer-left{ animation: iperSlideIn .65s ease .05s both; }
  .iper-footer-center{ animation: iperFadeUp .65s ease .1s both; }
  .iper-footer-right{ animation: iperSlideInR .65s ease .05s both; }
}

/* Symmetry stabilization */
.iper-header-left, .iper-header-right,
.iper-footer-left, .iper-footer-right{
  min-width: 220px;
}
@media (max-width: 820px){
  .iper-header-left, .iper-header-right,
  .iper-footer-left, .iper-footer-right{
    min-width: 0;
  }
}

/* Prevent sticky footer overlap */
body{ padding-bottom: 90px; }


/* Lock footer height and prevent scroll shift */
.iper-footer-wrap{
  height: 76px !important;
}

.iper-footer--glass,
.iper-footer-wrap,
.iper-footer-left,
.iper-footer-center,
.iper-footer-right{
  transform: none !important;
  animation: none !important;
}

/* Footer height reduced to 50px */
.iper-footer-wrap{
  height: 50px !important;
}

.iper-footer-btn{
  padding: 6px 12px !important;
  font-size: 13px !important;
}

body{
  padding-bottom: 60px !important;
}


/* One-row Premium Glass Header */
.iper-header--glass{
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

.iper-header-wrap--one-row{
  height: 76px;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.iper-header-col{
  display:flex;
  align-items:center;
  min-width: 0;
}

.iper-header-col--left{ flex: 0 0 auto; }
.iper-header-col--center{ flex: 1 1 auto; justify-content: center; }
.iper-header-col--right{ flex: 0 0 auto; justify-content: flex-end; gap: 10px; }

.iper-brand-text{
  text-decoration: none;
  font-weight: 900;
  letter-spacing: .18em;
  font-size: 18px;
  line-height: 1;
}

.iper-header-link{
  text-decoration: none;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .01em;
  white-space: nowrap;
}

.iper-header-sep{ opacity:.55; font-weight: 800; }

.iper-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap: 18px;
  align-items:center;
  justify-content:center;
  white-space: nowrap;
}
.iper-menu a{
  text-decoration:none;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .04em;
  position: relative;
  padding: 6px 2px;
  transition: transform .18s ease, opacity .18s ease;
}
.iper-menu a::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:2px;
  height:2px;
  transform: scaleX(0);
  transform-origin:center;
  transition: transform .2s ease;
  background: currentColor;
  opacity: .9;
}
.iper-menu a:hover{ transform: translateY(-1px); }
.iper-menu a:hover::after{ transform: scaleX(1); }

/* Premium entrance animations */
@media (prefers-reduced-motion: no-preference){
  .iper-header--one-row{ animation: iperFadeDown .55s ease both; }
  .iper-header-col--left{ animation: iperSlideIn .65s ease .05s both; }
  .iper-header-col--center{ animation: iperFadeUp .65s ease .08s both; }
  .iper-header-col--right{ animation: iperSlideInR .65s ease .05s both; }
}
@keyframes iperFadeDown{ from{opacity:0; transform:translateY(-10px);} to{opacity:1; transform:translateY(0);} }
@keyframes iperFadeUp{ from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);} }
@keyframes iperSlideIn{ from{opacity:0; transform:translateX(-10px);} to{opacity:1; transform:translateX(0);} }
@keyframes iperSlideInR{ from{opacity:0; transform:translateX(10px);} to{opacity:1; transform:translateX(0);} }

/* Keep one row as long as possible; compact on small screens */
@media (max-width: 920px){
  .iper-header-wrap--one-row{ padding: 0 16px; gap: 12px; }
  .iper-menu{ gap: 12px; }
  .iper-header-link{ font-size: 13px; }
}
@media (max-width: 740px){
  /* Mobile header: show language flags + contacts, stack cleanly */
  .iper-header-wrap--one-row{
    height: auto;
    padding: 10px 14px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }
  .iper-header-col--left,
  .iper-header-col--center,
  .iper-header-col--right{
    flex: 1 1 100%;
    justify-content: center;
  }
  .iper-header-col--right{
    display:flex;
    gap: 10px;
    flex-wrap: wrap;
  }
  .iper-lang-switch{
    margin-left: 0;
  }
  .iper-header-link{
    font-size: 13px;
  }
}


/* Footer: do not stretch on scroll (hard lock) */
.iper-footer--glass{
  position: fixed !important;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
}

.iper-footer-wrap{
  height: 50px !important;
  align-items: center !important;
}

.iper-footer-center{
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.iper-footer-btn,
.iper-reset-btn{
  white-space: nowrap !important;
}

.iper-footer-wrap,
.iper-footer-row{
  overflow: hidden;
}

/* Override any responsive rules that set height:auto */
@media (max-width: 820px){
  .iper-footer-wrap{
    height: 50px !important;
    grid-template-columns: 1fr auto 1fr !important;
    padding: 0 12px !important;
    row-gap: 0 !important;
  }
  .iper-footer-left,
  .iper-footer-right{
    display: none !important;
  }
  .iper-footer-center{
    justify-content: center !important;
  }
}


}

/* Pro look: polish */
html{ -webkit-text-size-adjust: 100%; }
body{ text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a:focus-visible, button:focus-visible{ outline: 2px solid rgba(0,0,0,.35); outline-offset: 2px; border-radius: 10px; }


/* Hero: overlay ON (no glass) */
.iper-hero{
  position: relative;
  overflow: hidden;
}
.iper-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.28); /* overlay without glass */
  pointer-events:none;
  z-index: 1;
}
/* Ensure hero content sits above overlay */
.iper-hero > *,
.iper-hero .container,
.iper-hero .wrap,
.iper-hero .content{
  position: relative;
  z-index: 2;
}

/* Keep readability subtle */
.iper-hero h1,
.iper-hero p,
.iper-hero a,
.iper-hero button{
  text-shadow: 0 6px 24px rgba(0,0,0,.38);
}


/* Footer fully centered */
.iper-footer-wrap{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:16px;
}

.iper-footer-left,
.iper-footer-right{
  display:none !important;
}

.iper-footer-center{
  justify-content:center !important;
  text-align:center !important;
}


/* Cookie button styling */
#iperCookieBtn{
  font-weight:800;
}



/* Footer bottom bar 8px */
.iper-footer-bottom{
  height: 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  background:#111;
  color:#fff;
  letter-spacing:.05em;
}



/* Ensure logo visible in header */
.iper-brand img{
  max-height: 40px;
  width: auto;
  display: block;
}

.custom-logo-link{
  display:flex;
  align-items:center;
}



/* Right side hero overlay */
.iper-hero{
  position: relative;
}

.iper-hero-overlay-right{
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  z-index: 5;
}

.iper-hero-overlay-box{
  background: rgba(0,0,0,.55);
  color: #fff;
  padding: 30px 40px;
  max-width: 360px;
  backdrop-filter: none;
}

.iper-hero-overlay-box h2{
  margin-bottom: 10px;
  font-size: 28px;
  letter-spacing: .05em;
}

.iper-hero-overlay-box p{
  margin: 6px 0;
  font-size: 16px;
}

/* Responsive */
@media (max-width: 900px){
  .iper-hero-overlay-right{
    right: 50%;
    transform: translate(50%, -50%);
  }
  .iper-hero-overlay-box{
    max-width: 90%;
    text-align: center;
  }
}



/* Smaller d.o.o. next to logo */
.iper-doo{
  font-size: 0.5em;
  font-weight: 600;
  vertical-align: middle;
  margin-left: 4px;
}



/* Footer copyright bar colors */
.iper-footer-bottom{
  background: #b9f6ca !important; /* light green */
  color: #0d47a1 !important; /* blue text */
}

/* Increase footer bottom bar height by 3px */
.iper-footer-bottom{
  height: 11px !important;
}



/* Luka Koper video - hide controls */
video::-webkit-media-controls {
  display: none !important;
}
video {
  pointer-events: none;
}


/* Pro polish: consistent media edges */
:root{
  --iper-radius: 18px;
}

/* Any media should align with container edges */
img, video{
  max-width: 100%;
  height: auto;
  display: block;
}

/* Common WP image outputs */
.wp-post-image,
.entry-content img,
.attachment img,
figure img,
.iper-media img,
.iper-media video,
.iper-hero-bg-video{
  border-radius: var(--iper-radius);
}

/* Ensure containers clip so edges match perfectly */
figure,
.iper-media,
.wp-block-image,
.entry-content figure,
.iper-card,
.iper-section-media,
.iper-hero{
  overflow: hidden;
  border-radius: var(--iper-radius);
}

/* Cover-style media where needed */
.iper-media img,
.iper-media video,
.iper-section-media img,
.iper-section-media video{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Avoid tiny radius on small screens */
@media (max-width: 768px){
  :root{ --iper-radius: 14px; }
}

/* Reveal animations (scroll) */
[data-iper-reveal]{
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .55s ease, transform .55s ease;
  will-change: opacity, transform;
}
.iper-reveal-in[data-iper-reveal]{
  opacity: 1;
  transform: translateY(0);
}
/* Stagger support */
[data-iper-reveal="1"]{ transition-delay: .05s; }
[data-iper-reveal="2"]{ transition-delay: .10s; }
[data-iper-reveal="3"]{ transition-delay: .15s; }
[data-iper-reveal="4"]{ transition-delay: .20s; }

/* Hover micro-interaction */
@media (hover:hover){
  .iper-card:hover,
  .wp-block-image:hover,
  figure:hover{
    transform: translateY(-2px);
    transition: transform .2s ease;
  }
}

@media (prefers-reduced-motion: reduce){
  [data-iper-reveal]{ opacity: 1 !important; transform: none !important; transition: none !important; }
}


/* Mobile: show map */
@media (max-width: 768px){
  .iper-map,
  .map,
  .google-map,
  #map,
  .wp-block-embed iframe,
  iframe[src*="google.com/maps"],
  iframe[src*="maps.google"]{
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 320px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}




/* Shrink d.o.o. and right overlay to 50% */
.iper-doo{
  font-size: 0.5em !important;
}





/* Overlay professional color styling */
.iper-hero-overlay-box h2{
  color: #ffffff; /* company name white */
}

.iper-hero-overlay-box p:first-of-type{
  color: #b9f6ca; /* light green subtitle */
  font-weight: 500;
}

.iper-hero-overlay-box p{
  color: #e3f2fd; /* soft light blue for contact */
}

.iper-hero-overlay-box strong{
  color: #64b5f6; /* accent blue for T: E: */
}



/* Reduce header height by 50% */
header,
.site-header,
.iper-



/* Move d.o.o. closer to IPER */
.iper-doo{
  margin-left: 1px !important;
  letter-spacing: 0.02em;
}



/* Glass header styling with corporate colors */
header,
.site-header,
.iper-header{
  background: rgba(185, 246, 202, 0.35) !important; /* light green glass */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(13, 71, 161, 0.25);
}

/* Header text colors */
header a,
.site-header a,
.iper-header a,
header,
.site-header,
.iper-header{
  color: #0d47a1 !important; /* corporate blue */
}

header a:hover,
.site-header a:hover,
.iper-header a:hover{
  color: #1b5e20 !important; /* darker green hover */
}



/* Glass footer styling with corporate colors */
footer,
.site-footer,
.iper-footer{
  background: rgba(185, 246, 202, 0.35) !important; /* light green glass */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid rgba(13, 71, 161, 0.25);
}

/* Footer text colors */
footer,
.site-footer,
.iper-footer,
footer a,
.site-footer a,
.iper-footer a{
  color: #0d47a1 !important; /* corporate blue */
}

footer a:hover,
.site-footer a:hover,
.iper-footer a:hover{
  color: #1b5e20 !important; /* darker green hover */
}



/* Make section images reach card/frame edges (cover fill) */
.iper-card .wp-block-image,
.iper-card figure,
.iper-section-media,
.iper-media,
.entry-content .wp-block-image,
.entry-content figure{
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.iper-card .wp-block-image img,
.iper-card figure img,
.entry-content .wp-block-image img,
.entry-content figure img,
.iper-section-media img,
.iper-media img{
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

/* If images sit inside padded card body, pull them to edges */
.iper-card .wp-block-image,
.iper-card figure{
  overflow: hidden;
}

/* Common WP pattern: image inside a div with padding */
.iper-card .wp-block-image,
.iper-card figure{
  border-radius: var(--iper-radius);
}

/* Optional: ensure any card/media wrapper clips to radius */
.iper-card,
.iper-section-media,
.iper-media{
  overflow: hidden;
}



/* Luka Koper logo link */
.iper-luka-link{
  margin-top: 15px;
}
.iper-luka-logo{
  max-width: 180px;
  height: auto;
  display: block;
}


/* Footer button animations (pro micro-interactions) */
.iper-footer-btn,
.iper-reset-btn,
footer .button,
footer button,
footer a.button{
  position: relative;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease, opacity .18s ease;
  will-change: transform, box-shadow;
}

@media (hover:hover){
  .iper-footer-btn:hover,
  .iper-reset-btn:hover,
  footer button:hover,
  footer a.button:hover{
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(13,71,161,.20);
  }
}

.iper-footer-btn:active,
.iper-reset-btn:active,
footer button:active,
footer a.button:active{
  transform: translateY(0);
  box-shadow: 0 6px 14px rgba(13,71,161,.18);
  opacity: .92;
}

/* Focus ring for accessibility */
.iper-footer-btn:focus-visible,
.iper-reset-btn:focus-visible,
footer button:focus-visible,
footer a.button:focus-visible{
  outline: 2px solid rgba(13,71,161,.55);
  outline-offset: 2px;
  border-radius: 12px;
}

/* Subtle shimmer sweep */
.iper-footer-btn::after,
.iper-reset-btn::after,
footer button::after,
footer a.button::after{
  content: "";
  position: absolute;
  top: -50%;
  left: -60%;
  width: 40%;
  height: 200%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
  opacity: 0;
  pointer-events: none;
}

@media (hover:hover){
  .iper-footer-btn:hover::after,
  .iper-reset-btn:hover::after,
  footer button:hover::after,
  footer a.button:hover::after{
    opacity: 1;
    animation: iperShimmer .75s ease;
  }
}

@keyframes iperShimmer{
  0%{ left:-60%; opacity:0; }
  25%{ opacity: .9; }
  100%{ left:140%; opacity:0; }
}

@media (prefers-reduced-motion: reduce){
  .iper-footer-btn,
  .iper-reset-btn,
  footer button,
  footer a.button{
    transition: none !important;
  }
  .iper-footer-btn::after,
  .iper-reset-btn::after,
  footer button::after,
  footer a.button::after{
    display:none !important;
  }
}




/* Luka Koper VBS logos */
.iper-luka-logos{
  margin-top: 12px;
}

.iper-luka-link{
  display: inline-flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
}

.iper-luka-logo{
  display: block;
  height: 42px;
  width: auto;
  max-width: 180px;
}

@media (max-width: 768px){
  .iper-luka-link{ gap: 10px; }
  .iper-luka-logo{ height: 34px; }
}


/* Light blue gradients (replace white backgrounds) + subtle animated raster */
:root{
  --iper-blue-0: #e9f4ff;
  --iper-blue-1: #d7ecff;
  --iper-blue-2: #cbe4ff;
  --iper-blue-3: #bfe0ff;
  --iper-raster-a: rgba(13,71,161,.06);
  --iper-raster-b: rgba(46,125,50,.05);
}

/* Page background */
body{
  background:
    radial-gradient(1200px 600px at 20% 10%, var(--iper-blue-1), transparent 60%),
    radial-gradient(900px 500px at 80% 20%, var(--iper-blue-2), transparent 55%),
    radial-gradient(1100px 700px at 50% 95%, var(--iper-blue-0), transparent 60%),
    linear-gradient(135deg, var(--iper-blue-0), var(--iper-blue-2));
  background-attachment: fixed;
}

/* Subtle animated raster overlay (very light) */
body::before{
  content:"";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image:
    linear-gradient(0deg, var(--iper-raster-a) 1px, transparent 1px),
    linear-gradient(90deg, var(--iper-raster-b) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .35;
  transform: translateZ(0);
  animation: iperRasterDrift 18s linear infinite;
}

@keyframes iperRasterDrift{
  0%{ background-position: 0 0, 0 0; }
  100%{ background-position: 180px 120px, 120px 180px; }
}

/* Make main containers sit above raster */
#page, #content, main, header, footer{
  position: relative;
  z-index: 1;
}

/* Replace common white panels with light-blue glassy gradients */
.iper-card,
.wp-block-group,
.wp-block-columns,
.wp-block-column,
.entry-content .wp-block-cover,
.entry-content .wp-block-group,
.entry-content .wp-block-media-text,
.iper-section,
.iper-section-media{
  background:
    linear-gradient(135deg, rgba(233,244,255,.75), rgba(191,224,255,.55)) !important;
}

/* If there are explicit white backgrounds, soften them */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background-color:#fff"],
[style*="background-color: #fff"],
[style*="background:white"],
[style*="background: white"],
[style*="background-color:white"],
[style*="background-color: white"]{
  background:
    linear-gradient(135deg, rgba(233,244,255,.85), rgba(203,228,255,.65)) !important;
}

/* Animated gradient for hero/section highlights (subtle) */
.iper-hero,
.iper-card{
  background-size: 180% 180% !important;
  animation: iperBlueShift 14s ease-in-out infinite;
}

@keyframes iperBlueShift{
  0%{ background-position: 0% 50%; }
  50%{ background-position: 100% 50%; }
  100%{ background-position: 0% 50%; }
}

/* Animated "Call" button (footer + header tel link) */
a[href^="tel:"].iper-footer-btn,
a[href^="tel:"].iper-header-link{
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(46,125,50,.25);
  box-shadow: 0 10px 22px rgba(46,125,50,.10);
  animation: iperCallPulse 1.8s ease-in-out infinite;
}

@keyframes iperCallPulse{
  0%, 100%{ transform: translateY(0); box-shadow: 0 10px 22px rgba(46,125,50,.10); }
  50%{ transform: translateY(-1px); box-shadow: 0 16px 34px rgba(46,125,50,.18); }
}

a[href^="tel:"].iper-footer-btn::before,
a[href^="tel:"].iper-header-link::before{
  content:"";
  position:absolute;
  inset:-40%;
  background: radial-gradient(circle at 30% 30%, rgba(185,246,202,.45), transparent 55%);
  opacity:.9;
  transform: translateX(-35%);
  animation: iperCallGlow 2.4s ease-in-out infinite;
  pointer-events:none;
}

@keyframes iperCallGlow{
  0%{ transform: translateX(-35%) scale(1); opacity:.55; }
  50%{ transform: translateX(10%) scale(1.05); opacity:.85; }
  100%{ transform: translateX(-35%) scale(1); opacity:.55; }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  body::before{ animation: none !important; }
  .iper-hero, .iper-card{ animation: none !important; }
  a[href^="tel:"].iper-footer-btn,
  a[href^="tel:"].iper-header-link{ animation: none !important; }
  a[href^="tel:"].iper-footer-btn::before,
  a[href^="tel:"].iper-header-link::before{ animation: none !important; }
}


/* Header language switcher */
.iper-lang-switch{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 10px;
}

.iper-lang-btn{
  text-decoration: none;

  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(13, 71, 161, 0.25);
  background: rgba(255,255,255,0.18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

@media (hover:hover){
  .iper-lang-btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(13,71,161,.18);
    background: rgba(255,255,255,0.28);
  }
}

.iper-lang-btn:active{
  transform: translateY(0);
  box-shadow: 0 6px 14px rgba(13,71,161,.14);
}

.iper-lang-btn:focus-visible{
  outline: 2px solid rgba(13,71,161,.55);
  outline-offset: 2px;
}


/* Flags inside language buttons */
.iper-lang-btn .iper-flag{
  font-size: 18px;
  transform: translateY(0.5px);
}
.iper-lang-btn.is-active{
  border-color: rgba(46,125,50,.55);
  box-shadow: 0 10px 22px rgba(46,125,50,.18);
}


@media (max-width: 768px){
  .iper-footer-lang{
    margin-left: 0;
    margin-top: 8px;
    justify-content: center;
    width: 100%;
  }
}


/* Hide Google Translate UI but keep it functional */
.iper-gt-hidden{
  position: absolute !important;
  left: -9999px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

/* Remove top translate bar spacing */
body{
  top: 0 !important;
}
.goog-te-banner-frame.skiptranslate,
.goog-te-gadget,
.goog-te-balloon-frame{
  display: none !important;
}
.skiptranslate{
  display:none !important;
}


/* Prevent service text overflow (all languages) */
.service-box p{
  font-weight: 400;
  font-size: 15px;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}
.service-box h3{
  overflow-wrap: anywhere;
  word-break: break-word;
}

.services .service-box strong{ font-weight: 600; }


@media (max-width: 740px){
  .service-grid{ grid-template-columns: 1fr; }
  .service-box{ padding: 20px; }
}


/* Service cards: ensure text wraps and never clips */
.service-box{
  overflow: visible;
}
.service-box p{
  white-space: normal !important;
  text-overflow: unset !important;
  overflow: visible !important;
}

.service-grid, .services .container{ overflow: visible; }


/* About section: ensure text wraps and never clips */
.about,
.about-grid,
.about-text{
  overflow: visible;
}
.about-text h2,
.about-text p,
.about-text li{
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
  white-space: normal !important;
}
.about-text p strong{
  font-weight: 600;
}


/* === About section professional alignment fix === */
.about-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
}

.about-text{
  display:flex;
  flex-direction: column;
  justify-content: center;
}

.about-text h2{
  margin-bottom: 20px;
}

.about-text p{
  margin-bottom: 18px;
}

.about-media{
  display:flex;
  align-items: center;
  justify-content: center;
}

.about-media img{
  height: 100%;
  max-height: 480px;
  object-fit: cover;
}

/* Mobile alignment */
@media (max-width: 900px){
  .about-grid{
    grid-template-columns: 1fr;
  }
  .about-media{
    order:-1;
  }
}


/* === About section layout correction (left aligned text, image right) === */
.about-grid{
  grid-template-columns: 1.1fr 0.9fr;
  align-items: center;
}

.about-text{
  text-align: left;
}

.about-text h2{
  text-align: left;
  font-weight: 700;
}

.about-text p,
.about-text li{
  text-align: left;
  font-weight: 400 !important;
}

.about-text strong{
  font-weight: 400 !important;
}

.about-media{
  order: 2;
}

.about-text{
  order: 1;
}

@media (max-width: 900px){
  .about-media{
    order: 2;
  }
}


/* === Fixed Header (Sticky) === */
.iper-header{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}

body{
  padding-top: 90px; /* adjust if header height changes */
}

@media (max-width: 900px){
  body{
    padding-top: 110px;
  }
}


/* === About section (only): full-width text + centered image below === */
.about .about-grid{
  grid-template-columns: 1fr !important;
  gap: 28px !important;
  align-items: start !important;
}

.about .about-text{
  width: 100%;
  max-width: none;
  text-align: left !important;
}

.about .about-text h2,
.about .about-text p,
.about .about-text li{
  text-align: left !important;
}

.about .about-media{
  justify-content: center !important;
  order: 2 !important;
}

.about .about-media img{
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  display: block;
}


/* === Header sizing + prevent jump === */
.iper-header{ transform: none !important; }
.iper-header-wrap--one-row{
  min-height: 56px;
  height: 56px;
  padding: 6px 14px;
}
body{ padding-top: 70px; }

@media (max-width: 900px){
  .iper-header-wrap--one-row{
    min-height: 64px;
    height: auto;
    padding: 10px 14px;
  }
  body{ padding-top: 92px; }
}


/* === Header vertical offset === */
.iper-header-wrap--one-row{
  padding-top: calc(6px + 7px) !important;
  padding-bottom: 6px !important;
}



/* === Header layout order === */
.iper-header-col--center{
  order:2;
}
.iper-header-col--right{
  order:3;
  display:flex;
  align-items:center;
  gap:14px;
}
.iper-lang-switch{
  margin-left:12px;
  display:flex;
  gap:10px;
}



/* === Top spacing above fixed header (5px gap) === */
.iper-header{
  top: 5px !important;
}

body{
  padding-top: calc(70px + 5px) !important;
}

@media (max-width: 900px){
  body{
    padding-top: calc(92px + 5px) !important;
  }
}

/* === Contact section: remove excessive bottom empty space === */
.contact{
  padding-bottom: 24px !important;
  margin-bottom: 0 !important;
  min-height: auto !important;
}
main, .site-main{
  padding-bottom: 0 !important;
}


/* === Header: content +5px down and height -5px === */
.iper-header-wrap--one-row{
  min-height: 51px !important;
  height: 51px !important;
  padding-top: 11px !important;
  padding-bottom: 4px !important;
}

body{
  padding-top: calc(65px + 5px) !important;
}

@media (max-width: 900px){
  .iper-header-wrap--one-row{
    min-height: 60px !important;
    height: auto !important;
    padding-top: 12px !important;
    padding-bottom: 8px !important;
  }
  body{
    padding-top: calc(88px + 5px) !important;
  }
}


/* Ensure language flags always visible */
.iper-lang-switch{ display:flex !important; }
.iper-header-col--right{ display:flex !important; }


/* === Remove vertical divider line inside footer buttons === */
.iper-footer a,
.iper-footer .btn,
.iper-footer button{
  border-right: none !important;
  box-shadow: none !important;
}

.iper-footer a::before,
.iper-footer a::after{
  content: none !important;
}

/* Ensure call pulse does not create inner vertical artifact */
.iper-footer a[href^="tel"]::before{
  display:none !important;
}

/* === Pulsing Border ONLY for Call Button (strong yellow emphasis) === */
.iper-footer a[href^="tel"],
.iper-footer .btn-call{
  position: relative;
  overflow: visible;
}

.iper-footer a[href^="tel"]::after,
.iper-footer .btn-call::after{
  content: "";
  position: absolute;
  inset: -5px;
  border-radius: 999px;
  border: 2px solid rgba(255,214,0,0.95); /* yellow default */
  box-shadow: 0 0 0 rgba(255,214,0,0.0);
  animation: iperCallPulse 1.35s infinite ease-in-out;
  pointer-events: none;
}

@keyframes iperCallPulse{
  0%{
    opacity: 0.95;
    transform: scale(1);
    border-color: rgba(255,214,0,0.95);
    box-shadow: 0 0 0 rgba(255,214,0,0.0);
  }
  50%{
    opacity: 0.65;
    transform: scale(1.12);
    border-color: rgba(255,214,0,1);
    box-shadow: 0 0 22px rgba(255,214,0,0.55);
  }
  100%{
    opacity: 0.95;
    transform: scale(1);
    border-color: rgba(255,214,0,0.95);
    box-shadow: 0 0 0 rgba(255,214,0,0.0);
  }
}

.iper-footer a[href^="tel"]:hover::after,
.iper-footer .btn-call:hover::after{
  animation: none;
  opacity: 0;
}


/* === Header flags: always visible and aligned === */
.iper-header-col--right{
  display:flex !important;
  align-items:center;
  justify-content:flex-end;
  flex-wrap: nowrap;
  gap: 12px;
}

.iper-lang-switch{
  display:flex !important;
  align-items:center;
  gap: 10px;
  flex-wrap: nowrap;
  visibility: visible !important;
  opacity: 1 !important;
}

.iper-lang-btn{
  width: 34px;
  height: 34px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.iper-flag{
  font-size: 18px;
  line-height: 1;
}

/* Mobile: keep flags visible, allow wrap only in right column if needed */
@media (max-width: 900px){
  .iper-header-col--right{
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }
}



/* === MOBILE: force header into single row === */
@media (max-width: 900px){

  .iper-header-wrap--one-row{
    display:flex !important;
    flex-wrap: nowrap !important;
    align-items:center !important;
    justify-content: space-between !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .iper-header-col{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
  }

  .iper-header-col--left{
    flex:0 0 auto !important;
  }

  .iper-header-col--center{
    flex:0 0 auto !important;
  }

  .iper-header-col--right{
    flex:0 0 auto !important;
    flex-wrap: nowrap !important;
    gap:6px !important;
  }

  .iper-logo{
    font-size:18px !important;
  }

  .iper-header a{
    font-size:13px !important;
    white-space: nowrap !important;
  }

  .iper-lang-btn{
    width:28px !important;
    height:28px !important;
  }

  .iper-flag{
    font-size:15px !important;
  }
}



/* === Remove box around phone in header === */
.iper-header a[href^="tel"]{
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.iper-header a[href^="tel"]:hover{
  background: none !important;
}


/* === Clean email styling in header === */
.iper-header a[href^="mailto"]{
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}



/* === Hero truck image: fit to width (less zoom) === */
.hero{
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
}
@media (max-width: 900px){
  .hero{
    background-size: cover !important;
    background-position: center !important;
  }
}




/* === Footer: Call button highlight (yellow) === */
.iper-footer a[href^="tel"],
.iper-footer .btn-call{
  background: rgba(255,214,0,0.95) !important;
  color: #0b3d91 !important;
  border: 1px solid rgba(255,214,0,0.65) !important;
}

.iper-footer a[href^="tel"]:hover,
.iper-footer .btn-call:hover{
  background: rgba(255,214,0,1) !important;
}

/* Yellow pulse ring (strong) */
.iper-footer a[href^="tel"]::after,
.iper-footer .btn-call::after{
  inset: -6px !important;
  border-color: rgba(255,214,0,1) !important;
  box-shadow: 0 0 26px rgba(255,214,0,0.6) !important;
}




/* === Language flags visibility hardening === */
.iper-lang-switch{ display:flex !important; opacity:1 !important; visibility:visible !important; }
.iper-lang-btn{ display:flex !important; }




/* Header phone/email: no pill/box, keep inline */
.iper-header a[href^="tel"], .iper-header a[href^="mailto"]{
  background:none !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}



/* === PRO Language Switcher === */
.iper-lang{
  position: relative;
  display: inline-flex;
  align-items: center;
}

.iper-lang-switch--desktop{
  display: inline-flex;
  gap: 10px;
  align-items: center;
}

.iper-lang-toggle{
  display:none;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  cursor: pointer;
}

.iper-lang-menu{
  display:none;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 120px;
  padding: 8px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.75);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.12);
  z-index: 10000;
}

.iper-lang.is-open .iper-lang-menu{ display:block; }

.iper-lang-item{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  text-decoration:none;
}

.iper-lang-item:hover{
  background: rgba(0,0,0,0.06);
}

.iper-lang-btn{
  width: 34px;
  height: 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.35);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.iper-flag{ font-size: 18px; line-height:1; }

/* Mobile: keep header single row; use dropdown instead of 4 flags */
@media (max-width: 900px){
  .iper-lang-switch--desktop{ display:none !important; }
  .iper-lang-toggle{ display:inline-flex; align-items:center; justify-content:center; }
  .iper-lang-switch--mobile{ display:block; }
}



/* === PRO Mobile Header One Row (tight) === */
@media (max-width: 900px){
  .iper-header-wrap--one-row{
    flex-wrap: nowrap !important;
    gap: 8px;
  }
  .iper-header-col--right{
    flex-wrap: nowrap !important;
    gap: 8px !important;
  }
  .iper-header a{ font-size: 12px !important; }
}




/* === Header PRO hardening (ensure flags visible on desktop) === */
.iper-header-col--right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap: 14px;
  flex-wrap: nowrap;
}
.iper-header-link{ white-space: nowrap; }




/* === Mobile: flag buttons in header (NO dropdown) === */
@media (max-width: 900px){
  .iper-lang-switch--desktop{
    display: inline-flex !important;
    align-items: center;
    gap: 6px !important;
  }
  .iper-lang-toggle,
  .iper-lang-menu,
  .iper-lang-switch--mobile{
    display: none !important;
  }
  .iper-lang-btn{
    width: 28px !important;
    height: 28px !important;
    padding: 0 !important;
  }
  .iper-flag{ font-size: 15px !important; line-height:1; }

  /* Single-row header */
  .iper-header-wrap--one-row{
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  .iper-header-col--right{
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .iper-header-link{
    font-size: 12px !important;
    white-space: nowrap !important;
  }
}




/* Ensure flags visible */
.iper-lang-switch--desktop{ display:flex !important; }
.iper-lang-btn{ display:flex !important; }




/* === MOBILE ULTRA COMPACT HEADER === */
@media (max-width: 900px){

  .iper-header-wrap--one-row{
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    gap: 6px !important;
  }

  .iper-brand-text{
    font-size: 16px !important;
  }

  .iper-doo{
    font-size: 10px !important;
  }

  .iper-header-link{
    font-size: 11px !important;
  }

  .iper-header-col--right{
    gap: 6px !important;
  }

  .iper-lang-btn{
    width: 24px !important;
    height: 24px !important;
  }

  .iper-flag{
    font-size: 13px !important;
  }

  /* hide center nav on small screens to free space */
  .iper-header-col--center{
    display: none !important;
  }

}




/* === Overlay icon animation === */
@keyframes iperPulse {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.15); opacity: 0.8; }
  100% { transform: scale(1); opacity: 1; }
}

.overlay-contact span:first-child {
  display:inline-block;
  animation: iperPulse 2s infinite ease-in-out;
}





.iper-lang-btn{
  width: 36px !important;
  height: 36px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}



/* === Floating flags FIX (visible & right edge) === */
.iper-lang-switch--desktop{
  position: fixed !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 8px 6px !important;
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(6px);
  border-radius: 12px 0 0 12px;
  box-shadow: 0 8px 25px rgba(0,0,0,0.15);
  z-index: 99999 !important;
}

.iper-lang-btn{
  width: 40px !important;
  height: 40px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#ffffff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.iper-lang-btn:hover{
  transform: scale(1.15);
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
}

.iper-flag{
  font-size: 20px !important;
  line-height:1;
}




/* === Floating flags aligned to header bottom === */
.iper-lang-switch--desktop{
  right: 0 !important;
  top: var(--iper-header-height, 70px) !important; /* align with bottom of header */
  transform: none !important;
  border-radius: 12px 0 0 12px !important;
}




/* === Flags: flush to right edge, no container overlay/background === */
.iper-lang-switch--desktop{
  right: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
}

/* small breathing room from edge while still flush */
.iper-lang-switch--desktop .iper-lang-btn{
  margin-right: 6px;
}

@media (min-width: 901px){
  .iper-lang-switch--desktop .iper-lang-btn{
    margin-right: 8px;
  }
}




/* === Flags aligned to right edge of main content container === */
/* assuming max content width 1200px centered */
@media (min-width: 1200px){
  .iper-lang-switch--desktop{
    right: calc((100vw - 1200px) / 2) !important;
  }
}

@media (max-width: 1199px){
  .iper-lang-switch--desktop{
    right: 15px !important; /* fallback spacing on smaller screens */
  }
}




/* === Precise alignment with first section inner edge === */
@media (min-width: 1200px){
  .iper-lang-switch--desktop{
    right: calc((100vw - 1200px) / 2 + 10px) !important;
  }
}




/* === Flags PRO: transparent overlay, keep border; align by hero width - flag width === */
:root{
  --iper-hero-max: 1200px;
  --iper-flag-size: 40px;
}

/* position: align to hero section right edge minus flag width */
@media (min-width: 1200px){
  .iper-lang-switch--desktop{
    
    right: auto !important;
  }
}

/* fallback on smaller screens */
@media (max-width: 1199px){
  .iper-lang-switch--desktop{
    right: 10px !important;
    left: auto !important;
  }
}

/* button look: transparent overlay + border retained */
.iper-lang-btn{
  background: rgba(255,255,255,0.18) !important;
  border: 1px solid rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}




/* === Flags positioned using viewport width minus flag width === */
:root{
  --iper-flag-size: 40px;
}

.iper-lang-switch--desktop{
  position: fixed !important;
  
  right: auto !important;
}

.iper-lang-btn{
  width: var(--iper-flag-size) !important;
  height: var(--iper-flag-size) !important;
}




/* === FORCE flags visible and flush right === */
.iper-lang-switch--desktop{
  position: fixed !important;
  right: 0 !important;
  left: auto !important;
  top: 120px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  z-index: 99999 !important;
}

.iper-lang-btn{
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.iper-flag{
  font-size: 20px !important;
}




/* === HEADER 3 COLUMN LAYOUT === */
.iper-header-wrap{
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  align-items: center !important;
}

.iper-header-col--left{
  justify-self: start !important;
}

.iper-header-col--center{
  justify-self: center !important;
}

.iper-header-col--right{
  justify-self: end !important;
}




/* === HEADER PRECISE ALIGNMENT FIX === */
.iper-header-wrap{
  display: flex !important;
  position: relative;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

/* Logo hard left */
.iper-header-col--left{
  position: relative;
  left: 0;
}

/* Email hard right */
.iper-header-col--right{
  position: relative;
  right: 0;
}

/* Phone perfectly centered regardless of side widths */
.iper-header-col--center{
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

/* ===== IPER theme consolidated layout overrides (v175) ===== */

/* Compact header with equal logo spacing */
header{
  height:60px;
  display:flex;
  align-items:center;
}
.header-logo{
  margin-left:5px;
}
.header-logo img{
  height:50px;
  width:auto;
  display:block;
}

/* Flags responsive positioning */
@media (min-width: 992px){
  }
@media (max-width: 991px){
  }

/* Port of Koper cards */
.port-links{
  display:flex;
  gap:12px;
  margin:14px 0 18px;
  flex-wrap:wrap;
}
.port-linkcard{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.10);
  text-decoration:none;
}
.port-linkcard img{
  height:28px;
  width:auto;
  display:block;
}
.port-linkcard span{
  font-weight:600;
  font-size:14px;
  line-height:1.1;
}
@media (max-width: 640px){
  .port-linkcard{ width:100%; justify-content:flex-start; }
}

/* v181 Force-remove IPER button/link in header + fixed brand logo */
.iper-brand-link{display:flex; align-items:center;}
.iper-brand-logo{height:50px; width:auto; display:block;}
/* If any menu item renders as a button with IPER text, hide it */
.iper-header a.btn, .iper-header a.btn-primary, .iper-header button{}
.iper-header .iper-menu a:empty{display:none !important;}
.iper-header a[href="#"]:empty{display:none !important;}


/* v185 Hero background video */
.hero-video{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.hero-overlay,
.hero-content{
  position:relative;
  z-index:2;
}


/* v186 Hero video fix */
.hero.iper-hero{
  position: relative;
  overflow: hidden;
}
.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.iper-hero-overlay-right,
.iper-hero-overlay-box{
  position: relative;
  z-index: 2;
}


/* v190 Header contact stacked corporate style */
.header-contact,
.iper-header-contact {
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
}

.header-contact a[href^="tel"],
.iper-header-contact a[href^="tel"]{
  font-weight:700;
  font-size:16px;
}

.header-contact a[href^="mailto"],
.iper-header-contact a[href^="mailto"]{
  font-size:13px;
  opacity:0.85;
}

/* v190 Center hero overlay */
.hero.iper-hero{
  display:flex;
  align-items:center;
  justify-content:center;
}

.iper-hero-overlay-right{
  width:100%;
  display:flex;
  justify-content:center;
}

.iper-hero-overlay-box{
  text-align:center;
}


/* v191 Larger overlay positioned 50px below header */
.iper-hero-overlay-box{
  transform: scale(1.3);
  margin-top: 50px;
}

@media (max-width: 768px){
  .iper-hero-overlay-box{
    transform: scale(1.15);
    margin-top: 40px;
  }
}


/* v192 Hero section always follows MP4 native width */
.hero.iper-hero{
  position:relative;
  width:100%;
  height:auto;
  aspect-ratio:16/9; /* fallback ratio */
  overflow:hidden;
}

.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Remove scaling from overlay so it adapts naturally */
.iper-hero-overlay-box{
  transform:none !important;
}


/* v193 Restore original flag positioning */
.header-flags,
.lang-flags,
.flags{
  transform:none !important;
  margin:0;
}


/* v194 Translated map title */
.contact-map-title{
  margin: 0 0 10px 0;
  font-size: 18px;
  font-weight: 700;
}


/* v195 Mobile header: phone above email, right-aligned, vertically centered */
@media (max-width: 768px){
  .iper-header .iper-header-col--right{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:center;
    gap:4px;
  }
  .iper-header .iper-header-link--phone,
  .iper-header .iper-header-link--email{
    display:block;
    text-align:right;
    line-height:1.15;
    margin:0;
    padding:0;
  }
}


/* v198 Hero overlay position + transparency */
.iper-hero-overlay-right{
  position:relative;
  top:30px;
}

.iper-hero-overlay-box{
  background: rgba(0, 0, 0, 0.45) !important; /* more transparent */
  backdrop-filter: blur(4px);
}

/* Ensure spacing from header */
.hero.iper-hero{
  padding-top:30px;
}


.hero-contact-line {
    margin: 6px 0;
    font-weight: 600;
}
.hero-contact-line a {
    color: inherit;
    text-decoration: none;
}
.hero-contact-line a:hover {
    text-decoration: underline;
}


/* Hero overlay auto-hide */
#iperHeroOverlay {
    opacity: 1;
}


/* v10 Overlay position adjustment */
.iper-hero-overlay-right {
    position: absolute;
    top: 80px !important;
}


/* Center hero overlay horizontally */
.iper-hero-overlay-right {
    position: absolute;
    top: 80px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    right: auto !important;
}


/* Hero: remove top gap to video + square corners */
.iper-hero{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.iper-hero video,
.iper-hero .hero-video{
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-radius: 0 !important;
  display: block !important;
}

/* If container applies rounding/clipping */
.iper-hero,
.iper-hero .hero-media,
.iper-hero .hero-media-wrap{
  border-radius: 0 !important;
}



/* Force hero video fully up (shift upward) */
body {
    padding-top: 0 !important;
}

.iper-hero {
    margin-top: -64px !important; /* pull up under header */
    padding-top: 0 !important;
}

.iper-hero video,
.iper-hero .hero-video {
    margin-top: 0 !important;
    display: block !important;
}



/* Mobile: add gap above hero so video is visible (avoid hiding under header) */
@media (max-width: 768px){
  body{ padding-top: 64px !important; }
  .iper-hero{ margin-top: 0 !important; }
}


/* Make hero overlay more transparent */
.iper-hero::before,
.iper-hero-overlay,
.hero-overlay {
    background: rgba(0,0,0,0.25) !important; /* lighter overlay */
}



/* Move flags higher (closer to header) */
.iper-lang-switch{
    top: 4px !important;
}

@media (max-width:768px){
    .iper-lang-switch{
        top: 4px !important;
    }
}



/* Move flags 40px down */
.iper-lang-switch{
    top: 40px !important;
}

/* Reduce spacing between flags by ~30% */
.iper-lang-switch{
    gap: 5px !important; /* reduced spacing */
}



/* Content protection (best-effort; cannot block screenshots) */
img, video {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}


/* Further reduce gap between sections */
section,
.iper-section,
.services-section,
.fleet-section,
.about-section,
.contact-section {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

section + section {
    margin-top: 6px !important;
}



/* Footer home button: light red + pulsing outline waves */
@keyframes iperOutlinePulse {
  0%   { box-shadow: 0 0 0 0 rgba(255, 90, 90, 0.55), 0 0 0 0 rgba(255, 90, 90, 0.35); }
  60%  { box-shadow: 0 0 0 10px rgba(255, 90, 90, 0.0), 0 0 0 18px rgba(255, 90, 90, 0.0); }
  100% { box-shadow: 0 0 0 0 rgba(255, 90, 90, 0.0), 0 0 0 0 rgba(255, 90, 90, 0.0); }
}

.iper-footer-home-btn{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px !important;
  border-radius: 8px !important;
  background: #ff6b6b !important; /* light red */
  color: #0b0b0b !important;
  text-decoration: none !important;
  font-weight: 700;
  border: 1px solid rgba(255,255,255,0.25) !important;
  animation: iperOutlinePulse 1.6s ease-in-out infinite;
}

/* stronger glow on hover */
.iper-footer-home-btn:hover{
  background: #ff7a7a !important;
}

/* Keep other footer links untouched */


/* Disable all animations and effects for footer buttons */
footer .iper-footer-home-btn,
footer a,
footer button {
    animation: none !important;
    transition: none !important;
    box-shadow: none !important;
}

footer .iper-footer-home-btn:hover,
footer a:hover,
footer button:hover {
    animation: none !important;
    transition: none !important;
    box-shadow: none !important;
}

