/* boneca.org — identidade "costura": pontos de linha, etiquetas de pano, tons de porcelana e rosa-bochecha */
:root{
  --linho:#FAF7F1;
  --tinta:#2B2440;
  --tinta-suave:#5A5470;
  --rosa:#D94F6E;
  --rosa-claro:#F9E4E9;
  --petroleo:#1F6F6B;
  --palha:#F3E7D6;
  --branco:#FFFFFF;
  --costura:2px dashed #D9C9B8;
  --serif:Georgia,'Iowan Old Style','Times New Roman',serif;
  --sans:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --max:72rem;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{font-family:var(--sans);color:var(--tinta);background:var(--linho);line-height:1.65;font-size:1.0625rem}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--petroleo)}
a:focus-visible,button:focus-visible{outline:3px solid var(--rosa);outline-offset:2px;border-radius:2px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:var(--tinta);color:#fff;padding:.5rem 1rem;z-index:99}
.skip:focus{left:0}

/* Cabeçalho */
.topo{background:var(--branco);border-bottom:var(--costura)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem;padding-bottom:.9rem}
.logo{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--tinta);text-decoration:none;letter-spacing:-.02em}
.logo em{font-style:normal;color:var(--rosa)}
.nav-btn{display:none;background:none;border:var(--costura);border-radius:8px;padding:.45rem .8rem;font:inherit;color:var(--tinta);cursor:pointer}
.menu{display:flex;gap:1.4rem;list-style:none}
.menu a{color:var(--tinta);text-decoration:none;font-size:.95rem;padding-bottom:.15rem;border-bottom:2px dashed transparent}
.menu a:hover,.menu a[aria-current]{border-bottom-color:var(--rosa);color:var(--rosa)}
@media(max-width:56rem){
  .nav-btn{display:block}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--branco);flex-direction:column;gap:0;border-bottom:var(--costura);z-index:50;padding:.5rem 0}
  .menu.aberto{display:flex}
  .menu a{display:block;padding:.8rem 1.25rem;border-bottom:none}
  .topo{position:relative}
}

/* Migalhas */
.migalhas{font-size:.85rem;color:var(--tinta-suave);padding:1rem 0 0}
.migalhas ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem}
.migalhas li+li::before{content:"›";margin-right:.35rem;color:#C4B5A3}
.migalhas a{color:var(--tinta-suave)}

/* Herói */
.heroi{padding:3.5rem 0 3rem;text-align:left}
.heroi .wrap{max-width:52rem}
.etiqueta{display:inline-block;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;background:var(--palha);border:var(--costura);border-radius:3px 12px 3px 12px;padding:.3rem .7rem;color:var(--tinta-suave);margin-bottom:1.1rem}
h1{font-family:var(--serif);font-size:clamp(2rem,5vw,3.1rem);line-height:1.15;letter-spacing:-.02em;margin-bottom:1rem}
h1 .fio{color:var(--rosa)}
.heroi p{font-size:1.15rem;color:var(--tinta-suave);max-width:46rem}

/* Seções */
main{padding-bottom:3rem}
section{padding:2.2rem 0}
h2{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.4rem;letter-spacing:-.01em}
.sub{color:var(--tinta-suave);margin-bottom:1.6rem;max-width:46rem}
h3{font-family:var(--serif);font-size:1.2rem;margin:1.4rem 0 .5rem}
article p{margin-bottom:1rem;max-width:46rem}
article ul,article ol{margin:0 0 1rem 1.3rem;max-width:44rem}
article li{margin-bottom:.4rem}

/* Grade de categorias / subpáginas — "gavetas da caixa de brinquedos" */
.grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));gap:1rem;list-style:none}
.gaveta{background:var(--branco);border:var(--costura);border-radius:4px 16px 4px 16px;padding:1.15rem 1.2rem;transition:transform .15s ease,border-color .15s ease}
.gaveta:hover{transform:translateY(-3px);border-color:var(--rosa)}
.gaveta a{font-family:var(--serif);font-size:1.1rem;color:var(--tinta);text-decoration:none}
.gaveta a::after{content:"";position:absolute;inset:0}
.gaveta{position:relative}
.gaveta a:hover{color:var(--rosa)}
.gaveta p{font-size:.9rem;color:var(--tinta-suave);margin-top:.4rem}
.gaveta .num{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--petroleo)}

/* Lista de links simples (subpáginas em hubs) */
.lista-links{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.6rem 1.5rem;margin:1rem 0}
.lista-links a{display:inline-block;padding:.15rem 0;color:var(--petroleo);text-decoration:none;border-bottom:2px dashed #CBDEDD}
.lista-links a:hover{color:var(--rosa);border-bottom-color:var(--rosa)}

/* Destaque */
.faixa{background:var(--rosa-claro);border-top:var(--costura);border-bottom:var(--costura)}
.faixa .wrap{padding-top:2.4rem;padding-bottom:2.4rem}

/* FAQ */
.faq details{background:var(--branco);border:var(--costura);border-radius:4px 12px 4px 12px;margin-bottom:.7rem;max-width:46rem}
.faq summary{cursor:pointer;padding:.9rem 1.1rem;font-weight:600;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"✦";color:var(--rosa);margin-right:.6rem;font-size:.8rem}
.faq details p{padding:0 1.1rem 1rem 2.2rem;color:var(--tinta-suave)}

/* Tabelas (preços, medidas, escalas) */
.tabela{overflow-x:auto;margin:0 0 1.4rem;max-width:46rem;border:var(--costura);border-radius:4px 12px 4px 12px;background:var(--branco)}
.tabela table{border-collapse:collapse;width:100%;font-size:.95rem}
.tabela th,.tabela td{text-align:left;padding:.6rem .8rem;border-bottom:1px dashed #E2D6C6;vertical-align:top}
.tabela th{font-family:var(--serif);font-weight:700;background:var(--palha)}
.tabela tr:last-child td{border-bottom:none}
.tabela caption{caption-side:bottom;padding:.6rem .8rem;font-size:.82rem;color:var(--tinta-suave);text-align:left}

/* Caixa de nota / atenção */
.nota{background:var(--rosa-claro);border:var(--costura);border-radius:4px 12px 4px 12px;padding:1rem 1.15rem;margin:0 0 1.4rem;max-width:46rem}
.nota p{margin-bottom:0}
.nota p+p{margin-top:.7rem}

/* Rodapé */
.rodape{background:var(--tinta);color:#D8D3E4;margin-top:2rem}
.rodape .wrap{padding:2.5rem 1.25rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}
.rodape h2,.rodape h3{font-family:var(--serif);color:#fff;font-size:1rem;margin:0 0 .7rem}
.rodape ul{list-style:none}
.rodape li{margin-bottom:.35rem}
.rodape a{color:#D8D3E4;text-decoration:none;font-size:.9rem;border-bottom:1px dashed #55506B}
.rodape a:hover{color:#fff;border-bottom-color:var(--rosa)}
.rodape .fim{grid-column:1/-1;border-top:1px dashed #55506B;padding-top:1.2rem;font-size:.82rem;color:#A79FC0}
