:root{--bg:#050505;--surface:#0b0b0d;--surface2:#111216;--text:#f7f7f8;--muted:#a3a3ad;--line:rgba(255,255,255,.09);--blue:#2d7ff9;--blue-soft:#6aa6ff;--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}::selection{background:var(--blue);color:#fff}.container{width:min(1180px,calc(100% - 40px));margin:0 auto}.section{padding:140px 0;position:relative}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-soft);font-weight:800}.display{font-size:clamp(3.2rem,8vw,7.7rem);line-height:.92;letter-spacing:-.065em;margin:0;font-weight:850}.title{font-size:clamp(2.3rem,5vw,5rem);line-height:1;letter-spacing:-.05em;margin:0;font-weight:820}.lead{font-size:clamp(1.08rem,1.7vw,1.35rem);line-height:1.65;color:var(--muted);max-width:720px}.lead.small{font-size:1rem}.blue{color:var(--blue)}.mt{margin-top:18px}.center{text-align:center}.centered{margin:30px auto}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.grid{display:grid;gap:24px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:15px 22px;border:1px solid var(--line);font-weight:800;transition:.3s ease;cursor:pointer}.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 15px 50px rgba(45,127,249,.28)}.btn-ghost{background:rgba(255,255,255,.04)}.btn:hover{transform:translateY(-3px) scale(1.02)}.btn.big{font-size:1.1rem;padding:19px 30px}.card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border-radius:var(--radius);padding:30px;backdrop-filter:blur(18px)}.glow{position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(110px);background:rgba(45,127,249,.14);pointer-events:none}.glow-top{top:10%;right:8%}.opening{min-height:100svh;display:grid;place-items:center;position:relative;overflow:hidden}.opening .btn{margin-top:4px}.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px 0}.nav-pill{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-radius:999px;border:1px solid transparent;transition:.3s}.site-nav.scrolled .nav-pill{border-color:var(--line);background:rgba(5,5,5,.78);backdrop-filter:blur(20px)}.navbar-brand{display:flex;align-items:center;min-height:34px;font-weight:950;letter-spacing:-.05em;font-size:1.45rem}.navbar-brand i,.footer-brand strong span,.admin-logo span{color:var(--blue);font-style:normal}.navbar-logo{width:auto;height:34px;max-width:150px;object-fit:contain}.desktop-nav{display:flex;gap:30px;color:var(--muted);font-size:.95rem}.desktop-nav a:hover{color:#fff}.menu-btn{display:none;background:transparent;border:0;color:#fff;font-size:1.4rem}.mobile-nav{display:none;margin-top:8px;padding:20px;border:1px solid var(--line);border-radius:22px;background:rgba(10,10,12,.96);gap:16px}.mobile-nav.open{display:grid}.hero-art{min-height:520px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 70% 15%,rgba(45,127,249,.23),transparent 35%),linear-gradient(145deg,#11131a,#08090d)}.browser-card{position:absolute;inset:48px 34px 70px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,#171922,#0b0c10);padding:22px;transform:rotate(-4deg)}.dots{color:#666;font-size:.72rem;letter-spacing:.4em}.brand-stage{height:300px;margin-top:22px;border-radius:20px;background:linear-gradient(135deg,#2d7ff9,#0b0d15 60%);display:grid;place-items:center;font-size:4rem;font-weight:900}.mini-card{position:absolute;right:18px;bottom:18px;width:190px;padding:18px;border:1px solid var(--line);border-radius:24px;background:#101115;transform:rotate(5deg)}.mini-card strong{display:block;margin-top:50px;font-size:1.4rem}.tool-badges{position:absolute;left:18px;bottom:24px;display:flex;gap:10px}.tool-badges span{padding:14px;border:1px solid var(--line);border-radius:18px;background:#121319}.light{background:#f5f5f7;color:#080808}.dark-muted{color:#5f616b}.cards-top{margin-top:55px}.white-card{background:#fff;color:#111;border-color:rgba(0,0,0,.08)}.white-card p{color:#666}.card h3{font-size:1.5rem}.card p{color:var(--muted);line-height:1.7}.white-card .check-list{color:#333}.check-list{display:grid;gap:10px;margin-top:24px}.icon{font-size:1.7rem}.about-grid{grid-template-columns:.9fr 1.1fr}.profile-card{min-height:560px;position:relative;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line)}.profile-card>img{position:absolute;width:100%;height:100%;object-fit:cover}.profile-gradient{position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.85))}.profile-copy{position:absolute;left:28px;right:28px;bottom:28px}.profile-copy h3{font-size:2rem;margin:10px 0 0}.impact{font-size:1.3rem;font-weight:800;margin-top:28px}.services{margin-top:55px}.service-card{min-height:250px;transition:.35s}.service-card:hover{transform:translateY(-7px);border-color:rgba(45,127,249,.45);box-shadow:0 25px 70px rgba(0,0,0,.35)}.service-icon{font-size:1.8rem}.service-card h3{margin:30px 0 10px}.surface{background:var(--surface)}.process-list{margin-top:60px}.process-row{display:grid;grid-template-columns:90px 1fr 1fr;gap:25px;padding:28px 0;border-top:1px solid var(--line);align-items:center}.process-row>span{color:var(--blue);font-weight:900}.process-row h3{font-size:2rem;margin:0}.process-row p{color:var(--muted);line-height:1.6;margin:0}.project-list{display:grid;gap:28px;margin-top:60px}.project{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;transition:.35s}.project:hover{transform:translateY(-6px);border-color:rgba(45,127,249,.4)}.project h3{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.04em;margin:16px 0}.project-img{aspect-ratio:4/3;border-radius:22px;overflow:hidden}.project-img img{width:100%;height:100%;object-fit:cover}.testimonial{height:100%;display:flex;flex-direction:column;justify-content:space-between;min-height:300px}.testimonial p{font-size:1.2rem}.testimonial small{color:var(--muted)}.stars{color:#ffd166;letter-spacing:.1em}.cta-section{min-height:80svh;display:grid;place-items:center;overflow:hidden}.cta-glow{left:35%;top:20%}.cta-title{margin-top:20px}.site-footer{border-top:1px solid var(--line);padding:64px 0 26px}.footer-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:start}.footer-brand{max-width:480px}.footer-brand strong{font-size:1.45rem}.footer-brand p{color:var(--muted);line-height:1.7;margin:18px 0 0}.footer-logo{width:auto;max-width:190px;height:58px;object-fit:contain}.footer-links{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted)}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line);margin-top:42px;padding-top:24px;color:var(--muted)}.footer-legal-row{display:flex;align-items:center;justify-content:space-between;gap:32px}.copyright-content{display:flex;align-items:center;gap:14px;min-height:44px}.copyright-image{width:auto;max-width:56px;height:44px;object-fit:contain}.maintained-by{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0;color:var(--muted)}.maintained-by span{font-size:.76rem;white-space:nowrap}.maintained-logo{display:block;width:auto;height:42px;max-width:180px;object-fit:contain}.case-page{padding-top:110px}.back-link{color:var(--muted)}.case-head{margin-top:70px}.case-head .display{margin-top:18px}.case-cover{position:relative;aspect-ratio:16/8;margin-top:50px;border-radius:30px;overflow:hidden;border:1px solid var(--line)}.case-cover img{width:100%;height:100%;object-fit:cover}.case-info{margin-top:40px}.case-info .card p{font-size:1.08rem}.case-reviews{margin-top:100px}.case-cta{margin-top:120px}.case-cta .btn{margin-top:30px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:none}.notice{padding:14px 18px;border-radius:14px;margin:16px 0}.notice.success{background:#16331f;border:1px solid #2c7040}.notice.error{background:#35191c;border:1px solid #713038;color:#ffaaaa}.feedback-page{min-height:100svh;background:radial-gradient(circle at 70% 0,rgba(45,127,249,.2),transparent 32%),#07080a;padding:55px 20px}.feedback-wrap{width:min(760px,100%);margin:auto}.feedback-copy{padding:90px 0 30px}.feedback-copy h1{font-size:clamp(2.8rem,8vw,5.7rem);line-height:.95;letter-spacing:-.06em;margin:20px 0}.feedback-copy h1 em{color:var(--blue);font-style:normal}.feedback-copy p,.feedback-wrap>small{color:var(--muted);line-height:1.7}.feedback-form{display:grid;gap:20px;background:#101116;border:1px solid var(--line);border-radius:28px;padding:clamp(22px,5vw,42px);margin:20px 0}.feedback-form label{display:grid;gap:9px;font-weight:750}.feedback-form input,.feedback-form textarea{width:100%;border:1px solid var(--line);background:#08090c;color:#fff;border-radius:12px;padding:13px 14px;outline:none}.feedback-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feedback-success{text-align:center;background:#101116;border:1px solid var(--line);border-radius:28px;padding:70px 30px;margin:30px 0}.feedback-success span{font-size:3rem;color:#79e99a}.feedback-success h2{font-size:2.3rem}.rating-select{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}.rating-select input{position:absolute;opacity:0;width:1px}.rating-select label{font-size:2rem;color:#555;cursor:pointer}.rating-select input:checked~label,.rating-select label:hover,.rating-select label:hover~label{color:#ffd166}.admin-logo{font-size:1.45rem;font-weight:950;letter-spacing:-.05em}.admin-login{min-height:100svh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 70% 10%,rgba(45,127,249,.18),transparent 35%),var(--bg)}.admin-login>div{width:min(520px,100%)}.admin-login h1{font-size:clamp(2.7rem,7vw,4.7rem);line-height:.96;letter-spacing:-.06em;margin:28px 0 16px}.admin-login>div>p,.admin-login>div>small{color:var(--muted)}.admin-shell{min-height:100svh;background:#08090b}.admin-side{position:fixed;inset:0 auto 0 0;width:270px;padding:28px 20px;background:#0d0e12;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.admin-user{display:grid;gap:4px;margin:38px 0 28px;padding:18px;border:1px solid var(--line);border-radius:18px}.admin-user small{color:var(--blue-soft);font-weight:800}.admin-user span,.admin-muted,.admin-card small{color:var(--muted)}.admin-side nav{display:grid;gap:6px}.admin-side nav a,.admin-logout{color:var(--muted);padding:13px 14px;border-radius:12px;font-weight:750}.admin-side nav a:hover,.admin-side nav a.active{background:rgba(45,127,249,.12);color:#fff}.admin-logout{margin-top:auto}.admin-main{margin-left:270px;padding:45px clamp(22px,5vw,70px);max-width:1500px}.admin-main>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px}.admin-main h1{font-size:clamp(2.2rem,5vw,4.5rem);letter-spacing:-.06em;margin:8px 0}.admin-main h2{font-size:2rem;letter-spacing:-.04em;margin-bottom:8px}.admin-card{background:#111218;border:1px solid var(--line);border-radius:22px;padding:24px}.admin-form{display:grid;gap:18px;margin-top:25px}.admin-form label{display:grid;gap:8px;font-size:.88rem;font-weight:750;color:#d7d7dd}.admin-form input,.admin-form textarea,.admin-form select,.password-reset input{width:100%;border:1px solid var(--line);background:#08090c;color:#fff;border-radius:12px;padding:13px 14px;outline:none}.grid-two{grid-template-columns:1fr 1fr}.full{grid-column:1/-1}.admin-stack{display:grid;gap:16px;margin-top:20px}.admin-card summary{cursor:pointer;display:flex;align-items:center;gap:10px;font-weight:850}.admin-card summary>div{display:grid;gap:5px}.project-form{border-top:1px solid var(--line);padding-top:22px}.public-link{display:flex;align-items:center;gap:8px;margin:20px 0;padding:12px;background:#08090c;border-radius:12px}.public-link code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--blue-soft);flex:1}.public-link button,.public-link a,.review-actions button,.user-actions button{border:1px solid var(--line);background:#161820;color:white;border-radius:10px;padding:9px 11px;cursor:pointer}.danger-btn{display:inline-flex;gap:7px;align-items:center;color:#ff8585!important;border:1px solid var(--line);background:#161820;border-radius:10px;padding:9px 11px;cursor:pointer}.inline-danger{margin-top:18px}.admin-message{position:fixed;right:24px;top:24px;z-index:100;background:#16331f;border:1px solid #2c7040;padding:14px 20px;border-radius:14px}.admin-message.error{background:#35191c;border-color:#713038}.review-head,.user-card{display:flex;justify-content:space-between;gap:18px;align-items:center}.review-head>div,.user-card>div:first-child{display:grid;gap:5px}.approved,.pending{font-size:.75rem;font-weight:900;text-transform:uppercase;padding:7px 10px;border-radius:99px}.approved{color:#8ff3aa;background:rgba(60,190,95,.13)}.pending{color:#ffd27a;background:rgba(255,180,50,.12)}.review .stars{margin-top:18px}.review-actions{display:flex;gap:10px;margin-top:18px}.review-actions form{margin:0}.user-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.user-actions form{margin:0}.password-reset{display:flex;gap:7px}.password-reset input{max-width:170px;padding:9px 11px}.admin-divider{border-top:1px solid var(--line);margin-top:8px;padding-top:24px}.admin-divider h3{margin:0}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus,.feedback-form input:focus,.feedback-form textarea:focus{border-color:var(--blue)}@media(max-width:860px){.two-col,.about-grid{grid-template-columns:1fr}.hero-art{min-height:480px}.grid.three{grid-template-columns:1fr}.project{grid-template-columns:1fr}.project-img{order:-1}.admin-side{position:relative;width:100%;height:auto}.admin-shell{display:block}.admin-side nav{grid-template-columns:repeat(2,1fr)}.admin-logout{margin-top:20px}.admin-main{margin-left:0;padding:30px 18px}.admin-main>header{align-items:flex-start}.grid-two,.feedback-grid{grid-template-columns:1fr}.full{grid-column:auto}.review-head,.user-card{align-items:flex-start}.user-card{flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-links{flex-direction:column;gap:14px}.footer-legal-row{flex-direction:column;align-items:flex-start;gap:20px}.maintained-by{justify-content:flex-start}.desktop-nav,.desktop-cta{display:none}.menu-btn{display:block}}@media(max-width:780px){.section{padding:94px 0}.container{width:min(100% - 26px,1180px)}.display{font-size:clamp(3rem,18vw,5.4rem)}.title{font-size:clamp(2.3rem,12vw,4rem)}.grid.two{grid-template-columns:1fr}.process-row{grid-template-columns:55px 1fr}.process-row p{grid-column:2}.brand-stage{font-size:3rem;height:260px}.browser-card{inset:40px 20px 65px}.site-footer{padding-top:48px}.copyright-content{align-items:flex-start}.maintained-by{width:100%}}@media(max-width:520px){.hero-art{min-height:420px}.brand-stage{font-size:2.4rem;height:220px}.mini-card{width:160px}.maintained-by{align-items:flex-start;flex-direction:column;gap:8px}.maintained-logo{height:38px;max-width:165px}.password-reset{width:100%;flex-direction:column}.password-reset input{max-width:none}}
/* VIQTO update 2026-08-10: cases mosaic */
.cases-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:60px}.case-tile{position:relative;display:block;min-width:0;aspect-ratio:1/1;border-radius:26px;overflow:hidden;border:1px solid var(--line);background:var(--surface2);isolation:isolate;transition:transform .38s cubic-bezier(.22,1,.36,1),border-color .38s ease,box-shadow .38s ease}.case-tile-featured{grid-column:1/-1;aspect-ratio:2/1;max-height:590px}.case-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .45s ease}.case-tile-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.82) 100%);opacity:.82;transition:opacity .35s ease}.case-tile-copy{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;transform:translateY(4px);transition:transform .35s ease}.case-tile-category{display:block;margin-bottom:7px;color:#c9dfff;font-size:.72rem;line-height:1.2;letter-spacing:.14em;text-transform:uppercase;font-weight:850}.case-tile h3{margin:0;color:#fff;font-size:clamp(1.3rem,2.2vw,2.15rem);line-height:1.05;letter-spacing:-.035em;text-shadow:0 2px 18px rgba(0,0,0,.28)}.case-tile-featured h3{font-size:clamp(2rem,4.5vw,4.3rem)}.case-tile-link{display:inline-block;max-height:0;margin-top:0;opacity:0;color:#fff;font-size:.86rem;font-weight:800;overflow:hidden;transition:max-height .35s ease,margin-top .35s ease,opacity .35s ease}.case-tile:hover{transform:translateY(-5px);border-color:rgba(45,127,249,.46);box-shadow:0 22px 55px rgba(0,0,0,.32)}.case-tile:hover img{transform:scale(1.035)}.case-tile:hover .case-tile-shade{opacity:1}.case-tile:hover .case-tile-copy{transform:none}.case-tile:hover .case-tile-link{max-height:30px;margin-top:12px;opacity:.95}@media(max-width:860px){.cases-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.case-tile-featured{grid-column:1/-1;aspect-ratio:16/9}.case-tile:nth-child(n+4){grid-column:auto}}@media(max-width:600px){.cases-showcase{grid-template-columns:1fr;gap:14px;margin-top:38px}.case-tile,.case-tile-featured{grid-column:auto;aspect-ratio:4/3;border-radius:20px}.case-tile-copy{left:18px;right:18px;bottom:17px}.case-tile h3,.case-tile-featured h3{font-size:clamp(1.5rem,8vw,2.25rem)}.case-tile-link{max-height:30px;margin-top:9px;opacity:.9}}
.maintained-by-link{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.maintained-by-link:hover{color:#fff}.admin-card .grid-two{display:grid;gap:18px;margin-top:16px}
@media(max-width:520px){.maintained-by-link{align-items:flex-start;flex-direction:column;gap:8px}}

/* PATCH: home limitada a 4 cases + pagina com todos os cases */
.cases-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.all-cases-link{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;margin-bottom:8px;padding:12px 0;color:#fff;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.22);transition:color .25s ease,border-color .25s ease,gap .25s ease}.all-cases-link span{color:var(--blue);font-size:1.15em}.all-cases-link:hover{color:var(--blue);border-color:var(--blue);gap:15px}.cases-page{padding-top:150px;min-height:75vh}.cases-page-head{max-width:800px}.cases-back{display:inline-flex;margin-bottom:32px;color:var(--muted);font-weight:750;text-decoration:none}.cases-back:hover{color:#fff}.all-cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:56px}.all-cases-grid .case-tile{aspect-ratio:1/1}.all-cases-grid .case-tile h3{font-size:clamp(1.3rem,2.2vw,2.15rem)}
@media(max-width:860px){.all-cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cases-heading-row{align-items:flex-start;flex-direction:column;gap:12px}.all-cases-link{align-self:flex-end;margin-top:-8px}.cases-page{padding-top:120px}.all-cases-grid{grid-template-columns:1fr;gap:14px;margin-top:38px}.all-cases-grid .case-tile{aspect-ratio:4/3}}


/* PATCH 2026-08-14 — imagens gerenciáveis pelo Admin/TI */
.hero-custom-image{position:relative;width:100%;min-height:480px;border-radius:30px;overflow:hidden;background:#0d0f14;border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 80px rgba(0,0,0,.28)}
.hero-custom-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.12))}
.hero-custom-image img{width:100%;height:100%;min-height:480px;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.hero-custom-image:hover img{transform:scale(1.018)}
.admin-image-preview{display:flex;margin-top:12px;padding:10px;width:max-content;max-width:100%;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035)}
.admin-image-preview img{display:block;max-width:260px;max-height:150px;width:auto;height:auto;object-fit:contain;border-radius:10px}
.admin-image-preview.case-image-preview img{max-width:360px;max-height:220px;object-fit:cover;aspect-ratio:16/10}
.admin-image-note{display:flex;gap:8px;flex-direction:column;padding:16px;border-radius:14px;background:rgba(45,127,249,.08);border:1px solid rgba(45,127,249,.2)}
.admin-image-note span{font-size:13px;line-height:1.6;opacity:.72}
@media(max-width:760px){.hero-custom-image,.hero-custom-image img{min-height:340px}.hero-custom-image{border-radius:22px}.admin-image-preview{width:100%}.admin-image-preview img,.admin-image-preview.case-image-preview img{max-width:100%;width:100%;height:auto}}


/* PATCH 2026-08-14 — galeria de imagens internas dos cases */
.case-gallery-section{margin-top:58px}.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.case-gallery-item{position:relative;margin:0;min-height:320px;aspect-ratio:4/3;border-radius:26px;overflow:hidden;border:1px solid var(--line);background:var(--surface2)}.case-gallery-item:nth-child(3n+1){grid-column:1/-1;aspect-ratio:16/8}.case-gallery-item img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s cubic-bezier(.22,1,.36,1)}.case-gallery-item:hover img{transform:scale(1.018)}
.admin-case-gallery{margin-top:24px;padding-top:4px}.admin-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.admin-gallery-item{padding:10px;border:1px solid var(--line);border-radius:16px;background:#08090c}.admin-gallery-item img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover;border-radius:11px;margin-bottom:10px}.admin-gallery-item form{margin:0}.admin-gallery-item .danger-btn{width:100%;justify-content:center}
@media(max-width:860px){.admin-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.case-gallery-grid{grid-template-columns:1fr;gap:14px}.case-gallery-item,.case-gallery-item:nth-child(3n+1){grid-column:auto;aspect-ratio:4/3;min-height:0;border-radius:20px}.case-gallery-section{margin-top:38px}.admin-gallery-grid{grid-template-columns:1fr}}


/* PATCH 2026-08-14 — skills + cards de cases com texto abaixo da imagem */
.skills-block{margin-top:64px;padding-top:42px;border-top:1px solid var(--line)}
.skills-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.skills-heading h3{margin:0;max-width:620px;font-size:clamp(1.45rem,3vw,2.5rem);line-height:1.05;letter-spacing:-.035em}
.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 34px}
.skill-row{padding:18px 0}
.skill-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.skill-meta strong{font-size:1rem}.skill-meta span{color:var(--muted);font-size:.78rem;font-weight:800}
.skill-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.skill-segment{height:12px;border-radius:5px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);box-shadow:inset 0 1px rgba(255,255,255,.04)}.skill-segment.filled{border-color:rgba(45,127,249,.72);background:linear-gradient(180deg,var(--blue-soft),var(--blue));box-shadow:0 6px 18px rgba(45,127,249,.18)}

