
:root{
  --bg:#020611;
  --bg2:#06101f;
  --panel:rgba(7,17,34,.78);
  --panel-solid:#081426;
  --panel-2:#0b1a30;
  --text:#f7fbff;
  --muted:#9fb3c9;
  --muted-2:#6f88a1;
  --cyan:#24e7ff;
  --cyan-2:#00b8ff;
  --blue:#2476ff;
  --green:#3ee6a8;
  --warn:#ffc85a;
  --danger:#ff6b81;
  --line:rgba(85,190,255,.18);
  --line-strong:rgba(63,221,255,.38);
  --shadow:0 28px 80px rgba(0,0,0,.42);
  --glow:0 0 32px rgba(0,213,255,.18);
  --radius:22px;
  --radius-sm:14px;
  --container:1180px;
  --header-h:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;background:var(--bg)}
body{
  margin:0;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 18% -10%,rgba(0,229,255,.13),transparent 34%),
    radial-gradient(circle at 88% 12%,rgba(36,118,255,.14),transparent 33%),
    linear-gradient(180deg,#020611 0%,#030916 44%,#020611 100%);
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;z-index:-2;opacity:.28;
  background-image:
    linear-gradient(rgba(43,176,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(43,176,255,.035) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to bottom,black,transparent 92%);
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.skip-link{position:fixed;top:-80px;left:20px;background:#fff;color:#000;padding:10px 16px;border-radius:10px;z-index:9999}
.skip-link:focus{top:10px}
.site-header{
  position:sticky;top:0;z-index:1000;height:var(--header-h);
  border-bottom:1px solid transparent;
  background:rgba(2,6,17,.72);
  backdrop-filter:blur(18px) saturate(150%);
  transition:.25s ease;
}
.site-header.scrolled{border-color:var(--line);background:rgba(2,6,17,.92);box-shadow:0 12px 35px rgba(0,0,0,.24)}
.navbar{width:min(var(--container),calc(100% - 40px));height:100%;margin:auto;display:flex;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand img{width:48px;height:48px;border-radius:50%;filter:drop-shadow(0 0 16px rgba(0,220,255,.25))}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-size:1.08rem;letter-spacing:.01em}
.brand-copy strong span{color:var(--cyan)}
.brand-copy small{color:var(--muted-2);font-size:.67rem;letter-spacing:.16em;margin-top:5px}
.menu{list-style:none;margin:0 0 0 auto;padding:0;display:flex;align-items:center;gap:5px}
.menu a{display:block;padding:11px 12px;border-radius:12px;color:#c7d6e6;font-size:.93rem;font-weight:650;transition:.2s}
.menu a:hover,.menu a.ativo{color:#fff;background:rgba(36,231,255,.09);box-shadow:inset 0 0 0 1px rgba(36,231,255,.13)}
.nav-cta{margin-left:8px}
.menu-mobile{display:none;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer}
.menu-mobile span{display:block;width:25px;height:2px;background:#fff;margin:5px 0;border-radius:3px}
.account-slot{display:flex;align-items:center;margin-left:4px}
.account-login-link{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:12px;font-size:.88rem}
.account-login-link svg{width:18px;fill:var(--cyan)}
.account-nav{position:relative}
.account-trigger{display:flex;align-items:center;gap:8px;background:rgba(8,20,38,.9);border:1px solid var(--line);color:#fff;border-radius:14px;padding:7px 10px;cursor:pointer}
.account-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan))}
.account-avatar svg{width:16px;fill:#00101b}
.account-trigger-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}
.account-trigger-text small{color:var(--muted);font-size:.68rem}
.account-trigger-text strong{font-size:.83rem}
.account-chevron svg{width:16px;fill:#a8c8dc}
.account-dropdown{position:absolute;right:0;top:calc(100% + 12px);width:250px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#071224;box-shadow:var(--shadow)}
.account-dropdown[hidden]{display:none}
.account-summary{padding:10px 11px 13px;border-bottom:1px solid var(--line);margin-bottom:7px;display:flex;flex-direction:column}
.account-summary span{font-size:.78rem;color:var(--muted);word-break:break-all;margin-top:4px}
.account-dropdown a,.account-dropdown button{width:100%;display:block;padding:10px 11px;border:0;background:none;color:#dcecff;text-align:left;border-radius:10px;cursor:pointer}
.account-dropdown a:hover,.account-dropdown button:hover{background:rgba(36,231,255,.08)}
.account-logout{color:#ff9baa!important}
.btn{
  appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:0 18px;border-radius:14px;font-weight:800;letter-spacing:.005em;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary,.auth-primary{
  color:#001018;background:linear-gradient(135deg,#67f3ff 0%,#16d9ff 48%,#2682ff 100%);
  box-shadow:0 12px 36px rgba(0,182,255,.24),inset 0 1px rgba(255,255,255,.4)
}
.btn-primary:hover,.auth-primary:hover{box-shadow:0 15px 44px rgba(0,198,255,.34)}
.btn-outline{color:#e9f7ff;border:1px solid rgba(85,208,255,.35);background:rgba(7,22,40,.7)}
.btn-outline:hover{border-color:rgba(85,228,255,.72);background:rgba(20,81,118,.24)}
.btn-ghost{background:rgba(255,255,255,.04);color:#dbe9f7;border:1px solid rgba(255,255,255,.08)}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;color:#9eefff;background:rgba(0,210,255,.08);
  border:1px solid rgba(56,220,255,.16);border-radius:999px;padding:7px 11px;
  font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800
}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(62,230,168,.08),0 0 15px rgba(62,230,168,.7)}
.hero{
  min-height:calc(100svh - var(--header-h));display:grid;grid-template-columns:1.08fr .92fr;
  align-items:center;gap:64px;padding-block:72px 84px;position:relative
}
.hero::after{content:"";position:absolute;left:50%;bottom:4%;width:55%;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);filter:blur(.2px);opacity:.28}
.hero h1{font-size:clamp(3.15rem,6vw,6.1rem);line-height:.92;letter-spacing:-.055em;margin:20px 0 22px;max-width:11ch}
.hero h1 span{display:block;color:transparent;background:linear-gradient(90deg,#fff,#5becff 45%,#2980ff);-webkit-background-clip:text;background-clip:text}
.hero p{font-size:clamp(1.02rem,1.6vw,1.25rem);line-height:1.72;color:#b8c9da;max-width:60ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}
.hero-points{display:flex;gap:18px;flex-wrap:wrap;margin:25px 0 0;padding:0;list-style:none;color:#9eb6c8;font-size:.85rem}
.hero-points li{display:flex;align-items:center;gap:8px}
.hero-points li::before{content:"";width:8px;height:8px;border:2px solid var(--cyan);border-radius:50%;box-shadow:0 0 12px rgba(0,220,255,.45)}
.hero-visual{position:relative;display:grid;place-items:center;min-height:520px}
.logo-orbit{position:relative;width:min(500px,90vw);aspect-ratio:1;display:grid;place-items:center}
.logo-orbit::before,.logo-orbit::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(67,215,255,.22)}
.logo-orbit::before{inset:2%;animation:spin 26s linear infinite;border-style:dashed}
.logo-orbit::after{inset:11%;box-shadow:0 0 70px rgba(0,178,255,.12)}
.logo-orbit img{width:74%;border-radius:50%;position:relative;z-index:2;filter:drop-shadow(0 20px 58px rgba(0,0,0,.5)) drop-shadow(0 0 28px rgba(24,207,255,.16))}
.orbit-chip{position:absolute;z-index:3;min-width:128px;padding:11px 14px;border-radius:15px;background:rgba(6,17,33,.9);border:1px solid rgba(58,213,255,.24);box-shadow:0 14px 40px rgba(0,0,0,.35);backdrop-filter:blur(12px)}
.orbit-chip strong{display:block;font-size:.85rem}.orbit-chip span{font-size:.72rem;color:var(--muted)}
.orbit-chip.c1{top:16%;right:-2%;animation:float 4.8s ease-in-out infinite}
.orbit-chip.c2{left:-3%;bottom:20%;animation:float 5.4s ease-in-out infinite .6s}
.orbit-chip.c3{right:5%;bottom:8%;animation:float 5.1s ease-in-out infinite .2s}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-10px)}}
.proof-bar{border-block:1px solid var(--line);background:rgba(3,12,25,.62);backdrop-filter:blur(10px)}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.proof-grid article{padding:25px 28px;border-right:1px solid var(--line)}
.proof-grid article:last-child{border-right:0}
.proof-grid strong{display:block;font-size:1.65rem;color:#fff}.proof-grid span{font-size:.82rem;color:var(--muted)}
.section{padding-block:104px}
.section.compact{padding-block:70px}
.section-heading{max-width:760px;margin-bottom:42px}
.section-heading h2{font-size:clamp(2.15rem,4vw,4.2rem);line-height:1;letter-spacing:-.04em;margin:18px 0 14px}
.section-heading p{color:var(--muted);font-size:1.03rem;line-height:1.72}
.grid{display:grid;gap:20px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{
  position:relative;border:1px solid var(--line);border-radius:var(--radius);background:
    linear-gradient(180deg,rgba(9,28,51,.74),rgba(4,13,27,.85));
  box-shadow:0 16px 48px rgba(0,0,0,.2);overflow:hidden;
}
.card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(90,235,255,.65),transparent);opacity:.6}
.service-card{padding:28px;min-height:280px;display:flex;flex-direction:column}
.service-icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,229,255,.16),rgba(36,118,255,.18));border:1px solid rgba(66,222,255,.22);font-weight:900;color:var(--cyan);font-size:1.1rem}
.service-card h3{margin:22px 0 11px;font-size:1.35rem}.service-card p{color:var(--muted);line-height:1.65;margin:0}
.service-card a{margin-top:auto;padding-top:24px;color:#8cecff;font-weight:800;font-size:.9rem}
.media-card{display:grid;grid-template-columns:1fr 1fr;min-height:420px}
.media-card.reverse .media-copy{order:2}.media-card.reverse .media-image{order:1}
.media-copy{padding:44px;display:flex;flex-direction:column;justify-content:center}
.media-copy h3{font-size:clamp(2rem,3.4vw,3.3rem);letter-spacing:-.035em;margin:15px 0 12px}
.media-copy p{color:var(--muted);line-height:1.75}
.media-image{position:relative;min-height:360px;background:#01040b;display:grid;place-items:center;overflow:hidden}
.media-image::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,transparent 40%,rgba(1,4,11,.32) 78%,rgba(1,4,11,.75))}
.media-image img{width:80%;filter:drop-shadow(0 0 30px rgba(0,203,255,.18));transition:transform .45s ease}
.media-card:hover .media-image img{transform:scale(1.035)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:rgba(6,17,32,.5)}
.trust-grid article{padding:28px;border-right:1px solid var(--line)}
.trust-grid article:last-child{border-right:0}
.trust-grid strong{font-size:2.1rem;color:rgba(75,226,255,.9)}.trust-grid h3{font-size:1.1rem}.trust-grid p{font-size:.9rem;line-height:1.6;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.step{padding:26px;border:1px solid var(--line);border-radius:18px;background:rgba(6,16,30,.6)}
.step span{font-weight:900;color:var(--cyan);font-size:.8rem;letter-spacing:.14em}.step h3{margin:16px 0 9px}.step p{margin:0;color:var(--muted);line-height:1.6}
.cta-band{margin-block:70px 110px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:42px;border-radius:30px;border:1px solid rgba(50,220,255,.28);background:
  radial-gradient(circle at 85% 20%,rgba(30,142,255,.2),transparent 28%),
  linear-gradient(135deg,rgba(5,29,52,.92),rgba(5,13,27,.96));box-shadow:var(--glow)}
.cta-band h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.03;letter-spacing:-.04em;margin:8px 0}
.cta-band p{color:var(--muted);margin:0}
.page-hero{padding-block:82px 62px;display:grid;grid-template-columns:1fr .65fr;gap:60px;align-items:center}
.page-hero h1{font-size:clamp(3rem,6vw,5.7rem);line-height:.94;letter-spacing:-.055em;margin:18px 0}
.page-hero p{color:var(--muted);font-size:1.08rem;line-height:1.75}
.page-hero-media img{width:100%;max-width:430px;margin-inline:auto;border-radius:50%;filter:drop-shadow(0 0 30px rgba(0,213,255,.15))}
.price-note{display:inline-flex;gap:9px;align-items:center;margin-top:18px;color:#c8d9e8;font-size:.88rem}
.price-note::before{content:"✓";color:var(--green);font-weight:900}
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--line);border-radius:16px;background:rgba(5,17,33,.62);padding:0 20px}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:800;display:flex;justify-content:space-between;gap:20px}
.faq summary::after{content:"+";color:var(--cyan);font-size:1.4rem}.faq details[open] summary::after{content:"−"}
.faq p{color:var(--muted);line-height:1.7;margin-top:0}
.project-showcase{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.project-item{min-height:360px;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;isolation:isolate}
.project-item::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 15%,rgba(2,7,15,.92) 75%);z-index:-1}
.project-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.52}
.project-item h3{font-size:1.7rem;margin:0 0 8px}.project-item p{margin:0;color:#b9cadb}
.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:20px}
.contact-card{padding:34px}
.contact-card h2{font-size:2rem;margin-top:0}.contact-card p{color:var(--muted);line-height:1.7}
.contact-methods{display:grid;gap:12px;margin-top:25px}
.contact-method{padding:16px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.12)}
.contact-method strong{display:block;margin-bottom:3px}.contact-method span{color:var(--muted);font-size:.88rem}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:8px}
.field-full{grid-column:1/-1}
label{font-size:.86rem;color:#dce9f7;font-weight:750}
input,select,textarea{
  width:100%;border:1px solid rgba(105,166,213,.22);background:#061225;color:#f4fbff;border-radius:13px;
  padding:13px 14px;outline:none;transition:.2s;
}
input:focus,select:focus,textarea:focus{border-color:rgba(58,225,255,.66);box-shadow:0 0 0 4px rgba(36,231,255,.08)}
input::placeholder,textarea::placeholder{color:#57708a}
textarea{min-height:145px;resize:vertical}
small.helper{color:var(--muted-2);font-size:.75rem}
.site-footer{border-top:1px solid var(--line);padding:48px 0 28px;background:#020611}
.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,.7fr);gap:35px}
.footer-brand p{color:var(--muted);line-height:1.7;max-width:42ch}
.footer-title{font-weight:850;margin-bottom:14px}.footer-links{display:grid;gap:10px}.footer-links a{color:var(--muted);font-size:.9rem}.footer-links a:hover{color:var(--cyan)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:34px;padding-top:22px;color:var(--muted-2);font-size:.8rem}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--delay,0ms)}
.reveal.visible{opacity:1;transform:none}

