
/* TinyNet v0.3 – restrained modern polish; inspired by classic local IT shops */
:root{--soft-blue:#1689c8;--soft-dark:#263b4c;--ease-out:cubic-bezier(.22,1,.36,1)}
.header-brandband{background:linear-gradient(180deg,#fff 0%,#f4f8fb 100%)}
.heritage-header{transition:box-shadow .28s ease}
.heritage-header.is-scrolled{box-shadow:0 7px 24px rgba(9,58,87,.19)}
.heritage-logo img{transition:transform .36s var(--ease-out)}
.heritage-logo:hover img{transform:scale(1.025)}
.brand-contact a{transition:color .25s}
.brand-contact a:hover{color:#055880}
.heritage-nav a{position:relative;transition:background .23s ease,color .2s}
.heritage-nav a::after{content:"";position:absolute;inset:auto 16px 0;height:3px;background:rgba(255,255,255,.93);transform:scaleX(0);transform-origin:50%;transition:transform .28s var(--ease-out)}
.heritage-nav a:hover:after,.heritage-nav a:focus-visible:after{transform:scaleX(1)}
.heritage-nav a.selected:after{transform:scaleX(1);background:#d6f4ff}
.legacy-button{position:relative;overflow:hidden;transition:background .22s,box-shadow .25s,transform .25s var(--ease-out)}
.legacy-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #052d5633}
.legacy-button:active{transform:translateY(0)}
.legacy-button span{transition:transform .25s ease}
.legacy-button:hover span{transform:translateX(4px)}
.hero-photo{border-radius:5px;box-shadow:0 16px 36px rgba(2,42,72,.29);transition:box-shadow .4s}
.hero-photo:hover{box-shadow:0 21px 44px rgba(2,42,72,.33)}
.hero-photo>img{animation:tinynet-photo-breath 19s ease-in-out infinite alternate;transform-origin:65% center}
@keyframes tinynet-photo-breath{0%{transform:scale(1)}100%{transform:scale(1.06)}}
.hero-overlay .legacy-tag{animation:classic-rise .64s var(--ease-out) both}
.hero-overlay h1{animation:classic-rise .8s .08s var(--ease-out) both}
.hero-overlay p{animation:classic-rise .82s .18s var(--ease-out) both}
.hero-overlay .legacy-button{animation:classic-rise .85s .28s var(--ease-out) both}
@keyframes classic-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.classic-title{position:relative}
.classic-title::after{content:"";position:absolute;bottom:-1px;left:0;background:linear-gradient(90deg,#1392d4,#6ac0e8);width:72px;height:2px;border-radius:3px}
.service-tile,.store-promo,.heritage-content .product-card{
  position:relative;transition:transform .32s var(--ease-out),box-shadow .32s,border-color .32s;
  border-radius:5px;overflow:hidden
}
.service-tile:hover,.store-promo:hover,.heritage-content .product-card:hover{
  transform:translateY(-6px);box-shadow:0 18px 38px rgba(13,60,92,.19);
  border-color:rgba(33,145,199,.4)
}
.service-photo img,.store-promo img,.new-product-photo img{transition:transform .65s var(--ease-out),filter .5s ease}
.service-tile:hover img,.store-promo:hover img,.heritage-content .product-card:hover img{transform:scale(1.055);filter:saturate(1.10)}
.service-caption{position:relative;transition:background .28s ease}
.service-caption:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:#30a6eb;transform:scaleY(0);transform-origin:top;transition:transform .35s var(--ease-out)}
.service-tile:hover .service-caption:before{transform:scaleY(1)}
.service-tile:hover .service-caption{background:#2a3b49}
.service-caption span,.store-promo span,.heritage-content .product-bottom a{transition:color .2s,text-decoration-color .2s}
.service-tile:hover .service-caption span{color:#e5f9ff}
.store-promo>div{border-top:3px solid transparent;transition:border-color .25s ease}
.store-promo:hover>div{border-color:#289bdb}
.store-promo:hover span{color:#075987}
.about-flex>img{border-radius:4px;transition:filter .35s,transform .35s}
.about-flex>img:hover{filter:saturate(1.16);transform:scale(1.014)}
.classic-contact{background:linear-gradient(110deg,#116ca6,#2092ce)}
.heritage-content .filter-btn{transition:background .2s,color .2s,box-shadow .2s}
.heritage-content .filter-btn:hover{box-shadow:0 3px 12px rgba(32,119,158,.13)}
.heritage-content .product-card .new-product-photo{overflow:hidden}
.heritage-content .product-card .product-bottom a:hover{text-decoration:underline;text-underline-offset:3px}
.heritage-content .solution,.heritage-content .step,.heritage-content .contact-card{
  transition:transform .28s var(--ease-out),border-color .28s,box-shadow .28s}
.heritage-content .solution:hover,.heritage-content .step:hover,.heritage-content .contact-card:hover{
  transform:translateY(-3px);border-color:#afd2e8;box-shadow:0 12px 26px rgba(40,90,130,.08)}
.footlink a:hover,.footer-simple a:hover{padding-left:3px;transition:padding-left .22s ease,color .22s}
.heritage-content .page-head{background:linear-gradient(100deg,#e8f3fa,#f6faff)}
.heritage-content .section.soft{background:#eff6fa}
.heritage-content .store-classic{background:#edf4fa}
.site-back-top{position:fixed;right:24px;bottom:24px;z-index:65;width:46px;height:46px;border-radius:50%;border:1px solid #ffffff6b;
 background:#087fbb;color:white;font-weight:850;font-size:22px;
 box-shadow:0 8px 25px #002e5761;opacity:0;transform:translateY(15px);pointer-events:none;
 transition:opacity .25s,transform .25s,background .25s}
.site-back-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.site-back-top:hover{background:#005b8e;transform:translateY(-2px)}
/* Progressive enhancement only: no JS or reduced-motion keeps all text visible. */
html.motion-enabled .reveal-item{opacity:0;translate:0 19px;
 transition:opacity .65s var(--ease-out),translate .65s var(--ease-out);
 transition-delay:var(--reveal-delay,0ms)}
html.motion-enabled .reveal-item.is-visible{opacity:1;translate:0 0}
/* Do not dim or hide page items when printing */
@media print{html.motion-enabled .reveal-item{opacity:1!important;transform:none!important}
 .site-back-top,.mobile-toggle{display:none!important}}
@media(max-width:810px){.heritage-nav a:after{display:none}
 .heritage-nav a:hover{background:#09679f}
 .header-brandband{background:#f8fbfd}}
@media(max-width:590px){.site-back-top{right:14px;bottom:17px;width:41px;height:41px;font-size:20px}
 .hero-photo>img{animation-duration:24s}
 .classic-title::after{width:50px}
 .service-tile:hover,.store-promo:hover,.heritage-content .product-card:hover{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){
 .hero-photo>img,.hero-overlay .legacy-tag,.hero-overlay h1,.hero-overlay p,.hero-overlay .legacy-button{animation:none!important}
 html.motion-enabled .reveal-item{opacity:1!important;transform:none!important;transition:none!important}
 .site-back-top{transition:none}
}
