/* arty-extra.css — estilos complementares (cards-link, nav ativo, dropdown overrides). */

.arty-service{ display:flex; flex-direction:column; text-decoration:none; }
.arty-service-link{ margin-top:auto; padding-top:1.7rem; display:inline-flex; align-items:center; gap:0.5em; color:var(--muted); transition:color .3s ease, gap .3s ease; }
.arty-service:hover .arty-service-link{ color:var(--accent); gap:0.8em; }
.arty-service-link i{ transition:transform .3s cubic-bezier(.2,.7,.3,1); }
.arty-service:hover .arty-service-link i{ transform:translate(2px,-2px); }

.arty-nav a.is-active{ color:var(--txt-strong); }
.arty-nav a.is-active::after{ width:100%; }

/* neutraliza o estilo base de .arty-nav a dentro do dropdown */
.arty-dropdown a{ text-transform:none; letter-spacing:0; font-family:var(--font-text); }
.arty-dropdown a.arty-dd-link{ padding:0.95rem 1.3rem; }
.arty-dropdown a::after{ display:none; }
.arty-dd-foot a{ font-family:var(--font-mono); letter-spacing:0.16em; text-transform:uppercase; }

.arty-detail-main{ min-width:0; }

/* ===================== EFEITOS CINEMATOGRÁFICOS ===================== */
/* overlay fixo: grão de filme + vinheta */
#arty-cinema-overlay{ position:fixed; inset:0; z-index:9000; pointer-events:none; }
.arty-cine-vignette{ position:absolute; inset:0; background:radial-gradient(120% 100% at 50% 42%, transparent 58%, rgba(0,0,0,0.42) 100%); mix-blend-mode:multiply; }
.arty-cine-grain{ position:absolute; inset:-150%; width:400%; height:400%; opacity:0.05; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); animation:artyGrain 0.6s steps(4) infinite; }
@keyframes artyGrain{
  0%{ transform:translate(0,0); } 25%{ transform:translate(-6%,4%); }
  50%{ transform:translate(4%,-5%); } 75%{ transform:translate(-3%,6%); }
  100%{ transform:translate(5%,-3%); }
}

/* scroll reveal — estilo títulos de filme */
@media (prefers-reduced-motion: no-preference){
  .arty-reveal{ opacity:0; transform:translateY(30px); transition:opacity .85s cubic-bezier(.2,.7,.3,1), transform .85s cubic-bezier(.2,.7,.3,1); transition-delay:calc(var(--reveal-i, 0) * 70ms); will-change:opacity, transform; }
  .arty-reveal.is-in{ opacity:1; transform:translateY(0); }
}

/* campo de partículas na Hero */
.arty-hero-particles{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.arty-hero-inner{ will-change:transform; }

/* CTA primário da Hero — efeito "clique em mim" (pulso + anel de brilho) */
@media (prefers-reduced-motion: no-preference){
  .arty-hero .arty-btn-solid{ position:relative; animation:artyCtaAttention 3s cubic-bezier(.4,0,.2,1) 1.2s infinite; }
  .arty-hero .arty-btn-solid:hover{ animation-play-state:paused; }
  @keyframes artyCtaAttention{
    0%   { transform:scale(1);     box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 60%, transparent); }
    9%   { transform:scale(1.05);  }
    18%  { transform:scale(0.99);  }
    26%  { transform:scale(1);     }
    65%  { box-shadow:0 0 0 15px color-mix(in srgb, var(--accent) 0%, transparent); }
    100% { transform:scale(1);     box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 0%, transparent); }
  }
}

/* desligar tudo */
.arty-no-cinema #arty-cinema-overlay,
.arty-no-cinema .arty-hero-particles{ display:none !important; }
.arty-no-cinema .arty-reveal{ opacity:1 !important; transform:none !important; }
.arty-no-cinema .arty-hero .arty-btn-solid{ animation:none !important; }

/* ===================== HERO B — logotipo acima do título ===================== */
@media (prefers-reduced-motion: no-preference){
  .arty-anim-ready .arty-hero-b-logo{ opacity:0; animation:artyRise .9s cubic-bezier(.2,.7,.3,1) forwards; animation-delay:.04s; }
}

