* {
    margin: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    box-sizing: border-box;
    color: #0c2032;
    font-family: "Inter", sans-serif
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden
}

p {
    font-size: 1.25rem;
    color: #414141;
    line-height: 1.5
}

@media(max-width: 920px) {
    p {
        font-size: 1rem
    }
}

.hero-section {
    background: #62001b;
    position: relative;
    padding: 50px 0;
    overflow: hidden;
    border-bottom: #000 1px solid
}

.hero-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: .3
}

.hero-section .container {
    max-width: 1216px;
    margin: 0 auto;
    width: 95%
}

.hero-section .container .hero-content {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center
}

.hero-section .container .hero-content .hero-text {
    color: #fff
}

.hero-section .container .hero-content .hero-text .urgent-badge {
    background: linear-gradient(45deg, #00c450, #00a043);
    display: inline-block;
    padding: 6px 16px;
    border-radius: 20px;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(0, 196, 80, .3)
}

.hero-section .container .hero-content .hero-text .urgent-badge span {
    color: #fff;
    font-weight: 600;
    font-size: .85rem;
    text-transform: uppercase;
    letter-spacing: 0.03125rem
}

.hero-section .container .hero-content .hero-text .hero-title {
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
    color: #fff
}

.hero-section .container .hero-content .hero-text .hero-title .highlight {
    color: #00c450
}

.hero-section .container .hero-content .hero-text .hero-title strong {
    color: #dcc1b8;
    display: block
}

.hero-section .container .hero-content .hero-text .hero-subtitle {
    font-size: 1.1rem;
    color: rgba(255, 255, 255, .85);
    line-height: 1.6;
    margin-bottom: 25px;
    font-weight: 400
}

.hero-section .container .hero-content .hero-text .hero-benefits {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 30px
}

.hero-section .container .hero-content .hero-text .hero-benefits .benefit {
    color: #fff;
    font-size: .95rem;
    font-weight: 500;
    display: flex;
    align-items: center
}

.hero-section .container .hero-content .hero-text .hero-benefits .benefit::before {
    content: "✓";
    color: #00c450;
    font-weight: bold;
    margin-right: 8px;
    font-size: 1.1rem
}

.hero-section .container .hero-content .hero-text .hero-cta {
    margin-bottom: 25px
}

.hero-section .container .hero-content .hero-text .hero-btn {
    background: linear-gradient(45deg, #00c450, #00a043);
    color: #fff;
    font-size: 1.1rem;
    font-weight: 600;
    padding: 14px 30px;
    border-radius: 30px;
    text-decoration: none;
    display: inline-block;
    transition: all .3s ease;
    box-shadow: 0 6px 20px rgba(0, 196, 80, .3);
    text-transform: uppercase;
    letter-spacing: 0.03125rem
}

.hero-section .container .hero-content .hero-text .hero-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 196, 80, .4)
}

.hero-section .container .hero-content .hero-text .trust-badges {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 15px;
    justify-content: flex-start
}

.hero-section .container .hero-content .hero-text .trust-badges img {
    height: 30px;
    opacity: .8;
    transition: opacity .3s
}

.hero-section .container .hero-content .hero-text .trust-badges img:hover {
    opacity: 1
}

.hero-section .container .hero-content .hero-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

.hero-section .container .hero-content .hero-visual .product-display {
    position: relative;
    max-width: 350px;
    width: 100%
}

.hero-section .container .hero-content .hero-visual .product-display .product-image {
    width: 100%;
    height: auto;
    filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.3))
}

.hero-section .container .hero-content .hero-visual .product-display .guarantee-badge {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 100px;
    height: 100px;
    animation: float 4s ease-in-out infinite
}

.hero-section .container .hero-content .hero-visual .product-display .guarantee-badge img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media(max-width: 1000px) {
    .hero-section .container .hero-content {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center
    }
}

@media(max-width: 1000px) {
    .hero-section {
        padding: 40px 0
    }
    .hero-section .container .hero-content .trust-badges {
        justify-content: center
    }
    .hero-section .container .hero-content .product-display .guarantee-badge {
        width: 80px;
        height: 80px;
        top: -15px;
        right: -15px
    }
    .hero-section .container .hero-content .hero-btn {
        font-size: 1rem;
        padding: 12px 24px
    }
}

.bonus {
    background: #ffdedf;
    padding: 20px 0;
    border-radius: 100px;
    margin-bottom: 20px
}

@media(max-width: 900px) {
    .bonus {
        border-radius: 30px;
        padding: 10px
    }
}

.bonus .title {
    color: #0c2032;
    max-width: 60ch;
    margin-bottom: 24px;
    text-align: center
}

.bonus .title u {
    color: #0c2032;
    text-decoration: underline
}

.bonus ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    text-align: left
}

@media(max-width: 900px) {
    .bonus ul {
        grid-template-columns: repeat(1, 1fr)
    }
}

