.estilo-case{grid-column:1/-1;min-width:0;border:1px solid #e8e5ed;border-radius:26px;overflow:hidden;background:#fff;scroll-margin-top:30px}
.estilo-banner{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f4f2ff;cursor:pointer;list-style:none;min-height:390px}
.estilo-banner::-webkit-details-marker{display:none}
.estilo-banner::marker{content:''}
.estilo-banner:focus-visible{outline:3px solid #ff2e45;outline-offset:-5px}
.estilo-banner-copy{position:relative;z-index:1;padding:40px 0 40px 45px;max-width:520px}
.estilo-brand{display:block;width:125px;height:60px;object-fit:contain;object-position:left;margin:16px 0 20px;mix-blend-mode:multiply}
.estilo-banner h3{font-size:clamp(32px,3.2vw,48px);font-weight:500;letter-spacing:-1.8px;line-height:1.08;margin:0 0 18px}
.estilo-banner p{font-size:14px;line-height:1.75;color:#55515e;max-width:340px;margin:0 0 24px}
.estilo-open{display:inline-flex;align-items:center;gap:22px;font-size:13px;font-weight:600;color:#111}
.estilo-open>span{display:grid;place-items:center;background:#ff2e45;color:#fff;width:36px;height:36px;border-radius:50%;font-size:22px;transition:transform .3s}
.estilo-case[open] .estilo-open>span{transform:rotate(180deg)}
.estilo-tags{display:block;font-size:10px;line-height:1.7;color:#75717e;margin-top:24px}
.estilo-banner-visual{overflow:hidden;align-self:stretch;display:flex;align-items:center}
.estilo-banner-visual img{display:block;width:100%;height:100%;max-height:490px;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.estilo-banner:hover .estilo-banner-visual img{transform:scale(1.04)}
.estilo-content{padding:48px 45px 30px;border-top:1px solid #e8e5ed}
.estilo-case-heading{max-width:830px;margin-bottom:36px}
.estilo-case-heading h3{font-size:clamp(28px,3vw,42px);font-weight:500;letter-spacing:-1.3px;line-height:1.18;margin:20px 0}
.estilo-content p{font-size:14px;line-height:1.85;color:#5d6267;margin:0}
.estilo-story{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:35px 0}
.estilo-content h4{font-size:21px;font-weight:500;line-height:1.3;margin:0 0 15px;letter-spacing:-.5px}
.estilo-story>div{border-top:1px solid #ddd;padding-top:24px}
.estilo-process{display:grid;grid-template-columns:1fr 1.4fr;align-items:center;background:#f4f2ff;border-radius:20px;overflow:hidden;margin:40px 0}
.estilo-process-copy{padding:30px}
.estilo-process-copy h4{margin-top:18px}
.estilo-process>img{width:100%;height:auto;display:block}
.estilo-render-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}
.estilo-render-tabs button{border:1px solid #d7d2e1;border-radius:22px;background:transparent;padding:10px 13px;font-family:inherit;font-size:10px;cursor:pointer}
.estilo-render-tabs button[aria-pressed=true]{background:#171719;color:#fff;border-color:#171719}
.estilo-render-tabs button:focus-visible,.estilo-close:focus-visible{outline:2px solid #ff2e45;outline-offset:4px}
.estilo-case-figure{margin:35px 0}
.estilo-case-figure>a{display:block;cursor:zoom-in}
.estilo-case-figure figcaption a{color:#333;border-bottom:1px solid #aaa;white-space:nowrap}
.estilo-case-figure img{display:block;width:100%;height:auto;border:1px solid #ececec;border-radius:14px}
.estilo-case-figure figcaption{font-size:11px;line-height:1.6;color:#70777d;margin-top:13px}
.estilo-case-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:22px;border-top:1px solid #e5e5e5}
.estilo-close{background:#171719;color:#fff;border:0;border-radius:30px;font:inherit;font-size:12px;padding:12px 20px;cursor:pointer}
@media(max-width:1050px){.estilo-banner-copy{padding-left:30px}.estilo-content{padding:35px 30px}.estilo-process{grid-template-columns:1fr 1fr}.estilo-process-copy{padding:22px}}
@media(max-width:720px){.estilo-banner{grid-template-columns:1fr}.estilo-banner-copy{padding:28px 25px 0}.estilo-banner h3{font-size:35px}.estilo-brand{margin-block:12px 18px}.estilo-banner p{font-size:13px}.estilo-tags{margin-top:16px}.estilo-banner-visual{height:245px}.estilo-banner-visual img{object-fit:contain;height:100%}.estilo-content{padding:28px 22px}.estilo-story,.estilo-process{grid-template-columns:1fr;gap:24px}.estilo-content p{font-size:13px}.estilo-process{gap:0}.estilo-case-footer{align-items:flex-start;flex-direction:column}.estilo-case-heading h3{font-size:29px}.estilo-case-figure figcaption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.estilo-banner-visual img,.estilo-open>span{transition:none}.estilo-banner:hover .estilo-banner-visual img{transform:none}}
.estilo-banner{position:relative;display:block;width:100%;border:0;text-align:left;font:inherit;color:#111;min-height:440px;background:#f5f5f8;isolation:isolate;overflow:hidden}
.estilo-banner-art{position:absolute;inset:0;z-index:-1}
.estilo-banner-art img{width:100%;height:100%;object-fit:contain;object-position:right center;display:block;transition:transform .6s;mask-image:linear-gradient(to right,transparent 25%,#000 60%)}
.estilo-banner:hover .estilo-banner-art img{transform:scale(1.025)}
.estilo-banner-title{display:block;font-size:clamp(32px,3.2vw,48px);font-weight:500;letter-spacing:-1.8px;line-height:1.08;margin:0 0 18px}
.estilo-banner-description{display:block;font-size:14px;line-height:1.75;color:#55515e;max-width:330px;margin:0 0 24px}
.estilo-banner-copy{display:block;width:48%;max-width:560px;padding:35px 0 35px 40px}
.project-modal-open{position:fixed;width:100%;overflow:hidden}
.project-dialog{width:min(1100px,calc(100vw - 48px));height:min(900px,90dvh);max-height:90dvh;max-width:none;padding:0;border:0;border-radius:22px;background:#fff;color:#111;overflow:hidden}
.project-dialog[open]{display:flex;flex-direction:column}
.project-dialog::backdrop{background:rgba(15,17,20,.7);backdrop-filter:blur(6px)}
.project-dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 24px;border-bottom:1px solid #e4e4e4;flex-shrink:0;background:#fff}
.project-dialog-bar h2{font-size:13px;line-height:1.5;font-weight:500;margin:0}
.project-dialog-close{border:1px solid #ddd;border-radius:50%;background:#fff;color:#111;width:36px;height:36px;cursor:pointer;flex-shrink:0;font-size:16px}
.project-dialog-close:focus-visible{outline:2px solid #ff2e45;outline-offset:3px}
.project-dialog-body{overflow-y:auto;min-height:0;overscroll-behavior:contain}
.estilo-popup-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f4f2ff}
.estilo-popup-intro .estilo-banner-copy{width:auto;padding:35px}
.estilo-popup-intro h3{font-size:clamp(28px,3vw,42px);line-height:1.1;font-weight:500;letter-spacing:-1.5px;margin:0 0 18px}
.estilo-popup-intro p{font-size:14px;line-height:1.7;color:#55515e}
.estilo-banner-visual video{display:block;width:100%;height:auto;max-height:490px;object-fit:contain}
@media(max-width:1050px) and (min-width:721px){.estilo-banner-copy{width:49%;padding-left:30px}.estilo-banner-title{font-size:34px}.estilo-banner-description{max-width:260px}}
@media(max-width:720px){
 .estilo-banner{min-height:0;padding-bottom:240px}
 .estilo-banner-copy{width:auto;padding:25px 25px 15px;max-width:none;background:#f8f8fa}
 .estilo-banner-title{font-size:34px}
 .estilo-banner-art{inset:auto 0 0;height:240px}
 .estilo-banner-art img{object-fit:cover;object-position:center;mask-image:none}
 .project-dialog{width:calc(100vw - 16px);height:94dvh;max-height:94dvh;border-radius:15px}
 .project-dialog-bar{padding:12px 16px;gap:12px}
 .project-dialog-bar h2{font-size:11px}
 .estilo-popup-intro{grid-template-columns:1fr}
 .estilo-popup-intro .estilo-banner-copy{padding:25px;background:transparent}
}
@media(prefers-reduced-motion:reduce){.estilo-banner-art img{transition:none}.estilo-banner:hover .estilo-banner-art img{transform:none}}
