/*
 * Prigušena šumsko-petrol zelena paleta.
 * Primetno je zelenija od prethodne verzije, ali ostaje neutralna,
 * nisko zasićena i pogodna za duže gledanje.
 * Promenjene su samo plave i plavo-sive nijanse.
 * Raspored, dimenzije, selektori i funkcionalnost nisu menjani.
 */

/*
 * Ublažena plava paleta: plavim tonovima je smanjena zasićenost za 28%.
 * Originalni raspored, kontrast, dimenzije i funkcionalnost nisu menjani.
 */
/*
@font-face {
  font-family: 'Roboto';
  src: url('https://www.infostara.rs/myphpfiles/search/hik-vision/7/fonts/Roboto/static/Roboto-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Roboto';
  src: url('https://www.infostara.rs/myphpfiles/search/hik-vision/7/fonts/Roboto/static/Roboto-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
*/
.box-item{float:left;display:block;width:100%;position:relative}
.box-item .comments-number{top:10px;right:10px;color:#fff;background:#f7941e;font-size:10px;font-weight:600;min-width:23px;padding:2px 3px 1px 2px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background 0.3s,border-color .3s;-moz-transition:background 0.3s,border-color .3s;transition:background 0.3s,border-color .3s}
.box-item .comments-number{color:#fff;font-size:11px;font-weight:600;text-align:center;line-height:1.5}
.box-item .objekat-number{bottom:10px;right:10px;color:#fff;background:#f7941e;font-size:12px;font-weight:600;min-width:23px;padding:2px 3px 1px 2px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background 0.3s,border-color .3s;-moz-transition:background 0.3s,border-color .3s;transition:background 0.3s,border-color .3s}
.box-item .objekat-number{color:#fff;font-size:12px;font-weight:600;text-align:center;line-height:1.5}
.box-item .comments-number::after {content: "";width: 0;height: 0;position: absolute;bottom: -6px;left: 35%;border-left: 0px solid transparent;border-right: 7px solid transparent;border-top: 6px solid #f7941e;} 
.box-item .price-number{top:10px;right:0px;color:#fff;background:#f7941e;font-size:12px;font-weight:600;min-width:23px;padding:2px 5px 2px 5px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background 0.3s,border-color .3s;-moz-transition:background 0.3s,border-color .3s;transition:background 0.3s,border-color .3s}
.box-item .price-number{color:#fff;font-size:12px;font-weight:600;text-align:center;line-height:1.5}
.box-item .comments-ukupan{top:50%;left:50%;transform:translate(-50%, -50%);color:#fff;font-size:10px;font-weight:600;min-width:23px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background 0.3s,border-color .3s;-moz-transition:background 0.3s,border-color .3s;transition:background 0.3s,border-color .3s}
.box-item .comments-ukupan{color:#fff;font-size:30px;font-weight:600;text-align:center;line-height:1.5}
.box-item .category{position:absolute;left:8px;right:20px;top:5px;font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:1px 1px 1px rgba(0,0,0,0.25)}
.box-item .category-mini{position:absolute;left:4px;right:0;top:29px;font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:0px 0px 0px rgba(0,0,0,0.85)}
.box-item .text{position:absolute;left:15px;right:15px;bottom:1px}
.box-item .text h2 {margin:15px 0;}
.box-item .text h2 a{color:#fff;font-size:24px;line-height:1;font-weight:600;margin:4px 0 0;margin-bottom:5px;text-shadow:0px 0px 0px rgba(0,0,0,0.9)}
.box-item .text h2 a:hover{color:#eee}
.box-item .text p{color:#fff;font-size:13px;line-height:1.3;text-shadow:0px 0px 0px rgba(0,0,0,0.85)}
.box-item .text .category{font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:1px 1px 1px rgba(0,0,0,0.85)}
.box-item .gradient{background:linear-gradient(4deg,rgba(11, 18, 15, 0.8) 0%,rgba(11, 18, 15, 0.45) 25%,rgba(0,0,0,0.1) 45%,transparent 55%);background-color:rgba(0,0,0,0);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cc18132d',endColorstr='#00000000',GradientType=1);position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.1)}
.box-item .gradienttop{background:linear-gradient(4deg,rgba(11, 18, 15, 0.8) 0%,rgba(11, 18, 15, 0.45) 25%,rgba(0,0,0,0.1) 45%,transparent 55%);background-color:rgba(0,0,0,0);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#cc18132d',endColorstr='#00000000',GradientType=1);position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.1)}
.box-item ul.box-list{list-style:none;float:left;margin-top:15px;padding-top:15px;background:#d3ddd8;}
.box-item ul.box-list li{margin-bottom:10px;float: left;width:100%;padding-bottom:10px;margin-right:10px;border-bottom:0px dashed #231f20;}
.box-item ul.box-list li a{float:left;font-size:19px;font-weight:bold;color:#231f20;}
.box-item ul.box-list li a:hover{color:#999;}
.box-item ul.box-list li span{float:left;width:100%;}
.box-item .smestaj-number{top:20px;left:15px;color:#fff;background:#f7941e;font-size:20px;font-weight:600;min-width:23px;padding:2px 3px 1px 2px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background 0.3s,border-color .3s;-moz-transition:background 0.3s,border-color .3s;transition:background 0.3s,border-color .3s}
.box-item .smestaj-number{color:#fff;font-size:20px;font-weight:600;text-align:center;line-height:1.5}
@media screen and (min-width: 768px)
.box-item .play-button {width: 23px;height: 23px;position: absolute;top: 10px;right: 10px;background: #f7941e;}
.play-button span {position: absolute;top: 10px;left: 330px;width: 0;height: 0;border-top: 8px solid transparent;border-bottom: 8px solid transparent;border-left: 13px solid #fff;}
div.mtImgBoxStyle1 {
    float: left;
    display: block;
    width: 100%;
    box-sizing: border-box; /* bitno da padding ulazi u širinu */
    padding-bottom: 15px;
}

td:nth-child(3n+1) > div.mtImgBoxStyle1 { /* 1., 4., 7., ... */
    padding-left: 0;
    padding-right: 7.5px;
}

td:nth-child(3n+2) > div.mtImgBoxStyle1 { /* 2., 5., 8., ... */
    padding-left: 7.5px;
    padding-right: 7.5px;
}

td:nth-child(3n) > div.mtImgBoxStyle1 { /* 3., 6., 9., ... */
    padding-left: 7.5px;
    padding-right: 0;
}
/* Ako postoji SAMO JEDNA slika — i nije unutar <td> */
/* Dodaj ravnomerni padding levo i desno */
div.mtImgBoxStyle1:not(td div.mtImgBoxStyle1) {
    float: left;
    width: 205px;               /* 30% širine ekrana */
    padding-right: 15px;        /* razmak između slike i teksta */
    padding-left: 0px;
}
td.mceTmplElm > div.mtImgBoxStyle1 {
    float: left;
    width: 205px;
    padding-right: 15px;
    padding-left: 0;
}
div.mtCapStyle {
    background-color: #eee;
    padding: 1px;
    text-align: center;
}





/* .ui-input-text.ui-noshadow{border:none;box-shadow:none}.ui-datebox-container>a.ui-btn{display:none}.ui-icon-flag:after{background-image:url(images/eng.svg)}.ui-corner-all{border-radius:0!important}.ui-shadow{box-shadow:none}.ui-shadow-inset{box-shadow:none}.ui-li-count{border-radius:0}.ui-btn-icon-left:after,.ui-btn-icon-top:after{background-color:#619e81}.ui-panel-page-container-a{background-color:#619e81}textarea.ui-input-text{height:inherit!important}.naslov{background-color:#ddd;border-color:#ddd;color:#333;text-shadow:none;font-weight:700;letter-spacing:-.5px;font-size:16px;text-align:center;text-transform:uppercase;padding:.6em 1.143em}@media all and (orientation:landscape){.ui-footer{display:none}.infokop-instagram{display:none}}.box-item{float:left;display:block;width:100%;position:relative}.box-item .comments-number{top:10px;right:10px;color:#fff;background:#619e81;font-size:16px;font-weight:600;min-width:23px;padding:2px 3px 1px 2px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s;text-shadow:none}.box-item .comments-number{color:#fff;font-size:16px;font-weight:600;text-align:center;line-height:1.5}.box-item .comments-number::after{content:"";width:0;height:0;position:absolute;bottom:-6px;left:35%;border-left:0 solid transparent;border-right:7px solid transparent;border-top:6px solid #619e81}.box-item .objekat-number{bottom:10px;right:10px;color:#fff;background:#619e81;font-size:12px;font-weight:600;min-width:23px;padding:2px 3px 1px 2px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s}.box-item .objekat-number{color:#fff;font-size:12px;font-weight:600;text-align:center;line-height:1.5}.box-item .price-number-green{top:5%;right:0;color:#fff;background:green;font-size:20px;font-weight:600;min-width:23px;padding:2px 5px 2px 5px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s;text-shadow:none}.box-item .price-number-red{top:5%;right:0;color:#fff;background:red;font-size:20px;font-weight:600;min-width:23px;padding:2px 5px 2px 5px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s;text-shadow:none}.box-item .price-number a{text-decoration:none}.box-item .comments-ukupan{top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px;font-weight:600;min-width:23px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s}.box-item .comments-ukupan{color:#fff;font-size:30px;font-weight:600;text-align:center;line-height:1.5}.box-item .category{position:absolute;left:8px;right:20px;top:5px;font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:1px 1px 1px rgba(0,0,0,.25)}.box-item .category-mini{position:absolute;left:4px;right:0;top:29px;font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:0 0 0 rgba(0,0,0,.85)}.box-item .textnas{position:absolute;left:15px;right:15px;bottom:1px;text-shadow:none}.box-item .textnas h2{margin:15px 0;text-shadow:none;letter-spacing:-1px}.box-item .textnas h2 a{color:#fff;font-size:24px;line-height:1;margin:4px 0 0;margin-bottom:5px;text-shadow:0 0 0 rgba(0,0,0,.9);text-shadow:none;letter-spacing:-1px}.box-item .textnas h2 a:hover{color:#fff;text-shadow:none}.box-item .text h2{top:50%;left:50%;transform:translate(-50%,-50%);text-transform:uppercase;color:transparent;background:#fff;font-size:24px;font-weight:600;min-width:23px;padding:2px 5px 2px 5px;text-align:center;position:absolute;line-height:1.5;-webkit-transition:background .3s,border-color .3s;-moz-transition:background .3s,border-color .3s;transition:background .3s,border-color .3s;text-shadow:none}.box-item .text h2 a{color:#000;text-decoration:none}.box-item .text p{color:#fff;font-size:13px;line-height:1.3;text-shadow:0 0 0 rgba(0,0,0,.85)}.box-item .text .category{font-size:13px;font-weight:700;color:#f7941e;text-transform:uppercase;text-shadow:1px 1px 1px rgba(0,0,0,.85)}.box-item .gradient{background:linear-gradient(4deg,rgba(11, 18, 15, .8) 0,rgba(11, 18, 15, .45) 25%,rgba(0,0,0,.1) 45%,transparent 55%);background-color:rgba(0,0,0,0);position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.1)}.box-item .gradienttop{background:linear-gradient(4deg,rgba(11, 18, 15, .8) 0,rgba(11, 18, 15, .45) 25%,rgba(0,0,0,.1) 45%,transparent 55%);background-color:rgba(0,0,0,0);position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.1)}.box-item ul.box-list{list-style-type:none;float:left;margin-top:15px;margin-right:10px;margin-bottom:-15px}.box-item ul.box-list li{margin-bottom:10px;float:left;width:100%;padding-bottom:10px;margin-right:10px;border-bottom:0 dashed #231f20}.box-item ul.box-list li a{float:left;font-size:20px;font-weight:700;color:#231f20;text-decoration:none}.box-item ul.box-list li a:hover{color:#999;text-decoration:none}.box-item ul.box-list li span{float:left;width:100%}div.mtImgBoxStyle1{float:left;display:block;width:33%;padding-right:10px}td{vertical-align:top}td:nth-child(1n)>div.mtImgBoxStyle1{float:none;display:block;width:calc(100% - 5px);padding-right:0;padding-bottom:5px}td:nth-child(2n)>div.mtImgBoxStyle1{float:none;margin-left:auto;margin-right:auto;display:block;wi<p>…</p>dth:calc(100% - 5px);padding-right:0;padding-bottom:5px}td:nth-child(3n)>div.mtImgBoxStyle1{float:none;margin-left:auto;display:block;width:calc(100% - 5px);padding-right:0;padding-bottom:5px}div.mtCapStyle{background-color:#eee;padding:1px;text-align:center;overflow:hidden;font-size:50%}.gm-style-iw{left:10px!important;top:10px!important}.phoneButton{color:#fff;width:50px;background:rgba(97, 158, 129, .85);border-radius:50%;padding:0 2px 0 8px;position:fixed;bottom:calc((100vw / 7) + 70px);right:10px;z-index:999999}.phoneButton span{font-size:9px;font-weight:600;position:relative;top:-8px;left:6px}.phoneButton:hover{color:#fff!important}.phoneButton .fa-phone{font-size:26px;padding-left:9px;padding-top:10px}.ui-dialog{padding-top:100px;padding-bottom:110px}@media (max-width:768px){.unikatna-tabela td{font-size:11px;}} */

/* Moderna naslovna vest + lista vesti — module_newsflash_frontpage.php */
.is-newsflash {
    --is-blue-900: #34624c;
    --is-blue-800: #3f775c;
    --is-blue-600: #68a286;
    --is-blue-100: #f3f6f5;
    --is-text: #15231c;
    --is-muted: #599276;
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(220px, 0.95fr);
    gap: 16px;
    width: 100%;
    font-family: 'Roboto', Tahoma, Arial, sans-serif;
}

.is-newsflash a {
    text-decoration: none;
}

.is-newsflash__hero,
.is-newsflash__latest {
    min-width: 0;
    border: 1px solid rgba(52, 98, 76, 0.08);
    border-radius: 11px;
    box-shadow: 0 7px 22px rgba(38, 72, 56, 0.10);
}

.is-newsflash__hero {
    position: relative;
    min-height: 338px;
    overflow: hidden;
    background: linear-gradient(135deg, var(--is-blue-900), #243b30);
    isolation: isolate;
}

.is-newsflash__hero-media,
.is-newsflash__hero-media img,
.is-newsflash__overlay {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.is-newsflash__hero-media img {
    object-fit: cover;
    transition: transform 0.45s ease;
}

.is-newsflash__hero:hover .is-newsflash__hero-media img {
    transform: scale(1.025);
}

.is-newsflash__overlay {
    background:
        linear-gradient(180deg, rgba(21, 35, 28, 0.08) 22%, rgba(19, 32, 26, 0.34) 52%, rgba(12, 19, 16, 0.94) 100%),
        linear-gradient(90deg, rgba(32, 52, 42, 0.24), transparent 66%);
}

.is-newsflash__topline {
    position: absolute;
    z-index: 2;
    top: 20px;
    left: 20px;
    right: 20px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.is-newsflash__meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    max-width: calc(100% - 45px);
    padding: 6px 9px;
    border-radius: 5px;
    background: rgba(104, 162, 134, 0.92);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.15;
    text-transform: uppercase;
    backdrop-filter: blur(5px);
}

.is-newsflash__meta:hover {
    color: #fff;
    background: var(--is-blue-800);
}

.is-newsflash__comments {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 34px;
    height: 30px;
    padding: 0 7px;
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 6px;
    background: rgba(104, 162, 134, 0.94);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

.is-newsflash__comments .fa,
.is-newsflash__item-meta .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    font-size: inherit;
}

.is-newsflash__comments:hover {
    color: #fff;
    background: var(--is-blue-800);
}

.is-newsflash__hero-content {
    position: absolute;
    z-index: 2;
    left: 22px;
    right: 22px;
    bottom: 20px;
    color: #fff;
}

.is-newsflash__hero-content h2 {
    margin: 0 0 10px;
    font-size: clamp(22px, 2.2vw, 25px);
    font-weight: 700;
    line-height: 1.03;
    letter-spacing: -0.55px;
}

.is-newsflash__hero-content h2 a {
    color: #fff;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.34);
}

.is-newsflash__hero-content h2 a:hover {
    color: #fff;
}

.is-newsflash__hero-content p {
    display: -webkit-box;
    max-width: 96%;
    margin: 0 0 13px;
    overflow: hidden;
    color: rgba(255, 255, 255, 0.94);
    font-size: 12px;
    line-height: 1.45;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.is-newsflash__button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 6px;
    background: var(--is-blue-600);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    box-shadow: 0 5px 14px rgba(62, 118, 91, 0.34);
    transition: background 0.2s ease, transform 0.2s ease;
}

.is-newsflash__button:hover {
    color: #fff;
    background: var(--is-blue-800);
    transform: translateY(-1px);
}

.is-newsflash__latest {
    display: flex;
    flex-direction: column;
    min-height: 338px;
    padding: 18px 18px 13px;
    background: #fff;
}

.is-newsflash__latest-header {
    display: flex;
    align-items: center;
    gap: 11px;
    padding-bottom: 13px;
    border-bottom: 1px solid #eaedec;
}

.is-newsflash__latest-header h3 {
    flex: 0 0 auto;
    margin: 0;
    color: var(--is-blue-900);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
}

.is-newsflash__latest-header > span {
    width: 28px;
    height: 2px;
    border-radius: 99px;
    background: var(--is-blue-600);
}

.is-newsflash__list {
    flex: 1 1 auto;
}

.is-newsflash__item {
    display: grid;
    grid-template-columns: 9px minmax(0, 1fr);
    gap: 9px;
    padding: 12px 0;
    border-bottom: 1px solid #f0f2f1;
}

.is-newsflash__dot {
    width: 8px;
    height: 8px;
    margin-top: 4px;
    border: 2px solid var(--is-blue-600);
    border-radius: 50%;
    background: #fff;
}

.is-newsflash__item-content {
    min-width: 0;
}

.is-newsflash__item h4 {
    margin: 0 0 6px;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.32;
}

.is-newsflash__item h4 a {
    color: var(--is-text);
}

.is-newsflash__item h4 a:hover {
    color: var(--is-blue-600);
}

.is-newsflash__item-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: var(--is-muted);
    font-size: 10px;
    line-height: 1;
}

.is-newsflash__item-meta a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--is-blue-800);
    font-weight: 700;
}

.is-newsflash__all {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    align-self: flex-start;
    margin-top: 13px;
    color: var(--is-blue-800);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.is-newsflash__all:hover {
    color: var(--is-blue-600);
}

.is-newsflash-empty {
    padding: 20px;
    border: 1px solid #e3e7e5;
    border-radius: 10px;
    background: #fbfbfb;
    color: #3c7258;
    text-align: center;
}

@media (max-width: 680px) {
    .is-newsflash {
        grid-template-columns: 1fr;
    }

    .is-newsflash__hero {
        min-height: 360px;
    }

    .is-newsflash__latest {
        min-height: auto;
    }
}

@media (max-width: 430px) {
    .is-newsflash__hero {
        min-height: 390px;
    }

    .is-newsflash__hero-content {
        left: 16px;
        right: 16px;
        bottom: 16px;
    }

    .is-newsflash__hero-content h2 {
        font-size: 24px;
    }
}

:root {
  --infostara-navy: #284d3b;
  --infostara-navy-dark: #21352b;
  --infostara-blue: #68a286;
  --infostara-blue-light: #87b59f;
  --infostara-surface: #ffffff;
  --infostara-page: #f7f8f8;
  --infostara-border: #e7eae9;
  --infostara-text: #2a4f3d;
  --infostara-muted: #ebefed;
}

html,
body {
  background: var(--infostara-page);
}

body {
  font-family: 'Roboto', Tahoma, Arial, sans-serif !important;
  font-weight: 400 !important;
  color: #1c2e25;
}

#myheader {
  position: relative;
  z-index: 1040;
  box-shadow: 0 10px 30px rgba(37, 69, 54, 0.08);
}

.infostara-brandbar {
  background:
    radial-gradient(circle at 68% -40%, rgba(137, 183, 161, 0.34), transparent 36%),
    linear-gradient(135deg, #386951 0%, var(--infostara-navy) 58%, var(--infostara-navy-dark) 100%);
  color: #fff;
  min-height: 94px;
}

.infostara-brandbar__inner {
  min-height: 94px;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.infostara-brand {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  text-decoration: none;
  min-width: 0;
}

.infostara-brand__logo {
  display: block;
  width: min(310px, 44vw);
  height: auto;
  max-height: 58px;
  object-fit: contain;
  object-position: left center;
}

.infostara-brand__tagline {
  margin-top: 3px;
  margin-left: 6px;
  color: rgba(255, 255, 255, 0.92);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.01em;
}

.infostara-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.infostara-social-link {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 10px;
  color: #fff;
  background: rgba(255, 255, 255, 0.04);
  transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.infostara-social-link:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.48);
}

.infostara-social-link .fa {
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

#navbar7 {
  position: sticky;
  top: 0;
  z-index: 1045;
}

.infostara-navbar-shell {
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid var(--infostara-border);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.infostara-navbar {
  min-height: 63px;
  padding: 0 18px;
}

.infostara-navbar .navbar-toggler {
  border: 0;
  padding: 9px 12px;
  border-radius: 10px;
  color: var(--infostara-text);
  background: #f5f7f6;
  box-shadow: none !important;
}

.infostara-navbar .navbar-toggler .fa {
  width: auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: 18px !important;
}

.infostara-navbar .navbar-nav {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
}

.infostara-navbar .nav-item {
  display: block;
}

.infostara-navbar .nav-link {
  min-height: 42px;
  padding: 10px 12px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 10px;
  color: #284b3a !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

.infostara-navbar .nav-link:hover,
.infostara-navbar .nav-link:focus {
  color: var(--infostara-blue) !important;
  background: #f6f7f7;
  transform: translateY(-1px);
}

.infostara-navbar .nav-link.active {
  color: #fff !important;
  background: linear-gradient(135deg, #68a286, #5a9478);
  box-shadow: 0 8px 18px rgba(104, 162, 134, 0.25);
}

.infostara-navbar .nav-link .fa {
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

.infostara-navbar__mobile-title {
  color: var(--infostara-text);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

@media (max-width: 1199.98px) {
  .infostara-navbar {
    padding-inline: 12px;
  }

  .infostara-navbar .nav-link {
    padding-inline: 9px !important;
    font-size: 11px;
    gap: 6px;
  }
}

@media (max-width: 991.98px) {
  .infostara-brandbar,
  .infostara-brandbar__inner {
    min-height: 72px;
  }

  .infostara-brandbar__inner {
    padding: 10px 16px;
  }

  .infostara-brand__logo {
    width: min(230px, 62vw);
    max-height: 46px;
  }

  .infostara-brand__tagline {
    display: none;
  }

  .infostara-header-actions {
    display: none;
  }

  .infostara-navbar {
    min-height: 54px;
    padding-block: 7px;
  }

  .infostara-navbar .navbar-collapse {
    margin-top: 8px;
    padding: 8px;
    border: 1px solid var(--infostara-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(37, 69, 54, 0.14);
  }

  .infostara-navbar .navbar-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .infostara-navbar .nav-link {
    width: 100%;
    justify-content: flex-start;
    padding: 11px 12px !important;
    font-size: 12px;
  }
}

@media (max-width: 575.98px) {
  .infostara-brandbar,
  .infostara-brandbar__inner {
    min-height: 64px;
  }

  .infostara-brandbar__inner {
    justify-content: center;
  }

  .infostara-brand {
    align-items: center;
  }

  .infostara-brand__logo {
    width: min(205px, 72vw);
    max-height: 41px;
  }

  .infostara-navbar .navbar-nav {
    grid-template-columns: 1fr;
  }
}

.is-newsflash__latest {
    padding: 0 !important;
    overflow: hidden;
}

.is-newsflash__latest-header {
    width: 100%;
    min-height: 62px;
    margin: 0 !important;
    padding: 14px 18px !important;
    border: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0;
    color: #ffffff;
    background: linear-gradient(135deg, #2d5642 0%, #599176 100%);
    box-sizing: border-box;
}

.is-newsflash__latest-header h3 {
    color: #ffffff !important;
}

.is-newsflash__latest-header > span {
    display: none;
}

.is-newsflash__list {
    flex: 1 1 auto;
    padding: 0 18px;
}

.is-newsflash__all {
    margin: 13px 18px 14px;
}

@media (max-width: 575.98px) {
    .is-newsflash__latest-header {
        min-height: 58px;
        padding: 12px 14px !important;
    }

    .is-newsflash__list {
        padding-right: 14px;
        padding-left: 14px;
    }

    .is-newsflash__all {
        margin-right: 14px;
        margin-left: 14px;
    }
}

:root {
    --infostara-page-bg: #f6f8f7;
}

/* Pozadina cele stranice i prostora između kartica */
html,
body {
    background: var(--infostara-page-bg);
}

#infostara-content {
    width: 100%;
    background: var(--infostara-page-bg);
    padding-top: 15px;
}

/* Glavne kolone */
.infostara-main-column {
    padding-right: 15px;
}

.infostara-sidebar-column {
    padding: 0;
}

/* Wrapper pojedinačnog modula */
.infostara-module {
    width: 100%;
    margin: 0 0 15px;
    padding: 0;
    background: transparent;
}

/* Vreme i ski-info jedan pored drugog */
.infostara-module-row {
    display: flex;
    align-items: stretch;
    gap: 15px;
    width: 100%;
    margin-bottom: 15px;
    background: transparent;
}

.infostara-module-row > .infostara-module {
    flex: 1 1 0;
    min-width: 0;
    margin-bottom: 0;
}

/* Footer */
.infostara-footer-container {
    width: 100%;
    padding: 0;
    background: transparent;
}

/* Na užem ekranu vreme i ski-info idu jedan ispod drugog */
@media (max-width: 991.98px) {
    .infostara-module-row {
        flex-direction: column;
    }

    .infostara-main-column {
        padding-right: 0;
    }
}


.is-vest__body .is-vest-weather,
.is-vest__body .is-vest-webcams,
.is-vest__body .is-vest-skiinfo {
    width: auto !important;
    max-width: none !important;
    margin-right: -25px !important;
    margin-left: -25px !important;
}

@media (max-width: 767.98px) {
    .is-vest__body .is-vest-weather,
    .is-vest__body .is-vest-webcams,
    .is-vest__body .is-vest-skiinfo {
        margin-right: -16px !important;
        margin-left: -16px !important;
    }
}


/* =========================================================
   CSS PREMEŠTEN IZ PHP INCLUDE FAJLOVA
   Sve klase ostaju namespacovane po modulu.
   ========================================================= */
/* =========================================================
   CENTRALIZOVANI RASPORED GLAVNIH STRANICA
   ========================================================= */
@media (max-width: 1239.98px) {
    .infostara-main-column,
    .infostara-sidebar-column {
        flex: 0 0 790px;
        width: 790px;
        max-width: 790px;
        margin-right: auto;
        margin-left: auto;
    }
}


#index {
    width: 100%;
    max-width: 1240px;
}

.infostara-main-column {
    flex: 0 0 790px;
    width: 790px;
    max-width: 790px;
}

.infostara-sidebar-column {
    flex: 0 0 450px;
    width: 450px;
    max-width: 450px;
}

.infostara-footer-column {
    flex: 0 0 1240px;
    width: 1240px;
    max-width: 1240px;
}

/* Kada desna kolona padne ispod leve */
@media (max-width: 1239.98px) {
    .infostara-sidebar-column {
        flex: 0 0 790px;
        width: 790px;
        max-width: 790px;
    }
}

.box-item__image {
    display: block;
    width: 100%;
    margin: 0 auto;
}

.box-item .comments-number,
.box-item .textnas h2 a {
    text-decoration: none;
}

.infostara-legacy-note {
    padding: 15px;
    background: #e9e9e9;
    font-size: 12px;
    text-align: center;
}


/* ---------------------------------------------------------
   Naslovne vesti
   Izvor: module_newsflash_frontpage.php
   --------------------------------------------------------- */
/*
 * Plavo zaglavlje kartice "Naslovne vesti".
 * Ostatak modula i postojeća logika ostaju nepromenjeni.
 */
.is-newsflash__latest {
    overflow: hidden;
    border: 1px solid #e5e8e7;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
}

.is-newsflash__latest-header {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px;
    min-height: 62px;
    margin: 0 !important;
    padding: 14px 16px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #2d5642 0%, #599176 100%) !important;
    border: 0 !important;
}

.is-newsflash__latest-header::before {
    content: "";
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 10px;
    background:
        linear-gradient(#ffffff, #ffffff) 9px 10px / 16px 2px no-repeat,
        linear-gradient(#ffffff, #ffffff) 9px 16px / 16px 2px no-repeat,
        linear-gradient(#ffffff, #ffffff) 9px 22px / 11px 2px no-repeat,
        rgba(255, 255, 255, 0.12);
}

.is-newsflash__latest-header h3 {
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.is-newsflash__latest-header > span {
    display: none !important;
}

@media (max-width: 575.98px) {
    .is-newsflash__latest {
        border-radius: 12px;
    }

    .is-newsflash__latest-header {
        min-height: 58px;
        padding: 12px 13px !important;
    }
}


/* ---------------------------------------------------------
   RHMZ vreme — naslovna
   Izvor: moudle_vreme_rhmz.php
   --------------------------------------------------------- */
.rhmz-weather-card {
    --rhmz-blue: #599176;
    --rhmz-blue-dark: #2d5642;
    --rhmz-blue-soft: #f3f6f5;
    --rhmz-ink: #1c2e25;
    --rhmz-muted: #5e997c;
    --rhmz-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    color: var(--rhmz-ink);
    background: #fff;
    border: 1px solid var(--rhmz-border);
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(38, 72, 56, 0.10);
    font-family: 'Roboto', Tahoma, Arial, sans-serif;
}

.rhmz-weather-card,
.rhmz-weather-card * {
    box-sizing: border-box;
}

.rhmz-weather-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    color: #fff;
    background:
        radial-gradient(circle at 85% -30%, rgba(255,255,255,.22), transparent 42%),
        linear-gradient(135deg, var(--rhmz-blue-dark), var(--rhmz-blue));
}

.rhmz-weather-card__title-wrap {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.rhmz-weather-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 12px;
    background: rgba(255,255,255,.16);
    font-size: 19px;
}

.rhmz-weather-card__title {
    margin: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .01em;
}

.rhmz-weather-card__subtitle {
    margin-top: 3px;
    color: rgba(255,255,255,.78);
    font-size: 11px;
    line-height: 1.25;
}

.rhmz-weather-card__live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 9px;
    color: #fff;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.rhmz-weather-card__live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #6ee7a8;
    box-shadow: 0 0 0 4px rgba(110,231,168,.16);
}

.rhmz-weather-card__body {
    padding: 17px;
}

.rhmz-weather-main {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 14px;
    background: linear-gradient(135deg, #fbfcfc, #f6f7f7);
    border: 1px solid #eaedec;
    border-radius: 14px;
}

.rhmz-weather-main__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 86px;
    height: 86px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #ebedec;
    border-radius: 22px;
    box-shadow: 0 8px 20px rgba(61, 116, 89, .10);
}

.rhmz-weather-main__visual img {
    display: block;
    width: 70px;
    height: 70px;
    object-fit: contain;
}

.rhmz-weather-main__fallback {
    color: var(--rhmz-blue);
    font-size: 42px;
    line-height: 1;
}

.rhmz-weather-main__location {
    color: var(--rhmz-blue);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.rhmz-weather-main__temperature {
    display: flex;
    align-items: flex-start;
    margin-top: 2px;
    color: var(--rhmz-blue-dark);
    line-height: 1;
}

.rhmz-weather-main__temperature-value {
    font-size: 42px;
    font-weight: 850;
    letter-spacing: -2px;
}

.rhmz-weather-main__temperature-unit {
    margin: 5px 0 0 3px;
    font-size: 18px;
    font-weight: 800;
}

.rhmz-weather-main__temperature--warm {
    color: #d94b4b;
}

.rhmz-weather-main__condition {
    margin-top: 5px;
    color: #264838;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.2;
}

.rhmz-weather-main__time {
    margin-top: 4px;
    color: var(--rhmz-muted);
    font-size: 10px;
    line-height: 1.25;
}

.rhmz-weather-quick {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 12px;
}

.rhmz-weather-stat {
    min-width: 0;
    padding: 11px 8px 10px;
    text-align: center;
    background: #fbfcfc;
    border: 1px solid #edefee;
    border-radius: 12px;
}

.rhmz-weather-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: 0 auto 7px;
    color: var(--rhmz-blue);
    background: var(--rhmz-blue-soft);
    border-radius: 9px;
    font-size: 14px;
    font-weight: 800;
}

.rhmz-weather-stat__value {
    overflow: hidden;
    color: var(--rhmz-blue-dark);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rhmz-weather-stat__label {
    margin-top: 5px;
    overflow: hidden;
    color: var(--rhmz-muted);
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .045em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.rhmz-weather-card__divider {
    height: 1px;
    margin: 15px 0 12px;
    background: #edefee;
}

.rhmz-weather-details {
    display: grid;
    gap: 8px;
}

.rhmz-weather-detail {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px;
    background: #fcfdfd;
    border: 1px solid #eef0ef;
    border-radius: 11px;
}

.rhmz-weather-detail__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: var(--rhmz-blue);
    background: var(--rhmz-blue-soft);
    border-radius: 10px;
    font-size: 16px;
    font-weight: 800;
}

.rhmz-weather-detail__copy {
    min-width: 0;
}

.rhmz-weather-detail__title {
    color: #264838;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
}

.rhmz-weather-detail__subtitle {
    margin-top: 2px;
    overflow: hidden;
    color: #7db097;
    font-size: 9px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rhmz-weather-detail__value {
    color: var(--rhmz-blue-dark);
    font-size: 12px;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

.rhmz-weather-wind-arrow {
    display: inline-block;
    margin-right: 3px;
    transform: rotate(var(--rhmz-wind-angle));
    transform-origin: center;
}

.rhmz-weather-detail__value--calm {
    color: #138451;
}

.rhmz-weather-detail__value--moderate {
    color: #ba7110;
}

.rhmz-weather-detail__value--strong {
    color: #d13d48;
}

.rhmz-weather-card__empty {
    padding: 16px;
    color: var(--rhmz-muted);
    background: #fafafa;
    border: 1px dashed #d5dfda;
    border-radius: 12px;
    font-size: 11px;
    line-height: 1.45;
    text-align: center;
}

.rhmz-weather-card__source {
    margin-top: 11px;
    color: #8cb9a3;
    font-size: 9px;
    line-height: 1.3;
    text-align: center;
}

@media (max-width: 480px) {
    .rhmz-weather-card__header {
        align-items: flex-start;
        padding: 14px;
    }

    .rhmz-weather-card__live {
        padding: 5px 7px;
        font-size: 9px;
    }

    .rhmz-weather-card__body {
        padding: 13px;
    }

    .rhmz-weather-main {
        grid-template-columns: 76px minmax(0, 1fr);
        gap: 11px;
        padding: 11px;
    }

    .rhmz-weather-main__visual {
        width: 72px;
        height: 72px;
        border-radius: 18px;
    }

    .rhmz-weather-main__visual img {
        width: 60px;
        height: 60px;
    }

    .rhmz-weather-main__temperature-value {
        font-size: 35px;
    }

    .rhmz-weather-quick {
        gap: 6px;
    }

    .rhmz-weather-stat {
        padding: 9px 5px;
    }

    .rhmz-weather-stat__value {
        font-size: 15px;
    }

    .rhmz-weather-detail {
        grid-template-columns: 34px minmax(0, 1fr);
    }

    .rhmz-weather-detail__value {
        grid-column: 2;
        text-align: left;
    }
}


/* ---------------------------------------------------------
   Ski-info — naslovna
   Izvor: moudle_skiinfo.php
   --------------------------------------------------------- */
.ski-info-card {
    --ski-blue: #599176;
    --ski-blue-dark: #2d5642;
    --ski-blue-soft: #f3f6f5;
    --ski-ink: #1c2e25;
    --ski-muted: #5e997c;
    --ski-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    color: var(--ski-ink);
    background: #fff;
    border: 1px solid var(--ski-border);
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(38, 72, 56, 0.10);
}

.ski-info-card * {
    box-sizing: border-box;
}

.ski-info-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    color: #fff;
    background:
        radial-gradient(circle at 85% -30%, rgba(255,255,255,.22), transparent 42%),
        linear-gradient(135deg, var(--ski-blue-dark), var(--ski-blue));
}

.ski-info-card__title-wrap {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.ski-info-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.22);
    font-size: 20px;
}

.ski-info-card__title {
    margin: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .01em;
}

.ski-info-card__subtitle {
    margin-top: 3px;
    color: rgba(255,255,255,.78);
    font-size: 11px;
    line-height: 1.25;
}

.ski-info-card__live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 9px;
    color: #fff;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.ski-info-card__live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #6ee7a8;
    box-shadow: 0 0 0 4px rgba(110,231,168,.16);
}

.ski-info-card__body {
    padding: 17px;
}

.ski-info-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.ski-info-stat {
    min-width: 0;
    padding: 11px 8px 4px;
    text-align: center;
    background: #fbfcfc;
    border: 1px solid #edefee;
    border-radius: 12px;
}

.ski-info-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: 0 auto 7px;
    color: var(--ski-blue);
    background: var(--ski-blue-soft);
    border-radius: 9px;
    font-size: 15px;
    font-weight: 800;
}

.ski-info-stat__icon--lift::before { content: '↟'; }
.ski-info-stat__icon--slope::before { content: '⛷'; }
.ski-info-stat__icon--route::before { content: '⌁'; }
.ski-info-stat__icon--distance::before { content: 'km'; font-size: 10px; }

.ski-info-stat__value {
    overflow: hidden;
    color: var(--ski-blue-dark);
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ski-info-stat__label {
    margin-top: 5px;
    overflow: hidden;
    color: var(--ski-muted);
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .045em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ski-info-stat__track {
    height: 4px;
    margin-top: 9px;
    overflow: hidden;
    background: #e8ecea;
    border-radius: 999px;
}

.ski-info-stat__bar {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #96beab, var(--ski-blue));
    border-radius: inherit;
}

.ski-info-stat__secondary {
    min-height: 13px;
    margin-top: 5px;
    color: var(--ski-muted);
    font-size: 9px;
    line-height: 1.2;
}

.ski-info-card__divider {
    height: 1px;
    margin: 14px 0 14px;
    background: #edefee;
}

.ski-info-card__section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.ski-info-card__section-title {
    margin: 0;
    color: var(--ski-ink);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.ski-info-card__legend {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--ski-muted);
    font-size: 9px;
}

.ski-info-card__legend-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.ski-info-status-dot {
    flex: 0 0 auto;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.ski-info-status-dot--on {
    background: #18a965;
    box-shadow: 0 0 0 3px rgba(24,169,101,.10);
}

.ski-info-status-dot--off {
    background: red;
    box-shadow: 0 0 0 3px rgba(126, 176, 152, .08);
}

.ski-info-lifts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 10px;
}

.ski-info-lift {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 8px;
    padding: 8px 9px;
    background: #fcfdfd;
    border: 1px solid #eef0ef;
    border-radius: 10px;
}

.ski-info-lift__text {
    min-width: 0;
}

.ski-info-lift__name {
    overflow: hidden;
    color: #264838;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ski-info-lift__type {
    margin-top: 2px;
    overflow: hidden;
    color: #7fb098;
    font-size: 9px;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ski-info-card__empty {
    padding: 11px;
    color: var(--ski-muted);
    background: #fafafa;
    border: 1px dashed #d5dfda;
    border-radius: 10px;
    font-size: 11px;
    text-align: center;
}

.ski-info-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 14px;
}

.ski-info-card__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 38px;
    padding: 9px 11px;
    color: var(--ski-blue-dark) !important;
    background: var(--ski-blue-soft);
    border: 1px solid #e2e7e5;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    text-decoration: none !important;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.ski-info-card__action:hover {
    color: #fff !important;
    background: var(--ski-blue);
    border-color: var(--ski-blue);
    transform: translateY(-1px);
}

.ski-info-card__action-arrow {
    font-size: 15px;
    line-height: 1;
}

.ski-info-card__warning {
    margin-top: 12px;
    color: #8a5a13;
    background: #fff8e8;
    border: 1px solid #f5dfaa;
    border-radius: 9px;
    padding: 8px 10px;
    font-size: 10px;
    line-height: 1.35;
}

@media (max-width: 430px) {
    .ski-info-card__header {
        padding: 14px;
    }

    .ski-info-card__body {
        padding: 14px;
    }

    .ski-info-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ski-info-lifts {
        grid-template-columns: 1fr;
    }
}


/* ---------------------------------------------------------
   YR/MET prognoza — naslovna
   Izvor: module_vreme_w2u.php
   --------------------------------------------------------- */
.infostara-yr-card {
    --yr-blue-900: #2d5642;
    --yr-blue-700: #599176;
    --yr-blue-100: #f3f6f5;
    --yr-text: #1c2e25;
    --yr-muted: #5e997c;
    --yr-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--yr-border);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
    font-family: Roboto, Arial, sans-serif;
}

.infostara-yr-card *,
.infostara-yr-card *::before,
.infostara-yr-card *::after {
    box-sizing: border-box;
}

.infostara-yr-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 66px;
    padding: 14px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--yr-blue-900), var(--yr-blue-700));
}

.infostara-yr-card__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.infostara-yr-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 11px;
    background: rgba(255,255,255,.12);
}

.infostara-yr-card__icon svg {
    width: 22px;
    height: 22px;
}

.infostara-yr-card__title {
    margin: 0;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.infostara-yr-card__subtitle {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.76);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.infostara-yr-card__source {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.infostara-yr-card__source::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.infostara-yr-card__body {
    padding: 14px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfc 100%);
}

.infostara-yr-card__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
    gap: 9px;
}

.infostara-yr-day {
    min-width: 0;
    padding: 12px 8px 11px;
    border: 1px solid #e9eceb;
    border-radius: 12px;
    background: #ffffff;
    text-align: center;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.infostara-yr-day:hover {
    transform: translateY(-2px);
    border-color: #d3ded9;
    box-shadow: 0 8px 18px rgba(45, 86, 66, .08);
}

.infostara-yr-day__date {
    display: block;
    color: var(--yr-blue-900);
    font-size: 12px;
    line-height: 1;
    font-weight: 800;
}

.infostara-yr-day__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 58px;
    margin: 5px 0 3px;
}

.infostara-yr-day__icon img {
    display: block;
    width: 54px;
    height: 54px;
    object-fit: contain;
}

.infostara-yr-day__temperature {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 5px;
    min-height: 26px;
    margin-top: 2px;
    font-size: 17px;
    line-height: 1;
    font-weight: 800;
}

.infostara-yr-day__separator {
    color: #a8beb3;
    font-size: 13px;
    font-weight: 500;
}

.infostara-yr-day__name {
    display: -webkit-box;
    min-height: 30px;
    margin-top: 7px;
    overflow: hidden;
    color: var(--yr-muted);
    font-size: 10.5px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.infostara-yr-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 15px 13px;
    border-top: 1px solid #eff1f0;
    background: #ffffff;
}

.infostara-yr-card__credit {
    color: var(--yr-muted);
    font-size: 10px;
    line-height: 1.3;
}

.infostara-yr-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 9px;
    background: var(--yr-blue-100);
    color: var(--yr-blue-900);
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .2s ease, transform .2s ease;
}

.infostara-yr-card__link:hover {
    color: var(--yr-blue-900);
    background: #ebefed;
    transform: translateY(-1px);
}

.infostara-yr-card__link svg {
    width: 14px;
    height: 14px;
}

.infostara-yr-card__empty {
    padding: 24px 18px;
    color: var(--yr-muted);
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
}

@media (max-width: 575.98px) {
    .infostara-yr-card {
        border-radius: 12px;
    }

    .infostara-yr-card__header {
        min-height: 60px;
        padding: 12px 13px;
    }

    .infostara-yr-card__source {
        padding: 6px 8px;
        font-size: 9px;
    }

    .infostara-yr-card__body {
        padding: 11px;
    }

    .infostara-yr-card__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .infostara-yr-card__footer {
        display: block;
        padding: 11px 13px 12px;
    }

    .infostara-yr-card__link {
        margin-top: 10px;
    }
}


/* ---------------------------------------------------------
   Pretraga smeštaja
   Izvor: module_smestaj_pretraga.php
   --------------------------------------------------------- */
.is-booking-card {
    --is-booking-blue-900: #315d48;
    --is-booking-blue-800: #3e775b;
    --is-booking-blue-700: #4d9170;
    --is-booking-blue-600: #65a083;
    --is-booking-border: rgba(255, 255, 255, 0.12);
    --is-booking-shadow: 0 14px 38px rgba(37, 61, 49, 0.22);
    --is-booking-radius: 16px;
    width: 100%;
    padding: 18px 18px 16px;
    border: 1px solid rgba(38, 61, 50, 0.08);
    border-radius: var(--is-booking-radius);
    background:
        linear-gradient(135deg, #2d5642 0%, #599176 100%) !important;
    box-shadow: var(--is-booking-shadow);
    color: #fff;
    font-family: 'Roboto', Tahoma, Arial, sans-serif;
}

.is-booking-card__title {
    margin: 0 0 14px;
    color: #fff;
    font-size: 17px;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -0.25px;
    text-transform: uppercase;
}

.is-booking-form {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) 0.78fr 0.72fr;
    gap: 12px;
    align-items: end;
}

.is-booking-form__field {
    min-width: 0;
}

.is-booking-form__field label {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 7px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.2;
}

.is-booking-form__field label .bi {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.70);
}

.is-booking-form__control,
.is-booking-form__date {
    position: relative;
    width: 100%;
}

.is-booking-form__input,
.is-booking-form__select {
    width: 100%;
    height: 38px;
    padding: 0 12px;
    border: 1px solid var(--is-booking-border);
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.97);
    color: #1e3228;
    font-size: 14px;
    font-weight: 500;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.is-booking-form__input::placeholder {
    color: #90bba6;
}

.is-booking-form__input:focus,
.is-booking-form__select:focus {
    outline: none;
    border-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.16);
    background: #fff;
}

.is-booking-form__date .is-booking-form__input {
    padding-right: 42px;
}

.is-booking-form__calendar-button {
    position: absolute;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: rgba(101, 160, 131, 0.10);
    color: #4d9371;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease;
}

.is-booking-form__calendar-button:hover {
    background: rgba(101, 160, 131, 0.18);
    color: #40795d;
}

.is-booking-form__calendar-button .bi {
    margin: 0;
    font-size: 15px;
    line-height: 1;
}

.is-booking-form__select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 36px;
    background-image:
        linear-gradient(45deg, transparent 50%, #578f74 50%),
        linear-gradient(135deg, #578f74 50%, transparent 50%);
    background-position:
        calc(100% - 17px) calc(50% - 2px),
        calc(100% - 12px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.is-booking-form__submit {
    grid-column: 1 / -1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 42px;
    margin-top: 2px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 11px;
    background: linear-gradient(180deg, #72a98e 0%, #5d987b 100%);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.2px;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.is-booking-form__submit:hover,
.is-booking-form__submit:focus {
    color: #fff;
    background: linear-gradient(180deg, #77ac92 0%, #4b8f6e 100%);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
}

.is-booking-form__submit:active {
    transform: translateY(1px);
}

.datepicker-dropdown {
    border: 1px solid rgba(52, 98, 76, 0.12);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(38, 72, 56, 0.18);
    overflow: hidden;
}

.datepicker table tr td.active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover,
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover {
    background: #68a286 !important;
}

.datepicker table tr td.today,
.datepicker table tr td.today:hover {
    background: #f3f6f5 !important;
    color: #3f775c !important;
}

.datepicker-days .dow:nth-child(-n+5),
.datepicker-days td:nth-child(-n+5) a {
    color: #000;
}

.datepicker-days .dow:nth-child(6),
.datepicker-days td:nth-child(6) a {
    color: blue;
}

.datepicker-days .dow:nth-child(7),
.datepicker-days td:nth-child(7) a {
    color: red;
}

@media (max-width: 1199.98px) {
    .is-booking-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .is-booking-card {
        padding: 16px 14px 14px;
        border-radius: 14px;
    }

    .is-booking-card__title {
        font-size: 15px;
    }

    .is-booking-form {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .is-booking-form__submit {
        height: 40px;
        font-size: 15px;
    }
}


/* ---------------------------------------------------------
   Web-kamera — bočni modul
   Izvor: module_webcam.php
   --------------------------------------------------------- */
.infostara-webcam-card {
    --webcam-blue: #599176;
    --webcam-blue-dark: #2d5642;
    --webcam-ink: #1c2e25;
    --webcam-muted: #5e997c;
    --webcam-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--webcam-border);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
    font-family: Roboto, Arial, sans-serif;
}

.infostara-webcam-card *,
.infostara-webcam-card *::before,
.infostara-webcam-card *::after {
    box-sizing: border-box;
}

.infostara-webcam-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--webcam-blue-dark), var(--webcam-blue));
}

.infostara-webcam-card__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
}

.infostara-webcam-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 10px;
    background: rgba(255,255,255,.12);
}

.infostara-webcam-card__icon svg {
    width: 19px;
    height: 19px;
}

.infostara-webcam-card__title {
    margin: 0;
    font-size: 15px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.infostara-webcam-card__subtitle {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,.74);
    font-size: 11px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
}

.infostara-webcam-card__live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
}

.infostara-webcam-card__live::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff3b3b;
    box-shadow: 0 0 0 4px rgba(255,59,59,.18);
}

.infostara-webcam-card__preview {
    position: relative;
    display: block;
    min-height: 230px;
    overflow: hidden;
    background: #16241d;
    color: #ffffff;
    text-decoration: none;
}

.infostara-webcam-card__image {
    display: block;
    width: 100%;
    height: 245px;
    object-fit: cover;
    transition: transform .45s ease, opacity .45s ease;
}

.infostara-webcam-card__preview::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(23, 37, 30, .04) 30%, rgba(23, 37, 30, .86) 100%);
    pointer-events: none;
}

.infostara-webcam-card__content {
    position: absolute;
    z-index: 2;
    left: 17px;
    right: 17px;
    bottom: 16px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.infostara-webcam-card__camera-name {
    display: block;
    margin-bottom: 4px;
    font-size: 17px;
    line-height: 1.15;
    font-weight: 800;
    text-shadow: 0 2px 8px rgba(0,0,0,.35);
}

.infostara-webcam-card__description {
    display: block;
    color: rgba(255,255,255,.78);
    font-size: 11px;
    line-height: 1.35;
}

.infostara-webcam-card__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    gap: 7px;
    min-height: 38px;
    padding: 8px 13px;
    border-radius: 9px;
    background: #ffffff;
    color: var(--webcam-blue-dark);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    box-shadow: 0 8px 20px rgba(0,0,0,.18);
}

.infostara-webcam-card__button svg {
    width: 14px;
    height: 14px;
}

.infostara-webcam-card__preview:hover .infostara-webcam-card__image {
    transform: scale(1.035);
    opacity: .94;
}

.infostara-webcam-card__preview:hover .infostara-webcam-card__button {
    background: #f3f6f5;
}

.infostara-webcam-card__preview:focus-visible {
    outline: 3px solid rgba(89, 145, 118, .35);
    outline-offset: 3px;
}

@media (max-width: 575.98px) {
    .infostara-webcam-card {
        border-radius: 12px;
    }

    .infostara-webcam-card__header {
        padding: 12px 13px;
    }

    .infostara-webcam-card__preview {
        min-height: 210px;
    }

    .infostara-webcam-card__image {
        height: 220px;
    }

    .infostara-webcam-card__content {
        left: 14px;
        right: 14px;
        bottom: 14px;
        display: block;
    }

    .infostara-webcam-card__button {
        margin-top: 11px;
    }
}


/* ---------------------------------------------------------
   Najnoviji komentari
   Izvor: module_komentari.php
   --------------------------------------------------------- */
.comments-card {
    --comments-blue: #599176;
    --comments-blue-dark: #2d5642;
    --comments-blue-soft: #f3f6f5;
    --comments-ink: #1c2e25;
    --comments-muted: #5e997c;
    --comments-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    color: var(--comments-ink);
    background: #fff;
    border: 1px solid var(--comments-border);
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(38, 72, 56, .10);
}

.comments-card,
.comments-card * {
    box-sizing: border-box;
}

.comments-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    color: #fff;
    background:
        radial-gradient(circle at 85% -30%, rgba(255,255,255,.22), transparent 42%),
        linear-gradient(135deg, var(--comments-blue-dark), var(--comments-blue));
}

.comments-card__title-wrap {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.comments-card__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 12px;
    background: rgba(255,255,255,.16);
    font-size: 19px;
    line-height: 1;
}

.comments-card__title {
    margin: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .01em;
}

.comments-card__subtitle {
    margin-top: 3px;
    color: rgba(255,255,255,.78);
    font-size: 11px;
    line-height: 1.25;
}

.comments-card__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 34px;
    height: 28px;
    padding: 0 10px;
    color: #fff;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
}

.comments-card__body {
    padding: 8px 17px 10px;
}

.comments-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.comments-list__item {
    border-bottom: 1px solid #edefee;
}

.comments-list__item:last-child {
    border-bottom: 0;
}

.comments-list__link {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 13px 2px;
    color: inherit !important;
    text-decoration: none !important;
    transition: transform .18s ease;
}

.comments-list__link:hover {
    transform: translateX(2px);
}

.comments-list__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    margin-top: 1px;
    color: var(--comments-blue);
    background: var(--comments-blue-soft);
    border: 1px solid #e5eae8;
    border-radius: 11px;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
}

.comments-list__icon::after {
    content: '';
    position: absolute;
    right: 5px;
    bottom: -3px;
    width: 7px;
    height: 7px;
    background: var(--comments-blue-soft);
    border-right: 1px solid #e5eae8;
    border-bottom: 1px solid #e5eae8;
    transform: rotate(45deg);
}

.comments-list__content {
    min-width: 0;
    flex: 1 1 auto;
}

.comments-list__title {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #264838;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.comments-list__text {
    display: -webkit-box;
    overflow: hidden;
    margin-top: 4px;
    color: var(--comments-muted);
    font-size: 11px;
    line-height: 1.42;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.comments-list__arrow {
    display: inline-flex;
    align-items: center;
    align-self: center;
    justify-content: center;
    flex: 0 0 25px;
    width: 25px;
    height: 25px;
    color: #85b59e;
    background: #f8f9f9;
    border-radius: 50%;
    font-size: 16px;
    line-height: 1;
    transition: color .18s ease, background-color .18s ease;
}

.comments-list__link:hover .comments-list__title {
    color: var(--comments-blue);
}

.comments-list__link:hover .comments-list__arrow {
    color: #fff;
    background: var(--comments-blue);
}

.comments-card__empty {
    margin: 8px 0;
    padding: 14px;
    color: var(--comments-muted);
    background: #fafafa;
    border: 1px dashed #d5dfda;
    border-radius: 11px;
    font-size: 11px;
    line-height: 1.4;
    text-align: center;
}

@media (max-width: 430px) {
    .comments-card__header {
        padding: 14px;
    }

    .comments-card__body {
        padding-right: 14px;
        padding-left: 14px;
    }

    .comments-list__link {
        gap: 9px;
        padding: 12px 0;
    }
}


/* ---------------------------------------------------------
   YouTube modul
   Izvor: module_youtube.php
   --------------------------------------------------------- */
.infostara-youtube-card {
    --youtube-blue: #599176;
    --youtube-blue-dark: #2d5642;
    --youtube-ink: #1c2e25;
    --youtube-muted: #5e997c;
    --youtube-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--youtube-border);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
    font-family: Roboto, Arial, sans-serif;
}

.infostara-youtube-card *,
.infostara-youtube-card *::before,
.infostara-youtube-card *::after {
    box-sizing: border-box;
}

.infostara-youtube-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--youtube-blue-dark), var(--youtube-blue));
}

.infostara-youtube-card__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
}

.infostara-youtube-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 10px;
    background: rgba(255,255,255,.12);
}

.infostara-youtube-card__icon svg {
    width: 20px;
    height: 20px;
}

.infostara-youtube-card__title {
    margin: 0;
    font-size: 15px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.infostara-youtube-card__subtitle {
    display: block;
    margin-top: 3px;
    color: rgba(255,255,255,.74);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.infostara-youtube-card__live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 9px;
    border-radius: 999px;
    background: #ff2f3d;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .05em;
    box-shadow: 0 6px 16px rgba(255,47,61,.28);
}

.infostara-youtube-card__live::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(255,255,255,.18);
}

.infostara-youtube-card__video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #13201a;
}

.infostara-youtube-card__video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.infostara-youtube-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 16px 14px;
    border-top: 1px solid #f2f3f3;
    background: linear-gradient(180deg, #ffffff, #fbfcfc);
}

.infostara-youtube-card__text {
    min-width: 0;
}

.infostara-youtube-card__name {
    display: block;
    color: var(--youtube-ink);
    font-size: 13px;
    line-height: 1.25;
    font-weight: 800;
}

.infostara-youtube-card__description {
    display: block;
    margin-top: 3px;
    color: var(--youtube-muted);
    font-size: 11px;
    line-height: 1.35;
}

.infostara-youtube-card__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    gap: 7px;
    min-height: 37px;
    padding: 8px 12px;
    border-radius: 9px;
    background: #f3f6f5;
    color: var(--youtube-blue-dark);
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .2s ease, transform .2s ease;
}

.infostara-youtube-card__link svg {
    width: 14px;
    height: 14px;
}

.infostara-youtube-card__link:hover {
    background: #ebefed;
    color: var(--youtube-blue-dark);
    transform: translateY(-1px);
}

.infostara-youtube-card__link:focus-visible {
    outline: 3px solid rgba(89, 145, 118, .28);
    outline-offset: 3px;
}

@media (max-width: 575.98px) {
    .infostara-youtube-card {
        border-radius: 12px;
    }

    .infostara-youtube-card__header {
        padding: 12px 13px;
    }

    .infostara-youtube-card__footer {
        display: block;
        padding: 12px 13px 13px;
    }

    .infostara-youtube-card__link {
        margin-top: 11px;
    }
}


/* ---------------------------------------------------------
   Footer
   Izvor: module_footer.php
   --------------------------------------------------------- */
.infostara-footer {
    --footer-blue: #599176;
    --footer-blue-dark: #20342a;
    --footer-blue-mid: #2d5642;
    --footer-text: #ffffff;
    --footer-muted: rgba(255, 255, 255, 0.68);
    --footer-border: rgba(255, 255, 255, 0.12);
    overflow: hidden;
    color: var(--footer-text);
    background:
        radial-gradient(circle at 85% 15%, rgba(89, 145, 118, 0.34), transparent 35%),
        linear-gradient(135deg, var(--footer-blue-dark), var(--footer-blue-mid));
    border-radius: 16px 16px 0 0;
    box-shadow: 0 -12px 32px rgba(32, 52, 42, 0.12);
    font-family: Roboto, Arial, sans-serif;
    text-align: left;
}

.infostara-footer *,
.infostara-footer *::before,
.infostara-footer *::after {
    box-sizing: border-box;
}

.infostara-footer__main {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(180px, 0.7fr) minmax(220px, 0.85fr);
    gap: 38px;
    padding: 34px 38px 30px;
}

.infostara-footer__brand-link {
    display: inline-flex;
    align-items: baseline;
    color: #ffffff;
    text-decoration: none;
}

.infostara-footer__brand-main {
    font-size: 33px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -1.6px;
}

.infostara-footer__brand-domain {
    margin-left: 3px;
    color: #96bfab;
    font-size: 18px;
    font-weight: 800;
}

.infostara-footer__tagline {
    max-width: 410px;
    margin: 13px 0 0;
    color: var(--footer-muted);
    font-size: 13px;
    line-height: 1.65;
}

.infostara-footer__section-title {
    margin: 2px 0 14px;
    color: #ffffff;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.infostara-footer__links {
    display: grid;
    gap: 9px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.infostara-footer__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--footer-muted);
    font-size: 12px;
    line-height: 1.4;
    text-decoration: none;
    transition: color .2s ease, transform .2s ease;
}

.infostara-footer__link::before {
    content: "";
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #96bfab;
}

.infostara-footer__link:hover {
    color: #ffffff;
    transform: translateX(2px);
}

.infostara-footer__contact-card {
    padding: 17px 18px;
    border: 1px solid var(--footer-border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(5px);
}

.infostara-footer__contact-title {
    display: block;
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
}

.infostara-footer__contact-text {
    display: block;
    color: var(--footer-muted);
    font-size: 12px;
    line-height: 1.55;
}

.infostara-footer__contact-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    margin-top: 14px;
    padding: 9px 14px;
    border-radius: 9px;
    background: #ffffff;
    color: var(--footer-blue-dark);
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16);
    transition: background-color .2s ease, transform .2s ease;
}

.infostara-footer__contact-button:hover {
    color: var(--footer-blue-dark);
    background: #f3f6f5;
    transform: translateY(-1px);
}

.infostara-footer__contact-button svg {
    width: 14px;
    height: 14px;
}

.infostara-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 16px 38px;
    border-top: 1px solid var(--footer-border);
    background: rgba(0, 0, 0, 0.12);
}

.infostara-footer__copyright,
.infostara-footer__notice {
    margin: 0;
    color: var(--footer-muted);
    font-size: 11px;
    line-height: 1.5;
}

.infostara-footer__copyright strong {
    color: #ffffff;
}

.infostara-footer__notice {
    max-width: 620px;
    text-align: right;
}

.infostara-footer a:focus-visible {
    outline: 3px solid rgba(150, 191, 171, 0.38);
    outline-offset: 3px;
}

@media (max-width: 991.98px) {
    .infostara-footer__main {
        grid-template-columns: 1.2fr 0.8fr;
    }

    .infostara-footer__contact {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767.98px) {
    .infostara-footer {
        border-radius: 12px 12px 0 0;
    }

    .infostara-footer__main {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 27px 22px 24px;
    }

    .infostara-footer__contact {
        grid-column: auto;
    }

    .infostara-footer__bottom {
        display: block;
        padding: 15px 22px;
    }

    .infostara-footer__notice {
        margin-top: 7px;
        text-align: left;
    }

    .infostara-footer__brand-main {
        font-size: 29px;
    }
}


/* ---------------------------------------------------------
   Prikaz vesti
   Izvor: module_vest.php
   --------------------------------------------------------- */
.is-vest {
    --vest-blue-950: #20342a;
    --vest-blue-900: #2d5642;
    --vest-blue-700: #599176;
    --vest-blue-100: #f3f6f5;
    --vest-page: #f6f8f7;
    --vest-card: #ffffff;
    --vest-text: #1c2e25;
    --vest-muted: #5e997c;
    --vest-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--vest-border);
    border-radius: 15px;
    background: var(--vest-card);
    box-shadow: 0 14px 34px rgba(45, 86, 66, 0.11);
    color: var(--vest-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-vest *,
.is-vest *::before,
.is-vest *::after {
    box-sizing: border-box;
}

.is-vest a {
    text-decoration: none;
}

.is-vest__header {
    position: relative;
    overflow: hidden;
    padding: 25px 26px 22px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% 8%, rgba(153, 192, 173, .34), transparent 34%),
        linear-gradient(135deg, var(--vest-blue-950), var(--vest-blue-700));
}

.is-vest__header::after {
    content: "";
    position: absolute;
    right: -48px;
    bottom: -72px;
    width: 230px;
    height: 150px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
    transform: rotate(-15deg);
    pointer-events: none;
}

.is-vest__eyebrow {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.is-vest__category,
.is-vest__breadcrumb-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgba(255,255,255,.82);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.is-vest__category::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.14);
}

.is-vest__breadcrumb-separator {
    color: rgba(255,255,255,.38);
    font-size: 10px;
}

.is-vest__title {
    position: relative;
    z-index: 1;
    max-width: 930px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(22px, 4vw, 32px);
    line-height: 1.05;
    font-weight: 850;
    letter-spacing: -1.15px;
    text-wrap: balance;
}

.is-vest__meta {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-top: 18px;
}

.is-vest__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 31px;
    padding: 6px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.10);
    color: rgba(255,255,255,.88);
    font-size: 10.5px;
    line-height: 1;
    font-weight: 700;
    backdrop-filter: blur(5px);
}

.is-vest__meta-item .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #ffffff;
    font-size: 13px;
}

.is-vest__meta-item:hover {
    color: #ffffff;
    background: rgba(255,255,255,.17);
}

.is-vest__sharebar {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 12px 18px;
    border-bottom: 1px solid #eef0ef;
    background: linear-gradient(180deg, #ffffff, #fbfcfc);
}

.is-vest__share-label {
    color: var(--vest-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.is-vest__share-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}

.is-vest__share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #e6e9e8;
    border-radius: 10px;
    background: #ffffff;
    color: var(--vest-blue-900);
    transition: color .2s ease, background-color .2s ease, transform .2s ease;
}

.is-vest__share-link .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 15px;
}

.is-vest__share-link:hover {
    color: #ffffff;
    background: var(--vest-blue-700);
    transform: translateY(-1px);
}

.is-vest__copy-popup {
    position: absolute;
    z-index: 20;
    right: 18px;
    top: calc(100% - 4px);
    display: none;
    padding: 7px 10px;
    border-radius: 8px;
    background: var(--vest-blue-900);
    color: #ffffff;
    font-size: 10px;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(32, 52, 42, .22);
}

.is-vest__notice {
    margin: 16px 18px 0;
    padding: 14px 16px;
    border: 1px solid #d7e1dc;
    border-radius: 11px;
    background: #f5f7f6;
    color: #386a52;
    font-size: 12px;
    line-height: 1.5;
}

.is-vest__body {
    padding: 23px 25px 27px;
    color: #2c5441;
    font-size: 14px;
    line-height: 1.72;
    overflow-wrap: anywhere;
}

.is-vest--accommodation .is-vest__body {
    padding: 18px;
}

.is-vest__body > :first-child {
    margin-top: 0;
}

.is-vest__body > :last-child {
    margin-bottom: 0;
}

.is-vest__body p {
    margin: 0 0 1.15em;
}

.is-vest__body h2,
.is-vest__body h3,
.is-vest__body h4,
.is-vest__body h5 {
    margin-top: 1.5em;
    margin-bottom: .65em;
    color: var(--vest-text);
    line-height: 1.2;
    font-weight: 800;
}

.is-vest__body h2 {
    font-size: 24px;
}

.is-vest__body h3 {
    font-size: 20px;
}

.is-vest__body h4 {
    font-size: 17px;
}

.is-vest__body a {
    color: var(--vest-blue-700);
    font-weight: 650;
    text-decoration: underline;
    text-decoration-color: rgba(89, 145, 118, .28);
    text-underline-offset: 3px;
}

.is-vest__body a:hover {
    color: var(--vest-blue-900);
    text-decoration-color: currentColor;
}

.is-vest__body img {
    max-width: 100%;
    height: auto;
}

.is-vest__body .mtImgBoxStyle1 {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
}

.is-vest__body .mtImgBoxStyle1 img {
    display: block;
    width: 100%;
    border-radius: 13px;
    box-shadow: 0 10px 26px rgba(45, 86, 66, .12);
}

.is-vest__body .mtCapStyle {
    margin-top: 0;
    padding: 9px 11px;
    border-radius: 0 0 10px 10px;
    background: #f3f4f4;
    color: var(--vest-muted);
    font-size: 10px;
    line-height: 1.45;
    text-align: center;
}

.is-vest__body iframe,
.is-vest__body video {
    display: block;
    max-width: 100%;
    border: 0;
    border-radius: 13px;
    box-shadow: 0 10px 26px rgba(45, 86, 66, .10);
}

.is-vest__body table {
    max-width: 100%;
}

.is-vest__body blockquote {
    margin: 20px 0;
    padding: 15px 17px;
    border-left: 4px solid var(--vest-blue-700);
    border-radius: 0 10px 10px 0;
    background: #f7f8f8;
    color: #3c7258;
}

.is-vest__body hr {
    margin: 24px 0;
    border: 0;
    border-top: 1px solid #e7ebe9;
    opacity: 1;
}

.is-vest__body ul,
.is-vest__body ol {
    margin-bottom: 1.15em;
    padding-left: 1.35rem;
}

.is-vest__body li + li {
    margin-top: .35em;
}

.is-vest__body .map,
.is-vest__body iframe[src*="maps.google"] {
    width: 100% !important;
    min-height: 360px;
    margin-top: 18px;
}

.is-vest__special-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin-bottom: 16px;
    padding: 9px 14px;
    border-radius: 9px;
    background: var(--vest-blue-700);
    color: #ffffff !important;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none !important;
    text-transform: uppercase;
}

@media (max-width: 767.98px) {
    .is-vest {
        border-radius: 12px;
    }

    .is-vest__header {
        padding: 20px 17px 18px;
    }

    .is-vest__title {
        font-size: clamp(25px, 8vw, 34px);
        letter-spacing: -.75px;
    }

    .is-vest__meta {
        margin-top: 15px;
    }

    .is-vest__sharebar {
        display: block;
        padding: 12px 14px;
    }

    .is-vest__share-list {
        justify-content: flex-start;
        margin-top: 9px;
    }

    .is-vest__body {
        padding: 18px 16px 21px;
        font-size: 13.5px;
    }

    .is-vest--accommodation .is-vest__body {
        padding: 12px;
    }
}


/* ---------------------------------------------------------
   Komentari unutar vesti
   Izvor: module_vest_komentari.php
   --------------------------------------------------------- */
.is-article-comments {
    --comments-blue-900: #2d5642;
    --comments-blue-700: #599176;
    --comments-blue-100: #f3f6f5;
    --comments-page: #f6f8f7;
    --comments-card: #ffffff;
    --comments-text: #1c2e25;
    --comments-muted: #5e997c;
    --comments-border: #e5e8e7;
    width: 100%;
    color: var(--comments-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-article-comments *,
.is-article-comments *::before,
.is-article-comments *::after {
    box-sizing: border-box;
}

.is-article-comments a {
    text-decoration: none;
}

.is-article-comments__panel {
    overflow: hidden;
    border: 1px solid var(--comments-border);
    border-radius: 14px;
    background: var(--comments-card);
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
}

.is-article-comments__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 68px;
    padding: 14px 18px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--comments-blue-900), var(--comments-blue-700));
}

