/*
Theme Name: AriClean
Theme URI: https://arclean.com.br
Author: VitorTubino Logos & Branding
Author URI: #
Description: Tema profissional AriClean — Limpeza de Estofados. Design moderno com glassmorphism, paleta azul institucional e layout responsivo.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: Proprietary
Text Domain: arclean
*/

/* ============================================================
   VARIÁVEIS DA MARCA — AriClean
   ============================================================ */
:root {
    --azul-escuro:     #042A86;
    --azul-medio:      #56A3D7;
    --azul-claro:      #99D2F0;
    --azul-clarissimo: #C6E7F8;
    --branco:          #FFFFFF;
    --preto:           #000000;

    /* Alias semânticos usados no tema */
    --primary:         #001858;
    --primary-container: #042a86;
    --secondary:       #006492;
    --on-surface:      #1a1b21;
    --on-surface-variant: #444652;
    --surface:         #faf8ff;
    --surface-container-low: #f4f2fb;
    --surface-container: #eeedf5;
    --surface-container-lowest: #ffffff;
    --outline-variant: #c5c5d4;
    --secondary-container: #7ec9ff;
    --secondary-fixed-dim: #8bceff;
    --primary-fixed:   #dce1ff;
    --tertiary-fixed-dim: #95ceec;
}

/* ============================================================
   BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Manrope', sans-serif;
    background-color: var(--surface);
    color: var(--on-surface);
    -webkit-font-smoothing: antialiased;
}

/* Seleção de texto */
::selection {
    background-color: var(--secondary-container);
    color: #00547b;
}

img { max-width: 100%; height: auto; display: block; }

a { text-decoration: none; transition: color .2s; }

/* ============================================================
   TIPOGRAFIA
   ============================================================ */
.font-gotham  { font-family: 'Plus Jakarta Sans', 'Gotham Rounded', sans-serif; }
.font-candara { font-family: 'Candara', 'Plus Jakarta Sans', sans-serif; }

/* ============================================================
   UTILITÁRIOS CUSTOMIZADOS
   ============================================================ */
.hero-gradient {
    background: linear-gradient(135deg, #042a86 0%, #006492 100%);
}

.glass-card {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* ============================================================
   FAQ — DETAILS/SUMMARY NATIVO
   ============================================================ */
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }

details[open] .faq-arrow {
    transform: rotate(180deg);
}

.faq-arrow {
    transition: transform 0.3s ease;
    display: inline-block;
}

/* ============================================================
   ANIMAÇÕES
   ============================================================ */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
}

.animate-on-scroll {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.animate-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ============================================================
   LOGO CUSTOMIZADA — CONTROLE DE TAMANHO
   ============================================================ */
.custom-logo-link {
    display: inline-flex;
    align-items: center;
}
.custom-logo-link img,
.custom-logo {
    height: 48px !important;
    width: auto !important;
    max-height: 48px !important;
    object-fit: contain;
}

/* ============================================================
   NAV — MOBILE MENU
   ============================================================ */
#mobile-menu {
    display: none;
}
#mobile-menu.open {
    display: flex;
}

/* ============================================================
   HERO — BLOB DECORATIVO
   ============================================================ */
.hero-blob-1 {
    position: absolute;
    top: 0; right: 0;
    width: 600px; height: 600px;
    background: rgba(126, 201, 255, 0.2);
    border-radius: 50%;
    filter: blur(120px);
    transform: translate(33%, -50%);
    pointer-events: none;
    z-index: 0;
}
.hero-blob-2 {
    position: absolute;
    bottom: 0; left: 0;
    width: 400px; height: 400px;
    background: rgba(4, 42, 134, 0.1);
    border-radius: 50%;
    filter: blur(100px);
    transform: translate(-25%, 50%);
    pointer-events: none;
    z-index: 0;
}

