/* Rosa Creative Company — estilo do site
   Duas versões de cor: clara (padrão) e escura. Para trocar, mude data-tema no <html> de cada página. */
:root,
[data-tema="claro"]{
  --fundo:#EDEDEB;        /* fundo das páginas */
  --superficie:#FFFFFF;   /* molduras e caixas */
  --tinta:#121212;        /* texto principal e botões */
  --suave:#5F5F5C;        /* texto secundário */
  --linha:rgba(18,18,18,.14);
  --botao-texto:#FFFFFF;
  --sombra:0 18px 40px rgba(18,18,18,.16);
  --logo:brightness(0);   /* deixa o logo branco em preto */
  color-scheme:light;
}
[data-tema="escuro"]{
  --fundo:#141414;
  --superficie:#262626;
  --tinta:#F4F4F2;
  --suave:#A3A3A0;
  --linha:rgba(244,244,242,.16);
  --botao-texto:#121212;
  --sombra:0 18px 40px rgba(0,0,0,.45);
  --logo:none;
  color-scheme:dark;
}
:root{
  --f-titulo:"Young Serif",Georgia,serif;
  --f-texto:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gutter:clamp(16px,4.4vw,64px);
  --max:1312px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fundo);color:var(--tinta);font-family:var(--f-texto);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--f-titulo);font-weight:400;line-height:1.08;margin:0;text-wrap:balance}
p,ul,ol{margin:0}
:focus-visible{outline:2px solid var(--tinta);outline-offset:3px}
.wrap{width:100%;max-width:calc(var(--max) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)}
[hidden]{display:none!important}

/* Cabeçalho */
.topo{position:sticky;top:0;z-index:40;background:var(--fundo)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px}
.logo img{height:40px;width:auto;filter:var(--logo)}
.menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.menu a{display:block;padding:11px 16px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none}
.menu a:hover{background:var(--linha)}
.menu a[aria-current="page"]{background:var(--tinta);color:var(--fundo)}
.menu-botao{display:none;height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--tinta);background:none;color:var(--tinta);font:600 15px var(--f-texto);cursor:pointer}

/* Botões */
.acoes{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 28px;border-radius:999px;border:2px solid var(--tinta);background:var(--tinta);color:var(--botao-texto);font:700 16px/1 var(--f-texto);text-decoration:none;cursor:pointer;transition:opacity .2s}
.btn:hover{opacity:.82}
.btn.sec{background:transparent;color:var(--tinta)}
.btn.sec:hover{background:var(--tinta);color:var(--botao-texto);opacity:1}
.btn svg{width:20px;height:20px;flex:none}

/* Molduras de celular (vídeos verticais) e de tela (horizontais) */
.cel{position:relative;display:block;width:100%;aspect-ratio:9/16;border-radius:28px;overflow:hidden;border:6px solid var(--superficie);background:var(--superficie);box-shadow:var(--sombra);padding:0;cursor:pointer}
.tela{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:20px;overflow:hidden;border:6px solid var(--superficie);background:var(--superficie);box-shadow:var(--sombra);padding:0;cursor:pointer}
.cel img,.tela img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.cel:hover img,.tela:hover img,.cel:focus-visible img,.tela:focus-visible img{transform:scale(1.04)}
.play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;opacity:0;transition:opacity .25s}
.play::after{content:"";border-left:17px solid #121212;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:5px}
.cel:hover .play,.tela:hover .play,.cel:focus-visible .play,.tela:focus-visible .play{opacity:1}
.sem-video{cursor:default}
.sem-video:hover img{transform:none}

/* Início */
.inicio{text-align:center;padding-block:clamp(28px,4vw,48px) clamp(64px,7vw,96px)}
.inicio h1{font-size:clamp(40px,5vw,64px);max-width:17ch;margin-inline:auto}
.inicio .lede{font-size:clamp(17px,1.4vw,19px);max-width:46ch;margin:20px auto 30px;color:var(--suave)}
.celulares{display:flex;justify-content:center;align-items:flex-start;gap:clamp(12px,1.6vw,22px);margin-top:clamp(40px,5vw,56px)}
.celulares .cel{width:clamp(150px,15vw,210px)}
.celulares .cel:nth-child(2),.celulares .cel:nth-child(4){margin-top:40px}
.celulares .cel:nth-child(3){width:clamp(170px,17vw,240px);margin-top:-10px}

/* Cabeçalho de página interna */
.cab{text-align:center;padding:clamp(24px,3vw,40px) 0 clamp(28px,3vw,40px)}
.cab h1{font-size:clamp(40px,5vw,64px)}
.cab .lede{max-width:52ch;margin:16px auto 0;color:var(--suave);font-size:18px}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}
.chip{min-height:44px;padding:0 20px;border-radius:999px;border:2px solid var(--tinta);background:none;color:var(--tinta);font:600 15px var(--f-texto);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--tinta);color:var(--fundo)}

