/* Lumyx agency v1: extends the original design tokens, never replaces them. */
.agency-page{background:var(--bg);color:var(--text)}
.agency-page .nav [aria-current="page"]{color:var(--lime)}
.agency-page .nav a:not(.nav-cta):hover{color:var(--lime)}
.agency-hero{padding:185px 0 110px;min-height:83vh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 76% 41%,rgba(195,245,0,.045),transparent 38%),var(--bg)}
.agency-hero-grid{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(280px,.83fr);gap:5%;align-items:center}
.agency-hero h1{font:700 clamp(48px,6.7vw,102px)/1.02 "Space Grotesk",Inter,sans-serif;letter-spacing:-.065em;margin:24px 0 24px;max-width:990px}
.agency-hero h1 span:not([data-content]){color:var(--lime)}
.agency-lead{font-size:clamp(16px,1.45vw,20px);line-height:1.7;color:#c8c8c8;max-width:650px}
.agency-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.agency-art{height:450px;display:grid;place-items:center;position:relative;isolation:isolate}
.agency-art:before{content:"";position:absolute;inset:14% 5%;border:1px solid rgba(195,245,0,.15);border-radius:50%;transform:rotate(-25deg);animation:agency-orbit 22s linear infinite}
.agency-art:after{content:"";position:absolute;width:82%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.07);box-shadow:inset 0 0 100px rgba(195,245,0,.02)}
.agency-orbit{width:min(56%,280px);filter:drop-shadow(0 0 40px rgba(195,245,0,.075));animation:agency-float 6s ease-in-out infinite}
.agency-orbit img{width:100%;height:auto;display:block}
.agency-art-caption{position:absolute;bottom:6%;font-size:11px;letter-spacing:.18em;color:var(--muted);font-weight:800}
.agency-section{padding:100px 0;background:var(--bg)}
.agency-section:nth-of-type(even){background:var(--bg-2)}
.agency-section .section-head h2{font-size:clamp(34px,4.5vw,66px);letter-spacing:-.052em;line-height:1.08}
.agency-section .section-head h2 span{color:var(--lime)}
.agency-service-grid,.agency-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.agency-panel,.agency-service-card,.agency-project-card{background:linear-gradient(150deg,#1e1e1e,#151515);border:1px solid var(--line);border-radius:22px;padding:30px;transition:border-color .3s,transform .3s,box-shadow .3s;min-width:0}
.agency-panel:hover,.agency-service-card:hover,.agency-project-card:hover{border-color:rgba(195,245,0,.3);transform:translateY(-4px);box-shadow:0 18px 55px rgba(0,0,0,.25)}
.agency-service-card h3,.agency-panel h3,.agency-founder h3{font:700 clamp(21px,2vw,29px)/1.18 "Space Grotesk",sans-serif;letter-spacing:-.04em;margin:12px 0}
.agency-service-card p,.agency-panel p,.agency-founder p{line-height:1.75;color:#bdbdbd;font-size:15px}
.agency-service-card .agency-tag{font-size:11px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;color:var(--lime)}
.agency-service-card .agency-card-link{display:inline-block;margin-top:12px;color:var(--lime);font-weight:700;text-decoration:none}
.agency-more{margin:30px 0 0}
.agency-split,.agency-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.agency-project-card{padding:0;overflow:hidden;display:block;color:var(--text);text-decoration:none}
.agency-project-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .45s}
.agency-project-card:hover img{transform:scale(1.045)}
.agency-project-card>div{padding:24px}
.agency-project-card h3{font:700 23px/1.2 "Space Grotesk",sans-serif;margin:6px 0}
.agency-project-card .agency-tag{font-size:11px;color:var(--lime);letter-spacing:.1em}
.agency-note{color:var(--muted);font-size:13px;line-height:1.6;margin-top:24px}
.agency-section-copy{font-size:18px;color:#c7c7c7;max-width:700px;line-height:1.7}
.agency-founder{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:center;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--panel);padding:26px}
.agency-founder-photo{background:linear-gradient(145deg,#242424,#111);aspect-ratio:3/4;border-radius:16px;overflow:hidden}
.agency-founder-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.agency-founder-photo.photo-pending:after{content:"Fotografia em preparação";display:grid;height:100%;place-items:center;color:var(--muted);font-size:13px}
.agency-founder h3{font-size:clamp(28px,4vw,54px)}
.agency-founder span{color:var(--lime);font-weight:800}
.agency-step-num{font-size:32px;color:var(--lime);font-weight:700}
.agency-form-wrap{background:var(--panel);border:1px solid var(--line);padding:clamp(20px,4vw,48px);border-radius:22px}
.agency-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.agency-form label{color:#ddd;font-size:13px;font-weight:700;display:flex;flex-direction:column;gap:9px}
.agency-form input,.agency-form textarea,.agency-form select{width:100%;background:#111;border:1px solid #454545;border-radius:12px;color:#fff;padding:14px;font:inherit}
.agency-form input:focus-visible,.agency-form textarea:focus-visible,.agency-form select:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.agency-form-wide{grid-column:1/-1}
.agency-service-card:focus-within,.agency-project-card:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
@keyframes agency-orbit{to{transform:rotate(335deg)}}@keyframes agency-float{50%{transform:translateY(-16px) rotate(5deg)}}
@media(max-width:950px){.agency-hero-grid{grid-template-columns:1fr}.agency-art{height:230px}.agency-orbit{max-width:150px}.agency-service-grid,.agency-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.agency-hero{padding:140px 0 75px;min-height:auto}.agency-hero h1{font-size:clamp(42px,11vw,66px)}.agency-art{height:185px}.agency-section{padding:70px 0}.agency-service-grid,.agency-project-grid,.agency-split,.agency-social-grid,.agency-form{grid-template-columns:1fr}.agency-founder{grid-template-columns:1fr;padding:20px}.agency-founder-photo{max-width:300px}.agency-form-wide{grid-column:auto}.agency-panel,.agency-service-card{padding:24px}}
@media(prefers-reduced-motion:reduce){.agency-art:before,.agency-orbit{animation:none!important}.agency-panel,.agency-service-card,.agency-project-card,.agency-project-card img{transition:none!important}}

/* Preserve the visual hierarchy when CMS text replaces heading fragments. */
.agency-page .agency-heading-base,.portfolio-page .agency-heading-base{color:inherit!important}
.agency-page .agency-hero h1 span[data-content$=".highlight"]{color:var(--lime)}
.portfolio-page .portfolio-intro h1 span[data-content$=".highlight"]{color:var(--lime)}
.portfolio-page .portfolio-work h2 span[data-content$=".projectsHighlight"]{color:var(--lime)}

/* Team — shares the same Lumyx card language and colors. */
.agency-team-followup{margin-top:64px}
.agency-team-heading{margin-bottom:24px}
.agency-team-heading h3{font:700 clamp(28px,4vw,48px)/1.12 "Space Grotesk",sans-serif;letter-spacing:-.055em;margin:14px 0}
.agency-team-heading h3 span{color:var(--lime)}
.agency-team-heading p{font-size:15px;line-height:1.7;color:var(--muted);max-width:610px}
.agency-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.agency-team-home{margin-top:18px}
.agency-team-card{border:1px solid var(--line);border-radius:22px;overflow:hidden;min-width:0;background:linear-gradient(150deg,#1e1e1e,#151515);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.agency-team-card:hover{transform:translateY(-5px);border-color:rgba(195,245,0,.3);box-shadow:0 18px 50px rgba(0,0,0,.3)}
.agency-team-photo{position:relative;background:linear-gradient(135deg,#262a1b,#171717);aspect-ratio:4/4.5;overflow:hidden;display:grid;place-items:center}
.agency-team-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.agency-team-card:hover .agency-team-photo img{transform:scale(1.04)}
.agency-team-photo-pending:after{content:"LUMYX STUDIO";letter-spacing:.2em;font:800 12px/1.6 Inter,sans-serif;color:var(--lime);opacity:.7}
.agency-team-card-body{padding:24px}
.agency-team-card-body h4{font:700 clamp(21px,2.2vw,30px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-.045em;margin:0 0 8px}
.agency-team-role{font-size:11px;letter-spacing:.09em;font-weight:800;text-transform:uppercase;color:var(--lime)}
.agency-team-card-body p{font-size:13px;line-height:1.7;color:#b9b9b9;margin:14px 0 0}
.agency-founder-home{max-width:950px}
.agency-founder-home .btn{margin-top:12px}
#team-members-wrap[hidden],#home-team-grid[hidden]{display:none!important}
@media(max-width:950px){.agency-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){.agency-team-followup{margin-top:42px}.agency-team-grid{grid-template-columns:1fr}.agency-team-photo{aspect-ratio:4/3.7}.agency-team-card-body{padding:22px}}
@media(prefers-reduced-motion:reduce){.agency-team-card,.agency-team-photo img{transition:none!important}}

/* Elegant two-tone hero: the lime is an accent, not a full neon headline. */
.agency-page .agency-hero h1 .agency-heading-base{color:var(--text)!important}
.agency-page .agency-hero h1 .agency-hero-accent{color:var(--lime)!important}

/* Visual refinement — 2026: editorial hierarchy, first-party imagery, iconography. */
.agency-page .agency-hero h1{font-size:clamp(41px,5.1vw,74px);line-height:1.075;letter-spacing:-.058em;max-width:800px}
.agency-page .agency-section .section-head h2{font-size:clamp(30px,3.4vw,49px);line-height:1.14;letter-spacing:-.052em}
.portfolio-page .portfolio-intro h1{font-size:clamp(43px,5.25vw,76px);line-height:1.1}
.project-detail-page .case-header h1{font-size:clamp(43px,5.4vw,73px);line-height:1.09}
.agency-page .agency-hero{min-height:min(80vh,760px)}
.agency-icon{display:inline-flex;justify-content:center;align-items:center;flex:none;width:48px;height:48px;color:var(--lime);border:1px solid rgba(195,245,0,.24);background:rgba(195,245,0,.035);border-radius:14px}
.agency-icon svg{width:24px;height:24px;display:block}
.agency-icon-inline{width:36px;height:36px;border-radius:10px}
.agency-icon-inline svg{width:18px;height:18px}
.agency-service-icon{margin-bottom:24px;width:53px;height:53px}
.agency-service-card{position:relative;overflow:hidden}
.agency-service-card::after{content:"";position:absolute;top:0;right:25px;width:1px;height:45px;background:linear-gradient(transparent,rgba(195,245,0,.3));pointer-events:none}
.agency-service-card h3{font-size:clamp(19px,1.85vw,25px);line-height:1.22}
.agency-service-card p{font-size:14px;line-height:1.7}
.agency-values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.agency-value-card{padding:clamp(23px,2.7vw,36px);border:1px solid var(--line);background:linear-gradient(160deg,#1b1b1b,#151515);border-radius:22px;transition:transform .25s,border-color .25s}
.agency-value-card:hover{transform:translateY(-4px);border-color:rgba(195,245,0,.28)}
.agency-value-icon{margin-bottom:20px;width:56px;height:56px}
.agency-value-card h3{font:700 clamp(22px,2vw,28px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-.04em;margin:0 0 14px}
.agency-value-card p{font-size:14px;line-height:1.8;color:#bababa;margin:0}
.agency-history-grid{align-items:stretch}
.agency-history-content{display:flex;flex-direction:column;justify-content:center}
.agency-history-content h3{font-size:clamp(24px,2.8vw,38px);line-height:1.16}
.agency-history-label{font-size:11px;letter-spacing:.2em;color:var(--lime);font-weight:800}
.agency-history-art{position:relative;min-height:330px;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(195,245,0,.14);background:linear-gradient(135deg,rgba(195,245,0,.045),transparent 56%),#111;border-radius:22px}
.agency-history-art::before{content:"";inset:0;position:absolute;background:url("assets/lumyx-grid-pattern.svg") center/cover no-repeat;opacity:.23}
.agency-history-art::after{content:"";position:absolute;inset:16% 24%;border-radius:50%;border:1px solid rgba(195,245,0,.16)}
.agency-history-symbol{width:34%;min-width:115px;max-width:180px;position:relative;z-index:2;transform:rotate(-8deg)}
.agency-history-symbol img{display:block;width:100%}
.agency-history-top{position:absolute;top:27px;left:27px;font-size:10px;font-weight:800;letter-spacing:.18em;color:#c0c0bd}
.agency-history-bottom{position:absolute;bottom:27px;left:27px;right:27px;display:flex;justify-content:space-between;gap:6px;letter-spacing:.13em;font-size:10px;font-weight:800;color:#aaa}
/* Case study spotlight shows *real* uploaded project covers in mockup frames. */
.agency-spotlight-section{padding:90px 0;background:#101010;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.agency-spotlight-section[hidden]{display:none!important}
.agency-spotlight-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(30px,4vw,76px)}
.agency-spotlight-copy h2,.agency-section-heading h2{font:700 clamp(30px,3.5vw,50px)/1.13 "Space Grotesk",sans-serif;letter-spacing:-.055em;margin:18px 0}
.agency-spotlight-copy p,.agency-section-heading p{font-size:15px;line-height:1.75;color:#bdbdbd;max-width:600px}
.agency-spotlight-copy small{display:block;font-size:11px;color:#828282;line-height:1.6;margin-top:22px;max-width:400px}
.agency-spotlight-meta{display:flex;align-items:center;gap:12px;margin:22px 0 27px;font-size:12px;color:#ddd}
.agency-spotlight-meta strong{line-height:1.5}
.agency-mockup-scene{background:linear-gradient(140deg,#1c1c1b,#101010);border:1px solid rgba(255,255,255,.1);border-radius:24px;position:relative;min-height:420px;overflow:hidden;isolation:isolate}
.agency-mockup-dots{position:absolute;inset:0;background-image:radial-gradient(#a3a3a3 1px,transparent 1px);background-size:24px 24px;opacity:.15}
.agency-mockup-desktop{position:absolute;left:9%;top:11%;width:74%;height:68%;overflow:hidden;border-radius:11px;border:6px solid #2e2e2e;box-shadow:0 25px 48px rgba(0,0,0,.55);background:#222;transform:rotate(-4deg)}
.agency-mockup-toolbar{height:31px;background:#262626;border-bottom:1px solid #474747;display:flex;align-items:center;gap:5px;padding:0 12px}
.agency-mockup-toolbar i{width:7px;height:7px;border-radius:50%;background:#777}
.agency-mockup-toolbar span{margin-left:auto;font-size:8px;letter-spacing:.14em;color:#999}
.agency-mockup-desktop>img{height:calc(100% - 31px);width:100%;display:block;object-fit:cover;object-position:center}
.agency-mockup-mobile{position:absolute;right:7%;bottom:7%;width:26%;height:63%;border:7px solid #363636;border-radius:23px;background:#222;box-shadow:0 16px 34px rgba(0,0,0,.6);overflow:hidden;transform:rotate(8deg)}
.agency-mockup-mobile img{display:block;width:100%;height:100%;object-fit:cover}
.agency-mockup-speaker{position:absolute;z-index:1;top:5px;left:50%;transform:translateX(-50%);background:#222;border-radius:12px;width:30%;height:6px}
.agency-mockup-home-indicator{position:absolute;z-index:1;bottom:6px;width:28%;height:4px;left:36%;border-radius:10px;background:#eee}
.agency-mockup-stamp{position:absolute;bottom:6%;left:8%;display:flex;gap:9px;align-items:center;color:#d7d7d0;font-size:10px;letter-spacing:.11em;font-weight:800}
.agency-mockup-stamp [data-icon]{display:flex;color:var(--lime)}
.agency-mockup-stamp svg{width:24px;height:24px}
/* Process and differentiators */
.agency-process-section,.agency-differentials-section{padding:90px 0}
.agency-process-section{background:var(--bg-2)}
.agency-differentials-section{background:var(--bg)}
.agency-section-heading{max-width:760px;margin:0 0 35px}
.agency-section-heading h2{max-width:700px}
.agency-process-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.agency-differentials-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.agency-editorial-card{background:linear-gradient(155deg,#202020,#161616);border:1px solid var(--line);border-radius:18px;min-width:0;padding:24px;transition:transform .25s,border-color .25s}
.agency-editorial-card:hover{transform:translateY(-4px);border-color:rgba(195,245,0,.26)}
.agency-editorial-top{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:26px}
.agency-editorial-number{color:#707070;font:700 12px/1 "Space Grotesk",sans-serif}
.agency-editorial-card h3{font:700 clamp(18px,1.8vw,23px)/1.23 "Space Grotesk",sans-serif;letter-spacing:-.035em;margin:0 0 12px}
.agency-editorial-card p{font-size:13px;line-height:1.75;color:#b3b3b3;margin:0}
.agency-differentials-graphic{margin-top:28px;height:120px;overflow:hidden;border:1px solid rgba(195,245,0,.14);border-radius:14px}
.agency-differentials-graphic img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.agency-services-banner{margin-top:28px;position:relative;border-radius:20px;overflow:hidden;border:1px solid rgba(195,245,0,.14);min-height:170px;background:#151515}
.agency-services-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.agency-services-banner div{position:relative;z-index:1;padding:44px clamp(22px,5vw,60px);background:linear-gradient(90deg,rgba(11,11,11,.87),rgba(11,11,11,.1))}
.agency-services-banner strong{font:700 clamp(21px,2.5vw,33px)/1.2 "Space Grotesk",sans-serif;letter-spacing:-.04em}
.agency-services-banner p{font-size:13px;color:#ddd;margin-top:12px}
/* Complete site-wide footer */
.agency-footer{padding:0 0 20px;background:linear-gradient(180deg,#181818,#111 55%,#101010);border-top:1px solid rgba(195,245,0,.15)}
.agency-footer-invite{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:52px 0 48px;border-bottom:1px solid var(--line)}
.agency-footer-kicker{color:var(--lime);letter-spacing:.17em;font-size:10px;font-weight:800}
.agency-footer-invite h2{font:700 clamp(28px,3.6vw,49px)/1.13 "Space Grotesk",sans-serif;letter-spacing:-.05em;margin:13px 0 9px}
.agency-footer-invite h2 span{color:var(--lime)}
.agency-footer-invite p{font-size:14px;color:#b7b7b7;line-height:1.6}
.agency-footer-invite .btn{white-space:nowrap}
.agency-footer-grid{display:grid;grid-template-columns:1.15fr .65fr 1.1fr 1.12fr;gap:clamp(20px,3vw,52px);padding:48px 0 52px}
.agency-footer .agency-footer-identity img{width:168px;max-width:100%;height:auto;object-fit:contain;object-position:left}
.agency-footer-identity p{font-size:13px;line-height:1.75;color:#a9a9a9;margin:15px 0 20px;max-width:250px}
.agency-footer h3{font:700 13px/1.5 Inter,sans-serif;letter-spacing:.08em;margin:0 0 19px;color:#fff;text-transform:uppercase}
.agency-footer-nav,.agency-footer-contact,.agency-footer-location{display:flex;flex-direction:column;gap:12px;min-width:0}
.agency-footer a{color:#c8c8c8;text-decoration:none;transition:color .2s ease}
.agency-footer a:hover,.agency-footer a:focus-visible{color:var(--lime)}
.agency-footer-nav>a,.agency-footer-contact>a,.agency-footer-location>p,.agency-footer-location>span{font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.agency-footer-location p,.agency-footer-location span{color:#b6b6b6}
.agency-footer-location .agency-footer-online{font-weight:800;color:#f5f5ef}
.agency-footer-location small{display:block;font-size:11px;color:#888;line-height:1.7;margin-top:8px}
.agency-footer-social{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700}
.agency-footer-small-icon{display:inline-flex;color:var(--lime);width:21px;height:21px}
.agency-footer-small-icon svg{width:20px;height:20px}
.agency-footer-bottom{border-top:1px solid var(--line);padding:24px 0 0;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#999;font-size:12px}
.agency-footer-bottom>a{font-size:12px}
@media(max-width:1100px){.agency-process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.agency-differentials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 50px}}
@media(max-width:850px){.agency-spotlight-layout{grid-template-columns:1fr}.agency-mockup-scene{min-height:380px}.agency-spotlight-section{padding:70px 0}.agency-values-grid{grid-template-columns:1fr}.agency-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){.agency-page .agency-hero h1{font-size:clamp(38px,10vw,54px)}.agency-page .agency-section .section-head h2{font-size:clamp(29px,8vw,39px)}.agency-spotlight-section,.agency-process-section,.agency-differentials-section{padding:65px 0}.agency-process-grid,.agency-differentials-grid{grid-template-columns:1fr}.agency-editorial-card{padding:22px}.agency-editorial-top{margin-bottom:18px}.agency-mockup-scene{min-height:300px}.agency-mockup-desktop{left:6%;width:81%;top:12%;height:67%;border-width:4px}.agency-mockup-mobile{width:28%;height:61%;right:5%;border-width:5px}.agency-mockup-stamp{font-size:8px}.agency-history-art{min-height:250px}.agency-footer-invite{flex-direction:column;align-items:flex-start;padding:43px 0 37px}.agency-footer-grid{grid-template-columns:1fr 1fr;gap:36px 18px;padding:38px 0}.agency-footer-identity{grid-column:1/-1}.agency-footer-contact{grid-column:1/-1}.agency-footer-location{grid-column:1/-1}.agency-footer-bottom{flex-direction:column;align-items:flex-start}.agency-value-card{padding:24px}}
@media(prefers-reduced-motion:reduce){.agency-value-card,.agency-editorial-card,.agency-footer a{transition:none!important}}

/* Final mobile typography / footer refinements */
.agency-pricing .agency-hero h1{font-size:clamp(36px,4.4vw,63px)}
.agency-contact .agency-hero h1{font-size:clamp(38px,4.7vw,68px)}
@media(max-width:760px){.agency-page .agency-hero{min-height:auto}.agency-pricing .agency-hero h1,.agency-contact .agency-hero h1{font-size:clamp(34px,9vw,50px)}}
@media(max-width:610px){.agency-footer-grid{grid-template-columns:1fr;gap:30px}.agency-footer-identity,.agency-footer-contact,.agency-footer-location{grid-column:auto}.agency-footer-invite .btn{white-space:normal}}

/* Polish: keep service icon and category in separate lines with balanced rhythm. */
.agency-page .agency-service-card{display:flex;flex-direction:column;align-items:flex-start;padding:30px;gap:0}
.agency-page .agency-service-card .agency-service-icon{display:flex;flex:none;width:56px;height:56px;margin:0 0 18px 0}
.agency-page .agency-service-card .agency-tag{display:block;margin:0 0 18px 0;line-height:1.45}
.agency-page .agency-service-card h3{margin:0 0 14px 0;font-size:clamp(20px,1.75vw,26px);line-height:1.23}
.agency-page .agency-service-card p{margin:0 0 22px 0;line-height:1.68;font-size:14px}
.agency-page .agency-service-card .agency-card-link{display:inline-block;margin:auto 0 0 0}
.agency-page .agency-service-card .agency-icon svg{display:block}
@media(max-width:610px){.agency-page .agency-service-card{padding:24px}}
/* Primary footer CTA must retain the same contrast as other primary actions. */
.agency-footer .agency-footer-invite .btn.btn-primary,
.agency-footer .agency-footer-invite .btn.btn-primary:visited{
  background:var(--lime,#c3f500);
  border:1px solid var(--lime,#c3f500);
  color:#131313!important;
  box-shadow:none;
}
.agency-footer .agency-footer-invite .btn.btn-primary:hover,
.agency-footer .agency-footer-invite .btn.btn-primary:focus-visible{
  background:#d4ff28;
  border-color:#d4ff28;
  color:#131313!important;
  box-shadow:0 7px 24px rgba(195,245,0,.12);
}

/* Social proof without fabricated content. */
.agency-social-integrations{display:grid;grid-template-columns:1fr;gap:26px}
.agency-social-module{border:1px solid var(--line);border-radius:24px;padding:clamp(24px,3vw,38px);background:linear-gradient(145deg,#1b1b1b,#131313);min-width:0}
.agency-social-module-head{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:26px}
.agency-social-module h3{font:700 clamp(24px,2.65vw,34px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-.04em;margin:8px 0 0}
.agency-social-eyebrow{font-size:10px;color:var(--lime);letter-spacing:.13em;font-weight:800}
.agency-social-link{color:var(--lime);text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}
.agency-social-link:hover{text-decoration:underline}
.agency-instagram-feed{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.agency-instagram-post{position:relative;min-width:0;aspect-ratio:1/1;overflow:hidden;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#272727;display:block}
.agency-instagram-post img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.agency-instagram-post:hover img,.agency-instagram-post:focus-visible img{transform:scale(1.045)}
.agency-instagram-open{position:absolute;right:10px;top:9px;color:#fff;background:rgba(0,0,0,.65);border-radius:9px;padding:3px 8px}
.agency-reviews-summary{color:var(--lime);font-size:13px;font-weight:700;margin-bottom:16px}
.agency-google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.agency-review-card{background:#232323;border:1px solid #373737;padding:23px;border-radius:15px;min-width:0}
.agency-review-stars{letter-spacing:4px;color:var(--lime);font-size:17px}
.agency-review-card blockquote{margin:15px 0 18px;color:#e4e4e4;font-size:13px;line-height:1.75;white-space:pre-line}
.agency-review-author{margin:0!important;font-size:11px;color:#b4b4b4;font-weight:700}
.agency-social-status{font-size:14px;color:#b6b6b6;line-height:1.75;max-width:740px}
@media(max-width:950px){.agency-instagram-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.agency-google-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){.agency-social-module-head{flex-direction:column;align-items:flex-start;gap:12px}.agency-instagram-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-google-review-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.agency-instagram-post img{transition:none!important}}

/* Sobre: carrossel de pessoas, integrado ao CMS. Uma pessoa em destaque
   por vez, sem deixar duas colunas vazias quando a equipe é pequena. */
.agency-about .agency-team-followup{margin-top:clamp(52px,6vw,84px)}
.agency-about .agency-team-heading{margin-bottom:28px}
.agency-team-carousel{position:relative;width:100%;min-width:0;outline:none}
.agency-team-carousel:focus-visible{outline:2px solid var(--lime);outline-offset:7px;border-radius:20px}
.agency-team-viewport{width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:#191919;touch-action:pan-y}
.agency-team-track{display:flex;align-items:stretch;width:100%;transform:translate3d(0,0,0);transition:transform .65s cubic-bezier(.22,1,.36,1);will-change:transform}
.agency-team-slide{display:grid;grid-template-columns:minmax(280px,42%) minmax(0,1fr);align-items:stretch;flex:0 0 100%;min-width:0;min-height:420px}
.agency-team-slide-image{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-width:0;background:linear-gradient(135deg,#252a1c,#171717)}
.agency-team-slide-image::after{content:"";position:absolute;inset:0;box-shadow:inset -28px 0 55px rgba(0,0,0,.14);pointer-events:none}
.agency-team-slide-image img{width:100%;height:100%;max-height:540px;min-height:420px;object-fit:cover;object-position:center 24%;display:block}
.agency-team-slide-image-pending::before{content:"LUMYX STUDIO";font:800 13px/1.3 Inter,sans-serif;letter-spacing:.2em;color:var(--lime);opacity:.6}
.agency-team-slide-info{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:clamp(28px,4vw,62px);background:radial-gradient(circle at 100% 5%,rgba(195,245,0,.035),transparent 50%),#1c1c1c}
.agency-team-slide-kicker{color:var(--lime);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:25px}
.agency-team-slide-info h4{font:700 clamp(30px,4vw,54px)/1.1 "Space Grotesk",Inter,sans-serif;letter-spacing:-.055em;margin:0 0 12px;color:#f5f5f0}
.agency-team-slide-role{color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.agency-team-slide-info p{color:#bfbfbf;font-size:clamp(14px,1.3vw,16px);line-height:1.85;margin:28px 0 0;max-width:48ch;overflow-wrap:anywhere}
.agency-team-slide-signature{display:block;color:#737373;font-size:10px;font-weight:700;letter-spacing:.13em;margin-top:clamp(28px,5vw,65px)}
.agency-team-carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 2px 0}
.agency-team-carousel-footer[hidden]{display:none!important}
.agency-team-pagination,.agency-team-carousel-actions{display:flex;align-items:center;gap:14px}
.agency-team-counter{font-family:"Space Grotesk",Inter,sans-serif;font-size:13px;font-weight:700;letter-spacing:.07em;color:#eaeae6;min-width:66px}
.agency-team-dots{display:flex;align-items:center;gap:9px}
.agency-team-dot{display:block;width:28px;height:6px;border:0;border-radius:30px;padding:0;background:#535353;cursor:pointer;transition:background .2s ease,width .2s ease}
.agency-team-dot.is-active{background:var(--lime);width:39px}
.agency-team-dot:hover{background:#9dbd39}
.agency-team-dot:focus-visible,.agency-team-arrow:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.agency-team-arrow{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#1a1a1a;color:#f4f4f1;font-size:21px;line-height:1;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}
.agency-team-arrow:hover{background:rgba(195,245,0,.07);border-color:var(--lime);color:var(--lime)}
@media(max-width:850px){
  .agency-team-slide{grid-template-columns:minmax(240px,45%) minmax(0,1fr);min-height:370px}
  .agency-team-slide-image img{min-height:370px}
  .agency-team-slide-info{padding:30px}
  .agency-team-slide-signature{margin-top:25px}
}
@media(max-width:610px){
  .agency-team-viewport{border-radius:18px}
  .agency-team-slide{display:flex;flex-direction:column;min-height:0}
  .agency-team-slide-image{width:100%;height:clamp(260px,76vw,380px);flex:none}
  .agency-team-slide-image img{width:100%;height:100%;min-height:0;max-height:none;object-position:center 22%}
  .agency-team-slide-info{min-height:265px;padding:27px 25px 29px}
  .agency-team-slide-kicker{margin-bottom:14px}
  .agency-team-slide-info h4{font-size:clamp(28px,8vw,41px)}
  .agency-team-slide-info p{font-size:14px;line-height:1.7;margin-top:18px}
  .agency-team-slide-signature{margin-top:24px}
  .agency-team-carousel-footer{padding:17px 0 0}
  .agency-team-arrow{width:43px;height:43px}
}
@media(prefers-reduced-motion:reduce){
  .agency-team-track,.agency-team-dot,.agency-team-arrow{transition:none!important}
}

/* Carousel: autoplay is handled in JS; drag is interactive on mouse and touch.
   No fake slides are added when the CMS has only one collaborator. */
.agency-team-viewport{cursor:grab;touch-action:pan-y;overscroll-behavior-x:contain}
.agency-team-carousel.is-dragging .agency-team-viewport{cursor:grabbing}
.agency-team-track.is-dragging{transition:none!important;will-change:transform}
.agency-team-slide-image img{user-select:none;-webkit-user-drag:none}
.agency-team-carousel.is-dragging .agency-team-slide{user-select:none;-webkit-user-select:none}
.agency-team-slide{overflow:hidden}
.agency-team-dot,.agency-team-dot.is-active{
  display:grid;place-items:center;min-width:36px;width:36px;height:44px;
  padding:0;border:0;background:transparent;cursor:pointer
}
.agency-team-dot::before{content:"";display:block;width:24px;height:6px;border-radius:999px;background:#555;transition:width .18s ease,background .18s ease}
.agency-team-dot.is-active::before{width:30px;background:var(--lime)}
.agency-team-dot:hover::before{background:#a1c53c}
.agency-team-dots{gap:3px}
.agency-team-carousel-footer{flex-wrap:wrap;row-gap:8px}
@media(max-width:950px){
  .agency-page .agency-founder{grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(20px,4vw,35px)}
  .agency-page .agency-founder>div{min-width:0}
  .agency-page .agency-team-slide{grid-template-columns:minmax(0,42%) minmax(0,1fr)}
  .agency-page .agency-team-slide-info{min-width:0}
}
@media(max-width:760px){
  .agency-page .agency-hero{padding:118px 0 58px}
  .agency-page .agency-hero-grid{gap:12px}
  .agency-page .agency-lead{font-size:16px;line-height:1.65}
  .agency-page .agency-art{height:185px}
  .agency-page .agency-founder{grid-template-columns:1fr;gap:21px;padding:18px}
  .agency-page .agency-founder-photo{width:min(100%,320px);max-width:320px}
  .agency-page .agency-founder h3{font-size:clamp(30px,7vw,43px)}
  .agency-page .agency-section{padding:62px 0}
  .agency-page .agency-actions{align-items:stretch;gap:10px}
  .agency-page .agency-actions .btn{min-height:48px}
  .agency-page .agency-service-grid,.agency-page .agency-project-grid,.agency-page .agency-split,.agency-page .agency-social-grid,.agency-page .agency-form{grid-template-columns:minmax(0,1fr)}
  .agency-page .agency-service-card,.agency-page .agency-panel{min-width:0}
  .agency-page .agency-form input,.agency-page .agency-form select,.agency-page .agency-form textarea{font-size:16px;min-height:46px}
  .agency-page .agency-footer-contact a,.agency-page .agency-footer-location p,.agency-page .agency-footer-location small{overflow-wrap:anywhere}
  .agency-page .agency-footer-invite .btn{width:100%;max-width:360px}
}
@media(max-width:610px){
  .agency-about .agency-team-followup{margin-top:44px}
  .agency-page .agency-team-slide{display:flex;flex-direction:column;min-height:0}
  .agency-page .agency-team-slide-image{width:100%;height:clamp(230px,75vw,350px)}
  .agency-page .agency-team-slide-image img{max-height:none;min-height:0;height:100%;width:100%}
  .agency-team-slide-info{min-height:0;padding:27px 24px 28px}
  .agency-team-slide-info p{margin-top:17px;font-size:14px;line-height:1.73}
  .agency-team-carousel-footer{gap:8px}
  .agency-team-carousel-actions{margin-left:auto}
  .agency-team-arrow{min-width:44px;min-height:44px}
  .agency-page .agency-team-grid{grid-template-columns:minmax(0,1fr)}
  .agency-page .agency-team-card-body{padding:21px}
  .agency-page .agency-social-module-head{flex-direction:column;align-items:flex-start;gap:13px}
  .agency-page .agency-instagram-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .agency-page .agency-google-review-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:390px){
  .agency-page .agency-hero h1{font-size:clamp(31px,9.5vw,40px);line-height:1.13;letter-spacing:-.05em}
  .agency-page .agency-section .section-head h2{font-size:clamp(27px,7.5vw,34px)}
  .agency-page .agency-team-slide-info h4{font-size:clamp(26px,8vw,33px)}
  .agency-page .agency-team-slide-info{padding:24px 20px}
  .agency-page .agency-team-viewport{border-radius:15px}
  .agency-page .agency-founder{padding:14px}
  .agency-page .agency-footer-grid{grid-template-columns:1fr}
  .agency-page .agency-instagram-feed{gap:7px}
  .agency-page .agency-mockup-scene{min-height:245px}
  .agency-page .agency-history-art{min-height:230px}
  .agency-page .agency-form-wrap{padding:18px}
}
@media(prefers-reduced-motion:reduce){
  .agency-team-dot::before{transition:none!important}
}

/* Optional playback control for the automatic team slideshow. */
.agency-team-play{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;
  border:1px solid rgba(255,255,255,.18);background:#1a1a1a;color:#dcdcdc;
  padding:0 14px;border-radius:999px;font:700 12px/1.3 Inter,sans-serif;cursor:pointer}
.agency-team-play span{font-size:15px;color:var(--lime)}
.agency-team-play:hover,.agency-team-play:focus-visible{border-color:var(--lime);color:#fff}
.agency-team-play:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.agency-team-play[hidden]{display:none!important}
@media(max-width:390px){.agency-team-play{padding:0 10px;font-size:11px}.agency-team-carousel-actions{gap:8px}}

/* FAQ editorial: clear, native <details> controls; every item is CMS-driven. */
.agency-page .agency-faq-section{border-top:1px solid rgba(255,255,255,.08);background:#151515}
.agency-page .agency-faq-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.35fr);align-items:start;gap:clamp(30px,6vw,105px)}
.agency-page .agency-faq-heading{position:sticky;top:116px}
.agency-page .agency-faq-heading h2{font:700 clamp(30px,3.3vw,46px)/1.13 "Space Grotesk",Inter,sans-serif;letter-spacing:-.045em;color:#f5f5f0;margin:16px 0}
.agency-page .agency-faq-heading>p{font-size:15px;line-height:1.8;color:#bcbcbc;max-width:37ch;margin:0 0 30px}
.agency-page .agency-faq-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--lime);text-decoration:none;line-height:1.5}
.agency-page .agency-faq-link:hover{text-decoration:underline}
.agency-page .agency-faq-list{border-top:1px solid rgba(255,255,255,.2);min-width:0}
.agency-page .agency-faq-item{margin:0;border-bottom:1px solid rgba(255,255,255,.14);background:transparent}
.agency-page .agency-faq-question{display:grid;grid-template-columns:34px minmax(0,1fr) 32px;gap:clamp(10px,1.8vw,24px);align-items:start;padding:24px 0;cursor:pointer;list-style:none}
.agency-page .agency-faq-question::-webkit-details-marker{display:none}
.agency-page .agency-faq-question::marker{content:""}
.agency-page .agency-faq-question:focus-visible{outline:2px solid var(--lime);outline-offset:5px;border-radius:3px}
.agency-page .agency-faq-number{font:700 12px/1.7 "Space Grotesk",Inter,sans-serif;color:var(--lime);letter-spacing:.04em}
.agency-page .agency-faq-question-text{font-size:clamp(16px,1.5vw,19px);font-weight:700;line-height:1.5;color:#f1f1eb;overflow-wrap:anywhere}
.agency-page .agency-faq-arrow{display:grid;place-items:center;border:1px solid #494949;width:31px;height:31px;border-radius:50%;color:var(--lime);font:500 23px/1 Inter,sans-serif;transition:transform .22s,border-color .22s}
.agency-page .agency-faq-item[open] .agency-faq-arrow{transform:rotate(45deg);border-color:var(--lime)}
.agency-page .agency-faq-answer{padding:0 42px 24px 34px}
.agency-page .agency-faq-answer p{color:#b9b9b9;font-size:15px;line-height:1.9;margin:0;max-width:65ch;white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:810px){
 .agency-page .agency-faq-layout{grid-template-columns:minmax(0,1fr);gap:20px}
 .agency-page .agency-faq-heading{position:static}
 .agency-page .agency-faq-heading>p{max-width:65ch}
 .agency-page .agency-faq-link{margin-bottom:12px}
}
@media(max-width:460px){
 .agency-page .agency-faq-question{grid-template-columns:25px minmax(0,1fr) 31px;gap:9px;padding:20px 0}
 .agency-page .agency-faq-question-text{font-size:15px}
 .agency-page .agency-faq-answer{padding:0 35px 22px 25px}
 .agency-page .agency-faq-answer p{font-size:14px;line-height:1.75}
}
@media(prefers-reduced-motion:reduce){.agency-page .agency-faq-arrow{transition:none}}