/* Cards da home e da página Todos os cases: imagem acima, texto abaixo */
.cases-showcase,.all-cases-grid{align-items:stretch}
.case-tile,.case-tile-featured,.all-cases-grid .case-tile{display:grid;grid-template-rows:minmax(0,1fr) auto;aspect-ratio:auto;min-height:430px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));overflow:hidden}
.case-tile-featured{min-height:610px;max-height:none}
.case-tile img{position:relative;inset:auto;width:100%;height:100%;min-height:0;object-fit:cover;grid-row:1;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.case-tile-shade{display:none}
.case-tile-copy{position:relative;inset:auto;left:auto;right:auto;bottom:auto;grid-row:2;padding:19px 22px 21px;transform:none;background:rgba(10,10,12,.96);border-top:1px solid var(--line)}
.case-tile-category{margin-bottom:6px}.case-tile h3,.case-tile-featured h3{font-size:clamp(1.15rem,2vw,1.75rem);text-shadow:none}.case-tile-link{max-height:30px;margin-top:9px;opacity:.72}.case-tile:hover .case-tile-link{margin-top:9px;opacity:1}.case-tile:hover .case-tile-copy{transform:none}
.case-tile-featured{grid-template-rows:minmax(0,1fr) auto}.case-tile-featured .case-tile-copy{padding:22px 26px 24px}.case-tile-featured h3{font-size:clamp(1.45rem,2.5vw,2.25rem)}
.case-info-below{margin-top:36px}.case-info-below .card{padding:24px;min-height:170px}.case-info-below p{margin-bottom:0;color:var(--muted);line-height:1.7}
.case-cover{max-width:1080px;margin-left:auto;margin-right:auto}.case-gallery-grid{max-width:1080px;margin-left:auto;margin-right:auto}
@media(max-width:860px){.skills-grid{grid-template-columns:1fr}.case-tile-featured{min-height:520px}.case-tile,.all-cases-grid .case-tile{min-height:390px}.case-info-below{grid-template-columns:1fr}}
@media(max-width:600px){.skills-block{margin-top:44px;padding-top:32px}.skills-heading{align-items:flex-start;flex-direction:column}.case-tile,.case-tile-featured,.all-cases-grid .case-tile{min-height:360px}.case-tile-copy,.case-tile-featured .case-tile-copy{padding:17px 18px 19px}.case-tile h3,.case-tile-featured h3{font-size:1.35rem}.skill-segment{height:11px}}


/* PATCH 2026-08-14 — logos dos softwares + ajuste de encaixe das imagens dos cases */
.skill-name-wrap{display:flex;align-items:center;gap:13px;min-width:0}.skill-logo{width:42px;height:42px;flex:0 0 42px;object-fit:contain;border-radius:11px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.24))}.skill-meta strong{font-size:1.03rem}.skill-meter{margin-left:55px}.skill-segment{height:14px;border-radius:4px}.software-logo-preview{width:74px;height:74px}.software-logo-preview img{width:58px;height:58px;object-fit:contain}
/* Cards: imagem inteira visível, com proporção consistente e texto mais compacto */
.case-tile,.case-tile-featured,.all-cases-grid .case-tile{grid-template-rows:auto auto;min-height:0}.case-tile img{height:auto;aspect-ratio:16/10;object-fit:contain;padding:10px;background:linear-gradient(145deg,#0e0f13,#08090c)}.case-tile-featured img{aspect-ratio:16/8.5}.case-tile-copy{padding:15px 18px 17px}.case-tile-featured .case-tile-copy{padding:17px 20px 19px}.case-tile h3,.case-tile-featured h3{font-size:clamp(1.08rem,1.65vw,1.55rem)}.case-tile-category{font-size:.66rem}.case-tile-link{font-size:.8rem;margin-top:7px}
/* Página individual do case: não corta artes, mockups e peças gráficas */
.case-cover{aspect-ratio:auto;min-height:0;max-width:1080px;background:linear-gradient(145deg,#0d0e12,#07080a);padding:12px}.case-cover img{display:block;width:100%;height:auto;max-height:780px;object-fit:contain;border-radius:20px}.case-gallery-item,.case-gallery-item:nth-child(3n+1){aspect-ratio:auto;min-height:0;background:linear-gradient(145deg,#0d0e12,#07080a);padding:10px}.case-gallery-item img{width:100%;height:auto;max-height:760px;object-fit:contain;border-radius:17px}.case-gallery-item:hover img{transform:scale(1.01)}
@media(max-width:600px){.skill-logo{width:38px;height:38px;flex-basis:38px}.skill-meter{margin-left:51px}.skill-segment{height:12px}.case-tile img,.case-tile-featured img,.all-cases-grid .case-tile img{aspect-ratio:4/3;padding:8px}.case-cover{padding:8px;border-radius:20px}.case-cover img{border-radius:14px}.case-gallery-item{padding:7px}.case-gallery-item img{border-radius:13px}}


/* PATCH 14/08/2026 — imagens internas dos cases mais compactas */
.case-cover{
  max-width:920px;
  padding:10px;
}
.case-cover img{
  width:100%;
  height:auto;
  max-height:620px;
  object-fit:contain;
}
.case-gallery-grid{
  max-width:920px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.case-gallery-item,
.case-gallery-item:nth-child(3n+1){
  grid-column:auto;
  min-height:0;
  aspect-ratio:4/3;
  padding:8px;
  border-radius:22px;
}
.case-gallery-item img{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:15px;
}
@media(max-width:760px){
  .case-cover{max-width:100%;padding:7px}
  .case-cover img{max-height:520px}
  .case-gallery-grid{max-width:100%;grid-template-columns:1fr;gap:12px}
  .case-gallery-item,.case-gallery-item:nth-child(3n+1){aspect-ratio:auto;padding:7px}
  .case-gallery-item img{height:auto;max-height:520px}
}


/* =========================================================
   PATCH VIQTO 14/08/2026
   CASE: CAPA PRINCIPAL SEPARADA + GALERIA 3 COLUNAS
   ========================================================= */

/* A capa cadastrada no campo "Imagem principal" é a única imagem de destaque. */
.case-cover{
  width:100%;
  max-width:920px;
  margin:36px auto 0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(145deg,#0d0e12,#07080a);
  overflow:hidden;
}

.case-cover img{
  display:block;
  width:100%;
  height:auto;
  max-height:620px;
  object-fit:contain;
  object-position:center;
  border-radius:18px;
}

/* Todas as imagens adicionais têm exatamente o mesmo peso visual. */
.case-gallery-section{
  width:100%;
  max-width:920px;
  margin:14px auto 0;
}

.case-gallery-grid{
  width:100%;
  max-width:none;
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

/* Remove qualquer regra anterior que destacava a primeira imagem da galeria. */
.case-gallery-grid .case-gallery-item,
.case-gallery-grid .case-gallery-item:first-child,
.case-gallery-grid .case-gallery-item:nth-child(3n+1){
  grid-column:auto !important;
  width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:4 / 3 !important;
  margin:0;
  padding:7px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(145deg,#0d0e12,#07080a);
  overflow:hidden;
}

.case-gallery-grid .case-gallery-item img,
.case-gallery-grid .case-gallery-item:first-child img{
  display:block;
  width:100%;
  height:100% !important;
  max-height:none !important;
  object-fit:contain;
  object-position:center;
  border-radius:14px;
}

/* Tablet */
@media (max-width:860px){
  .case-gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Celular */
@media (max-width:600px){
  .case-cover{
    margin-top:26px;
    padding:7px;
    border-radius:20px;
  }

  .case-cover img{
    max-height:520px;
    border-radius:14px;
  }

  .case-gallery-section{
    margin-top:12px;
  }

  .case-gallery-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .case-gallery-grid .case-gallery-item,
  .case-gallery-grid .case-gallery-item:first-child,
  .case-gallery-grid .case-gallery-item:nth-child(3n+1){
    aspect-ratio:auto !important;
    padding:7px;
    border-radius:18px;
  }

  .case-gallery-grid .case-gallery-item img,
  .case-gallery-grid .case-gallery-item:first-child img{
    width:100%;
    height:auto !important;
    max-height:520px !important;
    object-fit:contain;
  }
}