/* Portfólio */
.grupo{padding-bottom:clamp(56px,6vw,88px)}
.grupo h2{font-size:clamp(28px,2.6vw,36px);margin-bottom:24px}
.grade-v{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 18px}
.grade-h{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
.item h3{font-size:22px;margin-top:16px}
.grade-h .item h3{font-size:26px}
.item p{font-size:14px;color:var(--suave);margin-top:4px;line-height:1.45}

/* Sobre e Formas de trabalhar: o vídeo fica atrás da página inteira e os textos passam por cima. */
.sobre-video{position:relative;overflow:hidden;background:#121212}
.sobre-video img,.sobre-video iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.sobre-video iframe{opacity:0;transition:opacity .8s;pointer-events:none}
.sobre-video iframe.ok{opacity:1}
.sobre-texto{width:100%;max-width:calc(760px + var(--gutter)*2);margin-inline:auto;padding:clamp(40px,5vw,72px) var(--gutter) clamp(64px,7vw,104px)}

[data-versao="fundo"]{
  --tinta:#F4F4F2; --suave:rgba(244,244,242,.78); --linha:rgba(244,244,242,.22);
  --superficie:rgba(244,244,242,.1); --fundo:#121212; --botao-texto:#121212;
  position:relative;isolation:isolate;color:var(--tinta)
}
[data-versao="fundo"] .sobre-video{position:fixed;inset:0;z-index:-1}
[data-versao="fundo"] .sobre-video::after{content:"";position:absolute;inset:0;background:rgba(10,10,10,.62)}
[data-versao="fundo"] .sobre-texto{padding-top:clamp(56px,10vh,120px)}
[data-versao="fundo"] .plano{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
[data-versao="fundo"] .formatos span{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.abas{display:flex;gap:6px;margin-bottom:clamp(36px,4vw,56px)}
.abas a{padding:10px 18px;border-radius:999px;border:2px solid var(--tinta);font-weight:600;font-size:15px;text-decoration:none}
.abas a[aria-current="page"]{background:var(--tinta);color:var(--fundo)}
.bloco{padding-bottom:clamp(72px,7vw,112px)}
.bloco:last-of-type{padding-bottom:0}
.bloco h2{font-size:clamp(32px,3.2vw,44px);margin-bottom:16px}
.bloco > p{color:var(--suave);max-width:52ch}
.lista{list-style:none;padding:0;margin-top:26px;display:grid;border-top:1px solid var(--linha)}
.lista li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--linha)}
.lista b{font-weight:700}
.lista span{color:var(--suave)}
.passos{list-style:none;padding:0;margin-top:26px;display:grid;gap:0;counter-reset:p;border-top:1px solid var(--linha)}
.passos li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px 16px;padding:18px 0;border-bottom:1px solid var(--linha)}
.passos li::before{counter-increment:p;content:counter(p);grid-row:span 2;font:400 26px/1 var(--f-titulo);color:var(--suave)}
.passos b{font-weight:700}
.passos span{color:var(--suave)}
.formatos{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.formatos span{padding:9px 14px;border-radius:999px;background:var(--superficie);font-size:15px;font-weight:500}

/* Formas de trabalhar */
.plano{padding:clamp(28px,3vw,40px);border-radius:24px;background:var(--superficie);margin-bottom:20px}
.plano .tipo{font-size:14px;font-weight:600;color:var(--suave)}
.plano h2{font-size:clamp(30px,3vw,40px);margin:8px 0 12px}
.plano > p{color:var(--suave);max-width:46ch}
.plano ul{list-style:none;padding:16px 0 0;margin:20px 0 26px;border-top:1px solid var(--linha);display:grid;gap:8px}
.plano li{padding-left:22px;position:relative}
.plano li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:var(--tinta)}
.plano.forte{background:var(--tinta);color:var(--fundo)}
.plano.forte .tipo,.plano.forte > p{color:color-mix(in srgb,var(--fundo) 70%,transparent)}
.plano.forte ul{border-color:color-mix(in srgb,var(--fundo) 25%,transparent)}
.plano.forte li::before{background:var(--fundo)}
.plano.forte .btn{background:var(--fundo);color:var(--tinta);border-color:var(--fundo)}
.plano .acoes{justify-content:flex-start}

/* Marcas atendidas */
.marcas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:clamp(64px,7vw,96px)}
.marca{display:grid;grid-template-rows:auto 1fr;border-radius:24px;background:var(--superficie);overflow:hidden;text-decoration:none}
.marca .area{display:grid;place-items:center;aspect-ratio:16/9;padding:clamp(24px,3vw,44px)}
.marca img{max-height:110px;width:auto;object-fit:contain;filter:var(--logo)}
.marca .rotulo{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;border-top:1px solid var(--linha);font-weight:600}
.marca .rotulo span{font-weight:500;font-size:14px;color:var(--suave)}
.marca:hover .rotulo span{color:var(--tinta);text-decoration:underline}