.bonus ul .card {
    background: #fff;
    overflow: hidden;
    margin-bottom: 16px;
    border-radius: 6px;
    text-align: center
}

.bonus ul .card img {
    height: 300px;
    margin: 0 auto
}

.bonus ul .card .bn {
    width: 100%;
    background: #62001b;
    color: #fff;
    padding: 16px
}

.bonus ul .card .bn u {
    color: #dcbc63;
    text-decoration: underline
}

.bonus ul .area-preco {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 16px
}

.bonus ul .area-preco * {
    font-size: 1.5rem
}

.bonus ul .area-preco s {
    text-decoration: line-through;
    text-decoration-color: red;
    color: #7a7a7a
}

.bonus ul .area-preco b {
    color: #18c45d
}

.bonus ul p {
    font-size: 1.25rem;
    color: #414141
}

.bonus ul p strong {
    color: #62001b !important
}

@media(max-width: 900px) {
    .bonus ul p {
        font-size: 1rem
    }
}

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

.container {
    max-width: 1216px;
    margin: 0 auto;
    width: 95%
}

.area-btn {
    text-align: center;
    max-width: 376px;
    width: 100%
}

.area-btn span {
    color: #414141
}

.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    max-width: 376px;
    background: #00c450;
    padding: 16px;
    width: 100%;
    font-size: 1.5rem;
    font-weight: 500;
    color: #fff;
    margin-bottom: 12px;
    border-radius: 100px;
    transition: all .7s
}

@media(max-width: 920px) {
    .btn {
        font-size: 1.25rem
    }
}

.btn:hover {
    transform: scale(1.01)
}

h1,
.title {
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 16px;
    max-width: 25ch;
    line-height: 1.1
}

@media(max-width: 920px) {
    h1,
    .title {
        font-size: 2rem
    }
}

header {
    background: #62001b;
    padding: 20px 0
}

header h1 {
    max-width: none;
    color: #fff;
    text-align: center;
    font-size: 2rem;
    text-transform: uppercase
}

@media(max-width: 920px) {
    header h1 {
        font-size: 1.5rem
    }
}

header h1 strong {
    display: block;
    color: #62001b
}

.garantia {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 47px;
    overflow: hidden;
    margin: 17px auto 40px;
    position: relative
}

@media(max-width: 1000px) {
    .garantia {
        grid-template-columns: 1fr;
        gap: 24px;
        place-items: center;
        text-align: center
    }
    .garantia .btn {
        margin: 0 auto
    }
    .garantia>img {
        max-width: 240px
    }
}

.garantia .bg {
    display: block;
    width: 100%;
    height: 70%;
    position: absolute;
    background: #0c2032;
    border-radius: 50px;
    top: 50%;
    transform: translateY(-50%);
    z-index: -1
}

.garantia .content {
    background: #0c2032
}

@media(max-width: 1000px) {
    .garantia .content {
        border-radius: 50px
    }
}

.garantia .content .title {
    text-transform: uppercase;
    color: #fff
}

@media(max-width: 900px) {
    .garantia .content .title {
        margin: 0 auto 24px
    }
}

.garantia .content p {
    margin-bottom: 40px;
    font-size: 1rem;
    color: rgba(255, 255, 255, .6039215686)
}

@media(max-width: 1000px) {
    .garantia .content p {
        margin: 0 20px 20px
    }
}

.faq {
    padding: 80px 0;
    background: #ffdedf;
    border-radius: 100px
}

@media(max-width: 1000px) {
    .faq {
        padding: 40px 0;
        border-radius: 30px
    }
}

.faq .container {
    display: flex;
    flex-direction: column;
    align-items: center
}

.faq .title {
    text-align: center;
    margin: 0 auto 48px
}

.faq .accordion {
    max-width: 1008px;
    margin: 0 auto;
    display: grid;
    gap: 14px;
    margin-bottom: 48px
}

.faq .item .header {
    border: 1px solid rgba(47, 27, 82, .2156862745);
    cursor: pointer;
    display: flex;
    background: #fff;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px;
    padding: 16px
}

@media(max-width: 900px) {
    .faq .item .header {
        padding: 14px
    }
}

.faq .item .header p {
    font-weight: 500;
    font-size: 1.5rem;
    color: #000
}

@media(max-width: 900px) {
    .faq .item .header p {
        font-size: 1.125rem
    }
}

.faq .item .header::after {
    content: "+";
    transition: all .6s;
    font-size: 1.875rem;
    font-weight: 400
}

.faq .item .body {
    max-height: 0;
    overflow: hidden;
    transition: all .6s
}

.faq .item .body p,
.faq .item .body li {
    font-size: 1.125rem;
    margin-bottom: 20px
}

@media(max-width: 900px) {
    .faq .item .body p,
    .faq .item .body li {
        font-size: 1rem
    }
}