.is-article-comments__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.is-article-comments__header-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 11px;
    background: rgba(255,255,255,.12);
}

.is-article-comments__header-icon svg {
    width: 21px;
    height: 21px;
}

.is-article-comments__title {
    margin: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.is-article-comments__subtitle {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.76);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.is-article-comments__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 38px;
    height: 38px;
    padding: 0 11px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 999px;
    background: rgba(255,255,255,.13);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
}

.is-article-comments__sort {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 12px 15px;
    overflow-x: auto;
    border-bottom: 1px solid #eff1f0;
    background: #fbfcfc;
    scrollbar-width: thin;
}

.is-article-comments__sort-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid #e4e8e6;
    border-radius: 9px;
    background: #ffffff;
    color: var(--comments-blue-900);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    transition: background-color .2s ease, border-color .2s ease;
}

.is-article-comments__sort-link:hover,
.is-article-comments__sort-link.is-active {
    border-color: var(--comments-blue-700);
    background: var(--comments-blue-700);
    color: #ffffff;
}

.is-article-comments__notice {
    margin: 15px;
    padding: 13px 15px;
    border: 1px solid #d8e1dd;
    border-radius: 10px;
    background: #f6f7f7;
    color: #386a52;
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
}

.is-article-comments__list {
    padding: 0 16px;
}

