/* Dossiê PRO — Segurança Cibernética. Page-scoped visual system. */
.cyber-page{background:#080809;color:#fff}
.cyber-page main{background:radial-gradient(ellipse at 97% 46%,#82132218,transparent 38%),#080809}
.cyber-page main p,.cyber-page main h1,.cyber-page main h2,.cyber-page main h3,.cyber-page main li,.cyber-page main a,.cyber-page main button{color:#fff}
.cyber-page .shell{max-width:1200px}
.cyber-page .cyber-kicker{display:flex;align-items:center;gap:12px;font:600 11px/1.7 Consolas,'Courier New',monospace;letter-spacing:.17em;margin:0 0 24px;color:#fff}
.cyber-kicker .icon{width:21px;height:21px;color:#fb2a44}
.cyber-hero{position:relative;isolation:isolate;background:#050505;overflow:hidden;min-height:650px}
.cyber-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050505b5 0%,#0505053d 46%,transparent 63%),linear-gradient(0deg,#080809,transparent 25%);pointer-events:none;z-index:-1}
.cyber-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-3}
.cyber-hero-inner{min-height:650px;display:flex;align-items:center;padding-block:76px 95px}
.cyber-hero-copy{max-width:600px;width:52%}
.cyber-hero h1{font-size:clamp(55px,5.5vw,80px);line-height:1.07;letter-spacing:-.052em;font-weight:750;margin:0 0 27px}
.cyber-hero h1 span{color:#f52942}
.cyber-hero-copy>p:not(.cyber-kicker){font-size:19px;line-height:1.75;max-width:525px;margin:0 0 30px;text-wrap:pretty}
.cyber-hero-grid{position:absolute;inset:0;background-image:linear-gradient(#ed233c0c 1px,transparent 1px),linear-gradient(90deg,#ed233c0c 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(90deg,transparent 30%,#000);z-index:-2;pointer-events:none}
.cyber-hero-scan{position:absolute;top:10%;bottom:8%;width:1px;left:60%;background:linear-gradient(0deg,transparent,#ff3d5344,transparent);box-shadow:0 0 25px 3px #de132820;animation:cyber-scanning-v13 18s ease-in-out infinite;pointer-events:none;z-index:0}
.cyber-signal-line{position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#ed2a4155,transparent)}
.cyber-signal-line:after{content:'';position:absolute;left:0;top:0;width:7%;height:1px;background:#ff3949;box-shadow:0 0 15px #ff3949;animation:cyber-signal-v13 15s linear infinite}
.cyber-intro{display:flex;gap:34px;align-items:center;padding-block:50px;border-bottom:1px solid #ed263f35}
.cyber-intro-symbol{flex:0 0 72px;height:72px;display:grid;place-items:center;border:1px solid #f02a434d;border-radius:14px;background:linear-gradient(145deg,#5e152933,#150c0e);color:#ff2944}
.cyber-intro-symbol .icon{width:37px;height:37px}
.cyber-intro p{font-size:21px;line-height:1.7;margin:0;max-width:860px;text-wrap:pretty}
.cyber-intro-label{margin-left:auto;font:10px/2.1 Consolas,monospace;letter-spacing:.15em;border-left:1px solid #fff2;padding-left:30px}
.cyber-practice{padding-block:94px}
.cyber-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:50px;margin-bottom:40px}
.cyber-section-heading .cyber-kicker{order:2;padding-top:12px}
.cyber-page h2{font-size:clamp(36px,3.7vw,52px);line-height:1.14;letter-spacing:-.04em;font-weight:650;margin:0}
.cyber-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.cyber-card{grid-column:span 2;overflow:hidden;border:1px solid #ee344342;border-radius:14px;background:linear-gradient(145deg,#1f1013,#100b0c);box-shadow:inset 0 1px 0 #ff535625;transition:border-color .3s,box-shadow .3s}
.cyber-card:nth-child(4),.cyber-card:nth-child(5){grid-column:span 3;display:grid;grid-template-columns:.92fr 1fr}
.cyber-card-image{height:215px;position:relative;overflow:hidden;background:#0b0809}
.cyber-card-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#130c0d 0%,transparent 50%)}
.cyber-card-image img{width:100%;height:100%;object-fit:cover}
.cyber-card-number{position:absolute;left:20px;top:20px;font:12px/1.5 Consolas,monospace;letter-spacing:.15em;z-index:2;border:1px solid #ffffff50;background:#08080880;border-radius:4px;padding:7px 9px;backdrop-filter:blur(5px)}
.cyber-card-body{padding:26px 27px 30px;position:relative}
.cyber-card-body:before{content:'';position:absolute;left:27px;right:27px;top:0;height:1px;background:linear-gradient(90deg,#ff334b88,transparent)}
.cyber-card h3{font-size:24px;font-weight:620;letter-spacing:-.025em;line-height:1.3;margin:0 0 16px}
.cyber-card p{font-size:16px;line-height:1.75;margin:0;text-wrap:pretty}
.cyber-card:nth-child(4) .cyber-card-image,.cyber-card:nth-child(5) .cyber-card-image{height:100%;min-height:295px}
.cyber-card:nth-child(4) .cyber-card-image:after,.cyber-card:nth-child(5) .cyber-card-image:after{background:linear-gradient(270deg,#160d0f,transparent 50%)}
.cyber-card:nth-child(4) .cyber-card-body,.cyber-card:nth-child(5) .cyber-card-body{padding:34px 27px 32px 20px;align-self:center}
.cyber-card:nth-child(4) .cyber-card-body:before,.cyber-card:nth-child(5) .cyber-card-body:before{display:none}
.cyber-photo-scan{position:absolute;inset:0;background:linear-gradient(112deg,transparent 38%,#fc4d5b14 49%,transparent 60%);background-size:250% 100%;animation:cyber-photo-light-v13 16s ease-in-out infinite;pointer-events:none;z-index:1}
.cyber-card:nth-child(2) .cyber-photo-scan{animation-delay:-4s}.cyber-card:nth-child(3) .cyber-photo-scan{animation-delay:-8s}.cyber-card:nth-child(4) .cyber-photo-scan{animation-delay:-11s}.cyber-card:nth-child(5) .cyber-photo-scan{animation-delay:-2s}
.cyber-card:hover{border-color:#ff3b5480;box-shadow:0 14px 36px #0004,0 0 22px #e61a3112}
.cyber-responsibility{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center;padding-block:16px 100px}
.cyber-responsibility-photo{position:relative;aspect-ratio:1.2;min-height:370px;overflow:hidden;border:1px solid #ef344443;border-radius:14px}
.cyber-responsibility-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#070709ef,transparent 56%);pointer-events:none}
.cyber-responsibility-photo img{height:100%;width:100%;object-fit:cover}
.cyber-photo-label{position:absolute;left:25px;right:20px;bottom:26px;z-index:2;font:10px/1.6 Consolas,monospace;letter-spacing:.14em}
.cyber-section-icon{display:grid;place-items:center;width:56px;height:56px;border:1px solid #ef344454;border-radius:10px;background:#53101c35;margin-bottom:24px;color:#ff2f47}
.cyber-section-icon .icon{height:29px;width:29px}
.cyber-responsibility h2{font-size:43px;margin-bottom:26px}
.cyber-responsibility p{font-size:18px;line-height:1.8;margin:0}
.cyber-responsibility-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.cyber-responsibility-tags span{border:1px solid #fff2;padding:8px 10px;border-radius:4px;font-size:12px;line-height:1.4}
.cyber-reasons{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:stretch;padding-bottom:96px}
.cyber-reasons-copy{padding:25px 0}
.cyber-reasons h2{font-size:44px;margin:0 0 33px}
.cyber-reasons ul{display:grid;gap:16px;list-style:none;padding:0;margin:0}
.cyber-reasons li{display:flex;align-items:flex-start;gap:12px;font-size:17px;line-height:1.6}
.cyber-reasons li>.icon{width:20px;height:20px;margin-top:3px;color:#ff2944;flex:none}
.cyber-reasons-visual{position:relative;overflow:hidden;min-height:625px;border-radius:16px;border:1px solid #ee334542;isolation:isolate}
.cyber-reasons-visual:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(0deg,#08080be8,transparent 70%)}
.cyber-reasons-visual>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:60% center;z-index:-3}
.cyber-reasons-grid{position:absolute;inset:0;background-image:linear-gradient(#f52b4320 1px,transparent 1px),linear-gradient(90deg,#f52b4320 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(0deg,#000,transparent 75%);z-index:-2}
.cyber-reasons-orbit{position:absolute;width:280px;height:280px;border:1px solid #f2274130;border-radius:50%;bottom:60px;right:-40px;z-index:-1;animation:cyber-orbit-v13 36s linear infinite}
.cyber-reasons-orbit:before{content:'';position:absolute;inset:27px;border:1px dashed #fa3c5448;border-radius:50%}
.cyber-reasons-orbit:after{content:'';position:absolute;left:40px;top:36px;width:7px;height:7px;border-radius:50%;background:#ff2c45;box-shadow:0 0 14px #ff2c45}
.cyber-reasons-caption{position:absolute;left:40px;right:25px;bottom:48px;display:flex;align-items:center;gap:18px;font-size:32px;font-weight:550;line-height:1.18;letter-spacing:-.025em}
.cyber-reasons-caption .icon{width:49px;height:49px;color:#ff2944}
.cyber-contact{display:grid;grid-template-columns:1.15fr .85fr;position:relative;overflow:hidden;isolation:isolate;border:1px solid #ef2e474f;border-radius:17px;margin-bottom:96px;background:#140b0d;box-shadow:0 20px 50px #0003}
.cyber-contact-copy{padding:49px 10px 49px 45px;position:relative;z-index:1}
.cyber-contact h2{font-size:34px;line-height:1.2;margin-bottom:22px}
.cyber-contact p:not(.cyber-kicker){font-size:17px;line-height:1.7;margin:0 0 27px}
.cyber-contact-actions{display:flex;flex-wrap:wrap;gap:12px}
.cyber-contact-actions .button{font-size:13px;padding:14px 17px;min-height:54px}
.cyber-contact-art{position:relative;isolation:isolate;min-height:370px}
.cyber-contact-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#140b0d,transparent 60%)}
.cyber-contact-art img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:85% center;z-index:-1}
.cyber-contact-reticle{position:absolute;width:64%;height:68%;left:18%;top:16%;border:1px solid #ff3f5736;border-radius:12px;z-index:1;pointer-events:none}
.cyber-contact-reticle:before,.cyber-contact-reticle:after{content:'';position:absolute;width:20px;height:20px;border-color:#ff415b;border-style:solid}
.cyber-contact-reticle:before{left:-1px;top:-1px;border-width:1px 0 0 1px;border-radius:10px 0 0 0}
.cyber-contact-reticle:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0;border-radius:0 0 10px 0}
@keyframes cyber-scanning-v13{0%,14%{left:52%;opacity:0}24%{opacity:.7}70%{opacity:.7}88%,100%{left:96%;opacity:0}}
@keyframes cyber-signal-v13{from{left:-10%}to{left:105%}}
@keyframes cyber-photo-light-v13{0%,15%{background-position:200% 0;opacity:0}30%{opacity:.8}65%{opacity:.8}85%,100%{background-position:-100% 0;opacity:0}}
@keyframes cyber-orbit-v13{to{transform:rotate(360deg)}}
@media(max-width:1100px){.cyber-hero h1{font-size:62px}.cyber-hero-copy{width:58%}.cyber-intro-label{display:none}.cyber-intro p{font-size:19px}.cyber-grid{gap:20px}.cyber-card h3{font-size:21px}.cyber-card-body{padding:24px 20px}.cyber-card-body:before{left:20px;right:20px}.cyber-card:nth-child(4),.cyber-card:nth-child(5){display:block}.cyber-card:nth-child(4) .cyber-card-image,.cyber-card:nth-child(5) .cyber-card-image{min-height:0;height:215px}.cyber-card:nth-child(4) .cyber-card-body,.cyber-card:nth-child(5) .cyber-card-body{padding:24px 20px}.cyber-responsibility,.cyber-reasons{gap:42px}.cyber-responsibility h2,.cyber-reasons h2{font-size:38px}.cyber-contact-copy{padding:37px 15px 37px 32px}.cyber-contact h2{font-size:31px}}
@media(max-width:760px){.cyber-page .shell{width:calc(100% - 40px)}.cyber-hero{min-height:0}.cyber-hero-inner{min-height:775px;align-items:flex-end;padding-top:330px;padding-bottom:50px}.cyber-hero-image{height:430px;object-position:83% top}.cyber-hero:after{background:linear-gradient(0deg,#080809 36%,#080809e8 48%,transparent 76%)}.cyber-hero-copy{width:100%;max-width:600px}.cyber-hero h1{font-size:clamp(47px,12vw,65px);line-height:1.06;margin-bottom:24px}.cyber-hero .cyber-kicker{font-size:10px;letter-spacing:.12em;margin-bottom:19px}.cyber-hero-copy>p:not(.cyber-kicker){font-size:17px;line-height:1.75}.cyber-hero-scan{bottom:50%}.cyber-intro{padding-block:34px;gap:17px;align-items:flex-start}.cyber-intro-symbol{flex-basis:48px;height:48px;border-radius:9px}.cyber-intro-symbol .icon{width:26px;height:26px}.cyber-intro p{font-size:17px;line-height:1.8}.cyber-practice{padding-block:60px}.cyber-section-heading{display:block;margin-bottom:30px}.cyber-section-heading .cyber-kicker{padding-top:0;margin-bottom:19px}.cyber-page h2{font-size:38px}.cyber-grid{grid-template-columns:1fr;gap:22px}.cyber-card,.cyber-card:nth-child(4),.cyber-card:nth-child(5){grid-column:1;display:block}.cyber-card-image,.cyber-card:nth-child(4) .cyber-card-image,.cyber-card:nth-child(5) .cyber-card-image{height:235px}.cyber-card h3{font-size:25px}.cyber-card p{font-size:17px;line-height:1.8}.cyber-card-body,.cyber-card:nth-child(4) .cyber-card-body,.cyber-card:nth-child(5) .cyber-card-body{padding:26px 25px 30px}.cyber-card:nth-child(4) .cyber-card-image:after,.cyber-card:nth-child(5) .cyber-card-image:after{background:linear-gradient(0deg,#160d0f,transparent 50%)}.cyber-responsibility{grid-template-columns:1fr;gap:33px;padding-block:10px 62px}.cyber-responsibility-photo{min-height:280px;aspect-ratio:1.25}.cyber-responsibility h2{font-size:36px;margin-bottom:22px}.cyber-responsibility p{font-size:17px;line-height:1.8}.cyber-photo-label{font-size:9px;left:22px}.cyber-reasons{grid-template-columns:1fr;gap:30px;padding-bottom:60px}.cyber-reasons-copy{padding:0}.cyber-reasons h2{font-size:37px}.cyber-reasons ul{gap:14px}.cyber-reasons li{font-size:16px}.cyber-reasons-visual{min-height:370px;aspect-ratio:1.1}.cyber-reasons-caption{left:28px;bottom:33px;font-size:29px}.cyber-contact{grid-template-columns:1fr;margin-bottom:60px}.cyber-contact-copy{padding:33px 26px 29px}.cyber-contact h2{font-size:31px}.cyber-contact-art{min-height:270px;order:-1}.cyber-contact-art:after{background:linear-gradient(0deg,#140b0d,transparent 70%)}.cyber-contact-reticle{width:60%;height:66%;left:30%;top:15%}.cyber-contact-actions{gap:12px}.cyber-contact-actions .button{width:100%;font-size:14px}.cyber-contact .cyber-kicker{font-size:10px;letter-spacing:.12em}}
@media(prefers-reduced-motion:reduce){.cyber-hero-scan,.cyber-signal-line:after,.cyber-photo-scan{animation:none!important;display:none}.cyber-reasons-orbit{animation:none!important}.cyber-card{transition:none}}

/* Keep responsive image proportions inside the available grid column. */
.cyber-grid>*,.cyber-responsibility>*,.cyber-reasons>*,.cyber-contact>*{min-width:0}
.cyber-responsibility-photo,.cyber-reasons-visual{width:100%;max-width:100%;min-width:0}
.cyber-intro>p,.cyber-reasons-caption>span{min-width:0}
@media(max-width:760px){.cyber-grid,.cyber-responsibility,.cyber-reasons,.cyber-contact{grid-template-columns:minmax(0,1fr)}.cyber-responsibility-photo,.cyber-reasons-visual{height:auto}.cyber-contact-actions .button{white-space:normal}}
@media(max-width:380px){.cyber-responsibility h2{font-size:32px}.cyber-reasons h2{font-size:34px}.cyber-contact h2{font-size:28px}.cyber-reasons-caption{left:22px;right:20px;gap:13px;font-size:26px}.cyber-reasons-caption .icon{width:39px;height:39px}.cyber-hero .cyber-kicker{letter-spacing:.08em}.cyber-contact-copy{padding-inline:22px}}

/* V15: keep the focal subjects visible in the new cybersecurity photos. */
.cyber-card-1 .cyber-card-image img{object-position:center!important}
.cyber-responsibility-photo img{object-position:center 65%}
.cyber-reasons-visual>img{object-position:center 43%}
@media(max-width:760px){.cyber-responsibility-photo img{object-position:center 64%}.cyber-reasons-visual>img{object-position:center 37%}}
