@font-face {
    font-family: greatvibes;
    src: url(GreatVibes-Regular.ttf);
}
::-webkit-scrollbar{
    background: #1a3001;
}
::-webkit-scrollbar-thumb{
    background: linear-gradient(45deg,white,rgb(199, 169, 0),white);
    border-radius: 30%;
}
:root {
    --verde: #1a3001;
    --preto: #1a1a1a;
    --vermelho: #d63031;
    --papel: #fdfaf0;
    /* CONFIGURAÇÃO DE VENTO FORTE CONSTANTE */
    --inclinacao-biruta: 5deg;
    /* Praticamente horizontal */
    --velocidade-balanco: 0.6s;
    /* Balanço rápido do tecido */
    --cor-branco: #ffffff;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

body {
    background: #eee;
    overflow-x: hidden;
}

/* --- ANIMAÇÃO DE VENTO (ENTRADA) --- */
.vento-entrada {
    opacity: 0;
    transform: translateX(-150px) rotate(-5deg);
    animation: vindoDoVento 1.2s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    animation-delay: 0.1s
}

@keyframes vindoDoVento {
    to {
        opacity: 1;
        transform: translateX(0) rotate(0deg);
    }
}

/* --- HEADER E BIRUTA --- */
header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 2%;
    background: linear-gradient(45deg, #1a3001, red);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.877);
    z-index: 1001;
    position: fixed;
    width: 100%;
    top: 0;

}

.biruta-header-wrapper {
    position: absolute;
    left: 320px;
    top: 10px;
    display: flex;
    align-items: center;
    gap: 20px;
}

.biruta-container-header {
    display: flex;
    /* Aplica a inclinação fixa de vento forte */
    transform: scale(0.5) rotate(var(--inclinacao-biruta));
    transform-origin: left center;
    filter: drop-shadow(0 5px 5px rgba(0, 0, 0, 0.1));
}

.segmento {
    height: 40px;
    /* Animação de balanço rápido */
    animation: balanco var(--velocidade-balanco) infinite ease-in-out;
    transform-origin: left center;
}

/* Estilos dos 5 segmentos */
.s1 {
    background: var(--vermelho);
    width: 60px;
    height: 60px;
    clip-path: polygon(0 0, 100% 10%, 100% 90%, 0 100%);
}

.s2 {
    background: var(--cor-branco);
    width: 55px;
    height: 54px;
    margin-top: 3px;
    clip-path: polygon(0 10%, 100% 20%, 100% 80%, 0 90%);
    animation-delay: 0.05s;
}

.s3 {
    background: var(--vermelho);
    width: 50px;
    height: 48px;
    margin-top: 6px;
    clip-path: polygon(0 20%, 100% 30%, 100% 70%, 0 80%);
    animation-delay: 0.1s;
}

.s4 {
    background: var(--cor-branco);
    width: 45px;
    height: 42px;
    margin-top: 9px;
    clip-path: polygon(0 30%, 100% 40%, 100% 60%, 0 70%);
    animation-delay: 0.15s;
}

.s5 {
    background: var(--vermelho);
    width: 40px;
    height: 36px;
    margin-top: 12px;
    clip-path: polygon(0 40%, 100% 50%, 100% 50%, 0 60%);
    animation-delay: 0.2s;
}

@keyframes balanco {

    0%,
    100% {
        transform: rotate(-1deg) translateY(0);
    }

    50% {
        transform: rotate(2deg) translateY(2px);
    }
}

.menu {
    display: flex;
}

.menu ul {
    display: flex;
    padding-left: 240px;
    list-style-type: none;
}

.menu ul li {
    font-size: 16px;
    transition: 0.3s linear;
}

.menu ul li:hover {
    transform: scale(1.2);
}

.menu ul li a {
    padding: 10px;
    color: rgb(218, 218, 218);
    text-decoration: none;
    transition: 0.3s linear;
}

.menu ul li a:hover {
    color: rgb(255, 255, 255);
    text-decoration: none;
}

/* --- SEÇÃO PRINCIPAL --- */
.pizzaria-main {
    position: relative;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 10%;
    background-size: cover;
    background-position: center;
    transition: background-image 0.6s ease-in-out;
    background-image: url("https://images.unsplash.com/photo-1513104890138-7c749659a591?q=80&w=2070");
    background-attachment: fixed;
    padding-top: 80px;
     
}

.pizzaria-main::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.185);
}