.is-article-comments__empty {
    padding: 28px 18px;
    color: var(--comments-muted);
    font-size: 13px;
    text-align: center;
}

.is-article-comments__item {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    padding: 17px 0;
    border-bottom: 1px solid #eef0ef;
}

.is-article-comments__item:last-child {
    border-bottom: 0;
}

.is-article-comments__avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid #e0e5e3;
    border-radius: 12px;
    background: var(--comments-blue-100);
    color: var(--comments-blue-700);
    font-size: 17px;
}

.is-article-comments__content {
    min-width: 0;
}

.is-article-comments__meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.is-article-comments__author {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 7px;
    color: var(--comments-text);
    font-size: 13px;
    font-weight: 800;
}

.is-article-comments__author-name {
    overflow-wrap: anywhere;
}

.is-article-comments__device {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #81b29a;
}

.is-article-comments__device .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 14px;
}

.is-article-comments__date {
    flex: 0 0 auto;
    color: var(--comments-muted);
    font-size: 10px;
    line-height: 1.35;
    text-align: right;
}

.is-article-comments__identity {
    display: inline-flex;
    margin-top: 5px;
    padding: 4px 7px;
    border-radius: 999px;
    background: #f5f6f6;
    color: #589075;
    font-size: 9px;
    font-weight: 700;
}

