/* Arcade — estilos das páginas internas (bone) */
/* ===== PORTFÓLIO + CASE LISTING ===== */

  body { background: var(--light); }
  .site-nav { position: absolute; background: transparent; }
  .nav-logo { color: var(--text-on-light); }
  .site-nav .nav-links a { color: var(--text-dim-light); }
  .site-nav .nav-links a:hover { color: var(--text-on-light); }

  .pf-hero { background: var(--light); padding: 200px 64px 70px; }
  .pf-hero-inner { max-width: 1180px; margin: 0 auto; }
  .pf-eyebrow { display:inline-flex; align-items:center; gap:10px; font-family: var(--font-body); font-size:12px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color: var(--rose-deep); margin-bottom:22px; }
  .pf-eyebrow::after { content:''; width:42px; height:1px; background: var(--rose-deep); opacity:0.5; }
  .pf-hero h1 { font-family: var(--font-display); font-weight:400; font-size: clamp(34px,4.4vw,54px); line-height:1.12; color: var(--text-on-light); max-width: 820px; }
  .pf-hero p { font-family: var(--font-body); font-weight:300; font-size:16px; line-height:1.7; color: var(--text-dim-light); max-width: 560px; margin-top:24px; }

  .pf-grid-wrap { background: var(--light); padding: 0 64px 110px; }
  .pf-grid { max-width: 1180px; margin: 0 auto; display:grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line-light); border:1px solid var(--line-light); }
  .case-card { background: var(--light); text-decoration:none; display:flex; flex-direction:column; cursor:none; transition: background 0.3s; }
  .case-card:hover { background: #EFEBE2; }
  .case-thumb { aspect-ratio: 4/3; background-size:cover; background-position:center; transition: transform 0.5s ease; }
  .case-card:hover .case-thumb { transform: scale(1.03); }
  .case-meta { padding: 30px 34px 36px; }
  .case-seg { font-family: var(--font-body); font-size:11px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color: var(--rose-deep); }
  .case-name { font-family: var(--font-display); font-weight:400; font-size:24px; color: var(--text-on-light); margin:12px 0 10px; }
  .case-desc { font-family: var(--font-body); font-weight:300; font-size:14px; line-height:1.65; color: var(--text-dim-light); }
  .case-go { display:inline-block; margin-top:18px; font-family: var(--font-body); font-size:13px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color: var(--text-on-light); transition: color 0.2s, transform 0.2s; }
  .case-card:hover .case-go { color: var(--rose-deep); transform: translateX(4px); }

  @media (max-width: 980px) {
    body { cursor:auto; } .cursor,.cursor-ring { display:none; }
    .site-nav { padding:24px; } .site-nav .nav-links { display:none; }
    .pf-hero { padding: 120px 24px 50px; }
    .pf-grid-wrap { padding: 0 16px 70px; }
    .pf-grid { grid-template-columns: 1fr; }
    footer { padding:34px 24px; } .footer-inner { flex-direction:column; align-items:flex-start; }
  }

/* ===== CASE (single) ===== */

  body { background: var(--light); }
  .site-nav { position: absolute; background: transparent; }
  .nav-logo { color: var(--text-on-light); }
  .site-nav .nav-links a { color: var(--text-dim-light); }
  .site-nav .nav-links a:hover { color: var(--text-on-light); }

  /* PAGE: single case */
  .case-hero { background: var(--light); padding: 190px 64px 60px; }
  .case-hero-inner { max-width: 980px; margin:0 auto; }
  .back-link { display:inline-flex; align-items:center; gap:8px; font-family:var(--font-body); font-size:13px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:var(--text-dim-light); text-decoration:none; transition:color 0.2s; cursor:none; margin-bottom:40px; }
  .back-link:hover { color: var(--rose); }
  .case-seg-top { font-family:var(--font-body); font-size:12px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--rose-deep); }
  .case-hero h1 { font-family:var(--font-display); font-weight:400; font-size: clamp(34px,4.6vw,56px); line-height:1.1; color:var(--text-on-light); margin:16px 0 0; }
  .case-facts { display:flex; flex-wrap:wrap; gap:40px; margin-top:36px; padding-top:30px; border-top:1px solid var(--line-light); }
  .case-fact .l { font-family:var(--font-body); font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--text-dim-light); margin-bottom:6px; }
  .case-fact .v { font-family:var(--font-display); font-size:17px; color:var(--text-on-light); }
  .case-intro { font-family:var(--font-body); font-weight:300; font-size:18px; line-height:1.8; color:var(--text-on-light); max-width:680px; margin-top:34px; }

  .gallery-wrap { background: var(--light); padding: 30px 64px 120px; }
  .gallery { max-width:980px; margin:0 auto; display:grid; grid-template-columns: repeat(2,1fr); gap:14px; }
  .gallery-item { position:relative; aspect-ratio:4/3; overflow:hidden; cursor:none; background:#E2DCD0; }
  .gallery-item img { width:100%; height:100%; object-fit:cover; display:block; transition: transform 0.5s ease; }
  .gallery-item:hover img { transform: scale(1.04); }
  .gallery-item::after { content:'+'; position:absolute; top:14px; right:16px; font-family:var(--font-body); font-size:22px; color:#fff; opacity:0; transform:translateY(-4px); transition:opacity 0.3s, transform 0.3s; }
  .gallery-item:hover::after { opacity:0.9; transform:translateY(0); }

  /* lightbox */
  .lightbox { position:fixed; inset:0; background:rgba(8,8,8,0.94); display:none; align-items:center; justify-content:center; z-index:9999; padding:40px; }
  .lightbox.open { display:flex; animation: fade-up 0.3s ease; }
  .lightbox img { max-width:90vw; max-height:82vh; object-fit:contain; box-shadow:0 30px 80px rgba(0,0,0,0.6); }
  .lb-close { position:absolute; top:26px; right:34px; font-size:30px; color:#fff; cursor:pointer; background:none; border:none; line-height:1; }
  .lb-nav { position:absolute; top:50%; transform:translateY(-50%); background:none; border:1px solid rgba(255,255,255,0.4); color:#fff; width:48px; height:48px; border-radius:50%; font-size:20px; cursor:pointer; transition:background 0.2s,border-color 0.2s; }
  .lb-nav:hover { background:rgba(210,94,115,0.3); border-color:var(--rose); }
  .lb-prev { left:30px; } .lb-next { right:30px; }
  .lb-caption { position:absolute; bottom:28px; left:0; right:0; text-align:center; font-family:var(--font-body); font-size:13px; color:rgba(255,255,255,0.7); letter-spacing:0.06em; }

  @media (max-width: 980px) {
    body { cursor:auto; } .cursor,.cursor-ring { display:none; }
    .site-nav { padding:24px; } .site-nav .nav-links { display:none; }
    .case-hero { padding: 120px 24px 40px; }
    .gallery-wrap { padding: 20px 16px 80px; }
    .gallery { grid-template-columns: 1fr; }
    .lb-nav { width:40px; height:40px; } .lb-prev{left:12px;} .lb-next{right:12px;}
    footer { padding:34px 24px; } .footer-inner { flex-direction:column; align-items:flex-start; }
  }

/* ===== BLOG (listing) ===== */

  body { background: var(--light); }
  .site-nav { position: absolute; background: transparent; }
  .nav-logo { color: var(--text-on-light); }
  .site-nav .nav-links a { color: var(--text-dim-light); }
  .site-nav .nav-links a:hover { color: var(--text-on-light); }

  .bl-hero { background: var(--light); padding: 200px 64px 64px; }
  .bl-hero-inner { max-width: 1180px; margin:0 auto; }
  .bl-eyebrow { display:inline-flex; align-items:center; gap:10px; font-family:var(--font-body); font-size:12px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--rose-deep); margin-bottom:22px; }
  .bl-eyebrow::after { content:''; width:42px; height:1px; background:var(--rose-deep); opacity:0.5; }
  .bl-hero h1 { font-family:var(--font-display); font-weight:400; font-size:clamp(34px,4.4vw,54px); line-height:1.12; color:var(--text-on-light); max-width:820px; }
  .bl-hero p { font-family:var(--font-body); font-weight:300; font-size:16px; line-height:1.7; color:var(--text-dim-light); max-width:560px; margin-top:24px; }

  .bl-grid-wrap { background:var(--light); padding: 0 64px 110px; }
  .bl-grid { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
  .post-card { display:flex; flex-direction:column; text-decoration:none; cursor:none; }
  .post-thumb { aspect-ratio:3/2; background-size:cover; background-position:center; overflow:hidden; transition:transform 0.5s ease; }
  .post-card:hover .post-thumb { transform:scale(1.03); }
  .post-body { padding-top:22px; display:flex; flex-direction:column; }
  .post-tags { display:flex; align-items:center; gap:14px; margin-bottom:14px; }
  .post-cat { font-family:var(--font-body); font-size:11px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--rose-deep); }
  .post-read { font-family:var(--font-body); font-size:12px; color:var(--text-dim-light); }
  .post-title { font-family:var(--font-display); font-weight:400; font-size:23px; line-height:1.25; color:var(--text-on-light); margin-bottom:12px; transition:color 0.2s; }
  .post-card:hover .post-title { color:var(--rose-deep); }
  .post-exc { font-family:var(--font-body); font-weight:300; font-size:14px; line-height:1.65; color:var(--text-dim-light); }
  .post-go { margin-top:18px; font-family:var(--font-body); font-size:13px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:var(--text-on-light); transition:transform 0.2s,color 0.2s; }
  .post-card:hover .post-go { color:var(--rose-deep); transform:translateX(4px); }

  @media (max-width:980px) {
    body { cursor:auto; } .cursor,.cursor-ring { display:none; }
    .site-nav { padding:24px; } .site-nav .nav-links { display:none; }
    .bl-hero { padding:120px 24px 44px; }
    .bl-grid-wrap { padding:0 16px 70px; }
    .bl-grid { grid-template-columns:1fr; gap:40px; }
    footer { padding:34px 24px; } .footer-inner { flex-direction:column; align-items:flex-start; }
  }

/* ===== POST (single) ===== */

  body { background: var(--light); }
  .site-nav { position: absolute; background: transparent; }
  .nav-logo { color: var(--text-on-light); }
  .site-nav .nav-links a { color: var(--text-dim-light); }
  .site-nav .nav-links a:hover { color: var(--text-on-light); }

  .po-hero { background:var(--light); padding:180px 24px 0; }
  .po-hero-inner { max-width:760px; margin:0 auto; }
  .back-link { display:inline-flex; align-items:center; gap:8px; font-family:var(--font-body); font-size:13px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:var(--text-dim-light); text-decoration:none; transition:color 0.2s; cursor:none; margin-bottom:34px; }
  .back-link:hover { color:var(--rose); }
  .po-tags { display:flex; align-items:center; gap:16px; margin-bottom:20px; }
  .po-cat { font-family:var(--font-body); font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; color:var(--rose-deep); }
  .po-read { font-family:var(--font-body); font-size:13px; color:var(--text-dim-light); }
  .po-hero h1 { font-family:var(--font-display); font-weight:400; font-size:clamp(32px,4vw,48px); line-height:1.15; color:var(--text-on-light); }
  .po-byline { display:flex; align-items:center; gap:10px; margin-top:26px; font-family:var(--font-body); font-size:13px; color:var(--text-dim-light); }
  .po-byline .dot { width:3px; height:3px; border-radius:50%; background:var(--text-dim-light); }

  .po-cover { background:var(--light); padding:48px 24px 0; }
  .po-cover img { display:block; max-width:980px; width:100%; margin:0 auto; }

  .po-article { background:var(--light); padding:60px 24px 110px; }
  .po-content { max-width:680px; margin:0 auto; }
  .po-content p { font-family:var(--font-body); font-weight:300; font-size:18px; line-height:1.85; color:var(--text-on-light); margin-bottom:26px; }
  .po-content h2 { font-family:var(--font-display); font-weight:400; font-size:28px; line-height:1.3; color:var(--text-on-light); margin:46px 0 20px; }
  .po-content blockquote { margin:40px 0; padding:6px 0 6px 28px; border-left:3px solid var(--rose-deep); font-family:var(--font-display); font-weight:400; font-size:24px; line-height:1.4; color:var(--text-on-light); }

  .po-footer-cta { max-width:680px; margin:70px auto 0; padding-top:40px; border-top:1px solid var(--line-light); text-align:center; }
  .po-footer-cta p { font-family:var(--font-display); font-size:22px; color:var(--text-on-light); margin-bottom:22px; }
  .po-footer-cta a { display:inline-block; font-family:var(--font-body); font-size:13px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:var(--white); background:var(--rose); text-decoration:none; padding:16px 40px; transition:background 0.2s,transform 0.2s; cursor:none; }
  .po-footer-cta a:hover { background:var(--rose-deep); transform:translateY(-2px); }

  @media (max-width:980px) {
    body { cursor:auto; } .cursor,.cursor-ring { display:none; }
    .site-nav { padding:24px; } .site-nav .nav-links { display:none; }
    .po-hero { padding:120px 20px 0; }
    .po-content p { font-size:17px; }
    footer { padding:34px 24px; } .footer-inner { flex-direction:column; align-items:flex-start; }
  }


/* ===== Ajustes para conteúdo vindo do editor do WordPress ===== */
.case-intro p { font-family: var(--font-body); font-weight: 300; font-size: 18px; line-height: 1.8; color: var(--text-on-light); margin-bottom: 18px; }
.case-intro p:last-child { margin-bottom: 0; }
/* a paginação nativa do WP no blog */
.po-article .wp-block-image img, .po-content img { max-width: 100%; height: auto; }
.pagination .page-numbers, .pagination.navigation .nav-links .page-numbers { display:inline-block; font-family: var(--font-body); font-size: 14px; color: var(--text-dim-light); text-decoration: none; padding: 10px 16px; border: 1px solid var(--line-light); margin: 0 4px; transition: all 0.2s; }
.pagination .page-numbers:hover { border-color: var(--rose-deep); color: var(--rose-deep); }
.pagination .page-numbers.current { background: var(--rose-deep); color: #fff; border-color: var(--rose-deep); }
