.header { display: flex; align-items: center; justify-content: space-between; }
.header .link-home { display: block; background: #fff; color: #37519F; font: 28.45px parkinsans-bold; padding: 10px; transition: .4s ease; }
.header .link-home:hover { background: #37519f; color: #fff; }

.banner-bg { height: 791px; position: relative; }
.banner-bg > img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.banner-bg .banner { position: relative; z-index: 2; }
.banner .content { opacity: 0; transform: translateY(40px) scale(0.95); filter: blur(6px); animation: pascoa-in 1s ease-out forwards; animation-delay: 0.4s; }
.banner .content .text { font: 97.82px / 1 parkinsans-bold; text-shadow: 2px 2px 10px rgba(221,123,0,0.8); color: #fff; position: relative; }
.banner .content .bg-blue { background: #4D5EAA; position: absolute; border-radius: 50%; width: 60px; aspect-ratio: 1/1; height: 60px; display: flex; font: 37.15px parkinsans-semibold; text-shadow: none; align-items: center; justify-content: center; left: 27%; top: 55%; transform: translate(-50%, -50%) rotate(-15deg); }

.descontos { font: 39.22px parkinsans-bold; letter-spacing: -1.95px; color: #fff; background: #37519F; height: 100px; width: max-content; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border-radius: 10px 10px 0 0; padding: 0 50px; position: absolute; bottom: -158px; left: 40px;}
.counter { width: 50%; display: flex; align-items: center; justify-content: center; flex-direction: column; margin-top: 65px; }
.counter .text { color: #fff; font: 33.96px parkinsans-bold; width: max-content; background: #37519F; border-radius: 10px; padding: 0 20px; }
.counter .countdown { display: grid; gap: 25px; grid-template-columns: repeat(4, minmax(115px, 1fr)); margin-top: 25px; }
.counter .countdown__cell { display: flex; flex-direction: column; align-items: center; justify-content: center; }
.counter .countdown__value { font: 84.81px parkinsans-bold; color: #fff; text-shadow:4px 4px 2px #535FAA; line-height: 1; }
.counter .countdown__label { font: 21.93px parkinsans-regular; color: #26172E; }
.descanso { height: 100%; display: block; }
.container.descanso-bg {  background: url(../img/pacotes/consumidor/fundo.jpg) no-repeat center center / cover; height: 745px; }
.descanso-bg .descanso .text { display: flex; flex-direction: column; width: max-content; margin: 0 auto; align-items: center; justify-content: center; height: 100%; color: #1B1B1B; line-height: 1; margin-left: 420px; position: relative; }
.descanso-bg .descanso .text::after { content: ''; background: url('../img/pacotes/consumidor/selo.png') no-repeat center center / contain; width: 175px; height: 175px; position: absolute; transform: translate(-50%, -50%); left: -15%; top: 62%; }
.descanso .text > span { font: 67.03px / .675 parkinsans-bold; color: #FF5060;width: 100%; }
.descanso .text .vila { font: 133.6px authenticsignature; color: #FF5060; text-align: right; width: 100%; display: block; line-height: .7 }
.descanso .text .texto { font: 115.65px / .675 parkinsans-bold; width: 100%; }
.descanso .text .texto-top span { font-size: 67.03px; }
.descanso .text .texto-bottom { line-height: .8 }
.descanso .text .right { padding-left: 135px; }
.descanso .text .right .texto { line-height: 1; }

@keyframes text {
    0% {
        stroke: #FF5060;
        stroke-dasharray: 0;
        fill: transparent;
    }
    90% {
        stroke-dasharray: 600;
        fill: transparent;
    }
    100% {
        fill: #FF5060;
        stroke: #FF5060;
    }
}

.descanso .text svg { overflow: visible; fill: #FF5060; }
.descanso .text #animated-text.visible { animation: text 3s ease forwards; }

.faixa-scroll-infinito {position: sticky;top: 0;z-index: 999;  left: 0;width: 100%;height: 85px;background: #4A5EAA;z-index: 1000;overflow: hidden;}
.faixa-conteudo {gap: 5px; white-space: nowrap; will-change: transform; height: 100%; display: flex; align-items: center; width: max-content; flex-wrap: nowrap;}
.texto-faixa {font:  600 49.49px parkinsans-semibold;color: #fff; margin: 0 25px; position: relative; height: 100%; text-align: center; display: inline-flex; align-items: center; position: relative; flex: 0 0 auto; }

.faixa-conteudo:not(.faixa-hotel) .texto-faixa::after { content: ''; position: absolute; right: -45px; transform: translate(-50%,-50%); top: 55%; background: #fff; border-radius: 50%; width: 15px; height: 15px; }


.faixa-parent .faixa-scroll-infinito { background: none; }
.faixa-parent {display: flex;flex-direction: column;justify-content: center;align-items: center;position: absolute;z-index: auto; bottom: 140px; z-index: 1;}
.faixa-parent .faixa-scroll-infinito { height: auto; position: relative; top: auto; }
.faixa-parent .faixa-hotel { background: none; box-shadow: none; }
.faixa-parent .faixa-hotel .texto-faixa { color: transparent; -webkit-text-stroke: 2px #CBD0E5; line-height: 1; font: 700 106.74px / 1 montserrat; }


.descanso .img-piriquito { position: absolute; top: 0; right: 0; transform: translate(-50%, -50%); top: 25%; right: -35%; }
.descanso-bg { overflow: hidden; }
.container.desconto-bg {padding: 112px 0 150px; background: url(../img/pacotes/consumidor/desconto.webp) no-repeat center center / cover; position: relative; overflow: hidden;}
/* .container.desconto-bg::before {content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, 0.2) 1px, transparent 1px); background-size: 3px 3px; opacity: 0.18; pointer-events: none;} */
/* .container.desconto-bg::after {content: ''; position: absolute; left: 0; right: 0; bottom: -60px; height: 140px; background: linear-gradient(180deg, transparent, rgba(122, 75, 0, 0.22)); pointer-events: none;} */
.desconto {position: relative; z-index: 2;}
.descontos-titulo {text-align: center; color: #000; margin: 0 auto 42px; line-height: 1;}
.descontos-titulo .linha-1 {font: 700 58px/1 parkinsans-bold; margin: 0;}
.descontos-titulo .linha-2 {font: 700 97px/.9 parkinsans-bold; margin: 0; color: #fff; text-shadow: 0 3px 0 rgba(0, 0, 0, 0.15); letter-spacing: -1.6px;}
.descontos-titulo .linha-3 {font: 400 100px/.85 authenticsignature; margin: -5px 0 0;}
.descontos-lista {display: flex; flex-direction: column; gap: 50px;}
.desconto-card {--cor-numero: #eb7ea7; --cor-data: #ef5977; background: #e9e9e9; max-width: 1070px; border-radius: 14px; padding: 65px 125px 65px 65px; position: relative; box-shadow: 0 12px 22px rgb(255 128 1 / 92%);}
.desconto-card:nth-child(2) { margin-left: auto; padding: 65px 65px 65px 125px; margin-right: 0;}
.desconto-card-content {display: flex; align-items: center; gap: 55px;}
.desconto-info {min-width: 205px; text-align: left; color: #20172a; text-align: center; }
.desconto-info .valor {margin: 0; font: 700 131.46px /.8 parkinsans-bold; color: var(--cor-numero); letter-spacing: -2.8px;}
.desconto-info .texto {margin: 0; font: 700 45.17px /.9 parkinsans-bold; letter-spacing: -1.8px; white-space: nowrap; color: #2A0505; }
.datas-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; margin: 0; padding: 0; list-style: none; flex: 1 1 auto;}
.data-item {display: flex; white-space: nowrap; padding: 0 10px; align-items: center; justify-content: center; min-height: 50px; border-radius: 7px; background: var(--cor-data); color: #fff; text-align: center; font: 700 31px/1 parkinsans-bold; letter-spacing: -0.4px; transition: transform .25s ease, filter .25s ease, background .4s ease, color .4s ease;}
.data-item:hover {transform: translateY(-2px); filter: brightness(1.06); background: #20172a; color: #fff;}
.reserva-badge {position: absolute;animation: box-shadow-and-scale-in-out 2s infinite; right: -52px; top: 50%; transform: translateY(-50%) rotate(-11deg); width: 118px; aspect-ratio: 1/1; border-radius: 50%; background: #1ac63d; border: 6px solid #fff; box-shadow: 0 4px 0 rgba(0, 0, 0, 0.18); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #fff; z-index: 2; transition: transform .25s ease, filter .25s ease;}
.reserva-badge img {width: 24px; height: auto; margin-bottom: 4px; filter: brightness(0) invert(1);}
.reserva-badge span {font: 700 23px/.9 parkinsans-bold; text-transform: uppercase;}
.desconto-card.invertido .desconto-card-content {flex-direction: row-reverse; }
.desconto-card.invertido .desconto-info {text-align: right;}
.desconto-card.invertido .reserva-badge {left: -52px; right: auto; transform: translateY(-50%) rotate(11deg); }

@keyframes box-shadow-and-scale-in-out {
    0%   { box-shadow: 0 4px 12px rgba(0,0,0,0.18), 0 0 0 0px rgba(26,198,61,0.35); scale: 1; }
    50%  { box-shadow: 0 8px 24px rgba(0,0,0,0.22), 0 0 0 7px rgba(26,198,61,0.12); scale: 1.05; }
    100% { box-shadow: 0 4px 12px rgba(0,0,0,0.18), 0 0 0 0px rgba(26,198,61,0.35); scale: 1; }
}
.descontos-lista .desconto-card .reserva-badge:hover {transform: translateY(-50%) rotate(-11deg) scale(1.12); filter: brightness(1.15); animation-play-state: paused;}

.desconto-10 {--cor-numero: #eb7ea7; --cor-data: #ef5977;}
.desconto-15 {--cor-numero: #5aa8da; --cor-data: #4b62ab;}
.desconto-20 {--cor-numero: #70c8b1; --cor-data: #0ca391;}

.container.informacoes {padding: 98px 0 45px; background-color: #fff; overflow: hidden; }
.container.informacoes::after { content: ''; position: absolute; background: url(../img/pacotes/consumidor/boia.png) no-repeat center center / contain; aspect-ratio: 339/476; width: clamp(190px, 16vw, 300px); height: auto; right: 0; top: 120px; z-index: 1; }
.container.informacoes .conteudo-1130.parent.info {padding-bottom: 0px;}
.container.informacoes .default-button {background: #3EB137; gap: 20px; margin: 47px 0 0; padding: 13px 52px 14px 45px; font-size: 28.62px;}
.container.informacoes .default-button .icone {width: 36px;}
.container.informacoes .conteudo-1130.parent.info.bg {background: url('../img/pagina-inicial/pascoa-no-hotel--vila-germanica.webp') no-repeat bottom center / contain; padding: 177px 0 97px; background-size: 619px; background-position-x: 56.75%;}
.container.informacoes .fundo {top: unset; bottom: 0; height: auto;}
.container.informacoes .parent { position: relative; z-index: 2; }
.container.informacoes .parent .titulo-parent {display: flex; align-items: center; justify-content: space-between; gap: 20px;}
.container.informacoes .parent .titulo-parent .titulo {flex: 1 1 auto; color: #000000; font: 700 86.5px/.85 parkinsans-bold; margin: 0 0 55px;}
.container.informacoes .parent .titulo-parent .titulo strong {font-size: 111.5px; padding-left: 75px;}
.container.informacoes .parent .titulo-parent .titulo > p {letter-spacing: -2.6px;}
.container.informacoes .parent .titulo-parent .titulo h2 {color: #FF5060; text-align: right; font: 128.8px authenticsignature; margin-top: -17px; display: block; margin-left: 43px;}
.container.informacoes .parent .iframe {position: relative; width: 100%;}
.container.informacoes .parent .iframe::before {content: ''; background: url('../img/pacotes/consumidor/selo.png') no-repeat center center / contain; width: 175px; height: 175px; position: absolute; transform: translate(-50%, -50%);}
.container.informacoes .parent .iframe iframe {max-width: 100%; aspect-ratio: 1050/586; height: auto; border: 0;}
.container.informacoes .parent {display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative;}
.container.informacoes .parent .titulo-parent .icone {display: grid; place-items: center; background: var(--cor3); flex: 0 0 auto; width: 102.43px; aspect-ratio: 1/1;}
.container.informacoes .parent .titulo-parent .icone > * {width: 36px; height: auto; aspect-ratio: 1/1;}
.container.informacoes .parent .lista {display: grid; grid-template-areas: 'a b c' 'a b c'; gap: 119px 138px;}
.container.informacoes .parent .lista .item-parent.whatsapp {grid-area: b; margin: -96px 0 0 0;}
.container.informacoes .parent .lista .item-parent .item-informacao {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 36px; font: 400 19.34px/34.81px var(--font1); color: var(--cor1); text-align: center;}
.container.informacoes .parent .lista .item-parent .item-informacao .icone {flex: 0 0 auto; width: 94px; aspect-ratio: 1/1; display: grid; place-items: center; background: var(--cor3);}
.container.informacoes .parent .lista .item-parent .item-informacao .icone > * {width: 54px; aspect-ratio: 1/1; height: auto;}

.playground-bg {padding: 90px 0 120px; position: relative; box-shadow: -1px 14px 20px -15px rgba(0, 0, 0, .18); overflow: hidden;}
.playground {display: flex; gap: 40px; justify-content: space-between; position: relative; white-space: nowrap; flex-direction: column;}
.playground-card {display: flex; flex-direction: column; gap: 35px; border-radius: 32px; flex: 1; align-items: center;}
.playground-card .imagem {width: 460px; height: 450px; flex-shrink: 0; border-radius: 28px; overflow: hidden; border: 10px solid #ECB96B;}
.playground-card .imagem img {width: 100%; height: 100%; object-fit: cover;}
.playground-copy {flex: 1; display: flex; flex-direction: column; gap: 12px; font-family: authenticsignature; color: #111;}
.playground-copy p {margin: 0; font-size: 84.41px; line-height: 63px;}
.playground-copy h2 {margin: 0; font-size: 54px; font-family: authenticsignature; color: #A71F00; line-height: 1;}
.playground-servicos {flex: 1 1 100%; display: flex; flex-direction: column; gap: 24px; border-radius: 32px; color: #fff;}
.playground-servicos .titulo {text-align: center;}
.playground-servicos .titulo b {font: 100px/.1 authenticsignature; color: #4A5EAA; padding-left: 200px;}
.playground-servicos .titulo h2 {color: #000; letter-spacing: -1.22px; font: 61px parkinsans-bold; line-height: .1;}
.servicos-lista {display: grid; gap: 50px; margin-top: 20px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); position: relative; z-index: 999;}
.servicos-lista .servico {display: flex; flex-direction: column; align-items: center; text-align: center; color: #000; font: 500 17.75px montserrat; gap: 10px; height: 100%; border-radius: 18px; background: rgba(255, 255, 255, .05); opacity: 0; transform: translateY(40px) scale(.95); transition: all .6s ease;}
.servicos-lista .servico b {font-size: 22.03px; font-weight: 700;}
.servicos-lista .servico.visible {opacity: 1; transform: translateY(0) scale(1);}
.servicos-lista .img {width: 65px; height: 65px; background: url(../img/pacotes/consumidor/stamp.svg) no-repeat center center / contain; display: flex; align-items: center; justify-content: center;}
.servicos-lista .img img {width: 60%; height: auto;}

.container.desconto-bg::after { content: ''; position: absolute; background: url(../img/pacotes/consumidor/piriquito.png) no-repeat center center; height: auto; width: 484px; aspect-ratio: 484/711; left: 0; bottom: -300px; }

@media (max-width: 1200px) {
    .descontos-titulo .linha-1 {font-size: 46px;}
    .descontos-titulo .linha-2 {font-size: 78px;}
    .descontos-titulo .linha-3 {font-size: 82px;}
    .desconto-info {min-width: 180px;}
    .desconto-info .valor {font-size: 84px;}
    .desconto-info .texto {font-size: 42px;}
    .data-item {font-size: 25px;}
    .container.informacoes .parent .titulo-parent .titulo {font-size: 70px;}
    .container.informacoes .parent .titulo-parent .titulo strong {font-size: 92px;}
    .container.informacoes .parent .titulo-parent .titulo h2 {font-size: 104px;}


    .header .logo > img { width: 150px; height: 100%; }
    .header .placa > img { height: 120px; }
    .header .link-home { font-size: 22px; }
    .banner-bg { height: 670px; }
    .banner .content .text { font-size: 80px; }
    .banner .content .bg-blue { font-size: 28px; height: 50px; width: 50px; }
    .counter .countdown__value { font-size: 70px; }
    .counter .countdown__label { font-size: 18px; }
    .descontos { bottom: -153px; left: 20px; padding: 0 30px; font-size: 30px; }

    .descanso .text > span { font-size: 50px; }
    .descanso .text .texto { font-size: 80px; }
    .descanso .text .texto-top span { font-size: 49px; }
    .descanso .text .vila { font-size: 120px; }
    .container.descanso-bg { height: 500px; }
    .descanso .img-piriquito { width: 180px; }
    .descanso-bg .descanso .text { margin-left: auto; margin-right: 5%; }
}

@media (max-width: 990px) {
    /* .container.descanso-bg {padding: 50px 0 70px;} */
    .container.informacoes::after  { display: none; }
    .descanso .img-piriquito{ display: none; }
    .descanso-bg .descanso .text { top: -50px; right: 30px; }
    .descanso .text .vila { font-size: 100px; margin-top: -30px; }
    .descanso .text .texto { font-size: 70px; }
    .descanso-bg .descanso .text::after { left: -25%; top: 92%; }
    .descanso .text .right { padding: 0 }
    .descontos-lista {max-width: 100%;}
    .desconto-card,
    .desconto-card:nth-child(2) {max-width: 100%; margin-left: 0; padding: 22px 20px;}
    .desconto-card {padding: 22px 20px;}
    .desconto-card-content,
    .desconto-card.invertido .desconto-card-content {flex-direction: column; align-items: flex-start;}
    .desconto-card-content { gap: 30px; }
    .desconto-card.invertido .desconto-info,
    .desconto-info {min-width: 100%; text-align: center; }
    .desconto-info .valor {font-size: 72px;}
    .desconto-info .texto {font-size: 36px;}
    .reserva-badge { margin: 0 auto; }
    .datas-grid {width: 100%; grid-template-columns: 1fr;}
    .reserva-badge,
    .desconto-card.invertido .reserva-badge {position: static; transform: none; margin-top: 16px;}
    .reserva-badge:hover,
    .desconto-card.invertido .reserva-badge:hover {transform: scale(1.03);}
    .container.informacoes {padding: 76px 0 35px;}
    .container.informacoes .parent .titulo-parent .titulo {font-size: 56px; margin-bottom: 32px;}
    .container.informacoes .parent .titulo-parent .dp-mb { display: none; }
    .container.informacoes .parent .titulo-parent .titulo strong {font-size: 72px; padding-left: 0;}
    .container.informacoes .parent .titulo-parent .titulo h2 {font-size: 78px; margin-left: 0; text-align: left;}
    .container.informacoes .parent .iframe::before {width: 130px; height: 130px;}
    .playground-servicos .titulo h2 {font-size: 49px;}
    .playground-servicos .titulo b {font-size: 78px; padding-left: 120px;}
    .servicos-lista {gap: 30px;}


    .counter .countdown { gap: 0px; }
    .banner { display: flex; flex-direction: column; justify-content: center; height: 100%; }
    .banner .header-bg { position: absolute; top: 0; width: 100%; }

    .descontos-bg { display: none; }
    .banner-bg { height: 580px; }
    .banner .content { margin-top: 100px; }

    .banner .content .text { font-size: clamp(42px, 7.3vw, 75px); }
    .banner .content .bg-blue { height: 30px; width: 30px; font-size: 20px; }
    .counter .countdown { grid-template-columns: repeat(4, 1fr); gap: 20px; }
    .counter .text { font-size: 27px; }
    .counter .countdown__value { font-size: clamp(45px, 6vw, 60px); }
    .counter .countdown__label { font-size: 16px; }
    .texto-faixa { font-size: 35px; margin: 0 12.5px }
    .faixa-conteudo:not(.faixa-hotel) .texto-faixa::after { width: 10px; height: 10px; right: -25px; }
    .faixa-scroll-infinito { height: 65px; }
    .container.informacoes .parent .titulo-parent .titulo,
    .container.informacoes .parent .titulo-parent .titulo strong,
    .container.informacoes .parent .titulo-parent .titulo h2 { text-align: center; }

    .container.informacoes .parent .titulo-parent .titulo,
    .container.informacoes .parent .titulo-parent .titulo strong { font-size: 50px; }
    .container.informacoes { padding: 45px 0; }

    .container.desconto-bg { padding: 45px 0; }
    .playground-servicos .titulo { line-height: 2 !important; }
}

@media (max-width: 680px) {
    .descontos-titulo .linha-1 {font-size: 35px;}
    .descontos-titulo .linha-2 {font-size: 56px;}
    .descontos-titulo .linha-3 {font-size: 63px; margin-top: 4px;}
    .desconto-info .valor {font-size: 58px;}
    .desconto-info .texto {font-size: 30px;}
    .datas-grid {grid-template-columns: 1fr;}
    .data-item {font-size: 22px; min-height: 44px;}
    .reserva-badge {width: 104px;}
    .reserva-badge span {font-size: 20px;}
    .container.informacoes .parent .titulo-parent .titulo strong,
    .container.informacoes .parent .titulo-parent .titulo {font-size: 40px;}
    .container.informacoes .parent .titulo-parent .titulo h2 {font-size: 60px;}
    .container.informacoes .faixa-bg { display: none; }
    .playground-bg {padding: 0 0 30px;}
    .playground-servicos .titulo h2 {font-size: 38px;}
    .playground-servicos .titulo b {font-size: 62px; padding-left: 70px;}
    .servicos-lista {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px;}
    .counter .countdown { grid-template-columns: repeat(2, 1fr); }
    .header .placa > img { height: 90px; }
    .header .logo > img { width: 120px; }
    .header .link-home { font-size: 15px; }
    .descanso-bg .descanso .text { top: -70px; margin: 0 auto; right: 0; }
    .descanso-bg .descanso .text::after { left: 50%; }
    .descanso .text .texto { font-size: 60px; }
    .descanso .text .vila { font-size: 85px; }
    .container.descanso-bg { height: 430px; }

}

@media (max-width: 480px) {
    .descontos-titulo .linha-1 {font-size: 30px;}
    .descontos-titulo .linha-2 {font-size: 48px;}
    .descontos-titulo .linha-3 {font-size: 54px;}
    .desconto-card {padding: 18px 16px;}
    .desconto-info .valor {font-size: 48px;}
    .desconto-info .texto {font-size: 25px;}
    .data-item {font-size: 20px;}
    .container.informacoes .parent .titulo-parent .titulo { margin-bottom: 15px; }
    .container.informacoes .parent .titulo-parent .titulo strong,
    .container.informacoes .parent .titulo-parent .titulo {font-size: 34px;}
    .container.informacoes .parent .titulo-parent .titulo h2 {font-size: 49px;}
    .container.informacoes .parent .iframe::before {width: 95px; height: 95px;}
    /* .servicos-lista {grid-template-columns: 1fr;} */

    .servicos-lista .servico { font-size: 15px; }
    .servicos-lista .servico b { font-size: 18px; }
    .playground-servicos .titulo h2 {font-size: 31px;}
    .playground-servicos .titulo b {font-size: 51px; padding-left: 40px;}

    .header .placa { display: none; }
    .banner .header-bg { top: 15px; }

    .banner-bg { height: 470px; }
    .counter { margin-top: 25px; }
    .banner .content { margin-top: 60px; }
}

@keyframes pascoa-in {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}