.is-article-comments__body {
    margin-top: 10px;
    color: #305a46;
    font-size: 13px;
    line-height: 1.58;
    overflow-wrap: anywhere;
}

.is-article-comments__body p {
    margin: 0 0 8px;
}

.is-article-comments__body p:last-child {
    margin-bottom: 0;
}

.is-article-comments__inline-link {
    color: var(--comments-blue-700);
    font-weight: 700;
}

.is-article-comments__actions {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 13px;
}

.is-article-comments__vote {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 32px;
    padding: 6px 10px;
    border: 1px solid #e6e9e8;
    border-radius: 8px;
    background: #ffffff;
    font-size: 11px;
    font-weight: 800;
    transition: transform .2s ease, background-color .2s ease;
}

.is-article-comments__vote .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    font-size: 14px;
}

.is-article-comments__vote--up {
    color: #14804a;
}

.is-article-comments__vote--down {
    color: #c53745;
}

.is-article-comments__vote:hover {
    transform: translateY(-1px);
    background: #fbfbfb;
}

.is-article-comments__pagination {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 16px 16px;
    border-top: 1px solid #eff1f0;
}

.is-article-comments__page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 13px;
    border-radius: 9px;
    background: var(--comments-blue-100);
    color: var(--comments-blue-900);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.is-article-comments__page-link:hover {
    color: #ffffff;
    background: var(--comments-blue-700);
}

.is-article-comments__form-panel {
    margin-top: 15px;
}

.is-article-comments__form-body {
    padding: 18px;
}

.is-article-comments__field {
    margin-bottom: 15px;
}

.is-article-comments__label {
    display: block;
    margin-bottom: 6px;
    color: var(--comments-text);
    font-size: 12px;
    font-weight: 800;
}

.is-article-comments__control {
    display: block;
    width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid #e0e5e3;
    border-radius: 9px;
    background: #ffffff;
    color: var(--comments-text);
    font: inherit;
    font-size: 13px;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}

textarea.is-article-comments__control {
    min-height: 130px;
    resize: vertical;
}

.is-article-comments__control:focus {
    border-color: var(--comments-blue-700);
    box-shadow: 0 0 0 4px rgba(89, 145, 118, .12);
}

.is-article-comments__rules {
    margin: 2px 0 16px;
    padding: 12px 13px;
    border-radius: 9px;
    background: #f8f9f9;
    color: var(--comments-muted);
    font-size: 10.5px;
    line-height: 1.55;
}

.is-article-comments__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 45px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--comments-blue-700), #66a184);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    box-shadow: 0 8px 18px rgba(89, 145, 118, .24);
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

.is-article-comments__submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(89, 145, 118, .30);
}

@media (max-width: 575.98px) {
    .is-article-comments__panel {
        border-radius: 12px;
    }

    .is-article-comments__header {
        min-height: 62px;
        padding: 12px 13px;
    }

    .is-article-comments__item {
        grid-template-columns: 36px minmax(0, 1fr);
        gap: 10px;
    }

    .is-article-comments__avatar {
        width: 36px;
        height: 36px;
        border-radius: 10px;
    }

    .is-article-comments__meta {
        display: block;
    }

    .is-article-comments__date {
        margin-top: 4px;
        text-align: left;
    }

    .is-article-comments__form-body {
        padding: 15px;
    }
}


/* ---------------------------------------------------------
   Vremenska prognoza — detaljni include
   Izvor: print_v2.php
   --------------------------------------------------------- */
.is-vest-weather {
    --weather-blue-950: #20342a;
    --weather-blue-900: #2d5642;
    --weather-blue-700: #599176;
    --weather-blue-100: #f3f6f5;
    --weather-card: #ffffff;
    --weather-text: #1c2e25;
    --weather-muted: #5e997c;
    --weather-border: #e5e8e7;
    display: grid;
    gap: 16px;
    width: 100%;
    margin: 20px 0;
    color: var(--weather-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-vest-weather *,
.is-vest-weather *::before,
.is-vest-weather *::after {
    box-sizing: border-box;
}

.is-vest-weather a {
    text-decoration: none;
}

.is-vest-weather__intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 72px;
    padding: 15px 18px;
    overflow: hidden;
    border: 1px solid var(--weather-border);
    border-radius: 14px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% 10%, rgba(154, 193, 174, .34), transparent 34%),
        linear-gradient(135deg, var(--weather-blue-950), var(--weather-blue-700));
    box-shadow: 0 12px 30px rgba(45, 86, 66, .12);
}

.is-vest-weather__intro-heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
    text-align: left !important;
}

.is-vest-weather__intro-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255,255,255,.27);
    border-radius: 12px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
}

.is-vest-weather__intro-icon svg {
    width: 23px;
    height: 23px;
}

.is-vest__body .is-vest-weather__intro-title,
.is-vest-weather__intro-title {
    display: block;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
    letter-spacing: .02em;
    text-align: left !important;
    text-transform: uppercase;
}

.is-vest__body .is-vest-weather__intro-subtitle,
.is-vest-weather__intro-subtitle {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.76) !important;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: 0;
    text-align: left !important;
    text-transform: none;
}

.is-vest-weather__intro-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-vest-weather__intro-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.is-vest-weather__current {
    overflow: hidden;
    border: 1px solid var(--weather-border);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, .10);
}

.is-vest-weather__current-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 92px;
    padding: 16px 20px;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% 10%, rgba(154, 193, 174, .34), transparent 34%),
        linear-gradient(135deg, var(--weather-blue-950), var(--weather-blue-700));
}

.is-vest-weather__current-header::after {
    content: "";
    position: absolute;
    right: -45px;
    bottom: -70px;
    width: 220px;
    height: 145px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
    transform: rotate(-14deg);
    pointer-events: none;
}

.is-vest-weather__current-heading {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 13px;
    text-align: left !important;
}

.is-vest-weather__current-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 13px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}

.is-vest-weather__current-icon svg {
    width: 25px;
    height: 25px;
}

.is-vest__body .is-vest-weather__current-title,
.is-vest-weather__current-title {
    display: block;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 19px !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
    letter-spacing: .015em;
    text-align: left !important;
    text-transform: uppercase;
}

.is-vest__body .is-vest-weather__current-subtitle,
.is-vest-weather__current-subtitle {
    display: block;
    margin-top: 6px;
    color: rgba(255,255,255,.78) !important;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 550;
    letter-spacing: 0;
    text-align: left !important;
    text-transform: none;
}

.is-vest-weather__current-meta {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-end;
    gap: 7px;
}

.is-vest-weather__current-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 999px;
    background: rgba(255,255,255,.13);
    color: #ffffff;
    font-size: 10px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-vest-weather__current-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.is-vest-weather__updated {
    color: rgba(255,255,255,.78);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 700;
    white-space: nowrap;
}

.is-vest-weather__current-body {
    display: grid;
    grid-template-columns: minmax(245px, .82fr) minmax(0, 1.9fr);
    gap: 0;
}

.is-vest-weather__hero {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    padding: 25px 20px;
    border-right: 1px solid #eef0ef;
    background:
        radial-gradient(circle at 50% 18%, #f6f7f7, transparent 46%),
        linear-gradient(180deg, #ffffff, #fbfcfc);
    text-align: center;
}

.is-vest-weather__weather-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 110px;
}

.is-vest-weather__weather-icon img {
    display: block;
    width: min(118px, 100%);
    height: auto;
    filter: drop-shadow(0 10px 20px rgba(45, 86, 66, .14));
}

.is-vest-weather__temperature {
    margin-top: 10px;
    color: #e02132;
    font-size: clamp(34px, 7vw, 58px);
    line-height: .9;
    font-weight: 900;
    letter-spacing: -4px;
}

.is-vest-weather__condition {
    margin-top: 12px;
    color: var(--weather-text);
    font-size: 16px;
    line-height: 1.25;
    font-weight: 850;
}

.is-vest-weather__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.is-vest-weather__metric {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 80px;
    padding: 14px;
    border-right: 1px solid #f0f3f2;
    border-bottom: 1px solid #f0f3f2;
    background: #ffffff;
    text-align: center;
}

.is-vest-weather__metric:nth-child(3n) {
    border-right: 0;
}

.is-vest-weather__metric-label {
    display: block;
    width: 100%;
    color: var(--weather-muted);
    font-size: 10px;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: .035em;
    text-align: center;
    text-transform: uppercase;
}

.is-vest-weather__metric-value {
    display: block;
    width: 100%;
    max-width: 180px;
    margin-top: 8px;
    color: var(--weather-text);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 850;
    text-align: center;
    overflow-wrap: anywhere;
}

.is-vest-weather__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 15px;
    border-top: 1px solid #eef0ef;
    background: #fbfcfc;
}

.is-vest-weather__action-text {
    color: var(--weather-muted);
    font-size: 10px;
    line-height: 1.4;
}

.is-vest-weather__radar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex: 0 0 auto;
    min-height: 36px;
    padding: 8px 12px;
    border-radius: 9px;
    background: var(--weather-blue-100);
    color: var(--weather-blue-900) !important;
    font-size: 9.5px;
    font-weight: 850;
    text-transform: uppercase;
    transition: background-color .2s ease, transform .2s ease;
}

.is-vest-weather__radar:hover {
    background: #ebefed;
    transform: translateY(-1px);
}

.is-vest-weather__guide {
    overflow: hidden;
    border: 1px solid var(--weather-border);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, .08);
}

.is-vest-weather__guide-header {
    padding: 13px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--weather-blue-900), var(--weather-blue-700));
}

.is-vest__body .is-vest-weather__guide-title,
.is-vest-weather__guide-title {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
    text-align: left !important;
    text-transform: uppercase;
}

.is-vest-weather__guide-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.is-vest-weather__guide-item {
    min-width: 0;
    padding: 15px;
    border-right: 1px solid #f0f3f2;
    background: #ffffff;
}

.is-vest-weather__guide-item:last-child {
    border-right: 0;
}

.is-vest-weather__guide-threshold {
    display: block;
    font-size: 11px;
    font-weight: 850;
}

.is-vest-weather__guide-text {
    display: block;
    margin-top: 7px;
    color: var(--weather-muted);
    font-size: 10px;
    line-height: 1.5;
}

.is-vest-weather__guide-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 5px;
    border-radius: 50%;
}

.is-vest-weather__guide-dot--bad {
    background: #dc3545;
}

.is-vest-weather__guide-dot--borderline {
    background: #d7bd43;
}

.is-vest-weather__guide-dot--stable {
    background: #9a6b00;
}

.is-vest-weather__guide-dot--ideal {
    background: #198754;
}

@media (max-width: 767.98px) {
    .is-vest-weather__current-header {
        align-items: flex-start;
        flex-wrap: wrap;
        min-height: 86px;
        padding: 15px 16px;
    }

    .is-vest-weather__current-meta {
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding-left: 59px;
    }

    .is-vest-weather__current-body {
        grid-template-columns: 1fr;
    }

    .is-vest-weather__hero {
        min-height: 285px;
        border-right: 0;
        border-bottom: 1px solid #eef0ef;
    }

    .is-vest-weather__metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .is-vest-weather__metric:nth-child(3n) {
        border-right: 1px solid #f0f3f2;
    }

    .is-vest-weather__metric:nth-child(2n) {
        border-right: 0;
    }

    .is-vest-weather__guide-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .is-vest-weather__guide-item:nth-child(2n) {
        border-right: 0;
    }

    .is-vest-weather__guide-item:nth-child(-n+2) {
        border-bottom: 1px solid #f0f3f2;
    }
}

@media (max-width: 575.98px) {
    .is-vest-weather {
        gap: 14px;
        margin: 16px 0;
    }

    .is-vest-weather__intro,
    .is-vest-weather__current,
    .is-vest-weather__guide {
        border-radius: 12px;
    }

    .is-vest-weather__intro {
        min-height: 64px;
        padding: 13px;
    }

    .is-vest-weather__intro-status {
        display: none;
    }

    .is-vest-weather__current-header {
        padding: 13px;
    }

    .is-vest-weather__current-heading {
        gap: 10px;
    }

    .is-vest-weather__current-icon {
        flex-basis: 40px;
        width: 40px;
        height: 40px;
    }

    .is-vest__body .is-vest-weather__current-title,
    .is-vest-weather__current-title {
        font-size: 16px !important;
    }

    .is-vest-weather__current-meta {
        padding-left: 50px;
    }

    .is-vest-weather__hero {
        min-height: 270px;
        padding: 20px 17px;
    }

    .is-vest-weather__weather-icon {
        min-height: 100px;
    }

    .is-vest-weather__temperature {
        font-size: 58px;
    }

    .is-vest-weather__metrics {
        grid-template-columns: 1fr;
    }

    .is-vest-weather__metric,
    .is-vest-weather__metric:nth-child(3n),
    .is-vest-weather__metric:nth-child(2n) {
        min-height: auto;
        border-right: 0;
    }

    .is-vest-weather__actions {
        display: block;
    }

    .is-vest-weather__radar {
        margin-top: 9px;
    }

    .is-vest-weather__guide-grid {
        grid-template-columns: 1fr;
    }

    .is-vest-weather__guide-item,
    .is-vest-weather__guide-item:nth-child(2n),
    .is-vest-weather__guide-item:nth-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid #f0f3f2;
    }

    .is-vest-weather__guide-item:last-child {
        border-bottom: 0;
    }
}


/* ---------------------------------------------------------
   YR.NO detaljna prognoza
   Izvor: vremexml-yrno-25.php
   --------------------------------------------------------- */
.is-weather-forecast {
    --wf-blue-950: #20342a;
    --wf-blue-900: #2d5642;
    --wf-blue-700: #599176;
    --wf-blue-100: #f3f6f5;
    --wf-card: #ffffff;
    --wf-text: #1c2e25;
    --wf-muted: #5e997c;
    --wf-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--wf-border);
    border-radius: 14px;
    background: var(--wf-card);
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-weather-forecast *,
.is-weather-forecast *::before,
.is-weather-forecast *::after {
    box-sizing: border-box;
}

.is-weather-forecast__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 66px;
    padding: 14px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--wf-blue-900), var(--wf-blue-700));
}

.is-weather-forecast__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
    text-align: left !important;
}

.is-weather-forecast__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 11px;
    background: rgba(255,255,255,.12);
}

.is-weather-forecast__icon svg {
    width: 21px;
    height: 21px;
}

.is-vest__body .is-weather-forecast__title,
.is-weather-forecast__title {
    display: block;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
    letter-spacing: .02em;
    text-align: left !important;
    text-transform: uppercase;
}

.is-vest__body .is-weather-forecast__subtitle,
.is-weather-forecast__subtitle {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.76) !important;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 500;
    letter-spacing: 0;
    text-align: left !important;
    text-transform: none;
}

