/* Freelo 30.10.2026: presentation fixes. No catalogue, stock or checkout logic changes. */
/* Keep Bootstrap's slide movement; avoid replaying a fade on every newly active banner. */
html body #carousel .item img{animation:none!important;opacity:1;transform:none}
html body #carousel .carousel-inner{min-height:0!important;border-radius:16px;overflow:hidden}
html body #carousel picture{display:block}
html body #carousel picture img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain}
html body #carousel .carousel-indicators{
 position:static!important;display:flex!important;align-items:center;justify-content:center;
 width:100%!important;height:32px!important;margin:8px 0 0!important;padding:0!important;gap:0;
 transform:none!important;list-style:none;
}
html body #carousel .carousel-indicators li,html body #carousel .carousel-indicators li.active{
 position:relative;display:grid!important;place-items:center;width:32px!important;height:32px!important;
 min-width:32px;margin:0!important;padding:0!important;border:0!important;border-radius:16px;
 background:transparent!important;opacity:1!important;text-indent:0;cursor:pointer;
}
html body #carousel .carousel-indicators li:before{content:'';display:block;position:static;width:8px;height:8px;border-radius:8px;background:#bfd8e2;transition:width .2s,background-color .2s}
html body #carousel .carousel-indicators li.active:before{width:20px;background:#007fa8}
html body #carousel .carousel-indicators li:focus-visible{outline:2px solid #007fa8;outline-offset:-2px}
html body .in-index .jirno-side-card b,html body.in-index .jirno-side-card b{
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 padding:10px 12px;line-height:1.25;white-space:nowrap;
}
@media(max-width:767px){
 html body .in-index .jirno-side-card b,html body.in-index .jirno-side-card b{font-size:12px!important;padding:10px 8px!important}
 html body.in-index .jirno-side-card>div{padding:16px 10px!important}
 html body .responsive-tools .click-cart{display:flex!important;flex:0 0 auto;align-items:center}
 html body .responsive-tools [data-testid="headerCart"]{display:flex!important;align-items:center;min-height:44px;min-width:44px;border-radius:12px}
 /* Flags occupy their own row; images remain ordinary contained thumbnails. */
 html body :is(#content,#jirno-home) .products.products-block .p>a.image{
  display:grid!important;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);
  align-items:stretch!important;justify-items:stretch!important;padding:8px!important;min-width:0;
 }
 html body :is(#content,#jirno-home) .products.products-block .p>a.image>img{
  grid-row:2;grid-column:1;display:block!important;align-self:center;justify-self:center;
  width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
  min-width:0;min-height:0;margin:0!important;object-fit:contain!important;object-position:center!important;
 }
 html body :is(#content,#jirno-home) .products.products-block .p>a.image>.flags-default{
  position:static!important;grid-row:1;grid-column:1;transform:none!important;
  display:flex!important;flex-flow:row wrap;align-items:flex-start;justify-content:flex-start;gap:4px;
  width:100%;max-width:100%!important;min-height:26px;margin:0!important;padding:0 0 5px;
 }
 html body :is(#content,#jirno-home) .products.products-block .flags-default .flag{
  font-size:11px!important;line-height:1.2!important;padding:4px 6px!important;
  white-space:normal;word-break:normal;overflow-wrap:normal;
 }
}
@media(max-width:359px){
 html body.in-index .banners-row>.col-sm-4{gap:10px!important}
 html body.in-index .jirno-side-card>div{padding:14px 7px!important}
 html body.in-index .jirno-side-card b{font-size:11px!important;padding:10px 5px!important;letter-spacing:-.15px}
 html body.in-index .jirno-side-card h2{font-size:16px!important;line-height:1.2}
 html body .responsive-tools{gap:0!important}
 html body .responsive-tools [data-testid="headerCartPrice"]{font-size:11px!important}
}
/* Sticky summary is bounded by the checkout row and remains scrollable on short screens. */
@media(min-width:992px){
 html body.ordering-process #checkoutSidebar{position:sticky!important;top:24px;align-self:flex-start;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain}
}
@media(prefers-reduced-motion:reduce){html body #carousel .carousel-indicators li:before{transition:none}}

/* Apollo regenerates indicators after ready: use layout order, independent of DOM order. */
html body #carousel{display:flex!important;flex-direction:column}
html body #carousel>.carousel-inner{order:1;width:100%}
html body #carousel>.carousel-indicators{order:2}
@media(max-width:767px){html body .responsive-tools [data-testid="headerCartPrice"]{display:inline!important;font-size:11px!important}}

/* Apollo's two-column whisperer cannot fit in the narrow tablet search field. */
html body #header #formSearchForm .search-whisperer.active{display:flex!important;flex-flow:column nowrap!important}
html body #header #formSearchForm .search-whisperer>.search-whisperer-ul-group{order:1;width:100%!important;flex:none!important;min-width:0;float:none;transform:none}
html body #header #formSearchForm .search-whisperer>.search-whisperer-documents{order:2;width:100%!important;flex:none!important;float:none;transform:none}
html body #header #formSearchForm .search-whisperer>.search-whisperer-btn{order:3;width:100%!important;flex:none!important;padding:12px 14px 16px;float:none;transform:none}
html body #header #formSearchForm .search-whisperer-products>li>a{flex-wrap:nowrap!important}
html body #header #formSearchForm .search-whisperer-products .price{position:static!important;flex:0 0 auto!important;align-self:center;transform:none!important;white-space:nowrap!important}
html body #header #formSearchForm .search-whisperer-btn button.btn.btn-primary{display:block!important;position:static!important;width:100%!important;min-height:44px;margin:0!important;padding:10px 16px!important;background:#007fa8!important;border:1px solid #007fa8!important;border-radius:24px!important;color:#fff!important;font-size:14px!important;line-height:1.4!important;text-indent:0!important;transform:none!important}
@media(min-width:768px) and (max-width:1199px){html body #header #formSearchForm .search-whisperer{width:440px!important;max-width:calc(100vw - 48px)!important}}

/* Tablet fallback when Apollo has removed its Swiper wrapper during a resize. */
@media(min-width:768px) and (max-width:1199px){
 html body #jirno-home .products.products-block:has(>.product){display:flex!important;flex-wrap:nowrap!important;align-items:stretch;gap:12px;overflow-x:auto!important;scroll-snap-type:x mandatory;padding:0 0 8px!important;margin:0!important;width:100%!important}
 html body #jirno-home .products.products-block:has(>.product)::before,html body #jirno-home .products.products-block:has(>.product)::after{display:none!important}
 html body #jirno-home .products.products-block>.product{display:flex!important;flex:0 0 calc((100% - 12px)/2)!important;width:calc((100% - 12px)/2)!important;max-width:calc((100% - 12px)/2)!important;padding:0!important;margin:0!important;scroll-snap-align:start}
 html body #jirno-home .products.products-block .swiper-slide{width:calc((100% - 12px)/2)!important;height:auto!important;margin-right:12px!important}
 html body #jirno-home .products.products-block .swiper-slide>.product{display:flex!important;width:100%!important;max-width:100%!important;height:100%!important;padding:0!important;margin:0!important}
 html body #jirno-home .products.products-block .p{display:flex!important;flex-direction:column;min-width:0;width:100%!important;height:100%!important;padding:0!important}
 html body #jirno-home .products.products-block .p>a.image{display:grid!important;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:100%!important;height:190px!important;max-height:none!important;padding:10px!important;margin:0!important}
 html body #jirno-home .products.products-block .p>a.image>img{grid-row:2;grid-column:1;width:100%!important;height:100%!important;min-height:0;object-fit:contain;object-position:center;align-self:center;justify-self:center;margin:0!important}
 html body #jirno-home .products.products-block .p>a.image>.flags-default{position:static!important;grid-row:1;grid-column:1;transform:none!important;display:flex!important;flex-flow:row wrap;min-height:26px;max-width:100%;padding-bottom:5px;gap:4px}
 html body #jirno-home .products.products-block .flags-default .flag{font-size:11px!important;padding:4px 6px!important;line-height:1.2!important;overflow-wrap:normal}
 html body #jirno-home .products.products-block .p-in{display:flex!important;flex-direction:column;flex:1 0 auto;width:100%!important;min-width:0;padding:14px!important}
 html body #jirno-home .products.products-block .name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.4;min-height:4.2em;max-height:4.2em;overflow:hidden;overflow-wrap:normal;word-break:normal}
 html body #jirno-home .products.products-block .p-bottom{margin-top:auto!important}
 html body #jirno-home .products.products-block .p-bottom>[data-micro="offer"]{display:flex;flex-direction:column!important;align-items:stretch!important}
 html body #jirno-home .products.products-block .prices,html body #jirno-home .products.products-block .p-tools{width:100%!important;text-align:left!important}
 html body #jirno-home .products.products-block .p-tools{margin-top:6px;min-height:2.6em}
 html body #jirno-home .products.products-block .availability{text-align:left!important}
 html body #jirno-home .products.products-block .product-btn{position:static!important;display:block!important;width:calc(100% - 28px)!important;margin:0 14px 14px!important}
 html body #jirno-home .products.products-block .product-btn .btn{width:100%!important;min-width:0!important}
 html body #jirno-home .jirno-product-dots{display:flex!important;justify-content:center;gap:4px;margin:8px 0 20px}
 html body #jirno-home .jirno-product-dots button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:16px;background:transparent;box-shadow:none}
 html body #jirno-home .jirno-product-dots button:before{content:'';width:8px;height:8px;border-radius:8px;background:#bfd8e2}
 html body #jirno-home .jirno-product-dots button[aria-current="true"]:before{width:20px;background:#007fa8}
}

@media(min-width:768px) and (max-width:1199px){
 html body #jirno-home .products .swiper-pagination{display:none!important}
 html body #jirno-home .products.products-block .prices{display:flex!important;flex-direction:column;align-items:flex-start!important;text-align:left!important}
 html body #jirno-home .products.products-block :is(.price-final,.price-additional){margin-left:0!important;margin-right:0!important;align-self:flex-start!important;text-align:left!important}
}

html body #content .p-info-wrapper .p-info-grid{width:100%!important;max-width:100%!important;min-width:0}

/* Review: larger service CTA in both dimensions. */
html body.in-index #content .jirno-side-card b{width:230px;max-width:100%;min-height:44px;font-size:16px!important;padding:10px 16px!important;box-sizing:border-box;white-space:nowrap}
@media(max-width:767px){html body.in-index #content .jirno-side-card>div{padding:16px 8px!important}html body.in-index #content .jirno-side-card b{width:100%;font-size:14px!important;padding:10px 4px!important}}
@media(max-width:359px){html body.in-index #content .jirno-side-card>div{padding:14px 4px!important}html body.in-index #content .jirno-side-card b{font-size:13px!important;padding:10px 0!important;letter-spacing:-.2px}}
/* Keep the complete hero inside its content column after Apollo breakpoint changes. */
html body.in-index #content>.banners-row{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr);width:100%!important;max-width:100%!important;min-width:0;gap:24px;margin:0!important;float:none!important;left:auto!important;right:auto!important;transform:none!important}
html body.in-index #content>.banners-row>.col-sm-8,html body.in-index #content>.banners-row>.col-sm-4{position:relative!important;width:100%!important;max-width:100%!important;min-width:0;padding:0!important;margin:0!important;float:none!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important}
html body.in-index #content>.banners-row>.col-sm-4{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
html body.in-index #content #carousel{width:100%!important;max-width:100%!important;min-width:0;margin:0!important;left:auto!important;right:auto!important;transform:none!important}
html body.in-index #content #carousel .carousel-inner{width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important}
html body.in-index #content #carousel .item{width:100%!important;max-width:100%!important;height:auto!important}
html body.in-index #content #carousel .item>a{display:block;width:100%!important;max-width:100%!important}
html body.in-index #content #carousel .item img{width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain}
@media(max-width:359px){html body.in-index #content>.banners-row>.col-sm-4{gap:10px}}
/* The summary may scroll; the original order controls stay outside that scrolling region. */
@media(min-width:992px){
 html body.ordering-process #checkoutSidebar{top:24px!important;max-height:none!important;overflow:visible!important}
 html body.ordering-process #checkoutSidebar>.cart-content{display:flex!important;flex-direction:column;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);min-height:0;overflow:hidden}
 html body.ordering-process #checkoutSidebar>.cart-content>.order-summary{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
 html body.ordering-process #checkoutSidebar>.cart-content>.next-step{display:flex!important;flex-direction:column!important;flex:0 0 auto;gap:10px;width:100%;margin:0!important;padding:14px 0 0!important;background:#fff;position:relative;z-index:2}
 html body.ordering-process #checkoutSidebar .next-step>.next-step-forward{order:0;width:100%!important;margin:0!important;min-height:50px}
 html body.ordering-process #checkoutSidebar .next-step>.next-step-back{order:1;display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:44px;margin:0!important;padding:10px 16px!important;border:1px solid #cbdce5!important;border-radius:10px!important;background:#fff!important;color:#263b47!important;font-size:14px!important;text-decoration:none!important;box-sizing:border-box}
 html body.ordering-process #checkoutSidebar .next-step>.next-step-back:hover{background:#edf9fd!important;border-color:#007fa8!important;color:#006b8e!important}
}
