/* Refinamentos visuais e de interação da apresentação. */
:root{--accent:#a5c4cb;--accent2:#d0e0e3}
body{overflow-x:hidden}
::selection{background:#bfd6dc;color:#122530}
:focus-visible{outline:3px solid #87aeb8;outline-offset:4px}
#metodo{scroll-margin-top:110px}
.site-header{position:sticky;top:0;box-shadow:0 5px 25px rgba(9,27,37,.04)}
.main-nav>a{position:relative}
.main-nav>a:not(.client-link):after{content:'';position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:#82a5ae;transition:right .22s ease}
.main-nav>a:not(.client-link):hover:after,.main-nav>a[aria-current=page]:not(.client-link):after{right:0}
.main-nav .client-link{transition:background .2s,border-color .2s}
.main-nav .client-link:hover{background:#eaf1f2;border-color:#9ab6be}
.hero{background:radial-gradient(circle at 74% 43%,#213b4b 0,#142734 40%,#101a25 76%)}
.hero-copy{padding-right:8px}
.hero h1{font-size:clamp(50px,5.8vw,87px)}
.hero-art{filter:saturate(.8);transform:translateY(10px)}
.art-frame{border-color:rgba(199,226,232,.33)}
.hero-strip span{border-right:1px solid rgba(176,207,214,.12);padding-left:16px}
.hero-strip span:first-child{padding-left:0}
.hero-strip span:last-child{border-right:0}
.section-head .line-link{flex:none}
.solutions-home .tiles:not(.tiles-secondary){grid-template-columns:repeat(2,1fr)}
.solutions-home .tiles:not(.tiles-secondary) .solution-tile{min-height:410px}
.solutions-home .tiles:not(.tiles-secondary) .tile-graphic{height:148px}
.solution-tile{position:relative;overflow:hidden}
.solution-tile:before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#a7c7ce;transform:scaleY(0);transform-origin:top;transition:transform .25s}
.solution-tile:hover:before,.solution-tile:focus-visible:before{transform:scaleY(1)}
.solution-tile:hover .tile-arrow{transform:translate(3px,-3px)}
.tile-arrow{transition:transform .22s}
.tile-graphic{position:relative;overflow:hidden}
.tile-graphic:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,28,37,.37),rgba(13,28,37,.04));pointer-events:none}
.tile-graphic svg{position:relative;z-index:1;width:54px;height:54px;color:#d9e8eb;filter:drop-shadow(0 2px 8px rgba(5,20,28,.5));transition:transform .25s}
.solution-tile:hover .tile-graphic svg{transform:scale(1.08)}
.solution-tile[href='cftv.html'] .tile-graphic svg,.solution-tile[href='controle-acesso.html'] .tile-graphic svg,.solution-tile[href='gestao-operacao.html'] .tile-graphic svg,.solution-tile[href='alarmes-perimetro.html'] .tile-graphic svg{display:block}
.page-hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(184,215,223,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(184,215,223,.03) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,transparent,#000)}
.photo-filled img{transition:transform .6s ease;filter:saturate(.84)}
.photo-filled:hover img{transform:scale(1.035)}
.detail-cover img{object-position:center}
.gallery-photo img{object-position:center}
.feature-grid article{transition:background .2s}
.feature-grid article:hover{background:#e8eff0}
.application-list li{transition:padding-left .2s,color .2s}
.application-list li:hover{padding-left:32px;color:#fff}
.brand-row span{letter-spacing:-.035em}
@media(max-width:1100px){.solutions-home .tiles:not(.tiles-secondary){grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.site-header{position:sticky}.main-nav>a:not(.client-link):after{display:none}.hero-layout{display:flex;flex-direction:column;align-items:stretch}.hero-copy{padding:70px 0 35px}.hero-art{position:relative;top:auto;right:auto;width:100%;height:270px;opacity:1;transform:none;margin-bottom:36px}.art-frame{inset:0}.art-label,.art-bottom{left:20px}.art-label{top:20px}.art-bottom{bottom:20px}.hero-strip{margin-top:0}.solutions-home .tiles:not(.tiles-secondary){grid-template-columns:repeat(2,1fr)}.solutions-home .tiles:not(.tiles-secondary) .tile-graphic{height:100px}.solutions-home .tiles:not(.tiles-secondary) .solution-tile{min-height:360px}.tile-graphic svg{width:42px;height:42px}}
@media(max-width:520px){.hero-copy{padding:60px 0 30px}.hero h1{font-size:47px}.hero-art{height:230px;margin-bottom:28px}.solutions-home .tiles:not(.tiles-secondary){grid-template-columns:1fr}.solutions-home .tiles:not(.tiles-secondary) .solution-tile{min-height:310px}.solutions-home .tiles:not(.tiles-secondary) .tile-graphic{height:105px}.hero-strip span{padding-left:8px;font-size:8px}.hero-strip span:first-child{padding-left:0}}