/* === CLASSES DO PREVIEW.HTML === */
:root {
  --blue-vivid: #1253CC;
  --blue-dark: #0A3AA8;
  --blue-deeper: #072E88;
  --cyan-accent: #29B6F6;
  --cyan-bright: #00C8FF;
}
.btn-primary { display:inline-flex;align-items:center;gap:8px; background:var(--cyan-bright);color:#0A1F5C; font-weight:800;border-radius:100px; padding:14px 32px;font-size:1rem; transition:transform .2s,box-shadow .2s; box-shadow:0 0 0 0 rgba(0,200,255,0); text-decoration:none; justify-content:center;}
.btn-primary:hover { transform:scale(1.04);box-shadow:0 0 32px rgba(0,200,255,0.5); }
.btn-outline { display:inline-flex;align-items:center;gap:8px; border:2.5px solid var(--cyan-bright);color:#fff; font-weight:700;border-radius:100px; padding:13px 30px;font-size:1rem; transition:background .2s;text-decoration:none; justify-content:center;}
.btn-outline:hover { background:rgba(0,200,255,0.15); }
.btn-phone { display:inline-flex;align-items:center;gap:10px; border:2.5px solid var(--cyan-bright);color:var(--cyan-bright); font-weight:800;border-radius:100px; padding:10px 28px;font-size:1.2rem; transition:background .2s; text-decoration:none;}
.btn-phone:hover { background:rgba(0,200,255,0.1); }
.hero-bg { background: linear-gradient(125deg, var(--blue-deeper) 0%, var(--blue-vivid) 60%, #1A7FEB 100%); }
.geo-grid { position:absolute; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; pointer-events:none; }
.geo-square { width:52px; height:52px; border-radius:12px; background:var(--cyan-accent); opacity:0.18; }
.geo-square.solid { opacity:0.55; }
.geo-square.ghost { background:transparent; border:3px solid var(--cyan-accent); opacity:0.35; }
.star-deco { position:absolute; pointer-events:none; user-select:none; line-height:1; }
.wave { width:100%; overflow:hidden; line-height:0; }
.wave svg { display:block; }
.service-card { border-radius:24px; overflow:hidden; background:#fff; box-shadow:0 4px 32px rgba(10,58,168,0.10); transition:transform .25s,box-shadow .25s; }
.service-card:hover { transform:translateY(-6px); box-shadow:0 16px 48px rgba(10,58,168,0.18); }
.step-num { width:52px; height:52px; border-radius:50%; background:linear-gradient(135deg,var(--blue-deeper),var(--blue-vivid)); color:#fff; font-weight:900; font-size:1.3rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
details>summary { list-style:none; }
details>summary::-webkit-details-marker { display:none; }
.faq-arrow { transition:transform .3s; display:inline-block; }
details[open] .faq-arrow { transform:rotate(180deg); }
.fade-glow { background:radial-gradient(circle, rgba(41,182,246,0.2) 0%, transparent 70%); }
.anim{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease;}
.anim.on{opacity:1;transform:none;}

/* ============================================================
   TRUSTINDEX — FORÇAR LAYOUT VERTICAL (lista)
   ============================================================ */

/* Container principal do widget — layout em coluna */
#avaliacoes .ti-widget {
    max-width: 700px !important;
    margin: 0 auto !important;
}

/* Desabilitar qualquer slider/carrossel */
#avaliacoes .ti-widget .slider,
#avaliacoes .ti-widget .ti-controls,
#avaliacoes .ti-widget .slick-dots,
#avaliacoes .ti-widget .slick-arrow,
#avaliacoes .ti-widget .ti-pagination,
#avaliacoes .ti-widget .ti-left-arrow,
#avaliacoes .ti-widget .ti-right-arrow {
    display: none !important;
}

/* Lista de reviews — coluna vertical */
#avaliacoes .ti-widget .ti-reviews-container,
#avaliacoes .ti-widget .ti-reviews-container-wrapper,
#avaliacoes .ti-widget .source-Google .ti-review-content,
#avaliacoes .ti-widget .ti-reviews {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    flex-wrap: nowrap !important;
    transform: none !important;
    transition: none !important;
    width: 100% !important;
}

/* Cada card de review — largura total */
#avaliacoes .ti-widget .ti-review-item,
#avaliacoes .ti-widget .ti-review {
    width: 100% !important;
    max-width: 100% !important;
    min-width: unset !important;
    flex: none !important;
    margin: 0 !important;
    position: relative !important;
    left: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}