/* ===================== DROPDOWN (controlado por JS, tolerante) ===================== */
.arty-dropdown{ left:0; top:calc(100% + 27px); transform:translate(0,8px); min-width:248px; padding:0.5rem 0; }
.arty-dropdown::before{ top:-27px; height:27px; }
.arty-nav-item:hover .arty-dropdown,
.arty-nav-item.is-open .arty-dropdown{ opacity:1; visibility:visible; pointer-events:auto; transform:translate(0,0); }
.arty-nav-item.is-open .arty-nav-caret{ transform:rotate(-135deg); margin-bottom:0; }
.arty-dd-link{ justify-content:space-between; align-items:center; white-space:nowrap; gap:2.5rem; padding:0.95rem 1.3rem; }
.arty-dd-link + .arty-dd-link{ border-top:1px solid var(--line); }
.arty-dd-tt{ font-weight:400; }
.arty-dd-arrow{ color:var(--muted-dim); opacity:0; transform:translateX(-5px); transition:opacity .25s ease, transform .25s cubic-bezier(.2,.7,.3,1), color .25s ease; }
.arty-dd-link:hover .arty-dd-arrow{ opacity:1; transform:translateX(0); color:var(--accent); }
.arty-dd-foot{ margin-top:0; padding:0.95rem 1.3rem 0.6rem; }

