/* cmsms stylesheet: Design modified: 03/12/26 23:50:39 */
:root{
    --stone-50:#fafaf9;
    --stone-100:#f5f5f4;
    --stone-200:#e7e5e4;
    --stone-300:#d6d3d1;
    --stone-600:#57534e;
    --stone-700:#44403c;
    --stone-800:#292524;
    --stone-900:#1c1917;

    --accent-red:#dc2626;
    --accent-green:#22c55e;

    --radius:16px;
    --shadow:0 10px 30px rgba(0,0,0,.10);
  }

  html{ scroll-behavior:smooth; }
  body{ background:var(--stone-50); }

  /* tipografia “parecida” (serif nos títulos) */
  .font-serif{ font-family: ui-serif, Georgia, "Times New Roman", serif; }
  .font-sans{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }

  /* header blur */
  .topbar{
    background: rgba(255,255,255,.95);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
  }

  /* hero overlay */
  .hero-slide::before{
    content:"";
    position:absolute; inset:0;
    background: rgba(0,0,0,.50);
    z-index:0;
  }
  .hero-slide > *{ position:relative; z-index:1; }

  /* botões */
  .btn-whats{
    background: var(--accent-green) !important;
    color:#fff !important;
    border-radius:12px !important;
  }
  .btn-whats:hover{ filter:brightness(.95); }

  .btn-red{
    background: var(--accent-red) !important;
    color:#fff !important;
    border-radius:12px !important;
  }
  .btn-red:hover{ filter:brightness(.95); }

  .btn-ghost{
    border:1px solid rgba(255,255,255,.9) !important;
    background: rgba(255,255,255,.10) !important;
    color:#fff !important;
    border-radius:12px !important;
  }
  .btn-ghost:hover{
    background:#fff !important;
    color: var(--stone-900) !important;
  }

  /* cards serviços (hover) */
  .card-hover{
    border-radius: var(--radius);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  }
  .card-hover:hover{
    transform: translateY(-3px);
    box-shadow: var(--shadow);
    border-color: var(--stone-300) !important;
  }

  /* “pulse” suave nos ícones */
  @keyframes softPulse { 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.06); } }
  .icon-pulse{ animation: softPulse 1.6s ease-in-out infinite; }
  .card-hover:hover .icon-pulse{ animation:none; transform: scale(1.08) rotate(4deg); }

  /* seção gradiente (diferenciais) */
  .hero-gradient{
    background: linear-gradient(180deg, var(--stone-100), #ffffff);
  }

  /* blocos translucidos da localização */
  .glass{
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.18);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-radius: var(--radius);
  }

  /* footer */
  .footer{
    background: var(--stone-800);
    color:#fff;
  }
  .footer a{ color: rgba(255,255,255,.75); }
  .footer a:hover{ color: rgba(255,255,255,.95); }
