/* Galeria e visualizador derivados dos componentes e tokens aprovados da FIACT. */
[hidden]{display:none!important}
.m-catalog-head{padding:20px 0 32px;border-bottom:1px solid var(--cor-borda)}
.m-catalog-title{display:flex;align-items:center;justify-content:space-between;gap:30px}
.m-catalog-title h1{font-size:clamp(28px,3.2vw,44px);margin-bottom:12px}
.m-catalog-title p:not(.s-label){max-width:70ch;font-size:16px;color:var(--cor-texto-2);margin:0}
.m-catalog-title>.s-text-link{flex:none;font-size:14px}
.m-collections{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
.m-collections a{display:flex;flex-direction:column;padding:16px 20px;border:1px solid var(--cor-borda);border-radius:12px;text-decoration:none;background:#09242b;transition:border-color var(--duracao-curta)}
.m-collections a:hover{border-color:var(--cor-marca-2)}
.m-collections strong{font-size:16px;font-weight:500;color:var(--cor-marca-2)}
.m-collections span{font-size:13px;color:var(--cor-texto-2)}
.m-catalog-return{padding:32px 0;border-top:1px solid var(--cor-borda)}
.m-catalog-return>.s-wrap{display:flex;align-items:center;gap:30px;justify-content:space-between}
.m-catalog-return p{max-width:68ch;font-size:15px;color:var(--cor-texto-2);margin:0}
.m-catalog-return .s-button{font-size:14px;flex:none}
.m-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.m-path{display:flex;flex-direction:column;padding:28px;border:1px solid var(--cor-borda);border-radius:16px;text-decoration:none;background:#0b1c22;transition:border-color var(--duracao-curta)}
.m-path:hover{border-color:var(--cor-marca-2)}
.m-path h3{font-size:28px}.m-path>p:not(.s-eyebrow){font-size:16px;max-width:54ch;color:var(--cor-texto-2)}
.m-path>span{margin-top:auto;color:var(--cor-marca-2);font-size:14px;font-weight:500}
.m-service-caption{margin:36px 0 14px;font:11px/1.6 var(--fonte-mono);letter-spacing:.055em;text-transform:uppercase;color:var(--cor-texto-2)}
.t-disclaimer{max-width:90ch;color:#426166;font-size:14px;margin-bottom:24px}
.t-themes{margin:0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:8px}
.t-themes legend{font-size:12px;font-weight:600;color:#09242b;margin-bottom:10px;padding:0}
.t-themes button{cursor:pointer;min-height:44px;padding:8px 12px;font-size:12px;line-height:1.4;border:1px solid #779d9e;background:transparent;color:#005f65;border-radius:8px}
.t-themes button[aria-pressed=true]{background:#09242b;color:#edf3f4;border-color:#09242b}
.t-themes button[aria-pressed=true]:before{content:'✓ ';}
.t-themes button:focus-visible{outline-color:#005f65}
.t-status{font-size:12px;color:#426166;margin:12px 0 4px}
.t-noscript{font-size:12px;color:#426166}
.t-modal-open{overflow:hidden}
.t-dialog{width:min(1120px,calc(100% - 32px));height:min(90dvh,1100px);max-height:90dvh;padding:0;border:1px solid #779d9e;border-radius:16px;color:#09242b;background:#edf3f4;overflow:hidden}
.t-dialog[open]{display:flex;flex-direction:column}
.t-dialog::backdrop{background:rgba(3,13,17,.8)}
.t-dialog-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid #bdcecf}
.t-dialog-head h2{font-size:22px;margin:0 0 4px}.t-dialog-head p{font-size:12px;line-height:1.5;color:#426166;margin:0}
.t-dialog-head button{flex:none;min-height:44px;padding:8px 14px;border:1px solid #779d9e;border-radius:999px;color:#005f65;background:transparent;cursor:pointer;font-size:14px}
.t-dialog-head button:focus-visible{outline-color:#005f65}
.t-dialog-state{padding:12px 24px;font-size:14px;margin:0;color:#005f65}
.t-dialog-content{overflow:auto;min-height:0;flex:1;background:#fff;overscroll-behavior:contain}
.t-dialog-content img{width:100%;height:auto}
@media(max-width:540px){body[data-service=sites-redesign] .s-header-row{gap:8px}body[data-service=sites-redesign] .s-logo img{width:clamp(112px,35vw,144px);height:auto}body[data-service=sites-redesign] .s-header-nav .s-button{white-space:nowrap;font-size:12px;padding:10px 12px;gap:6px}body[data-service=sites-redesign] .s-header-nav .s-button span{display:none}}
@media(max-width:760px){.m-catalog-title,.m-catalog-return>.s-wrap{align-items:start;flex-direction:column;gap:18px}.m-collections,.m-paths{grid-template-columns:1fr;gap:12px}.m-path{padding:22px}.m-path h3{font-size:25px}.m-catalog-return .s-button{flex:auto}.t-dialog-head{padding:12px 16px;gap:12px}.t-dialog-head h2{font-size:18px}.t-dialog-head button{font-size:12px;padding:8px 12px}}
.m-note{display:flex;gap:10px;align-items:flex-start;margin-top:24px;color:var(--cor-texto-2);font-size:13px;max-width:56ch}
.m-note:before{content:"";flex:0 0 6px;height:6px;margin-top:8px;background:var(--cor-marca-2);border-radius:50%}
.m-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;min-width:0}
.m-mosaic a{display:block;position:relative;overflow:hidden;border:1px solid var(--cor-borda);border-radius:12px;text-decoration:none;background:var(--cor-superficie-2)}
.m-mosaic a:first-child{grid-column:1/-1}
.m-mosaic img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;transition:transform .3s var(--curva)}
.m-mosaic a:first-child img{aspect-ratio:16/8}
.m-mosaic a:hover img{transform:scale(1.02)}
.m-mosaic a>span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 13px;font-size:12px;color:var(--cor-texto);border-top:1px solid var(--cor-borda)}
.m-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.m-heading h2{margin-bottom:12px}.m-heading p:last-child{margin-bottom:0;max-width:65ch}
.m-count{white-space:nowrap;font:12px/1.6 var(--fonte-mono);color:var(--cor-texto-claro-2)}
.m-tools{border-block:1px solid var(--cor-borda-clara);padding:20px 0;margin-bottom:30px}
.m-tools-row{display:flex;gap:20px;align-items:end;justify-content:space-between;margin-bottom:18px}
.m-tools-label{font:11px/1.6 var(--fonte-mono);letter-spacing:.09em;text-transform:uppercase;margin:0;color:var(--cor-texto-claro-2)}
.m-search{display:flex;flex-direction:column;gap:6px;width:min(100%,340px);font-size:12px;color:var(--cor-texto-claro-2)}
.m-search input{min-height:44px;border:1px solid #779d9e;border-radius:9px;padding:10px 14px;background:#f8fbfb;color:var(--cor-texto-claro);font:15px/1.4 var(--fonte-texto);width:100%}
.m-search input:focus-visible{outline:3px solid #005f65;outline-offset:3px}
.m-filters{display:flex;flex-wrap:wrap;gap:8px}
.m-filter{cursor:pointer;min-height:44px;padding:9px 15px;border:1px solid #779d9e;border-radius:999px;background:transparent;color:var(--cor-texto-claro-2);font-size:13px;line-height:1.4}
.m-filter:hover{background:#d4e5e5}
.m-filter[aria-pressed=true]{border-color:var(--cor-texto-claro);background:var(--cor-texto-claro);color:#edf3f4}
.m-filter[aria-pressed=true]:before{content:"✓";margin-right:7px}
.m-filter:focus-visible,.m-reset:focus-visible{outline:3px solid #005f65;outline-offset:3px}
.m-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.m-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--cor-borda-clara);border-radius:16px;background:#f7fafa;scroll-margin-top:110px}
.m-preview{display:block;position:relative;border-bottom:1px solid var(--cor-borda-clara);background:#d8e5e5;text-decoration:none;overflow:hidden}
.m-browser{display:flex;gap:5px;align-items:center;padding:10px 13px;background:#e4ecec;border-bottom:1px solid var(--cor-borda-clara)}
.m-browser i{width:5px;height:5px;border-radius:50%;background:#719092}
.m-browser span{margin-left:auto;font:9px/1.4 var(--fonte-mono);letter-spacing:.04em;color:#426166}
.m-preview img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .3s var(--curva)}
.m-preview:hover img{transform:scale(1.025)}
.m-preview-arrow{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#09242b;color:#71e7db;font-size:20px}
.m-card-copy{display:flex;flex-direction:column;flex:1;padding:24px}
.m-segment{font:10px/1.6 var(--fonte-mono);text-transform:uppercase;letter-spacing:.055em;color:#005f65;margin-bottom:9px}
.m-card h3{font-size:28px;margin-bottom:12px}
.m-card h3 a{text-decoration:none}.m-card h3 a:hover{text-decoration:underline}
.m-description{font-size:15px;line-height:1.65;color:#426166;margin-bottom:18px}
.m-difference{margin-top:auto;padding-top:16px;border-top:1px solid var(--cor-borda-clara);font-size:13px;line-height:1.65;color:#426166}
.m-difference strong{display:block;font-weight:600;color:#09242b;margin-bottom:4px}
.m-reference{font-size:12px;line-height:1.6;color:#426166;margin:0 0 16px}.m-reference span{display:block}
.m-kind{font:11px/1.6 var(--fonte-mono);letter-spacing:.025em;color:#005f65;margin:0 0 16px}
.m-card-actions{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
.m-explore{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#005f65;font-size:14px;font-weight:600;text-decoration:none}
.m-explore:hover{text-decoration:underline}
.m-interest{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#426166}
.m-empty{padding:45px 24px;text-align:center;border:1px dashed #779d9e;border-radius:16px}.m-empty h3{font-size:25px}.m-empty p{color:#426166}
.m-reset{cursor:pointer;min-height:44px;border:1px solid #005f65;padding:10px 20px;border-radius:999px;background:#09242b;color:#f2f7f8;font-size:14px}
.m-disclosure{max-width:82ch;margin:30px 0 0;color:#426166;font-size:13px}
.m-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:36px}.m-how article{padding-top:20px;border-top:1px solid var(--cor-borda)}.m-how .s-eyebrow{color:var(--cor-marca-2)}.m-how p{color:var(--cor-texto-2);font-size:15px}
.m-service-selection{padding-block:var(--espaco-secao);background:#09242b}
.m-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.m-service-card{display:block;border:1px solid var(--cor-borda);border-radius:14px;overflow:hidden;text-decoration:none}
.m-service-card img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.m-service-card>div{padding:18px}.m-service-card h3{font-size:23px;margin-bottom:8px}.m-service-card p{font-size:13px;color:var(--cor-texto-2);margin-bottom:12px}.m-service-card span{font-size:12px;color:var(--cor-marca-2)}
.m-service-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px}.m-service-foot p{margin:0;color:var(--cor-texto-2);font-size:13px;max-width:65ch}
.m-viewer{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:#0b0d10}
.m-demo-bar{flex:none;border-bottom:1px solid var(--cor-borda);padding:8px 22px;background:#0b0d10;position:relative;z-index:2}
.m-demo-row{display:flex;gap:22px;align-items:center;min-height:48px}.m-demo-logo{display:flex;align-items:center;min-height:44px;flex:none}.m-demo-logo img{width:100px;height:25px;object-fit:contain}
.m-demo-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#a9bbc2;font-size:13px;text-decoration:none;flex:none}.m-demo-back:hover{color:#71e7db}
.m-demo-name{min-width:0;flex:1;line-height:1.4}.m-demo-name strong{display:block;font-size:14px;font-weight:500}.m-demo-name span{font:9px/1.5 var(--fonte-mono);color:#a9bbc2;letter-spacing:.03em}
.m-demo-cta{flex:none;font-size:13px;min-height:44px;padding:10px 18px}
.m-demo-warning{display:flex;gap:12px;align-items:center;justify-content:center;padding:7px 20px;background:#12383d;color:#c3dcdd;font-size:11px;line-height:1.5;text-align:center;flex:none}
.m-demo-main{flex:1;min-height:0;position:relative;background:#edf3f4}
.m-demo-frame{display:block;width:100%;height:100%;border:0;background:#edf3f4}
.m-demo-frame:focus-visible{outline:3px solid #005f65;outline-offset:-3px}
.m-demo-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:32px;text-align:center;color:#09242b;background:#edf3f4}
.m-demo-state h1{font-size:clamp(28px,4vw,46px);margin-bottom:16px;max-width:22ch}.m-demo-state p{max-width:53ch;font-size:15px;color:#426166}.m-demo-state .s-button{background:#09242b;color:#71e7db;cursor:pointer}.m-demo-state .s-text-link{color:#005f65}
.m-demo-loading:before{content:"";width:28px;height:28px;border:2px solid #9cbabc;border-top-color:#005f65;border-radius:50%;margin-bottom:20px;animation:m-spin 1s linear infinite}
@keyframes m-spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.m-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.m-hero-grid{gap:30px}.m-hero h1{font-size:54px}.m-demo-row{gap:14px}.m-demo-logo{display:none}}
@media(max-width:760px){.m-hero-grid{grid-template-columns:1fr;gap:36px}.m-hero h1{max-width:17ch;font-size:clamp(40px,8vw,60px)}.m-hero{padding-bottom:45px}.m-mosaic{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.m-mosaic a:first-child{grid-column:auto}.m-mosaic img,.m-mosaic a:first-child img{aspect-ratio:4/3}.m-mosaic span{font-size:10px;padding:8px}.m-heading{align-items:start;flex-direction:column;gap:8px}.m-tools-row{align-items:start;flex-direction:column}.m-search{width:100%}.m-how{grid-template-columns:1fr;gap:18px}.m-service-grid{grid-template-columns:1fr}.m-service-card{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center}.m-service-card img{height:100%;min-height:130px}.m-service-foot{align-items:start;flex-direction:column}.m-demo-name span{display:none}.m-demo-name strong{font-size:12px}.m-demo-bar{padding:5px 12px}.m-demo-row{gap:10px}.m-demo-back{font-size:12px}.m-demo-cta{font-size:11px;padding:9px 12px}.m-demo-warning{font-size:10px;padding:6px 12px}}
@media(max-width:540px){.m-grid{grid-template-columns:1fr;gap:22px}.m-card-copy{padding:22px}.m-mosaic a:nth-child(3){display:none}.m-mosaic{grid-template-columns:1fr 1fr}.m-mosaic img,.m-mosaic a:first-child img{aspect-ratio:16/10}.m-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:5px 3px 12px;margin-inline:-3px;scroll-padding:5px}.m-filter{flex:none}.m-hero h1{font-size:clamp(38px,10vw,52px)}.m-hero-copy>p:not(.s-label){font-size:16px}.m-demo-row{flex-wrap:wrap;gap:0 12px}.m-demo-back{order:0}.m-demo-cta{order:1;margin-left:auto}.m-demo-name{order:2;flex-basis:100%;padding:5px 0}.m-demo-name strong{font-size:12px}.m-demo-name span{display:inline;font-size:9px}.m-demo-warning{line-height:1.4}.m-service-card h3{font-size:20px}.m-service-card>div{padding:14px}}
@media(prefers-reduced-motion:reduce){.m-preview img,.m-mosaic img{transition:none}.m-demo-loading:before{animation:none}}
@media(max-width:540px){body[data-page=modelos] .s-header-row{gap:8px}body[data-page=modelos] .s-logo img{width:clamp(112px,35vw,144px);height:auto}body[data-page=modelos] .s-header-nav .s-button{white-space:nowrap;font-size:12px;padding:10px 12px;gap:6px}body[data-page=modelos] .s-header-nav .s-button span{display:none}}
/* Galeria por setor e porte (2026-10-27): setor no card igual ao filtro, etiqueta de porte, seletor no celular e seção Padrão corporativo. */
.m-collections{grid-template-columns:repeat(3,minmax(0,1fr))}
.m-segment .m-sector{display:block;font-weight:600;color:#09242b}
.m-level{align-self:flex-start;margin:0 0 12px;padding:3px 9px;border:1px solid var(--cor-borda-clara);border-radius:999px;font:10px/1.5 var(--fonte-mono);letter-spacing:.05em;text-transform:uppercase;color:#426166}
.m-filter-select{display:none;flex-direction:column;gap:6px;font-size:12px;color:var(--cor-texto-claro-2)}
.m-filter-select select{min-height:44px;width:100%;border:1px solid #779d9e;border-radius:9px;padding:10px 14px;background:#f8fbfb;color:var(--cor-texto-claro);font:15px/1.4 var(--fonte-texto)}
.m-filter-select select:focus-visible{outline:3px solid #005f65;outline-offset:3px}
.m-corp-hint{margin:16px 0 0;padding:12px 16px;border-left:3px solid #005f65;background:#e2eded;font-size:14px;line-height:1.6;color:#09242b}
.m-corp-hint a{color:#005f65;font-weight:600;white-space:nowrap}
.m-corp{background:linear-gradient(180deg,#0b0d10 0%,#071a1f 100%);border-top:1px solid var(--cor-borda)}
.m-corp .m-count{color:var(--cor-texto-2)}
.m-corp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.m-corp-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--cor-borda);border-radius:18px;background:#09242b;scroll-margin-top:110px}
.m-corp-card--destaque{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.m-corp-preview{display:block;position:relative;overflow:hidden;background:#06171b;text-decoration:none}
.m-ficticia{position:absolute;z-index:2;left:14px;bottom:14px;padding:6px 11px;border-radius:999px;background:rgba(6,23,27,.88);border:1px solid rgba(113,231,219,.55);color:#e3f7f3;font:500 11px/1.2 var(--fonte-mono);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
.m-service-card{position:relative}
.m-level--corp{color:#71e7db!important;font-weight:500}
.m-corp-preview img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .35s var(--curva)}
.m-corp-preview:hover img{transform:scale(1.02)}
.m-corp-card--destaque .m-corp-preview{border-right:1px solid var(--cor-borda)}
.m-corp-card--destaque .m-corp-preview img{height:100%;min-height:100%;object-position:0 0}
.m-corp-card:not(.m-corp-card--destaque) .m-corp-preview{border-bottom:1px solid var(--cor-borda)}
.m-corp-copy{display:flex;flex-direction:column;flex:1;padding:28px}
.m-corp-card--destaque .m-corp-copy{padding:36px;justify-content:center}
.m-corp .m-level{border-color:rgba(113,231,219,.4);color:var(--cor-marca-2)}
.m-corp .m-segment{color:var(--cor-texto-2)}
.m-corp .m-segment .m-sector{color:var(--cor-marca-2)}
.m-corp-card h3{font-size:30px;margin-bottom:12px}
.m-corp-card--destaque h3{font-size:clamp(30px,3vw,40px)}
.m-corp-card h3 a{text-decoration:none;color:var(--cor-texto)}
.m-corp-card h3 a:hover{text-decoration:underline}
.m-corp .m-description{color:var(--cor-texto-2);margin-bottom:18px}
.m-corp-facts{display:grid;gap:14px;margin:auto 0 20px;padding-top:18px;border-top:1px solid var(--cor-borda)}
.m-corp-card--destaque .m-corp-facts{margin-top:8px}
.m-corp-facts dt{font-size:13px;font-weight:600;color:var(--cor-texto);margin-bottom:3px}
.m-corp-facts dd{margin:0;font-size:13px;line-height:1.65;color:var(--cor-texto-2)}
.m-corp .m-kind,.m-corp .m-explore{color:var(--cor-marca-2)}
.m-corp .m-interest{color:var(--cor-texto-2)}
.m-corp .m-interest:hover{color:var(--cor-texto)}
.m-corp .m-disclosure{color:var(--cor-texto-2)}
.m-corp .m-preview-arrow{background:#0b0d10}
.m-corp a:focus-visible{outline:3px solid var(--cor-foco);outline-offset:3px}
.m-paths{grid-template-columns:repeat(3,minmax(0,1fr))}
.m-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.m-corp-card--destaque{grid-template-columns:1fr}
.m-corp-card--destaque .m-corp-preview{border-right:0;border-bottom:1px solid var(--cor-borda)}
.m-corp-card--destaque .m-corp-preview img{height:auto;min-height:0}
.m-paths{grid-template-columns:1fr}
.m-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){.m-collections{grid-template-columns:1fr}
.m-corp-grid{grid-template-columns:1fr;gap:18px}
.m-corp-copy,.m-corp-card--destaque .m-corp-copy{padding:22px}
.m-corp-card h3,.m-corp-card--destaque h3{font-size:26px}
.m-service-grid{grid-template-columns:1fr}
}
@media(max-width:599px){.m-filters{display:none}
.m-filter-select{display:flex}
}
/* Qualquer quantidade de sites corporativos: o último card que ficaria sozinho na linha ocupa a largura toda, no mesmo arranjo do destaque. */
.m-corp-card:not(:first-child):last-child:nth-child(even){grid-column:1/-1}
@media(min-width:1101px){.m-corp-card:not(:first-child):last-child:nth-child(even){display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.m-corp-card:not(:first-child):last-child:nth-child(even) .m-corp-preview{border-bottom:0;border-right:1px solid var(--cor-borda)}
.m-corp-card:not(:first-child):last-child:nth-child(even) .m-corp-preview img{height:100%;min-height:100%;object-position:0 0}
.m-corp-card:not(:first-child):last-child:nth-child(even) .m-corp-copy{padding:36px;justify-content:center}
}