/* ===================== TEMA CLARO (seções alternadas) ===================== */
.arty-theme-light{
  --bg:#FFFFFF;            /* branco puro */
  --panel:#F5F2EC;
  --line:#E7E3D9;
  --line-soft:#F0ECE3;
  --txt:#1E2127;
  --txt-strong:#000000;
  --muted:#5E6068;
  --muted-dim:#9A968C;
  --accent:#8A6D3B;        /* bronze fosco, legível no claro */
  --accent-soft:rgba(138,109,59,0.09);
  background:var(--bg);
  color:var(--txt);
}
.arty-theme-light ::selection{ background:var(--accent); color:#F4F1EA; }
.arty-theme-light .arty-btn-solid{ background:#16181D; color:#F4F1EA; }
.arty-theme-light .arty-btn-solid:hover{ background:var(--accent); color:#16181D; }
.arty-theme-light .arty-btn-ghost{ color:var(--txt); border-color:var(--line); }
.arty-theme-light .arty-btn-ghost:hover{ border-color:var(--txt-strong); }
.arty-theme-light .arty-whats-btn{ background:#16181D; color:#F4F1EA; }
.arty-theme-light .arty-whats-btn:hover{ background:var(--accent); color:#16181D; }

/* CTA abaixo dos serviços (home) */
.arty-services-cta{ display:flex; justify-content:center; margin-top:clamp(2.4rem,4vw,3.4rem); }

/* ===================== CATÁLOGO DE SERVIÇOS (cards por categoria) ===================== */
.arty-catalog{ display:flex; flex-direction:column; gap:clamp(3rem,5.5vw,4.6rem); }
.arty-cat-group{ display:flex; flex-direction:column; }
.arty-cat-head{ display:flex; gap:1.1rem; align-items:flex-start; padding-bottom:1.4rem; border-bottom:1px solid var(--line); margin-bottom:clamp(1.6rem,3vw,2.2rem); }
.arty-cat-n{ color:var(--accent); font-size:0.74rem; padding-top:0.45rem; }
.arty-cat-name{ font-family:var(--font-display); font-weight:600; font-size:calc(1.5rem*var(--scale)); color:var(--txt-strong); margin:0 0 0.4rem; letter-spacing:-0.01em; }
.arty-cat-desc{ color:var(--muted); font-size:1rem; margin:0; line-height:1.55; }
.arty-cat-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.arty-cat-grid .arty-service{ border:none; }
@media (max-width:640px){
  .arty-cat-grid{ grid-template-columns:1fr; }
}


/* ===================== RODAPÉ (alinhado à esquerda) ===================== */
.arty-footer{ padding-top:clamp(46px,6vw,80px); padding-bottom:38px; }
.arty-footer-top{ display:grid; grid-template-columns:0.95fr 1.85fr; gap:clamp(2.5rem,7vw,6rem); align-items:start; padding:0 0 clamp(2.4rem,4vw,3.4rem); }
.arty-footer-brand{ align-items:flex-start; text-align:left; gap:1.1rem; max-width:34ch; }
.arty-footer-contact{ display:flex; flex-direction:column; gap:0.7rem; margin-top:0.4rem; }
.arty-footer-contact .arty-footer-city{ display:inline-flex; align-items:center; gap:0.55em; color:var(--muted); font-family:var(--font-text); font-size:0.92rem; letter-spacing:0; text-transform:none; }.arty-footer-contact .arty-footer-city i{ color:var(--accent); flex:0 0 auto; }
.arty-footer-contact a{ display:inline-flex; align-items:center; gap:0.55em; color:var(--muted); font-size:0.92rem; transition:color .3s ease; }
.arty-footer-contact a i{ color:var(--accent); flex:0 0 auto; }
.arty-footer-contact a:hover{ color:var(--txt-strong); }
.arty-footer-cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(1.8rem,3vw,3rem); }
.arty-footer-col{ align-items:flex-start; text-align:left; gap:0.85rem; }
.arty-footer-col a{ white-space:nowrap; }
.arty-footer-col-label{ margin-bottom:0.6rem; }
.arty-footer-base{ display:flex; flex-direction:column; justify-content:center; align-items:center; gap:0.5rem; flex-wrap:wrap; text-align:center; }
.arty-footer-base .arty-mono{ color:var(--muted-dim); font-size:0.68rem; }
.arty-footer-legal .arty-mono{ color:var(--muted-dim); font-size:0.68rem; white-space:nowrap; }
@media (max-width:820px){
  .arty-footer-top{ grid-template-columns:1fr; gap:2.8rem; }
}
@media (max-width:560px){
  .arty-footer-cols{ grid-template-columns:1fr 1fr; gap:2.2rem 1.5rem; }
}

/* ===================== LEGAL / LGPD ===================== */
/* links no rodapé */

/* checkbox de consentimento no formulário */

/* banner de consentimento */
#arty-consent{ position:fixed; left:50%; bottom:22px; transform:translate(-50%,140%); width:min(680px, calc(100vw - 40px)); z-index:9500; background:color-mix(in srgb, #0A0B0D 92%, transparent); backdrop-filter:blur(16px) saturate(140%); border:1px solid var(--line); border-radius:6px; padding:1.2rem 1.4rem; display:flex; align-items:center; gap:1.4rem; flex-wrap:wrap; box-shadow:0 18px 50px rgba(0,0,0,0.5); transition:transform .45s cubic-bezier(.2,.7,.3,1), opacity .45s ease; opacity:0; }
#arty-consent.is-in{ transform:translate(-50%,0); opacity:1; }
.arty-consent-text{ flex:1; min-width:240px; color:#A9ACB3; font-family:var(--font-text); font-size:0.92rem; line-height:1.5; margin:0; }
.arty-consent-text a{ color:#F4F1EA; text-decoration:underline; text-underline-offset:2px; }
.arty-consent-actions{ display:flex; gap:0.7rem; flex-shrink:0; }
.arty-consent-btn{ font-family:var(--font-mono); font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase; padding:0.75em 1.1em; border-radius:3px; cursor:pointer; border:1px solid transparent; transition:background .3s ease, color .3s ease, border-color .3s ease; white-space:nowrap; }
.arty-consent-btn.solid{ background:#F4F1EA; color:#0A0B0D; }
.arty-consent-btn.solid:hover{ background:#C9A876; }
.arty-consent-btn.ghost{ background:transparent; color:#A9ACB3; border-color:#23262D; }
.arty-consent-btn.ghost:hover{ color:#F4F1EA; border-color:#F4F1EA; }
@media (max-width:560px){
  #arty-consent{ flex-direction:column; align-items:stretch; }
  .arty-consent-actions{ justify-content:stretch; }
  .arty-consent-btn{ flex:1; }
}

/* páginas legais */
.arty-legal-updated{ color:var(--muted-dim); margin:0 0 clamp(2rem,4vw,3rem); }
.arty-legal{ max-width:75ch; }
.arty-legal-block + .arty-legal-block{ margin-top:clamp(1.8rem,3.5vw,2.6rem); }
.arty-legal-h{ font-family:var(--font-display); font-weight:600; font-size:calc(1.32rem*var(--scale)); color:var(--txt-strong); margin:0 0 0.9rem; letter-spacing:-0.01em; }
.arty-legal-p{ color:var(--muted); font-size:1.04rem; line-height:1.72; margin:0 0 0.9rem; }
.arty-legal-mail{ color:var(--accent); font-weight:600; text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px; transition:color .25s ease; white-space:nowrap; }
.arty-legal-mail:hover{ color:var(--txt-strong); }
