/* ibiu-apple-menu/assets/css/style.css */

.ibiu-apple-menu { 
    position: relative; 
    z-index: 999999; 
}

@media (min-width: 768px) { 
    .ibiu-apple-menu { display: none !important; } 
}

/* --- BOTÃO DE ABRIR (TOGGLE) --- */
.ibiu-apple-toggle {
    width: 48px; height: 48px; border: none; border-radius: 14px;
    background: rgba(255,255,255,0.12); backdrop-filter: blur(12px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.1); cursor: pointer; position: relative;
    transition: all .3s ease; /* Transição suave para o hover */
}
.ibiu-apple-toggle span {
    position: absolute; left: 50%; width: 20px; height: 2px;
    background: #111; border-radius: 10px; transform: translateX(-50%);
    transition: all .38s cubic-bezier(.22,1,.36,1);
}
.ibiu-apple-toggle span:nth-child(1) { top: 16px; }
.ibiu-apple-toggle span:nth-child(2) { top: 23px; }
.ibiu-apple-toggle span:nth-child(3) { top: 30px; }

/* Estado Ativo do Toggle */
.ibiu-apple-toggle.is-active span:nth-child(1) { top: 23px; transform: translateX(-50%) rotate(45deg); }
.ibiu-apple-toggle.is-active span:nth-child(2) { opacity: 0; }
.ibiu-apple-toggle.is-active span:nth-child(3) { top: 23px; transform: translateX(-50%) rotate(-45deg); }

/* --- OVERLAY E PAINEL --- */
.ibiu-apple-overlay {
    position: fixed; inset: 0; background: rgba(8, 8, 10, 0.26);
    backdrop-filter: blur(14px); opacity: 0; visibility: hidden;
    transition: all .4s ease;
}
.ibiu-apple-overlay.is-open { 
    opacity: 1; visibility: visible; 
}

.ibiu-apple-panel {
    position: absolute; inset: 0; background: white;
    transform: translateY(-100%); transition: transform .7s cubic-bezier(.22,1,.36,1);
    padding: 24px 24px 24px 24px !important; /* Seu ajuste mantido */
    display: flex; flex-direction: column;
    max-height: 100vh; /* Garante que respeite o limite da tela */
}
.ibiu-apple-overlay.is-open .ibiu-apple-panel { 
    transform: translateY(0); 
}

/* --- TOPO E BOTÃO DE FECHAR (CLOSE) --- */
.ibiu-apple-top { 
    display: flex; justify-content: flex-end; margin-bottom: 20px; 
    flex-shrink: 0; /* Impede que o botão seja esmagado pelo scroll */
}
.ibiu-apple-close { 
    width: 40px; height: 40px; border-radius: 50%; border: none; background: #eee; 
    position: relative; cursor: pointer; 
    transition: all .3s ease; /* Transição suave para o fundo no hover */
}
.ibiu-apple-close span { 
    position: absolute; top: 50%; left: 50%; width: 15px; height: 2px; background: #000; 
    transition: background .3s ease; /* Transição suave para a cor do X */
}
.ibiu-apple-close span:nth-child(1) { transform: translate(-50%, -50%) rotate(45deg); }
.ibiu-apple-close span:nth-child(2) { transform: translate(-50%, -50%) rotate(-45deg); }


/* --- NAVEGAÇÃO E LINKS --- */
.ibiu-apple-nav { 
    display: flex; flex-direction: column; gap: 15px; 
    overflow-y: auto; /* Ativa rolagem */
    flex-grow: 1; /* Preenche a tela toda abaixo do topo */
    -webkit-overflow-scrolling: touch; /* Rolagem nativa suave no iOS */
    padding-bottom: 20px; /* Respiro no fim da lista */
    
    /* Esconde barra de rolagem no Firefox/IE */
    scrollbar-width: none; 
    -ms-overflow-style: none; 
}
/* Esconde barra de rolagem no Chrome/Safari/Edge */
.ibiu-apple-nav::-webkit-scrollbar {
    display: none;
}

.ibiu-apple-link {
    text-decoration: none; font-size: 32px; font-weight: 700;
    opacity: 0; transform: translateY(20px); 
    transition: all .5s ease;
    transition-delay: 0s; /* Ao fechar o menu, ele some sem atraso */
}
.ibiu-apple-overlay.is-open .ibiu-apple-link { 
    opacity: 1; transform: translateY(0); 
    transition-delay: var(--delay); /* Ao abrir, usa o atraso da variável */
}