.is-weather-forecast__source {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-weather-forecast__source::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.is-weather-forecast__tabs {
    display: flex;
    gap: 7px;
    padding: 11px 12px;
    overflow-x: auto;
    border-bottom: 1px solid #eef0ef;
    background: #fbfcfc;
    scrollbar-width: thin;
}

.is-weather-forecast__tab {
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    min-height: 48px;
    padding: 6px 9px;
    border: 1px solid #e3e6e5;
    border-radius: 10px;
    background: #ffffff;
    color: var(--wf-blue-900);
    font-family: inherit;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.is-weather-forecast__tab:hover {
    transform: translateY(-1px);
    background: var(--wf-blue-100);
}

.is-weather-forecast__tab.is-active {
    border-color: var(--wf-blue-700);
    background: var(--wf-blue-700);
    color: #ffffff;
    box-shadow: 0 7px 16px rgba(89, 145, 118, .20);
}

.is-weather-forecast__tab-day {
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-weather-forecast__tab-date {
    margin-top: 4px;
    font-size: 14px;
    line-height: 1;
    font-weight: 850;
}

.is-weather-forecast__body {
    padding: 13px;
    background: linear-gradient(180deg, #ffffff, #fbfcfc);
}

.is-weather-forecast__pane[hidden] {
    display: none !important;
}

.is-weather-forecast__chart {
    width: 100%;
    height: 400px;
    margin-bottom: 13px;
    overflow: hidden;
    border: 1px solid #e7ebe9;
    border-radius: 11px;
    background: #ffffff;
}

.is-weather-forecast__day {
    margin-top: 12px;
    overflow: hidden;
    border: 1px solid #e7ebe9;
    border-radius: 11px;
    background: #ffffff;
}

.is-weather-forecast__day:first-child {
    margin-top: 0;
}

.is-vest__body .is-weather-forecast__day-title,
.is-weather-forecast__day-title {
    margin: 0 !important;
    padding: 10px 12px;
    border-bottom: 1px solid #edefee;
    background: var(--wf-blue-100);
    color: var(--wf-blue-900) !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
    text-align: left !important;
    text-transform: uppercase;
}

.is-weather-forecast__table {
    width: 100%;
}

.is-weather-forecast__row {
    display: grid;
    grid-template-columns: .75fr 1fr .72fr 1.2fr 1fr;
    min-width: 580px;
    border-bottom: 1px solid #f0f3f2;
}

.is-weather-forecast__row:last-child {
    border-bottom: 0;
}

.is-weather-forecast__row--head {
    background: #f9fafa;
    color: #458365;
}

.is-weather-forecast__cell {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 49px;
    padding: 7px 5px;
    border-right: 1px solid #f0f3f2;
    font-size: 10px;
    line-height: 1.25;
    text-align: center;
}

.is-weather-forecast__cell:last-child {
    border-right: 0;
}

.is-weather-forecast__row--head .is-weather-forecast__cell {
    min-height: 38px;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.is-weather-forecast__cell img {
    display: block;
    width: 38px;
    height: 38px;
    object-fit: contain;
}

.is-weather-forecast__primary {
    display: block;
    color: var(--wf-text);
    font-size: 11px;
    font-weight: 800;
}

.is-weather-forecast__secondary {
    display: block;
    margin-top: 2px;
    color: var(--wf-muted);
    font-size: 9px;
    font-weight: 600;
}

.is-weather-forecast__temp-positive {
    color: #e02132;
}

.is-weather-forecast__temp-negative {
    color: #599176;
}

.is-weather-forecast__rain-positive {
    color: #599176;
}

.is-weather-forecast__wetbulb--bad {
    color: #dc3545;
}

.is-weather-forecast__wetbulb--borderline {
    color: #c6a627;
}

.is-weather-forecast__wetbulb--stable {
    color: #9a6b00;
}

.is-weather-forecast__wetbulb--ideal {
    color: #198754;
}

.is-weather-forecast__empty {
    padding: 24px 16px;
    color: var(--wf-muted);
    font-size: 12px;
    text-align: center;
}

@media (max-width: 575.98px) {
    .is-weather-forecast {
        border-radius: 12px;
    }

    .is-weather-forecast__header {
        min-height: 61px;
        padding: 12px 13px;
    }

    .is-weather-forecast__source {
        display: none;
    }

    .is-weather-forecast__body {
        padding: 10px;
    }

    .is-weather-forecast__chart {
        height: 280px;
    }

    .is-weather-forecast__table {
        overflow-x: auto;
    }
}


/* ---------------------------------------------------------
   Ski-info — detaljni include
   Izvor: print_i2.php
   --------------------------------------------------------- */
/* Plavi kružić za staze sa veštačkim osnežavanjem */
.is-vest-skiinfo .staza-badge {
    position: relative;
}
.is-vest-skiinfo .staza-badge.artificial-snow::after {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    width: 6px;
    height: 6px;
    background-color: #468667;
    border-radius: 50%;
}

/* Sekcijski naslov */
.is-vest-skiinfo .section-header {
    background: #ebedec;
    color: #376951;
    letter-spacing: -0.5px;
    font-size: 1rem;
    text-align: center;
    text-transform: uppercase;
    padding: .7rem 1rem;
    margin-top: 0rem;
    margin-bottom: 0;
    border-radius: 0;
    font-weight: 600;
}
.is-vest-skiinfo .section-header h2 {
    all: unset;
    font-size: 1rem;
    font-weight: 600;
}
.is-vest-skiinfo .section-header .sub {
    display: block;
    font-size: .7rem;
    font-weight: 400;
    text-transform: none;
    margin-top: 3px;
    color: #599075;
}
.is-vest-skiinfo .section-header .sub-danger {
    color: #dc3545;
}

/* Lista žičara */
.is-vest-skiinfo .zicara-list {
    margin-bottom: 1rem;
    background: transparent;
}
.is-vest-skiinfo .zicara-item {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .7rem .9rem;
    background: transparent;
    transition: background .12s ease-in-out;
}
.is-vest-skiinfo .zicara-item:hover {
    background: #f9f9f9;
}
.is-vest-skiinfo .zicara-item .lift-icon {
    flex: 0 0 42px;
    max-width: 42px;
    margin-top: 0px;
}
.is-vest-skiinfo .zicara-item .lift-icon img {
    width: 100%;
    height: auto;
    display: block;
}
.is-vest-skiinfo .zicara-item .lift-body {
    flex: 1 1 auto;
    min-width: 0;
}
.is-vest-skiinfo .zicara-item .lift-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: .25rem;
}
.is-vest-skiinfo .zicara-item .lift-title {
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    padding: 0 0 .7rem 0;
    line-height: 1.2;
}
.is-vest-skiinfo .zicara-item .lift-status {
    flex: 0 0 auto;
    font-size: 1.2rem;
    line-height: 1;
}
.is-vest-skiinfo .zicara-item .info-row {
    margin: .1rem 0;
    line-height: 1.35;
    font-size: .85rem;
    text-align: left;
    width: 100%;
}
.is-vest-skiinfo .zicara-item .info-row strong {
    color: #1c2e25;
}

/* Sekcija staze/putevi unutar stavke */
.is-vest-skiinfo .zicara-item .badge-row {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin: .25rem 0;
    font-size: .75rem;
}
.is-vest-skiinfo .zicara-item .badge-row .label {
    flex: 0 0 auto;
    min-width: 44px;
    font-weight: 600;
    color: #376951;
}
.is-vest-skiinfo .zicara-item .badge-row .badges {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

/* List group za opšte stavke */
.is-vest-skiinfo .info-list .list-group-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem .9rem;
    font-size: .9rem;
}
.is-vest-skiinfo .info-list .list-group-item small {
    font-size: .85rem;
    color: #376951;
}

/* Legenda i info-box bez okvira */
.is-vest-skiinfo .legenda-box {
    padding: .75rem .9rem;
    font-size: .85rem;
    line-height: 1.5;
    margin-top: .5rem;
    text-align: left;
}
.is-vest-skiinfo .info-box {
    padding: .5rem .9rem;
    font-size: .8rem;
    color: #599075;
    margin-bottom: 1rem;
    text-align: left;
}

.is-vest-skiinfo{--ski-blue-950:#20342a;--ski-blue-900:#2d5642;--ski-blue-700:#599176;--ski-blue-100:#f3f6f5;--ski-text:#1c2e25;--ski-muted:#5e997c;--ski-border:#e5e8e7;display:grid;gap:16px;width:100%;margin:20px 0;color:var(--ski-text);font-family:Roboto,Tahoma,Arial,sans-serif}
.is-vest-skiinfo *,.is-vest-skiinfo *::before,.is-vest-skiinfo *::after{box-sizing:border-box}
.is-vest-skiinfo__intro{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:15px 18px;border:1px solid var(--ski-border);border-radius:14px;color:#fff;background:radial-gradient(circle at 88% 10%,rgba(154, 193, 174, .34),transparent 34%),linear-gradient(135deg,var(--ski-blue-950),var(--ski-blue-700));box-shadow:0 12px 30px rgba(45, 86, 66, .12)}
.is-vest-skiinfo__intro-heading{display:flex;align-items:center;min-width:0;gap:11px;text-align:left!important}
.is-vest-skiinfo__intro-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(255,255,255,.27);border-radius:12px;background:rgba(255,255,255,.12);color:#fff;font-size:22px}
.is-vest__body .is-vest-skiinfo__intro-title,.is-vest-skiinfo__intro-title{display:block;margin:0!important;color:#fff!important;font-size:17px!important;line-height:1.15!important;font-weight:850!important;letter-spacing:.02em;text-align:left!important;text-transform:uppercase}
.is-vest__body .is-vest-skiinfo__intro-subtitle,.is-vest-skiinfo__intro-subtitle{display:block;margin-top:4px;color:rgba(255,255,255,.76)!important;font-size:11px;line-height:1.3;font-weight:500;letter-spacing:0;text-align:left!important;text-transform:none}
.is-vest-skiinfo__intro-status{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.is-vest-skiinfo__intro-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#71e7a8;box-shadow:0 0 0 4px rgba(113,231,168,.16)}
.is-vest-skiinfo .skiinfo-wrapper{display:grid;gap:16px;width:100%}
.is-vest-skiinfo .section-header{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:62px;margin:0!important;padding:13px 16px!important;border:1px solid var(--ski-border);border-radius:13px 13px 0 0;background:linear-gradient(135deg,var(--ski-blue-900),var(--ski-blue-700))!important;color:#fff!important;text-align:left!important;box-shadow:0 10px 24px rgba(45, 86, 66, .08)}
.is-vest-skiinfo .section-header h2,.is-vest__body .is-vest-skiinfo .section-header h2{all:unset;display:block;color:#fff!important;font-family:inherit;font-size:14px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:.035em;text-transform:uppercase}
.is-vest-skiinfo .section-header .sub{display:block;margin-top:4px;color:rgba(255,255,255,.72)!important;font-size:10px;line-height:1.3;font-weight:500;text-transform:none}
.is-vest-skiinfo .section-header .sub-danger{color:#ffd2d8!important}
.is-vest-skiinfo .zicara-list,.is-vest-skiinfo .info-list{overflow:hidden;margin:0!important;border:1px solid var(--ski-border);border-top:0;border-radius:0 0 13px 13px;background:#fff;box-shadow:0 12px 30px rgba(45, 86, 66, .08)}
.is-vest-skiinfo .zicara-item{display:flex;align-items:flex-start;gap:13px;padding:15px 16px;border-bottom:1px solid #eef0ef;background:#fff;transition:background-color .2s ease}
.is-vest-skiinfo .zicara-item:last-child{border-bottom:0}.is-vest-skiinfo .zicara-item:hover{background:#fbfcfc}
.is-vest-skiinfo .zicara-item .lift-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;min-height:48px;margin:0;padding:7px;border:1px solid #e3e7e5;border-radius:11px;background:var(--ski-blue-100)}
.is-vest-skiinfo .zicara-item .lift-icon img{display:block;width:100%;max-height:34px;object-fit:contain}.is-vest-skiinfo .zicara-item .lift-body{flex:1 1 auto;min-width:0}
.is-vest-skiinfo .zicara-item .lift-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.is-vest-skiinfo .zicara-item .lift-title{margin:0;padding:0;color:var(--ski-text);font-size:13.5px;line-height:1.25;font-weight:850;letter-spacing:.015em;text-transform:uppercase}
.is-vest-skiinfo .zicara-item .lift-status{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:25px;min-height:25px;font-size:17px;line-height:1}
.is-vest-skiinfo .zicara-item .info-row{width:100%;margin:3px 0!important;color:var(--ski-muted);font-size:11px;line-height:1.45;text-align:left}.is-vest-skiinfo .zicara-item .info-row strong{color:#305a46;font-weight:750}
.is-vest-skiinfo .zicara-item .badge-row{display:flex;align-items:flex-start;gap:8px;margin:7px 0 0;font-size:10px}.is-vest-skiinfo .zicara-item .badge-row .label{flex:0 0 42px;min-width:42px;padding-top:4px;color:#458466;font-weight:800}.is-vest-skiinfo .zicara-item .badge-row .badges{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:4px}
.is-vest-skiinfo .staza-badge{position:relative;display:inline-flex!important;align-items:center;justify-content:center;min-width:31px;min-height:27px;margin:0!important;padding:5px 9px!important;border:1px solid rgba(28, 46, 37, .08);border-radius:999px!important;font-size:10px!important;line-height:1;font-weight:850!important;box-shadow:0 3px 9px rgba(45, 86, 66, .05)}
.is-vest-skiinfo .info-list .list-group-item{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:11px 15px;border:0;border-bottom:1px solid #eef0ef;background:#fff;color:var(--ski-text);font-size:12px}.is-vest-skiinfo .info-list .list-group-item:last-child{border-bottom:0}.is-vest-skiinfo .info-list .list-group-item:hover{background:#fbfcfc}
.is-vest-skiinfo .info-list .list-group-item small{color:#458466;font-size:11px;line-height:1.4}.is-vest-skiinfo .info-list .list-group-item b,.is-vest-skiinfo .info-list .list-group-item strong{color:var(--ski-text);font-size:11.5px;font-weight:800;text-align:right}.is-vest-skiinfo .info-list a{color:var(--ski-blue-700)!important;font-weight:750;text-decoration:none!important}
.is-vest-skiinfo .legenda-box,.is-vest-skiinfo .info-box{margin:0!important;padding:15px 16px;border:1px solid var(--ski-border);border-radius:12px;background:#fff;color:var(--ski-muted);font-size:10.5px;line-height:1.6;text-align:left;box-shadow:0 9px 22px rgba(45, 86, 66, .06)}.is-vest-skiinfo .legenda-box strong{color:var(--ski-text)}.is-vest-skiinfo .info-box{display:flex;align-items:center;gap:8px;background:#fbfbfb}.is-vest-skiinfo .info-box .bi{color:var(--ski-blue-700);font-size:14px}
.is-vest-skiinfo .section-header .btn,.is-vest-skiinfo .section-header a.btn{min-height:34px;margin-top:7px;padding:7px 11px!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:9px!important;background:rgba(255,255,255,.14)!important;color:#fff!important;font-size:9px!important;font-weight:800!important;letter-spacing:.04em!important;text-transform:uppercase}.is-vest-skiinfo .section-header .btn:hover{background:rgba(255,255,255,.22)!important}
@media(max-width:575.98px){.is-vest-skiinfo{gap:14px;margin:16px 0}.is-vest-skiinfo__intro{min-height:64px;padding:13px;border-radius:12px}.is-vest-skiinfo__intro-status{display:none}.is-vest-skiinfo .section-header{min-height:58px;padding:12px 13px!important;border-radius:12px 12px 0 0}.is-vest-skiinfo .zicara-list,.is-vest-skiinfo .info-list{border-radius:0 0 12px 12px}.is-vest-skiinfo .zicara-item{gap:10px;padding:13px}.is-vest-skiinfo .zicara-item .lift-icon{flex-basis:42px;width:42px;min-height:42px;padding:6px}.is-vest-skiinfo .zicara-item .lift-title{font-size:12px}.is-vest-skiinfo .zicara-item .info-row{font-size:10.5px}.is-vest-skiinfo .info-list .list-group-item{align-items:flex-start;padding:10px 12px}.is-vest-skiinfo .legenda-box,.is-vest-skiinfo .info-box{padding:13px}}


/* ---------------------------------------------------------
   Web-kamere — detaljni include
   Izvor: webcam-include-html5-thumb.php
   --------------------------------------------------------- */
.is-vest-webcams {
    --camera-blue-950: #20342a;
    --camera-blue-900: #2d5642;
    --camera-blue-700: #599176;
    --camera-blue-100: #f3f6f5;
    --camera-text: #1c2e25;
    --camera-muted: #5e997c;
    --camera-border: #e5e8e7;
    display: grid;
    gap: 18px;
    width: 100%;
    margin: 20px 0;
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-vest-webcams *,
.is-vest-webcams *::before,
.is-vest-webcams *::after {
    box-sizing: border-box;
}

.is-vest-webcams__intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
    border: 1px solid var(--camera-border);
    border-radius: 14px;
    background: linear-gradient(135deg, var(--camera-blue-950), var(--camera-blue-700));
    color: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.12);
}

.is-vest-webcams__intro-heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.is-vest-webcams__intro-icon,
.is-vest-webcam-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border: 1px solid rgba(255,255,255,.26);
    background: rgba(255,255,255,.12);
    color: #ffffff;
}

.is-vest-webcams__intro-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
}

.is-vest-webcams__intro-icon svg {
    width: 22px;
    height: 22px;
}

.is-vest-webcams__intro-title {
    margin: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.15;
    font-weight: 850;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.is-vest-webcams__intro-subtitle {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.76);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.is-vest-webcams__intro-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-vest-webcams__intro-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.is-vest-webcam-card {
    overflow: hidden;
    border: 1px solid var(--camera-border);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
}

.is-vest-webcam-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 64px;
    padding: 13px 16px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--camera-blue-900), var(--camera-blue-700));
}

.is-vest-webcam-card__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
}

.is-vest__body .is-vest-webcam-card__heading > div {
    min-width: 0;
    text-align: left !important;
}

.is-vest-webcam-card__icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
}

.is-vest-webcam-card__icon svg {
    width: 20px;
    height: 20px;
}

.is-vest__body .is-vest-webcam-card__title {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: 0;
}

.is-vest__body .is-vest-webcam-card__altitude {
    display: block;
    margin-top: 3px;
    color: rgba(255, 255, 255, 0.76) !important;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 500;
}

.is-vest-webcam-card__badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #ffffff;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.is-vest-webcam-card__badge::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff4c5e;
    box-shadow: 0 0 0 4px rgba(255,76,94,.17);
}

.is-vest-webcam-card__badge--photo::before {
    background: #71e7a8;
    box-shadow: 0 0 0 4px rgba(113,231,168,.16);
}

.is-vest-webcam-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #14211b;
}

.is-vest-webcam-card__media video-js,
.is-vest-webcam-card__media .video-js,
.is-vest-webcam-card__media > a,
.is-vest-webcam-card__media > a > img {
    display: block;
    width: 100% !important;
    height: 100% !important;
}

.is-vest-webcam-card__media > a > img {
    object-fit: cover;
    transition: transform .4s ease, opacity .4s ease;
}

.is-vest-webcam-card__media > a:hover > img {
    transform: scale(1.025);
    opacity: .96;
}

.is-vest-webcam-card__media .video-js {
    position: absolute;
    inset: 0;
}

.is-vest-webcam-card__media .vjs-poster {
    background-size: cover;
}

.is-vest-webcam-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 15px 13px;
    border-top: 1px solid #eff1f0;
    background: linear-gradient(180deg, #ffffff, #fbfcfc);
}

.is-vest-webcam-card__description {
    color: var(--camera-muted);
    font-size: 10.5px;
    line-height: 1.45;
}

.is-vest-webcam-card__photo-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    gap: 7px;
    min-height: 35px;
    padding: 7px 11px;
    border-radius: 9px;
    background: var(--camera-blue-100);
    color: var(--camera-blue-900) !important;
    font-size: 9.5px;
    font-weight: 850;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: background-color .2s ease, transform .2s ease;
}

.is-vest-webcam-card__photo-link:hover {
    background: #ebefed;
    transform: translateY(-1px);
}

.is-vest-webcam-card__photo-link svg {
    width: 14px;
    height: 14px;
}

.is-vest-webcam-card__gallery {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #eff1f0;
    background: #fbfcfc;
}

.is-vest-webcam-card__gallery-item {
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    border: 1px solid #e5e8e7;
    border-radius: 8px;
    background: #e7ebe9;
}

.is-vest-webcam-card__gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.is-vest-webcam-card__gallery-item:hover img {
    transform: scale(1.05);
}

.is-vest-webcams__empty {
    padding: 25px 18px;
    border: 1px solid var(--camera-border);
    border-radius: 13px;
    background: #ffffff;
    color: var(--camera-muted);
    font-size: 12px;
    line-height: 1.5;
    text-align: center;
}

@media (max-width: 575.98px) {
    .is-vest-webcams {
        gap: 14px;
        margin: 16px 0;
    }

    .is-vest-webcams__intro,
    .is-vest-webcam-card {
        border-radius: 12px;
    }

    .is-vest-webcams__intro {
        padding: 13px;
    }

    .is-vest-webcams__intro-status {
        display: none;
    }

    .is-vest-webcam-card__header {
        min-height: 59px;
        padding: 11px 13px;
    }

    .is-vest-webcam-card__footer {
        display: block;
        padding: 11px 13px 12px;
    }

    .is-vest-webcam-card__photo-link {
        margin-top: 9px;
    }

    .is-vest-webcam-card__gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        padding: 8px;
    }
}


/* ---------------------------------------------------------
   Vest stranica — pomoćna pravila
   Izvor: vest.php
   --------------------------------------------------------- */
body {
			  font-family: 'Roboto', Tahoma !important;
			  font-weight: 400 !important;
			}
			@media (min-width: 1200px) {
				.bg-lg-orange {
				background-color: #f7941e !important;
				}
			}

			@media (min-width: 1200px) {
			  #top-bar {
			    height: 75px !important;
			  }
			}

/* =========================================================
   KATEGORIJA SMEŠTAJA
   Stranica: smestajkat.php
   ========================================================= */

body.is-category-body {
    min-width: 1240px;
    overflow-x: auto;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-category-page {
    width: 1240px;
    min-width: 1240px;
    max-width: 1240px;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-category-content {
    width: 100%;
    padding-top: 15px;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-category-grid {
    display: grid;
    grid-template-columns: 160px 630px 450px;
    align-items: start;
    width: 1240px;
    min-width: 1240px;
}

.is-category-column {
    min-width: 0;
}

.is-category-column--navigation,
.is-category-column--main {
    padding-right: 15px;
}

.is-category-column .infostara-module {
    margin-bottom: 15px;
}

.is-category-navigation-card,
.is-category-list-card,
.is-category-legacy-module {
    overflow: hidden;
    border: 1px solid #e5e8e7;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, 0.10);
}

.is-category-navigation-card {
    min-height: 110px;
}

.is-category-list-card {
    padding: 15px;
}

.is-category-legacy-module {
    padding: 15px;
}

.is-category-hero {
    position: relative;
    min-height: 190px;
    margin-bottom: 15px;
    overflow: hidden;
    padding: 25px 27px 24px;
    border-radius: 15px;
    color: #ffffff;
    background:
        radial-gradient(circle at 90% 5%, rgba(150, 191, 171, .34), transparent 35%),
        linear-gradient(135deg, #20342a 0%, #2d5642 52%, #599176 100%);
    box-shadow: 0 14px 34px rgba(45, 86, 66, 0.15);
}

.is-category-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -100px;
    width: 280px;
    height: 210px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 50%;
    transform: rotate(-12deg);
    pointer-events: none;
}

.is-category-hero__eyebrow,
.is-category-hero__title,
.is-category-hero__description,
.is-category-hero__meta {
    position: relative;
    z-index: 1;
}

.is-category-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 11px;
    color: rgba(255, 255, 255, .78);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-category-hero__eyebrow .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #71e7a8;
}

.is-category-hero__title {
    max-width: 550px;
    margin: 0;
    color: #ffffff;
    font-size: 30px;
    line-height: 1.08;
    font-weight: 850;
    letter-spacing: -.65px;
}

.is-category-hero__description {
    max-width: 530px;
    margin: 12px 0 17px;
    color: rgba(255, 255, 255, .82);
    font-size: 12px;
    line-height: 1.55;
}

.is-category-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.is-category-hero__meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 29px;
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
    font-size: 9.5px;
    line-height: 1;
    font-weight: 750;
}

.is-category-hero__meta .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-category-footer {
    grid-column: 1 / -1;
    width: 1240px;
    min-width: 1240px;
    margin-top: 0;
}

/*
 * Fiksni desktop prikaz za ovu stranicu.
 * Pregazi responsive header i navigaciju kada se prozor browsera suzi.
 */
body.is-fixed-desktop .infostara-brandbar,
body.is-fixed-desktop .infostara-brandbar__inner {
    min-height: 94px !important;
}

body.is-fixed-desktop .infostara-brandbar__inner {
    padding: 14px 28px !important;
    justify-content: space-between !important;
}

body.is-fixed-desktop .infostara-brand {
    align-items: flex-start !important;
}

body.is-fixed-desktop .infostara-brand__logo {
    width: 310px !important;
    max-height: 58px !important;
}

body.is-fixed-desktop .infostara-brand__tagline,
body.is-fixed-desktop .infostara-header-actions {
    display: flex !important;
}

body.is-fixed-desktop .infostara-navbar {
    min-height: 63px !important;
    padding: 0 18px !important;
}

body.is-fixed-desktop .infostara-navbar .navbar-toggler,
body.is-fixed-desktop .infostara-navbar__mobile-title {
    display: none !important;
}

body.is-fixed-desktop #navbar7 .navbar-collapse,
body.is-fixed-desktop #navbar7 .navbar-collapse.collapse,
body.is-fixed-desktop #navbar7 .navbar-collapse.collapse:not(.show) {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.is-fixed-desktop .infostara-navbar .navbar-nav {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 4px !important;
}

body.is-fixed-desktop .infostara-navbar .nav-link {
    width: auto !important;
    min-height: 42px !important;
    padding: 10px 12px !important;
    justify-content: center !important;
    font-size: 12px !important;
}

/* Modul za pretragu u bočnoj koloni ostaje u dve kolone. */
body.is-category-body .is-booking-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body.is-category-body .is-booking-form__submit {
    grid-column: 1 / -1 !important;
}

/* Sažeci vremena i ski-info modula ne prelaze u mobilni raspored. */
body.is-category-body .rhmz-weather-main {
    grid-template-columns: 94px minmax(0, 1fr) !important;
}

body.is-category-body .rhmz-weather-quick {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.is-category-body .ski-info-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.is-category-body .infostara-header-actions {
    display: flex !important;
}

/* =========================================================
   MODUL ZA LISTANJE KATEGORIJA
   Fajl: module_smestajkat.php
   ========================================================= */

.is-category-listing {
    --category-blue-950: #20342a;
    --category-blue-900: #2d5642;
    --category-blue-700: #599176;
    --category-blue-100: #f3f6f5;
    --category-page: #f6f8f7;
    --category-card: #ffffff;
    --category-text: #1c2e25;
    --category-muted: #5e997c;
    --category-border: #e5e8e7;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--category-border);
    border-radius: 15px;
    background: var(--category-card);
    box-shadow: 0 14px 34px rgba(45, 86, 66, .10);
    color: var(--category-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-category-listing,
.is-category-listing *,
.is-category-listing *::before,
.is-category-listing *::after {
    box-sizing: border-box;
}

.is-category-listing a {
    text-decoration: none;
}

.is-category-listing__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 76px;
    padding: 15px 18px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% -35%, rgba(255, 255, 255, .22), transparent 42%),
        linear-gradient(135deg, var(--category-blue-950), var(--category-blue-700));
}

.is-category-listing__heading {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 12px;
}

.is-category-listing__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 12px;
    background: rgba(255, 255, 255, .10);
}

.is-category-listing__icon .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #ffffff;
    font-size: 18px;
}

.is-category-listing__section {
    display: block;
    margin-bottom: 3px;
    color: rgba(255, 255, 255, .72);
    font-size: 9px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.is-category-listing .is-category-listing__title {
    margin: 0;
    color: #ffffff !important;
    font-size: 17px;
    line-height: 1.16;
    font-weight: 850;
    letter-spacing: -.18px;
    text-transform: uppercase;
}

.is-category-listing__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 30px;
    padding: 6px 10px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
    font-size: 10px;
    line-height: 1;
    font-weight: 800;
    white-space: nowrap;
}

.is-category-listing__items {
    display: grid;
    gap: 12px;
    padding: 14px;
    background: var(--category-page);
}

.is-category-listing__item {
    display: grid;
    grid-template-columns: 184px minmax(0, 1fr);
    gap: 16px;
    min-height: 154px;
    overflow: hidden;
    padding: 13px;
    border: 1px solid var(--category-border);
    border-radius: 13px;
    background: #ffffff;
    box-shadow: 0 7px 20px rgba(45, 86, 66, .07);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.is-category-listing__item:hover {
    border-color: #cbd7d1;
    box-shadow: 0 12px 27px rgba(45, 86, 66, .12);
    transform: translateY(-2px);
}

.is-category-listing__media {
    position: relative;
    display: block;
    width: 184px;
    height: 128px;
    overflow: hidden;
    border-radius: 10px;
    background: #e8ebea;
}

.is-category-listing__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.is-category-listing__item:hover .is-category-listing__media img {
    transform: scale(1.035);
}

.is-category-listing__media-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(26, 43, 35, .48));
    pointer-events: none;
}

.is-category-listing__open-icon {
    position: absolute;
    right: 9px;
    bottom: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 9px;
    background: rgba(89, 145, 118, .92);
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(55, 105, 81, .24);
}

.is-category-listing__open-icon .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 11px;
}

.is-category-listing__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.is-category-listing__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 9px;
    min-width: 0;
    margin-bottom: 7px;
}

.is-category-listing__category,
.is-category-listing__date {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 5px;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .035em;
}

.is-category-listing__category {
    max-width: 64%;
    overflow: hidden;
    color: var(--category-blue-700);
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.is-category-listing__category:hover {
    color: var(--category-blue-900);
}

.is-category-listing__date {
    flex: 0 0 auto;
    color: var(--category-muted);
    white-space: nowrap;
}

.is-category-listing__category .fa,
.is-category-listing__date .fa,
.is-category-listing__details .fa,
.is-category-listing__more .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-category-listing .is-category-listing__item-title {
    margin: 0 0 7px;
    color: var(--category-text);
    font-size: 18px;
    line-height: 1.18;
    font-weight: 800;
    letter-spacing: -.34px;
}

.is-category-listing__item-title a {
    color: var(--category-text);
}

.is-category-listing__item-title a:hover {
    color: var(--category-blue-700);
}

.is-category-listing__excerpt {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #468667;
    font-size: 12px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.is-category-listing__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 10px;
}

.is-category-listing__details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 12px;
    color: var(--category-muted);
    font-size: 9.5px;
    line-height: 1.3;
    font-weight: 650;
}

.is-category-listing__details span,
.is-category-listing__details a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.is-category-listing__details a {
    color: var(--category-blue-900);
}

.is-category-listing__details a:hover {
    color: var(--category-blue-700);
}

.is-category-listing__more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    gap: 6px;
    min-height: 31px;
    padding: 7px 10px;
    border-radius: 8px;
    background: var(--category-blue-700);
    color: #ffffff;
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .05em;
    text-transform: uppercase;
    box-shadow: 0 6px 15px rgba(89, 145, 118, .20);
}

.is-category-listing__more:hover {
    color: #ffffff;
    background: var(--category-blue-900);
}

.is-category-listing__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 180px;
    padding: 28px;
    background: var(--category-page);
    color: var(--category-muted);
    text-align: center;
}

.is-category-listing__empty .fa {
    width: auto;
    margin-bottom: 10px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--category-blue-700);
    font-size: 29px;
}

.is-category-listing__empty strong {
    margin-bottom: 5px;
    color: var(--category-text);
    font-size: 14px;
}

.is-category-listing__empty span {
    font-size: 11px;
}

.is-category-listing__pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 58px;
    padding: 12px 14px;
    border-top: 1px solid var(--category-border);
    background: #ffffff;
}