.faq .item .body li {
    list-style: "✔";
    margin-left: 20px
}

.faq .item .body img {
    margin: 0 auto
}

.faq .item.active .header::after {
    content: "-"
}

.faq .item.active .body {
    padding-top: 20px;
    padding-bottom: 20px;
    max-height: 500px;
    overflow: auto
}

.rotulo {
    padding: 80px 0;
    perspective: 1000px;
    transition: transform .3s ease-in-out
}

.rotulo img {
    width: 100%;
    transition: transform .3s ease-in-out
}

.rotulo img:hover {
    transform: rotateY(20deg) translateZ(50px)
}

@media(max-width: 1000px) {
    .rotulo {
        padding: 40px 0
    }
}

.k2 {
    margin-top: 80px
}

footer {
    background: #fff
}

footer .data_footer .container h2 {
    text-align: center;
    font-size: 3rem;
    margin-bottom: 12px
}

@media(max-width: 1000px) {
    footer .data_footer .container h2 {
        font-size: 1.5rem
    }
}

footer .data_footer .container nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 12px
}

footer .data_footer .container nav a {
    padding: 12px
}

@media(max-width: 1000px) {
    footer .data_footer .container nav a {
        padding: 8px
    }
}

footer .data_footer .container nav a:hover {
    text-decoration: underline
}

footer .data_footer .container h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 24px
}

@media(max-width: 1000px) {
    footer .data_footer .container h3 {
        font-size: 1.125rem
    }
}

footer .data_footer .container ul {
    -moz-column-count: 3;
    column-count: 3;
    margin-bottom: 80px
}

@media(max-width: 1000px) {
    footer .data_footer .container ul {
        margin-bottom: 40px;
        -moz-column-count: 1;
        column-count: 1
    }
}

footer .data_footer .container ul li {
    list-style: disc;
    margin-left: 20px;
    word-wrap: break-word
}

@media(max-width: 1000px) {
    footer .data_footer .container ul li {
        font-size: 0.75rem
    }
}

footer .data_footer .container .disclaimer {
    background: #f6f4f9;
    padding: 24px 32px;
    border-radius: 20px;
    margin-bottom: 40px;
    text-align: center
}

@media(max-width: 1000px) {
    footer .data_footer .container .disclaimer {
        padding: 12px 8px
    }
}

footer .data_footer .container .disclaimer p {
    color: #454447;
    font-size: 1rem
}

@media(max-width: 1000px) {
    footer .data_footer .container .disclaimer p {
        font-size: 0.875rem
    }
}

footer .copy {
    background: #62001b;
    padding: 32px 5%;
    display: flex;
    justify-content: center
}

footer .copy * {
    color: #fff;
    font-size: 1.125rem;
    font-weight: 300;
    text-align: center
}

@media(max-width: 1000px) {
    footer .copy * {
        font-size: 0.875rem
    }
}

.medalhas {
    max-width: 800px;
    padding-bottom: 40px
}

.stock {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 0 24px
}

@media(max-width: 900px) {
    .stock {
        padding: 40px 0 0
    }
}

.stock * {
    font-size: 2rem;
    color: #0c2032;
    text-align: center
}

@media(max-width: 900px) {
    .stock * {
        font-size: 1.25rem
    }
}

.stock strong {
    color: #62001b
}

.bg-ficxo {
    position: fixed;
    top: 30%;
    left: 0;
    right: 0;
    overflow: hidden;
    height: 600px;
    z-index: -1
}

.frete_ {
    padding: 40px 0;
    text-align: center
}

.frete_ h2 {
    font-size: 2rem
}

.frete_ h3 {
    color: #0b7135;
    font-size: 1.25rem
}

.alert {
    position: fixed;
    z-index: 200;
    right: 20px;
    background: #000;
    border: #62001b 2px solid;
    border-radius: 5px;
    bottom: 20px;
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 12px;
    padding: 12px;
    align-items: center;
    width: 100%;
    max-width: 300px;
    animation: dhow .7s forwards
}

@media(max-width: 900px) {
    .alert {
        right: 10px
    }
}

.alert * {
    color: #fff;
    font-weight: bold
}

.bg-ficxo svg {
    position: absolute;
    width: 200%;
    animation: slide 20s linear infinite
}

@keyframes slide {
    from {
        transform: translateX(0)
    }
    to {
        transform: translateX(-50%)
    }
}

@keyframes pilula {
    from {
        top: 0
    }
    to {
        top: 60%
    }
}

@keyframes desfoque {
    from {
        filter: blur(10px)
    }
    to {
        filter: blur(0)
    }
}

@keyframes top {
    from {
        bottom: -200px
    }
    to {
        bottom: 0
    }
}

@keyframes left {
    from {
        left: -200px
    }
    to {
        left: 0
    }
}