/* --- LIVRO --- */
.flex-cardapio {
    z-index: 10;
  
}

.livro-container {
    perspective: 2000px;
    display: flex;
    flex-direction: column;
    align-items: center;
     
}

.livro {
  
    position: relative;
    width: 350px;
    height: 500px;
    transition: transform 0.5s;
    transform-style: preserve-3d;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    box-shadow: 0 0 30px var(--preto);
    background: linear-gradient(45deg, #1a3001, black) !important;
    transform: translate(-20%, 0%);
    box-shadow: 0 0 24px black;
}

.livro.aberto {
    transform: translate(90%, 0%);
}

.folha {
     
    box-shadow: 0 0 24px black;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;

    transform-origin: left;
    transform-style: preserve-3d;
    transition: transform 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.pagina {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 30px;
    backface-visibility: hidden;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    background: #fffdf8;
    box-shadow: inset 3px 0px 20px rgba(0, 0, 0, 0.1);
    cursor: pointer;
}

.pagina.verso {
    transform: rotateY(180deg);
    background: #fdfaf0;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 10px;
}

.capa {
     cursor: url(pizzacur.cur),pointer;
    box-shadow: 0 0 24px black;
    background: linear-gradient(45deg, #1a3001, black) !important;
    color: white;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 0 10px 10px 0;
}

.categoria-titulo {
    color: var(--verde);
    border-bottom: 2px solid var(--verde);
    margin-bottom: 20px;
    text-transform: uppercase;
    font-size: 1rem;
}

.item-card {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 5px;
    padding: 10px;
    transition: 0.3s;
}

.item-card:hover {
    border-radius: 30px;
    background: rgba(85, 128, 21, 0.1);
    transform: scale(1.02);
    cursor: url(pizzacur.cur),pointer;
}

.item-txt strong {
    color: rgb(170, 1, 1);
    font-size: 0.9rem;
    display: block;
}

.item-txt p {
    font-size: 0.75rem;
    color: #666666;
}

.item-vlr {
    font-weight: bold;
    color: var(--verde);
    font-size: 0.9rem;
}

.controles-livro {
    margin-top: 20px;
    display: flex;
    gap: 10px;
}

.controles-livro button {
    background: var(--verde);
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 20px;
    cursor: pointer;
    transition: 0.3s;
}
@media (max-width: 1280px) {
.biruta-header-wrapper {
    position: absolute;
    left: 180px;
    top: 50px;
    display: flex;
    align-items: center;
    gap: 20px;
}
}
@media (max-width: 768px) {
    header {
        padding: 10px 4%;
    }

    .pizzaria-main {
        padding-left: 0;
        justify-content: center;
    }

    .livro {
        width: 280px;
        height: 400px;
    }

    .livro.aberto {
        transform: translate(0, 0);
    }
}

/* --- SEÇÃO SOBRE NÓS --- */
.sobre-secao {
    padding: 80px 10%;
    background: #fff;
    display: flex;
    align-items: center;
    gap: 50px;
    color: var(--preto);
}

.sobre-txt {
    flex: 1;
}

.sobre-txt h2 {
    color: var(--verde);
    font-size: 2.5rem;
    margin-bottom: 20px;
}

.sobre-txt p {
    line-height: 1.6;
    font-size: 1.1rem;
    color: #555;
    margin-bottom: 15px;
}

.sobre-img {
    flex: 1;
    position: relative;
}

.sobre-img img {
    width: 100%;
    border-radius: 15px;
    shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* --- FOOTER --- */
footer {
    background: var(--preto);


    color: white;
    padding: 60px 10% 20px 10%;
}

footer ::before {
    background: rgba(0, 0, 0, 0.925);
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    margin-bottom: 40px;
}

.footer-box h3 {
    color: green;
    margin-bottom: 20px;
}

.footer-box p,
.footer-box li {
    color: #bbb;
    list-style: none;
    margin-bottom: 10px;
    font-size: 0.9rem;
}

.social-links {
    display: flex;
    gap: 15px;
    font-size: 1.5rem;
}

.social-links i {
    cursor: pointer;
    transition: 0.3s;
}

.social-links i:hover {
    color: var(--vermelho);
}

.copy {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid #333;
    color: #666;
    font-size: 0.8rem;
}

@media (max-width: 768px) {
    .pizzaria-main {
        justify-content: center;
        padding-left: 0;
    }

    .livro {
        width: 280px;
        height: 400px;
        transform: none;
    }

    .livro.aberto {
        transform: none;
    }

    .sobre-secao {
        flex-direction: column;
        text-align: center;
    }

    /* 1. AJUSTES DO HEADER PARA NÃO SOBREPOR */
    header {
        flex-direction: column;
        height: auto;
        padding: 15px 5%;
        position: relative;
        /* Evita que o header fixo cubra o topo do cardápio no mobile */
    }

    .biruta-header-wrapper {
        display: none;
        position: static;
        margin: 10px 0;
        transform: scale(0.6);
        /* Biruta menor no celular */
    }

    .menu ul {
        padding: 0;
        flex-wrap: wrap;
        justify-content: center;
        gap: 5px;
    }

    .menu ul li a {
        font-size: 14px;
        padding: 5px 8px;
    }

    /* 2. CENTRALIZAÇÃO E ESCALA DO CARDÁPIO (O SEU PEDIDO) */
    .pizzaria-main {
        padding-left: 0;
        justify-content: center;
        align-items: flex-start;
        /* Alinha ao topo para não sumir no scroll */
        padding-top: 30px;
        height: auto;
        min-height: 100vh;
        
    }

    .livro-container {
        /* Diminuímos o tamanho total do conjunto */
        transform: scale(0.8);
        margin: 0 auto;
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .livro {
        width: 200px;
        /* Largura reduzida */
        height: 320px;
        /* Altura reduzida */
        left: 50%;
        transform: translateX(-50%);
        /* FORÇA A CENTRALIZAÇÃO SEMPRE */
        margin-left: 0;
    }

    /* IMPORTANTE: Remove o deslocamento lateral ao abrir no mobile */
    .livro.aberto {
        transform: translate(-50%, -20%) !important;
    }

    /* 3. DIMINUINDO FONTES E CONTEÚDO INTERNO */
    .pagina {
        padding: 15px;
        /* Menos respiro interno para ganhar espaço */
    }

    .categoria-titulo {
        font-size: 0.9rem;
        margin-bottom: 15px;
    }

    .item-card {
        padding: 5px;
        margin-bottom: 8px;
    }

    .item-txt strong {
        font-size: 0.8rem;
        /* Fonte menor para o nome da pizza */
    }

    .item-txt p {
        font-size: 0.65rem;
        /* Fonte menor para a descrição */
        line-height: 1.1;
    }

    .item-vlr {
        font-size: 0.8rem;
        /* Fonte menor para o preço */
    }

    .capa-conteudo h3 {
        font-size: 1.2rem;
    }

    .capa-conteudo i {
        font-size: 2.5rem !important;
    }

    /* 4. AJUSTE DO BOTÃO PEDIR AGORA */
    .pediragora {
        width: 180px;
        height: 40px;
        font-size: 16px;
      
    }

    .pediragora img {
        width: 30px;
    }

}

.iconewwp {
    color: black;
    z-index: 99;
    position: fixed;
    right: 20px;
    bottom: 100px;
    width: 50px;
    transition: .5s;
    cursor: pointer;
    opacity: 0;

    display: flex;
    align-items: center;
    justify-content: center;
}

.iconewwp img {
    display: flex;
    justify-content: center;
    align-items: center;
    float: left;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: contain;
}

.iconewwp:before {
    right: 60px;
    padding: 0;

    border-radius: 30px;
    position: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: sans-serif;
    content: "ir no whatapp";
    outline: none;
    text-align: center;
    text-decoration: none;
    background-color: green;
    color: white;
    font-size: 16px;
    width: 0;
    height: 10px;
    overflow: hidden;
    transition: .2s ease;
}

.iconewwp:hover::before {
    padding: 10px;
    width: 150px;
}

html {
    scroll-behavior: smooth;
}

.escolhas {
    color: rgb(223, 223, 223);
}

.pediragora {
    font-size: 25px;
    width: 230px;
    height: 50px;
    border-radius: 40px;
    backdrop-filter: blur(10px);
    border: 1px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: justify;
    transition: .2s linear;
    cursor: pointer;
    flex-direction: row;
    overflow: hidden;
     
}

.pediragora p {
    transition: .4s linear;
}

.pediragora:before {
    background: black;
}

.pediragora:hover {
    color: white;
    background: rgba(72, 255, 0, 0.274);
    border: 1px solid rgba(72, 255, 0, 0.274);
    box-shadow: 0 0 24px rgba(72, 255, 0, 0.274);
    ;
    transform: scale(1.1);
}

.pediragora:hover img {
    transform: translateX(140px);
}

.pediragora:hover p {
    transform: translateX(-70px);
}

.pediragora img {
    transition: .3s linear;
    margin-right: 30px;
    width: 50px;
    filter: invert();
}

/* --- SEÇÃO AVALIAÇÕES --- */
.avaliacoes-secao {
    padding: 100px 10%;
    background: #f9f9f9;
    text-align: center;
}

.titulo-secao {
    margin-bottom: 50px;
}

.titulo-secao h2 {
    font-size: 2.5rem;
    color: var(--preto);
    margin-bottom: 10px;
}

.titulo-secao p {
    color: #777;
    font-style: italic;
}

.avaliacoes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.card-avaliacao {
    background: white;
    padding: 40px 30px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    position: relative;
    transition: all 0.4s ease;
    border-bottom: 4px solid transparent;
}

/* Efeito de flutuação suave */
.card-avaliacao:hover {
    transform: translateY(-15px);
    border-bottom-color: var(--verde);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.aspas {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 2.5rem;
    color: rgba(85, 128, 21, 0.1);
}

.card-avaliacao p {
    font-style: italic;
    color: #444;
    margin-bottom: 25px;
    line-height: 1.6;
}

.cliente-info {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: center;
    margin-bottom: 15px;
}

.cliente-info img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--verde);
}

.cliente-info strong {
    display: block;
    font-size: 1rem;
    color: var(--preto);
}

.cliente-info span {
    font-size: 0.8rem;
    color: #888;
}

.estrelas {
    color: #f1c40f;
    font-size: 0.9rem;
}

@media (max-width: 768px) {
    .avaliacoes-secao {
        padding: 60px 5%;
    }
}

/* ============================================================
   REGRAS DE RESPONSIVIDADE (CELULARES E TABLETS)
   ============================================================ */

@media (max-width: 992px) {

    /* Ajuste para o Header não amontoar em tablets */
    .biruta-header-wrapper {
        left: 250px;
    }

    .menu ul {
        padding-left: 50px;
    }
}

@media (max-width: 768px) {

    /* 1. AJUSTES DO HEADER (Menu vira coluna ou some para mobile) */
    header {
        flex-direction: column;
        padding: 10px;
        height: auto;
        position: relative;
        /* Muda para relativo para não cobrir o conteúdo inicial */
    }

    .biruta-header-wrapper {
        display: none;
        position: static;
        /* Remove o posicionamento fixo */
        margin: 10px 0;
    }

    .menu ul {
        padding-left: 0;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .menu ul li {
        font-size: 14px;
    }

    .pediragora {
        width: 200px;
        height: 45px;
        font-size: 18px;
        margin-top: 10px;
        
    }

    .pizzaria-main {
        padding-left: 0 !important;
        /* Remove o recuo da esquerda do desktop */
        justify-content: center !important;
        align-items: center;
        height: auto;
        min-height: 100vh;
        display: flex;
        overflow: hidden;
        /* Evita que a página "dance" para os lados */
    }

    /* 2. CENTRALIZAÇÃO REAL DO LIVRO */
    .livro-container {
        perspective: 1000px;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        transform: scale(0.85);
        /* Reduz o tamanho geral */
        margin: 0 auto !important;
        position: relative;
    }

    .livro {
        position: relative;
        /* Resetamos as posições absolutas do desktop */
        left: auto !important;
        top: auto !important;
        margin: 0 !important;

        /* Tamanho reduzido para telas menores */
        width: 280px;
        height: 400px;

        /* O SEGREDO: Forçamos o transform a ser apenas centralizado */
        transform: rotateY(0deg) !important;
        transform-origin: center;
    }

    /* 3. COMPORTAMENTO QUANDO ABERTO (MOBILE) */
    .livro.aberto {
        /* No mobile, o livro NÃO corre para a direita, ele abre no lugar */
        transform: translate(50%, 0%) !important;
        margin-left: 0 !important;
    }

    /* 4. AJUSTE DAS PÁGINAS E FONTES */
    .pagina {
        padding: 15px;
        /* Menos espaço interno */
        width: 100%;
        height: 100%;
    }

    /* Diminuindo tudo lá dentro */
    .categoria-titulo {
        font-size: 0.85rem;
        margin-bottom: 10px;
    }

    .item-card {
        padding: 6px;
        margin-bottom: 5px;
    }

    .item-txt strong {
        font-size: 0.75rem;
        /* Nome da pizza menor */
    }

    .item-txt p {
        font-size: 0.6rem;
        /* Descrição bem pequena */
        display: -webkit-box;
        -webkit-line-clamp: 2;
        /* Limita a 2 linhas para não estourar */
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .item-vlr {
        font-size: 0.75rem;
    }

    /* 5. HEADER MOBILE (Empilhado) */
    header {
        flex-direction: column;
        position: relative;
        padding: 15px 0;
        text-align: center;
    }

    .biruta-header-wrapper {
        position: relative;
        left: 0;
        top: 0;
        margin: 10px auto;
        justify-content: center;
        transform: scale(0.5);
    }

    .menu ul {
        padding: 0;
        justify-content: center;
        gap: 5px;
    }

    .menu ul li a {
        font-size: 13px;
        padding: 10px;
        border-radius: 20px;
    }
.menu ul li a:hover {
    backdrop-filter: blur(30px);
}

    /* 3. SEÇÃO SOBRE NÓS */
    .sobre-secao {
        flex-direction: column-reverse;
        /* Imagem fica em cima no celular */
        padding: 40px 5%;
        gap: 30px;
        text-align: center;
    }

    .sobre-txt h2 {
        font-size: 2rem;
    }

    /* 4. AVALIAÇÕES E FOOTER */
    .avaliacoes-grid {
        grid-template-columns: 1fr;
        /* Força uma coluna */
        padding: 0 10px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .social-links {
        justify-content: center;
    }

    /* 5. WHATSAPP ICON */
    .iconewwp {
        bottom: 20px;
        right: 10px;
        opacity: 1;
        /* Garante visibilidade no mobile */
    }

    .iconewwp img {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 480px) {

    /* Ajustes para telas bem pequenas (iPhone SE, etc) */
    .livro-container {
        transform: scale(0.75);
        /* Encolhe mais um pouco */
    }

    .pagina {
        padding: 15px;
    }

    .item-txt strong {
        font-size: 0.85rem;
    }

    .item-vlr {
        font-size: 0.8rem;
    }
}

@media (max-width: 380px) {
    .livro-container {
        transform: scale(0.7);
    }

    .livro {
        height: 400px;
    }
}