.ibiu-apple-client-btn {
    margin-top: 20px; padding: 12px 25px; border-radius: 8px;
    text-align: center; text-decoration: none; font-weight: 600;
    display: inline-block; transition: .3s;
}

/* --- BLOQUEIO DO SCROLL DA PÁGINA --- */
body.ibiu-apple-lock { 
    overflow: hidden; 
}


/* --- LÓGICA DOS PAINÉIS (ANIMAÇÃO APPLE PREMIUM) --- */
.ibiu-apple-panels-container { 
    position: relative; flex-grow: 1; overflow: hidden; display: flex; width: 100%;
    height: 100%; /* Força o limite de altura para ativar o scroll */
}

.ibiu-apple-main-panel { 
    width: 100%; flex-shrink: 0; 
    height: 100%; display: flex; flex-direction: column; /* Necessário para o scroll do nav interno */
    transition: transform 0.5s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.4s ease;
    transform: translateX(0); opacity: 1;
}
.ibiu-apple-main-panel.is-shifted { 
    transform: translateX(-20%); opacity: 0; pointer-events: none; 
}

/* O container do sub-painel com fundo branco e altura fixa para scroll */
.ibiu-apple-sub-panel { 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    display: flex; 
    flex-direction: column; 
    visibility: hidden; 
    pointer-events: none;
    
    /* GARANTE QUE O FUNDO SEJA 100% TRANSPARENTE */
    background: transparent !important; 
}

.ibiu-apple-sub-panel.is-active { 
    visibility: visible; pointer-events: auto; 
}

/* Os textos do submenu nascem invisíveis e 40px para a direita */
.ibiu-apple-back-btn, 
.ibiu-apple-sub-link { 
    opacity: 0; 
    transform: translateX(40px); 
    transition: opacity 0.4s ease, transform 0.5s cubic-bezier(0.32, 0.72, 0, 1); 
    transition-delay: 0s; /* Zera o atraso ao voltar */
}

/* Quando ativado, os links entram deslizando pra posição zero em cascata */
.ibiu-apple-sub-panel.is-active .ibiu-apple-back-btn,
.ibiu-apple-sub-panel.is-active .ibiu-apple-sub-link { 
    opacity: 1; 
    transform: translateX(0); 
    transition-delay: var(--delay); /* Puxa o atraso perfeito ao entrar */
}

/* Ícones de Setinhas e Botões (Suas Margens Mantidas) */
.ibiu-chevron {
    width: 10px;
    height: 10px;
    border-top: 2px solid; /* Cor removida, o Elementor assume */
    border-right: 2px solid; /* Cor removida, o Elementor assume */
    transform: rotate(45deg);
    display: inline-block;
    margin: 0px 10px 0px 0px !important;
}
.ibiu-apple-link.ibiu-has-submenu { 
    display: flex; align-items: center; justify-content: space-between; cursor: pointer; 
}

/* Botão de Voltar */
.ibiu-apple-back-btn { 
    display: flex; align-items: center; gap: 12px; border: none; 
    font-size: 32px; font-weight: 700; padding: 0 0 25px 0; cursor: pointer; color: #111; 
    background: none !important; 
    margin: 0px 0px 0px 10px !important; 
}
.ibiu-back-icon {
    width: 14px;
    height: 14px;
    border-top: 3px solid; /* Cor removida, o Elementor assume */
    border-left: 3px solid; /* Cor removida, o Elementor assume */
    transform: rotate(-45deg);
    display: inline-block;
}

/* Links do Submenu */
.ibiu-apple-sub-link { 
    text-decoration: none; font-size: 24px; font-weight: 600; color: #333; 
}

/* ibiu-apple-menu/assets/css/style.css */

/* Remove o destaque azul ao tocar no mobile em todos os elementos do menu */
.ibiu-apple-menu button,
.ibiu-apple-menu a,
.ibiu-apple-menu span {
    -webkit-tap-highlight-color: transparent;
    outline: none;
}

/* ... restante do seu código CSS anterior ... */

/* Aceleração de hardware para fluidez total */
.ibiu-apple-main-panel,
.ibiu-apple-sub-panel,
.ibiu-apple-sub-link,
.ibiu-apple-back-btn,
.ibiu-apple-link {
    will-change: transform, opacity;
}

.button:focus:not(:focus-visible){
    background: none !important;
}