/* Base styles (your existing CSS) */
body {
    margin: 0;
    line-height: normal;
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

.image-2-icon {
    width: 207px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.logo {
    width: 231px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.iconmenu {
    width: 18px;
    position: relative;
    height: 18px;
    object-fit: cover;
}

.text {
    position: relative;
    letter-spacing: 0.4px;
    font-weight: 500;
}

.buttons-7-large-4-gradien {
    border-radius: 5px;
    background-color: #000;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 16px;
    gap: 10px;
    text-align: center;
}

.background1 {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0%;
    right: 0%;
    bottom: 0%;
    left: 0%;
    border-radius: 5px;
    background-color: #fff;
}

.state {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0%;
    right: 0%;
    bottom: 0%;
    left: 0%;
    border-radius: 5px;
    border: 1px solid #d8d6de;
    box-sizing: border-box;
}

.background {
    position: absolute;
    width: 100%;
    top: 0px;
    right: 0px;
    left: 0px;
    height: 40px;
}

.icon {
    position: absolute;
    height: 100%;
    top: 0%;
    right: 0px;
    bottom: 0%;
    max-height: 100%;
    width: 38px;
    overflow: hidden;
    object-fit: cover;
}

.passwoard {
    position: absolute;
    top: 7px;
    left: 15px;
    line-height: 24px;
    display: inline-block;
    width: 334px;
}

.input {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0%;
    right: 0%;
    bottom: 0%;
    left: 0%;
}

.input-inputgroups3-input-g {
    align-self: stretch;
    width: 329px;
    position: relative;
    border-radius: 5px;
    background-color: #fff;
    color: #b9b9c3;
}

.label {
    position: relative;
    line-height: 21px;
    font-weight: 500;
}

.header-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.links {
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 16px;
    font-size: 14px;
    color: #000;
}

.llinks {
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 0px 24px;
    gap: 24px;
}

/* Modified arrow styles for custom Slick navigation */
.slick-prev-custom {
    width: 40px;
    position: relative;
    height: 40px;
    cursor: pointer;
    /* Add pointer cursor for clickability */
    z-index: 10;
    /* Ensure arrows are above other content if overlapping */
}

.slick-next-custom {
    width: 40px;
    position: relative;
    height: 40px;
    cursor: pointer;
    /* Add pointer cursor for clickability */
    z-index: 10;
    /* Ensure arrows are above other content if overlapping */
}

.frame-parent {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
}

.phone-number-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
}

.layout {
    width: 254px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0px;
    font-size: 14px;
    color: #000;
}

.line-1 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 20px 0px;
}

.label4 {
    position: relative;
    line-height: 21px;
}

.notofire-icon {
    width: 16px;
    position: relative;
    max-height: 100%;
    overflow: hidden;
    flex-shrink: 0;
}

.header-link8 {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 2px;
}

.llinks1 {
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 32px;
}

.line-2 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 0px;
    font-size: 14px;
    color: #000;
}

.header {
    align-self: stretch;
    box-shadow: 0px 6px 28px rgba(0, 0, 0, 0.03);
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 0px 20px;
    z-index: 2;
}

.b {
    position: relative;
    font-size: 28px;
    font-family: Montserrat;
}

.sorso-brazilian-blend {
    flex: 1;
    position: relative;
    line-height: 150%;
}

.title {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 8px 0px;
    font-size: 20px;
    color: #fff;
}

.img-icon {
    width: 150px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
    transition: transform 1s ease-in-out;
    transform: scale(1);
    /* Initial state: no scale */
}

.img-icon:hover {
    transform: scale(1.2);
}

.img-layout {
    align-self: stretch;
    height: 279.3px;
    display: flex;
    flex-direction: row;
    /* align-items: flex-start; */
    justify-content: center;
}