/* Contato */
.contato{text-align:center;padding-block:clamp(40px,6vw,88px) clamp(72px,8vw,120px)}
.contato h1{font-size:clamp(40px,5.4vw,72px);max-width:16ch;margin-inline:auto}
.contato .lede{font-size:clamp(17px,1.4vw,20px);color:var(--suave);max-width:46ch;margin:22px auto 34px}
.dados{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 48px;margin-top:56px;padding-top:32px;border-top:1px solid var(--linha);max-width:900px;margin-inline:auto}
.dados div{display:grid;gap:2px}
.dados small{font-size:14px;color:var(--suave)}
.dados b{font-weight:600;font-size:17px}

/* Rodapé */
.rodape{position:relative;z-index:1;border-top:1px solid var(--linha);background:var(--fundo)}
.rodape .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:28px;font-size:14px;color:var(--suave)}
.rodape img{height:28px;width:auto;filter:var(--logo)}
.rodape nav{display:flex;flex-wrap:wrap;gap:20px}
.rodape nav a{text-decoration:none}
.rodape nav a:hover{color:var(--tinta)}

/* Janela do vídeo */
.janela{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.94);display:grid;place-items:center;padding:24px}
.janela .caixa{position:relative;width:min(1200px,100%);aspect-ratio:16/9;max-height:82vh;background:#000;border-radius:16px;overflow:hidden}
.janela.vertical .caixa{width:auto;height:min(82vh,900px);aspect-ratio:9/16}
.janela iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.janela .fechar{position:absolute;top:calc(16px + env(safe-area-inset-top,0px));right:16px;height:44px;padding:0 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.5);background:none;color:#fff;font:600 15px var(--f-texto);cursor:pointer}

/* Telas menores */
@media (max-width:1024px){
  .grade-v{grid-template-columns:repeat(3,minmax(0,1fr))}
  .marcas{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .menu-botao{display:block}
  .menu{position:absolute;top:88px;left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;padding:8px var(--gutter) 20px;background:var(--fundo);border-bottom:1px solid var(--linha)}
  .topo:not(.aberto) .menu{display:none}
  .menu a{padding:14px 18px}
  .celulares{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px var(--gutter) 30px;margin-inline:calc(var(--gutter)*-1)}
  .celulares .cel,.celulares .cel:nth-child(3){flex:none;width:58vw;max-width:240px;margin-top:0;scroll-snap-align:center}
  .celulares .cel:nth-child(2),.celulares .cel:nth-child(4){margin-top:0}
  .grade-h{grid-template-columns:1fr}
}
@media (max-width:560px){
  .grade-v{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
  .cel{border-width:4px;border-radius:20px}
  .tela{border-width:4px;border-radius:16px}
  .item h3{font-size:19px}
  .marcas{grid-template-columns:1fr}
  .lista li{grid-template-columns:1fr;gap:4px}
  .acoes .btn{width:100%}
  .plano .acoes .btn{width:auto}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}
}