.is-category-listing__page-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 8px 11px;
    border: 1px solid #d9e3de;
    border-radius: 8px;
    background: #fbfbfb;
    color: var(--category-blue-900);
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.is-category-listing__page-link:hover {
    border-color: var(--category-blue-700);
    background: var(--category-blue-700);
    color: #ffffff;
}

.is-category-listing__page-link--next {
    margin-left: auto;
}

/* =========================================================
   REZULTATI PRETRAGE SMEŠTAJA
   Fajl: smestaj-rezultat.php
   ========================================================= */

body.is-stay-results-body {
    min-width: 1240px;
    overflow-x: auto;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-stay-results-page {
    width: 1240px;
    min-width: 1240px;
    max-width: 1240px;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-stay-results-content {
    width: 100%;
    padding-top: 15px;
    background: var(--infostara-page-bg, #f6f8f7);
}

.is-stay-results-layout {
    display: grid;
    grid-template-columns: 790px 450px;
    align-items: start;
    width: 1240px;
    min-width: 1240px;
}

.is-stay-results-main {
    min-width: 0;
    padding-right: 15px;
}

.is-stay-results-sidebar {
    min-width: 0;
}

.is-stay-results-sidebar .infostara-module {
    margin-bottom: 15px;
}

.is-stay-results-hero {
    position: relative;
    margin-bottom: 15px;
    overflow: hidden;
    border-radius: 15px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% -20%, rgba(150, 191, 171, .36), transparent 38%),
        linear-gradient(135deg, #20342a 0%, #2d5642 54%, #599176 100%);
    box-shadow: 0 14px 34px rgba(45, 86, 66, .15);
}

.is-stay-results-hero::after {
    content: "";
    position: absolute;
    right: -75px;
    bottom: -115px;
    width: 310px;
    height: 230px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 50%;
    transform: rotate(-12deg);
    pointer-events: none;
}

.is-stay-results-hero__content {
    position: relative;
    z-index: 1;
    min-height: 188px;
    padding: 25px 27px 20px;
}

.is-stay-results-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 11px;
    color: rgba(255, 255, 255, .76);
    font-size: 10px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-stay-results-hero__eyebrow .fa,
.is-stay-results-hero__meta .fa,
.is-stay-results-hero__notice .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-results-hero__eyebrow .fa {
    color: #71e7a8;
}

.is-stay-results-hero__title {
    max-width: 650px;
    margin: 0;
    color: #ffffff !important;
    font-size: 32px;
    line-height: 1.08;
    font-weight: 850;
    letter-spacing: -.72px;
}

.is-stay-results-hero__subtitle {
    max-width: 640px;
    margin: 12px 0 17px;
    color: rgba(255, 255, 255, .84);
    font-size: 12.5px;
    line-height: 1.55;
}

.is-stay-results-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.is-stay-results-hero__meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 29px;
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
    font-size: 9.5px;
    line-height: 1;
    font-weight: 750;
}

.is-stay-results-hero__notice {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 27px;
    border-top: 1px solid rgba(255, 255, 255, .11);
    background: rgba(21, 35, 28, .25);
    color: rgba(255, 255, 255, .78);
    font-size: 9.5px;
    line-height: 1.4;
}

.is-stay-results-toolbar {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 15px;
    padding: 10px;
    border: 1px solid #e5e8e7;
    border-radius: 13px;
    background: #ffffff;
    box-shadow: 0 9px 24px rgba(45, 86, 66, .08);
}

.is-stay-results-toolbar__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 38px;
    padding: 8px 7px;
    border: 1px solid #dfe4e2;
    border-radius: 9px;
    background: #fbfbfb;
    color: #2d5642;
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .04em;
    text-decoration: none;
    text-transform: uppercase;
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.is-stay-results-toolbar__link:hover,
.is-stay-results-toolbar__link.is-active {
    border-color: #599176;
    background: #599176;
    color: #ffffff;
}

.is-stay-results-toolbar__link .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-results-list {
    display: grid;
    gap: 13px;
}

.is-stay-result {
    display: grid;
    grid-template-columns: 235px minmax(0, 1fr);
    min-height: 252px;
    overflow: hidden;
    border: 1px solid #e5e8e7;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 11px 28px rgba(45, 86, 66, .09);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.is-stay-result:hover {
    border-color: #ccd8d2;
    box-shadow: 0 15px 34px rgba(45, 86, 66, .14);
    transform: translateY(-2px);
}

.is-stay-result__media {
    position: relative;
    display: block;
    min-height: 252px;
    overflow: hidden;
    background: #e8ebea;
}

.is-stay-result__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 252px;
    object-fit: cover;
    transition: transform .4s ease;
}

.is-stay-result:hover .is-stay-result__media img {
    transform: scale(1.035);
}

.is-stay-result__media-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(19, 32, 26, .03) 45%, rgba(19, 32, 26, .70) 100%);
    pointer-events: none;
}

.is-stay-result__media-label {
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: calc(100% - 24px);
    padding: 6px 9px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(89, 145, 118, .90);
    color: #ffffff;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 800;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.is-stay-result__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 17px 18px 15px;
}

.is-stay-result__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.is-stay-result__category {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 6px;
    color: #599176;
    font-size: 9px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.is-stay-result__category .fa,
.is-stay-result__facts .fa,
.is-stay-result__freshness .fa,
.is-stay-result__actions .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-result__title {
    margin: 0;
    color: #1c2e25;
    font-size: 21px;
    line-height: 1.14;
    font-weight: 850;
    letter-spacing: -.48px;
}

.is-stay-result__title a {
    color: #1c2e25;
    text-decoration: none;
}

.is-stay-result__title a:hover {
    color: #599176;
}

.is-stay-result__price {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-end;
    min-width: 116px;
    padding: 9px 10px;
    border: 1px solid #e0e4e2;
    border-radius: 10px;
    background: #f6f7f7;
}

.is-stay-result__price span {
    margin-bottom: 3px;
    color: #5e997c;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 700;
}

.is-stay-result__price strong {
    color: #2d5642;
    font-size: 15px;
    line-height: 1.1;
    font-weight: 900;
    white-space: nowrap;
}

.is-stay-result__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
}

.is-stay-result__facts span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 27px;
    padding: 5px 8px;
    border: 1px solid #e8ebea;
    border-radius: 999px;
    background: #fbfcfc;
    color: #468667;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 700;
}

.is-stay-result__facts span:nth-child(n+7) {
    display: none;
}

.is-stay-result__units {
    max-height: 76px;
    margin-top: 11px;
    overflow: auto;
    padding: 9px 10px;
    border-left: 3px solid #599176;
    border-radius: 0 8px 8px 0;
    background: #fbfbfb;
    color: #407a5e;
    font-size: 10px;
    line-height: 1.55;
}

.is-stay-result__units b,
.is-stay-result__units strong {
    color: #1c2e25;
}

.is-stay-result__units span {
    color: #168447 !important;
}

.is-stay-result__bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 12px;
}

.is-stay-result__freshness {
    display: grid;
    gap: 4px;
    min-width: 0;
    font-size: 8.5px;
    line-height: 1.25;
    font-weight: 700;
}

.is-stay-result__freshness span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.is-stay-result__freshness--good {
    color: #168447;
}

.is-stay-result__freshness--old {
    color: #c44141;
}

.is-stay-result__actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 7px;
}

.is-stay-result__phone,
.is-stay-result__details-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 8px 11px;
    border-radius: 8px;
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    text-decoration: none;
}

.is-stay-result__phone {
    border: 1px solid #d0dbd6;
    background: #f9fbfa;
    color: #2d5642;
}

.is-stay-result__phone:hover {
    border-color: #599176;
    color: #599176;
}

.is-stay-result__details-link {
    background: #599176;
    color: #ffffff;
    box-shadow: 0 6px 15px rgba(89, 145, 118, .22);
    text-transform: uppercase;
}

.is-stay-result__details-link:hover {
    background: #2d5642;
    color: #ffffff;
}

.is-stay-results-message {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 112px;
    padding: 18px;
    border: 1px solid #e5e8e7;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(45, 86, 66, .08);
}

.is-stay-results-message > .fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    padding: 0;
    border-radius: 13px;
    background: #f3f6f5;
    color: #599176;
    font-size: 20px;
}

.is-stay-results-message div {
    display: grid;
    gap: 4px;
}

.is-stay-results-message strong {
    color: #1c2e25;
    font-size: 14px;
}

.is-stay-results-message span {
    color: #5e997c;
    font-size: 10.5px;
    line-height: 1.45;
}

.is-stay-results-message a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 35px;
    padding: 8px 11px;
    border-radius: 8px;
    background: #599176;
    color: #ffffff;
    font-size: 9px;
    font-weight: 850;
    text-decoration: none;
    text-transform: uppercase;
}

.is-stay-results-message--warning > .fa {
    background: #fff4dd;
    color: #d88900;
}

.is-stay-results-footer {
    grid-column: 1 / -1;
    width: 1240px;
    min-width: 1240px;
    margin-top: 15px;
}

/* Fiksni desktop raspored modula u desnoj koloni. */
body.is-stay-results-body .is-booking-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body.is-stay-results-body .is-booking-form__submit {
    grid-column: 1 / -1 !important;
}

body.is-stay-results-body .rhmz-weather-main {
    grid-template-columns: 94px minmax(0, 1fr) !important;
}

body.is-stay-results-body .rhmz-weather-quick {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.is-stay-results-body .ski-info-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* =========================================================
   JEDAN SMEŠTAJNI OBJEKAT UNUTAR VESTI
   Fajl: jedan_objekat.php
   ========================================================= */

.is-vest--accommodation .is-vest__body {
    background: #f6f8f7;
}

.is-vest__body .is-stay-object {
    --stay-blue-950: #20342a;
    --stay-blue-900: #2d5642;
    --stay-blue-700: #599176;
    --stay-blue-100: #f3f6f5;
    --stay-page: #f6f8f7;
    --stay-card: #ffffff;
    --stay-text: #1c2e25;
    --stay-muted: #5e997c;
    --stay-border: #e5e8e7;
    width: auto;
    max-width: none;
    margin: -18px;
    padding: 18px;
    background: var(--stay-page);
    color: var(--stay-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-stay-object,
.is-stay-object *,
.is-stay-object *::before,
.is-stay-object *::after,
.is-stay-object-modal,
.is-stay-object-modal *,
.is-stay-object-modal *::before,
.is-stay-object-modal *::after {
    box-sizing: border-box;
}

.is-stay-object a,
.is-stay-object-modal a {
    text-decoration: none;
}

.is-stay-object__overview {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(250px, .75fr);
    gap: 15px;
    margin-bottom: 15px;
}

.is-stay-object__gallery,
.is-stay-object__contact,
.is-stay-object__description,
.is-stay-object__availability {
    overflow: hidden;
    border: 1px solid var(--stay-border);
    border-radius: 15px;
    background: var(--stay-card);
    box-shadow: 0 12px 30px rgba(45, 86, 66, .10);
}

.is-stay-object__main-photo {
    position: relative;
    display: block;
    height: 345px;
    overflow: hidden;
    background: #e8ebea;
}

.is-stay-object__main-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.is-stay-object__main-photo:hover img {
    transform: scale(1.025);
}

.is-stay-object__photo-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(19, 32, 26, .02) 45%, rgba(19, 32, 26, .68) 100%);
    pointer-events: none;
}

.is-stay-object__photo-count {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 8px 11px;
    border: 1px solid rgba(255, 255, 255, .34);
    border-radius: 9px;
    background: rgba(89, 145, 118, .92);
    color: #ffffff;
    font-size: 10px;
    line-height: 1;
    font-weight: 800;
    box-shadow: 0 7px 18px rgba(43, 82, 63, .25);
}

.is-stay-object__photo-count .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object__gallery-hidden {
    display: none;
}

.is-stay-object__contact {
    display: flex;
    flex-direction: column;
    min-height: 345px;
    padding: 17px;
}

.is-stay-object__contact-heading,
.is-stay-object__section-heading {
    display: flex;
    align-items: center;
    gap: 11px;
}

.is-stay-object__contact-heading {
    margin-bottom: 14px;
}

.is-stay-object__contact-icon,
.is-stay-object__section-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 39px;
    width: 39px;
    height: 39px;
    border-radius: 11px;
}

.is-stay-object__contact-icon {
    background: linear-gradient(135deg, var(--stay-blue-900), var(--stay-blue-700));
    color: #ffffff;
}

.is-stay-object__contact-icon .fa,
.is-stay-object__section-icon .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object__contact-heading span,
.is-stay-object__section-heading small {
    display: block;
    margin-bottom: 3px;
    color: var(--stay-muted);
    font-size: 9px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-stay-object__contact-heading strong {
    display: block;
    color: var(--stay-text);
    font-size: 15px;
    line-height: 1.2;
}

.is-stay-object__contact-actions {
    display: grid;
    gap: 7px;
}

.is-stay-object__contact-link {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 39px;
    padding: 9px 11px;
    border: 1px solid #e2e6e4;
    border-radius: 9px;
    background: #fbfbfb;
    color: var(--stay-blue-900);
    font-size: 10px;
    line-height: 1;
    font-weight: 750;
}

.is-stay-object__contact-link:hover {
    border-color: var(--stay-blue-700);
    color: var(--stay-blue-700);
}

.is-stay-object__contact-link--primary {
    border-color: transparent;
    background: var(--stay-blue-700);
    color: #ffffff;
    box-shadow: 0 6px 15px rgba(89, 145, 118, .20);
}

.is-stay-object__contact-link--primary:hover {
    background: var(--stay-blue-900);
    color: #ffffff;
}

.is-stay-object__contact-link .fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 19px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 13px;
}

.is-stay-object__freshness {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding-top: 14px;
    font-size: 9px;
    line-height: 1.3;
    font-weight: 750;
}

.is-stay-object__freshness .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object__freshness--good {
    color: #168447;
}

.is-stay-object__freshness--old {
    color: #c44141;
}

.is-stay-object__check-times {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-top: 10px;
}

.is-stay-object__check-times span {
    display: grid;
    gap: 3px;
    padding: 8px 9px;
    border: 1px solid #e8ebea;
    border-radius: 8px;
    background: #fbfcfc;
}

.is-stay-object__check-times small {
    color: var(--stay-muted);
    font-size: 8px;
    font-weight: 750;
    text-transform: uppercase;
}

.is-stay-object__check-times strong {
    color: var(--stay-text);
    font-size: 11px;
}

.is-stay-object__description {
    margin-bottom: 15px;
}

.is-stay-object__section-heading {
    padding: 14px 17px;
    border-bottom: 1px solid var(--stay-border);
    background: #ffffff;
}

.is-stay-object__section-heading--light {
    padding: 0;
    border: 0;
    background: transparent;
}

.is-stay-object__section-icon {
    background: var(--stay-blue-100);
    color: var(--stay-blue-700);
}

.is-stay-object__section-heading h2 {
    margin: 0;
    color: var(--stay-text) !important;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 850;
}

.is-stay-object__section-heading--light small {
    color: rgba(255, 255, 255, .70);
}

.is-stay-object__section-heading--light h2 {
    color: #ffffff !important;
}

.is-stay-object__section-heading--light .is-stay-object__section-icon {
    border: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
}

.is-stay-object__richtext {
    padding: 18px;
    color: #36664f;
    font-size: 13px;
    line-height: 1.7;
}

.is-stay-object__richtext > :first-child {
    margin-top: 0;
}

.is-stay-object__richtext > :last-child {
    margin-bottom: 0;
}

.is-stay-object__availability-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    min-height: 74px;
    padding: 14px 17px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% -40%, rgba(255, 255, 255, .22), transparent 40%),
        linear-gradient(135deg, var(--stay-blue-950), var(--stay-blue-700));
}

.is-stay-object__availability-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 31px;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
    font-size: 9px;
    font-weight: 800;
}

.is-stay-object__search-form {
    display: grid;
    grid-template-columns: 1fr 1fr .65fr auto auto;
    align-items: end;
    gap: 9px;
    padding: 13px 15px;
    border-bottom: 1px solid var(--stay-border);
    background: #ffffff;
}

.is-stay-object__search-form label {
    display: grid;
    gap: 5px;
    margin: 0;
}

.is-stay-object__search-form label > span {
    color: var(--stay-muted);
    font-size: 8px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.is-stay-object__search-form input,
.is-stay-object__search-form select {
    width: 100%;
    height: 39px;
    margin: 0;
    padding: 0 10px;
    border: 1px solid #dce4e0;
    border-radius: 8px;
    outline: none;
    background: #fbfcfc;
    color: var(--stay-text);
    font-family: inherit;
    font-size: 10px;
    box-shadow: none;
}

.is-stay-object__search-form input:focus,
.is-stay-object__search-form select:focus {
    border-color: var(--stay-blue-700);
    background: #ffffff;
}

.is-stay-object__search-form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 39px;
    padding: 0 14px;
    border: 0;
    border-radius: 8px;
    background: var(--stay-blue-700);
    color: #ffffff;
    font-family: inherit;
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
    box-shadow: 0 6px 15px rgba(89, 145, 118, .22);
    cursor: pointer;
}

.is-stay-object__selected-period {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 39px;
    padding: 0 11px;
    border: 1px solid #dce4e0;
    border-radius: 8px;
    background: #f6f7f7;
    color: var(--stay-blue-900);
    font-size: 9px;
    font-weight: 800;
    white-space: nowrap;
}

.is-stay-object__search-form button .fa,
.is-stay-object__selected-period .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object__units {
    display: grid;
    gap: 13px;
    padding: 15px;
    background: var(--stay-page);
}

.is-stay-unit {
    display: grid;
    grid-template-columns: 225px minmax(0, 1fr);
    min-height: 250px;
    overflow: hidden;
    border: 1px solid var(--stay-border);
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 9px 24px rgba(45, 86, 66, .08);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.is-stay-unit:hover {
    border-color: #ccd8d2;
    box-shadow: 0 14px 31px rgba(45, 86, 66, .13);
    transform: translateY(-2px);
}

.is-stay-unit__media {
    position: relative;
    display: block;
    min-height: 250px;
    overflow: hidden;
    background: #e8ebea;
}

.is-stay-unit__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 250px;
    object-fit: cover;
    transition: transform .4s ease;
}

.is-stay-unit:hover .is-stay-unit__media img {
    transform: scale(1.035);
}

.is-stay-unit__media-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 52%, rgba(19, 32, 26, .65));
}

.is-stay-unit__photo-count {
    position: absolute;
    right: 10px;
    bottom: 10px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 29px;
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .32);
    border-radius: 8px;
    background: rgba(89, 145, 118, .90);
    color: #ffffff;
    font-size: 9px;
    font-weight: 800;
}

.is-stay-unit__photo-count .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-unit__content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 16px 17px 14px;
}

.is-stay-unit__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 13px;
}

.is-stay-unit__eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--stay-blue-700);
    font-size: 8px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.is-stay-unit h3 {
    margin: 0;
    color: var(--stay-text) !important;
    font-size: 20px;
    line-height: 1.14;
    font-weight: 850;
    letter-spacing: -.42px;
}

.is-stay-unit__status {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-end;
    min-width: 106px;
    padding: 8px 9px;
    border-radius: 9px;
    text-align: right;
}

.is-stay-unit__status span {
    font-size: 8px;
    line-height: 1;
    font-weight: 850;
    text-transform: uppercase;
}

.is-stay-unit__status strong {
    margin-top: 4px;
    font-size: 13px;
    line-height: 1;
    font-weight: 900;
    white-space: nowrap;
}

.is-stay-unit__status--available {
    border: 1px solid #bfe5cd;
    background: #effaf3;
    color: #168447;
}

.is-stay-unit__status--reserved {
    border: 1px solid #f0c5c5;
    background: #fff2f2;
    color: #c44141;
}

.is-stay-unit__status--inquiry,
.is-stay-unit__status--minimum {
    border: 1px solid #f0d9a8;
    background: #fff8e9;
    color: #b36e00;
}

.is-stay-unit__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 11px;
}

.is-stay-unit__facts span,
.is-stay-unit__feature-preview span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 26px;
    padding: 5px 8px;
    border: 1px solid #e8ebea;
    border-radius: 999px;
    background: #fbfcfc;
    color: #468667;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 700;
}

.is-stay-unit__facts .fa,
.is-stay-unit__feature-preview .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--stay-blue-700);
}

.is-stay-unit__excerpt {
    display: -webkit-box;
    margin: 11px 0 0;
    overflow: hidden;
    color: #468667;
    font-size: 11px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.is-stay-unit__feature-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.is-stay-unit__feature-preview span {
    min-height: 24px;
    padding: 4px 7px;
    background: #f6f7f7;
    color: var(--stay-blue-900);
    font-size: 8px;
}

.is-stay-unit__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 12px;
}

.is-stay-unit__dates {
    display: flex;
    align-items: center;
    gap: 12px;
}

.is-stay-unit__dates span {
    display: grid;
    gap: 2px;
}

.is-stay-unit__dates small {
    color: var(--stay-muted);
    font-size: 7.5px;
    font-weight: 800;
    text-transform: uppercase;
}

.is-stay-unit__dates strong {
    color: var(--stay-text);
    font-size: 9.5px;
}

.is-stay-unit__actions {
    display: flex;
    align-items: center;
    gap: 7px;
}

.is-stay-unit__inquiry,
.is-stay-unit__details {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 33px;
    padding: 7px 10px;
    border-radius: 8px;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 850;
    text-transform: uppercase;
}

.is-stay-unit__inquiry {
    border: 1px solid #d0dbd6;
    background: #f9fbfa;
    color: var(--stay-blue-900);
}

.is-stay-unit__inquiry:hover {
    border-color: var(--stay-blue-700);
    color: var(--stay-blue-700);
}

.is-stay-unit__inquiry.is-disabled {
    border-color: #e5e9e7;
    background: #f5f6f6;
    color: #8eb9a4;
}

.is-stay-unit__details {
    background: var(--stay-blue-700);
    color: #ffffff;
    box-shadow: 0 6px 15px rgba(89, 145, 118, .20);
}

.is-stay-unit__details:hover {
    background: var(--stay-blue-900);
    color: #ffffff;
}

.is-stay-unit__inquiry .fa,
.is-stay-unit__details .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object__message {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 130px;
    padding: 24px;
    color: var(--stay-muted);
    font-size: 12px;
    text-align: center;
}


.is-stay-object-modal {
    width: min(1040px, calc(100vw - 40px));
    max-width: 1040px;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 15px;
    background: #ffffff;
    color: #1c2e25;
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-stay-object-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    min-height: 72px;
    padding: 14px 18px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% -40%, rgba(255, 255, 255, .22), transparent 42%),
        linear-gradient(135deg, #20342a, #599176);
}

.is-stay-object-modal__header span {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, .70);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-stay-object-modal__header h3 {
    margin: 0;
    color: #ffffff !important;
    font-size: 20px;
    line-height: 1.16;
}

.is-stay-object-modal__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(350px, .88fr);
}

.is-stay-object-modal__gallery {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-content: start;
    gap: 7px;
    padding: 15px;
    border-right: 1px solid #e5e8e7;
    background: #f6f8f7;
}

.is-stay-object-modal__main-image {
    grid-column: 1 / -1;
    display: block;
    height: 355px;
    overflow: hidden;
    border-radius: 11px;
    background: #e8ebea;
}