.description {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.img-descr-layout {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 16px 0px;
    gap: 12px;
    text-align: center;
    color: #fff;
}

.b2 {
    position: relative;
    text-decoration: line-through;
    line-height: 150%;
}

.price {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.b3 {
    position: relative;
    line-height: 150%;
}

.price1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.price-button-layout {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 16px 0px 0px;
    gap: 32px;
    font-size: 24px;
    color: rgba(255, 255, 255, 0.7);
}

.button {
    flex: 1;
    border-radius: 16px;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 12px 32px;
}

.price-button-layout1 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 0px 0px;
    font-family: Montserrat;
}

.parent {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2px;
}

.banner-2 {
    align-self: stretch;
    width: 390px;
    border-radius: 20px;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px;
    box-sizing: border-box;
    background:
        linear-gradient(#000000B2,
            #000000B2),
        url('/img/8b8c562a9967658330863a1f1d248d19ced247bb.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
}

.text1 {
    position: relative;
}

.banner-1 {
    align-self: stretch;
    border-radius: 20px;
    height: 305px;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 24px;
    box-sizing: border-box;
    background:
        linear-gradient(#000000B2,
            #000000B2),
        url('/img/8b8c562a9967658330863a1f1d248d19ced247bb.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
}

.text2 {
    flex: 1;
    position: relative;
}

.banner-3 {
    align-self: stretch;
    width: 395px;
    border-radius: 20px;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 24px;
    box-sizing: border-box;
    background:
        linear-gradient(#000000B2,
            #000000B2),
        url('/img/8b8c562a9967658330863a1f1d248d19ced247bb.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
}

.b5 {
    align-self: stretch;
    position: relative;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.div1 {
    position: relative;
    font-weight: 600;
}

.title3 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: left;
    font-size: 48px;
}

.text3 {
    position: relative;
    letter-spacing: 0.4px;
}

.buttons-8-small-4-gradien {
    border-radius: 16px;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 32px;
    font-size: 14px;
    color: #000;
}

.banner-4 {
    align-self: stretch;
    flex: 1;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 48px 24px;
    gap: 0px;
    background:
        linear-gradient(#000000B2,
            #000000B2),
        url('/img/8b8c562a9967658330863a1f1d248d19ced247bb.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
}

.layout-3 {
    flex: 1;
    border-radius: 20px;
    height: 305px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.layout-2 {
    align-self: stretch;
    border-radius: 20px;
    height: 305px;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
}

.layout-1 {
    align-self: stretch;
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
    font-size: 28px;
    color: #fff;
    font-family: Montserrat;
}

.block-1-banners {
    align-self: stretch;
    height: 630px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    font-size: 14px;
    font-family: Inter;
}

.buttons-8-small-4-gradien1 {
    border-radius: 50px;
    background-color: #000;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 16px;
    color: #fff;
}

.buttons-8-small-4-gradien2 {
    border-radius: 50px;
    border: 1px solid #000;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 10px 16px;
}

.selector {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    text-align: center;
    font-size: 16px;
}

.title-parent {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 24px;
}

/* Hide Slick's default arrows */
.slick-prev,
.slick-next {
    display: none !important;
}

.section-2-header {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 0px;
}

.title5 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 8px 0px;
}

.img-icon1 {
    width: 150px;
    position: relative;
    height: 280px;
    object-fit: cover;
    transition: transform 1s ease-in-out;
    transform: scale(1);
    /* Initial state: no scale */
}

.img-icon1:hover {
    transform: scale(1.2);
}

.img-descr-layout1 {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 16px 0px;
    gap: 12px;
    text-align: center;
    font-size: 14px;
}

.price2 {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.price-button-layout2 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 0px 0px;
    font-size: 24px;
}

.we-recommend-it {
    /* Removed flex: 1 and min-width to let Slick control width */
    border-radius: 16px;
    background-color: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 32px;
    margin: 0.5em;
    box-sizing: border-box;
    /* Crucial for consistent sizing */
}

/* Slick will manage the display and flex of .slide-list itself */
.slide-list {
    /* flex: 1; */
    /* Removed flex: 1 as Slick manages width */
    /* Removed display: flex; flex-direction: row; */
    /* Slick applies its own display properties */
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    /* Slick adds its own gutter, this gap might not be used directly */
    width: 100%;
    /* Ensure Slick container takes full width */
}

.cards {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-family: Inter;
}

.section-2- {
    align-self: stretch;
    background-color: #f5f5f7;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 32px 0px;
    gap: 24px;
}

.image-59-icon {
    width: 153.7px;
    position: relative;
    max-height: 100%;
    object-fit: contain;
    transition: transform 1s ease-in-out;
    transform: scale(1);
    /* Initial state: no scale */
}

.image-59-icon:hover {
    transform: scale(1.2);
}

.img-descr-layout5 {
    width: 336px;
    height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px 0px;
    box-sizing: border-box;
}

.div10 {
    position: relative;
    line-height: 150%;
    font-weight: 600;
}

.title10 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 8px 0px;
}

.we-recommend-it4 {
    flex: 1;
    border-radius: 16px;
    background-color: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 32px;
    box-sizing: border-box;
    gap: 16px;
    min-width: 400px;
}

.image-58-icon {
    width: 198.6px;
    position: relative;
    max-height: 100%;
    object-fit: contain;
    transition: transform 1s ease-in-out;
    transform: scale(1);
    /* Initial state: no scale */
}

.image-58-icon:hover {
    transform: scale(1.2);
}

.image-51-icon {
    width: 104.9px;
    position: relative;
    max-height: 100%;
    object-fit: contain;
    transition: transform 1s ease-in-out;
    transform: scale(1);
    /* Initial state: no scale */
}

.image-51-icon:hover {
    transform: scale(1.2);
}

.img-descr-layout7 {
    width: 336px;
    height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.cards1 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
    font-size: 20px;
}

.section-3- {
    width: 1400px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 32px 0px;
    box-sizing: border-box;
    gap: 24px;
}

.b11 {
    align-self: stretch;
    position: relative;
}

.sorso {
    align-self: stretch;
    position: relative;
    font-size: 14px;
    line-height: 150%;
    font-family: Inter;
}

.banner-41 {
    align-self: stretch;
    flex: 1;
    border-radius: 20px;
    background-color: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px;
    gap: 24px;
}

.title14 {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.banner-6 {
    align-self: stretch;
    width: 395px;
    border-radius: 20px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-sizing: border-box;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px;
    gap: 24px;
}

.image-60-icon {
    width: 151.7px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-61-icon {
    width: 150.7px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-62-icon {
    width: 150.6px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-60-parent {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 50px;
}

.banner-1-inner {
    align-self: stretch;
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;
    padding: 12px 0px;
}

.banner-11 {
    flex: 1;
    border-radius: 20px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-sizing: border-box;
    height: 305px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px 24px 0px;
    gap: 10px;
}

.banner-1-wrapper {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
}

.image-57-icon {
    width: 134px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-56-icon {
    width: 128px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-52-icon {
    width: 130.8px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-54-icon {
    width: 137.9px;
    position: relative;
    max-height: 100%;
    object-fit: contain;
}

.image-55-icon {
    width: 154px;
    position: relative;
    max-height: 100%;
    object-fit: cover;
}

.image-57-parent {
    align-self: stretch;
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 0px;
}

.banner-12 {
    align-self: stretch;
    border-radius: 20px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-sizing: border-box;
    height: 305px;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px 24px 0px;
    gap: 10px;
}

.layout-11 {
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
}

.div14 {
    position: relative;
    font-size: 20px;
    line-height: 150%;
    font-weight: 500;
}

.group {
    align-self: stretch;
    flex: 1;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px;
    gap: 10px;
}

.b13 {
    align-self: stretch;
    position: relative;
    line-height: 100%;
    white-space: pre-wrap;
}

.div15 {
    position: relative;
    font-size: 20px;
    line-height: 150%;
    font-weight: 500;
    text-align: left;
}

.container {
    align-self: stretch;
    flex: 1;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px;
    gap: 10px;
    text-align: center;
}

.frame-group {
    align-self: stretch;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 24px;
    font-size: 40px;
    color: #fff;
    font-family: Inter;
}

.banner-21 {
    align-self: stretch;
    width: 390px;
    border-radius: 20px;
    background-color: #000;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-sizing: border-box;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 24px;
    gap: 24px;
}

.block-1-banners1 {
    width: 1400px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
    font-size: 28px;
}

.section-3-1 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 32px 0px;
    gap: 24px;
}

.content {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 32px 20px;
    z-index: 1;
    font-size: 32px;
    color: #000;
}

.c {
    margin: 0;
}

.label11 {
    align-self: stretch;
    position: relative;
    font-size: 12px;
    line-height: 21px;
    color: #babfc7;
}

.block-1- {
    align-self: stretch;
    width: 307px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
    font-size: 16px;
}

.label12 {
    align-self: stretch;
    position: relative;
    line-height: 24px;
    font-weight: 500;
}

.label13 {
    flex: 1;
    position: relative;
    line-height: 21px;
}

.link-parent {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 4px;
    font-size: 12px;
    color: #babfc7;
}

.block-4- {
    align-self: stretch;
    width: 149px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 12px;
}

.label22 {
    flex: 1;
    position: relative;
    line-height: 21px;
    text-transform: capitalize;
}

.block-5- {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
}

.link10 {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 4px;
    font-size: 12px;
}

.rifacebook-fill-icon {
    width: 24px;
    position: relative;
    border-radius: 4px;
    max-height: 100%;
    overflow: hidden;
    flex-shrink: 0;
}

.rifacebook-fill-parent {
    align-self: stretch;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 0px 0px;
    gap: 10px;
}

.block-5-1 {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 12px;
}

.label29 {
    position: relative;
    font-size: 12px;
    line-height: 21px;
    color: #babfc7;
}

.label-parent {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2px;
}

.inner-layout {
    flex: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}

.input1 {
    align-self: stretch;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.6);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 4px;
    font-size: 12px;
    color: #babfc7;
}

.text14 {
    position: relative;
    letter-spacing: 0.37px;
    font-weight: 500;
}

.buttons-8-small-4-gradien4 {
    align-self: stretch;
    border-radius: 4px;
    background-color: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 8px 19px;
    text-align: center;
    font-size: 11px;
    color: #000;
}

.block-3- {
    align-self: stretch;
    width: 193px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
}

.footer {
    align-self: stretch;
    background-color: #000;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    padding: 32px 20px;
    gap: 0px;
    z-index: 0;
    font-size: 15px;
}

.div {
    width: 100%;
    position: relative;
    background-color: #f5f5f7;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
    font-size: 16px;
    color: #fff;
    font-family: Montserrat;
}

/* --- Responsive Styles --- */

/* General Mobile/Tablet Styles (Max-width 768px) */
@media (max-width: 768px) {
    .div {
        font-size: 14px;
    }

    .header {
        padding: 0px 10px;
    }

    .line-1 {
        flex-direction: column;
        align-items: center;
        padding: 16px 0px;
        gap: 16px;
    }

    .logo {
        width: 180px;
    }

    .image-2-icon {
        width: 100%;
    }

    .llinks {
        flex-direction: column;
        padding: 0;
        gap: 12px;
        width: 100%;
        align-items: center;
    }

    .buttons-7-large-4-gradien,
    .input-inputgroups3-input-g,
    .links {
        width: 100%;
        justify-content: center;
        padding: 8px 10px;
    }

    .input-inputgroups3-input-g {
        width: 90%;
    }

    .passwoard {
        width: calc(100% - 70px);
    }

    .links {
        flex-direction: column;
        gap: 8px;
        align-items: center;
    }

    .layout {
        width: 100%;
        flex-direction: column;
        gap: 10px;
        align-items: center;
        margin-top: 10px;
    }

    .line-2 {
        flex-direction: column;
        padding: 8px 0px;
        gap: 8px;
        align-items: center;
    }

    .llinks1 {
        flex-direction: column;
        gap: 10px;
        width: 100%;
        align-items: center;
    }

    .content {
        padding: 24px 10px;
    }

    /* Block 1 Banners */
    .block-1-banners {
        flex-direction: column;
        height: auto;
        gap: 20px;
    }

    .banner-2,
    .banner-1,
    .banner-3,
    .banner-4 {
        width: 100%;
        height: auto;
        padding: 20px;
    }

    .b {
        font-size: 24px;
    }

    .title .sorso-brazilian-blend {
        font-size: 18px;
        text-align: center;
    }

    .description .sorso-brazilian-blend {
        font-size: 13px;
    }

    .img-layout {
        height: 200px;
    }

    .img-icon {
        max-width: 80%;
        height: auto;
    }

    .price-button-layout {
        flex-direction: column;
        gap: 16px;
        font-size: 20px;
    }

    .price-button-layout1 {
        width: 100%;
        justify-content: center;
    }

    .button {
        width: 80%;
        padding: 10px 20px;
    }

    .layout-1,
    .layout-2,
    .layout-3 {
        flex-direction: column;
        height: auto;
        width: 100%;
        gap: 20px;
    }

    .title3 {
        font-size: 36px;
    }

    /* Section 2 (Recommended) */
    .section-2-header {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }

    .title-parent {
        flex-direction: column;
        align-items: center;
        gap: 15px;
        width: 100%;
    }

    .title-parent .header-link {
        font-size: 20px;
    }

    .selector {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .buttons-8-small-4-gradien1,
    .buttons-8-small-4-gradien2 {
        padding: 8px 12px;
        font-size: 14px;
    }

    .cards {
        /* Removed flex-direction: column; Slick handles this */
        gap: 20px;
        /* Added padding for inner content of .section-2- */
        padding: 0 10px;
        overflow: hidden;
        /* Ensure slider doesn't spill out */
    }

    /* Slick will manage the display and flex of .slide-list itself */
    .slide-list {
        /* No changes needed here, as Slick takes over */
    }

    .we-recommend-it {
        width: 100%;
        /* Slick sets item width, this is for inner padding/sizing */
        min-width: unset;
        padding: 20px;
        text-align: center;
        align-items: center;
    }

    .img-icon1 {
        width: 120px;
        height: auto;
    }

    .title5 b {
        font-size: 18px;
    }

    .price2 b {
        font-size: 20px;
    }

    /* Section 3 (Equipment) */
    .section-3- {
        width: 100%;
        padding: 24px 10px;
    }

    .cards1 {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .we-recommend-it4 {
        width: 90%;
        min-width: unset;
        padding: 20px;
    }

    .img-descr-layout5,
    .img-descr-layout7 {
        width: 100%;
        height: auto;
    }

    .image-59-icon,
    .image-58-icon,
    .image-51-icon {
        max-width: 70%;
        height: auto;
    }

    /* Section 3-1 (About Company) */
    .block-1-banners1 {
        flex-direction: column;
        width: 100%;
        gap: 20px;
    }

    .layout-11 {
        width: 100%;
    }

    .banner-41,
    .banner-6,
    .banner-11,
    .banner-12,
    .banner-21 {
        width: 100%;
        height: auto;
        padding: 20px;
    }

    .b11,
    .text2 {
        font-size: 22px;
    }

    .sorso {
        font-size: 13px;
    }

    .image-60-parent,
    .image-57-parent {
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    .image-60-icon,
    .image-61-icon,
    .image-62-icon,
    .image-57-icon,
    .image-56-icon,
    .image-52-icon,
    .image-54-icon,
    .image-55-icon {
        max-width: 45%;
        height: auto;
        object-fit: contain;
    }

    .banner-1-inner {
        padding: 12px 0;
    }

    .banner-11,
    .banner-12 {
        padding: 20px 20px 0px;
    }

    .group,
    .container {
        padding: 12px;
    }

    .b3 {
        font-size: 32px;
    }

    .div14,
    .div15 {
        font-size: 16px;
    }


    /* Footer */
    .footer {
        flex-direction: column;
        padding: 24px 15px;
        gap: 20px;
        align-items: flex-start;
    }

    .block-1-,
    .block-4-,
    .block-5-,
    .block-5-1,
    .block-3- {
        width: 100%;
        align-items: flex-start;
        gap: 8px;
    }

    .rifacebook-fill-parent {
        justify-content: flex-start;
    }

    .label12 {
        font-size: 14px;
    }

    .label13,
    .label22,
    .label29,
    .label4 {
        font-size: 11px;
    }

    .buttons-8-small-4-gradien4 {
        padding: 6px 15px;
        font-size: 10px;
    }
}

/* Further refinements for smaller screens (Max-width 480px) */
@media (max-width: 480px) {
    .header {
        padding: 0px 5px;
    }

    .logo {
        width: 150px;
    }

    .buttons-7-large-4-gradien {
        width: 90%;
    }

    .input-inputgroups3-input-g {
        width: 90%;
        margin: 0 auto;
    }

    .passwoard {
        width: calc(100% - 60px);
        font-size: 12px;
    }

    .links .header-link .label {
        font-size: 12px;
    }

    .layout {
        width: 90%;
    }

    .phone-number-link .label {
        font-size: 12px;
    }

    .llinks1 .header-link .label4,
    .header-link8 .label4 {
        font-size: 12px;
    }

    .b {
        font-size: 20px;
    }

    .title .sorso-brazilian-blend {
        font-size: 16px;
    }

    .description .sorso-brazilian-blend {
        font-size: 12px;
    }

    .img-layout {
        height: 150px;
    }

    .b2,
    .b3 {
        font-size: 18px;
    }

    .button {
        width: 90%;
        font-size: 16px;
    }

    .title3 {
        font-size: 28px;
    }

    .buttons-8-small-4-gradien {
        padding: 12px 20px;
        font-size: 12px;
    }

    .section-2-header {
        gap: 10px;
    }

    .title-parent .header-link {
        font-size: 18px;
    }

    .selector {
        flex-direction: column;
        gap: 8px;
        width: 100%;
        align-items: center;
    }

    .buttons-8-small-4-gradien1,
    .buttons-8-small-4-gradien2 {
        width: 80%;
        justify-content: center;
    }

    /* Custom arrows for Slick */
    .slick-prev-custom,
    .slick-next-custom {
        width: 30px;
        height: 30px;
    }

    .we-recommend-it {
        width: 100%;
        padding: 15px;
    }

    .img-icon1 {
        width: 100px;
    }

    .title5 b {
        font-size: 16px;
    }

    .price2 b {
        font-size: 18px;
    }

    .section-3- .header-link b {
        font-size: 18px;
    }

    .we-recommend-it4 {
        width: 100%;
        padding: 15px;
    }

    .img-descr-layout5,
    .img-descr-layout7 {
        height: 150px;
    }

    .image-59-icon,
    .image-58-icon,
    .image-51-icon {
        max-width: 60%;
    }

    .div10 {
        font-size: 18px;
    }

    .section-3-1 .header-link b {
        font-size: 18px;
    }

    .banner-41,
    .banner-6,
    .banner-11,
    .banner-12,
    .banner-21 {
        padding: 15px;
    }

    .b11,
    .text2 {
        font-size: 18px;
    }

    .sorso {
        font-size: 11px;
    }

    .image-60-parent,
    .image-57-parent {
        gap: 10px;
    }

    .image-60-icon,
    .image-61-icon,
    .image-62-icon,
    .image-57-icon,
    .image-56-icon,
    .image-52-icon,
    .image-54-icon,
    .image-55-icon {
        max-width: 48%;
    }

    .b3 {
        font-size: 28px;
    }

    .div14,
    .div15 {
        font-size: 14px;
    }

    .footer {
        padding: 20px 10px;
        font-size: 13px;
    }

    .block-1- .b11 {
        font-size: 18px;
    }

    .label11 p {
        font-size: 10px;
    }

    .label12 {
        font-size: 13px;
    }

    .label13,
    .label22,
    .label29,
    .label4 {
        font-size: 10px;
    }

    .rifacebook-fill-icon {
        width: 20px;
        height: 20px;
    }

    .buttons-8-small-4-gradien4 {
        font-size: 9px;
        padding: 5px 10px;
    }
}