:root{--bg:#fff;--bg2:#f8f9ff;--card:#fff;--text:#344054;--heading:#344054;--muted:#667085;--line:#e9e7f2;--primary:#7a5af8;--primary2:#6938ef;--pink:#ff58d5;--shadow:0 24px 60px rgba(16,24,40,.08)}[data-theme=dark]{--bg:#171f2e;--bg2:#1a2231;--card:#202a3b;--text:#d0d5dd;--heading:#f2f4f7;--muted:#98a2b3;--line:#344054;--shadow:0 24px 60px rgba(0,0,0,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.65}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-wrap{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:21px;color:var(--heading)}.brand>span:last-child>span{color:var(--primary)}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--pink));display:grid;place-items:center;color:#fff}.desktop-nav{display:flex;gap:30px;font-size:14px;font-weight:500}.desktop-nav a:hover{color:var(--primary)}.nav-actions{display:flex;align-items:center;gap:10px}.theme-toggle,.menu-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--card);color:var(--heading);font-size:18px}.menu-toggle{display:none}.mobile-nav{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--primary);color:#fff;border:0;border-radius:999px;padding:14px 24px;font-weight:600;cursor:pointer;transition:.2s}.btn:hover{background:var(--primary2);transform:translateY(-1px)}.btn-sm{padding:10px 18px;font-size:13px}.btn.ghost{background:var(--card);color:var(--heading);border:1px solid var(--line)}.hero{position:relative;overflow:hidden;padding:82px 0 0}.hero-inner{text-align:center;position:relative;z-index:2}.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-size:13px;font-weight:700;letter-spacing:.03em}.hero h1{max-width:820px;margin:18px auto 18px;font-size:clamp(42px,6vw,68px);line-height:1.08;letter-spacing:-.04em;color:var(--heading)}h2 span,.hero h1 span{background:linear-gradient(90deg,var(--primary),var(--pink));-webkit-background-clip:text;color:transparent}.hero-lead{max-width:680px;margin:0 auto;color:var(--muted);font-size:17px}.hero-actions{display:flex;justify-content:center;gap:12px;margin:32px 0 56px}.hero-frame{max-width:1000px;margin:auto;padding:17px;border:1px solid rgba(255,255,255,.5);border-radius:32px;background:rgba(255,255,255,.16);box-shadow:var(--shadow);position:relative}.hero-frame:before{content:"";position:absolute;inset:-120px 8% -30px;background:linear-gradient(90deg,rgba(255,88,213,.25),rgba(78,110,255,.3));filter:blur(70px);z-index:-1}.hero-frame-inner{border-radius:20px;overflow:hidden;background:var(--card);min-height:420px;display:grid;place-items:center}.hero-frame-inner img{max-height:520px;object-fit:contain}.hero-orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.22}.orb-a{width:450px;height:450px;background:#4e6eff;left:55%;top:260px}.orb-b{width:400px;height:400px;background:#ff58d5;left:20%;top:250px}.logo-strip{min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:28px;opacity:.72}.logo-strip span{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.logo-strip img{max-width:100px;max-height:44px;object-fit:contain;filter:grayscale(1)}[data-theme=dark] .logo-strip img{filter:grayscale(1) brightness(1.5)}.section{padding:105px 0}.section.alt{background:var(--bg2)}.split,.showcase,.contact-box,.faq-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.section h2{font-size:clamp(34px,4vw,48px);line-height:1.15;letter-spacing:-.035em;color:var(--heading);margin:12px 0 18px}.section p{color:var(--muted)}.visual-card,.showcase-img{position:relative;border-radius:28px;padding:18px;background:linear-gradient(135deg,rgba(122,90,248,.18),rgba(255,88,213,.12));border:1px solid var(--line)}.visual-card>img,.showcase-img img{border-radius:20px;width:100%}.mini-card{position:absolute;right:-20px;bottom:28px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:14px 18px;display:flex;gap:12px;align-items:center}.mini-card i{font-size:24px;color:var(--primary)}.mini-card small,.check-list small,.person small{display:block;color:var(--muted)}.check-list{display:grid;gap:18px;margin-top:28px}.check-list>div{display:flex;gap:13px}.check-list i{color:var(--primary);font-size:20px}.section-head{text-align:center;max-width:760px;margin:0 auto 52px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.feature-card,.testimonial,.project-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 12px 40px rgba(16,24,40,.03);transition:.2s}.feature-card:hover,.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.feature-card .icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--primary),rgba(122,90,248,.12));color:#fff;font-size:23px;margin-bottom:28px}.feature-card h3,.project-card h3{color:var(--heading);margin:0 0 8px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.pill-row span{padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:13px}.project-tools{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.project-tools input{width:330px;max-width:100%;border:1px solid var(--line);background:var(--card);color:var(--text);padding:13px 18px;border-radius:999px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:999px;padding:10px 14px;cursor:pointer}.filters button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.project-card{padding:0;overflow:hidden}.project-image{height:310px;background:var(--bg2);position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:16px;left:16px;background:var(--primary);color:#fff;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700}.project-body{padding:24px}.project-body small{color:var(--primary);font-weight:600}.project-desc{color:var(--muted);font-size:14px;max-height:72px;overflow:hidden}.project-actions{margin-top:20px}.empty-state{grid-column:1/-1;padding:30px;border:1px dashed var(--line);border-radius:16px;text-align:center}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial .quote{font-size:52px;color:var(--primary);line-height:1}.person{display:flex;align-items:center;gap:12px;margin-top:24px}.person img{width:48px;height:48px;border-radius:50%;object-fit:cover}.newsletter{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:linear-gradient(120deg,rgba(122,90,248,.08),rgba(255,88,213,.08));border:1px solid var(--line);border-radius:28px;padding:48px}.newsletter form{display:grid;grid-template-columns:1fr auto;gap:10px}.newsletter input,.contact-box input,.contact-box textarea{width:100%;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:12px;padding:14px 15px;outline:none}.newsletter input:focus,.contact-box input:focus,.contact-box textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(122,90,248,.1)}#newsletterMessage{grid-column:1/-1;font-size:13px}.faq-layout{align-items:start}.faq-list{display:grid;gap:12px}.faq-item{border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden}.faq-item button{width:100%;padding:20px;border:0;background:transparent;color:var(--heading);font-weight:600;text-align:left;display:flex;justify-content:space-between;gap:20px}.faq-answer{display:none;padding:0 20px 18px}.faq-item.open .faq-answer{display:block}.faq-item.open button i{transform:rotate(45deg)}.contact-box{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:48px;box-shadow:var(--shadow)}.contact-line{display:flex;align-items:center;gap:14px;margin-top:25px}.contact-line i{width:46px;height:46px;display:grid;place-items:center;background:#25d366;color:#fff;border-radius:50%;font-size:21px}.contact-line small{display:block;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{font-size:13px;font-weight:600}.form-grid label.full{grid-column:1/-1}.form-grid input,.form-grid textarea{margin-top:7px}.contact-box form>.btn{margin-top:16px}.footer{padding:70px 0 24px;background:var(--bg2);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-grid p{max-width:440px;color:var(--muted)}.footer-grid h4{color:var(--heading)}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;margin-top:45px;color:var(--muted);font-size:13px}.wa-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:27px;box-shadow:0 10px 30px rgba(0,0,0,.18);z-index:90}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav.open{display:flex;flex-direction:column;padding:10px 20px 20px;border-top:1px solid var(--line)}.mobile-nav a{padding:10px 0}.split,.showcase,.contact-box,.faq-layout,.newsletter{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:1fr}.projects{grid-template-columns:1fr}.project-tools{flex-direction:column}.logo-strip{overflow:auto;justify-content:flex-start}.logo-strip img{min-width:80px}.mini-card{right:10px}.contact-box{padding:30px}.hero-frame-inner{min-height:280px}}
@media(max-width:600px){.wrap{width:min(100% - 28px,1180px)}.nav-actions>.btn{display:none}.hero{padding-top:58px}.hero-actions{flex-direction:column;align-items:stretch}.section{padding:72px 0}.feature-grid{grid-template-columns:1fr}.form-grid,.newsletter form{grid-template-columns:1fr}.newsletter{padding:28px}.project-image{height:230px}.footer-grid{grid-template-columns:1fr}.section h2{font-size:34px}}

/* ===== Ajustes inspirados no AI Starter Kit ===== */
.nav-pill{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px;gap:2px;box-shadow:0 8px 24px rgba(16,24,40,.04)}
.nav-pill a{padding:9px 16px;border-radius:999px;color:var(--muted);transition:.2s}
.nav-pill a:hover,.nav-pill a.active{background:var(--bg2);color:var(--heading)}
.nav-login{font-size:14px;font-weight:600;color:var(--heading);padding:9px 8px}
.hero .eyebrow{border:1px solid transparent;border-radius:999px;padding:10px 20px;background:linear-gradient(var(--bg),var(--bg)) padding-box,linear-gradient(90deg,#ff58d5,#4e6eff) border-box;color:var(--heading)}
.code-float{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 22px;border-radius:999px;font-weight:600;border:1px solid var(--line);box-shadow:0 14px 35px rgba(16,24,40,.08);animation:awaFloat 4.5s ease-in-out infinite;backdrop-filter:blur(12px)}
.code-float i{font-size:19px}.code-php{left:4%;top:190px;color:#8b6cff;background:color-mix(in srgb,#7a5af8 13%,var(--card))}.code-java{right:5%;top:270px;color:#ff725e;background:color-mix(in srgb,#ff725e 12%,var(--card));animation-delay:-1s}.code-sql{left:9%;top:545px;color:#27b5ff;background:color-mix(in srgb,#27b5ff 12%,var(--card));animation-delay:-2s}.code-js{right:8%;top:575px;color:#f4ae2b;background:color-mix(in srgb,#f4ae2b 12%,var(--card));animation-delay:-3s}@keyframes awaFloat{50%{transform:translateY(-10px)}}
.company-band{margin-top:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2)}.company-row{padding:30px 0}.company-label{display:block;text-align:center;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:24px}.company-logos{display:flex;align-items:center;justify-content:space-around;gap:38px;flex-wrap:wrap}.company-logos img{width:auto;max-width:115px;height:42px;object-fit:contain;filter:none;opacity:.82}.company-logos img:hover{opacity:1;transform:translateY(-2px)}
[data-theme=dark] .company-logos img{filter:none}.visual-card img[src*="codline"],[data-theme=light] .showcase-img img{opacity:1}.visual-card:has(img[src*="codline"]){background:linear-gradient(135deg,#20283a,#101726)}
.arsenal-tabs{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--card);border:1px solid var(--line);padding:7px;border-radius:999px;margin:0 auto 36px;overflow:auto}.arsenal-tabs button{white-space:nowrap;flex:1;border:0;background:transparent;color:var(--muted);padding:13px 18px;border-radius:999px;font-weight:600;cursor:pointer}.arsenal-tabs button i{margin-right:8px;color:var(--primary)}.arsenal-tabs button.active{background:color-mix(in srgb,var(--primary) 15%,var(--card));color:var(--heading);box-shadow:inset 0 0 0 2px var(--heading)}
.arsenal-stage{display:grid;grid-template-columns:220px 1fr;border-radius:32px;padding:18px;background:linear-gradient(125deg,rgba(255,88,213,.25),rgba(78,110,255,.28));box-shadow:var(--shadow)}.arsenal-side,.arsenal-content{background:#121a2b;color:#d0d5dd}.arsenal-side{border-radius:20px 0 0 20px;padding:26px 20px}.arsenal-side>span{font-size:11px;color:#98a2b3}.arsenal-side>b{display:block;color:#fff;margin:8px 0 4px}.arsenal-side small{color:#667085}.stage-nav{margin-top:22px;padding:11px 12px;border-radius:10px;background:#202a3b;font-size:12px}.stage-nav i{margin-right:8px;color:#8b6cff}.arsenal-content{border-radius:0 20px 20px 0;padding:20px}.stage-top{display:flex;justify-content:space-between;border-bottom:1px solid #263248;padding:0 2px 16px;margin-bottom:20px;font-size:13px}.stage-dots{display:flex;gap:5px}.stage-dots i{width:7px;height:7px;border-radius:50%;background:#46516a}.arsenal-content .projects{grid-template-columns:repeat(2,minmax(0,1fr));max-height:620px;overflow:auto;padding:4px}.arsenal-content .project-card{background:#1d2739;border-color:#344054;color:#d0d5dd}.arsenal-content .project-card h3{color:#fff}.arsenal-content .project-image{height:210px;background:#101828}.arsenal-content .project-body{padding:18px}.arsenal-content .project-desc,.arsenal-content .project-body p{color:#98a2b3}
.benefits .section-head{max-width:620px}.benefit-mosaic{max-width:980px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}.benefit-card{position:relative;min-height:390px;border-radius:24px;overflow:hidden;padding:34px;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.benefit-card>div{position:relative;z-index:2;max-width:58%}.benefit-card span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18);font-size:12px}.benefit-card h3{font-size:23px;line-height:1.15;margin:18px 0 12px}.benefit-card p{color:rgba(255,255,255,.78);font-size:13px}.benefit-card em,.benefit-card a{display:inline-flex;margin-top:18px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2);padding:8px 12px;border-radius:999px;font-size:11px;font-style:normal}.benefit-card img{position:absolute;right:-5%;bottom:-4%;width:52%;height:65%;object-fit:cover;border-radius:26px 0 0 0;mix-blend-mode:screen;opacity:.9}.benefit-purple{background:linear-gradient(145deg,#7955f7,#5d38df)}.benefit-cyan{background:linear-gradient(145deg,#49b9db,#329ac7)}.benefit-wide{grid-column:1/-1;min-height:280px;background:linear-gradient(125deg,#3d127c,#6a2ac7)}.benefit-wide>div{max-width:52%}.benefit-wide img{width:44%;height:95%;object-fit:contain;mix-blend-mode:screen}
@media(max-width:1100px){.code-float{display:none}.desktop-nav{gap:0}.nav-pill a{padding:8px 10px}.arsenal-stage{grid-template-columns:180px 1fr}}
@media(max-width:900px){.nav-login{display:none}.arsenal-stage{grid-template-columns:1fr}.arsenal-side{display:none}.arsenal-content{border-radius:20px}.arsenal-content .projects{grid-template-columns:1fr;max-height:none}.benefit-mosaic{grid-template-columns:1fr}.benefit-wide{grid-column:auto}.benefit-card>div,.benefit-wide>div{max-width:70%}}
@media(max-width:600px){.arsenal-tabs{justify-content:flex-start}.arsenal-tabs button{flex:0 0 auto}.arsenal-stage{padding:10px;border-radius:22px}.arsenal-content{padding:12px}.benefit-card{min-height:420px;padding:26px}.benefit-card>div,.benefit-wide>div{max-width:100%}.benefit-card img{opacity:.22;width:75%;height:55%}.company-logos{gap:24px}.company-logos img{max-width:90px;height:34px}}

/* =========================================================
   V3 — ajustes fiéis ao AI Starter Kit
   ========================================================= */
.hero-actions .video-btn{padding:6px 18px 6px 6px;gap:12px;background:color-mix(in srgb,var(--card) 92%,#7a5af8 8%);border-color:var(--line)}
.hero-actions .video-btn .play-bubble{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8d79ff,#725cff);color:#fff;box-shadow:0 8px 25px rgba(114,92,255,.28);font-size:19px;flex:0 0 auto}
.hero-actions .video-btn:hover .play-bubble{transform:scale(1.06)}

.company-band{position:relative;overflow:hidden;margin-top:0;border-top:1px solid rgba(255,255,255,.06);border-bottom:0;background:linear-gradient(112deg,#4b3a9e 0%,#725cff 48%,#744df1 100%);isolation:isolate}
.company-band:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 28%,rgba(255,255,255,.10),transparent 30%),radial-gradient(circle at 85% 70%,rgba(175,105,255,.22),transparent 34%);z-index:-2}
.company-glow{position:absolute;border-radius:50%;filter:blur(85px);opacity:.48;z-index:-1}.company-glow-a{width:370px;height:220px;background:#d856e8;left:-120px;top:-60px}.company-glow-b{width:420px;height:260px;background:#6d5cff;right:-110px;bottom:-100px}
.company-row{padding:54px 0 62px}.company-label{color:rgba(255,255,255,.58);font-size:17px;text-transform:none;letter-spacing:0;font-weight:600;margin-bottom:38px}
.company-logos{display:flex;align-items:center;justify-content:center;gap:52px 64px;flex-wrap:wrap}
.company-logos img{width:auto;max-width:125px;height:42px;object-fit:contain;filter:grayscale(1) brightness(4);opacity:.52;transition:.2s}
.company-logos img:hover{filter:grayscale(0) brightness(1);opacity:1;transform:translateY(-2px)}
[data-theme=light] .company-band .company-logos img,[data-theme=dark] .company-band .company-logos img{filter:grayscale(1) brightness(4)}
[data-theme=light] .company-band .company-logos img:hover,[data-theme=dark] .company-band .company-logos img:hover{filter:grayscale(0) brightness(1)}

.benefits{background:#111a2a;color:#fff}.benefits .section-kicker{color:#9b87ff}.benefits .section-head h2{color:#fff}.benefits .section-head p{color:rgba(255,255,255,.55)}
.original-benefits{max-width:1008px;grid-template-columns:1fr 1fr;gap:32px}
.original-benefits .benefit-card{min-height:505px;padding:48px 48px 0;border-radius:20px;justify-content:flex-start;overflow:hidden}
.original-benefits .benefit-copy{max-width:100%;position:relative;z-index:3}
.original-benefits .benefit-card h3{font-size:30px;line-height:1.18;margin:0 0 15px;color:#fff}
.original-benefits .benefit-card p{font-size:15px;line-height:1.55;color:rgba(255,255,255,.72);max-width:390px}
.original-benefits .benefit-card em,.original-benefits .benefit-card a{position:relative;z-index:4}
.original-benefits .benefit-art{position:absolute;z-index:2;mix-blend-mode:normal;opacity:1;border-radius:0;object-fit:contain}
.original-benefits .benefit-purple{background:linear-gradient(97deg,#725cff 0%,#8258ff 100%)}
.original-benefits .benefit-purple .benefit-art{width:78%;height:48%;right:-2%;bottom:0}
.original-benefits .benefit-cyan{background:linear-gradient(216deg,#a2e4e4 0%,#1c9ef6 100%)}
.original-benefits .benefit-cyan .benefit-art{width:72%;height:52%;right:3%;bottom:0}
.original-benefits .benefit-wide{grid-column:1/-1;min-height:330px;padding:48px;background:linear-gradient(100deg,#3c0d78 0%,#6827bf 100%);display:block}
.original-benefits .benefit-wide .benefit-copy{max-width:50%}
.original-benefits .benefit-wide .benefit-art{width:42%;height:92%;right:4%;bottom:0}
.original-benefits .benefit-blur{position:absolute;z-index:1;right:0;top:0;width:45%;height:100%;object-fit:cover;opacity:.38;mix-blend-mode:screen}

.testimonials-section{background:var(--bg)}
.original-testimonials{grid-template-columns:repeat(3,1fr);gap:28px;max-width:1152px;margin:auto}
.original-testimonials .testimonial{padding:8px;background:color-mix(in srgb,var(--card) 88%,var(--bg2) 12%);border:1px solid var(--line);border-radius:20px;box-shadow:none}
.testimonial-head{display:flex;align-items:center;gap:14px;padding:12px 14px;background:color-mix(in srgb,var(--card) 94%,transparent);border-radius:16px;margin-bottom:12px}
.testimonial-head img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--card);box-shadow:0 8px 20px rgba(0,0,0,.08);flex:0 0 auto}
.testimonial-head b{display:block;color:var(--heading);font-size:16px}.testimonial-head small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.testimonial-body{padding:20px;border-radius:16px;background:color-mix(in srgb,var(--card) 94%,transparent);min-height:140px}
.testimonial-body p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}

@media(max-width:900px){.company-row{padding:42px 0 48px}.company-label{font-size:15px}.company-logos{gap:34px}.original-testimonials{grid-template-columns:repeat(2,1fr)}.original-benefits{grid-template-columns:1fr}.original-benefits .benefit-wide{grid-column:auto}.original-benefits .benefit-wide .benefit-copy{max-width:62%}}
@media(max-width:600px){.company-logos img{max-width:96px;height:34px}.company-label{margin-bottom:28px}.original-benefits .benefit-card{min-height:470px;padding:32px 28px 0}.original-benefits .benefit-card h3{font-size:25px}.original-benefits .benefit-wide{padding:32px 28px;min-height:460px}.original-benefits .benefit-wide .benefit-copy{max-width:100%}.original-benefits .benefit-wide .benefit-art{width:80%;height:46%;right:-8%;bottom:-2%;opacity:.55}.original-benefits .benefit-purple .benefit-art,.original-benefits .benefit-cyan .benefit-art{width:90%;height:44%;right:-10%}.original-testimonials{grid-template-columns:1fr}.hero-actions .video-btn{justify-content:flex-start}}


/* =========================================================
   V4 — EMPRESAS E INTEGRAÇÕES
   Ajuste para aproximar do AIStarterKit original
========================================================= */

.hero-frame{
    z-index:3;
    max-width:1040px;
}

/* O degradê começa por baixo da parte final da imagem principal,
   como no layout original. */
.company-band{
    position:relative;
    z-index:1;
    margin-top:-58px;
    padding-top:58px;
    overflow:hidden;

    border-top:0;
    border-bottom:0;

    background:
        radial-gradient(circle at 8% 25%, rgba(215,83,235,.34), transparent 27%),
        radial-gradient(circle at 92% 70%, rgba(110,92,255,.34), transparent 30%),
        linear-gradient(112deg,#4d3ca0 0%,#6850dc 36%,#765cff 67%,#6b4de2 100%);
}

/* brilho suave nas laterais */
.company-band::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg,rgba(27,32,50,.20),transparent 15%,transparent 85%,rgba(27,32,50,.16));
    z-index:-1;
}

.company-glow{
    filter:blur(100px);
    opacity:.52;
}

.company-glow-a{
    width:430px;
    height:250px;
    left:-150px;
    top:-70px;
    background:#d64fe9;
}

.company-glow-b{
    width:460px;
    height:280px;
    right:-150px;
    bottom:-100px;
    background:#6f5cff;
}

/* largura semelhante ao container usado no HeroLogos original */
.company-row{
    width:min(1016px,calc(100% - 40px));
    padding:76px 0 78px;
}

.company-label{
    display:block;
    text-align:center;
    margin:0 0 42px;

    color:rgba(255,255,255,.58);
    font-size:17px;
    line-height:1.45;
    text-transform:none;
    letter-spacing:0;
    font-weight:600;
}

/* Logos ficam centralizados, com respiro igual ao original. */
.company-logos{
    width:min(900px,100%);
    margin:0 auto;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:42px 58px;
    flex-wrap:wrap;
}

/* IMPORTANTE:
   os logos devem aparecer sempre, sem depender de hover. */
.company-logos img,
[data-theme=light] .company-band .company-logos img,
[data-theme=dark] .company-band .company-logos img{
    display:block;
    width:auto;
    height:44px;
    max-width:128px;
    object-fit:contain;

    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;

    transition:transform .2s ease, opacity .2s ease;
}

/* Mercado Pago, Pix PDV e WhatsApp têm proporções bem horizontais. */
.company-logos img[alt="Mercado Pago"]{
    max-width:126px;
    height:42px;
}

.company-logos img[alt="Pix PDV"]{
    max-width:132px;
    height:40px;
}

.company-logos img[alt="WhatsApp"]{
    max-width:132px;
    height:38px;
}

/* Hover apenas dá movimento; não é mais necessário para enxergar. */
.company-logos img:hover,
[data-theme=light] .company-band .company-logos img:hover,
[data-theme=dark] .company-band .company-logos img:hover{
    opacity:1 !important;
    filter:none !important;
    transform:translateY(-3px) scale(1.02);
}

@media(max-width:900px){
    .company-band{
        margin-top:-38px;
        padding-top:38px;
    }

    .company-row{
        padding:62px 0 68px;
    }

    .company-label{
        font-size:15px;
        margin-bottom:34px;
    }

    .company-logos{
        width:min(700px,100%);
        gap:34px 44px;
    }

    .company-logos img,
    [data-theme=light] .company-band .company-logos img,
    [data-theme=dark] .company-band .company-logos img{
        max-width:116px;
        height:40px;
    }
}

@media(max-width:600px){
    .company-band{
        margin-top:-24px;
        padding-top:24px;
    }

    .company-row{
        width:min(100% - 28px,1016px);
        padding:50px 0 56px;
    }

    .company-label{
        font-size:14px;
        margin-bottom:30px;
    }

    .company-logos{
        gap:28px 36px;
    }

    .company-logos img,
    [data-theme=light] .company-band .company-logos img,
    [data-theme=dark] .company-band .company-logos img{
        max-width:105px;
        height:36px;
    }
}


/* =========================================================
   V5 — HERO + LOGOS COM GEOMETRIA DO AISTARTERKIT ORIGINAL
   ========================================================= */

/* Hero original: pt-16, max-width geral 120rem e overflow hidden */
.hero{
    position:relative !important;
    overflow:hidden !important;
    padding:64px 0 0 !important;
    isolation:isolate;
}

/* Conteúdo central do original: max 800px */
.hero-inner{
    width:min(100% - 40px, 1920px) !important;
    max-width:1920px !important;
    position:relative !important;
    z-index:30 !important;
}

/* Badge central seguindo o Subheading original */
.hero .eyebrow{
    margin:0 auto;
    padding:8px 18px !important;
    font-size:14px !important;
    line-height:1.2;
    border-radius:999px;
}

/* H1 original: max 700px, 50px e line-height 64px */
.hero h1{
    width:min(700px,100%) !important;
    max-width:700px !important;
    margin:28px auto 16px !important;
    font-size:50px !important;
    line-height:1.28 !important;
    letter-spacing:-.035em !important;
}

/* Texto original: max 537px e 16px */
.hero-lead{
    width:min(537px,100%) !important;
    max-width:537px !important;
    margin:0 auto !important;
    font-size:16px !important;
    line-height:1.55 !important;
}

/* Espaçamento dos botões igual ao original */
.hero-actions{
    margin:36px 0 64px !important;
    gap:12px !important;
}

/* Frame principal exatamente na lógica max-w-[1000px] */
.hero-frame{
    width:min(1000px,calc(100% - 40px)) !important;
    max-width:1000px !important;
    margin:0 auto !important;
    padding:18px !important;

    border-radius:32px !important;
    border:1px solid rgba(255,255,255,.30) !important;
    background:rgba(255,255,255,.20) !important;

    position:relative !important;
    z-index:30 !important;
    box-shadow:none !important;
}

/* O brilho interno não deve criar uma faixa separada */
.hero-frame::before{
    content:"" !important;
    position:absolute !important;
    z-index:-1 !important;
    width:1300px !important;
    height:1000px !important;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-44%) !important;
    background:
        radial-gradient(circle at 62% 50%, rgba(78,110,255,.58) 0 23%, transparent 48%),
        radial-gradient(circle at 38% 50%, rgba(255,88,213,.30) 0 22%, transparent 48%) !important;
    filter:blur(85px) !important;
    opacity:.68 !important;
    pointer-events:none;
}

.hero-frame-inner{
    min-height:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#111827 !important;
}

.hero-frame-inner img{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    max-height:none !important;
    object-fit:cover !important;
    border-radius:16px !important;
}

/* Glow de baixo do Hero: exatamente a ideia do hero-glow-bg original */
.hero-glow-bg{
    pointer-events:none;
    position:absolute;
    z-index:10;
    left:0;
    right:0;
    bottom:0;
    height:670px;
    background-image:linear-gradient(
        180deg,
        rgba(122,90,248,0) 0%,
        #7a5af8 100%
    );
}

/* A faixa não cria mais um retângulo próprio: fica dentro do mesmo Hero */
.company-band{
    position:relative !important;
    z-index:30 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
    isolation:auto !important;
}

.company-band::before,
.company-band::after,
.company-glow{
    display:none !important;
}

/* HeroLogos original: max 1016, pt-14 pb-16 */
.company-row{
    width:min(1016px,calc(100% - 40px)) !important;
    max-width:1016px !important;
    margin:0 auto !important;
    padding:56px 0 64px !important;
    position:relative;
    z-index:30;
}

.company-label{
    display:block !important;
    text-align:center !important;
    margin:0 !important;
    color:rgba(255,255,255,.50) !important;
    font-size:18px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

/* Original: mt-10, gap 28px no mobile e 56px no desktop */
.company-logos{
    width:100% !important;
    margin:40px auto 0 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:center !important;
    gap:28px 56px !important;
}

/*
 * O original usa logos claros com opacity .50 e hover 1.
 * Para os logos coloridos da AWAINFO manterem legibilidade,
 * aplicamos branco visual sem esconder Mercado Pago / Pix / WhatsApp.
 */
.company-logos img,
[data-theme=light] .company-band .company-logos img,
[data-theme=dark] .company-band .company-logos img{
    width:auto !important;
    height:32px !important;
    max-width:112px !important;
    object-fit:contain !important;

    opacity:.72 !important;
    visibility:visible !important;

    filter:grayscale(1) brightness(0) invert(1) !important;

    transition:opacity .2s ease, transform .2s ease !important;
}

.company-logos img:hover,
[data-theme=light] .company-band .company-logos img:hover,
[data-theme=dark] .company-band .company-logos img:hover{
    opacity:1 !important;
    filter:grayscale(1) brightness(0) invert(1) !important;
    transform:translateY(-2px);
}

/* Proporções horizontais */
.company-logos img[alt="Mercado Pago"]{
    max-width:118px !important;
}
.company-logos img[alt="Pix PDV"]{
    max-width:122px !important;
}
.company-logos img[alt="WhatsApp"]{
    max-width:124px !important;
}

/* Posicionamento das quatro etiquetas seguindo os shapes originais */
.code-float{
    z-index:31 !important;
    min-height:44px;
    padding:9px 20px !important;
    font-size:14px !important;
}

.code-php{
    left:max(64px,calc(50% - 896px)) !important;
    top:56px !important;
}
.code-sql{
    left:max(80px,calc(50% - 815px)) !important;
    top:298px !important;
}
.code-java{
    right:max(64px,calc(50% - 896px)) !important;
    top:108px !important;
}
.code-js{
    right:max(80px,calc(50% - 815px)) !important;
    top:316px !important;
}

/* Tema claro: o Hero original também mantém a área inferior roxa */
[data-theme=light] .hero-glow-bg{
    background-image:linear-gradient(
        180deg,
        rgba(122,90,248,0) 0%,
        #7a5af8 100%
    );
}

@media(max-width:1100px){
    .hero h1{
        font-size:46px !important;
        line-height:1.22 !important;
    }

    .code-float{
        display:none !important;
    }
}

@media(max-width:760px){
    .hero{
        padding-top:48px !important;
    }

    .hero h1{
        font-size:38px !important;
        line-height:1.18 !important;
        margin-top:22px !important;
    }

    .hero-actions{
        margin-bottom:48px !important;
    }

    .hero-frame{
        width:min(100% - 28px,1000px) !important;
        padding:12px !important;
        border-radius:24px !important;
    }

    .hero-frame-inner,
    .hero-frame-inner img{
        border-radius:14px !important;
    }

    .hero-glow-bg{
        height:560px;
    }

    .company-row{
        width:min(100% - 28px,1016px) !important;
        padding:48px 0 54px !important;
    }

    .company-label{
        font-size:15px !important;
    }

    .company-logos{
        margin-top:32px !important;
        gap:26px 38px !important;
    }

    .company-logos img,
    [data-theme=light] .company-band .company-logos img,
    [data-theme=dark] .company-band .company-logos img{
        height:29px !important;
        max-width:100px !important;
    }
}

/* V6 — logos das integrações sempre visíveis em suas cores originais */
.company-band .company-logos img,
[data-theme=light] .company-band .company-logos img,
[data-theme=dark] .company-band .company-logos img{
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
}
.company-band .company-logos img:hover,
[data-theme=light] .company-band .company-logos img:hover,
[data-theme=dark] .company-band .company-logos img:hover{
    opacity:1 !important;
    filter:none !important;
}
.company-band .company-logos img[alt="Mercado Pago"]{
    width:118px !important;
    max-width:118px !important;
    height:36px !important;
}
.company-band .company-logos img[alt="Pix PDV"]{
    width:122px !important;
    max-width:122px !important;
    height:36px !important;
}
.company-band .company-logos img[alt="WhatsApp"]{
    width:124px !important;
    max-width:124px !important;
    height:36px !important;
}


/* =========================================================
   V7 — LOGOS NO ESTILO AISTARTERKIT
   Monocromáticos claros, sempre visíveis, sem fundo.
========================================================= */
.company-band .company-logos-monochrome{
    width:min(980px,100%) !important;
    margin:38px auto 0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:34px !important;
    flex-wrap:nowrap !important;
}
.company-band .company-logos-monochrome img,
[data-theme=light] .company-band .company-logos-monochrome img,
[data-theme=dark] .company-band .company-logos-monochrome img{
    display:block !important;
    width:auto !important;
    height:34px !important;
    max-width:132px !important;
    object-fit:contain !important;
    opacity:.62 !important;
    visibility:visible !important;
    /* mesmo visual suave/branco-lilás dos logos do AIStarterKit */
    filter:grayscale(1) brightness(0) invert(1) !important;
    mix-blend-mode:normal !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    transition:opacity .2s ease,transform .2s ease !important;
}
.company-band .company-logos-monochrome img:hover,
[data-theme=light] .company-band .company-logos-monochrome img:hover,
[data-theme=dark] .company-band .company-logos-monochrome img:hover{
    opacity:.82 !important;
    filter:grayscale(1) brightness(0) invert(1) !important;
    transform:translateY(-2px) !important;
}
.company-band .company-logos-monochrome img[alt="iFood"]{height:38px !important;max-width:120px !important}
.company-band .company-logos-monochrome img[alt="Mercado Pago"]{height:35px !important;max-width:132px !important;width:auto !important}
.company-band .company-logos-monochrome img[alt="Melhor Envio"]{height:37px !important;max-width:120px !important}
.company-band .company-logos-monochrome img[alt="Cora"]{height:34px !important;max-width:126px !important}
.company-band .company-logos-monochrome img[alt="Pix PDV"]{height:34px !important;max-width:126px !important;width:auto !important}
.company-band .company-logos-monochrome img[alt="WhatsApp"]{height:34px !important;max-width:132px !important;width:auto !important}
@media(max-width:900px){
  .company-band .company-logos-monochrome{justify-content:center !important;flex-wrap:wrap !important;gap:28px 42px !important}
}
@media(max-width:600px){
  .company-band .company-logos-monochrome img{height:29px !important;max-width:105px !important}
}


/* =========================================================
   V8 — INTEGRAÇÕES, COMPARTILHAMENTO E BLOG
========================================================= */

.company-band .company-logos-monochrome img,
[data-theme=light] .company-band .company-logos-monochrome img,
[data-theme=dark] .company-band .company-logos-monochrome img{
    display:block !important;
    opacity:.64 !important;
    visibility:visible !important;
    filter:brightness(0) invert(1) !important;
    mix-blend-mode:normal !important;
}

.company-band .company-logos-monochrome img:hover,
[data-theme=light] .company-band .company-logos-monochrome img:hover,
[data-theme=dark] .company-band .company-logos-monochrome img:hover{
    opacity:.92 !important;
    filter:brightness(0) invert(1) !important;
}

.company-band .company-logos-monochrome img[alt="Mercado Pago"]{
    width:auto !important;
    height:38px !important;
    max-width:136px !important;
}

.company-band .company-logos-monochrome img[alt="Pix PDV"]{
    width:auto !important;
    height:34px !important;
    max-width:142px !important;
}

.company-band .company-logos-monochrome img[alt="WhatsApp"]{
    width:auto !important;
    height:35px !important;
    max-width:142px !important;
}

.project-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:14px;
}

.project-tech{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:2px 0 12px;
    color:#a99aff;
    font-size:12px;
    font-weight:600;
}

.project-share{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.project-share-label{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:#98a2b3;
    font-size:12px;
    font-weight:600;
}

.project-share-buttons{
    display:flex;
    align-items:center;
    gap:7px;
}

.project-share-btn{
    width:34px;
    height:34px;
    border:1px solid #344054;
    border-radius:50%;
    display:inline-grid;
    place-items:center;
    cursor:pointer;
    text-decoration:none;
    color:#fff;
    background:#182235;
    transition:.2s ease;
    padding:0;
}

.project-share-btn:hover{
    transform:translateY(-2px);
    border-color:rgba(255,255,255,.38);
}

.project-share-btn.whatsapp:hover{background:#25d366}
.project-share-btn.facebook:hover{background:#1877f2}
.project-share-btn.instagram:hover{
    background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);
}

.blog-section{
    position:relative;
    overflow:hidden;
}

.blog-section::before{
    content:"";
    position:absolute;
    width:620px;
    height:420px;
    left:-260px;
    top:80px;
    border-radius:50%;
    background:rgba(122,90,248,.12);
    filter:blur(90px);
    pointer-events:none;
}

.blog-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px;
    max-width:1040px;
    margin:0 auto;
}

.blog-card{
    position:relative;
    border:1px solid var(--line);
    border-radius:26px;
    overflow:hidden;
    background:var(--card);
    box-shadow:var(--shadow);
    transition:transform .25s ease,border-color .25s ease;
}

.blog-card:hover{
    transform:translateY(-6px);
    border-color:color-mix(in srgb,var(--primary) 52%,var(--line));
}

.blog-image{
    position:relative;
    height:300px;
    overflow:hidden;
    background:#111827;
}

.blog-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}

.blog-card:hover .blog-image img{transform:scale(1.035)}

.blog-chip{
    position:absolute;
    left:20px;
    top:20px;
    padding:8px 12px;
    border-radius:999px;
    color:#fff;
    font-size:11px;
    font-weight:700;
    background:linear-gradient(135deg,#7a5af8,#b14cff);
    box-shadow:0 8px 24px rgba(122,90,248,.25);
}

.blog-body{padding:26px}
.blog-body small{color:var(--primary);font-weight:700}
.blog-body h3{margin:9px 0 12px;color:var(--heading);font-size:22px;line-height:1.3}
.blog-body p{margin:0 0 14px;color:var(--muted)}
.blog-body time{display:block;color:var(--muted);font-size:12px;margin-bottom:18px}

.blog-more{
    border:0;
    padding:0;
    background:transparent;
    color:var(--heading);
    font-weight:700;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:8px;
}

.blog-more i{color:var(--primary);transition:transform .2s ease}
.blog-more:hover i{transform:translateX(4px)}

.blog-modal{
    display:none;
    position:fixed;
    inset:0;
    z-index:1000;
    padding:30px;
    background:rgba(6,10,20,.80);
    backdrop-filter:blur(12px);
    overflow:auto;
}

.blog-modal.open{
    display:flex;
    justify-content:center;
    align-items:flex-start;
}

.blog-modal-dialog{
    position:relative;
    width:min(900px,100%);
    margin:auto;
    border:1px solid rgba(255,255,255,.12);
    border-radius:28px;
    overflow:hidden;
    background:var(--card);
    box-shadow:0 30px 100px rgba(0,0,0,.42);
}

.blog-modal-close{
    position:absolute;
    z-index:3;
    top:16px;
    right:16px;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
    background:rgba(17,24,39,.82);
    color:#fff;
    cursor:pointer;
}

.blog-modal-cover{height:330px;background:#111827}
.blog-modal-cover img{width:100%;height:100%;object-fit:cover}
.blog-modal-content{padding:34px 38px 42px}
.blog-modal-content h2{font-size:32px;margin:8px 0 24px}
.blog-modal-text{color:var(--muted);line-height:1.75}
.blog-modal-text h4{color:var(--heading);margin:26px 0 10px}
.blog-modal-text strong{color:var(--heading)}
.blog-modal-text ul{padding-left:22px}
.blog-modal-text li{margin:7px 0}
.blog-modal-text p{margin:0 0 15px}
body.blog-modal-open{overflow:hidden}

.share-toast{
    position:fixed;
    left:50%;
    bottom:28px;
    z-index:1200;
    transform:translate(-50%,20px);
    padding:12px 18px;
    border-radius:999px;
    color:#fff;
    background:#171f31;
    border:1px solid rgba(255,255,255,.15);
    box-shadow:0 15px 40px rgba(0,0,0,.3);
    opacity:0;
    pointer-events:none;
    transition:.22s ease;
}

.share-toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:900px){
    .blog-grid{grid-template-columns:1fr}
    .blog-image{height:270px}
}

@media(max-width:600px){
    .blog-modal{padding:14px}
    .blog-modal-cover{height:220px}
    .blog-modal-content{padding:26px 22px 32px}
    .blog-modal-content h2{font-size:26px}
    .project-actions{align-items:flex-start;flex-direction:column}
    .company-band .company-logos-monochrome img[alt="Mercado Pago"],
    .company-band .company-logos-monochrome img[alt="Pix PDV"],
    .company-band .company-logos-monochrome img[alt="WhatsApp"]{
        max-width:112px !important;
        height:30px !important;
    }
}


/* =========================================================
   V9 — GALERIA, FORMULÁRIO E URLS
========================================================= */

section[id]{scroll-margin-top:90px}

.company-band .company-logos-monochrome img[alt="WhatsApp"],
[data-theme=light] .company-band .company-logos-monochrome img[alt="WhatsApp"],
[data-theme=dark] .company-band .company-logos-monochrome img[alt="WhatsApp"]{
    display:block !important;
    width:auto !important;
    height:34px !important;
    max-width:142px !important;
    opacity:.72 !important;
    visibility:visible !important;
    filter:brightness(0) invert(1) !important;
}

.project-gallery-open{display:inline-flex;align-items:center;gap:7px}
.gallery-count{min-width:20px;height:20px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;font-size:10px;background:rgba(255,255,255,.15)}

.project-gallery-modal{
    display:none;position:fixed;z-index:2200;inset:0;padding:24px;
    background:rgba(4,7,15,.88);backdrop-filter:blur(14px);overflow:auto
}
.project-gallery-modal.open{display:flex;align-items:center;justify-content:center}
.project-gallery-dialog{
    width:min(1100px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;
    overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:26px;
    background:#111827;box-shadow:0 35px 100px rgba(0,0,0,.48)
}
.project-gallery-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.08)}
.project-gallery-top small{color:#8f7cff;font-size:10px;font-weight:800;letter-spacing:.12em}
.project-gallery-top h3{margin:4px 0 0;color:#fff;font-size:18px}
.project-gallery-close{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.13);border-radius:50%;color:#fff;background:#1d2939;cursor:pointer}
.project-gallery-main{position:relative;min-height:0;flex:1;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:12px;padding:20px;background:#0b1220}
.project-gallery-main figure{margin:0;min-width:0;text-align:center}
.project-gallery-main img{display:block;width:auto;max-width:100%;height:auto;max-height:62vh;margin:0 auto;object-fit:contain;border-radius:16px;background:#0f172a}
.project-gallery-main figcaption{margin-top:14px;color:#e5e7eb;font-size:14px;font-weight:700}
.project-gallery-arrow{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:50%;color:#fff;background:rgba(29,41,57,.90);cursor:pointer}
.project-gallery-thumbs{display:flex;gap:10px;padding:14px 18px 18px;overflow:auto;border-top:1px solid rgba(255,255,255,.08)}
.project-gallery-thumb{flex:0 0 92px;height:66px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:10px;background:#101828;cursor:pointer}
.project-gallery-thumb.active{border-color:#7a5af8}
.project-gallery-thumb img{width:100%;height:100%;object-fit:cover}
body.project-gallery-open{overflow:hidden}

.form-grid label{position:relative}
.form-grid input.is-invalid,.form-grid textarea.is-invalid{border-color:#f04438 !important;box-shadow:0 0 0 3px rgba(240,68,56,.09)}
.field-error{display:none;margin-top:6px;color:#f97066;font-size:11px;font-weight:600}
.form-grid input.is-invalid + .field-error,.form-grid textarea.is-invalid + .field-error{display:block}
.contact-message{margin-top:12px;font-size:13px;font-weight:600}

@media(max-width:700px){
    .project-gallery-modal{padding:10px}
    .project-gallery-dialog{max-height:calc(100vh - 20px)}
    .project-gallery-main{grid-template-columns:40px minmax(0,1fr) 40px;gap:7px;padding:12px 8px}
    .project-gallery-arrow{width:38px;height:38px}
    .project-gallery-main img{max-height:55vh}
}


/* =========================================================
   V10 — GALERIA RESPONSIVA + ZOOM + RECAPTCHA
========================================================= */

/* Evita que o nome da imagem encoste nas miniaturas */
.project-gallery-dialog{
    overflow:hidden;
}

.project-gallery-main{
    flex:1 1 auto;
    min-height:0;
}

.project-gallery-figure{
    min-width:0;
    margin:0;
}

.project-gallery-image-wrap{
    position:relative;
    width:100%;
    min-height:220px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.project-gallery-image-wrap > img{
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    max-height:58vh;
    margin:0 auto;
    object-fit:contain;
    border-radius:16px;
    background:#0f172a;
}

/* Ícone de ampliar sobre a própria foto */
.project-gallery-zoom{
    position:absolute;
    right:14px;
    bottom:14px;
    z-index:5;

    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.28);
    border-radius:50%;

    color:#fff;
    background:rgba(17,24,39,.88);
    backdrop-filter:blur(8px);

    cursor:pointer;
    transition:.2s ease;
}

.project-gallery-zoom:hover{
    transform:scale(1.06);
    background:#7a5af8;
    border-color:#7a5af8;
}

/* Nome da foto em área própria, separado das miniaturas */
.project-gallery-captionbar{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;

    min-height:48px;
    padding:10px 20px;

    color:#e5e7eb;
    background:#111827;

    border-top:1px solid rgba(255,255,255,.06);
    border-bottom:1px solid rgba(255,255,255,.08);

    font-size:14px;
    line-height:1.35;
    font-weight:700;
    text-align:center;

    overflow-wrap:anywhere;
}

.project-gallery-captionbar i{
    color:#8f7cff;
    flex:0 0 auto;
}

.project-gallery-thumbs{
    flex:0 0 auto;
    min-height:92px;
    margin:0;
    padding:14px 18px 18px;
    align-items:center;
}

/* =========================================================
   MODAL DE AMPLIAÇÃO
========================================================= */

.project-zoom-modal{
    display:none;
    position:fixed;
    inset:0;
    z-index:4000;

    background:rgba(2,6,15,.96);
    backdrop-filter:blur(12px);
}

.project-zoom-modal.open{
    display:flex;
    flex-direction:column;
}

.project-zoom-toolbar{
    flex:0 0 auto;
    min-height:68px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;

    padding:12px 22px;

    border-bottom:1px solid rgba(255,255,255,.10);
    background:rgba(17,24,39,.90);
}

.project-zoom-title{
    min-width:0;

    display:flex;
    align-items:center;
    gap:10px;

    color:#fff;
    font-size:14px;
    font-weight:700;
}

.project-zoom-title i{
    color:#8f7cff;
}

.project-zoom-title span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.project-zoom-close{
    flex:0 0 auto;

    width:44px;
    height:44px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.16);
    border-radius:50%;

    color:#fff;
    background:#1d2939;

    cursor:pointer;
}

.project-zoom-stage{
    position:relative;

    flex:1 1 auto;
    min-height:0;

    display:grid;
    grid-template-columns:64px minmax(0,1fr) 64px;
    align-items:center;
    gap:14px;

    padding:22px;
}

.project-zoom-stage img{
    display:block;

    max-width:100%;
    max-height:calc(100vh - 120px);

    width:auto;
    height:auto;

    margin:0 auto;

    object-fit:contain;

    border-radius:14px;

    box-shadow:0 18px 60px rgba(0,0,0,.45);
}

.project-zoom-arrow{
    width:50px;
    height:50px;

    display:grid;
    place-items:center;

    justify-self:center;

    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;

    color:#fff;
    background:rgba(29,41,57,.88);

    cursor:pointer;
}

/* =========================================================
   RECAPTCHA — MOVE PARA O LADO ESQUERDO
========================================================= */

.grecaptcha-badge{
    left:12px !important;
    right:auto !important;
    bottom:12px !important;

    z-index:1800 !important;

    transform-origin:left bottom !important;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px){

    .project-gallery-modal{
        padding:12px;
    }

    .project-gallery-dialog{
        width:100%;
        max-height:calc(100vh - 24px);
        border-radius:20px;
    }

    .project-gallery-top{
        padding:14px 16px;
    }

    .project-gallery-top h3{
        font-size:16px;
        line-height:1.35;
    }

    .project-gallery-main{
        grid-template-columns:46px minmax(0,1fr) 46px;
        gap:8px;
        padding:14px 8px;
    }

    .project-gallery-image-wrap > img{
        max-height:53vh;
        border-radius:12px;
    }

    .project-gallery-arrow{
        width:40px;
        height:40px;
    }

    .project-gallery-zoom{
        right:10px;
        bottom:10px;
        width:42px;
        height:42px;
    }

    .project-gallery-captionbar{
        padding:9px 14px;
        min-height:44px;
        font-size:13px;
    }

    .project-gallery-thumbs{
        min-height:84px;
        padding:10px 12px 13px;
    }

    .project-gallery-thumb{
        flex-basis:80px;
        height:58px;
    }

    .project-zoom-stage{
        grid-template-columns:48px minmax(0,1fr) 48px;
        gap:8px;
        padding:14px 8px;
    }

    .project-zoom-arrow{
        width:42px;
        height:42px;
    }
}

/* =========================================================
   CELULAR
========================================================= */

@media (max-width: 600px){

    .project-gallery-modal{
        padding:0;
    }

    .project-gallery-dialog{
        width:100%;
        height:100%;
        max-height:100vh;

        border:0;
        border-radius:0;
    }

    .project-gallery-top{
        min-height:72px;
        padding:12px 14px;
    }

    .project-gallery-top small{
        font-size:9px;
    }

    .project-gallery-top h3{
        max-width:calc(100vw - 78px);
        font-size:14px;
    }

    .project-gallery-close{
        width:38px;
        height:38px;
    }

    .project-gallery-main{
        flex:1 1 auto;

        grid-template-columns:34px minmax(0,1fr) 34px;

        gap:3px;
        padding:8px 2px;

        overflow:hidden;
    }

    .project-gallery-image-wrap{
        min-height:180px;
    }

    .project-gallery-image-wrap > img{
        max-height:calc(100vh - 260px);
        border-radius:8px;
    }

    .project-gallery-arrow{
        width:32px;
        height:42px;

        border-radius:12px;

        background:rgba(29,41,57,.72);
    }

    .project-gallery-zoom{
        width:40px;
        height:40px;

        right:8px;
        bottom:8px;
    }

    .project-gallery-captionbar{
        min-height:44px;
        max-height:70px;

        padding:8px 12px;

        font-size:12px;

        overflow:auto;
    }

    .project-gallery-thumbs{
        min-height:76px;
        padding:8px 10px 10px;
        gap:8px;
    }

    .project-gallery-thumb{
        flex:0 0 70px;
        height:52px;
    }

    /* Ampliação ocupa a tela toda no celular */
    .project-zoom-toolbar{
        min-height:60px;
        padding:8px 12px;
    }

    .project-zoom-title{
        font-size:12px;
    }

    .project-zoom-close{
        width:40px;
        height:40px;
    }

    .project-zoom-stage{
        grid-template-columns:34px minmax(0,1fr) 34px;

        gap:3px;

        padding:8px 2px;
    }

    .project-zoom-stage img{
        max-height:calc(100vh - 82px);
        max-width:100%;
        border-radius:8px;
    }

    .project-zoom-arrow{
        width:32px;
        height:44px;

        border-radius:12px;
    }

    /* Recaptcha menor e no lado esquerdo */
    .grecaptcha-badge{
        left:6px !important;
        right:auto !important;
        bottom:8px !important;

        transform:scale(.82) !important;
        transform-origin:left bottom !important;
    }
}


/* =========================================================
   V11 — GALERIA: NOTEBOOK / TABLET / CELULAR
   Comportamento mais próximo do lightbox do site antigo
========================================================= */

/* ---------------------------------------------------------
   DESKTOP GRANDE
--------------------------------------------------------- */

.project-gallery-dialog{
    width:min(1180px, calc(100vw - 48px)) !important;
    height:min(900px, calc(100dvh - 32px)) !important;
    max-height:calc(100dvh - 32px) !important;

    display:grid !important;
    grid-template-rows:auto minmax(0,1fr) auto auto !important;

    overflow:hidden !important;
}

.project-gallery-top{
    min-height:88px;
    padding:16px 24px !important;
}

.project-gallery-top > div{
    min-width:0;
}

.project-gallery-top h3{
    max-width:calc(100% - 16px);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.project-gallery-main{
    min-height:0 !important;
    height:auto !important;

    display:grid !important;
    grid-template-columns:58px minmax(0,1fr) 58px !important;

    padding:16px 18px !important;
    overflow:hidden !important;
}

.project-gallery-figure,
.project-gallery-image-wrap{
    min-height:0 !important;
    height:100% !important;
}

.project-gallery-image-wrap{
    overflow:hidden;
}

.project-gallery-image-wrap > img{
    width:auto !important;
    max-width:100% !important;

    height:auto !important;
    max-height:100% !important;

    object-fit:contain !important;
}

/* As miniaturas ficam numa linha própria */
.project-gallery-thumbs{
    min-height:92px !important;
    max-height:104px !important;

    display:flex !important;
    align-items:center !important;

    padding:10px 20px 12px !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;

    border-top:1px solid rgba(255,255,255,.08) !important;
    border-bottom:0 !important;

    background:#111827;
}

.project-gallery-thumb{
    flex:0 0 82px !important;
    height:60px !important;
}

/* O nome agora fica DEPOIS das miniaturas */
.project-gallery-captionbar{
    min-height:46px !important;
    max-height:58px !important;

    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;

    gap:9px !important;

    padding:8px 20px !important;

    border-top:1px solid rgba(255,255,255,.08) !important;
    border-bottom:0 !important;

    background:#0f172a !important;

    overflow:hidden !important;
}

.project-gallery-captionbar span:not(.project-gallery-position){
    min-width:0;

    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.project-gallery-position{
    flex:0 0 auto;

    padding:4px 8px;

    border:1px solid rgba(255,255,255,.12);
    border-radius:999px;

    color:#98a2b3;

    font-size:11px;
    font-weight:700;
}

/* ---------------------------------------------------------
   NOTEBOOK — telas menores e altura reduzida
--------------------------------------------------------- */

@media (max-width: 1366px), (max-height: 820px){

    .project-gallery-modal{
        padding:10px !important;
    }

    .project-gallery-dialog{
        width:min(1080px, calc(100vw - 20px)) !important;
        height:calc(100dvh - 20px) !important;
        max-height:calc(100dvh - 20px) !important;

        border-radius:20px !important;
    }

    .project-gallery-top{
        min-height:70px !important;
        padding:11px 18px !important;
    }

    .project-gallery-top small{
        font-size:9px !important;
    }

    .project-gallery-top h3{
        font-size:16px !important;
    }

    .project-gallery-close{
        width:40px !important;
        height:40px !important;
    }

    .project-gallery-main{
        grid-template-columns:46px minmax(0,1fr) 46px !important;
        gap:7px !important;

        padding:8px 10px !important;
    }

    .project-gallery-arrow{
        width:40px !important;
        height:40px !important;
    }

    .project-gallery-image-wrap > img{
        max-height:100% !important;
    }

    .project-gallery-thumbs{
        min-height:78px !important;
        max-height:78px !important;

        padding:7px 14px 9px !important;
        gap:8px !important;
    }

    .project-gallery-thumb{
        flex-basis:70px !important;
        height:52px !important;
    }

    .project-gallery-captionbar{
        min-height:40px !important;
        max-height:40px !important;

        padding:6px 16px !important;

        font-size:12px !important;
    }

    .project-gallery-zoom{
        width:42px !important;
        height:42px !important;

        right:10px !important;
        bottom:10px !important;
    }
}

/* ---------------------------------------------------------
   TABLET
   Mantém miniaturas, mas mais compactas.
--------------------------------------------------------- */

@media (max-width: 900px){

    .project-gallery-modal{
        padding:0 !important;
    }

    .project-gallery-dialog{
        width:100vw !important;
        height:100dvh !important;
        max-height:100dvh !important;

        border:0 !important;
        border-radius:0 !important;
    }

    .project-gallery-top{
        min-height:66px !important;
        padding:10px 14px !important;
    }

    .project-gallery-top h3{
        max-width:calc(100vw - 84px) !important;

        font-size:14px !important;
        line-height:1.3 !important;
    }

    .project-gallery-main{
        grid-template-columns:42px minmax(0,1fr) 42px !important;

        gap:2px !important;
        padding:6px 2px !important;
    }

    .project-gallery-arrow{
        width:36px !important;
        height:46px !important;

        border-radius:12px !important;
    }

    .project-gallery-image-wrap{
        padding:0 !important;
    }

    .project-gallery-image-wrap > img{
        max-width:100% !important;
        max-height:100% !important;

        border-radius:8px !important;
    }

    .project-gallery-thumbs{
        min-height:72px !important;
        max-height:72px !important;

        padding:7px 10px !important;
    }

    .project-gallery-thumb{
        flex-basis:66px !important;
        height:48px !important;
    }

    .project-gallery-captionbar{
        min-height:42px !important;
        max-height:50px !important;

        padding:7px 12px !important;

        font-size:11px !important;
    }
}

/* ---------------------------------------------------------
   CELULAR
   Igual à experiência do lightbox antigo:
   uma única foto, setas e legenda. Sem miniaturas.
--------------------------------------------------------- */

@media (max-width: 600px){

    .project-gallery-dialog{
        grid-template-rows:auto minmax(0,1fr) auto !important;
    }

    .project-gallery-top{
        min-height:58px !important;
        padding:8px 10px !important;
    }

    .project-gallery-top small{
        display:none !important;
    }

    .project-gallery-top h3{
        max-width:calc(100vw - 62px) !important;

        margin:0 !important;

        font-size:13px !important;
        font-weight:700 !important;

        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    .project-gallery-close{
        width:38px !important;
        height:38px !important;
    }

    /* Miniaturas somem no celular */
    .project-gallery-thumbs{
        display:none !important;
    }

    .project-gallery-main{
        position:relative !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        padding:0 !important;

        overflow:hidden !important;
    }

    .project-gallery-figure{
        width:100% !important;
        height:100% !important;
    }

    .project-gallery-image-wrap{
        width:100% !important;
        height:100% !important;

        padding:8px 6px 58px !important;
    }

    .project-gallery-image-wrap > img{
        width:auto !important;
        max-width:100% !important;

        height:auto !important;
        max-height:100% !important;

        border-radius:6px !important;
    }

    /* Setas flutuam sobre a imagem */
    .project-gallery-arrow{
        position:absolute !important;
        z-index:8 !important;

        top:50% !important;
        transform:translateY(-50%) !important;

        width:38px !important;
        height:54px !important;

        border-radius:12px !important;

        background:rgba(15,23,42,.70) !important;
        backdrop-filter:blur(5px);
    }

    .project-gallery-arrow.prev{
        left:6px !important;
    }

    .project-gallery-arrow.next{
        right:6px !important;
    }

    .project-gallery-zoom{
        right:12px !important;
        bottom:70px !important;

        width:42px !important;
        height:42px !important;
    }

    /* Legenda fica embaixo como lightbox */
    .project-gallery-captionbar{
        position:absolute !important;
        z-index:7 !important;

        left:0 !important;
        right:0 !important;
        bottom:0 !important;

        min-height:52px !important;
        max-height:64px !important;

        grid-template-columns:auto minmax(0,1fr) auto !important;

        padding:8px 12px calc(8px + env(safe-area-inset-bottom)) !important;

        background:linear-gradient(
            180deg,
            rgba(15,23,42,.20),
            rgba(15,23,42,.96)
        ) !important;

        border:0 !important;

        font-size:11px !important;
    }

    .project-gallery-captionbar span:not(.project-gallery-position){
        white-space:normal !important;

        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;

        overflow:hidden !important;
    }

    .project-gallery-position{
        padding:3px 7px !important;
        font-size:10px !important;
    }

    /* No celular, ampliar abre tela inteira limpa */
    .project-zoom-toolbar{
        min-height:56px !important;
    }

    .project-zoom-title{
        font-size:11px !important;
    }

    .project-zoom-stage{
        position:relative !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        padding:4px !important;
    }

    .project-zoom-stage img{
        max-width:100% !important;
        max-height:calc(100dvh - 64px) !important;

        border-radius:4px !important;
    }

    .project-zoom-arrow{
        position:absolute !important;
        z-index:3 !important;

        top:50% !important;
        transform:translateY(-50%) !important;

        width:38px !important;
        height:54px !important;

        border-radius:12px !important;
    }

    .project-zoom-arrow.prev{
        left:6px !important;
    }

    .project-zoom-arrow.next{
        right:6px !important;
    }
}


/* =========================================================
   V12 — GALERIA MOBILE RECONSTRUÍDA + RECAPTCHA INVISÍVEL
========================================================= */

/* A badge continua funcionando, mas não ocupa a interface. */
.grecaptcha-badge{
    visibility:hidden !important;
}

.recaptcha-disclosure{
    margin:12px 0 0;
    color:var(--muted);
    font-size:10px;
    line-height:1.45;
}

.recaptcha-disclosure a{
    color:var(--muted);
    text-decoration:underline;
}

/* Loader da foto */
.project-gallery-image-wrap{
    position:relative;
}

.project-gallery-image-wrap::before{
    content:"";
    position:absolute;
    z-index:1;
    left:50%;
    top:50%;
    width:34px;
    height:34px;
    margin:-17px 0 0 -17px;
    border:3px solid rgba(255,255,255,.18);
    border-top-color:#8f7cff;
    border-radius:50%;
    animation:awaGallerySpin .8s linear infinite;
    opacity:0;
    pointer-events:none;
}

.project-gallery-image-wrap.is-loading::before{
    opacity:1;
}

.project-gallery-image-wrap.is-loading > img{
    opacity:0;
}

.project-gallery-image-wrap > img{
    transition:opacity .15s ease;
}

@keyframes awaGallerySpin{
    to{transform:rotate(360deg)}
}

/* NOTEBOOK: evita modal excessivamente alto e mantém tudo à vista */
@media (min-width:601px) and (max-width:1366px), (min-width:601px) and (max-height:820px){

    .project-gallery-modal{
        display:none;
        align-items:center !important;
        justify-content:center !important;
        overflow:hidden !important;
    }

    .project-gallery-modal.open{
        display:flex !important;
    }

    .project-gallery-dialog{
        width:min(1060px,calc(100vw - 20px)) !important;
        height:min(760px,calc(100dvh - 20px)) !important;
        max-height:calc(100dvh - 20px) !important;
        margin:0 !important;
    }

    .project-gallery-main{
        overflow:hidden !important;
    }

    .project-gallery-image-wrap{
        height:100% !important;
        min-height:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .project-gallery-image-wrap > img{
        max-width:100% !important;
        max-height:100% !important;
        width:auto !important;
        height:auto !important;
        object-fit:contain !important;
    }
}

/* =========================================================
   CELULAR — NOVO MODELO DE VISUALIZAÇÃO
   Cabeçalho fixo + foto sempre centralizada + legenda embaixo.
========================================================= */

@media (max-width:600px){

    .project-gallery-modal{
        position:fixed !important;
        inset:0 !important;
        z-index:2200 !important;

        display:none !important;

        width:100vw !important;
        height:100dvh !important;

        padding:0 !important;
        margin:0 !important;

        overflow:hidden !important;

        background:#070d19 !important;
        backdrop-filter:none !important;
    }

    .project-gallery-modal.open{
        display:block !important;
    }

    .project-gallery-dialog{
        position:absolute !important;
        inset:0 !important;

        width:100vw !important;
        height:100dvh !important;
        max-width:none !important;
        max-height:none !important;

        margin:0 !important;

        display:grid !important;
        grid-template-rows:58px minmax(0,1fr) 54px !important;

        border:0 !important;
        border-radius:0 !important;

        background:#070d19 !important;

        overflow:hidden !important;
    }

    /* Título superior compacto */
    .project-gallery-top{
        position:relative !important;
        z-index:10 !important;

        width:100% !important;
        height:58px !important;
        min-height:58px !important;

        padding:8px 10px 8px 12px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;

        background:#111827 !important;
        border-bottom:1px solid rgba(255,255,255,.08) !important;
    }

    .project-gallery-top small{
        display:none !important;
    }

    .project-gallery-top > div{
        min-width:0 !important;
    }

    .project-gallery-top h3{
        width:auto !important;
        max-width:calc(100vw - 66px) !important;

        margin:0 !important;

        color:#fff !important;

        font-size:12px !important;
        line-height:1.25 !important;

        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    .project-gallery-close{
        width:38px !important;
        height:38px !important;
        flex:0 0 38px !important;
    }

    /* Área central: imagem nunca "se perde" na tela */
    .project-gallery-main{
        position:relative !important;

        min-width:0 !important;
        min-height:0 !important;

        width:100% !important;
        height:100% !important;

        display:block !important;

        padding:0 !important;
        margin:0 !important;

        overflow:hidden !important;

        background:#070d19 !important;
    }

    .project-gallery-figure{
        position:absolute !important;
        inset:0 !important;

        width:100% !important;
        height:100% !important;

        margin:0 !important;
        padding:0 !important;
    }

    .project-gallery-image-wrap{
        position:absolute !important;
        inset:0 !important;

        width:100% !important;
        height:100% !important;
        min-height:0 !important;

        padding:8px 42px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        overflow:hidden !important;
    }

    .project-gallery-image-wrap > img{
        position:static !important;

        display:block !important;

        width:auto !important;
        max-width:100% !important;

        height:auto !important;
        max-height:100% !important;

        margin:auto !important;

        object-fit:contain !important;

        border:0 !important;
        border-radius:7px !important;

        background:transparent !important;

        box-shadow:none !important;
    }

    /* Setas sempre no centro vertical */
    .project-gallery-arrow{
        position:absolute !important;
        z-index:12 !important;

        top:50% !important;

        width:36px !important;
        height:54px !important;

        margin:0 !important;

        transform:translateY(-50%) !important;

        display:grid !important;
        place-items:center !important;

        border:1px solid rgba(255,255,255,.14) !important;
        border-radius:12px !important;

        color:#fff !important;

        background:rgba(24,34,53,.82) !important;
        backdrop-filter:blur(5px) !important;
    }

    .project-gallery-arrow.prev{
        left:4px !important;
    }

    .project-gallery-arrow.next{
        right:4px !important;
    }

    /* Zoom no canto inferior da área da foto */
    .project-gallery-zoom{
        position:absolute !important;
        z-index:14 !important;

        right:10px !important;
        bottom:10px !important;

        width:40px !important;
        height:40px !important;

        margin:0 !important;
    }

    /* Não há miniaturas no celular */
    .project-gallery-thumbs{
        display:none !important;
    }

    /* Legenda é a terceira linha do grid, sem sobrepor a foto */
    .project-gallery-captionbar{
        position:relative !important;
        inset:auto !important;

        z-index:10 !important;

        width:100% !important;
        height:54px !important;
        min-height:54px !important;
        max-height:54px !important;

        display:grid !important;
        grid-template-columns:auto minmax(0,1fr) auto !important;
        align-items:center !important;

        gap:7px !important;

        padding:8px 10px calc(8px + env(safe-area-inset-bottom)) !important;

        border-top:1px solid rgba(255,255,255,.08) !important;
        border-bottom:0 !important;

        background:#111827 !important;

        color:#e5e7eb !important;

        font-size:10px !important;
        line-height:1.25 !important;

        overflow:hidden !important;
    }

    .project-gallery-captionbar span:not(.project-gallery-position){
        min-width:0 !important;

        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;

        display:block !important;
    }

    .project-gallery-position{
        padding:3px 6px !important;
        font-size:9px !important;
    }

    /* Lightbox ampliado */
    .project-zoom-modal{
        width:100vw !important;
        height:100dvh !important;
    }

    .project-zoom-toolbar{
        height:56px !important;
        min-height:56px !important;
    }

    .project-zoom-stage{
        position:relative !important;

        width:100% !important;
        height:calc(100dvh - 56px) !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        padding:6px 40px !important;

        overflow:hidden !important;
    }

    .project-zoom-stage img{
        width:auto !important;
        max-width:100% !important;

        height:auto !important;
        max-height:100% !important;

        margin:auto !important;

        object-fit:contain !important;
    }
}

/* Telas muito baixas: reduz cabeçalho/legenda ainda mais */
@media (max-width:600px) and (max-height:650px){

    .project-gallery-dialog{
        grid-template-rows:50px minmax(0,1fr) 46px !important;
    }

    .project-gallery-top{
        height:50px !important;
        min-height:50px !important;
    }

    .project-gallery-captionbar{
        height:46px !important;
        min-height:46px !important;
        max-height:46px !important;
    }

    .project-gallery-close{
        width:34px !important;
        height:34px !important;
        flex-basis:34px !important;
    }

    .project-gallery-image-wrap{
        padding-top:4px !important;
        padding-bottom:4px !important;
    }
}

/* =========================================================
   V13 — GALERIA MOBILE ESTÁVEL DURANTE PINCH-ZOOM
   Mantém o lightbox preso à viewport visual enquanto o usuário
   amplia/reduz a página com dois dedos.
========================================================= */
@media (max-width: 900px){
    .project-gallery-modal.open,
    .project-zoom-modal.open{
        position:fixed !important;
        left:var(--gallery-vv-left, 0px) !important;
        top:var(--gallery-vv-top, 0px) !important;
        width:var(--gallery-vv-width, 100vw) !important;
        height:var(--gallery-vv-height, 100dvh) !important;
        min-width:0 !important;
        min-height:0 !important;
        max-width:none !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        overflow:hidden !important;
        overscroll-behavior:none;
    }

    .project-gallery-dialog{
        width:100% !important;
        height:100% !important;
        max-width:none !important;
        max-height:none !important;
        margin:0 !important;
        border-radius:0 !important;
    }

    .project-gallery-main,
    .project-gallery-image-wrap,
    .project-gallery-figure{
        min-width:0 !important;
        min-height:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
    }

    .project-gallery-image-wrap > img{
        display:block !important;
        width:auto !important;
        height:auto !important;
        max-width:100% !important;
        max-height:100% !important;
        margin:auto !important;
        object-fit:contain !important;
        touch-action:auto !important;
        -webkit-user-drag:none;
    }

    .project-zoom-stage{
        width:100% !important;
        height:100% !important;
        min-width:0 !important;
        min-height:0 !important;
        overflow:hidden !important;
        touch-action:auto !important;
    }

    .project-zoom-stage img{
        display:block !important;
        width:auto !important;
        height:auto !important;
        max-width:100% !important;
        max-height:100% !important;
        margin:auto !important;
        object-fit:contain !important;
        touch-action:auto !important;
    }
}


/* =========================================================
   V14 — GALERIA IGUAL AO SITE ANTIGO (GLIGHTBOX)
========================================================= */

/*
 * A galeria personalizada anterior não é mais utilizada.
 * GLightbox gerencia zoom por pinça, touch, swipe e viewport.
 */

.project-gallery-oldstyle{
    display:inline-flex;
    align-items:center;
    gap:7px;
    text-decoration:none;
}

/* Botão fechar como no site antigo */
.glightbox-clean .gclose,
.glightbox-modern .gclose{
    right:20px !important;
    top:16px !important;

    width:42px !important;
    height:42px !important;

    border-radius:50% !important;

    background-color:rgba(255,255,255,.15) !important;
    color:#fff !important;

    transition:.2s ease !important;
}

.glightbox-clean .gclose:hover,
.glightbox-modern .gclose:hover{
    background-color:#7a5af8 !important;
    transform:scale(1.06);
}

/* Legenda fica separada da foto, como lightbox tradicional */
.glightbox-clean .gdesc-inner,
.glightbox-modern .gdesc-inner{
    padding:10px 16px !important;
    text-align:center !important;
}

.glightbox-clean .gslide-title,
.glightbox-modern .gslide-title{
    margin:0 !important;

    color:#f8fafc !important;

    font-family:Inter,sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.35 !important;

    text-align:center !important;
}

/* Fundo da galeria sempre cobre a tela */
.glightbox-container{
    background:rgba(4,7,15,.97) !important;
}

/*
 * Não bloqueamos pinch zoom.
 * GLightbox usa sua própria lógica de touch/zoom, igual ao site antigo.
 */
.glightbox-container,
.glightbox-container .gslider,
.glightbox-container .gslide,
.glightbox-container .gslide-inner-container,
.glightbox-container .ginner-container,
.glightbox-container .gslide-media,
.glightbox-container img{
    touch-action:auto !important;
}

/* A imagem nunca força largura/altura do documento */
.glightbox-container .gslide-image img{
    max-width:100% !important;
    max-height:calc(100dvh - 90px) !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
}

/* Notebook / tablet */
@media(max-width:1024px){

    .glightbox-clean .gclose,
    .glightbox-modern .gclose{
        right:10px !important;
        top:10px !important;
    }

    .glightbox-container .gslide-image img{
        max-height:calc(100dvh - 78px) !important;
    }

    .glightbox-clean .gnext,
    .glightbox-clean .gprev,
    .glightbox-modern .gnext,
    .glightbox-modern .gprev{
        width:42px !important;
        height:52px !important;
    }
}

/* Celular: mesma experiência do site antigo */
@media(max-width:600px){

    .glightbox-container{
        width:100vw !important;
        height:100dvh !important;
        overflow:hidden !important;
    }

    .glightbox-container .gslider,
    .glightbox-container .gslide,
    .glightbox-container .gslide-inner-container,
    .glightbox-container .ginner-container{
        width:100% !important;
        height:100% !important;
        min-height:0 !important;
    }

    .glightbox-container .gslide-media{
        max-width:100vw !important;
        max-height:calc(100dvh - 64px) !important;
        margin:auto !important;
    }

    .glightbox-container .gslide-image img{
        display:block !important;

        max-width:100vw !important;
        max-height:calc(100dvh - 64px) !important;

        width:auto !important;
        height:auto !important;

        margin:auto !important;

        object-fit:contain !important;
    }

    .glightbox-clean .gslide-description,
    .glightbox-modern .gslide-description{
        background:rgba(17,24,39,.92) !important;
    }

    .glightbox-clean .gslide-title,
    .glightbox-modern .gslide-title{
        color:#fff !important;
        font-size:11px !important;
    }

    .glightbox-clean .gclose,
    .glightbox-modern .gclose{
        width:38px !important;
        height:38px !important;
    }
}


/* =========================================================
   V15 — GLIGHTBOX COM LEGENDA FORA DA FOTO
   + CARDS MOBILE SEM ESPAÇOS EXCESSIVOS
========================================================= */

/* Links usados apenas para alimentar a galeria.
   Eles nunca podem ocupar espaço dentro do card. */
.project-gallery-hidden{
    display:none !important;
}

/* ---------------------------------------------------------
   AÇÕES DO CARD
--------------------------------------------------------- */

.project-actions{
    justify-content:flex-start !important;
    align-items:center !important;
    gap:12px !important;
}

.project-share{
    margin:0 !important;
}

/* ---------------------------------------------------------
   GLIGHTBOX — ESTRUTURA
   A imagem fica em uma área e a legenda em outra.
--------------------------------------------------------- */

.glightbox-container .gslide-inner-content{
    width:100% !important;
    height:100% !important;
}

.glightbox-container .ginner-container{
    width:100% !important;
    height:100% !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;

    overflow:hidden !important;
}

/* Área exclusiva da foto */
.glightbox-container .gslide-media{
    position:relative !important;

    flex:1 1 auto !important;
    min-height:0 !important;

    width:100% !important;
    max-width:100% !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    margin:0 !important;
    padding:18px 64px 10px !important;

    background:transparent !important;

    overflow:hidden !important;
}

/* A foto nunca invade a legenda */
.glightbox-container .gslide-image img{
    display:block !important;

    width:auto !important;
    max-width:100% !important;

    height:auto !important;
    max-height:calc(100dvh - 118px) !important;

    margin:auto !important;

    object-fit:contain !important;
}

/* ---------------------------------------------------------
   LEGENDA — SEM SOBREPOSIÇÃO
--------------------------------------------------------- */

.glightbox-clean .gslide-description,
.glightbox-modern .gslide-description,
.glightbox-container .gslide-description{
    position:relative !important;

    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;

    flex:0 0 auto !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;

    transform:none !important;

    opacity:1 !important;
    visibility:visible !important;

    background:#111827 !important;

    border-top:1px solid rgba(255,255,255,.10) !important;

    z-index:4 !important;
}

.glightbox-clean .gdesc-inner,
.glightbox-modern .gdesc-inner,
.glightbox-container .gdesc-inner{
    width:100% !important;

    min-height:56px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:11px 60px !important;

    background:#111827 !important;

    text-align:center !important;
}

.glightbox-clean .gslide-title,
.glightbox-modern .gslide-title,
.glightbox-container .gslide-title{
    width:100% !important;

    margin:0 !important;

    color:#fff !important;

    font-family:Inter,Arial,sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.4 !important;

    text-align:center !important;

    opacity:1 !important;
    visibility:visible !important;
}

/* Não queremos o comportamento padrão que joga a descrição
   por cima da imagem. */
.glightbox-container .gslide-desc{
    color:#fff !important;
}

/* ---------------------------------------------------------
   NOTEBOOK / TABLET
--------------------------------------------------------- */

@media(max-width:1024px){

    .glightbox-container .gslide-media{
        padding:12px 50px 8px !important;
    }

    .glightbox-container .gslide-image img{
        max-height:calc(100dvh - 106px) !important;
    }

    .glightbox-clean .gdesc-inner,
    .glightbox-modern .gdesc-inner,
    .glightbox-container .gdesc-inner{
        min-height:52px !important;
        padding:9px 48px !important;
    }

    .glightbox-clean .gslide-title,
    .glightbox-modern .gslide-title,
    .glightbox-container .gslide-title{
        font-size:12px !important;
    }
}

/* ---------------------------------------------------------
   CELULAR
--------------------------------------------------------- */

@media(max-width:600px){

    /* Card: botões agrupados, sem aqueles espaços enormes */
    .project-actions{
        display:flex !important;
        flex-direction:column !important;

        align-items:flex-start !important;
        justify-content:flex-start !important;

        gap:10px !important;

        margin-top:18px !important;
    }

    .project-actions > .btn,
    .project-gallery-oldstyle{
        margin:0 !important;
    }

    .project-share{
        display:flex !important;
        align-items:center !important;

        gap:8px !important;

        margin-top:2px !important;
    }

    .project-share-buttons{
        gap:7px !important;
    }

    /* Lightbox ocupa a tela e se divide entre foto + legenda */
    .glightbox-container .ginner-container{
        justify-content:flex-start !important;
    }

    .glightbox-container .gslide-media{
        flex:1 1 auto !important;

        width:100vw !important;

        padding:
            calc(52px + env(safe-area-inset-top))
            40px
            8px !important;

        overflow:hidden !important;
    }

    .glightbox-container .gslide-image img{
        width:auto !important;
        max-width:100% !important;

        height:auto !important;
        max-height:calc(100dvh - 132px - env(safe-area-inset-top)) !important;

        object-fit:contain !important;
    }

    /* Barra de legenda totalmente fora da foto */
    .glightbox-clean .gslide-description,
    .glightbox-modern .gslide-description,
    .glightbox-container .gslide-description{
        flex:0 0 auto !important;

        width:100vw !important;

        min-height:68px !important;
        max-height:92px !important;

        overflow:auto !important;

        background:#111827 !important;
    }

    .glightbox-clean .gdesc-inner,
    .glightbox-modern .gdesc-inner,
    .glightbox-container .gdesc-inner{
        min-height:68px !important;

        padding:
            10px
            48px
            calc(10px + env(safe-area-inset-bottom)) !important;
    }

    .glightbox-clean .gslide-title,
    .glightbox-modern .gslide-title,
    .glightbox-container .gslide-title{
        white-space:normal !important;

        font-size:11px !important;
        line-height:1.35 !important;
    }

    /* Setas ficam apenas na área da foto */
    .glightbox-clean .gprev,
    .glightbox-modern .gprev{
        left:5px !important;
    }

    .glightbox-clean .gnext,
    .glightbox-modern .gnext{
        right:5px !important;
    }
}


/* =========================================================
   V16 — GALERIA MOBILE: FOTO GRANDE + LEGENDA JUNTO DA FOTO
========================================================= */

@media(max-width:600px){

    /*
     * No celular, imagem + legenda formam um único bloco central.
     * Isso elimina a foto pequena com a legenda perdida no rodapé.
     */
    .glightbox-container .gslide-inner-content,
    .glightbox-container .ginner-container{
        width:100vw !important;
        height:100dvh !important;
        min-height:100dvh !important;
    }

    .glightbox-container .ginner-container{
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:center !important;
        overflow:hidden !important;
    }

    .glightbox-container .gslide-media{
        flex:0 0 auto !important;

        width:100vw !important;
        max-width:100vw !important;
        height:auto !important;
        max-height:none !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        margin:0 !important;
        padding:0 !important;

        overflow:hidden !important;
        background:#000 !important;
    }

    .glightbox-container .gslide-image{
        width:100vw !important;
        max-width:100vw !important;
        height:auto !important;
    }

    .glightbox-container .gslide-image img{
        display:block !important;

        width:100vw !important;
        max-width:100vw !important;
        height:auto !important;
        max-height:72dvh !important;

        margin:0 auto !important;
        padding:0 !important;

        object-fit:contain !important;
    }

    /*
     * Legenda fica imediatamente abaixo da foto.
     * Nunca fica em cima da imagem e nem presa no rodapé da tela.
     */
    .glightbox-clean .gslide-description,
    .glightbox-modern .gslide-description,
    .glightbox-container .gslide-description{
        position:static !important;

        flex:0 0 auto !important;

        width:100vw !important;
        max-width:100vw !important;
        min-height:0 !important;
        max-height:92px !important;

        margin:0 !important;
        padding:0 !important;

        transform:none !important;

        overflow:auto !important;

        background:#111827 !important;
        border-top:1px solid rgba(255,255,255,.10) !important;

        opacity:1 !important;
        visibility:visible !important;
    }

    .glightbox-clean .gdesc-inner,
    .glightbox-modern .gdesc-inner,
    .glightbox-container .gdesc-inner{
        min-height:52px !important;
        padding:10px 44px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        background:#111827 !important;
    }

    .glightbox-clean .gslide-title,
    .glightbox-modern .gslide-title,
    .glightbox-container .gslide-title{
        margin:0 !important;

        color:#fff !important;

        font-size:11px !important;
        line-height:1.35 !important;
        font-weight:700 !important;

        text-align:center !important;
        white-space:normal !important;
    }

    /* Fechar e setas continuam sempre acessíveis */
    .glightbox-clean .gclose,
    .glightbox-modern .gclose{
        top:10px !important;
        right:10px !important;

        width:40px !important;
        height:40px !important;

        z-index:99999 !important;
    }

    .glightbox-clean .gprev,
    .glightbox-modern .gprev,
    .glightbox-clean .gnext,
    .glightbox-modern .gnext{
        top:50% !important;

        width:36px !important;
        height:54px !important;

        transform:translateY(-50%) !important;

        border-radius:12px !important;

        background:rgba(17,24,39,.72) !important;
    }

    .glightbox-clean .gprev,
    .glightbox-modern .gprev{
        left:4px !important;
    }

    .glightbox-clean .gnext,
    .glightbox-modern .gnext{
        right:4px !important;
    }
}


/* =========================================================
   OPÇÃO 2 — CARD "DIVERSAS ÁREAS"
========================================================= */

.hero-solutions-card{
    width:min(1220px,calc(100% - 32px));
    margin:0 auto;

    padding:28px;

    border:1px solid rgba(126,92,255,.42);
    border-radius:30px;

    background:
        radial-gradient(circle at 50% 38%,rgba(98,61,207,.28),transparent 38%),
        linear-gradient(180deg,#091022,#0b1224);

    box-shadow:
        0 28px 80px rgba(0,0,0,.28),
        0 0 70px rgba(122,90,248,.12);

    position:relative;
    overflow:hidden;
}

.hero-solutions-card::before{
    content:"";
    position:absolute;
    inset:auto 10% -140px;
    height:280px;
    background:radial-gradient(ellipse,rgba(128,60,255,.35),transparent 66%);
    pointer-events:none;
}

.hero-solutions-heading{
    position:relative;
    z-index:2;

    max-width:760px;

    margin:0 auto 26px;

    text-align:center;
}

.hero-solutions-heading > span{
    display:inline-flex;

    padding:7px 18px;

    border:1px solid #7a5af8;
    border-radius:999px;

    color:#fff;

    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
}

.hero-solutions-heading h2{
    margin:13px 0 6px;

    color:#fff;

    font-size:clamp(28px,4vw,48px);
    line-height:1.02;
    letter-spacing:-.035em;
}

.hero-solutions-heading h2 strong{
    color:#9a50ff;
}

.hero-solutions-heading p{
    max-width:620px;
    margin:0 auto;

    color:#c6cad5;

    font-size:15px;
}

.hero-solutions-layout{
    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:200px minmax(0,1fr) 200px;

    gap:24px;

    align-items:center;
}

.hero-sector-list{
    display:grid;
    gap:14px;
}

.hero-sector-card{
    overflow:hidden;

    border:1px solid rgba(72,156,255,.72);
    border-radius:14px;

    background:#101a31;

    box-shadow:0 8px 26px rgba(0,92,255,.12);
}

.hero-sector-card > img{
    width:100%;
    height:78px;

    object-fit:cover;
}

.hero-sector-card > div{
    display:flex;
    align-items:center;
    gap:8px;

    min-height:40px;

    padding:8px 12px;

    color:#fff;

    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}

.hero-sector-card i{
    color:#72a7ff;
    font-size:17px;
}

.hero-sector-more{
    min-height:118px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    border-color:#7a5af8;
}

.hero-sector-more-icon{
    min-height:0 !important;
    padding:0 !important;
}

.hero-sector-more-icon i{
    color:#9a7cff;
    font-size:27px;
}

.hero-system-center{
    min-width:0;
}

.hero-center-zoom{
    position:relative;

    display:block;

    overflow:hidden;

    border:1px solid rgba(190,116,255,.8);
    border-radius:20px;

    background:#0c1428;

    box-shadow:0 0 40px rgba(122,90,248,.18);

    cursor:zoom-in;
}

.hero-center-zoom > img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
}

.hero-center-zoom-icon{
    position:absolute;
    right:12px;
    bottom:12px;

    width:42px;
    height:42px;

    display:grid;
    place-items:center;

    border:1px solid rgba(255,255,255,.20);
    border-radius:50%;

    color:#fff;
    background:rgba(13,21,39,.78);
    backdrop-filter:blur(8px);
}

.hero-system-benefits{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    gap:8px;

    margin-top:14px;
}

.hero-system-benefits span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    color:#d9dcec;

    font-size:11px;
    font-weight:700;

    text-align:center;
}

.hero-system-benefits i{
    color:#8d70ff;
    font-size:16px;
}

/* NOTEBOOK */
@media(max-width:1200px){

    .hero-solutions-card{
        padding:22px;
    }

    .hero-solutions-layout{
        grid-template-columns:160px minmax(0,1fr) 160px;
        gap:16px;
    }

    .hero-sector-card > img{
        height:66px;
    }

    .hero-sector-card > div{
        font-size:10px;
    }
}

/* TABLET */
@media(max-width:900px){

    .hero-solutions-card{
        width:calc(100% - 20px);
        padding:18px;

        border-radius:22px;
    }

    .hero-solutions-layout{
        grid-template-columns:1fr;
        gap:16px;
    }

    .hero-system-center{
        order:1;
    }

    .hero-sector-left{
        order:2;
    }

    .hero-sector-right{
        order:3;
    }

    .hero-sector-list{
        grid-template-columns:repeat(4,1fr);
        gap:10px;
    }

    .hero-sector-card > img{
        height:72px;
    }

    .hero-sector-card > div{
        min-height:38px;
        padding:7px;

        justify-content:center;

        font-size:9px;
        text-align:center;
    }

    .hero-sector-more{
        min-height:110px;
    }
}

/* CELULAR */
@media(max-width:600px){

    .hero-solutions-card{
        width:calc(100% - 12px);

        padding:14px 10px 16px;

        border-radius:18px;
    }

    .hero-solutions-heading{
        margin-bottom:16px;
    }

    .hero-solutions-heading > span{
        padding:6px 12px;
        font-size:9px;
    }

    .hero-solutions-heading h2{
        margin-top:10px;
        font-size:26px;
    }

    .hero-solutions-heading p{
        font-size:12px;
        line-height:1.45;
    }

    /* No celular: foto central primeiro e grande */
    .hero-system-center{
        order:1;
    }

    .hero-center-zoom{
        border-radius:12px;
    }

    .hero-center-zoom > img{
        aspect-ratio:4/3;
        object-fit:cover;
        object-position:center;
    }

    .hero-center-zoom-icon{
        width:38px;
        height:38px;

        right:8px;
        bottom:8px;
    }

    .hero-system-benefits{
        grid-template-columns:repeat(2,1fr);
        gap:7px;

        margin-top:10px;
    }

    .hero-system-benefits span{
        padding:7px 5px;

        border:1px solid rgba(255,255,255,.08);
        border-radius:10px;

        background:rgba(255,255,255,.025);

        font-size:9px;
    }

    /* Áreas ficam em cards 2x2 logo abaixo */
    .hero-sector-list{
        grid-template-columns:repeat(2,minmax(0,1fr));

        gap:8px;
    }

    .hero-sector-left{
        order:2;
    }

    .hero-sector-right{
        order:3;
    }

    .hero-sector-card{
        border-radius:11px;
    }

    .hero-sector-card > img{
        height:72px;
    }

    .hero-sector-card > div{
        min-height:34px;

        padding:5px 6px;

        font-size:9px;
    }

    .hero-sector-more{
        min-height:106px;
    }
}


/* =========================================================
   V17 — CARDS DE ÁREAS SEM DUPLICAÇÃO DE NOMES
========================================================= */

.hero-sector-photo{
    position:relative;
    min-height:118px;
    overflow:hidden;
}

.hero-sector-photo > img{
    width:100% !important;
    height:118px !important;
    object-fit:cover !important;
    display:block;
}

.hero-sector-photo::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(5,10,25,.08),rgba(5,10,25,.78));
    pointer-events:none;
}

.hero-sector-photo > .hero-sector-overlay{
    position:absolute;
    z-index:2;
    left:0;
    right:0;
    bottom:0;

    min-height:auto !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;

    padding:12px 13px !important;

    color:#fff !important;
    background:transparent !important;

    font-size:12px !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
}

.hero-sector-photo > .hero-sector-overlay i{
    color:#8eb8ff !important;
    font-size:17px !important;
}

.hero-sector-more-link{
    text-decoration:none;
    color:#fff;
    transition:.2s ease;
}

.hero-sector-more-link:hover{
    transform:translateY(-3px);
    border-color:#a778ff !important;
    box-shadow:0 14px 34px rgba(122,90,248,.18);
}

@media(max-width:900px){
    .hero-sector-photo,
    .hero-sector-photo > img{
        min-height:104px;
        height:104px !important;
    }

    .hero-sector-photo > .hero-sector-overlay{
        justify-content:center !important;
        padding:8px !important;
        font-size:10px !important;
    }
}

@media(max-width:600px){
    .hero-sector-photo,
    .hero-sector-photo > img{
        min-height:96px;
        height:96px !important;
    }

    .hero-sector-photo > .hero-sector-overlay{
        justify-content:flex-start !important;
        padding:8px 9px !important;
        font-size:9px !important;
    }

    .hero-sector-photo > .hero-sector-overlay i{
        font-size:14px !important;
    }
}


/* =========================================================
   HERO DIVERSAS ÁREAS — AJUSTE FINAL
========================================================= */

/* Imagem central "solta": sem moldura, sem quadrado e sem borda */
.hero-center-clean{
    position:relative !important;

    display:block !important;

    overflow:visible !important;

    border:0 !important;
    border-radius:0 !important;

    background:transparent !important;

    box-shadow:none !important;

    cursor:zoom-in;
}

.hero-center-clean > img{
    display:block !important;

    width:100% !important;
    height:auto !important;

    aspect-ratio:auto !important;
    object-fit:contain !important;

    border:0 !important;
    border-radius:0 !important;

    background:transparent !important;

    box-shadow:none !important;
}

/* Ícone de ampliar continua flutuando */
.hero-center-clean .hero-center-zoom-icon{
    right:14px !important;
    bottom:14px !important;

    width:44px !important;
    height:44px !important;

    border:1px solid rgba(255,255,255,.22) !important;

    background:rgba(10,16,32,.82) !important;
}

/* Cards já chegam com nome e ícone dentro da própria imagem */
.hero-sector-photo-final{
    overflow:hidden !important;

    padding:0 !important;

    border:1px solid rgba(98,117,255,.48) !important;
    border-radius:14px !important;

    background:#0c1327 !important;
}

.hero-sector-photo-final > img{
    display:block !important;

    width:100% !important;
    height:auto !important;

    object-fit:cover !important;

    border-radius:13px !important;
}

/* Remove qualquer pseudo-overlay herdado dos cards antigos */
.hero-sector-photo-final::after,
.hero-sector-photo-final::before{
    display:none !important;
}

/* O card + continua clicável */
.hero-sector-more-link{
    text-decoration:none !important;
}

/* ---------------------------------------------------------
   NOTEBOOK / TABLET
--------------------------------------------------------- */
@media(max-width:1200px){

    .hero-solutions-layout{
        grid-template-columns:170px minmax(0,1fr) 170px !important;
        gap:16px !important;
    }
}

@media(max-width:900px){

    .hero-solutions-layout{
        grid-template-columns:1fr !important;
    }

    .hero-system-center{
        order:1 !important;
    }

    .hero-sector-left{
        order:2 !important;
    }

    .hero-sector-right{
        order:3 !important;
    }

    .hero-sector-list{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .hero-sector-photo-final > img{
        width:100% !important;
        height:auto !important;
    }
}

/* ---------------------------------------------------------
   CELULAR
--------------------------------------------------------- */
@media(max-width:600px){

    .hero-solutions-card{
        width:calc(100% - 10px) !important;

        padding:13px 8px 16px !important;

        border-radius:18px !important;
    }

    .hero-system-center{
        margin-bottom:12px;
    }

    /* imagem central realmente ocupa a largura disponível */
    .hero-center-clean{
        width:100% !important;
    }

    .hero-center-clean > img{
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
    }

    .hero-center-clean .hero-center-zoom-icon{
        width:40px !important;
        height:40px !important;

        right:8px !important;
        bottom:8px !important;
    }

    /* 2 cards por linha, mantendo leitura fácil */
    .hero-sector-list{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;

        gap:8px !important;
    }

    .hero-sector-photo-final{
        border-radius:11px !important;
    }

    .hero-sector-photo-final > img{
        width:100% !important;
        height:auto !important;

        border-radius:10px !important;
    }

    .hero-sector-more{
        min-height:100% !important;
    }
}


/* =========================================================
   AJUSTE SOLICITADO — MANTENDO A IMAGEM ANTERIOR
   =========================================================
   - imagem anterior preservada
   - texto acidental removido da parte superior da própria imagem
   - menos espaço no desktop entre o título e imagem/cards
   - borda nos 4 benefícios também no computador
========================================================= */

/* Bordas dos quatro benefícios em todas as telas */
.hero-system-benefits{
    gap:10px !important;
    margin-top:12px !important;
}

.hero-system-benefits span{
    min-height:50px !important;

    padding:9px 12px !important;

    border:1px solid rgba(126,92,255,.48) !important;
    border-radius:13px !important;

    background:rgba(255,255,255,.025) !important;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.015),
        0 7px 20px rgba(0,0,0,.08) !important;
}

/* Desktop / notebook */
@media(min-width:901px){

    /*
     * Antes o grid usava align-items:center.
     * Como as colunas laterais são maiores que a imagem central,
     * isso empurrava a foto para baixo e criava o espaço enorme.
     */
    .hero-solutions-layout{
        align-items:start !important;
        margin-top:0 !important;
        padding-top:0 !important;
    }

    .hero-solutions-heading{
        margin-bottom:14px !important;
    }

    .hero-solutions-heading h2{
        margin-bottom:5px !important;
    }

    .hero-solutions-heading p{
        margin-bottom:0 !important;
    }

    .hero-system-center{
        margin-top:0 !important;
        padding-top:0 !important;
        align-self:start !important;
    }

    .hero-center-clean{
        margin-top:0 !important;
    }

    .hero-center-clean > img{
        margin-top:0 !important;
    }
}

/* Monitores grandes */
@media(min-width:1400px){

    .hero-solutions-heading{
        margin-bottom:12px !important;
    }

    .hero-solutions-layout{
        gap:18px !important;
    }
}

/* Tablet */
@media(max-width:900px){

    .hero-system-benefits span{
        min-height:48px !important;
    }
}

/* Celular */
@media(max-width:600px){

    .hero-system-benefits{
        gap:8px !important;
        margin-top:10px !important;
    }

    .hero-system-benefits span{
        min-height:46px !important;
        padding:8px 6px !important;

        border:1px solid rgba(126,92,255,.48) !important;
        border-radius:11px !important;
    }
}