.is-stay-object-modal__thumb {
    display: block;
    height: 76px;
    overflow: hidden;
    border-radius: 8px;
    background: #e8ebea;
}

.is-stay-object-modal__main-image img,
.is-stay-object-modal__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.is-stay-object-modal__information {
    max-height: 590px;
    overflow-y: auto;
    padding: 16px;
}

.is-stay-object-modal__summary,
.is-stay-object-modal__features {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.is-stay-object-modal__summary span,
.is-stay-object-modal__features span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 27px;
    padding: 5px 8px;
    border: 1px solid #e5e8e7;
    border-radius: 999px;
    background: #fbfcfc;
    color: #468667;
    font-size: 8.5px;
    font-weight: 700;
}

.is-stay-object-modal__summary .fa,
.is-stay-object-modal__features .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #599176;
}

.is-stay-object-modal__period {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin: 12px 0;
}

.is-stay-object-modal__period div {
    display: grid;
    gap: 3px;
    padding: 9px;
    border: 1px solid #e5e8e7;
    border-radius: 8px;
    background: #fbfbfb;
}

.is-stay-object-modal__period small {
    color: #5e997c;
    font-size: 7.5px;
    font-weight: 800;
    text-transform: uppercase;
}

.is-stay-object-modal__period strong {
    color: #1c2e25;
    font-size: 10px;
}

.is-stay-object-modal__features {
    margin-bottom: 12px;
}

.is-stay-object-modal__map {
    height: 230px;
    margin-top: 12px;
    overflow: hidden;
    border-radius: 10px;
    background: #e8ebea;
}

.is-stay-object-modal__map iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.is-stay-object-modal__distances {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 7px;
}

.is-stay-object-modal__distances span {
    padding: 6px 8px;
    border-radius: 7px;
    background: #f6f7f7;
    color: #2d5642;
    font-size: 8px;
    font-weight: 750;
}

.is-stay-object-modal__text {
    margin-top: 13px;
    color: #407a5e;
    font-size: 11px;
    line-height: 1.6;
}

.is-stay-object-modal__inquiry {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 40px;
    margin-top: 14px;
    border-radius: 9px;
    background: #599176;
    color: #ffffff;
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
}

.is-stay-object-modal__inquiry:hover {
    background: #2d5642;
    color: #ffffff;
}

.is-stay-object-modal__inquiry .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object-inquiry {
    max-width: 720px;
}

.is-stay-object-inquiry__form {
    padding: 18px;
}

.is-stay-object-inquiry__summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 15px;
}

.is-stay-object-inquiry__summary span {
    display: grid;
    gap: 3px;
    padding: 9px;
    border: 1px solid #e5e8e7;
    border-radius: 8px;
    background: #fbfbfb;
}

.is-stay-object-inquiry__summary small {
    color: #5e997c;
    font-size: 7.5px;
    font-weight: 800;
    text-transform: uppercase;
}

.is-stay-object-inquiry__summary strong {
    color: #1c2e25;
    font-size: 10px;
}

.is-stay-object-inquiry__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.is-stay-object-inquiry__form label {
    display: grid;
    gap: 5px;
    margin: 0;
}

.is-stay-object-inquiry__form label > span {
    color: #407a5e;
    font-size: 8.5px;
    font-weight: 800;
    text-transform: uppercase;
}

.is-stay-object-inquiry__form input {
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 0 10px;
    border: 1px solid #dce4e0;
    border-radius: 8px;
    outline: none;
    background: #fbfcfc;
    color: #1c2e25;
    font-family: inherit;
    font-size: 11px;
    box-shadow: none;
}

.is-stay-object-inquiry__form input:focus {
    border-color: #599176;
    background: #ffffff;
}

.is-stay-object-inquiry__terms {
    display: flex !important;
    grid-template-columns: auto 1fr;
    align-items: flex-start;
    gap: 8px !important;
    margin-top: 13px !important;
}

.is-stay-object-inquiry__terms input {
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    margin-top: 1px;
}

.is-stay-object-inquiry__terms span {
    color: #468667 !important;
    font-size: 9px !important;
    font-weight: 650 !important;
    line-height: 1.4;
    text-transform: none !important;
}

.is-stay-object-inquiry__terms a {
    color: #599176;
}

.is-stay-object-inquiry__form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 42px;
    margin-top: 14px;
    border: 0;
    border-radius: 9px;
    background: #599176;
    color: #ffffff;
    font-family: inherit;
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    box-shadow: 0 7px 18px rgba(89, 145, 118, .22);
    cursor: pointer;
}

.is-stay-object-inquiry__form button:hover {
    background: #2d5642;
}

.is-stay-object-inquiry__form button .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-stay-object-inquiry__form > p {
    margin: 10px 0 0;
    color: #6ba488;
    font-size: 8.5px;
    line-height: 1.45;
    text-align: center;
}

/* =========================================================
   KOREKCIJA FANCYBOX I KONTAKT LINKOVA
   Fajl: jedan_objekat.php
   ========================================================= */

/*
 * custom.css već ima globalno pravilo:
 * .is-vest__body a { color: ... }
 *
 * Zato kontakt dugmad moraju imati specifičniji selektor.
 */
.is-vest__body a.is-stay-object__contact-link,
.is-vest__body a.is-stay-object__contact-link span,
.is-vest__body a.is-stay-object__contact-link .fa {
    color: #2d5642 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.is-vest__body a.is-stay-object__contact-link--primary,
.is-vest__body a.is-stay-object__contact-link--primary span,
.is-vest__body a.is-stay-object__contact-link--primary .fa {
    color: #ffffff !important;
}

.is-vest__body a.is-stay-object__contact-link:hover,
.is-vest__body a.is-stay-object__contact-link:hover span,
.is-vest__body a.is-stay-object__contact-link:hover .fa {
    color: #599176 !important;
}

.is-vest__body a.is-stay-object__contact-link--primary:hover,
.is-vest__body a.is-stay-object__contact-link--primary:hover span,
.is-vest__body a.is-stay-object__contact-link--primary:hover .fa {
    color: #ffffff !important;
}

/* Ista zaštita za akcije smeštajnih jedinica. */
.is-vest__body a.is-stay-unit__inquiry,
.is-vest__body a.is-stay-unit__inquiry .fa {
    color: #2d5642 !important;
}

.is-vest__body a.is-stay-unit__details,
.is-vest__body a.is-stay-unit__details .fa,
.is-vest__body a.is-stay-object-modal__inquiry,
.is-vest__body a.is-stay-object-modal__inquiry .fa {
    color: #ffffff !important;
}

/* =========================================================
   FANCYBOX INLINE SADRŽAJ — IZVORNO PONAŠANJE
   Fajl: jedan_objekat.php
   ========================================================= */

/*
 * #popup-jedinice* i #popup-rezervacija* imaju inline
 * style="display: none;" u PHP-u.
 *
 * custom.css ne sme da postavlja display za te elemente niti za njihove
 * kopije unutar Fancybox kontejnera. Postojeći Fancybox JavaScript sam
 * upravlja prikazom inline sadržaja.
 */

/* =========================================================
   POPUP JEDINICE — KLASIČAN RASPORED U NOVOM DIZAJNU
   Fajl: jedan_objekat.php
   ========================================================= */

.fancybox-slide--html .is-stay-object-modal--unit,
.is-stay-object-modal--unit {
    width: min(1460px, calc(100vw - 32px));
    max-width: 1460px;
    max-height: calc(100vh - 24px);
    overflow: hidden;
    border-radius: 15px;
}

.is-stay-object-modal__header--classic {
    min-height: 82px;
    padding: 13px 64px 13px 22px;
}

.is-stay-object-modal__title-group {
    min-width: 0;
}

.is-stay-object-modal__title-group > span {
    margin-bottom: 5px;
}

.is-stay-object-modal__title-group h3 {
    font-size: 23px;
    letter-spacing: -.4px;
}

.is-stay-object-modal__header-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
    margin-top: 7px;
}

.is-stay-object-modal__header-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 9px;
    line-height: 1;
    font-weight: 750;
    letter-spacing: .02em;
    text-transform: none;
}

.is-stay-object-modal__header-meta .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #bfcfc7;
}

.is-stay-object-modal__classic-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    height: calc(100vh - 116px);
    max-height: 920px;
    min-height: 670px;
    overflow: hidden;
    background: #ffffff;
}

.is-stay-object-modal__classic-left,
.is-stay-object-modal__classic-right {
    min-width: 0;
    overflow-y: auto;
}

.is-stay-object-modal__classic-left {
    padding: 20px;
    border-right: 1px solid #e5e8e7;
    background: #f6f8f7;
}

.is-stay-object-modal__classic-right {
    padding: 20px;
    background: #ffffff;
}

.is-stay-object-modal__classic-gallery {
    width: 100%;
}

.is-stay-object-modal__classic-main-image {
    display: block;
    height: clamp(370px, calc(100vh - 455px), 520px);
    overflow: hidden;
    border-radius: 12px;
    background: #e8ebea;
    box-shadow: 0 10px 26px rgba(45, 86, 66, .10);
}

.is-stay-object-modal__classic-main-image img,
.is-stay-object-modal__classic-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.is-stay-object-modal__classic-thumbs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 7px;
    margin-top: 8px;
}

.is-stay-object-modal__classic-thumb {
    position: relative;
    display: block;
    height: 104px;
    overflow: hidden;
    border-radius: 9px;
    background: #e8ebea;
}

.is-stay-object-modal__classic-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid rgba(32, 52, 42, .08);
    border-radius: inherit;
    pointer-events: none;
}

.is-stay-object-modal__more-photos {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(32, 52, 42, .64);
    color: #ffffff;
    font-size: 32px;
    line-height: 1;
    font-weight: 900;
}

.is-stay-object-modal__hidden-photo {
    display: none;
}

.is-stay-object-modal__classic-features {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 14px;
    margin-top: 18px;
    padding: 17px;
    border: 1px solid #e5e8e7;
    border-radius: 12px;
    background: #ffffff;
}

.is-stay-object-modal__classic-features span {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    min-width: 0;
    color: #305a46;
    font-size: 10.5px;
    line-height: 1.35;
    font-weight: 650;
}

.is-stay-object-modal__classic-features .fa {
    flex: 0 0 auto;
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #16913f;
    font-size: 13px;
}

.is-stay-object-modal__booking-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 126px;
    align-items: stretch;
    gap: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e5e8e7;
}

.is-stay-object-modal__booking-copy {
    min-width: 0;
}

.is-stay-object-modal__booking-label {
    display: inline;
    color: #1c2e25;
    font-size: 19px;
    line-height: 1.2;
    font-weight: 800;
}

.is-stay-object-modal__booking-price {
    display: inline;
    margin-left: 5px;
    font-size: 19px;
    line-height: 1.2;
    font-weight: 900;
    text-transform: uppercase;
}

.is-stay-object-modal__booking-price--available {
    color: #168447;
}

.is-stay-object-modal__booking-price--reserved {
    color: #c44141;
}

.is-stay-object-modal__booking-price--inquiry,
.is-stay-object-modal__booking-price--minimum {
    color: #d77b00;
}

.is-stay-object-modal__booking-dates {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 14px;
    margin-top: 5px;
    color: #305a46;
    font-size: 10.5px;
    line-height: 1.35;
}

.is-stay-object-modal__booking-copy > small {
    display: block;
    margin-top: 3px;
    color: #6ba488;
    font-size: 7.5px;
    line-height: 1.35;
}

.is-stay-object-modal__classic-inquiry {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 80px;
    padding: 10px;
    border: 1px solid #cfdad5;
    border-radius: 10px;
    background: linear-gradient(135deg, #599176, #3e775b);
    color: #ffffff !important;
    font-size: 12px;
    line-height: 1.1;
    font-weight: 850;
    text-align: center;
    text-transform: uppercase;
    box-shadow: 0 8px 20px rgba(89, 145, 118, .20);
}

.is-stay-object-modal__classic-inquiry:hover {
    background: #2d5642;
    color: #ffffff !important;
}

.is-stay-object-modal__classic-inquiry.is-disabled {
    border-color: #e0e4e2;
    background: #f0f3f2;
    color: #84b49d !important;
    box-shadow: none;
}

.is-stay-object-modal__classic-inquiry .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 18px;
}

.is-stay-object-modal__classic-map {
    height: 350px;
    margin-top: 14px;
    overflow: hidden;
    border-radius: 11px;
    background: #e8ebea;
    box-shadow: 0 7px 20px rgba(45, 86, 66, .08);
}

.is-stay-object-modal__classic-map iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.is-stay-object-modal__classic-details {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 14px;
    padding: 14px 0;
    border-bottom: 1px solid #e5e8e7;
}

.is-stay-object-modal__classic-details a,
.is-stay-object-modal__classic-details span {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: #305a46 !important;
    font-size: 10.5px;
    line-height: 1.35;
    font-weight: 650;
    overflow-wrap: anywhere;
}

.is-stay-object-modal__classic-details a:hover {
    color: #599176 !important;
}

.is-stay-object-modal__classic-details .fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 19px;
    width: 19px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #599176;
    font-size: 13px;
}

.is-stay-object-modal__classic-details .is-stay-object__freshness--good {
    color: #168447 !important;
}

.is-stay-object-modal__classic-details .is-stay-object__freshness--old {
    color: #c44141 !important;
}

.is-stay-object-modal__classic-text {
    padding: 15px 0;
    border-bottom: 1px solid #e5e8e7;
    color: #305a46;
    font-size: 11px;
    line-height: 1.6;
}

.is-stay-object-modal__classic-text > :first-child {
    margin-top: 0;
}

.is-stay-object-modal__classic-text > :last-child {
    margin-bottom: 0;
}

.is-stay-object-modal__classic-distances {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding-top: 14px;
}

.is-stay-object-modal__classic-distances span {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 7px 9px;
    border-radius: 8px;
    background: #f6f7f7;
    color: #2d5642;
    font-size: 9px;
    line-height: 1.25;
    font-weight: 700;
}

.is-stay-object-modal__classic-distances strong {
    color: #2d5642;
}

.is-stay-object-modal__classic-distances .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #599176;
}

/* =========================================================
   ORIGINALNI FANCYBOX MODUL — NOVI DIZAJN
   ========================================================= */

