.testclass{display:none}.shop-list .shop-item .shop-item--wrap .shop-item--desc .qty-col input[type=number]::-webkit-outer-spin-button,.shop-list .shop-item .shop-item--wrap .shop-item--desc .qty-col input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important}form .quantity input[type=number]{-moz-appearance:textfield!important}@media(min-width:1042px){.page_header .top-navigation .nav-corpo li a span{display:none!important}}@media(max-width:1320px){.page_header .top-navigation .nav-corpo li{margin-right:2rem!important}}@media(max-width:1140px){.page_header .top-navigation .nav-corpo li{margin-right:9px!important}}.container-skupina{margin-left:auto;margin-right:auto;padding-right:15px;padding-left:15px;width:100%}@media(min-width:576px){.container-skupina{max-width:540px}}@media(min-width:768px){.container-skupina{max-width:720px}}@media(min-width:992px){.container-skupina{max-width:960px}}@media(min-width:1200px){.container-skupina{max-width:1140px}}@media(min-width:1400px){.container-skupina{max-width:1300px}}.general-info .flex-custom>div:first-child{padding-left:0;padding-right:0;align-items:stretch!important}.general-info .flex-custom img.img-fluid{width:100%;height:100%;min-height:460px;object-fit:cover;display:block}.services-list .img-wrapper img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.page-main .examination .container,.page-main .newsletter .container,.page-main .reservation-form .container{padding-left:48px;padding-right:48px}ul.dots:before{display:none!important}ul.dots{padding-top:0}.page-main ul.dots{left:0;width:auto;max-width:100%;padding-left:4rem}.page-main ul.dots li{margin:14px 0}.page-main .examination,.page-main .newsletter,.page-main .reservation-form,.page-main .tabs,.page-main .contact-box-wrap{margin-top:3rem;margin-bottom:3rem}.references .container:before{width:100%}.references p a:not(.btn-std){color:#fff;text-decoration:underline}.mdt-table-scroll{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:1.5rem}.mdt-table-scroll>table{width:max-content;min-width:100%;max-width:none;margin-bottom:0}@media(max-width:575.98px){.page-main .examination .container,.page-main .newsletter .container,.page-main .reservation-form .container{padding-left:20px;padding-right:20px}}@media(min-width:1042px){.page-content{padding-top:40px}}@media(min-width:1200px){.page-content .page-main .reservation-form{margin-right:calc((-100vw + 100% + 60px)/2)!important;padding-right:calc((100vw - 100% + 16px)/2)!important}}.page-content .page-main .image-content .right .right-content ul.dots{padding-left:4rem}.page-main .services-list{text-align:left}.page-main .right-content .btn-std+.btn-std{margin-top:.8rem}@media(max-width:575.98px){.page-main a.btn-std+a.btn-std{margin-top:8px}}.recent_news .news_box{display:flex;flex-direction:column}.recent_news .news_box .btn-std{margin-top:auto;align-self:flex-start}.banner h2{font-size:4.5rem;line-height:1.1em;margin-bottom:3rem!important}.banner .banner-content h2{max-width:660px;font-weight:700;margin:0 0 12vh}@media(max-width:768px){.banner .banner-content h2{max-width:100%;margin-bottom:2rem;padding:30px}.banner .banner-content .banner-container h2{font-size:2.4rem;margin-bottom:1rem;padding:30px 0}}a.mdt-lightbox{cursor:zoom-in;display:inline-block}.general-info .flex-custom>div:first-child a.mdt-lightbox{display:block;width:100%;height:100%}.mdt-lb{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:#0a0e12e0}.mdt-lb--open{display:flex}.mdt-lb-noscroll{overflow:hidden}.mdt-lb__figure{margin:0;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;align-items:center}.mdt-lb__img{max-width:92vw;max-height:82vh;width:auto;height:auto;box-shadow:0 10px 40px #00000080}.mdt-lb__caption{color:#cfd8dd;font-size:1.3rem;padding-top:10px;text-align:center}.mdt-lb__close{position:absolute;top:12px;right:18px;background:none;border:0;color:#fff;font-size:3.6rem;line-height:1;cursor:pointer;padding:6px 10px}.mdt-lb__nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1f;border:0;color:#fff;font-size:2.4rem;line-height:1;cursor:pointer;padding:14px 16px;border-radius:4px}.mdt-lb__nav:hover{background:#ffffff40}.mdt-lb__prev{left:14px}.mdt-lb__next{right:14px}.mdt-lb__counter{position:absolute;bottom:14px;left:50%;transform:translate(-50%);color:#cfd8dd;font-size:1.3rem}@media(max-width:575.98px){.mdt-lb__nav{padding:10px 12px}.mdt-lb__close{top:6px;right:8px}}@media(max-width:767px){.banner{margin-bottom:0!important}.general-info{padding-top:6rem}}

.menu>ul>li.menu-cta>a{background:#386d8b;color:#fff;border-radius:30px;padding:10px 24px;margin:15px 0 15px 12px}.menu>ul>li.menu-cta>a:hover{background:#2d586f;color:#fff}
.mdt-header-cta-group{display:none}
@media (max-width:1200px){.menu{position:relative}.menu>ul>li.menu-cta{display:none}
.mdt-header-cta-group{display:block;position:absolute;right:calc(5vw + 52px);top:50%;transform:translateY(-50%);z-index:30}
.mdt-header-cta{display:inline-flex;align-items:center;gap:9px;background:#386d8b;color:#fff;border-radius:30px;padding:8px 18px;font-size:1.3rem;font-weight:700;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.mdt-header-cta:hover,.mdt-header-cta:focus{color:#fff;background:#2d586f}
.mdt-header-cta__caret{width:7px;height:7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg) translateY(-2px);transition:transform .2s ease}
.mdt-header-cta-group.open .mdt-header-cta__caret{transform:rotate(225deg) translate(-1px,1px)}
.mdt-header-cta-menu{position:absolute;right:0;top:calc(100% + 10px);margin:0;padding:8px 0;list-style:none;background:#fff;border-radius:10px;box-shadow:0 14px 40px rgba(13,38,59,.18);min-width:272px;z-index:31}
.mdt-header-cta-menu li{margin:0;padding:0;list-style:none}
.mdt-header-cta-menu li a{display:block;padding:12px 20px;color:#2d2d2d;font-size:1.4rem;line-height:1.4;text-decoration:none;white-space:nowrap}
.mdt-header-cta-menu li a:hover,.mdt-header-cta-menu li a:active{background:#f0f5f9;color:#386d8b}}
/* keep the main menu on one row after adding the "Prenos izvidov in slik" item */
@media (min-width:1201px) and (max-width:1550px){
  .menu>ul>li>a{padding:25px 9px;font-size:1.1rem}
}
@media (min-width:1201px) and (max-width:1330px){
  .menu>ul{padding-left:150px}
  .menu>ul>li>a{padding:25px 6px;font-size:1rem}
}
@media (min-width:1551px) and (max-width:1800px){
  .menu>ul>li>a{padding:25px 12px;font-size:1.25rem}
}

/* === Readability: text-over-photo sections === */
/* "Potrebujete pomoč?" band — the photo gave too little contrast, use the brand gradient instead */
.references,
.references .container:before{
  background-image:radial-gradient(ellipse at 80% -10%,#ffffff21 0%,#ffffff00 55%),linear-gradient(135deg,#386d8b 0%,#2d586f 100%)
}
.references .btn-std__primary{background-color:#fff;color:#2d586f;font-weight:700}
.references .btn-std__primary:hover,
.references .btn-std__primary:focus{background-color:#d9e9f2;color:#2d586f}
/* hero slides — near-opaque panel so the copy stays readable over any photo */
.banner .banner-container{background:#ffffffeb;border-radius:8px;box-shadow:0 12px 35px #0d263b2e}

/* "Oblike naročanja" link lives only in the mobile hamburger menu — on desktop the
   Naročanje CTA pill carries a dropdown with the same destinations */
@media (min-width:1201px){.menu>ul>li.mdt-menu-mobile-only{display:none}}
.menu>ul>li.menu-cta>ul.sub-menu{min-width:300px;right:0;left:auto}
.menu>ul>li.menu-cta>ul.sub-menu>li>a{white-space:nowrap}

/* examination band: busy photo background removed for readability — light brand panel
   with soft corner accents so it does not read as empty */
.examination{background-image:none!important;
  background:
    radial-gradient(460px 460px at 90% -80px, rgba(56,109,139,.12), rgba(56,109,139,0) 70%),
    radial-gradient(420px 420px at -60px calc(100% + 80px), rgba(87,201,175,.14), rgba(87,201,175,0) 70%),
    linear-gradient(135deg,#f0f5f9 0%,#e1ebf2 100%)!important;
  position:relative}
.examination .container{position:relative}
.page-main .examination{box-shadow:inset 0 4px 0 0 #386d8b}
@media (min-width:1200px){.examination{padding:72px 0}}
.page-main .examination{border-radius:18px}
@media (max-width:575px){.examination{padding:4rem 0!important}}

/* === UI review fixes (junij 2026) === */
/* two-column "Oblike naročanja" lists: clear the neighbour column's dot (text ran under it) */
.page-content .page-main .image-content ul.dots li{padding:15px 56px 15px 0}
/* the FontAwesome arrow is absolutely positioned — only show it on the last link of an item */
.examination ul li a:not(:last-child):after{display:none}
/* phone numbers never break mid-number */
ul.dots a[href^="tel:"]{white-space:nowrap}
/* pin list dots to the first text line so wrapped items don't get a floating bullet */
/* anchor the ring+dot marker to the centre of the FIRST text line (theme centres on the
   whole li via translateY(-50%), which drifts on multi-line items; em scales with font size) */
ul.dots li:before,ul.dots li:after{top:.75em}
.page-content .page-main .image-content ul.dots li:before,
.page-content .page-main .image-content ul.dots li:after{top:calc(15px + .8em)}
/* group utility bar: fit all 11 sister links on one row at laptop widths (Medilab orphan-wrapped) */
@media (min-width:1141px) and (max-width:1620px){
  .page_header .top-navigation .nav-corpo li{margin-right:1.4rem!important}
}
/* maps: usable height on phones (theme letterboxes them to 36% => ~140px strip) */
@media (max-width:767px){
  .google-map-canvas{padding-bottom:88%}
  .general-info .flex-custom img.img-fluid{min-height:0}
}
/* theme JS wraps tables in .table-responsive, so the old `>table` child selector never matched */
.mdt-table-scroll table{width:max-content;min-width:100%;max-width:none;margin-bottom:0}
.mdt-table-scroll table th,.mdt-table-scroll table td{white-space:nowrap}
.mdt-table-scroll{scrollbar-width:thin;scrollbar-color:#386d8b #e2eaef}
.mdt-table-scroll::-webkit-scrollbar{height:6px}
.mdt-table-scroll::-webkit-scrollbar-thumb{background:#386d8b;border-radius:3px}
.mdt-table-scroll::-webkit-scrollbar-track{background:#e2eaef}
/* Skupina DCB timeline (o-nas): keep all 11 members on one connector line */
.tabs .nav.nav-pills{flex-wrap:nowrap}
.tabs .nav .nav-item{min-width:0}
@media (min-width:768px) and (max-width:1700px){.tabs .nav .nav-item .nav-link{font-size:1.2rem}}
/* equal-height teal caption bands in the service card grids */
.services-list .img-wrapper .service-meta h4{min-height:70px;display:flex;align-items:center;justify-content:center}
/* FAQ accordion chevron rotates when a question is open */
.toggle-link .q-icon{display:inline-block;transition:transform .2s ease}
.toggle-link:not(.collapsed) .q-icon{transform:rotate(90deg)}
/* Skupina band on home holds only a logo — no need for photo-band height */
#skupina-dcb.general-info{padding:6rem 0}
/* archived-notice strip (covid page) */
.mdt-archive-note{background:#eaf7f3;border-left:4px solid #57c9af;border-radius:6px;padding:1.4rem 1.8rem;margin-bottom:2.5rem;font-size:1.4rem;line-height:1.6;color:#2d2d2d}
.mdt-table-scroll .table-responsive{overflow-x:visible}
@media (max-width:575.98px){.mdt-table-scroll table td,.mdt-table-scroll table th{padding:.5rem .65rem}}

/* Cenik (price list) tables: wrap long descriptions instead of horizontal scrolling */
.mdt-cenik table{width:100%;min-width:100%;max-width:100%}
.mdt-cenik table th,.mdt-cenik table td{white-space:normal}
.mdt-cenik table th:first-child,.mdt-cenik table td:first-child,
.mdt-cenik table th:last-child,.mdt-cenik table td:last-child{white-space:nowrap}
.mdt-cenik table th:last-child,.mdt-cenik table td:last-child{text-align:right}
.mdt-cenik tr.mdt-cenik-total td{font-weight:700;background:#f0f5f9;border-top:2px solid #386d8b}

/* O nas: partner & accreditation logo grid */
.mdt-partner-grid{display:flex;flex-wrap:wrap;gap:3rem 5rem;align-items:stretch;margin-top:3.5rem}
.mdt-partner{display:flex;flex-direction:column;text-align:center;max-width:230px}
.mdt-partner a,.mdt-partner>span{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:130px}
.mdt-partner img{max-height:130px;max-width:215px;width:auto;height:auto;object-fit:contain}
.mdt-partner a:hover img{opacity:.8}
.mdt-partner-label{font-size:1.3rem;line-height:1.5;color:#5b7080;margin:1.2rem 0 0}

/* Naročanje pill button: keep white text/caret in the sticky header (theme flips
   menu link colour to #2d2d2d there) and give the dropdown caret breathing room */
.menu > ul > li.menu-cta > a,
.sticky .menu-container .menu > ul > li.menu-cta > a,
.sticky .menu-container .menu > ul > li.menu-cta > a:hover{color:#fff}
.menu > ul > li.menu-cta.menu-dropdown-icon > a{padding-right:42px}
.menu > ul > li.menu-cta.menu-dropdown-icon > a:after{right:20px}

/* Mobile: 44px minimum touch height for standard buttons */
@media (max-width:767.98px){
  a.btn-std,button.btn-std,.banner .buttons .btn-std{padding-top:13px;padding-bottom:13px}
}

/* === production review fixes (June 2026) === */
/* open mobile menu: separate it from the page content below */
@media (max-width:1200px){.menu>ul{box-shadow:0 22px 30px -10px rgba(13,38,59,.3);border-bottom:1px solid #e3eaef}}
/* narrow "Naročanje" side panels: one option per row instead of a squeezed 2x2 grid */
.page-content .page-main .image-content .right ul.dots li{flex:0 0 100%}
/* examination band: reserve room for the absolutely-positioned calendar icon on small screens */
@media (max-width:575.98px){.examination ul.dots li{padding-right:42px}}
/* stacked image columns need bottom spacing so the next section's heading doesn't glue to the photo */
@media (max-width:1199.98px){.page-main .image-content .left{margin-bottom:2.5rem}}
/* readable measure for long-form prose */
.page-main section>p{max-width:78ch}
/* theme sets table thead th{padding-bottom:4rem} — looks like an empty row */
.page-main table thead th{padding-bottom:1.2rem}
/* scrollable tables: edge shadows that appear only while there is more to scroll */
.mdt-table-scroll{background:
  linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) left/40px 100% no-repeat local,
  linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) right/40px 100% no-repeat local,
  radial-gradient(farthest-side at 0 50%,rgba(13,38,59,.16),transparent) left/14px 100% no-repeat scroll,
  radial-gradient(farthest-side at 100% 50%,rgba(13,38,59,.16),transparent) right/14px 100% no-repeat scroll}
/* cenik: identical column grid across the stacked 3-column price tables */
@media (min-width:768px){
  .mdt-cenik table:has(th:nth-child(3)){table-layout:fixed}
  .mdt-cenik table:has(th:nth-child(3)) th:first-child{width:175px}
  .mdt-cenik table:has(th:nth-child(3)) th:last-child{width:130px}
}
/* skupina DCB page: banner photo fills the band; neutralise mid-sentence <br> from the source */
.top-banner .img-content img{width:100%;object-fit:cover;max-height:520px}
.tabs-accordion .tab-content-wrap br{display:none}
/* partner tiles: centred single column on phones */
@media (max-width:575.98px){.mdt-partner-grid{justify-content:center}.mdt-partner{flex:0 0 100%;max-width:300px;margin:0 auto}}
/* kontakt opening-hours table: wrap cells on desktop instead of horizontal scrolling */
@media (min-width:992px){
  .mdt-table-kontakt table{width:100%;min-width:0;max-width:100%}
  .mdt-table-kontakt table th,.mdt-table-kontakt table td{white-space:normal}
}
/* PDF/document button groups: tidy row on desktop, full-width stack on phones */
.mdt-doc-buttons{display:flex;flex-wrap:wrap;gap:.9rem;align-items:flex-start}
.mdt-doc-buttons .btn-std{margin:0}
@media (max-width:575.98px){.mdt-doc-buttons{flex-direction:column}.mdt-doc-buttons .btn-std{width:100%;justify-content:center}}
/* globe icon prefixing the header language switcher (matches the booking-flow switch) */
.page_header .top-navigation .nav-lang .nav-lang__globe{display:inline-flex;align-items:center;color:#386d8b;margin-right:5px}
.page_header .top-navigation .nav-lang .nav-lang__globe svg{display:block}
/* social CTA links under the homepage gallery (Instagram + Google review) */
.mdt-instagram-wrap{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1.8rem;margin-top:.5rem;margin-bottom:1.5rem}
.mdt-instagram,.mdt-google{display:inline-flex;align-items:center;gap:.55rem;font-size:1.4rem;font-weight:700;color:#386d8b;text-decoration:none;transition:color .15s ease}
.mdt-instagram svg,.mdt-google svg{display:block;flex:none}
.mdt-instagram:hover,.mdt-google:hover{color:#2d586f;text-decoration:underline}
/* čakalne-dobe wide tables: "scroll sideways" hint, toggled by mdt-table-scroll.js
   when the table overflows so people don't miss the waiting-time columns on phones */
.mdt-scroll-hint{display:none;align-items:center;gap:.7rem;margin:0 0 1rem;color:#386d8b;font-size:1.3rem;font-weight:700;line-height:1.3}
.mdt-scroll-hint.is-visible{display:flex}
.mdt-scroll-hint .fa{font-size:1.7rem;animation:mdt-scroll-nudge 1.5s ease-in-out infinite}
@keyframes mdt-scroll-nudge{0%,100%{transform:translateX(-3px)}50%{transform:translateX(3px)}}
@media (prefers-reduced-motion:reduce){.mdt-scroll-hint .fa{animation:none}}
/* no-JS fallback: until the script marks the document ready, show the hint on
   narrow screens (where these tables always overflow) */
@media (max-width:767.98px){html:not(.mdt-tables-ready) .mdt-scroll-hint{display:flex}}

/* === EXPLORATION (uncommitted): on phones, render the čakalne-dobe tables as a
   stack of cards (one card per row, "label  value" lines) instead of a single
   horizontally-scrolling table. Driven by mdt-table-cards.js (data-label + roles).
   Revert = delete this block, the .mdt-cards class, and mdt-table-cards.js. === */
@media (max-width:767.98px){
  .mdt-cards,.mdt-cards .table-responsive{overflow:visible;background:none}
  .mdt-cards table{display:block;width:100%;min-width:0;margin:0}
  /* keep the header row for screen readers but hide it visually (labels are inline) */
  .mdt-cards thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .mdt-cards tbody,.mdt-cards tr,.mdt-cards td{display:block;width:auto}
  .mdt-cards tr{border:1px solid #d7e2ea;border-radius:10px;background:#fff;box-shadow:0 1px 4px rgba(13,38,59,.07);padding:.2rem 1.5rem 1.1rem;margin:0 0 1.3rem}
  /* value cells: "label" on the left, value on the right (wraps independently) */
  .mdt-cards td:not(:first-child){display:flex;justify-content:space-between;align-items:baseline;gap:1.4rem;white-space:normal;padding:.7rem 0;border:0;border-bottom:1px solid #eef2f5}
  .mdt-cards td:not(:first-child)::before{content:attr(data-label);font-weight:700;color:#386d8b;text-align:left;flex:0 0 auto}
  .mdt-cards td:not(:first-child) .mdt-cards-val{flex:1 1 auto;min-width:0;text-align:right;overflow-wrap:anywhere}
  .mdt-cards td:last-child{border-bottom:0;padding-bottom:0}
  /* first cell = the examination name → full-width card title, no label */
  .mdt-cards td:first-child{display:block;text-align:left;white-space:normal;font-size:1.5rem;font-weight:700;color:#2d2d2d;border:0;border-bottom:2px solid #386d8b;padding:.7rem 0;margin-bottom:.5rem}
  .mdt-cards td:first-child::before{display:none}
  /* the "scroll sideways" hint is meaningless once the table is a stack of cards */
  .mdt-scroll-hint:has(+ .mdt-cards){display:none}
}