/* Auth */
.auth-shell{min-height:calc(100svh - var(--header-h));padding-block:60px 85px;display:grid;grid-template-columns:.85fr 1fr;gap:40px;align-items:center}
.auth-intro h1{font-size:clamp(2.7rem,5vw,5rem);line-height:.96;letter-spacing:-.05em;margin:18px 0}
.auth-intro p{color:var(--muted);line-height:1.7}
.security-list{display:grid;gap:11px;margin-top:25px}.security-list div{display:flex;gap:10px;color:#aec1d3;font-size:.9rem}.security-list b{color:var(--green)}
.auth-card{max-width:560px;width:100%;margin-left:auto;padding:34px;border:1px solid var(--line);border-radius:26px;background:rgba(6,18,35,.84);box-shadow:var(--shadow)}
.auth-card-centered{margin-inline:auto}
.auth-card h2{font-size:2rem;margin:8px 0}.auth-card>p{color:var(--muted)}
.auth-form{display:grid;gap:12px;margin-top:24px}
.password-field{position:relative}.password-field input{padding-right:90px}.password-toggle{position:absolute;right:7px;top:7px;height:34px;border:0;border-radius:9px;background:rgba(36,231,255,.09);color:#b7ebf5;padding:0 10px;cursor:pointer}
.checkbox-row{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-weight:500;font-size:.84rem}.checkbox-row input{width:18px;height:18px;margin-top:2px}
.form-message{min-height:20px;margin:2px 0 0;color:#b9ccdc;font-size:.85rem;line-height:1.4}.form-message.error{color:#ff9daf}.form-message.success{color:#7ff0bd}
.auth-switch{text-align:center;font-size:.86rem;color:var(--muted)}.auth-switch a{color:#8deeff;font-weight:800}
.password-meter{height:5px;border-radius:99px;background:#14243a;overflow:hidden}.password-meter span{display:block;height:100%;width:0;background:var(--danger);transition:.2s}.password-meter[data-score="2"] span{width:50%;background:var(--warn)}.password-meter[data-score="3"] span{width:75%;background:#56d5ff}.password-meter[data-score="4"] span{width:100%;background:var(--green)}
.confirmation-card{text-align:center;max-width:650px;margin:auto}.confirmation-icon{width:82px;height:82px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;font-size:2rem;background:rgba(62,230,168,.1);border:1px solid rgba(62,230,168,.35);color:var(--green);box-shadow:0 0 35px rgba(62,230,168,.1)}
.confirmation-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:24px}

/* Client area */
.dashboard-shell{padding-block:42px 80px;display:grid;grid-template-columns:250px 1fr;gap:22px}
.dashboard-sidebar{position:sticky;top:100px;height:max-content;padding:24px;border:1px solid var(--line);border-radius:20px;background:rgba(6,18,34,.7)}
.dashboard-sidebar h1{font-size:1.6rem;margin:12px 0 7px}.dashboard-sidebar p{color:var(--muted);font-size:.88rem}
.dashboard-sidebar nav{display:grid;gap:5px;margin:22px 0}.dashboard-sidebar nav a,.dashboard-exit{padding:11px 12px;border-radius:11px;color:#b8cadb;font-size:.9rem}.dashboard-sidebar nav a:hover,.dashboard-sidebar nav a.active{background:rgba(36,231,255,.08);color:#fff}
.dashboard-exit{display:block;border-top:1px solid var(--line);margin-top:15px;padding-top:16px;color:#ff9cad}
.dashboard-content{min-width:0}
.dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(6,28,50,.8),rgba(5,13,28,.8))}
.dashboard-welcome h2{margin:8px 0 5px;font-size:2rem}.dashboard-welcome p{margin:0;color:var(--muted)}
.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 28px}.dashboard-stats article{padding:20px;border:1px solid var(--line);border-radius:16px;background:rgba(6,17,31,.7)}.dashboard-stats strong{display:block;font-size:2rem;color:#fff}.dashboard-stats span{font-size:.82rem;color:var(--muted)}
.dashboard-section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.dashboard-section-title h2{margin:8px 0 0}
.requests-list{display:grid;gap:12px}.request-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px;border:1px solid var(--line);border-radius:17px;background:rgba(5,16,31,.7)}.request-main{min-width:0}.request-id{font-size:.74rem;color:#72eaff;font-weight:900;letter-spacing:.08em}.request-card h3{margin:7px 0;font-size:1.08rem}.request-card p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.5}.request-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--muted-2);font-size:.75rem}
.status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:850;border:1px solid}.status-sent{color:#91dfff;border-color:rgba(75,195,255,.28);background:rgba(30,135,255,.08)}.status-analysis{color:#ffd889;border-color:rgba(255,200,90,.27);background:rgba(255,200,90,.07)}.status-progress{color:#86f4c4;border-color:rgba(62,230,168,.28);background:rgba(62,230,168,.07)}.status-done{color:#99f1d0;border-color:rgba(62,230,168,.34);background:rgba(62,230,168,.08)}.status-cancelled{color:#ff9cac;border-color:rgba(255,107,129,.3);background:rgba(255,107,129,.08)}
.empty-state{padding:36px;text-align:center;border:1px dashed rgba(91,194,255,.24);border-radius:18px;color:var(--muted)}
.request-form-shell{padding-block:42px 85px}.back-link{display:inline-block;color:#91dff3;font-size:.86rem;margin-bottom:18px}
.request-form-layout{display:grid;grid-template-columns:1fr 330px;gap:20px}.request-form-card,.request-help-card,.detail-card,.chat-card,.attachments-card,.project-card,.timeline-card,.proposal-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:rgba(5,17,33,.72)}
.request-form-card h1{font-size:2.5rem;margin:10px 0}.request-form-card>p{color:var(--muted);line-height:1.65}
.request-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
.request-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:8px}.request-submit p{margin:0;color:var(--muted);font-size:.78rem;max-width:50ch}
.request-help-card{height:max-content;position:sticky;top:100px}.request-help-card h2{margin:12px 0}.request-help-list{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:14px}.request-help-list li{display:flex;gap:12px}.request-help-list strong{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;border-radius:9px;background:rgba(36,231,255,.1);color:var(--cyan)}.request-help-list span{color:var(--muted);font-size:.87rem;line-height:1.5}
.success-card{max-width:680px;margin:10vh auto;padding:44px;text-align:center;border:1px solid var(--line);border-radius:26px;background:rgba(5,18,34,.82);box-shadow:var(--shadow)}.success-icon{width:76px;height:76px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:rgba(62,230,168,.1);color:var(--green);font-size:2rem;border:1px solid rgba(62,230,168,.3)}.protocol-box{margin:24px auto;padding:16px;border:1px solid var(--line);border-radius:15px;max-width:360px}.protocol-box span{display:block;color:var(--muted);font-size:.78rem}.protocol-box strong{display:block;margin-top:6px;font-size:1.4rem;color:#8cefff}.success-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.detail-shell{padding-block:42px 90px}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.detail-header h1{font-size:2.6rem;line-height:1.05;margin:8px 0}.detail-header p{color:var(--muted)}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-card h2,.chat-card h2,.attachments-card h2,.project-card h2,.timeline-card h2{margin-top:0}
.detail-list{display:grid;gap:12px}.detail-list div{display:grid;grid-template-columns:150px 1fr;gap:16px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:11px}.detail-list dt{color:var(--muted-2);font-size:.78rem}.detail-list dd{margin:0;color:#dceaf7}
.response-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.response-grid div{padding:12px;border-radius:12px;background:rgba(255,255,255,.03)}.response-grid span{display:block;color:var(--muted-2);font-size:.7rem}.response-grid strong{display:block;margin-top:4px;font-size:.86rem}
.workspace{margin-top:18px}.tabs{display:flex;gap:8px;overflow:auto;padding-bottom:8px}.tab{border:1px solid var(--line);background:rgba(5,16,30,.65);color:#b9cedf;padding:10px 14px;border-radius:12px;cursor:pointer;white-space:nowrap}.tab.active{color:#fff;border-color:rgba(57,226,255,.5);background:rgba(18,116,160,.18)}
.tab-panel{margin-top:10px}.tab-panel[hidden]{display:none}
.chat-thread{height:320px;overflow:auto;padding:8px;display:grid;align-content:start;gap:10px;border:1px solid var(--line);border-radius:14px;background:#030a16}.chat-message{max-width:82%;padding:12px 14px;border-radius:14px;background:#0c2038}.chat-message-client{justify-self:end;background:#0b3850}.chat-message-admin{justify-self:start}.chat-message-meta{display:flex;justify-content:space-between;gap:18px;font-size:.7rem;color:var(--muted)}.chat-message p{margin:7px 0 0;line-height:1.55;font-size:.88rem}.chat-form{display:grid;gap:10px;margin-top:12px}.chat-form textarea{min-height:90px}.chat-form-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}
.attachments-list{display:grid;gap:8px}.attachment{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px}.attachment span{color:var(--muted);font-size:.8rem}.attachment button{border:0;background:rgba(36,231,255,.1);color:#9aeeff;border-radius:9px;padding:8px 10px;cursor:pointer}.upload-row{margin-top:14px;display:grid;gap:8px}
.project-progress{height:10px;border-radius:999px;background:#102138;overflow:hidden}.project-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan),var(--green));border-radius:inherit}.project-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.project-meta div{padding:12px;border-radius:12px;background:rgba(255,255,255,.03)}.project-meta span{display:block;color:var(--muted-2);font-size:.7rem}.project-meta strong{display:block;margin-top:4px;font-size:.86rem}.project-stages{display:grid;gap:8px}.project-stage{display:flex;gap:10px;align-items:center;padding:10px;border-radius:11px;border:1px solid rgba(255,255,255,.05)}.project-stage-dot{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line-strong);color:var(--green);flex:0 0 28px}.project-stage.done{background:rgba(62,230,168,.05)}.project-stage.current{background:rgba(36,231,255,.05)}.project-stage div span{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-block:50px 90px}.profile-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:rgba(5,17,33,.72)}.profile-card h2{margin-top:0}

/* mobile */
@media (max-width:980px){
  :root{--header-h:68px}
  .navbar{width:min(100% - 26px,var(--container))}
  .brand-copy small{display:none}
  .menu-mobile{display:block}
  .menu{position:fixed;top:var(--header-h);left:13px;right:13px;display:none;flex-direction:column;align-items:stretch;background:rgba(4,13,27,.98);border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--shadow)}
  .menu.ativo{display:flex}.menu a{padding:13px}
  .nav-cta{margin-left:0}.account-slot{margin-left:0}
  .account-login-link{padding:8px 10px}.account-login-link span{display:none}
  .hero{grid-template-columns:1fr;min-height:auto;padding-block:62px 72px;gap:38px}.hero-copy{text-align:center}.hero h1{margin-inline:auto}.hero p{margin-inline:auto}.hero-actions,.hero-points{justify-content:center}.hero-visual{min-height:410px}.logo-orbit{max-width:430px}
  .proof-grid{grid-template-columns:1fr 1fr}.proof-grid article:nth-child(2){border-right:0}.proof-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .grid-4,.trust-grid,.steps{grid-template-columns:1fr 1fr}.trust-grid article:nth-child(2){border-right:0}.trust-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .media-card,.page-hero,.contact-grid,.auth-shell{grid-template-columns:1fr}.media-card .media-copy,.media-card.reverse .media-copy{order:2}.media-card .media-image,.media-card.reverse .media-image{order:1}.page-hero{text-align:center}.page-hero p{margin-inline:auto}.page-hero-media{order:-1}.page-hero-media img{max-width:290px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .dashboard-shell{grid-template-columns:1fr}.dashboard-sidebar{position:static}.dashboard-sidebar nav{grid-template-columns:repeat(3,1fr)}.dashboard-sidebar nav a{text-align:center}.dashboard-exit{text-align:center}
  .request-form-layout{grid-template-columns:1fr}.request-help-card{position:static}
  .detail-grid{grid-template-columns:1fr}
}
@media (max-width:680px){
  .container{width:min(100% - 24px,var(--container))}
  .site-header{height:64px}.navbar{height:64px}.brand img{width:41px;height:41px}.brand-copy strong{font-size:.95rem}
  .section{padding-block:74px}.section-heading{margin-bottom:28px}
  .hero{padding-top:46px}.hero h1{font-size:clamp(2.7rem,14vw,4.5rem);max-width:12ch}.hero p{font-size:.98rem;line-height:1.65}.hero-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .btn{width:100%}.hero-points{gap:10px 14px;font-size:.78rem}.hero-visual{min-height:330px}.logo-orbit{width:92vw}.orbit-chip{min-width:104px;padding:8px 10px}.orbit-chip strong{font-size:.72rem}.orbit-chip span{font-size:.62rem}
  .proof-grid{grid-template-columns:1fr 1fr}.proof-grid article{padding:18px 16px}.proof-grid strong{font-size:1.25rem}.proof-grid span{font-size:.72rem}
  .grid-3,.grid-4,.trust-grid,.steps,.project-showcase{grid-template-columns:1fr}.trust-grid article{border-right:0;border-bottom:1px solid var(--line)}.trust-grid article:last-child{border-bottom:0}
  .media-copy{padding:28px}.media-image{min-height:280px}.media-image img{width:86%}
  .cta-band{grid-template-columns:1fr;padding:28px;margin-block:45px 75px}.cta-band .btn{width:100%}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
  .auth-shell{padding-block:35px 65px}.auth-intro{text-align:center}.auth-intro h1{font-size:2.8rem}.auth-card{padding:23px}.auth-card h2{font-size:1.7rem}
  .form-grid,.request-form{grid-template-columns:1fr}.field-full,.request-submit{grid-column:auto}.request-submit{flex-direction:column;align-items:stretch}.request-submit .btn{width:100%}
  .dashboard-shell{padding-top:24px}.dashboard-sidebar nav{grid-template-columns:1fr}.dashboard-welcome{align-items:stretch;flex-direction:column}.dashboard-welcome .btn{width:100%}.dashboard-stats{grid-template-columns:1fr 1fr}.dashboard-stats article:last-child{grid-column:1/-1}.dashboard-section-title{align-items:stretch;flex-direction:column}.dashboard-section-title .btn{width:100%}.request-card{align-items:stretch;flex-direction:column}.request-card .btn{width:100%}
  .detail-header{flex-direction:column}.detail-header h1{font-size:2rem}.detail-list div{grid-template-columns:1fr;gap:4px}.response-grid,.project-meta{grid-template-columns:1fr}.chat-message{max-width:94%}.chat-form-footer{flex-direction:column;align-items:stretch}.chat-form-footer .btn{width:100%}
  .profile-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .reveal{opacity:1!important;transform:none!important}
}

/* Admin */
.admin-shell{padding-block:34px 90px}
.admin-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.admin-top h1{font-size:2.5rem;margin:8px 0 0}.admin-top p{color:var(--muted)}
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.admin-stats article{padding:20px;border:1px solid var(--line);border-radius:16px;background:rgba(5,17,33,.72)}
.admin-stats strong{display:block;font-size:2rem}.admin-stats span{color:var(--muted);font-size:.8rem}
.admin-tools{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.admin-tools input,.admin-tools select{width:auto;min-width:220px}
.admin-list{display:grid;gap:12px}
.admin-card{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:17px;background:rgba(5,16,31,.7)}
.admin-card h3{margin:7px 0}.admin-card p{margin:0;color:var(--muted);font-size:.86rem}
.admin-owner{margin-top:8px;color:#9cc9dc;font-size:.8rem}
.admin-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.admin-form{display:grid;gap:12px}
.admin-stage{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:8px 0}
.admin-stage input[type="checkbox"]{width:20px;height:20px}
.admin-stage input[type="text"]{min-width:0}
.client-list{display:grid;gap:10px}.client-row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:14px;background:rgba(5,16,31,.7)}.client-row strong{display:block}.client-row span{display:block;color:var(--muted);font-size:.8rem;margin-top:4px}
@media(max-width:900px){.admin-stats{grid-template-columns:1fr 1fr}.admin-detail-grid{grid-template-columns:1fr}}
@media(max-width:620px){.admin-top{align-items:stretch;flex-direction:column}.admin-stats{grid-template-columns:1fr 1fr}.admin-tools{display:grid}.admin-tools input,.admin-tools select{width:100%;min-width:0}.admin-card,.client-row{grid-template-columns:1fr}.admin-card .btn,.client-row .btn{width:100%}}

/* =========================================================
   InfoTech V6.1 — motion, compact layout & portfolio polish
   ========================================================= */
body{
  background:
    radial-gradient(circle at 15% 0%,rgba(0,229,255,.14),transparent 31%),
    radial-gradient(circle at 90% 14%,rgba(36,118,255,.16),transparent 30%),
    radial-gradient(circle at 48% 82%,rgba(0,184,255,.06),transparent 34%),
    linear-gradient(180deg,#020611 0%,#030b19 44%,#020611 100%);
}
body::after{
  content:"";position:fixed;inset:-25%;pointer-events:none;z-index:-3;
  background:conic-gradient(from 210deg at 50% 50%,transparent 0 20%,rgba(36,231,255,.045) 27%,transparent 34% 61%,rgba(36,118,255,.05) 70%,transparent 78%);
  filter:blur(70px);animation:ambientDrift 18s ease-in-out infinite alternate;
}
@keyframes ambientDrift{to{transform:translate3d(3%,2%,0) rotate(7deg) scale(1.05)}}

/* Header: a little more alive without becoming distracting */
.brand img{animation:brandBreath 3.2s ease-in-out infinite;will-change:filter,transform}
@keyframes brandBreath{
  0%,100%{filter:drop-shadow(0 0 8px rgba(0,220,255,.20));transform:scale(1)}
  45%{filter:drop-shadow(0 0 18px rgba(0,235,255,.45));transform:scale(1.025)}
  58%{filter:drop-shadow(0 0 11px rgba(36,118,255,.30));transform:scale(1.008)}
}
.account-login-link{position:relative;overflow:visible;box-shadow:0 0 0 0 rgba(36,231,255,0)}
.account-login-link::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(36,231,255,.18);border-radius:16px;animation:userRing 2.6s ease-out infinite}
.account-login-link svg{animation:userAttention 2.2s ease-in-out infinite;transform-origin:center}
@keyframes userAttention{0%,100%{transform:translateY(0) scale(1)}40%{transform:translateY(-2px) scale(1.07)}55%{transform:translateY(0) scale(.98)}}
@keyframes userRing{0%,48%{opacity:0;transform:scale(.9)}62%{opacity:.75}100%{opacity:0;transform:scale(1.18)}}

/* Hero logo: pulse the aura, not the image itself */
.logo-heartbeat{isolation:isolate}
.logo-heartbeat img{animation:none!important;z-index:4}
.logo-heartbeat::before{animation:spin 28s linear infinite!important}
.logo-heartbeat::after{inset:9%;border-color:rgba(36,231,255,.17);animation:haloBreath 1.72s cubic-bezier(.4,0,.2,1) infinite}
.neon-aura{position:absolute;inset:13%;border-radius:50%;z-index:1;pointer-events:none;border:2px solid rgba(36,231,255,.42);filter:blur(.1px);opacity:.35}
.neon-aura.a1{box-shadow:0 0 18px rgba(36,231,255,.45),0 0 55px rgba(0,184,255,.28),0 0 105px rgba(36,118,255,.20);animation:heartAura 1.72s cubic-bezier(.3,.7,.35,1) infinite}
.neon-aura.a2{inset:7%;border-width:1px;border-color:rgba(86,235,255,.14);animation:heartAura2 1.72s cubic-bezier(.3,.7,.35,1) infinite}
@keyframes heartAura{
  0%,100%{transform:scale(.98);opacity:.28;box-shadow:0 0 16px rgba(36,231,255,.34),0 0 44px rgba(0,184,255,.22)}
  12%{transform:scale(1.025);opacity:.78;box-shadow:0 0 24px rgba(36,231,255,.70),0 0 72px rgba(0,184,255,.44),0 0 118px rgba(36,118,255,.28)}
  24%{transform:scale(.995);opacity:.42}
  36%{transform:scale(1.018);opacity:.66}
  54%{transform:scale(.985);opacity:.30}
}
@keyframes heartAura2{0%,100%{transform:scale(.95);opacity:.12}14%,38%{transform:scale(1.04);opacity:.38}55%{transform:scale(.98);opacity:.10}}
@keyframes haloBreath{0%,100%{box-shadow:0 0 45px rgba(0,178,255,.10)}14%,38%{box-shadow:0 0 95px rgba(0,208,255,.27)}}

.hero-v7{padding-block:62px 72px;min-height:min(830px,calc(100svh - var(--header-h)))}
.hero-v7 h1{max-width:12ch}
.proof-bar-v7{background:linear-gradient(90deg,rgba(4,15,29,.78),rgba(4,24,42,.68),rgba(4,15,29,.78))}
.section-v7{position:relative}
.section-v7::before{content:"";position:absolute;left:50%;top:14px;width:min(700px,70vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(36,231,255,.12),transparent)}

/* 3D horizontal carousel */
.coverflow{position:relative;padding:8px 58px 38px;overflow:hidden;isolation:isolate}
.coverflow::before{content:"";position:absolute;inset:12px 3% 28px;border:1px solid rgba(55,210,255,.10);border-radius:32px;background:
  radial-gradient(circle at 50% 15%,rgba(36,231,255,.08),transparent 40%),
  linear-gradient(180deg,rgba(7,29,51,.48),rgba(3,10,21,.60));box-shadow:inset 0 0 70px rgba(0,170,255,.035);z-index:-1}
.coverflow-stage{position:relative;height:355px;perspective:1200px;display:grid;place-items:center}
.coverflow [data-carousel-slide]{position:absolute;width:min(390px,72%);height:300px;transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .48s ease,filter .48s ease,box-shadow .48s ease;will-change:transform,opacity;pointer-events:none;transform-style:preserve-3d}
.coverflow [data-carousel-slide].is-active{pointer-events:auto;box-shadow:0 24px 80px rgba(0,0,0,.44),0 0 42px rgba(36,231,255,.10)}
.coverflow-card{padding:28px;min-height:0!important;display:flex;flex-direction:column}
.coverflow-card .service-icon{flex:0 0 auto}.coverflow-card h3{margin:16px 0 9px}.coverflow-card p{font-size:.92rem}.coverflow-card a{padding-top:16px}
.slide-kicker{position:absolute;top:28px;right:28px;color:#5cecff;font-size:.67rem;letter-spacing:.13em;font-weight:900;opacity:.6}
.carousel-arrow{position:absolute;top:50%;z-index:20;width:44px;height:44px;border:1px solid rgba(79,222,255,.28);border-radius:50%;background:rgba(4,15,29,.86);color:#baf4ff;font-size:2rem;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 28px rgba(0,0,0,.32);transition:.2s}
.carousel-arrow:hover{transform:scale(1.08);border-color:rgba(87,235,255,.65);box-shadow:0 0 28px rgba(36,231,255,.15)}
.carousel-arrow.prev{left:9px}.carousel-arrow.next{right:9px}
.carousel-dots{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);display:flex;gap:7px;z-index:20}
.carousel-dots button{width:7px;height:7px;border:0;border-radius:99px;padding:0;background:rgba(126,192,222,.34);cursor:pointer;transition:.25s}
.carousel-dots button.active{width:27px;background:linear-gradient(90deg,var(--cyan),var(--blue));box-shadow:0 0 15px rgba(36,231,255,.35)}
.compact-coverflow .coverflow-stage{height:285px}.compact-coverflow [data-carousel-slide]{height:225px;width:min(420px,74%)}
.feature-slide{padding:30px;display:flex;flex-direction:column;justify-content:center;text-align:center}
.feature-symbol{width:48px;height:48px;margin:0 auto 12px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,rgba(36,231,255,.14),rgba(36,118,255,.16));border:1px solid rgba(71,221,255,.24);color:#6fecff;font-size:1.45rem;box-shadow:0 0 25px rgba(0,204,255,.08)}
.feature-slide h3{margin:8px 0 8px;font-size:1.2rem}.feature-slide p{margin:0;color:var(--muted);line-height:1.55;font-size:.9rem}

/* Compact flow instead of giant numbered cards */
.flow-rail{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:12px;padding:18px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,rgba(8,27,48,.55),rgba(4,13,27,.58));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.flow-card{min-width:0;padding:22px 18px;border:1px solid rgba(76,200,255,.12);border-radius:17px;background:rgba(4,15,30,.72);display:flex;flex-direction:column;gap:8px;transition:.25s}
.flow-card:hover{transform:translateY(-4px);border-color:rgba(58,225,255,.34);box-shadow:0 16px 38px rgba(0,0,0,.24)}
.flow-card strong{font-size:.98rem}.flow-card small{color:var(--muted);line-height:1.48}.flow-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#7ff1ff;background:rgba(36,231,255,.08);border:1px solid rgba(36,231,255,.16)}
.flow-connector{align-self:center;color:#4bdfff;opacity:.42;font-size:1.45rem}

.media-card-v7{min-height:360px}
.media-card-v7 .media-copy{padding:42px}.media-card-v7 .media-image{min-height:330px}
.cta-band-v7{background:linear-gradient(135deg,rgba(4,35,58,.86),rgba(5,15,31,.92));box-shadow:0 22px 65px rgba(0,0,0,.28),0 0 55px rgba(0,188,255,.06)}

/* Compact footer: InfoTech | Cliente | Soluções */
.site-footer-v7{padding:34px 0 20px;background:linear-gradient(180deg,#020611,#030914);position:relative}
.site-footer-v7::before{content:"";position:absolute;top:-1px;left:50%;width:min(860px,80%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.24}
.footer-brandline{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-bottom:23px;border-bottom:1px solid var(--line)}
.footer-brandline p{margin:0;color:var(--muted);line-height:1.55;max-width:58ch;font-size:.86rem;text-align:right}
.footer-brand-mini img{width:43px;height:43px}
.footer-compact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px 0 2px;max-width:720px;margin-inline:auto;text-align:center}
.footer-compact-grid>div{padding:0 18px;border-right:1px solid rgba(85,190,255,.10)}.footer-compact-grid>div:last-child{border-right:0}
.footer-compact-grid .footer-title{margin-bottom:9px;color:#edf9ff}.footer-compact-grid .footer-links{gap:7px}.footer-compact-grid .footer-links a{font-size:.82rem}
.site-footer-v7 .footer-bottom{margin-top:22px;padding-top:18px}

/* Login: form first, compact, animated lock + user signal */
.auth-login-page main{position:relative}
.auth-shell-v7{grid-template-columns:minmax(0,540px) minmax(320px,.8fr);align-items:center;gap:28px;padding-block:38px 62px;min-height:calc(100svh - var(--header-h))}
.auth-card-v7{margin:0;max-width:none;padding:28px 30px;background:linear-gradient(180deg,rgba(7,27,49,.90),rgba(4,14,29,.94));box-shadow:0 26px 80px rgba(0,0,0,.38),0 0 55px rgba(0,190,255,.07)}
.auth-card-top{display:flex;align-items:center;gap:18px}.auth-card-top h1{font-size:2rem;margin:5px 0 0;letter-spacing:-.025em}.auth-lead{font-size:.9rem;line-height:1.55;margin:17px 0 0!important}
.auth-card-v7 .auth-form{margin-top:18px;gap:9px}.auth-card-v7 input{padding:12px 14px}.auth-card-v7 .btn{min-height:48px;margin-top:2px}
.auth-links-row{display:flex;justify-content:space-between;gap:14px;margin-top:15px;font-size:.82rem}.auth-links-row a{color:#8deeff;font-weight:750}.auth-admin-link{text-align:center;margin:15px 0 0!important;font-size:.76rem}.auth-admin-link a{color:var(--muted-2)}
.tech-lock{position:relative;width:62px;height:70px;flex:0 0 62px;filter:drop-shadow(0 0 18px rgba(36,231,255,.22))}
.lock-shackle{position:absolute;left:14px;top:2px;width:34px;height:35px;border:5px solid #50eaff;border-bottom:0;border-radius:18px 18px 4px 4px;transform-origin:7px 31px;animation:unlockTech 3.1s ease-in-out infinite}
.lock-body{position:absolute;left:7px;bottom:2px;width:48px;height:42px;border:1px solid rgba(94,235,255,.62);border-radius:12px;background:linear-gradient(145deg,rgba(13,89,120,.62),rgba(5,24,45,.96));box-shadow:inset 0 0 20px rgba(36,231,255,.08),0 0 24px rgba(0,206,255,.11);display:grid;place-items:center}
.lock-body i{width:7px;height:13px;background:#74f4ff;border-radius:999px;box-shadow:0 0 10px rgba(36,231,255,.65)}
@keyframes unlockTech{0%,34%,100%{transform:translateX(0) rotate(0)}47%,64%{transform:translateX(5px) rotate(22deg)}76%{transform:translateX(0) rotate(0)}}
.auth-side-v7{padding:34px;text-align:center;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at 50% 25%,rgba(36,231,255,.11),transparent 35%),rgba(5,17,33,.60)}
.auth-side-v7 h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1;margin:18px 0 13px}.auth-side-v7 p{color:var(--muted);line-height:1.6}
.auth-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:22px}.auth-benefits span{padding:8px 11px;border:1px solid rgba(65,218,255,.16);border-radius:999px;color:#aed8e8;font-size:.75rem;background:rgba(0,191,255,.04)}
.user-signal{position:relative;width:96px;height:96px;margin:0 auto 22px;border-radius:26px;border:1px solid rgba(75,225,255,.28);background:linear-gradient(145deg,rgba(9,67,93,.46),rgba(5,18,34,.78));box-shadow:0 0 42px rgba(36,231,255,.10);animation:userFloat 2.7s ease-in-out infinite}
.user-head{position:absolute;width:25px;height:25px;border-radius:50%;background:#42eaff;top:22px;left:35px;box-shadow:0 0 18px rgba(36,231,255,.55)}
.user-body{position:absolute;width:50px;height:26px;border-radius:28px 28px 11px 11px;background:linear-gradient(90deg,#1bcdf7,#4af3ff);bottom:19px;left:22px}
.user-signal i,.user-signal b{position:absolute;inset:-9px;border:1px solid rgba(36,231,255,.20);border-radius:31px;animation:userSignal 2.7s ease-out infinite}.user-signal b{inset:-18px;animation-delay:.5s}
@keyframes userFloat{50%{transform:translateY(-7px)}}@keyframes userSignal{0%,35%{opacity:0;transform:scale(.92)}55%{opacity:.5}100%{opacity:0;transform:scale(1.13)}}

/* Portfolio: show proof, not generic services */
.portfolio-hero{padding-bottom:44px}.portfolio-orb{position:relative;display:grid;place-items:center}.portfolio-orb::before{content:"";position:absolute;inset:6%;border-radius:50%;box-shadow:0 0 55px rgba(36,231,255,.16);animation:heartAura 2.2s ease-in-out infinite}.portfolio-orb img{position:relative;z-index:2}
.portfolio-section{padding-top:54px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.portfolio-card{overflow:hidden;min-height:0}.portfolio-media{height:290px;position:relative;overflow:hidden;background:#030a14}.portfolio-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(3,10,20,.74))}.portfolio-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .65s ease}.portfolio-card:hover .portfolio-media img{transform:scale(1.045);filter:saturate(1.12)}
.portfolio-status{position:absolute;z-index:3;top:18px;right:18px;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(3,12,24,.78);border:1px solid rgba(62,230,168,.25);font-size:.72rem;color:#9af0cd;backdrop-filter:blur(12px)}.portfolio-status i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(62,230,168,.7);animation:statusLive 1.8s ease-in-out infinite}@keyframes statusLive{50%{opacity:.35;transform:scale(.75)}}
.portfolio-copy{padding:27px}.portfolio-type{font-size:.7rem;letter-spacing:.14em;font-weight:900;color:#66eaff}.portfolio-copy h3{font-size:1.65rem;margin:10px 0 9px}.portfolio-copy p{color:var(--muted);line-height:1.65;margin:0}.portfolio-tags{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0}.portfolio-tags span{font-size:.7rem;padding:6px 9px;border-radius:999px;border:1px solid rgba(80,199,255,.14);color:#9fc6da;background:rgba(255,255,255,.025)}.portfolio-link{display:inline-block;color:#83efff;font-weight:800;font-size:.86rem;margin-top:3px}
.portfolio-next{display:flex;align-items:center;justify-content:center;min-height:300px;background:radial-gradient(circle at 50% 20%,rgba(36,231,255,.12),transparent 42%),linear-gradient(180deg,rgba(7,28,50,.72),rgba(4,13,27,.84))}.portfolio-next .portfolio-copy{max-width:580px;text-align:center}.portfolio-next .btn{margin-top:22px}
.quality-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--line)}.quality-strip article{padding:24px;background:rgba(5,17,33,.88);display:grid;grid-template-columns:auto 1fr;gap:4px 13px;align-items:center}.quality-strip article>span{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(36,231,255,.08);color:#70efff}.quality-strip strong{font-size:.96rem}.quality-strip small{color:var(--muted);line-height:1.45}

/* Refined mobile behavior */
@media(max-width:980px){
  .auth-shell-v7{grid-template-columns:1fr;max-width:680px}.auth-card-v7{order:1}.auth-side-v7{order:2}
  .portfolio-grid{grid-template-columns:1fr 1fr}.portfolio-next{grid-column:1/-1}
}
@media(max-width:680px){
  body::before{opacity:.18;background-size:58px 58px}
  .site-header{height:64px}.navbar{gap:13px}
  .hero-v7{padding-top:38px;padding-bottom:48px}.hero-v7 h1{font-size:clamp(2.55rem,13.5vw,4.25rem)}.hero-v7 .hero-visual{min-height:315px}.logo-heartbeat{width:86vw}.orbit-chip.c1{right:-1%;top:12%}.orbit-chip.c2{left:-1%;bottom:17%}.orbit-chip.c3{right:4%;bottom:4%}
  .section{padding-block:58px}.section.compact{padding-block:44px}.section-heading h2{font-size:clamp(2rem,10vw,3.25rem)}
  .coverflow{padding:4px 34px 34px;margin-inline:-12px}.coverflow::before{inset:5px 0 26px;border-radius:24px}.coverflow-stage{height:335px}.coverflow [data-carousel-slide]{width:calc(100% - 34px);height:285px}.compact-coverflow .coverflow-stage{height:270px}.compact-coverflow [data-carousel-slide]{height:222px;width:calc(100% - 40px)}.carousel-arrow{width:38px;height:38px;font-size:1.65rem}.carousel-arrow.prev{left:2px}.carousel-arrow.next{right:2px}.coverflow-card{padding:25px}.coverflow-card h3{font-size:1.3rem}
  .flow-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding:12px;margin-right:-12px;scrollbar-width:none}.flow-rail::-webkit-scrollbar{display:none}.flow-card{min-width:76vw;scroll-snap-align:center;padding:20px}.flow-connector{display:none}
  .media-card-v7{min-height:0}.media-card-v7 .media-copy{padding:28px}.media-card-v7 .media-image{min-height:250px}
  .footer-brandline{display:block;text-align:center}.footer-brandline .brand{justify-content:center}.footer-brandline p{text-align:center;margin:13px auto 0;max-width:46ch;font-size:.78rem}.footer-compact-grid{grid-template-columns:repeat(3,1fr);gap:0;padding-top:20px}.footer-compact-grid>div{padding:0 8px}.footer-compact-grid .footer-title{font-size:.83rem}.footer-compact-grid .footer-links{gap:6px}.footer-compact-grid .footer-links a{font-size:.71rem}.site-footer-v7 .footer-bottom{font-size:.7rem;text-align:center;align-items:center}.site-footer-v7 .footer-bottom span:last-child{display:none}
  .auth-shell-v7{padding-block:22px 46px;gap:18px}.auth-card-v7{padding:22px 20px;border-radius:21px}.auth-card-top{gap:13px}.tech-lock{width:52px;height:59px;flex-basis:52px}.lock-shackle{left:12px;width:29px;height:29px;border-width:4px}.lock-body{left:6px;width:41px;height:36px}.auth-card-top h1{font-size:1.65rem}.auth-lead{font-size:.82rem!important}.auth-card-v7 .auth-form{margin-top:14px}.auth-side-v7{padding:22px}.auth-side-v7 h2{font-size:1.75rem}.auth-side-v7 p{font-size:.84rem}.user-signal{width:72px;height:72px;border-radius:21px;margin-bottom:15px}.user-head{width:19px;height:19px;top:16px;left:26px}.user-body{width:38px;height:20px;left:17px;bottom:14px}
  .portfolio-hero{padding-top:42px}.portfolio-grid{grid-template-columns:1fr}.portfolio-next{grid-column:auto}.portfolio-media{height:235px}.portfolio-copy{padding:22px}.quality-strip{display:flex;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.quality-strip::-webkit-scrollbar{display:none}.quality-strip article{min-width:78vw;scroll-snap-align:center;border-right:1px solid var(--line)}
  .proof-grid article{padding:14px 12px}.proof-grid strong{font-size:1.05rem}.proof-grid span{font-size:.66rem}
}
@media(prefers-reduced-motion:reduce){
  body::after,.brand img,.account-login-link::after,.account-login-link svg,.neon-aura,.logo-heartbeat::after,.user-signal,.user-signal i,.user-signal b,.lock-shackle,.portfolio-status i{animation:none!important}
}

/* =========================================================
   InfoTech V6.2 — overflow fix, kinetic carousels & compact UI
   ========================================================= */
html,body{width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none}
body{position:relative}
main,.site-header,.site-footer,.navbar,.container{max-width:100%}
.container{min-width:0}
*{min-width:0}

/* Header user: animate the person itself, not a halo */
.account-login-link::after{display:none!important}
.account-login-link svg,.account-avatar svg{transform-origin:50% 80%;animation:userDance 2.35s cubic-bezier(.45,0,.2,1) infinite!important;filter:drop-shadow(0 0 7px rgba(36,231,255,.5))}
@keyframes userDance{
  0%,100%{transform:translateY(0) rotate(0) scale(1)}
  18%{transform:translateY(-3px) rotate(-8deg) scale(1.04)}
  34%{transform:translateY(1px) rotate(7deg) scale(.98)}
  50%{transform:translateY(-4px) rotate(0) scale(1.10)}
  68%{transform:translateY(0) rotate(-5deg) scale(1.02)}
  82%{transform:translateY(-2px) rotate(5deg) scale(1.05)}
}

/* Hero: keep the heartbeat aura, remove clipping/visual overload on mobile */
.hero-v7{overflow:visible}
.logo-heartbeat{max-width:500px}
.logo-heartbeat img{max-width:74%}
.logo-heartbeat .orbit-chip{max-width:150px}

/* Kinetic coverflow: native scroll = real momentum on touch */
.coverflow{padding:8px 0 38px;overflow:hidden;isolation:isolate;width:100%;max-width:100%}
.coverflow::before{inset:12px 0 28px}
.coverflow-stage{
  --cf-card:min(390px,72vw);
  position:relative;height:360px;perspective:1200px;
  display:flex;align-items:center;gap:18px;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--cf-card))/2);
  padding:22px calc((100% - var(--cf-card))/2) 28px;
  scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;cursor:grab;touch-action:pan-x pan-y;
}
.coverflow-stage::-webkit-scrollbar{display:none;width:0;height:0}
.coverflow-stage.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.coverflow [data-carousel-slide]{
  position:relative!important;inset:auto!important;flex:0 0 var(--cf-card);width:var(--cf-card)!important;height:300px;
  scroll-snap-align:center;transition:transform .22s ease,opacity .22s ease,filter .22s ease,box-shadow .28s ease;
  will-change:transform,opacity;pointer-events:auto!important;transform-style:preserve-3d
}
.coverflow [data-carousel-slide].is-active{box-shadow:0 24px 80px rgba(0,0,0,.44),0 0 42px rgba(36,231,255,.12)}
.carousel-arrow{display:none!important}
.carousel-dots,.shelf-dots{display:flex;justify-content:center;align-items:center;gap:7px;min-height:15px;margin-top:2px}
.carousel-dots{position:absolute;bottom:8px;left:50%;transform:translateX(-50%)}
.carousel-dots button,.shelf-dots button{width:7px;height:7px;border:0;border-radius:99px;padding:0;background:rgba(126,192,222,.34);cursor:pointer;transition:.25s}
.carousel-dots button.active,.shelf-dots button.active{width:27px;background:linear-gradient(90deg,var(--cyan),var(--blue));box-shadow:0 0 15px rgba(36,231,255,.35)}
.compact-coverflow .coverflow-stage{--cf-card:min(420px,72vw);height:290px}
.compact-coverflow [data-carousel-slide]{height:225px}

/* New compact project process */
.process-section .section-heading{margin-bottom:26px}
.process-shelf{
  display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:4px;
  scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;
  padding:2px 2px 10px;cursor:grab
}
.process-shelf::-webkit-scrollbar{display:none}
.process-shelf.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.process-step{flex:1 1 0;min-width:0;scroll-snap-align:center;display:flex;align-items:center;gap:14px;padding:19px;border:1px solid rgba(76,200,255,.15);border-radius:18px;background:linear-gradient(145deg,rgba(7,29,50,.84),rgba(4,13,27,.88));box-shadow:0 12px 30px rgba(0,0,0,.16)}
.process-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;color:#7ff1ff;background:rgba(36,231,255,.08);border:1px solid rgba(36,231,255,.17)}
.process-step strong{display:block;font-size:.94rem}.process-step small{display:block;margin-top:5px;color:var(--muted);line-height:1.42;font-size:.78rem}

/* Services: side by side, mobile becomes a swipe shelf */
.service-hero{padding-bottom:44px}
.service-shelf,.portfolio-shelf{
  display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;
  padding:4px 2px 18px;cursor:grab
}
.service-shelf::-webkit-scrollbar,.portfolio-shelf::-webkit-scrollbar{display:none;width:0;height:0}
.service-shelf.is-dragging,.portfolio-shelf.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.service-product{flex:1 1 0;min-width:0;scroll-snap-align:center;display:flex;flex-direction:column;overflow:hidden}
.service-product-banner{height:190px;overflow:hidden;background:#030a14;border-bottom:1px solid var(--line)}
.service-product-banner img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.service-product:hover .service-product-banner img{transform:scale(1.04)}
.service-product-copy{display:flex;flex-direction:column;flex:1;padding:24px}
.service-product-copy h3{font-size:1.42rem;margin:16px 0 9px}.service-product-copy p{color:var(--muted);line-height:1.58;margin:0 0 18px;font-size:.9rem}.service-product-copy .btn{margin-top:auto;width:100%}
.service-note{display:block;margin:0 0 16px;color:#80dbea;font-size:.74rem}

/* Portfolio: banner cards side by side; entire card is clickable */
.portfolio-shelf{align-items:stretch}
.portfolio-shelf .portfolio-card{flex:1 1 0;min-width:0;scroll-snap-align:center;color:inherit}
.project-click-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.project-click-card:hover{transform:translateY(-5px);border-color:rgba(67,222,255,.34);box-shadow:0 22px 58px rgba(0,0,0,.30),0 0 36px rgba(36,231,255,.06)}
.project-banner{height:270px;display:grid;place-items:center}
.infotech-project-banner img{width:62%;height:62%;object-fit:contain;border-radius:50%;filter:drop-shadow(0 0 25px rgba(36,231,255,.18))}
.rass-project-banner{background:linear-gradient(145deg,#050505,#151515)}
.rass-project-banner .rass-logo{width:76%;height:auto;object-fit:contain}
.project-open-chip{position:absolute;left:18px;bottom:16px;z-index:4;padding:7px 10px;border-radius:999px;background:rgba(3,12,24,.82);border:1px solid rgba(94,225,255,.24);color:#baf6ff;font-size:.72rem;backdrop-filter:blur(10px)}

/* Contact: remove first-time block, keep one useful compact card */
.contact-grid{grid-template-columns:1fr}
.contact-card-wide{max-width:940px;margin-inline:auto;padding:34px}
.contact-methods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.contact-methods-grid .contact-method{margin:0;height:100%}.contact-main-action{margin-top:20px}

/* About: obvious glowing star that advances the horizontal value strip */
.about-values-shell{position:relative;padding-right:68px}
.about-next-star{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:56px;height:74px;border:1px solid rgba(83,230,255,.32);border-radius:18px;background:linear-gradient(180deg,rgba(9,35,58,.96),rgba(4,14,29,.96));color:#7af2ff;display:grid;place-items:center;align-content:center;gap:1px;cursor:pointer;box-shadow:0 0 24px rgba(36,231,255,.13);z-index:4}
.about-next-star span{font-size:1.65rem;animation:starPulse 1.45s ease-in-out infinite}.about-next-star small{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:#a8d7e4}
@keyframes starPulse{0%,100%{transform:scale(.86) rotate(0);filter:drop-shadow(0 0 3px rgba(36,231,255,.25));opacity:.55}45%{transform:scale(1.18) rotate(12deg);filter:drop-shadow(0 0 12px rgba(36,231,255,.95));opacity:1}60%{transform:scale(.98) rotate(-6deg);opacity:.8}}

/* Login lock opens vertically; the character moves, not an aura */
.lock-shackle{transform-origin:center bottom;animation:unlockTechV2 2.8s cubic-bezier(.45,0,.2,1) infinite!important}
@keyframes unlockTechV2{0%,30%,100%{transform:translateY(0)}43%,66%{transform:translateY(-11px)}76%{transform:translateY(-2px)}}
.user-character{animation:none!important;overflow:visible}
.user-character i,.user-character b{display:none!important}
.user-character .user-head{animation:userHeadMove 2.25s ease-in-out infinite;transform-origin:center bottom}
.user-character .user-body{animation:userBodyMove 2.25s ease-in-out infinite;transform-origin:center bottom}
.user-arm{position:absolute;width:22px;height:7px;border-radius:10px;background:#42eaff;top:50px;left:20px;transform-origin:100% 50%;box-shadow:0 0 10px rgba(36,231,255,.45)}
.user-arm.arm-right{left:auto;right:20px;transform-origin:0 50%}
.user-character .arm-left{animation:waveLeft 2.25s ease-in-out infinite}.user-character .arm-right{animation:waveRight 2.25s ease-in-out infinite}
@keyframes userHeadMove{0%,100%{transform:translateY(0) rotate(0)}28%{transform:translateY(-3px) rotate(-7deg)}55%{transform:translateY(1px) rotate(7deg)}75%{transform:translateY(-2px)}}
@keyframes userBodyMove{0%,100%{transform:translateY(0) scale(1)}45%{transform:translateY(-2px) scale(1.04)}72%{transform:translateY(1px) scale(.99)}}
@keyframes waveLeft{0%,100%{transform:rotate(18deg)}35%{transform:rotate(-36deg)}62%{transform:rotate(24deg)}}
@keyframes waveRight{0%,100%{transform:rotate(-18deg)}35%{transform:rotate(36deg)}62%{transform:rotate(-24deg)}}

/* Mobile: no visible document scrollbar, no horizontal page slit */
@media(max-width:680px){
  html,body{overflow-x:clip!important;max-width:100%!important;scrollbar-width:none;-ms-overflow-style:none}
  html::-webkit-scrollbar,body::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}
  body{width:100%!important}
  .container,.navbar{width:calc(100% - 28px)!important;margin-inline:auto!important}
  .hero-v7{padding-top:30px;padding-bottom:34px;gap:20px}
  .hero-v7 .hero-visual{min-height:300px;overflow:hidden}
  .logo-heartbeat{width:min(82vw,335px)!important}
  .logo-heartbeat .orbit-chip{display:none!important}
  .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .proof-grid article{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .proof-grid article:nth-child(2n){border-right:0}.proof-grid article:nth-last-child(-n+2){border-bottom:0}
  .section{padding-block:50px}.section.compact{padding-block:38px}.section-heading{margin-bottom:24px}.section-heading h2{font-size:clamp(2rem,9.4vw,3rem);line-height:1.03}
  .coverflow{margin-inline:0!important;padding:0 0 32px!important;width:100%!important}
  .coverflow::before{inset:0 0 22px;border-radius:22px}
  .coverflow-stage{--cf-card:min(78vw,330px);height:330px;padding-inline:calc((100% - var(--cf-card))/2)!important;gap:12px}
  .coverflow [data-carousel-slide]{height:275px}
  .compact-coverflow .coverflow-stage{--cf-card:min(78vw,330px);height:258px}.compact-coverflow [data-carousel-slide]{height:210px}
  .carousel-dots{bottom:4px}
  .process-shelf{margin-inline:0;padding:2px 0 8px}.process-step{flex:0 0 78vw;max-width:320px;padding:17px}
  .service-shelf,.portfolio-shelf{margin-inline:0;padding-inline:0;gap:12px}
  .service-product,.portfolio-shelf .portfolio-card{flex:0 0 84vw;max-width:360px}
  .service-product-banner{height:170px}.service-product-copy{padding:20px}.service-product-copy h3{font-size:1.25rem}
  .project-banner{height:220px}.portfolio-copy{padding:20px}.portfolio-copy h3{font-size:1.42rem}
  .contact-card-wide{padding:24px 20px}.contact-methods-grid{grid-template-columns:1fr;gap:8px}
  .about-values-shell{padding-right:54px}.about-next-star{right:0;width:46px;height:68px}.about-next-star span{font-size:1.4rem}
  .about-values{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:10px;background:transparent;border:0;border-radius:0}.about-values article{flex:0 0 78vw;max-width:320px;scroll-snap-align:center;border:1px solid var(--line)!important;border-radius:18px;background:rgba(5,17,33,.88)}
  .auth-side-v7{padding:19px}.user-signal{margin-bottom:10px}
  .user-arm{top:38px;left:14px;width:17px}.user-arm.arm-right{left:auto;right:14px}
}

@media(prefers-reduced-motion:reduce){
  .account-login-link svg,.account-avatar svg,.about-next-star span,.user-character .user-head,.user-character .user-body,.user-character .user-arm,.lock-shackle{animation:none!important}
}

/* =========================================================
   InfoTech V6.3 — synchronized neon + true-feel infinite loops
   ========================================================= */

/* The logo itself stays still; only light/rings breathe together. */
.logo-heartbeat::before,
.logo-heartbeat::after,
.logo-heartbeat .neon-aura{
  transform-origin:50% 50%;
  animation:ringHeartbeatV63 1.72s cubic-bezier(.32,.72,.28,1) infinite!important;
  will-change:transform,opacity,filter;
}
.logo-heartbeat::before{border-color:rgba(69,222,255,.30)!important;box-shadow:0 0 22px rgba(36,231,255,.08)}
.logo-heartbeat::after{border-color:rgba(36,231,255,.22)!important}
.logo-heartbeat img{
  animation:logoGlowV63 1.72s cubic-bezier(.32,.72,.28,1) infinite!important;
  transform:none!important;
  will-change:filter;
}
@keyframes ringHeartbeatV63{
  0%,100%{transform:scale(.985) rotate(0deg);opacity:.14;filter:brightness(.72)}
  11%{transform:scale(1.018) rotate(1.2deg);opacity:.68;filter:brightness(1.35)}
  20%{transform:scale(.998) rotate(.2deg);opacity:.28;filter:brightness(.9)}
  31%{transform:scale(1.038) rotate(-1.1deg);opacity:.92;filter:brightness(1.62)}
  43%{transform:scale(1.004) rotate(0deg);opacity:.34;filter:brightness(.95)}
  64%{transform:scale(.985) rotate(0deg);opacity:.12;filter:brightness(.68)}
}
@keyframes logoGlowV63{
  0%,100%{filter:drop-shadow(0 20px 58px rgba(0,0,0,.50)) drop-shadow(0 0 14px rgba(24,207,255,.10))}
  11%{filter:drop-shadow(0 20px 58px rgba(0,0,0,.50)) drop-shadow(0 0 31px rgba(24,231,255,.38))}
  20%{filter:drop-shadow(0 20px 58px rgba(0,0,0,.50)) drop-shadow(0 0 18px rgba(24,207,255,.18))}
  31%{filter:drop-shadow(0 20px 58px rgba(0,0,0,.50)) drop-shadow(0 0 42px rgba(36,231,255,.52))}
  43%,64%{filter:drop-shadow(0 20px 58px rgba(0,0,0,.50)) drop-shadow(0 0 15px rgba(24,207,255,.12))}
}

/* Less reading at the top, fewer forced line breaks. */
.hero-v7{grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:44px;min-height:auto;padding-block:54px 64px}
.hero-v7 .hero-copy{min-width:0}
.hero-v7 h1{font-size:clamp(2.8rem,5.25vw,5.2rem);line-height:.96;max-width:12.8ch;margin:17px 0 16px}
.hero-v7 p{max-width:54ch;line-height:1.55;font-size:clamp(.98rem,1.35vw,1.12rem)}
.hero-v7 .hero-actions{margin-top:23px}
.hero-v7 .hero-points{margin-top:20px;gap:14px}
.section-v7 .section-heading{max-width:680px;margin-bottom:30px}
.section-v7 .section-heading h2{font-size:clamp(2rem,3.65vw,3.55rem);line-height:1.02;margin:15px 0 10px}
.section-v7 .section-heading p{font-size:.96rem;line-height:1.55;max-width:55ch}

/* Infinite tracks use native momentum. Clones are visual runway only. */
.coverflow-stage,
.process-shelf,
.service-shelf,
.portfolio-shelf,
.about-values{
  scroll-snap-type:x proximity!important;
  scroll-behavior:auto;
}
[data-loop-clone]{user-select:none}
.coverflow-stage{overscroll-behavior-inline:contain}
.coverflow-stage.is-dragging,.process-shelf.is-dragging,.service-shelf.is-dragging,.portfolio-shelf.is-dragging,.about-values.is-dragging{scroll-snap-type:none!important}

/* About page: compact pitch instead of a wall of text. */
.about-hero-v63{min-height:auto;padding-block:56px 62px;gap:44px}
.about-hero-v63 h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:.98;max-width:12ch;margin-bottom:16px}
.about-hero-v63 p{font-size:1.02rem;line-height:1.55;max-width:48ch}

/* Projects flow straight from cases to CTA after removing the generic standard section. */
.portfolio-shelf + .shelf-dots{margin-bottom:10px}

@media(max-width:680px){
  .hero-v7{grid-template-columns:1fr!important;gap:18px;padding-top:28px!important;padding-bottom:28px!important}
  .hero-v7 h1{font-size:clamp(2.45rem,11.4vw,3.45rem)!important;line-height:.96!important;letter-spacing:-.045em!important;max-width:10.8ch!important;margin:14px auto 14px!important;text-align:center}
  .hero-v7 h1 span{display:inline!important}
  .hero-v7 p{font-size:.96rem!important;line-height:1.48!important;max-width:34ch!important;margin-inline:auto;text-align:center}
  .hero-v7 .eyebrow{margin-inline:auto;display:flex;width:max-content;max-width:100%;font-size:.68rem;letter-spacing:.10em}
  .hero-v7 .hero-actions{margin-top:19px;gap:9px}.hero-v7 .hero-actions .btn{min-height:49px;width:100%}
  .hero-v7 .hero-points{justify-content:center;margin-top:16px;gap:10px 15px;font-size:.75rem}
  .hero-v7 .hero-visual{min-height:275px!important;margin-top:2px}
  .logo-heartbeat{width:min(76vw,310px)!important}
  .proof-grid article{padding:17px 20px}.proof-grid strong{font-size:1.12rem}.proof-grid span{font-size:.72rem}
  .section-v7 .section-heading{margin-bottom:20px}.section-v7 .section-heading h2{font-size:clamp(1.92rem,8.6vw,2.65rem);line-height:1.02}.section-v7 .section-heading p{font-size:.88rem;line-height:1.48}
  .about-hero-v63{padding-block:36px 42px!important;gap:24px}.about-hero-v63 h1{font-size:clamp(2.3rem,10.2vw,3.2rem)!important;line-height:.98!important;max-width:9.5ch;margin-inline:auto;text-align:center}.about-hero-v63 p{font-size:.94rem!important;line-height:1.48!important;max-width:31ch;margin-inline:auto;text-align:center}.about-hero-v63 .hero-actions,.about-hero-v63 .btn{width:100%}.about-hero-v63>div:first-child{text-align:center}.about-hero-v63 .eyebrow{margin-inline:auto}
}

@media(prefers-reduced-motion:reduce){
  .logo-heartbeat::before,.logo-heartbeat::after,.logo-heartbeat .neon-aura,.logo-heartbeat img{animation:none!important}
}

/* Fixed physical widths are required once the infinite runway duplicates cards. */
.process-shelf .process-step{flex:0 0 calc((100% - 36px)/4);min-width:230px}
.service-shelf .service-product{flex:0 0 calc((100% - 36px)/3);min-width:290px}
.portfolio-shelf .portfolio-card{flex:0 0 calc((100% - 18px)/2);min-width:390px}
.about-values{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;gap:1px}
.about-values::-webkit-scrollbar{display:none}
.about-values article{flex:0 0 calc((100% - 2px)/3);min-width:220px;scroll-snap-align:center}

@media(max-width:680px){
  .process-shelf .process-step{flex:0 0 78vw;min-width:0;max-width:320px}
  .service-shelf .service-product,.portfolio-shelf .portfolio-card{flex:0 0 84vw;min-width:0;max-width:360px}
  .about-values article{flex:0 0 78vw;min-width:0;max-width:320px}
}

/* =========================================================
   InfoTech V6.4 — stable sliders, compact service/project grids
   and synchronized neon emblems
   ========================================================= */

/* Performance: avoid expensive permanent compositing on every carousel card. */
.coverflow [data-carousel-slide]{
  will-change:auto!important;
  transition:transform .28s cubic-bezier(.2,.75,.25,1),opacity .28s ease,box-shadow .28s ease!important;
  transform:none!important;
  filter:none!important;
  opacity:.52!important;
  contain:layout paint;
}
.coverflow [data-carousel-slide].is-near{transform:scale(.92)!important;opacity:.72!important}
.coverflow [data-carousel-slide].is-active{transform:scale(1)!important;opacity:1!important;box-shadow:0 20px 56px rgba(0,0,0,.34),0 0 28px rgba(36,231,255,.08)!important}
.coverflow [data-carousel-slide].is-far{transform:scale(.88)!important;opacity:.34!important}
.coverflow-stage,.process-shelf,.about-values{
  scroll-snap-type:x proximity!important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y;
  scroll-behavior:auto!important;
}
.coverflow-stage.is-dragging,.process-shelf.is-dragging,.about-values.is-dragging{scroll-snap-type:none!important}
[data-loop-clone]{pointer-events:none!important}

/* Same synchronized neon aura around brand marks without moving the image. */
.brand{position:relative;isolation:isolate}
.brand::before{
  content:"";position:absolute;left:-5px;top:50%;width:58px;height:58px;transform:translateY(-50%);
  border-radius:50%;border:1px solid rgba(55,230,255,.22);z-index:-1;pointer-events:none;
  box-shadow:0 0 14px rgba(36,231,255,.15),0 0 30px rgba(36,118,255,.07);
  animation:brandAuraV64 1.72s cubic-bezier(.32,.72,.28,1) infinite;
}
.brand img{animation:none!important;transform:none!important}
.footer-brand-mini::before{width:52px;height:52px;left:-5px}
@keyframes brandAuraV64{
  0%,100%{opacity:.20;scale:.94;filter:brightness(.78)}
  12%{opacity:.72;scale:1.04;filter:brightness(1.45)}
  24%{opacity:.30;scale:.98;filter:brightness(.92)}
  36%{opacity:.88;scale:1.08;filter:brightness(1.72)}
  50%,70%{opacity:.18;scale:.95;filter:brightness(.72)}
}
.page-hero-media{position:relative;isolation:isolate}
.page-hero-media::before,.page-hero-media::after{
  content:"";position:absolute;inset:13%;border-radius:50%;pointer-events:none;z-index:0;
  border:1px solid rgba(53,225,255,.18);animation:emblemAuraV64 1.72s cubic-bezier(.32,.72,.28,1) infinite;
}
.page-hero-media::after{inset:20%;animation-delay:.06s;border-color:rgba(36,118,255,.18)}
.page-hero-media>img,.page-hero-media>.portfolio-orb{position:relative;z-index:1}

/* Reusable pulse for service/project marks. */
.pulse-emblem{
  width:86px;height:86px;margin-inline:auto;position:relative;display:grid;place-items:center;
  border-radius:50%;isolation:isolate;background:radial-gradient(circle,rgba(10,58,86,.32),rgba(3,12,25,.78) 68%);
}
.pulse-emblem::before,.pulse-emblem::after{
  content:"";position:absolute;inset:2px;border-radius:50%;border:1px solid rgba(55,230,255,.28);z-index:-1;
  box-shadow:0 0 16px rgba(36,231,255,.12),0 0 28px rgba(36,118,255,.06);
  animation:emblemAuraV64 1.72s cubic-bezier(.32,.72,.28,1) infinite;
}
.pulse-emblem::after{inset:10px;border-color:rgba(36,118,255,.20);animation-delay:.06s}
.pulse-emblem img{width:74%;height:74%;object-fit:contain;border-radius:50%;position:relative;z-index:2;filter:drop-shadow(0 0 10px rgba(36,231,255,.12));transform:none!important}
.rass-emblem img{border-radius:12px;width:78%;height:78%}
.placeholder-emblem b{font-size:2rem;color:#79efff;text-shadow:0 0 18px rgba(36,231,255,.48);font-weight:400}
@keyframes emblemAuraV64{
  0%,100%{transform:scale(.92);opacity:.16;filter:brightness(.75)}
  12%{transform:scale(1.03);opacity:.68;filter:brightness(1.42)}
  24%{transform:scale(.97);opacity:.26;filter:brightness(.9)}
  36%{transform:scale(1.10);opacity:.92;filter:brightness(1.7)}
  50%,70%{transform:scale(.94);opacity:.14;filter:brightness(.72)}
}

/* Services: fixed 3 x 2 compact tile layout on phone and desktop. */
.service-grid-heading{text-align:center;max-width:640px!important;margin-inline:auto}
.service-grid-heading .eyebrow{margin-inline:auto}
.service-mini-grid,.project-mini-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:920px;margin:0 auto;
}
.service-mini-card,.project-mini-card{
  min-width:0;min-height:210px;padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;gap:9px;overflow:hidden;position:relative;background:linear-gradient(160deg,rgba(7,29,50,.88),rgba(4,13,27,.94));
  border-color:rgba(67,214,255,.18);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
  content-visibility:auto;contain-intrinsic-size:210px;
}
.service-mini-card:hover,.project-mini-live:hover{transform:translateY(-4px);border-color:rgba(77,231,255,.38);box-shadow:0 18px 44px rgba(0,0,0,.26),0 0 24px rgba(36,231,255,.07)}
.service-mini-card strong,.project-mini-card strong{font-size:1.02rem;line-height:1.15}
.service-mini-card small,.project-mini-card small{font-size:.74rem;line-height:1.3;color:var(--muted);max-width:17ch}

/* Projects: same compact 3 x 2 visual language as services. */
.project-mini-grid{max-width:920px}
.project-mini-card{min-height:230px}
.project-coming{opacity:.72;background:linear-gradient(160deg,rgba(7,23,40,.66),rgba(3,10,21,.82))}
.mini-status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:.61rem;letter-spacing:.03em;border:1px solid rgba(62,230,168,.20);color:#a7f2d5;background:rgba(62,230,168,.05)}
.mini-status::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 8px rgba(62,230,168,.7)}

/* Header account character with real arms; the figure itself calls attention. */
.account-login-link::after{display:none!important}
.account-login-link{min-width:48px;justify-content:center;overflow:visible}
.header-person{width:27px;height:28px;position:relative;display:block;filter:drop-shadow(0 0 8px rgba(36,231,255,.55));animation:hpBounceV64 2.25s ease-in-out infinite}
.header-person .hp-head{position:absolute;left:9px;top:1px;width:10px;height:10px;border-radius:50%;background:#50efff;box-shadow:0 0 8px rgba(36,231,255,.7)}
.header-person .hp-body{position:absolute;left:5px;bottom:1px;width:18px;height:13px;border-radius:10px 10px 5px 5px;background:linear-gradient(180deg,#55f2ff,#16bfea)}
.header-person .hp-arm{position:absolute;top:14px;width:10px;height:4px;border-radius:8px;background:#46eaff;transform-origin:100% 50%;box-shadow:0 0 6px rgba(36,231,255,.55)}
.header-person .hp-left{left:0;animation:hpArmLeftV64 2.25s ease-in-out infinite}
.header-person .hp-right{right:0;transform-origin:0 50%;animation:hpArmRightV64 2.25s ease-in-out infinite}
.header-person-small{width:23px;height:24px;transform:scale(.78)}
@keyframes hpBounceV64{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-2px) rotate(-3deg)}55%{transform:translateY(1px) rotate(3deg)}75%{transform:translateY(-1px)}}
@keyframes hpArmLeftV64{0%,100%{transform:rotate(18deg)}30%{transform:rotate(-48deg)}55%{transform:rotate(28deg)}70%{transform:rotate(-20deg)}}
@keyframes hpArmRightV64{0%,100%{transform:rotate(-18deg)}30%{transform:rotate(48deg)}55%{transform:rotate(-28deg)}70%{transform:rotate(20deg)}}

/* Login character arms are a little more expressive, still lightweight. */
.user-character .user-arm{height:8px;width:23px}
.user-character .arm-left{animation:waveLeftV64 1.95s ease-in-out infinite!important}
.user-character .arm-right{animation:waveRightV64 1.95s ease-in-out infinite!important}
@keyframes waveLeftV64{0%,100%{transform:rotate(18deg)}22%{transform:rotate(-55deg) translateY(-1px)}40%{transform:rotate(-25deg)}62%{transform:rotate(-62deg)}78%{transform:rotate(15deg)}}
@keyframes waveRightV64{0%,100%{transform:rotate(-18deg)}22%{transform:rotate(55deg) translateY(-1px)}40%{transform:rotate(25deg)}62%{transform:rotate(62deg)}78%{transform:rotate(-15deg)}}

/* Keep the page width stable in embedded mobile browsers. */
html,body{max-width:100%;overflow-x:clip!important}
main,.site-footer,.site-header{max-width:100%;overflow-x:clip}

@media(max-width:680px){
  .service-hero,.portfolio-hero{padding-bottom:28px}
  .service-hero h1,.portfolio-hero h1{font-size:clamp(2.15rem,9.4vw,3rem);line-height:1.02}
  .service-hero p,.portfolio-hero p{font-size:.9rem;line-height:1.48}
  .service-mini-grid,.project-mini-grid{gap:8px;width:100%;max-width:none}
  .service-mini-card,.project-mini-card{min-height:150px;padding:11px 6px;border-radius:16px;gap:6px}
  .project-mini-card{min-height:160px}
  .pulse-emblem{width:58px;height:58px}
  .service-mini-card strong,.project-mini-card strong{font-size:.78rem;letter-spacing:-.01em}
  .service-mini-card small,.project-mini-card small{font-size:.59rem;line-height:1.22;max-width:13ch}
  .mini-status{font-size:.52rem;padding:4px 6px}
  .portfolio-section .section-heading h2,.service-grid-heading h2{font-size:2.15rem!important}
  .portfolio-section .section-heading p,.service-grid-heading p{font-size:.82rem!important}
  .account-login-link>span:last-child{display:none}
  .account-login-link{width:52px;height:52px;padding:0;border-radius:15px}
  .brand::before{width:54px;height:54px;left:-4px}
  .footer-brand-mini::before{width:49px;height:49px}
  .page-hero-media::before{inset:16%}.page-hero-media::after{inset:22%}
  /* Faster paint on the remaining sliders. */
  .coverflow [data-carousel-slide]{box-shadow:none!important}
  .coverflow [data-carousel-slide].is-active{box-shadow:0 12px 34px rgba(0,0,0,.25),0 0 18px rgba(36,231,255,.06)!important}
}

@media(prefers-reduced-motion:reduce){
  .brand::before,.page-hero-media::before,.page-hero-media::after,.pulse-emblem::before,.pulse-emblem::after,.header-person,.header-person .hp-arm,.user-character .user-arm{animation:none!important}
}

/* Keep showcase illustrations visually tied to the same heartbeat system. */
.media-card-v7 .media-image{position:relative;isolation:isolate}
.media-card-v7 .media-image::before,.media-card-v7 .media-image::after{
  content:"";position:absolute;inset:14%;border-radius:50%;border:1px solid rgba(54,229,255,.18);z-index:0;pointer-events:none;
  animation:emblemAuraV64 1.72s cubic-bezier(.32,.72,.28,1) infinite;
}
.media-card-v7 .media-image::after{inset:21%;animation-delay:.06s;border-color:rgba(36,118,255,.16)}
.media-card-v7 .media-image img{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.media-card-v7 .media-image::before,.media-card-v7 .media-image::after{animation:none!important}}


/* =========================================================
   InfoTech V6.5 — centralização dos efeitos, ajustes de herói,
   login simplificado e ícones corretos de serviços
   ========================================================= */

/* Centraliza a aura exatamente sobre a logo, sem deslocar para o lado. */
.brand{--brand-logo-size:48px;position:relative;isolation:isolate}
.brand img{position:relative;z-index:1;flex:0 0 auto}
.brand::before{
  left:calc(var(--brand-logo-size) / 2)!important;
  top:50%!important;
  width:calc(var(--brand-logo-size) + 12px)!important;
  height:calc(var(--brand-logo-size) + 12px)!important;
  transform:translate(-50%,-50%)!important;
}
.footer-brand-mini{--brand-logo-size:43px}

/* Tira o círculo solto do rodapé no mobile e mantém a marca unida. */
.footer-brandline .brand{display:inline-flex;align-items:center}

/* Deixa imagem/logo e texto mais próximos em todas as páginas internas. */
.page-hero{gap:36px!important;padding-block:70px 54px!important}
.page-hero h1{margin:14px 0 14px!important}
.page-hero p{margin:0;max-width:52ch}
.page-hero .hero-actions{margin-top:24px}

/* Centralização real do efeito circular nas páginas com logo/imagem grande. */
.page-hero-media{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:100%;
  max-width:430px;
  margin-inline:auto;
  isolation:isolate;
}
.page-hero-media::before,
.page-hero-media::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:min(100%,430px);
  aspect-ratio:1/1;
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  z-index:0;
  border:1px solid rgba(53,225,255,.18);
  animation:emblemAuraV64 1.72s cubic-bezier(.32,.72,.28,1) infinite;
}
.page-hero-media::after{
  width:min(78%,336px);
  border-color:rgba(36,118,255,.18);
  animation-delay:.06s;
}
.page-hero-media>img,
.page-hero-media>.portfolio-orb{
  position:relative;
  z-index:1;
  width:100%;
  max-width:430px;
  margin-inline:auto;
}
.page-hero-media>img{display:block}
.portfolio-orb::before{display:none!important}

/* Login sem o banner lateral que o cliente marcou como desnecessário. */
.auth-shell-v7-single{
  grid-template-columns:minmax(0,560px)!important;
  justify-content:center;
}
.auth-shell-v7-single .auth-card-v7{margin-inline:auto}

/* Garante que o personagem do canto superior apareça centralizado e animado. */
.account-slot,.account-slot .account-login-link{display:flex;align-items:center;justify-content:center}
.account-login-link .header-person,
.account-avatar .header-person{
  display:block!important;
  flex:0 0 auto;
  margin:0 auto;
  opacity:1!important;
  visibility:visible!important;
}
.account-login-link .header-person{min-width:27px;min-height:28px}
.account-avatar .header-person{min-width:23px;min-height:24px}

/* Ícones de serviços ficam mais consistentes e centralizados. */
.service-mini-card .pulse-emblem{width:92px;height:92px}
.service-mini-card .pulse-emblem img{width:82%;height:82%}
.service-mini-card strong{font-size:1.04rem}
.service-mini-card small{max-width:18ch;line-height:1.35}

/* Sobre: título mais compacto para não quebrar de forma feia. */
.about-hero-v63 h1{max-width:13ch!important}
.about-hero-v63 p{max-width:46ch!important}

@media (max-width:980px){
  .brand{--brand-logo-size:41px}
  .footer-brand-mini{--brand-logo-size:43px}
  .page-hero{gap:26px!important;padding-block:48px 40px!important}
}
@media (max-width:680px){
  .brand{--brand-logo-size:41px}
  .footer-brand-mini{--brand-logo-size:43px}
  .page-hero{gap:18px!important;padding-block:34px 28px!important}
  .page-hero p{margin-inline:auto;max-width:31ch}
  .page-hero-media{max-width:290px}
  .page-hero-media::before{width:min(100%,290px)}
  .page-hero-media::after{width:min(78%,226px)}
  .about-hero-v63 h1{max-width:11ch!important}
  .about-hero-v63 p{max-width:30ch!important}
  .service-mini-grid,.project-mini-grid{gap:10px!important}
  .service-mini-card,.project-mini-card{padding:16px 10px!important;min-height:198px!important}
  .service-mini-card .pulse-emblem,.project-mini-card .pulse-emblem{width:82px;height:82px}
  .footer-brandline{gap:16px!important}
  .footer-brandline .brand{justify-content:center}
}


/* =========================================================
   InfoTech V6.6 — estabilidade e otimização mobile
   ========================================================= */

/* O efeito das páginas internas precisa conservar translate durante a escala. */
.page-hero-media::before,
.page-hero-media::after{
  animation:centeredHeroAuraV66 1.8s cubic-bezier(.32,.72,.28,1) infinite!important;
  will-change:transform,opacity;
}
.page-hero-media::after{animation-delay:.08s!important}
@keyframes centeredHeroAuraV66{
  0%,100%{transform:translate(-50%,-50%) scale(.965);opacity:.16}
  13%{transform:translate(-50%,-50%) scale(1.025);opacity:.62}
  24%{transform:translate(-50%,-50%) scale(.99);opacity:.28}
  38%{transform:translate(-50%,-50%) scale(1.055);opacity:.78}
  56%,72%{transform:translate(-50%,-50%) scale(.975);opacity:.14}
}

/* Aura do cabeçalho: pulso leve, sem filtro animado caro. */
@keyframes brandAuraV64{
  0%,100%{opacity:.18;scale:.95}
  14%{opacity:.68;scale:1.045}
  27%{opacity:.28;scale:.985}
  40%{opacity:.82;scale:1.075}
  58%,72%{opacity:.16;scale:.96}
}

/* Emblemas dos cards: só transform + opacity para manter 60fps em celulares. */
@keyframes emblemAuraV64{
  0%,100%{transform:scale(.94);opacity:.16}
  14%{transform:scale(1.035);opacity:.64}
  27%{transform:scale(.985);opacity:.28}
  40%{transform:scale(1.08);opacity:.78}
  58%,72%{transform:scale(.95);opacity:.14}
}

/* Hero principal: anéis e brilho sincronizados sem animar filtros da imagem. */
.logo-heartbeat::before,
.logo-heartbeat::after,
.logo-heartbeat .neon-aura{
  animation:ringHeartbeatV66 1.78s cubic-bezier(.32,.72,.28,1) infinite!important;
  will-change:transform,opacity!important;
  filter:none!important;
}
.logo-heartbeat img{
  animation:none!important;
  will-change:auto!important;
  filter:drop-shadow(0 20px 52px rgba(0,0,0,.46)) drop-shadow(0 0 24px rgba(24,220,255,.24))!important;
}
@keyframes ringHeartbeatV66{
  0%,100%{transform:scale(.985) rotate(0deg);opacity:.16}
  12%{transform:scale(1.018) rotate(1deg);opacity:.66}
  23%{transform:scale(.998) rotate(.2deg);opacity:.28}
  36%{transform:scale(1.04) rotate(-1deg);opacity:.88}
  50%,68%{transform:scale(.988) rotate(0deg);opacity:.14}
}

/* Fallback do perfil aparece imediatamente antes da autenticação terminar. */
.account-login-fallback{opacity:1;visibility:visible}
.account-login-link .header-person{transform-origin:50% 80%}

/* Menos espaço vertical e menos dominância das imagens nas páginas internas. */
.page-hero{min-height:auto!important}
.page-hero-media{align-self:center}
.portfolio-hero h1{max-width:12ch}
.portfolio-hero p{max-width:42ch}

/* Evita repinturas fora da tela em seções longas. */
@supports (content-visibility:auto){
  .section.compact:not(:first-child),
  .site-footer-v7{content-visibility:auto;contain-intrinsic-size:1px 650px}
}

@media(max-width:680px){
  .page-hero{padding-block:26px 28px!important;gap:14px!important}
  .page-hero-media{max-width:260px!important}
  .page-hero-media>img,.page-hero-media>.portfolio-orb{max-width:260px!important}
  .page-hero-media::before{width:min(100%,260px)!important}
  .page-hero-media::after{width:min(78%,203px)!important}
  .page-hero h1{font-size:clamp(2.2rem,9.9vw,3.05rem)!important;line-height:.99!important}
  .page-hero p{font-size:.92rem!important;line-height:1.5!important}
  .portfolio-hero h1{max-width:10ch!important}
  .portfolio-hero p{max-width:31ch!important}
  .service-mini-card .pulse-emblem,.project-mini-card .pulse-emblem{will-change:auto}
}

/* =========================================================
   InfoTech V6.7 — identidade Instagram, carrosséis estáveis,
   mascote aprimorado e autenticação guiada
   ========================================================= */

/* A marca do cabeçalho fica limpa; o pulso permanece apenas no rodapé. */
.site-header .brand::before{display:none!important}
.site-header .brand img{filter:none!important;animation:none!important;transform:none!important}
.footer-brand-mini::before{
  display:block!important;
  content:"";
  position:absolute!important;
  left:calc(var(--brand-logo-size) / 2)!important;
  top:50%!important;
  width:calc(var(--brand-logo-size) + 13px)!important;
  height:calc(var(--brand-logo-size) + 13px)!important;
  transform:translate(-50%,-50%) scale(.96)!important;
  border-radius:50%;
  border:1px solid rgba(73,235,255,.32)!important;
  box-shadow:0 0 15px rgba(36,231,255,.18),0 0 34px rgba(36,118,255,.10)!important;
  opacity:.22;
  z-index:0!important;
  pointer-events:none;
  animation:footerBrandBeatV67 1.8s cubic-bezier(.32,.72,.28,1) infinite!important;
}
.footer-brand-mini img{position:relative;z-index:1;animation:none!important}
@keyframes footerBrandBeatV67{
  0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.20}
  14%{transform:translate(-50%,-50%) scale(1.05);opacity:.70}
  29%{transform:translate(-50%,-50%) scale(.99);opacity:.32}
  42%{transform:translate(-50%,-50%) scale(1.08);opacity:.88}
  62%,76%{transform:translate(-50%,-50%) scale(.97);opacity:.18}
}

/* Imagens grandes das páginas internas usam a arte original sem anéis adicionais. */
.page-hero-media::before,.page-hero-media::after{display:none!important;animation:none!important}
.page-hero-media>img,.page-hero-media>.portfolio-orb{transform:none!important;filter:none!important}
.page-hero-media>img{object-fit:contain;object-position:center}

/* Emblemas pequenos: sem pulso, sem deslocamento e com eixo visual idêntico. */
.pulse-emblem::before,.pulse-emblem::after{display:none!important;animation:none!important}
.pulse-emblem{
  background:transparent!important;
  box-shadow:none!important;
  isolation:auto!important;
  display:grid!important;
  place-items:center!important;
  margin-inline:auto!important;
}
.pulse-emblem img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  margin:auto!important;
  filter:none!important;
  transform:none!important;
  animation:none!important;
}
.service-mini-card .pulse-emblem{width:94px!important;height:94px!important}
.project-mini-card .pulse-emblem{width:94px!important;height:94px!important}
.service-mini-card,.project-mini-card{
  display:grid!important;
  grid-template-rows:100px auto auto auto;
  align-content:center;
  justify-items:center;
  text-align:center;
}
.service-mini-card strong,.project-mini-card strong{align-self:end}
.service-mini-card small,.project-mini-card small{align-self:start}
.service-mini-card .mini-status,.project-mini-card .mini-status{align-self:start}
.rass-emblem img{width:88%!important;height:88%!important;border-radius:12px!important}
.placeholder-emblem{display:grid!important;place-items:center!important;border:1px solid rgba(68,221,255,.18);background:radial-gradient(circle,rgba(23,157,204,.12),rgba(3,12,25,.2) 70%)!important}

/* Carrosséis: sem piscada de opacidade/escala e sem snap duro. */
.coverflow [data-carousel-slide],
.coverflow [data-carousel-slide].is-active,
.coverflow [data-carousel-slide].is-near,
.coverflow [data-carousel-slide].is-far{
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  transition:border-color .2s ease,box-shadow .2s ease!important;
  will-change:auto!important;
}
.coverflow [data-carousel-slide].is-active{box-shadow:0 18px 48px rgba(0,0,0,.28),0 0 20px rgba(36,231,255,.06)!important}
.coverflow-stage,.process-shelf,.about-values{
  scroll-snap-type:none!important;
  scroll-behavior:auto!important;
  touch-action:pan-y!important;
  overscroll-behavior-inline:none!important;
  -webkit-overflow-scrolling:auto!important;
}
.coverflow-stage.is-dragging,.process-shelf.is-dragging,.about-values.is-dragging{scroll-snap-type:none!important}
[data-loop-clone]{pointer-events:none!important}

/* Mascote do perfil: corpo, cabelo, braços, antebraços e mãos visíveis. */
.account-login-link,.account-trigger{overflow:visible!important}
.account-login-link .header-person,.account-avatar .header-person{
  display:block!important;
  position:relative!important;
  opacity:1!important;
  visibility:visible!important;
  z-index:3!important;
}
.header-person{
  width:35px!important;
  height:36px!important;
  filter:drop-shadow(0 0 7px rgba(40,232,255,.62))!important;
  animation:hpBodyGrooveV67 2.45s cubic-bezier(.45,0,.2,1) infinite!important;
  transform-origin:50% 82%!important;
}
.header-person .hp-head{
  display:block!important;
  position:absolute!important;
  left:12px!important;
  top:2px!important;
  width:12px!important;
  height:12px!important;
  border-radius:48% 52% 46% 54%!important;
  background:linear-gradient(180deg,#73f7ff,#28c9f4)!important;
  box-shadow:0 0 9px rgba(36,231,255,.72)!important;
  z-index:4!important;
  animation:hpHeadV67 2.45s ease-in-out infinite!important;
}
.header-person .hp-head::before{
  content:"";
  position:absolute;
  left:-1px;top:-4px;
  width:14px;height:7px;
  background:linear-gradient(135deg,#24e7ff,#249cff);
  clip-path:polygon(0 74%,12% 22%,31% 54%,46% 0,61% 48%,78% 16%,100% 72%,92% 100%,8% 100%);
  border-radius:8px 8px 3px 3px;
  opacity:.96;
  filter:drop-shadow(0 0 4px rgba(36,231,255,.45));
}
.header-person .hp-body{
  display:block!important;
  position:absolute!important;
  left:8px!important;
  bottom:2px!important;
  width:20px!important;
  height:17px!important;
  border-radius:10px 10px 7px 7px!important;
  background:linear-gradient(180deg,#5ff5ff 0%,#27c8f2 55%,#178bd7 100%)!important;
  box-shadow:0 0 9px rgba(36,231,255,.45)!important;
  z-index:2!important;
}
.header-person .hp-body::before{
  content:"";
  position:absolute;left:50%;top:2px;transform:translateX(-50%);
  width:8px;height:3px;border-radius:999px;background:rgba(2,28,47,.55)
}
.header-person .hp-arm{
  display:block!important;
  position:absolute!important;
  top:18px!important;
  width:11px!important;
  height:5px!important;
  border-radius:8px!important;
  background:linear-gradient(90deg,#58efff,#25b9ee)!important;
  box-shadow:0 0 6px rgba(36,231,255,.50)!important;
  z-index:3!important;
}
.header-person .hp-arm::before{
  content:"";
  position:absolute;
  top:0;
  width:9px;height:4px;
  border-radius:8px;
  background:linear-gradient(90deg,#4ceaff,#20a8e5);
  box-shadow:0 0 5px rgba(36,231,255,.45);
}
.header-person .hp-arm::after{
  content:"";
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:#76f7ff;
  box-shadow:0 0 6px rgba(36,231,255,.75);
}
.header-person .hp-left{
  left:0!important;
  transform-origin:100% 50%!important;
  animation:hpUpperLeftV67 2.45s ease-in-out infinite!important;
}
.header-person .hp-left::before{left:-7px;transform-origin:100% 50%;animation:hpForeLeftV67 2.45s ease-in-out infinite!important}
.header-person .hp-left::after{left:-10px;top:-1px;animation:hpHandLeftV67 2.45s ease-in-out infinite!important}
.header-person .hp-right{
  right:0!important;
  transform-origin:0 50%!important;
  animation:hpUpperRightV67 2.45s ease-in-out infinite!important;
}
.header-person .hp-right::before{right:-7px;transform-origin:0 50%;animation:hpForeRightV67 2.45s ease-in-out infinite!important}
.header-person .hp-right::after{right:-10px;top:-1px;animation:hpHandRightV67 2.45s ease-in-out infinite!important}
.header-person-small{transform:scale(.78)!important;transform-origin:center!important}
@keyframes hpBodyGrooveV67{0%,100%{transform:translateY(0) rotate(0)}18%{transform:translateY(-2px) rotate(-3deg)}38%{transform:translateY(1px) rotate(3deg)}57%{transform:translateY(-3px) rotate(0)}78%{transform:translateY(0) rotate(-2deg)}}
@keyframes hpHeadV67{0%,100%{transform:rotate(0) translateY(0)}30%{transform:rotate(-8deg) translateY(-1px)}55%{transform:rotate(7deg) translateY(0)}75%{transform:rotate(-3deg) translateY(-1px)}}
@keyframes hpUpperLeftV67{0%,100%{transform:rotate(24deg)}24%{transform:rotate(-42deg)}48%{transform:rotate(14deg)}66%{transform:rotate(-28deg)}82%{transform:rotate(30deg)}}
@keyframes hpUpperRightV67{0%,100%{transform:rotate(-20deg)}24%{transform:rotate(38deg)}48%{transform:rotate(-16deg)}66%{transform:rotate(28deg)}82%{transform:rotate(-26deg)}}
@keyframes hpForeLeftV67{0%,100%{transform:rotate(-18deg)}24%{transform:rotate(-55deg)}48%{transform:rotate(18deg)}66%{transform:rotate(-38deg)}82%{transform:rotate(10deg)}}
@keyframes hpForeRightV67{0%,100%{transform:rotate(18deg)}24%{transform:rotate(58deg)}48%{transform:rotate(-14deg)}66%{transform:rotate(40deg)}82%{transform:rotate(-10deg)}}
@keyframes hpHandLeftV67{0%,100%{transform:scale(1)}24%{transform:scale(1.12)}55%{transform:scale(.94)}75%{transform:scale(1.08)}}
@keyframes hpHandRightV67{0%,100%{transform:scale(1)}32%{transform:scale(1.12)}58%{transform:scale(.94)}80%{transform:scale(1.08)}}

/* Pré-cadastro vindo do login. */
.signup-prefill-note{
  margin:0 0 18px;padding:12px 14px;border:1px solid rgba(68,221,255,.20);border-radius:14px;
  background:rgba(11,49,70,.34);color:#bfeef7;font-size:.82rem;line-height:1.45
}
.signup-prefill-note a{color:#7df2ff;text-decoration:underline;text-underline-offset:3px}

@media(max-width:680px){
  .service-mini-card,.project-mini-card{grid-template-rows:82px auto auto auto!important;min-height:184px!important;padding:13px 7px!important}
  .service-mini-card .pulse-emblem,.project-mini-card .pulse-emblem{width:78px!important;height:78px!important}
  .service-mini-card strong,.project-mini-card strong{font-size:.83rem!important}
  .service-mini-card small,.project-mini-card small{font-size:.61rem!important;line-height:1.25!important;max-width:13.5ch!important}
  .header-person{width:35px!important;height:36px!important}
  .account-login-link{width:54px!important;height:54px!important}
  .page-hero-media{max-width:250px!important}
  .page-hero-media>img,.page-hero-media>.portfolio-orb{max-width:250px!important}
}

@media(prefers-reduced-motion:reduce){
  .header-person,.header-person .hp-head,.header-person .hp-arm,.header-person .hp-arm::before,.header-person .hp-arm::after,.footer-brand-mini::before{animation:none!important}
}
/* V6.7: artes auxiliares permanecem estáticas; o pulso principal fica concentrado no hero, perfil e rodapé. */
.media-card-v7 .media-image::before,.media-card-v7 .media-image::after{display:none!important;animation:none!important}
.media-card-v7 .media-image img{animation:none!important;transform:none!important}


/* ===== V6.7 FINAL — alinhamento, animações e carrosséis ===== */
/* Pedido atual: logos estáticas. Movimento fica apenas no personagem do topo e no logo central do rodapé. */
.logo-heartbeat::before,
.logo-heartbeat::after,
.logo-heartbeat .neon-aura,
.logo-heartbeat img,
.portfolio-orb::before,
.portfolio-orb img,
.page-hero-media::before,
.page-hero-media::after,
.page-hero-media > img,
.pulse-emblem::before,
.pulse-emblem::after,
.pulse-emblem img,
.service-mini-card img,
.project-mini-card img{
  animation:none!important;
}
.logo-heartbeat::before,.logo-heartbeat::after,.logo-heartbeat .neon-aura{display:none!important}
.logo-heartbeat img{filter:none!important;transform:none!important}

/* O rodapé continua com o único pulso de logo solicitado. */
.footer-brand-mini::before{display:block!important;animation:footerBrandBeatV67 1.8s cubic-bezier(.32,.72,.28,1) infinite!important}
.footer-brand-mini img{animation:none!important;transform:none!important}

/* Emblemas de serviços/projetos no mesmo eixo e com proporção previsível. */
.service-mini-card .pulse-emblem,
.project-mini-card .pulse-emblem{
  inline-size:88px!important;
  block-size:88px!important;
  min-inline-size:88px!important;
  min-block-size:88px!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:center!important;
  overflow:hidden!important;
  border-radius:50%!important;
}
.service-mini-card .pulse-emblem img,
.project-mini-card .pulse-emblem img{
  inline-size:88px!important;
  block-size:88px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
}
/* A marca horizontal da Rass recebe uma base circular para manter o mesmo peso visual sem trocar a logo original. */
.project-mini-card .rass-emblem{
  background:radial-gradient(circle at 50% 45%,rgba(25,157,202,.18),rgba(2,8,18,.96) 70%)!important;
  border:1px solid rgba(70,225,255,.25)!important;
  box-shadow:inset 0 0 20px rgba(36,231,255,.05)!important;
}
.project-mini-card .rass-emblem img{
  inline-size:82%!important;
  block-size:auto!important;
  max-block-size:62%!important;
  border-radius:8px!important;
}

/* Sem pisca ao encaixar: nenhum slide muda opacidade/escala/sombra durante a escolha. */
.coverflow [data-carousel-slide],
.coverflow [data-carousel-slide].is-active,
.coverflow [data-carousel-slide].is-near,
.coverflow [data-carousel-slide].is-far,
.process-shelf > *,
.about-values > *{
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.coverflow-stage,.process-shelf,.about-values{
  contain:layout paint;
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
}

/* Personagem: preserva o desenho e garante que braços/antebraços/mãos não sejam cortados. */
.account-login-link,.account-trigger,.account-avatar{overflow:visible!important}
.header-person{overflow:visible!important;isolation:isolate}
.header-person .hp-head,.header-person .hp-body,.header-person .hp-arm,
.header-person .hp-arm::before,.header-person .hp-arm::after{backface-visibility:hidden}

@media(max-width:680px){
  .service-mini-card .pulse-emblem,.project-mini-card .pulse-emblem{
    inline-size:76px!important;block-size:76px!important;min-inline-size:76px!important;min-block-size:76px!important;
  }
  .service-mini-card .pulse-emblem img,.project-mini-card .pulse-emblem img{inline-size:76px!important;block-size:76px!important}
  .project-mini-card .rass-emblem img{inline-size:84%!important;block-size:auto!important;max-block-size:60%!important}
}

/* ===== V6.8 — mascote 3D + mãos sincronizadas + cadeado lateral ===== */
/* Remove a esfera azul atrás do mascote quando o usuário está logado. */
.account-avatar{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:12px!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  perspective:180px;
  place-items:center!important;
}
.account-trigger{overflow:visible!important}
.account-avatar .header-person{
  margin:0!important;
  scale:.82;
  transform-origin:50% 82%!important;
}

/* Efeito 3D de "sair da tela": o personagem avança, inclina e volta. */
.header-person{
  transform-style:preserve-3d!important;
  perspective:180px!important;
  will-change:transform,filter;
  animation:hpBreakScreenV68 3.1s cubic-bezier(.42,0,.18,1) infinite!important;
}
.header-person::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-4px;
  width:24px;
  height:6px;
  transform:translateX(-50%) translateZ(-10px);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(40,232,255,.34),rgba(40,232,255,0) 72%);
  filter:blur(1px);
  opacity:.52;
  pointer-events:none;
  z-index:-1;
  animation:hpDepthShadowV68 3.1s ease-in-out infinite;
}
.header-person::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:48px;
  height:48px;
  border:1px solid rgba(100,245,255,.0);
  border-radius:14px 50% 18px 50%;
  transform:translate(-50%,-50%) scale(.46) rotate(8deg) translateZ(-8px);
  opacity:0;
  pointer-events:none;
  z-index:-2;
  box-shadow:0 0 0 1px rgba(36,231,255,0),0 0 18px rgba(36,231,255,0);
  animation:hpScreenRippleV68 3.1s ease-out infinite;
}
@keyframes hpBreakScreenV68{
  0%,18%,100%{transform:perspective(180px) translate3d(0,0,0) rotateX(0) rotateY(0) rotateZ(0);filter:drop-shadow(0 0 7px rgba(40,232,255,.58))}
  30%{transform:perspective(180px) translate3d(-1px,-2px,7px) rotateX(-5deg) rotateY(9deg) rotateZ(-2deg);filter:drop-shadow(0 2px 9px rgba(40,232,255,.72))}
  43%{transform:perspective(180px) translate3d(1px,-3px,17px) rotateX(-8deg) rotateY(-10deg) rotateZ(2deg) scale(1.07);filter:drop-shadow(0 5px 12px rgba(40,232,255,.9))}
  53%{transform:perspective(180px) translate3d(0,-2px,11px) rotateX(4deg) rotateY(8deg) rotateZ(-1deg) scale(1.035)}
  68%{transform:perspective(180px) translate3d(0,1px,3px) rotateX(1deg) rotateY(-3deg) rotateZ(1deg)}
  82%{transform:perspective(180px) translate3d(0,-1px,6px) rotateX(-2deg) rotateY(3deg) rotateZ(0)}
}
@keyframes hpDepthShadowV68{
  0%,18%,100%{transform:translateX(-50%) scaleX(.88);opacity:.42}
  43%{transform:translateX(-50%) scaleX(1.22);opacity:.72}
  68%{transform:translateX(-50%) scaleX(.96);opacity:.5}
}
@keyframes hpScreenRippleV68{
  0%,30%,100%{opacity:0;transform:translate(-50%,-50%) scale(.46) rotate(8deg)}
  42%{opacity:.68;border-color:rgba(106,245,255,.52);box-shadow:0 0 0 1px rgba(36,231,255,.12),0 0 18px rgba(36,231,255,.20);transform:translate(-50%,-50%) scale(.74) rotate(-3deg)}
  55%{opacity:.18;border-color:rgba(106,245,255,.22);transform:translate(-50%,-50%) scale(1.08) rotate(10deg)}
  64%{opacity:0;transform:translate(-50%,-50%) scale(1.22) rotate(14deg)}
}

/* Braço + antebraço + mão agora funcionam como uma peça articulada única.
   Assim a mão acompanha exatamente o braço e não "descola" durante a dança. */
.header-person .hp-arm::before,
.header-person .hp-arm::after{animation:none!important}
.header-person .hp-left::before{
  left:-7px!important;
  top:0!important;
  transform:rotate(-16deg)!important;
  transform-origin:100% 50%!important;
}
.header-person .hp-left::after{
  left:-14px!important;
  top:-1px!important;
  transform:rotate(-8deg)!important;
}
.header-person .hp-right::before{
  right:-7px!important;
  top:0!important;
  transform:rotate(16deg)!important;
  transform-origin:0 50%!important;
}
.header-person .hp-right::after{
  right:-14px!important;
  top:-1px!important;
  transform:rotate(8deg)!important;
}
.header-person .hp-left{animation:hpArmLeftV68 3.1s cubic-bezier(.42,0,.18,1) infinite!important}
.header-person .hp-right{animation:hpArmRightV68 3.1s cubic-bezier(.42,0,.18,1) infinite!important}
@keyframes hpArmLeftV68{
  0%,18%,100%{transform:rotate(22deg) scale(1)}
  30%{transform:rotate(-18deg) scale(1.02)}
  43%{transform:rotate(-48deg) scale(1.17)}
  53%{transform:rotate(-24deg) scale(1.08)}
  68%{transform:rotate(18deg) scale(1)}
  82%{transform:rotate(-8deg) scale(1.04)}
}
@keyframes hpArmRightV68{
  0%,18%,100%{transform:rotate(-20deg) scale(1)}
  30%{transform:rotate(20deg) scale(1.03)}
  43%{transform:rotate(52deg) scale(1.19)}
  53%{transform:rotate(27deg) scale(1.08)}
  68%{transform:rotate(-18deg) scale(1)}
  82%{transform:rotate(10deg) scale(1.04)}
}

/* O cabelo e a cabeça acompanham o avanço 3D sem perder o desenho. */
.header-person .hp-head{animation:hpHeadV68 3.1s ease-in-out infinite!important}
@keyframes hpHeadV68{
  0%,18%,100%{transform:translateY(0) rotate(0) translateZ(3px)}
  30%{transform:translateY(-1px) rotate(-7deg) translateZ(5px)}
  43%{transform:translateY(-2px) rotate(8deg) translateZ(8px)}
  53%{transform:translateY(-1px) rotate(-4deg) translateZ(6px)}
  68%{transform:translateY(0) rotate(3deg) translateZ(4px)}
}

/* Cadeado: levanta um pouco o arco e abre para o lado, como um cadeado real. */
.lock-shackle{
  transform-origin:7px 31px!important;
  animation:unlockSideV68 3s cubic-bezier(.44,0,.2,1) infinite!important;
  will-change:transform;
}
@keyframes unlockSideV68{
  0%,26%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  36%{transform:translate3d(0,-6px,0) rotate(0deg)}
  48%,67%{transform:translate3d(4px,-7px,0) rotate(25deg)}
  77%{transform:translate3d(1px,-3px,0) rotate(8deg)}
  86%{transform:translate3d(0,0,0) rotate(0deg)}
}

@media(max-width:680px){
  .account-avatar{width:36px!important;height:36px!important;min-width:36px!important}
  .account-avatar .header-person{scale:.78}
}

@media(prefers-reduced-motion:reduce){
  .header-person,.header-person::before,.header-person::after,.header-person .hp-head,.header-person .hp-arm,.lock-shackle{animation:none!important}
}

/* ===== V6.9 — ajustes de layout, solicitações e perfil ===== */
.hero h1{
  max-width:16.5ch!important;
  line-height:.98!important;
  letter-spacing:-.048em!important;
}
.hero h1 span{display:inline!important}
.hero h1 br{display:block}
.page-hero.request-hero h1{max-width:11ch}
.auth-actions{display:flex;gap:10px;flex-wrap:wrap}
.auth-actions[hidden]{display:none!important}

/* Widget da conta: mesmo visual para visitante e usuário logado. */
.account-login-link,
.account-trigger{
  min-height:56px!important;
  border-radius:18px!important;
  border:1px solid rgba(84,220,255,.18)!important;
  background:linear-gradient(180deg,rgba(8,20,38,.92),rgba(6,18,34,.84))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.02)!important;
  padding:8px 12px!important;
}
.account-login-link .header-person,
.account-avatar .header-person,
.profile-header-person{
  display:block!important;
  margin:0!important;
  transform-origin:50% 80%!important;
}
.account-avatar{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  border-radius:12px!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  place-items:center!important;
}
.header-person{
  width:34px!important;
  height:35px!important;
  overflow:visible!important;
  isolation:isolate;
  animation:hpTechFloatV69 3.4s ease-in-out infinite!important;
  filter:drop-shadow(0 0 7px rgba(64,235,255,.58))!important;
}
.header-person::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-2px;
  width:22px;
  height:7px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(77,244,255,.42),rgba(77,244,255,0) 72%);
  opacity:.66;
  animation:hpTechBaseV69 3.4s ease-in-out infinite;
}
.header-person::after{
  content:"";
  position:absolute;
  left:50%;
  top:52%;
  width:44px;
  height:44px;
  transform:translate(-50%,-50%);
  border-radius:16px;
  border:1px solid rgba(90,244,255,.14);
  box-shadow:0 0 16px rgba(36,231,255,.08);
  opacity:.7;
}
.header-person .hp-head{
  width:12px!important;
  height:12px!important;
  left:11px!important;
  top:1px!important;
  background:linear-gradient(180deg,#89fbff,#28d5ff)!important;
  box-shadow:0 0 9px rgba(36,231,255,.72)!important;
  animation:hpHeadTechV69 3.4s ease-in-out infinite!important;
}
.header-person .hp-head::before{
  opacity:.88!important;
  top:-3px!important;
}
.header-person .hp-body{
  left:8px!important;
  bottom:3px!important;
  width:18px!important;
  height:15px!important;
  border-radius:10px 10px 8px 8px!important;
  background:linear-gradient(180deg,#66f6ff 0%,#2bcff4 50%,#1877ff 100%)!important;
}
.header-person .hp-body::after{
  content:"";
  position:absolute;
  left:50%;top:6px;
  width:9px;height:2px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(3,34,60,.55);
  box-shadow:0 5px 0 rgba(3,34,60,.36);
}
.header-person .hp-arm{
  top:17px!important;
  width:11px!important;
  height:4px!important;
  background:linear-gradient(90deg,#5ef4ff,#27bfff)!important;
  box-shadow:0 0 5px rgba(36,231,255,.45)!important;
}
.header-person .hp-arm::before,
.header-person .hp-arm::after{animation:none!important}
.header-person .hp-left{
  left:1px!important;
  transform-origin:100% 50%!important;
  animation:hpTechArmLeftV69 3.4s ease-in-out infinite!important;
}
.header-person .hp-left::before{
  left:-7px!important;
  top:0!important;
  transform:rotate(-10deg)!important;
  transform-origin:100% 50%!important;
}
.header-person .hp-left::after{
  left:-14px!important;
  top:-1px!important;
  transform:scale(.95)!important;
}
.header-person .hp-right{
  right:1px!important;
  transform-origin:0 50%!important;
  animation:hpTechArmRightV69 3.4s ease-in-out infinite!important;
}
.header-person .hp-right::before{
  right:-7px!important;
  top:0!important;
  transform:rotate(10deg)!important;
  transform-origin:0 50%!important;
}
.header-person .hp-right::after{
  right:-14px!important;
  top:-1px!important;
  transform:scale(.95)!important;
}
.account-login-link .header-person,
.account-avatar .header-person{scale:.84!important}
.profile-header-person{scale:1.9!important}
.profile-mascot{
  width:88px;height:88px;border-radius:24px;display:grid;place-items:center;flex:0 0 88px;
  background:linear-gradient(180deg,rgba(9,24,43,.92),rgba(6,19,35,.82));
  border:1px solid rgba(84,220,255,.2);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 14px 28px rgba(0,0,0,.18);
}
@keyframes hpTechFloatV69{
  0%,100%{transform:translateY(0) rotate(0deg)}
  20%{transform:translateY(-1px) rotate(-1.5deg)}
  50%{transform:translateY(-2px) rotate(1.5deg)}
  75%{transform:translateY(-1px) rotate(0deg)}
}
@keyframes hpHeadTechV69{
  0%,100%{transform:translateY(0) rotate(0deg)}
  30%{transform:translateY(-1px) rotate(-6deg)}
  56%{transform:translateY(0) rotate(5deg)}
}
@keyframes hpTechArmLeftV69{
  0%,100%{transform:rotate(18deg)}
  24%{transform:rotate(10deg)}
  48%{transform:rotate(-8deg)}
  70%{transform:rotate(12deg)}
}
@keyframes hpTechArmRightV69{
  0%,100%{transform:rotate(-18deg)}
  24%{transform:rotate(-10deg)}
  48%{transform:rotate(8deg)}
  70%{transform:rotate(-12deg)}
}
@keyframes hpTechBaseV69{
  0%,100%{opacity:.5;transform:translateX(-50%) scaleX(.92)}
  50%{opacity:.78;transform:translateX(-50%) scaleX(1.15)}
}

/* Perfil mais bonito e com mais utilidade */
.profile-shell{padding-block:38px 90px;display:grid;gap:18px}
.profile-hero-card,
.profile-card{
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(5,18,34,.82),rgba(5,16,31,.72));
  box-shadow:var(--shadow);
}
.profile-hero-card{padding:28px}
.profile-hero-top{display:flex;gap:18px;align-items:center;margin-bottom:24px}
.profile-hero-top h1{margin:10px 0 12px;font-size:clamp(2rem,4.2vw,3.35rem);line-height:.98;letter-spacing:-.045em}
.profile-hero-top p{margin:0;color:var(--muted);max-width:60ch}
.profile-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.profile-summary-grid article,
.profile-meta-card,
.profile-feature-list article{
  border:1px solid rgba(85,221,255,.12);
  background:rgba(8,23,42,.58);
  border-radius:18px;
}
.profile-summary-grid article{padding:16px}
.profile-summary-grid small,
.profile-meta-card small{display:block;color:var(--muted-2);font-size:.74rem;text-transform:uppercase;letter-spacing:.12em}
.profile-summary-grid strong,
.profile-meta-card strong{display:block;margin-top:6px;font-size:1rem;color:#fff}
.profile-summary-grid span,
.profile-meta-card div span{display:block;margin-top:6px;color:var(--muted);font-size:.83rem;line-height:1.45}
.profile-quick-actions{display:flex;gap:10px;flex-wrap:wrap}
.profile-grid-enhanced{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:18px}
.profile-card{padding:28px}
.profile-card h2{margin-top:8px}
.profile-card-main .auth-form{display:grid;gap:16px}
.profile-card-side{display:grid;gap:16px;align-content:start}
.profile-feature-list{display:grid;gap:12px}
.profile-feature-list article{padding:16px}
.profile-feature-list strong{display:block;font-size:.96rem}
.profile-feature-list span{display:block;margin-top:6px;color:var(--muted);font-size:.88rem;line-height:1.5}
.profile-meta-card{display:grid;gap:0;overflow:hidden}
.profile-meta-card>div{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.05)}
.profile-meta-card>div:last-child{border-bottom:0}

@media(max-width:900px){
  .profile-summary-grid,
  .profile-grid-enhanced{grid-template-columns:1fr}
}
@media(max-width:680px){
  .hero h1{max-width:12.9ch!important;font-size:clamp(2.45rem,10.7vw,4.05rem)!important}
  .page-hero.request-hero h1{max-width:10.5ch!important}
  .profile-hero-card,.profile-card{padding:22px}
  .profile-hero-top{align-items:flex-start}
  .profile-mascot{width:76px;height:76px;flex-basis:76px}
  .profile-header-person{scale:1.6!important}
  .profile-quick-actions{display:grid;grid-template-columns:1fr}
  .profile-quick-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .header-person,.header-person::before,.header-person::after,.header-person .hp-head,.header-person .hp-arm{animation:none!important}
}

/* =========================================================
   InfoTech V7.0 — painel limpo + hero de solicitações
   ========================================================= */
.dashboard-shell-flat{
  display:block!important;
  padding-block:42px 80px!important;
}
.dashboard-shell-flat .dashboard-content{
  display:grid;
  gap:18px;
}
.dashboard-overview{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:22px;
}
.dashboard-overview h1{
  margin:10px 0 8px;
  font-size:clamp(2.2rem,4.8vw,3.2rem);
  line-height:1.02;
  letter-spacing:-.04em;
}
.dashboard-overview p{
  margin:0;
  color:var(--muted);
  max-width:58ch;
  line-height:1.7;
}
.dashboard-quick-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
.dashboard-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(5,16,31,.55);
  color:#c2d5e5;
  font-size:.88rem;
  font-weight:800;
  line-height:1;
  text-align:center;
  transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.dashboard-chip:hover,
.dashboard-chip.active{
  color:#fff;
  border-color:rgba(77,212,255,.34);
  background:rgba(36,231,255,.09);
  transform:translateY(-1px);
}
.dashboard-chip-logout{
  color:#ffb7c2;
}
.dashboard-chip-logout:hover{
  color:#fff3f6;
  border-color:rgba(255,143,163,.35);
  background:rgba(255,76,120,.12);
}
.request-hero h1{
  max-width:11ch;
}
@media (max-width:980px){
  .dashboard-overview{
    align-items:stretch;
    flex-direction:column;
  }
  .dashboard-quick-actions{
    justify-content:flex-start;
  }
}
@media (max-width:680px){
  .dashboard-overview h1{
    font-size:clamp(2rem,10vw,2.6rem);
  }
  .dashboard-quick-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .dashboard-chip{
    width:100%;
    min-height:46px;
  }
  .dashboard-chip-logout{
    grid-column:1/-1;
  }
  .request-hero h1{
    max-width:9.5ch;
  }
}

/* =========================================================
   InfoTech V8.0 — hardening, acessibilidade e acabamento
   ========================================================= */
.login-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 4px}
.login-next-actions .btn{min-height:48px;padding:10px 14px;text-align:center}
.footer-legal-links{white-space:nowrap}
.footer-legal-links a{color:var(--muted-2);text-decoration:none}
.footer-legal-links a:hover,.footer-legal-links a:focus-visible{color:var(--cyan)}
.legal-hero{padding-bottom:28px}
.legal-hero>div{max-width:780px}
.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.legal-card{padding:30px;min-height:210px}
.legal-card h2{margin:0 0 12px;font-size:1.35rem}
.legal-card p{margin:0;color:var(--muted);line-height:1.7}
.legal-card .btn{margin-top:20px}
.legal-note{margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:rgba(4,15,29,.72);color:var(--muted);line-height:1.65}
.legal-note strong{color:#e9faff}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid #52eaff;outline-offset:3px}
img{height:auto}
@media(max-width:720px){
  .legal-grid{grid-template-columns:1fr}
  .legal-card{min-height:0;padding:24px}
  .login-next-actions{grid-template-columns:1fr}
  .footer-legal-links{width:100%;text-align:center;margin-top:6px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
}
.mfa-qr-wrap{display:grid;justify-items:center;gap:12px;margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(0,0,0,.18)}
.mfa-qr-wrap img{width:min(260px,80vw);height:auto;border-radius:14px;background:#fff;padding:8px}
.mfa-qr-wrap code{max-width:100%;overflow-wrap:anywhere;color:#9eefff;font-size:.8rem}


/* V8.0 — estilos estruturais sem atributos inline */
.auth-shell-single{grid-template-columns:1fr}
.admin-actions-row{display:flex;gap:8px;flex-wrap:wrap}


.reveal-delay-0{--delay:0ms}
.reveal-delay-1{--delay:65ms}
.reveal-delay-2{--delay:130ms}
.reveal-delay-3{--delay:195ms}


.project-progress progress{
  display:block;width:100%;height:100%;border:0;border-radius:inherit;
  appearance:none;-webkit-appearance:none;background:transparent;overflow:hidden
}
.project-progress progress::-webkit-progress-bar{background:#102138;border-radius:999px}
.project-progress progress::-webkit-progress-value{background:linear-gradient(90deg,var(--blue),var(--cyan),var(--green));border-radius:999px}
.project-progress progress::-moz-progress-bar{background:linear-gradient(90deg,var(--blue),var(--cyan),var(--green));border-radius:999px}
.client-row-actions{display:flex;gap:8px;flex-wrap:wrap}