.is-vest__body .is-stay-legacy-modern {
    margin: -18px;
    padding: 18px;
    background: #f6f8f7;
    color: #1c2e25;
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-stay-legacy-modern *,
.is-stay-legacy-unit-popup *,
.is-stay-legacy-inquiry-popup * {
    box-sizing: border-box;
}

.is-stay-legacy-overview {
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(245px, .72fr);
    gap: 15px;
    margin: 0 0 15px !important;
}

.is-stay-legacy-overview > .ui-block-a,
.is-stay-legacy-overview > .ui-block-b {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

.is-stay-legacy-overview > .ui-block-a,
.is-stay-legacy-overview > .ui-block-b > div,
.is-stay-legacy-description {
    overflow: hidden;
    border: 1px solid #e5e8e7;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, .10);
}

.is-stay-legacy-overview .box-item.bigger {
    height: 345px !important;
    padding: 0 !important;
}

.is-stay-legacy-overview .news-box1,
.is-stay-legacy-overview .box-item,
.is-stay-legacy-overview .img {
    width: 100%;
    height: 100%;
}

.is-stay-legacy-overview img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

.is-stay-legacy-overview > .ui-block-b > div {
    min-height: 345px;
    padding: 16px;
}

.is-stay-legacy-modern .phoneButton {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    border-radius: 9px;
    background: linear-gradient(135deg,#599176,#3e775b) !important;
    color: #fff !important;
    box-shadow: 0 7px 18px rgba(89, 145, 118, .22);
}

.is-stay-legacy-modern .phoneButton *,
.is-vest__body .is-stay-legacy-modern .phoneButton * {
    color: #fff !important;
}

.is-stay-legacy-modern .ui-btn {
    display: flex !important;
    align-items: center;
    min-height: 38px;
    margin: 7px 0 0 !important;
    padding: 9px 11px !important;
    border: 1px solid #dfe4e2 !important;
    border-radius: 9px !important;
    background: #fbfbfb !important;
    color: #2d5642 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

.is-stay-legacy-description {
    margin-bottom: 15px;
    padding: 18px;
    color: #36664f;
    line-height: 1.7;
}

.is-stay-legacy-availability-heading {
    display: grid !important;
    grid-template-columns: 1fr 110px;
    align-items: center;
    gap: 12px;
    margin: 0 !important;
    padding: 14px 16px;
    border-radius: 15px 15px 0 0;
    background: linear-gradient(135deg,#20342a,#599176);
    color: #fff;
}

.is-stay-legacy-availability-heading > div {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

.is-stay-legacy-unit-header {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.is-stay-legacy-unit-header > li {
    position: relative;
    min-height: 58px;
    margin: 15px 0 0 !important;
    padding: 16px 165px 16px 18px !important;
    border: 0 !important;
    border-radius: 14px 14px 0 0 !important;
    background: linear-gradient(135deg,#20342a,#2d5642) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    text-shadow: none !important;
}

.is-stay-legacy-unit-header .ui-li-count {
    top: 50% !important;
    right: 14px !important;
    min-width: 135px;
    transform: translateY(-50%);
    border: 0 !important;
    border-radius: 9px !important;
    font-size: 10px !important;
}

.is-stay-legacy-unit-body {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 250px;
    gap: 15px;
    margin: 0 0 15px !important;
    padding: 15px;
    border: 1px solid #e5e8e7;
    border-top: 0;
    border-radius: 0 0 14px 14px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(45, 86, 66, .08);
}

.is-stay-legacy-unit-body > div {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

.is-stay-legacy-unit-body .box-item.bigger {
    height: 170px !important;
    padding: 0 !important;
}

.is-stay-legacy-unit-body .news-box1,
.is-stay-legacy-unit-body .box-item,
.is-stay-legacy-unit-body .img {
    width: 100%;
    height: 100%;
}

.is-stay-legacy-unit-body img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    border-radius: 10px;
}

/* Originalni popup: samo izgled, bez menjanja display/Fancybox pravila. */
.is-stay-legacy-unit-popup {
    width: min(1460px, calc(100vw - 32px));
    max-width: 1460px;
    max-height: calc(100vh - 24px);
    padding: 0 !important;
    overflow: auto;
    border-radius: 15px;
    background: #fff;
    color: #1c2e25;
    font-family: Roboto,Tahoma,Arial,sans-serif;
}

.is-stay-legacy-unit-popup > div:first-child {
    padding: 15px 58px 15px 20px !important;
    border: 0 !important;
    background: linear-gradient(135deg,#20342a,#599176) !important;
    color: #fff !important;
    font-size: 19px !important;
    font-weight: 850;
}

.is-stay-legacy-unit-popup .column1,
.is-stay-legacy-unit-popup .column2 {
    width: 50% !important;
    padding: 18px !important;
}

.is-stay-legacy-unit-popup .column1 {
    border-right: 1px solid #e5e8e7;
    background: #f6f8f7;
}

.is-stay-legacy-unit-popup .column2 {
    background: #fff;
}

.is-stay-legacy-unit-popup .column1 img,
.is-stay-legacy-unit-popup iframe {
    border-radius: 10px;
}

.is-stay-legacy-unit-popup .column1 > div:nth-child(2) {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px 14px;
    padding: 15px;
    border: 1px solid #e5e8e7;
    border-radius: 11px;
    background: #fff;
}

.is-stay-legacy-unit-popup .column1 > div:nth-child(2) > div {
    float: none !important;
    width: auto !important;
}

.is-stay-legacy-unit-popup button,
.is-stay-legacy-unit-popup .ui-btn {
    border: 0 !important;
    border-radius: 9px !important;
    background: #599176 !important;
    color: #fff !important;
    text-shadow: none !important;
}

/* Originalni popup upita: mehanizam i validacija ostaju isti. */
.is-stay-legacy-inquiry-popup {
    width: min(720px, calc(100vw - 32px));
    max-width: 720px;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 15px;
    background: #fff;
    color: #1c2e25;
    font-family: Roboto,Tahoma,Arial,sans-serif;
}

.is-stay-legacy-inquiry-popup > div:first-child {
    padding: 15px 55px 15px 18px !important;
    border: 0 !important;
    background: linear-gradient(135deg,#20342a,#599176) !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 800;
}

.is-stay-legacy-inquiry-popup .ui-body {
    padding: 18px !important;
    border: 0 !important;
    background: #fff !important;
}

.is-stay-legacy-inquiry-popup input[type="text"],
.is-stay-legacy-inquiry-popup input[type="tel"],
.is-stay-legacy-inquiry-popup input[type="number"],
.is-stay-legacy-inquiry-popup input[type="email"] {
    width: 100%;
    min-height: 40px;
    padding: 9px 10px;
    border: 1px solid #dce4e0 !important;
    border-radius: 8px !important;
    background: #fbfcfc !important;
    color: #1c2e25 !important;
    box-shadow: none !important;
}

.is-stay-legacy-inquiry-popup input[type="submit"] {
    width: 100%;
    min-height: 43px;
    margin-top: 12px;
    border: 0 !important;
    border-radius: 9px !important;
    background: #599176 !important;
    color: #fff !important;
    font-weight: 850 !important;
    text-shadow: none !important;
}

/* =========================================================
   SKI PASS — INCLUDE VERZIJA
   Fajl: skipass_include.php
   ========================================================= */

.is-vest__body .is-skipass {
    --skipass-blue-950: #20342a;
    --skipass-blue-900: #2d5642;
    --skipass-blue-700: #599176;
    --skipass-blue-100: #f3f6f5;
    --skipass-page: #f6f8f7;
    --skipass-card: #ffffff;
    --skipass-text: #1c2e25;
    --skipass-muted: #5e997c;
    --skipass-border: #e5e8e7;
    width: auto;
    max-width: none;
    margin: 0 -25px -27px;
    padding: 0 18px 18px;
    background: var(--skipass-page);
    color: var(--skipass-text);
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-skipass,
.is-skipass *,
.is-skipass *::before,
.is-skipass *::after {
    box-sizing: border-box;
}

.is-vest__body .is-skipass a {
    text-decoration: none !important;
}

.is-skipass__hero {
    position: relative;
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr);
    gap: 15px;
    min-height: 178px;
    margin-bottom: 14px;
    overflow: hidden;
    padding: 23px 24px 20px;
    border-radius: 15px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% -15%, rgba(153, 192, 173, .38), transparent 39%),
        linear-gradient(135deg, var(--skipass-blue-950), var(--skipass-blue-700));
    box-shadow: 0 14px 34px rgba(45, 86, 66, .15);
}

.is-skipass__hero::after {
    content: "";
    position: absolute;
    right: -64px;
    bottom: -105px;
    width: 285px;
    height: 210px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 50%;
    transform: rotate(-14deg);
    pointer-events: none;
}

.is-skipass__hero-icon {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 16px;
    background: rgba(255, 255, 255, .11);
}

.is-skipass__hero-icon .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #ffffff;
    font-size: 25px;
}

.is-skipass__hero-content {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.is-skipass__eyebrow {
    display: block;
    margin: 2px 0 7px;
    color: rgba(255, 255, 255, .72);
    font-size: 9px;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.is-vest__body .is-skipass .is-skipass__hero-title {
    margin: 0;
    color: #ffffff !important;
    font-size: 29px;
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -.65px;
}

.is-skipass__hero-text {
    max-width: 570px;
    margin: 10px 0 0 !important;
    color: rgba(255, 255, 255, .82);
    font-size: 11.5px;
    line-height: 1.55;
}

.is-skipass__hero-badges {
    position: relative;
    z-index: 1;
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 2px;
}

.is-skipass__hero-badges span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 6px 9px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 999px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 750;
}

.is-skipass__hero-badges .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #71e7a8;
}

.is-skipass__quick-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.is-vest__body .is-skipass__quick-link {
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr) 20px;
    align-items: center;
    gap: 10px;
    min-height: 72px;
    padding: 12px;
    border: 1px solid var(--skipass-border);
    border-radius: 12px;
    background: #ffffff;
    color: var(--skipass-text) !important;
    box-shadow: 0 8px 22px rgba(45, 86, 66, .08);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.is-vest__body .is-skipass__quick-link:hover {
    border-color: #cbd7d1;
    color: var(--skipass-blue-700) !important;
    box-shadow: 0 12px 27px rgba(45, 86, 66, .12);
    transform: translateY(-2px);
}

.is-skipass__quick-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    border-radius: 11px;
    background: var(--skipass-blue-100);
    color: var(--skipass-blue-700);
}

.is-skipass__quick-icon .fa,
.is-skipass__quick-arrow {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-skipass__quick-link strong,
.is-skipass__quick-link small {
    display: block;
}

.is-skipass__quick-link strong {
    color: var(--skipass-text);
    font-size: 11px;
    line-height: 1.25;
    font-weight: 850;
}

.is-skipass__quick-link small {
    margin-top: 3px;
    color: var(--skipass-muted);
    font-size: 8.5px;
    line-height: 1.3;
    font-weight: 650;
}

.is-skipass__quick-arrow {
    color: #97c0ac;
    font-size: 10px;
}

.is-skipass__card {
    margin-bottom: 14px;
    overflow: hidden;
    border: 1px solid var(--skipass-border);
    border-radius: 15px;
    background: var(--skipass-card);
    box-shadow: 0 12px 30px rgba(45, 86, 66, .09);
}

.is-skipass__card:last-child {
    margin-bottom: 0;
}

.is-skipass__card-header {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 68px;
    padding: 13px 16px;
    border-bottom: 1px solid var(--skipass-border);
    background: linear-gradient(180deg, #ffffff, #fbfcfc);
}

.is-skipass__card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: var(--skipass-blue-100);
    color: var(--skipass-blue-700);
}

.is-skipass__card-icon .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 16px;
}

.is-skipass__card-header > div > span {
    display: block;
    margin-bottom: 3px;
    color: var(--skipass-muted);
    font-size: 8px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-vest__body .is-skipass .is-skipass__card-header h3 {
    margin: 0;
    color: var(--skipass-text) !important;
    font-size: 16px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -.18px;
}

.is-skipass__card-body {
    padding: 17px;
    color: #3c7258;
    font-size: 11.5px;
    line-height: 1.65;
}

.is-skipass__card-body p {
    margin: 0 0 13px;
}

.is-skipass__card-body p:last-child {
    margin-bottom: 0;
}

.is-skipass__contacts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 15px;
}

.is-vest__body .is-skipass__contacts a {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    min-height: 54px;
    padding: 9px 10px;
    border: 1px solid #d9e2de;
    border-radius: 10px;
    background: #f9fbfa;
    color: var(--skipass-blue-900) !important;
}

.is-vest__body .is-skipass__contacts a:hover {
    border-color: var(--skipass-blue-700);
    background: var(--skipass-blue-700);
    color: #ffffff !important;
}

.is-skipass__contacts .fa {
    flex: 0 0 auto;
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: 16px;
}

.is-skipass__contacts span {
    min-width: 0;
}

.is-skipass__contacts small,
.is-skipass__contacts strong {
    display: block;
}

.is-skipass__contacts small {
    margin-bottom: 2px;
    color: inherit;
    font-size: 7.5px;
    line-height: 1.2;
    font-weight: 700;
    opacity: .72;
    text-transform: uppercase;
}

.is-skipass__contacts strong {
    color: inherit;
    font-size: 9px;
    line-height: 1.25;
    font-weight: 850;
    white-space: nowrap;
}

.is-skipass__contact-note {
    margin-top: 8px !important;
    color: var(--skipass-muted);
    font-size: 8.5px;
}

.is-skipass__sales {
    background: #ffffff;
}

.is-skipass__sale-row {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) 125px 63px;
    align-items: center;
    gap: 10px;
    min-height: 72px;
    padding: 10px 14px;
    border-bottom: 1px solid #edefee;
}

.is-skipass__sale-row:last-child {
    border-bottom: 0;
}

.is-skipass__sale-row--web {
    background: #fbfbfb;
}

.is-skipass__sale-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--skipass-blue-100);
    color: var(--skipass-blue-700);
}

.is-skipass__sale-mark .fa,
.is-skipass__sale-status .fa,
.is-skipass__sale-map .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

.is-skipass__sale-main {
    min-width: 0;
}

.is-skipass__sale-main strong,
.is-skipass__sale-main span {
    display: block;
}

.is-skipass__sale-main strong {
    color: var(--skipass-text);
    font-size: 9.5px;
    line-height: 1.25;
    font-weight: 900;
    letter-spacing: .025em;
}

.is-skipass__sale-main span {
    margin-top: 4px;
    overflow: hidden;
    color: var(--skipass-muted);
    font-size: 8.5px;
    line-height: 1.35;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.is-skipass__sale-status {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    min-width: 0;
    font-size: 8.5px;
    line-height: 1.3;
    font-weight: 800;
    text-align: right;
}

.is-skipass__sale-status.is-open {
    color: #168447;
}

.is-skipass__sale-status.is-closed {
    color: #c44141;
}

.is-vest__body .is-skipass__sale-map {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 31px;
    padding: 7px 8px;
    border: 1px solid #d9e2de;
    border-radius: 8px;
    background: #f9fbfa;
    color: var(--skipass-blue-900) !important;
    font-size: 8px;
    line-height: 1;
    font-weight: 850;
    text-transform: uppercase;
}

.is-vest__body .is-skipass__sale-map:hover {
    border-color: var(--skipass-blue-700);
    background: var(--skipass-blue-700);
    color: #ffffff !important;
}

.is-skipass__sale-map.is-disabled {
    color: #91bba7 !important;
    background: #f4f5f5;
}

.is-skipass__legend {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid var(--skipass-border);
    background: #fbfbfb;
}

.is-skipass__legend span {
    color: #599075;
    font-size: 8px;
    line-height: 1.45;
}

.is-skipass__legend strong {
    color: var(--skipass-blue-900);
}

.is-skipass__empty {
    padding: 18px;
    color: var(--skipass-muted);
    font-size: 10px;
    text-align: center;
}

.is-skipass__pickup-locations {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 14px 0;
}

.is-skipass__pickup-locations span {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 42px;
    padding: 8px 9px;
    border: 1px solid #e5e8e7;
    border-radius: 9px;
    background: #fbfbfb;
    color: #407a5e;
    font-size: 8.5px;
    line-height: 1.35;
    font-weight: 700;
}

.is-skipass__pickup-locations .fa {
    flex: 0 0 auto;
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--skipass-blue-700);
}

.is-skipass__discounts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 15px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
}

.is-skipass__discounts li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 !important;
    padding: 9px 10px;
    border: 1px solid #e8ebea;
    border-radius: 9px;
    background: #fbfcfc;
    color: #407a5e;
    font-size: 9px;
    line-height: 1.45;
}

.is-skipass__discounts .fa {
    flex: 0 0 auto;
    width: auto;
    margin-top: 2px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #168447;
}

.is-skipass__documents {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 14px;
    background: var(--skipass-page);
}

.is-vest__body .is-skipass__documents a {
    display: grid;
    grid-template-columns: 35px minmax(0, 1fr) 16px;
    align-items: center;
    gap: 9px;
    min-height: 58px;
    padding: 9px 10px;
    border: 1px solid var(--skipass-border);
    border-radius: 10px;
    background: #ffffff;
    color: #305a46 !important;
    font-size: 9px;
    line-height: 1.35;
    font-weight: 750;
}

.is-vest__body .is-skipass__documents a:hover {
    border-color: #cbd7d1;
    color: var(--skipass-blue-700) !important;
    box-shadow: 0 7px 18px rgba(45, 86, 66, .08);
}

.is-skipass__document-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border-radius: 9px;
    background: #fff0f0;
    color: #c44141;
}

.is-skipass__documents .fa {
    width: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
}

/* =========================================================
   SKI PASS — PLAVA ZAGLAVLJA KARTICA
   ========================================================= */

.is-skipass__card-header {
    border-bottom-color: rgba(255, 255, 255, .12);
    background:
        radial-gradient(
            circle at 88% -35%,
            rgba(255, 255, 255, .20),
            transparent 42%
        ),
        linear-gradient(135deg, #20342a, #599176);
    color: #ffffff;
}

.is-skipass__card-icon {
    border: 1px solid rgba(255, 255, 255, .20);
    background: rgba(255, 255, 255, .12);
    color: #ffffff;
}

.is-skipass__card-header > div > span {
    color: rgba(255, 255, 255, .74);
}

.is-vest__body .is-skipass .is-skipass__card-header h3 {
    color: #ffffff !important;
}

/* =========================================================
   SKI PASS — PORAVNANJE TEKSTA U ZAGLAVLJU
   ========================================================= */

.is-skipass__card-header > div {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left !important;
}

.is-skipass__card-header > div > span {
    width: auto !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    text-align: left !important;
    align-self: flex-start;
}

.is-vest__body .is-skipass .is-skipass__card-header h3 {
    width: auto;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    align-self: flex-start;
}

/* =========================================================
   SKI PASS — PARAGRAFI PORAVNATI ULEVO
   ========================================================= */

.is-vest__body .is-skipass .is-skipass__card-body,
.is-vest__body .is-skipass .is-skipass__card-body p,
.is-vest__body .is-skipass .is-skipass__information,
.is-vest__body .is-skipass .is-skipass__information p {
    text-align: left !important;
}

.is-skipass__pickup-locations {
    text-align: left !important;
}

/* =========================================================
   PRETRAGA SMEŠTAJA — KALENDAR I DESKTOP RASPORED
   ========================================================= */

/*
 * Font Awesome se učitava na svim stranama, za razliku od Bootstrap
 * Icons biblioteke koja je bila dostupna samo na pojedinim šablonima.
 */
.is-booking-form__field label .fa {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

.is-booking-form__calendar-button .fa {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
}

/*
 * Kalendar mora biti iznad glavne navigacije, dropdown menija,
 * kartica i drugih elemenata koji formiraju sopstveni stacking context.
 */
.datepicker,
.datepicker-dropdown,
.datepicker.datepicker-dropdown {
    z-index: 99999 !important;
}

.datepicker-dropdown {
    overflow: visible;
}

/*
 * Na stranici rezultata desna kolona je dovoljno široka za sva četiri
 * polja u jednom redu. Ranije pravilo je namerno forsiralo dve kolone.
 */
body.is-stay-results-body .is-booking-form {
    grid-template-columns:
        minmax(0, 1.36fr)
        minmax(0, 1.36fr)
        minmax(82px, .68fr)
        minmax(78px, .62fr) !important;
    gap: 8px !important;
}

body.is-stay-results-body .is-booking-form__field label {
    white-space: nowrap;
}

body.is-stay-results-body .is-booking-form__input,
body.is-stay-results-body .is-booking-form__select {
    padding-left: 9px;
    font-size: 12px;
}

body.is-stay-results-body .is-booking-form__date .is-booking-form__input {
    padding-right: 37px;
}

body.is-stay-results-body .is-booking-form__calendar-button {
    right: 5px;
    width: 27px;
    height: 27px;
}

/*
 * Na pojedinačnoj strani smeštaja zadržava se postojeći raspored u
 * jednom redu. Pravilo samo sprečava prelamanje u slučaju nasleđenog
 * responsive CSS-a iz Bootstrap/jQuery Mobile biblioteka.
 */
body.is-fixed-desktop .is-vest--accommodation .is-booking-form {
    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(0, 1.15fr)
        minmax(82px, .78fr)
        minmax(78px, .72fr) !important;
}

/* =========================================================
   PRETRAGA SMEŠTAJA — SVE IKONICE I UJEDNAČENE ŠIRINE
   ========================================================= */

/*
 * Sve oznake koriste Font Awesome, koji je učitan u svakom šablonu.
 */
.is-booking-form__field label .fa {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 14px;
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/*
 * Rezultati pretrage i stranica pojedinačne vesti koriste isti odnos
 * širina kao naslovna strana. Uklanja se prethodno smanjivanje fonta,
 * unutrašnjeg razmaka i širine poslednja dva polja.
 */
body.is-stay-results-body .is-booking-form,
body.is-fixed-desktop .is-vest--accommodation .is-booking-form,
body.is-fixed-desktop .is-vest .is-booking-form {
    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(0, 1.15fr)
        minmax(92px, .78fr)
        minmax(88px, .72fr) !important;
    gap: 12px !important;
}

body.is-stay-results-body .is-booking-form__input,
body.is-stay-results-body .is-booking-form__select,
body.is-fixed-desktop .is-vest .is-booking-form__input,
body.is-fixed-desktop .is-vest .is-booking-form__select {
    padding-left: 12px;
    font-size: 14px;
}

body.is-stay-results-body .is-booking-form__date .is-booking-form__input,
body.is-fixed-desktop .is-vest .is-booking-form__date .is-booking-form__input {
    padding-right: 42px;
}

body.is-stay-results-body .is-booking-form__calendar-button,
body.is-fixed-desktop .is-vest .is-booking-form__calendar-button {
    right: 7px;
    width: 28px;
    height: 28px;
}

body.is-stay-results-body .is-booking-form__field label,
body.is-fixed-desktop .is-vest .is-booking-form__field label {
    white-space: nowrap;
}

/* =========================================================
   POPUP SMEŠTAJNE JEDINICE — SADRŽAJI ISPOD SLIKA
   ========================================================= */

/*
 * Galerija je grid sa pet kolona za thumbnail fotografije.
 * Bez ovog pravila panel sa sadržajima zauzima samo jednu grid ćeliju,
 * pa se naslov i stavke sabiju uz poslednju fotografiju.
 */
.is-stay-object-modal__gallery > .is-stay-object-modal__features-panel {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 8px 0 0 !important;
    padding: 14px !important;
    border: 1px solid #e5e8e7;
    border-radius: 11px;
    background: #ffffff;
    align-self: start;
}

.is-stay-object-modal__gallery
    > .is-stay-object-modal__features-panel
    > .is-stay-object-modal__features-title {
    display: flex !important;
    align-items: center;
    gap: 8px;
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 0 10px !important;
    border-bottom: 1px solid #eaeceb;
    color: #1c2e25 !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
    letter-spacing: .02em;
    text-align: left !important;
    text-transform: uppercase;
}

.is-stay-object-modal__features-title .fa {
    flex: 0 0 auto;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #599176 !important;
    font-size: 14px !important;
}

/*
 * Stavke su ponovo u tri ravnomerne kolone ispod fotografija.
 * Veća specifičnost poništava staro generičko flex/chip pravilo.
 */
.is-stay-object-modal__gallery
    > .is-stay-object-modal__features-panel
    > .is-stay-object-modal__features {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start;
    gap: 9px 16px !important;
    width: 100% !important;
    margin: 0 !important;
}

.is-stay-object-modal__gallery
    > .is-stay-object-modal__features-panel
    > .is-stay-object-modal__features
    > span {
    display: flex !important;
    align-items: flex-start !important;
    gap: 7px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #305a46 !important;
    font-size: 9.5px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    white-space: normal !important;
}

.is-stay-object-modal__gallery
    > .is-stay-object-modal__features-panel
    > .is-stay-object-modal__features
    > span
    > .fa {
    flex: 0 0 auto;
    width: auto !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #168447 !important;
    font-size: 12px !important;
}

/* =========================================================
   SKI INFO — UKUPNO KM UVEK U DRUGOM REDU
   ========================================================= */

/*
 * Prve tri statistike su u prvom redu.
 * "Ukupno km" je uvek zaseban drugi red preko cele širine,
 * bez obzira na širinu stranice ili kolone.
 */
.ski-info-card .ski-info-summary,
body.is-category-body .ski-info-summary,
body.is-stay-results-body .ski-info-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ski-info-card .ski-info-stat--distance {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: 40px auto minmax(0, 1fr);
    grid-template-areas:
        "icon value label"
        "icon track track"
        "icon secondary secondary";
    align-items: center;
    gap: 4px 11px;
    width: 100%;
    min-width: 0;
    padding: 11px 13px;
    text-align: left;
}

.ski-info-card .ski-info-stat--distance .ski-info-stat__icon {
    grid-area: icon;
    width: 36px;
    height: 36px;
    margin: 0;
}

.ski-info-card .ski-info-stat--distance .ski-info-stat__value {
    grid-area: value;
    overflow: visible !important;
    min-width: max-content;
    color: var(--ski-blue-dark);
    font-size: 18px;
    line-height: 1;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.ski-info-card .ski-info-stat--distance .ski-info-stat__label {
    grid-area: label;
    width: auto;
    margin: 0;
    overflow: visible !important;
    text-align: left;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

.ski-info-card .ski-info-stat--distance .ski-info-stat__track {
    grid-area: track;
    width: 100%;
    margin-top: 4px;
}

.ski-info-card .ski-info-stat--distance .ski-info-stat__secondary {
    grid-area: secondary;
    min-height: 0;
    margin-top: 1px;
    text-align: left;
}

/* =========================================================
   INTERAKTIVNA MAPA — INCLUDE ZA VEST
   Fajl: mapjm_include.php
   ========================================================= */

.is-vest__body .is-mapjm {
    width: auto;
    max-width: none;
    margin: 0 -25px -27px;
    overflow: hidden;
    border: 1px solid #e5e8e7;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(45, 86, 66, .10);
    color: #1c2e25;
    font-family: Roboto, Tahoma, Arial, sans-serif;
}

.is-mapjm,
.is-mapjm *,
.is-mapjm *::before,
.is-mapjm *::after {
    box-sizing: border-box;
}

.is-mapjm__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 74px;
    padding: 13px 16px;
    color: #ffffff;
    background:
        radial-gradient(
            circle at 88% -35%,
            rgba(255, 255, 255, .20),
            transparent 42%
        ),
        linear-gradient(135deg, #20342a, #599176);
}

.is-mapjm__title-wrap {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}

.is-mapjm__header-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 11px;
    background: rgba(255, 255, 255, .12);
}

.is-mapjm__header-icon .fa {
    width: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: 17px !important;
}

.is-mapjm__eyebrow {
    display: block;
    text-align: -webkit-left;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, .72);
    font-size: 8px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.is-vest__body .is-mapjm .is-mapjm__header h2 {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    text-align: left !important;
}

.is-mapjm__actions {
    display: flex;
    align-items: center;
    gap: 7px;
}

.is-vest__body .is-mapjm__actions a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 8px 10px;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 9px;
    background: rgba(255, 255, 255, .10);
    color: #ffffff !important;
    font-size: 8.5px;
    line-height: 1;
    font-weight: 800;
    text-decoration: none !important;
    text-transform: uppercase;
}

.is-vest__body .is-mapjm__actions a:hover {
    background: rgba(255, 255, 255, .20);
    color: #ffffff !important;
}

.is-mapjm__actions .fa {
    width: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
}

.is-mapjm__viewport {
    position: relative;
    width: 100%;
    height: 760px;
    min-height: 640px;
    overflow: hidden;
    background: #e7ebe9;
    isolation: isolate;
}

.is-mapjm__map {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.is-mapjm__geoloc {
    position: absolute;
    z-index: 1000;
    left: 50%;
    bottom: 13px;
    width: 250px;
    min-height: 37px;
    padding: 8px 11px;
    transform: translateX(-50%);
    border: 1px solid #d2ddd8;
    border-radius: 9px;
    background: rgba(255, 255, 255, .96);
    color: #2d5642;
    cursor: pointer;
    font-family: inherit;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 850;
    box-shadow: 0 8px 22px rgba(32, 52, 42, .16);
}

.is-mapjm__geoloc:hover {
    border-color: #599176;
    background: #599176;
    color: #ffffff;
}

.is-mapjm__locating {
    position: absolute;
    z-index: 1001;
    left: 50%;
    bottom: 61px;
    display: none;
    padding: 6px 8px;
    transform: translateX(-50%);
    border: 1px solid #b71c1c;
    border-radius: 7px;
    background: #d32f2f;
    color: #ffffff;
    font-size: 9px;
    line-height: 1;
    font-weight: 850;
    white-space: nowrap;
}

.is-mapjm__statusbar {
    position: absolute;
    z-index: 1000;
    left: 50%;
    bottom: 58px;
    display: none;
    width: 250px;
    padding: 4px 8px;
    transform: translateX(-50%);
    color: #1c2e25;
    font-size: 10px;
    line-height: 1.25;
    text-align: center;
    text-shadow:
        0 0 4px rgba(255, 255, 255, .95),
        0 0 4px rgba(255, 255, 255, .70);
}

.is-mapjm__statusbar i.fa {
    width: auto !important;
    margin-right: 2px;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
}

.is-mapjm__statusbar span {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    font-size: 11px;
}

.is-mapjm__info-box {
    position: absolute !important;
    z-index: 10020;
    right: 10px;
    bottom: 10px;
    left: 10px;
    display: none;
    max-height: 42%;
    overflow-y: auto;
    padding: 11px;
    border: 1px solid rgba(45, 86, 66, .16);
    border-radius: 11px;
    background: rgba(255, 255, 255, .96);
    color: #1c2e25;
    box-shadow: 0 -3px 18px rgba(32, 52, 42, .22);
    text-align: left;
}

.is-mapjm__info-box a {
    color: #2d5642 !important;
}

.is-mapjm__info-box img {
    border-radius: 8px;
}

.is-mapjm .layer-switcher {
    position: absolute;
    top: 13px;
    right: 8px;
    text-align: left;
}

.is-mapjm .layer-switcher button {
    width: 39px;
    height: 39px;
    padding: 0;
    border: 1px solid rgba(32, 52, 42, .24);
    border-radius: 9px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 5px 16px rgba(32, 52, 42, .12);
}

.is-mapjm .layer-switcher button::before {
    content: "\f24d";
    display: block;
    color: #305a46;
    font-family: FontAwesome;
    font-size: 18px;
    line-height: 37px;
    text-align: center;
}

.is-mapjm .layer-switcher button span {
    display: none;
}

.is-mapjm .ol-zoom {
    top: 13px !important;
    left: 8px;
}

.is-mapjm .ol-rotate {
    top: 58px !important;
    right: 8px;
}

.is-mapjm .ol-control button {
    border-radius: 7px;
}

.is-mapjm .ol-touch .ol-control button {
    font-size: 1.55em;
}

.is-mapjm .ol-attribution {
    right: auto !important;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: none !important;
}

.is-mapjm .ol-attribution ul {
    padding-bottom: 2px;
    font-size: 9px;
}

.is-mapjm .bw-pistes canvas {
    filter: grayscale(100%) contrast(140%);
}

@media (max-width: 767.98px) {
    .is-vest__body .is-mapjm {
        margin-right: -16px;
        margin-left: -16px;
    }

    .is-mapjm__viewport {
        height: 680px;
    }
}

/* =========================================================
   INTERAKTIVNA I SKI MAPA — DVA BOKSA
   ========================================================= */

/* Razmak između interaktivne i statične ski mape. */
.is-vest__body .is-mapjm--interactive {
    margin-bottom: 15px;
}

.is-vest__body .is-mapjm--ski-map {
    margin-top: 0;
}

/* Statična mapa koristi isti okvir i zaglavlje kao interaktivna mapa. */
.is-mapjm__static-media {
    width: 100%;
    overflow: hidden;
    background: #e7ebe9;
}

.is-mapjm__static-media > a {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    text-decoration: none;
}

.is-mapjm__static-media img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    margin: 0;
    padding: 0;
    border: 0;
}

/* =========================================================
   MAPA STATUS BAR — VELIČINA TEMPERATURE I SNEGA
   ========================================================= */

.is-mapjm__statusbar .fa-thermometer-2,
.is-mapjm__statusbar .fa-snowflake-o {
    width: 12px !important;
    height: 12px !important;
    margin: 0 3px 0 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 12px !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}

/* Poravnanje zaglavlja i glavnog menija sa širinom sadržaja */
#myheader .container,
#navbar7 .container,
.infostara-brandbar__inner,
.infostara-navbar {
    width: 100% !important;
    max-width: none !important;
}
