    *,
    *::before,
    *::after {
        box-sizing: border-box
    }
    
    @media (prefers-reduced-motion:no-preference) {
         :root {
            scroll-behavior: smooth
        }
    }
    
    body {
        margin: 0;
        font-family: var(--bs-font-sans-serif);
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        background-color: #fff;
        -webkit-text-size-adjust: 100%;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
    }
    
    [tabindex="-1"]:focus:not(:focus-visible) {
        outline: 0!important
    }
    
    h6,
    .h6,
    h5,
    .h5,
    h4,
    .h4,
    h3,
    .h3,
    h2,
    .h2,
    h1,
    .h1 {
        margin-top: 0;
        margin-bottom: .5rem;
        font-weight: 500;
        line-height: 1.2
    }
    
    h1,
    .h1 {
        font-size: calc(1.375rem + 1.5vw)
    }
    
    @media (min-width:1200px) {
        h1,
        .h1 {
            font-size: 2.5rem
        }
    }
    
    h2,
    .h2 {
        font-size: calc(1.325rem + 0.9vw)
    }
    
    @media (min-width:1200px) {
        h2,
        .h2 {
            font-size: 2rem
        }
    }
    
    h3,
    .h3 {
        font-size: calc(1.3rem + 0.6vw)
    }
    
    @media (min-width:1200px) {
        h3,
        .h3 {
            font-size: 1.75rem
        }
    }
    
    h4,
    .h4 {
        font-size: calc(1.275rem + 0.3vw)
    }
    
    @media (min-width:1200px) {
        h4,
        .h4 {
            font-size: 1.5rem
        }
    }
    
    h5,
    .h5 {
        font-size: 1.25rem
    }
    
    h6,
    .h6 {
        font-size: 1rem
    }
    
    p {
        margin-top: 0;
        margin-bottom: 1rem
    }
    
    ol,
    ul {
        padding-left: 2rem
    }
    
    ol,
    ul,
    dl {
        margin-top: 0;
        margin-bottom: 1rem
    }
    
    ol ol,
    ul ul,
    ol ul,
    ul ol {
        margin-bottom: 0
    }
    
    b,
    strong {
        font-weight: bolder
    }
    
    a {
        color: #0d6efd;
        text-decoration: underline
    }
    
    a:hover {
        color: #0a58ca
    }
    
    a:not([href]):not([class]),
    a:not([href]):not([class]):hover {
        color: inherit;
        text-decoration: none
    }
    
    img,
    svg {
        vertical-align: middle
    }
    
    label {
        display: inline-block
    }
    
    button {
        border-radius: 0
    }
    
    button:focus {
        outline: dotted 1px;
        outline: -webkit-focus-ring-color auto 5px
    }
    
    input,
    button,
    select,
    optgroup,
    textarea {
        margin: 0;
        font-family: inherit;
        font-size: inherit;
        line-height: inherit
    }
    
    button,
    select {
        text-transform: none
    }
    
    [role=button] {
        cursor: pointer
    }
    
    select {
        word-wrap: normal
    }
    
    [list]::-webkit-calendar-picker-indicator {
        display: none
    }
    
    button,
    [type=button],
    [type=reset],
    [type=submit] {
        -webkit-appearance: button
    }
    
    button:not(:disabled),
    [type=button]:not(:disabled),
    [type=reset]:not(:disabled),
    [type=submit]:not(:disabled) {
        cursor: pointer
    }
    
    ::-moz-focus-inner {
        padding: 0;
        border-style: none
    }
    
    textarea {
        resize: vertical
    }
    
    ::-webkit-datetime-edit-fields-wrapper,
    ::-webkit-datetime-edit-text,
    ::-webkit-datetime-edit-minute,
    ::-webkit-datetime-edit-hour-field,
    ::-webkit-datetime-edit-day-field,
    ::-webkit-datetime-edit-month-field,
    ::-webkit-datetime-edit-year-field {
        padding: 0
    }
    
    ::-webkit-inner-spin-button {
        height: auto
    }
    
    ::file-selector-button {
        font: inherit
    }
    
    ::-webkit-file-upload-button {
        font: inherit;
        -webkit-appearance: button
    }
    
    .display-1 {
        font-size: calc(1.625rem + 4.5vw);
        font-weight: 300;
        line-height: 1.2
    }
    
    @media (min-width:1200px) {
        .display-1 {
            font-size: 5rem
        }
    }
    
    .img-fluid {
        max-width: 100%;
        height: auto
    }
    
    .container,
    .container-fluid {
        width: 100%;
        padding-right: var(--bs-gutter-x, .75rem);
        padding-left: var(--bs-gutter-x, .75rem);
        margin-right: auto;
        margin-left: auto
    }
    
    @media (min-width:576px) {
        .container {
            max-width: 540px
        }
    }
    
    @media (min-width:768px) {
        .container {
            max-width: 720px
        }
    }
    
    @media (min-width:992px) {
        .container {
            max-width: 960px
        }
    }
    
    @media (min-width:1200px) {
        .container {
            max-width: 1140px
        }
    }
    
    @media (min-width:1400px) {
        .container {
            max-width: 1320px
        }
    }
    
    .row {
        --bs-gutter-x: 1.5rem;
        --bs-gutter-y: 0;
        display: flex;
        flex-wrap: wrap;
        margin-top: calc(var(--bs-gutter-y) * -1);
        margin-right: calc(var(--bs-gutter-x) / -2);
        margin-left: calc(var(--bs-gutter-x) / -2)
    }
    
    .row>* {
        flex-shrink: 0;
        max-width: 100%;
        padding-right: calc(var(--bs-gutter-x) / 2);
        padding-left: calc(var(--bs-gutter-x) / 2);
        margin-top: var(--bs-gutter-y)
    }
    
    .col-1 {
        flex: 0 0 auto;
        width: 8.3333333333%
    }
    
    .col-3 {
        flex: 0 0 auto;
        width: 25%
    }
    
    .col-5 {
        flex: 0 0 auto;
        width: 41.6666666667%
    }
    
    .col-9 {
        flex: 0 0 auto;
        width: 75%
    }
    
    .col-12 {
        flex: 0 0 auto;
        width: 100%
    }
    
    .g-5,
    .gx-5 {
        --bs-gutter-x: 3rem
    }
    
    @media (min-width:768px) {
        .col-md-6 {
            flex: 0 0 auto;
            width: 50%
        }
    }
    
    @media (min-width:992px) {
        .col-lg-5 {
            flex: 0 0 auto;
            width: 41.6666666667%
        }
        .col-lg-6 {
            flex: 0 0 auto;
            width: 50%
        }
    }
    
    .form-label {
        margin-bottom: .5rem
    }
    
    .form-control {
        display: block;
        width: 100%;
        padding: .375rem .75rem;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #ced4da;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        border-radius: .25rem;
        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .form-control {
            transition: none
        }
    }
    
    .form-control:focus {
        color: #212529;
        background-color: #fff;
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
    }
    
    .form-control::-webkit-date-and-time-value {
        height: 1.5em
    }
    
    .form-control::-webkit-input-placeholder {
        color: #6c757d;
        opacity: 1
    }
    
    .form-control::-moz-placeholder {
        color: #6c757d;
        opacity: 1
    }
    
    .form-control::placeholder {
        color: #6c757d;
        opacity: 1
    }
    
    .form-control:disabled,
    .form-control[readonly] {
        background-color: #e9ecef;
        opacity: 1
    }
    
    .form-control::file-selector-button {
        padding: .375rem .75rem;
        margin: -.375rem -.75rem;
        -webkit-margin-end: .75rem;
        margin-inline-end: .75rem;
        color: #212529;
        background-color: #e9ecef;
        pointer-events: none;
        border-color: inherit;
        border-style: solid;
        border-width: 0;
        border-inline-end-width: 1px;
        border-radius: 0;
        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .form-control::file-selector-button {
            transition: none
        }
    }
    
    .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
        background-color: #dde0e3
    }
    
    .form-control::-webkit-file-upload-button {
        padding: .375rem .75rem;
        margin: -.375rem -.75rem;
        -webkit-margin-end: .75rem;
        margin-inline-end: .75rem;
        color: #212529;
        background-color: #e9ecef;
        pointer-events: none;
        border-color: inherit;
        border-style: solid;
        border-width: 0;
        border-inline-end-width: 1px;
        border-radius: 0;
        -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .form-control::-webkit-file-upload-button {
            -webkit-transition: none;
            transition: none
        }
    }
    
    .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
        background-color: #dde0e3
    }
    
    textarea.form-control {
        min-height: calc(1.5em + 0.75rem + 2px)
    }
    
    .form-select {
        display: block;
        width: 100%;
        padding: .375rem 1.75rem .375rem .75rem;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        vertical-align: middle;
        background-color: #fff;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: right .75rem center;
        background-size: 16px 12px;
        border: 1px solid #ced4da;
        border-radius: .25rem;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none
    }
    
    .form-select:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
    }
    
    .form-select[multiple],
    .form-select[size]:not([size="1"]) {
        padding-right: .75rem;
        background-image: none
    }
    
    .form-select:disabled {
        color: #6c757d;
        background-color: #e9ecef
    }
    
    .form-select:-moz-focusring {
        color: transparent;
        text-shadow: 0 0 0 #212529
    }
    
    .form-check {
        display: block;
        min-height: 1.5rem;
        padding-left: 1.5em;
        margin-bottom: .125rem
    }
    
    .form-check .form-check-input {
        float: left;
        margin-left: -1.5em
    }
    
    .form-check-input {
        width: 1em;
        height: 1em;
        margin-top: .25em;
        vertical-align: top;
        background-color: #fff;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        border: 1px solid rgba(0, 0, 0, .25);
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
        transition: background-color 0.15s ease-in-out, background-position 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .form-check-input {
            transition: none
        }
    }
    
    .form-check-input[type=checkbox] {
        border-radius: .25em
    }
    
    .form-check-input:active {
        filter: brightness(90%)
    }
    
    .form-check-input:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
    }
    
    .form-check-input:checked {
        background-color: #0d6efd;
        border-color: #0d6efd
    }
    
    .form-check-input:checked[type=checkbox] {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")
    }
    
    .form-check-input[type=checkbox]:indeterminate {
        background-color: #0d6efd;
        border-color: #0d6efd;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")
    }
    
    .form-check-input:disabled {
        pointer-events: none;
        filter: none;
        opacity: .5
    }
    
    .form-check-input[disabled]~.form-check-label,
    .form-check-input:disabled~.form-check-label {
        opacity: .5
    }
    
    .form-floating {
        position: relative
    }
    
    .form-floating>.form-control,
    .form-floating>.form-select {
        height: calc(3.5rem + 2px);
        padding: 1rem .75rem
    }
    
    .form-floating>label {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        padding: 1rem .75rem;
        pointer-events: none;
        border: 1px solid transparent;
        transform-origin: 0 0;
        transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .form-floating>label {
            transition: none
        }
    }
    
    .form-floating>.form-control::-webkit-input-placeholder {
        color: transparent
    }
    
    .form-floating>.form-control::-moz-placeholder {
        color: transparent
    }
    
    .form-floating>.form-control::placeholder {
        color: transparent
    }
    
    .form-floating>.form-control:not(:-moz-placeholder-shown) {
        padding-top: 1.625rem;
        padding-bottom: .625rem
    }
    
    .form-floating>.form-control:focus,
    .form-floating>.form-control:not(:placeholder-shown) {
        padding-top: 1.625rem;
        padding-bottom: .625rem
    }
    
    .form-floating>.form-control:-webkit-autofill {
        padding-top: 1.625rem;
        padding-bottom: .625rem
    }
    
    .form-floating>.form-select {
        padding-top: 1.625rem;
        padding-bottom: .625rem
    }
    
    .form-floating>.form-control:not(:-moz-placeholder-shown)~label {
        opacity: .65;
        transform: scale(.85) translateY(-.5rem) translateX(.15rem)
    }
    
    .form-floating>.form-control:focus~label,
    .form-floating>.form-control:not(:placeholder-shown)~label,
    .form-floating>.form-select~label {
        opacity: .65;
        transform: scale(.85) translateY(-.5rem) translateX(.15rem)
    }
    
    .form-floating>.form-control:-webkit-autofill~label {
        opacity: .65;
        transform: scale(.85) translateY(-.5rem) translateX(.15rem)
    }
    
    .btn {
        display: inline-block;
        font-weight: 400;
        line-height: 1.5;
        color: #212529;
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        background-color: transparent;
        border: 1px solid transparent;
        padding: .375rem .75rem;
        font-size: 1rem;
        border-radius: .25rem;
        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .btn {
            transition: none
        }
    }
    
    .btn:hover {
        color: #212529
    }
    
    .btn:focus {
        outline: 0;
        box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
    }
    
    .btn:disabled {
        pointer-events: none;
        opacity: .65
    }
    
    .fade {
        transition: opacity 0.15s linear
    }
    
    @media (prefers-reduced-motion:reduce) {
        .fade {
            transition: none
        }
    }
    
    .fade:not(.show) {
        opacity: 0
    }
    
    .collapse:not(.show) {
        display: none
    }
    
    .nav {
        display: flex;
        flex-wrap: wrap;
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }
    
    .nav-link {
        display: block;
        padding: .5rem 1rem;
        text-decoration: none;
        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .nav-link {
            transition: none
        }
    }
    
    .nav-link.disabled {
        color: #6c757d;
        pointer-events: none;
        cursor: default
    }
    
    .navbar {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        padding-top: .5rem;
        padding-bottom: .5rem
    }
    
    .navbar>.container,
    .navbar>.container-fluid,
    .navbar>.container-sm,
    .navbar>.container-md,
    .navbar>.container-lg,
    .navbar>.container-xl,
    .navbar>.container-xxl {
        display: flex;
        flex-wrap: inherit;
        align-items: center;
        justify-content: space-between
    }
    
    .navbar-brand {
        padding-top: .3125rem;
        padding-bottom: .3125rem;
        margin-right: 1rem;
        font-size: 1.25rem;
        text-decoration: none;
        white-space: nowrap
    }
    
    .navbar-nav {
        display: flex;
        flex-direction: column;
        padding-left: 0;
        margin-bottom: 0;
        list-style: none
    }
    
    .navbar-nav .nav-link {
        padding-right: 0;
        padding-left: 0
    }
    
    .navbar-collapse {
        align-items: center;
        width: 100%
    }
    
    .navbar-toggler {
        padding: .25rem .75rem;
        font-size: 1.25rem;
        line-height: 1;
        background-color: transparent;
        border: 1px solid transparent;
        border-radius: .25rem;
        transition: box-shadow 0.15s ease-in-out
    }
    
    @media (prefers-reduced-motion:reduce) {
        .navbar-toggler {
            transition: none
        }
    }
    
    .navbar-toggler:hover {
        text-decoration: none
    }
    
    .navbar-toggler:focus {
        text-decoration: none;
        outline: 0;
        box-shadow: 0 0 0 .25rem
    }
    
    .navbar-toggler-icon {
        display: inline-block;
        width: 1.5em;
        height: 1.5em;
        vertical-align: middle;
        background-repeat: no-repeat;
        background-position: center;
        background-size: 100%
    }
    
    @media (min-width:992px) {
        .navbar-expand-lg {
            flex-wrap: nowrap;
            justify-content: flex-start
        }
        .navbar-expand-lg .navbar-nav {
            flex-direction: row
        }
        .navbar-expand-lg .navbar-nav .nav-link {
            padding-right: .5rem;
            padding-left: .5rem
        }
        .navbar-expand-lg .navbar-collapse {
            display: flex!important
        }
        .navbar-expand-lg .navbar-toggler {
            display: none
        }
    }
    
    .navbar-light .navbar-brand {
        color: rgba(0, 0, 0, .9)
    }
    
    .navbar-light .navbar-brand:hover,
    .navbar-light .navbar-brand:focus {
        color: rgba(0, 0, 0, .9)
    }
    
    .navbar-light .navbar-nav .nav-link {
        color: rgba(0, 0, 0, .55)
    }
    
    .navbar-light .navbar-nav .nav-link:hover,
    .navbar-light .navbar-nav .nav-link:focus {
        color: rgba(0, 0, 0, .7)
    }
    
    .navbar-light .navbar-nav .nav-link.disabled {
        color: rgba(0, 0, 0, .3)
    }
    
    .navbar-light .navbar-nav .show>.nav-link,
    .navbar-light .navbar-nav .nav-link.active {
        color: rgba(0, 0, 0, .9)
    }
    
    .navbar-light .navbar-toggler {
        color: rgba(0, 0, 0, .55);
        border-color: rgba(0, 0, 0, .1)
    }
    
    .navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
    }
    
    .card {
        position: relative;
        display: flex;
        flex-direction: column;
        min-width: 0;
        word-wrap: break-word;
        background-color: #fff;
        background-clip: border-box;
        border: 1px solid rgba(0, 0, 0, .125);
        border-radius: .25rem
    }
    
    .card>hr {
        margin-right: 0;
        margin-left: 0
    }
    
    .card>.card-header+.list-group,
    .card>.list-group+.card-footer {
        border-top: 0
    }
    
    .card-body {
        flex: 1 1 auto;
        padding: 1rem 1rem
    }
    
    .card-title {
        margin-bottom: .5rem
    }
    
    .card-text:last-child {
        margin-bottom: 0
    }
    
    .card-header {
        padding: .5rem 1rem;
        margin-bottom: 0;
        background-color: rgba(0, 0, 0, .03);
        border-bottom: 1px solid rgba(0, 0, 0, .125)
    }
    
    .card-header:first-child {
        border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0
    }
    
    .alert {
        position: relative;
        padding: 1rem 1rem;
        margin-bottom: 1rem;
        border: 1px solid transparent;
        border-radius: .25rem
    }
    
    .alert-dismissible {
        padding-right: 3rem
    }
    
    .alert-dismissible .btn-close {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        padding: 1.25rem 1rem
    }
    
    .btn-close {
        box-sizing: content-box;
        width: 1em;
        height: 1em;
        padding: .25em .25em;
        color: #000;
        background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
        border: 0;
        border-radius: .25rem;
        opacity: .5
    }
    
    .btn-close:hover {
        color: #000;
        text-decoration: none;
        opacity: .75
    }
    
    .btn-close:focus {
        outline: none;
        box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
        opacity: 1
    }
    
    .btn-close:disabled,
    .btn-close.disabled {
        pointer-events: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        opacity: .25
    }
    
    .modal-open {
        overflow: hidden
    }
    
    .modal-open .modal {
        overflow-x: hidden;
        overflow-y: auto
    }
    
    .modal {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1050;
        display: none;
        width: 100%;
        height: 100%;
        overflow: hidden;
        outline: 0
    }
    
    .modal-dialog {
        position: relative;
        width: auto;
        margin: .5rem;
        pointer-events: none
    }
    
    .modal.fade .modal-dialog {
        transition: transform 0.3s ease-out;
        transform: translate(0, -50px)
    }
    
    @media (prefers-reduced-motion:reduce) {
        .modal.fade .modal-dialog {
            transition: none
        }
    }
    
    .modal.show .modal-dialog {
        transform: none
    }
    
    .modal-dialog-scrollable {
        height: calc(100% - 1rem)
    }
    
    .modal-dialog-scrollable .modal-content {
        max-height: 100%;
        overflow: hidden
    }
    
    .modal-dialog-scrollable .modal-body {
        overflow-y: auto
    }
    
    .modal-content {
        position: relative;
        display: flex;
        flex-direction: column;
        width: 100%;
        pointer-events: auto;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid rgba(0, 0, 0, .2);
        border-radius: .3rem;
        outline: 0
    }
    
    .modal-header {
        display: flex;
        flex-shrink: 0;
        align-items: center;
        justify-content: space-between;
        padding: 1rem 1rem;
        border-bottom: 1px solid #dee2e6;
        border-top-left-radius: calc(0.3rem - 1px);
        border-top-right-radius: calc(0.3rem - 1px)
    }
    
    .modal-header .btn-close {
        padding: .5rem .5rem;
        margin: -.5rem -.5rem -.5rem auto
    }
    
    .modal-title {
        margin-bottom: 0;
        line-height: 1.5
    }
    
    .modal-body {
        position: relative;
        flex: 1 1 auto;
        padding: 1rem
    }
    
    .modal-footer {
        display: flex;
        flex-wrap: wrap;
        flex-shrink: 0;
        align-items: center;
        justify-content: flex-end;
        padding: .75rem;
        border-top: 1px solid #dee2e6;
        border-bottom-right-radius: calc(0.3rem - 1px);
        border-bottom-left-radius: calc(0.3rem - 1px)
    }
    
    .modal-footer>* {
        margin: .25rem
    }
    
    .modal-scrollbar-measure {
        position: absolute;
        top: -9999px;
        width: 50px;
        height: 50px;
        overflow: scroll
    }
    
    @media (min-width:576px) {
        .modal-dialog {
            max-width: 500px;
            margin: 1.75rem auto
        }
        .modal-dialog-scrollable {
            height: calc(100% - 3.5rem)
        }
        .modal-dialog-centered {
            min-height: calc(100% - 3.5rem)
        }
    }
    
    @media (min-width:992px) {
        .modal-lg,
        .modal-xl {
            max-width: 800px
        }
    }
    
    .align-middle {
        vertical-align: middle!important
    }
    
    .float-none {
        float: none!important
    }
    
    .d-none {
        display: none!important
    }
    
    .justify-content-center {
        justify-content: center!important
    }
    
    .justify-content-between {
        justify-content: space-between!important
    }
    
    .align-content-center {
        align-content: center!important
    }
    
    .m-0 {
        margin: 0!important
    }
    
    .m-auto {
        margin: auto!important
    }
    
    .mb-0 {
        margin-bottom: 0!important
    }
    
    .mb-1 {
        margin-bottom: 0.25rem!important
    }
    
    .mb-2 {
        margin-bottom: 0.5rem!important
    }
    
    .mb-3 {
        margin-bottom: 1rem!important
    }
    
    .mt-4 {
        margin-top: 1.5rem!important
    }
    
    .p-3 {
        padding: 1rem!important
    }
    
    .p-5 {
        padding: 3rem!important
    }
    
    .px-0 {
        padding-right: 0!important;
        padding-left: 0!important
    }
    
    .pe-2 {
        padding-right: 0.5rem!important
    }
    
    .pe-5 {
        padding-right: 3rem!important
    }
    
    .pb-2 {
        padding-bottom: 0.5rem!important
    }
    
    .pb-3 {
        padding-bottom: 1rem!important
    }
    
    .pb-4 {
        padding-bottom: 1.5rem!important
    }
    
    .bg-light {
        background-color: #f8f9fa!important
    }
    
    @media (min-width:768px) {
        .float-md-end {
            float: right!important
        }
        .d-md-block {
            display: block!important
        }
        .d-md-flex {
            display: flex!important
        }
        .p-md-0 {
            padding: 0!important
        }
    }
    
    @media (min-width:992px) {
        .mb-lg-0 {
            margin-bottom: 0!important
        }
        .pt-lg-5 {
            padding-top: 3rem!important
        }
        .pe-lg-4 {
            padding-right: 1.5rem!important
        }
    }
    
    body {
        width: 100%;
        margin: 0;
        padding: 0!important;
        background-color: #FBFFF3;
        font-family: 'Montserrat', sans-serif;
        overflow-x: hidden
    }
    
    .row {
        padding-bottom: 30px;
        margin-left: auto;
        margin-right: auto;
        max-width: 1300px
    }
    
    .btn:focus {
        box-shadow: none
    }
    
    #section-mote {
        background-color: #246E51;
        height: 500px;
        background-image: url(../../assets/icon_green.png);
        background-repeat: no-repeat;
        background-position: 110% center;
        background-attachment: fixed;
        background-size: 61%
    }
    
    .background {
        position: relative;
        height: 100%;
        transform: translateZ(0);
        z-index: -1
    }
    
    .background img {
        width: 170%;
        position: absolute;
        top: -70%;
        left: -35%
    }
    
    .row {
        padding-bottom: 30px
    }
    
    .card .row {
        padding-bottom: 15px
    }
    
    .display-1 {
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        font-size: 3.123rem;
        color: #246E51
    }
    
    .underline {
        background-image: url(../../assets/underline.svg);
        background-size: 120% 130%;
        background-repeat: no-repeat
    }
    
    h2 {
        color: #246E51;
        text-align: center;
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
        font-size: 30px
    }
    
    h3 {
        font-weight: 500;
        font-size: 25px;
        margin: 0;
        color: #246E51
    }
    
    h4 {
        font-family: 'Poppins', sans-serif;
        font-weight: 600;
        color: #246E51;
        text-transform: uppercase;
        font-size: 15px
    }
    
    h6 {
        font-weight: 800
    }
    
    .card h3 {
        font-family: 'Poppins', sans-serif;
        font-size: 20px;
        font-weight: 600;
        text-transform: uppercase;
        color: #fff
    }
    
    p {
        font-size: .9375rem;
        color: #246E51
    }
    
    #mote>h2 {
        color: #A1FFBA;
        font-family: 'Montserrat', sans-serif;
        text-transform: uppercase;
        font-size: 3.125rem;
        padding: 0;
        text-align: left;
        width: 50%
    }
    
    #mote>p {
        color: #fff;
        width: 450px;
        padding: 0
    }
    
    .contact-column>h2 {
        padding-left: 0;
        font-size: 2.8125rem;
        text-transform: uppercase;
        color: #246E51;
        text-align: left
    }
    
    .contact-column>p {
        margin-top: 20px
    }
    
    #general-contacts {
        margin-top: 60px;
        font-weight: 700
    }
    
    .navbar {
        height: 80px;
        font-family: 'Poppins', sans-serif;
        font-weight: 500
    }
    
    .navbar-light .navbar-nav .nav-link:focus,
    .navbar-light .navbar-nav .nav-link:hover {
        color: #00775C
    }
    
    .navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23246E51' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
    }
    
    a {
        text-decoration: none
    }
    
    #logo {
        max-width: 20%;
        align-items: right;
        cursor: pointer
    }
    
    #logo>img {
        width: 150px
    }
    
    #nav-bar {
        font-family: 'Poppins', sans-serif;
        font-weight: 500
    }
    
    nav.bg-light {
        background-color: inherit!important
    }
    
    .navbar-toggler {
        border: 1px solid #00775C
    }
    
    .navbar-toggler:focus {
        box-shadow: 0 0 0 .25rem #A1FFBA
    }
    
    .navbar-light .navbar-toggler {
        border-color: rgba(0, 0, 0, .3)
    }
    
    .navbar-light .navbar-nav .nav-link {
        color: #00775C
    }
    
    .nav-link,
    .nav-link:visited {
        font-size: 0.9375rem!important;
        margin: auto!important;
        background-size: 0 119%;
        transition: background-size 0.4s ease-in-out
    }
    
    @media screen and (min-width:998px) {
        .nav-link:hover {
            background-image: url(../../assets/underline.svg);
            background-size: 100% 119%;
            background-repeat: no-repeat
        }
    }
    
    .main-btn {
        margin: auto;
        padding-top: 4px
    }
    
    nav .btn {
        transition: color .20 ease-in-out, background-color .20s ease-in-out
    }
    
    #mainButton {
        width: 320px;
        margin-right: 20px;
        float: right;
        border: 2px #00775C solid;
        border-radius: 32px;
        padding: 10px;
        text-align: center;
        font-family: 'Poppins', sans-serif;
        font-size: .875rem;
        text-transform: uppercase;
        font-weight: 600;
        color: #00775C
    }
    
    #mainButton:hover {
        background-color: #00775C;
        color: #fff
    }
    
    #mainButton>a {
        font-size: 80%
    }
    
    main {
        margin: 0;
        max-height: calc(100vh - 80px)
    }
    
    #contactInfo {
        margin-bottom: 100px;
        background-color: unset
    }
    
    #contactInfo .row {
        position: relative
    }
    
    .contact-column {
        padding-top: 60px;
        padding-left: 5%
    }
    
    .contact-column:first-of-type {
        padding-left: 15%
    }
    
    .contact-column:nth-of-type(2) {
        padding-top: 13%
    }
    
    #success-form {
        display: none;
        padding-top: 22%;
        background-color: #246E51;
        color: #fff;
        height: 341.225px
    }
    
    form {
        width: 60%!important
    }
    
    .form-control,
    .form-select {
        color: #246E51;
        border-color: #69B97E
    }
    
    .form-control:focus,
    .form-select:focus {
        border-color: #69B97E;
        box-shadow: 0 0 0 .25rem #A1FFBA
    }
    
    .form-select {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23246E51' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
        padding: 16px 28px 16px 12px
    }
    
    .form-control:focus {
        color: #246E51
    }
    
    label {
        color: #246E51
    }
    
    label.error {
        color: red;
        font-size: 1rem;
        display: block;
        margin-top: 5px;
        position: static;
        padding: 0
    }
    
    #floatingInput1-error {
        opacity: 1;
        transform: none
    }
    
    #floatingInput2-error {
        opacity: 1;
        transform: none
    }
    
    textarea {
        resize: none
    }
    
    textarea::placeholder {
        color: #246E51!important
    }
    
    #flexCheckDefault:checked {
        background-color: #246E51;
        border-color: #246E51
    }
    
    #flexCheckDefault:focus {
        border-color: #246E51;
        outline: 0;
        box-shadow: 0 0 0 .25rem rgb(36 110 81 / 25%)
    }
    
    .btn-form {
        font-family: 'Poppins', sans-serif;
        font-weight: 600;
        font-size: .9365rem;
        text-transform: uppercase;
        letter-spacing: 1.26px;
        border-radius: 32px;
        padding: 7px;
        background-color: #246E51;
        color: #fff;
        text-align: center
    }
    
    .btn-form:hover {
        background-color: #0DFF9E;
        color: #246E51
    }
    
    .btn-close:focus {
        outline: none;
        box-sizing: rgba(0, 0, 0, 0);
        opacity: 1
    }
    
    #success-form .btn-close {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        padding: 1.25rem 1rem
    }
    
    .error[type="checkbox"] {
        border-color: red;
        box-shadow: 0 0 0 .25rem rgb(255 0 0 / 25%)
    }
    
    .contact-social-media {
        color: #fff;
        display: flex;
        font-size: 1.875rem;
        justify-content: left;
        height: 20%
    }
    
    .contact-social-media .social-media-item:hover {
        color: #0DFF9E
    }
    
    #contactImg {
        position: absolute;
        bottom: -200px;
        right: 72%;
        width: 50%
    }
    
    footer {
        background-color: #246E51;
        color: #fff
    }
    
    .footer {
        padding: 0
    }
    
    #footer-flex {
        display: flex;
        padding-top: 30px
    }
    
    footer p {
        color: #fff
    }
    
    .footer-column {
        padding-top: 5%;
        display: grid;
        grid-template-rows: 75px 157px 56px
    }
    
    .footer-column:first-of-type {
        padding-left: 14%
    }
    
    .footer-column:nth-child(2) {
        padding-left: 6%
    }
    
    #footer-icon {
        width: 100%
    }
    
    #footer-icon>img {
        width: 150px
    }
    
    #duvida {
        padding-right: 50px
    }
    
    .contacts-container {
        display: grid;
        grid-template-columns: 10% auto;
        grid-template-rows: 50% auto;
        align-items: center;
        row-gap: 5px;
        margin-bottom: 40px
    }
    
    .contact-icon {
        font-size: 1.5625rem;
        justify-self: center;
        color: #0DFF9E
    }
    
    .contact-label {
        padding: auto
    }
    
    .social-media {
        color: #0DFF9E;
        display: flex;
        font-size: 1.875rem;
        justify-content: left;
        height: 20%;
        margin-top: 6px;
        grid-row-start: 3
    }
    
    .social-media-item {
        width: 55px;
        text-align: center;
        border-radius: 50%;
        height: 55px;
        background-color: #246E51;
        margin-right: 20px;
        z-index: 1000
    }
    
    .social-media-item:first-of-type {
        padding-left: 0
    }
    
    .social-media .social-media-item:first-of-type {
        width: 21px
    }
    
    #facebook {
        background-image: url(../../assets/Facebook_white_35x35.svg);
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: center;
        transition: background-image 0.3s ease
    }
    
    #facebook:hover {
        background-image: url("../../assets/Facebook\ Icon_35x35.svg")
    }
    
    #linkedin {
        background-image: url(../../assets/linkedin_white_35x35.svg);
        background-repeat: no-repeat;
        background-position-x: 11px;
        background-position-y: center;
        transition: background-image 0.3s ease
    }
    
    #linkedin:hover {
        background-image: url(../../assets/Linkedin_35x35.svg)
    }
    
    .footerButton {
        width: 250px;
        font-family: 'Poppins', sans-serif;
        font-weight: 600;
        font-size: .9375rem;
        text-transform: uppercase;
        letter-spacing: 1.26px;
        border: 2px solid #0DFF9E;
        border-radius: 32px;
        padding: 7px;
        background-color: #246E51;
        color: #fff;
        text-align: center;
        margin-top: 15px
    }
    
    .footerButton:hover {
        background-color: #0DFF9E;
        color: #246E51
    }
    
    #copyright{margin-top:2%;padding-left:11.3%;padding-bottom:40px; justify-content: unset;}
    
    #copyright>div{width:fit-content}
    
    #copyright>div:first-of-type{display:flex}
    
    #copyright p{color:#9beab0;margin:auto;height:fit-content;}
    
    #copyright img{height:50px}
    
    #copyright>div:nth-of-type(2){padding:0}
    
    #footer-nav {
        height: 80%;
        flex-direction: column;
        gap: 12px;
        grid-row-start: 2
    }
    
    .footer-nav-item {
        margin-bottom: 8px
    }
    
    .footer-nav-item>a,
    .footer-nav-item>a:visited {
        font-weight: 500;
        color: #fff
    }
    
    .facebook {
        margin-top: 3px;
        margin-right: 2px
    }
    
    .linkedin {
        margin-top: 3px;
        margin-left: 2px;
        width: 52%
    }
    
    #myCookieConsent {
        z-index: 999;
        min-height: 20px;
        padding: 10px 20px;
        background: #246E51;
        overflow: hidden;
        position: fixed;
        color: #FFF;
        bottom: 0;
        right: 0;
        display: none;
        left: 0;
        text-align: center;
        font-size: 15px
    }
    
    #myCookieConsent div {
        padding: 4px 0 0
    }
    
    #myCookieConsent a {
        color: #0DFF9E;
        display: inline-block;
        padding: 0 10px;
        font-weight: 700;
        transition: color 0.2s ease
    }
    
    #myCookieConsent a:hover {
        color: #07272D
    }
    
    #myCookieConsent a#cookieButton {
        display: inline-block;
        color: #246E51;
        font-size: 1.1em;
        background-color: #FBFFF3;
        text-decoration: none;
        cursor: pointer;
        padding: 2px 20px;
        float: right;
        border-radius: 20px;
        transition: all 0.2s ease-in-out
    }
    
    #myCookieConsent a#cookieButton:hover {
        background: #0DFF9E;
        color: #07272D
    }
    
    #privacypage {
        z-index: 1000;
        text-align: center;
        margin-top: -21.5%;
        margin-left: -35%;
        width: 70%;
        height: 90%;
        background-color: #9BEAB0;
        position: fixed;
        border-radius: 19px;
        top: 50%;
        left: 50%;
        box-shadow: 0 0 1em #246E51
    }
    
    body.modal-open {
        overflow: auto
    }
    
    .modal-header {
        padding-left: 2rem
    }
    
    .modal-body {
        padding-right: 2rem;
        padding-left: 2rem
    }
    
    .modal h6 {
        color: #246E51
    }
    
    .modal p {
        color: #000
    }
    
    @media screen and (max-width:1146px) {
        #contactImg {
            display: none
        }
    }
    
    @media screen and (max-width:991px) {
        .nav-link {
            color: white!important;
            text-align: center;
            font-size: 1.25rem!important
        }
    }
    
    @media screen and (max-width:992px) {
        #mainButton {
            display: none!important
        }
        .nav-item {
            background-color: #246E51
        }
        .nav-item:first-of-type {
            padding-top: 10px
        }
        .nav-item:last-of-type {
            padding-bottom: 10px
        }
    }
    
    @media screen and (max-width:998px) {
        nav #navbarTogglerDemo03 {
            padding-left: 0;
            padding-right: 0
        }
        .nav-link:last-of-type {
            color: #246E51
        }
        .contact-column:first-of-type {
            padding-left: 47px
        }
        .contact-column:nth-of-type(2) {
            padding-top: 6%
        }
    }
    
    @media screen and (max-width:1199px) {
        #foto-1 {
            width: 100%
        }
        #foto-1>img {
            display: none
        }
        #testemunho-image-container {
            position: initial;
            width: 100%;
            max-height: 50vh;
            transform: rotate(0)
        }
        #testemunho-image-container img {
            height: 100%
        }
    }
    
    @media screen and (max-width:768px) {
        .nav-link {
            font-size: inherit;
            text-align: left;
            padding-left: 2%!important
        }
        h2 {
            text-align: start
        }
        #logo {
            margin-left: 0
        }
        .jumbotext {
            margin-top: 0;
            padding-top: 0!important;
            padding-left: 19px!important
        }
        .display-1 {
            font-size: 2rem
        }
        main {
            max-height: none;
            min-height: 80vh
        }
        .jumbotext>p {
            padding-right: 0
        }
        #secondButton-text {
            margin-top: 0!important
        }
        section:first-of-type>div {
            padding-left: 24px
        }
        #servicos-container {
            padding-left: 0;
            padding-right: 0
        }
        #servicos-container>div {
            padding-bottom: 25px
        }
        #section-mote {
            background-position: 200px center;
            background-attachment: fixed;
            background-size: 125%
        }
        #mote {
            padding-left: 7%;
            padding-top: 15%
        }
        #mote>h2 {
            font-size: 2rem
        }
        #mote>p {
            color: #fff;
            width: 100%;
            padding-right: 27%
        }
        #testemunhos-container>div:first-of-type {
            position: initial;
            height: 40vh
        }
        #testemunhos-container>div:nth-of-type(2) {
            padding-right: 0!important
        }
        #testemunhos-container image-container {
            width: 100%;
            height: 30vh
        }
        #foto-1 {
            height: 100%
        }
        #testemunho-image-container {
            height: 100%
        }
        #testemunho-body {
            height: auto
        }
        .testemunho-type {
            margin-bottom: 1rem
        }
        #button-set {
            justify-content: space-between
        }
        #myCookieConsent {
            text-align: left
        }
        #myCookieConsent div {
            width: 75%
        }
        #myCookieConsent a {
            padding: 0
        }
        #myCookieConsent a#cookieButton {
            position: absolute;
            right: 19px;
            top: 33%
        }
        .contact-column:first-of-type {
            padding: 3rem 2rem 2rem 2.7rem;
            padding-right: 3rem
        }
        .contact-column:nth-child(2) {
            margin: 0 auto;
            padding: 0 50px 2rem 2.7rem
        }
        form {
            margin-top: 0;
            width: 100%!important
        }
        #contactInfo {
            margin-bottom: 0
        }
        .social-media {
            padding-top: 2px;
            justify-content: center
        }
        #copyright {
            margin-top: 0;
            padding-top: 0
        }
        .footer-column:first-of-type {
            padding-left: 10%
        }
        .footer-column:nth-of-type(2) {
            padding-top: 5%;
            padding-left: 10%;
            display: block
        }
        .social-media {
            justify-content: left
        }
    }
    
    h1 {
        margin-top: 50px;
        text-align: center;
        margin-bottom: 16px
    }
    
    h2 {
        text-align: left;
        margin-top: 16px;
        margin-bottom: 15px
    }
    
    main.row {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: center
    }
    
    .row {
        justify-content: center
    }
    
    lottie-player {
        width: auto;
        height: auto
    }
    
    .content {
        margin-top: 140px
    }
    
    section:nth-of-type(odd):not(#contactInfo) {
        background-color: #246E51
    }
    
    section:nth-of-type(odd):not(#contactInfo) p {
        color: #fff
    }
    
    section:nth-of-type(odd):not(#contactInfo) h2 {
        color: #0DFF9E
    }
    
    ul {
        margin-bottom: 42px
    }
    
    main {
        max-height: unset
    }
    
    .list1 li {
        color: #0DFF9E
    }
    
    .list2 {
        padding-left: 18px
    }
    
    .list2 li {
        color: #246E51;
        margin-top: 10px
    }
    
    .sctimg {
        width: 77px;
        height: 68px
    }
    
    .sctimg img {
        height: 100%;
        width: 100%
    }
    
    .btnBright {
        width: 297px;
        background-color: #0DFF9E;
        margin-right: 20px;
        margin-bottom: 150px;
        border: 2px #0DFF9E solid;
        border-radius: 32px;
        padding: 10px;
        text-align: center;
        font-family: 'Poppins', sans-serif;
        font-size: .875rem;
        text-transform: uppercase;
        font-weight: 600;
        color: #246E51
    }
    
    .btnBright:hover {
        background-color: transparent;
        color: #fff
    }
    
    .mainButton {
        width: 297px;
        margin-right: 20px;
        border: 2px #00775C solid;
        border-radius: 32px;
        background-color: #00775C;
        padding: 10px;
        text-align: center;
        font-family: 'Poppins', sans-serif;
        font-size: .875rem;
        text-transform: uppercase;
        font-weight: 600;
        color: #fff
    }
    
    .mainButton:hover {
        background-color: transparent;
        color: #00775C
    }
    
    #instimeline h3 {
        font-family: "Poppins", sans-serif;
        font-weight: 600;
        font-size: .9375rem
    }
    
    #instimeline p {
        font-size: 13.5px
    }
    
    main>div.row {
        margin-top: 55px
    }
    
    #instimeline>div {
        position: relative;
        padding-left: 50px;
        border-left: 3px dashed #246E51
    }
    
    #instimeline>div:last-of-type {
        border-left: 3px dashed transparent
    }
    
    #instimeline>div>div {
        position: absolute;
        top: 0;
        left: -19.5px;
        background-color: #FBFFF3;
        border-radius: 50%;
        border: 2px solid #246E51;
        color: #246E51;
        width: 35px;
        height: 35px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 18px;
        font-family: 'Poppins', sans-serif;
        font-weight: 600
    }
    
    #instimeline h3 {
        margin-bottom: 5px
    }
    
    #instimeline>div:last-of-type {
        position: relative;
        padding-left: 50px
    }
    
    .instalacao>.row>div:nth-of-type(2) {
        width: 105px
    }
    
    #sintetica>.row>div:last-of-type {
        height: 525px;
        width: 483.43px;
        padding: 0;
        margin-top: 200px;
        margin-right: 50px
    }
    
    #sintetica picture img {
        height: 119%
    }
    
    #natural>.row>div:first-of-type {
        height: 713.65px;
        width: 400px;
        padding: 0;
        margin-top: 180px
    }
    
    #natural picture img {
        width: 129.5%
    }
    
    .underlineanchor {
        text-decoration: underline;
        color: #246E51;
        font-weight: 500;
        margin-bottom: 180px;
        display: inline-block
    }
    
    #decks>.row>div:last-of-type {
        margin-left: 66px
    }
    
    #decks>.row>div:last-of-type img {
        margin-top: 160px;
        height: 61%
    }
    
    #relvados>.row>div:nth-of-type(2) {
        width: 40px
    }
    
    #relvados>.row>div:last-of-type {
        height: 390px;
        width: 448px;
        padding: 0;
        margin-top: 175px
    }
    
    #relvados>.row>div:last-of-type img {
        width: 100%
    }
    
    #fitosanitarios>.row>div:first-of-type {
        height: 525px;
        width: 450px;
        padding: 0;
        margin-top: 145px;
        margin-left: 15px
    }
    
    #fitosanitarios>.row>div:first-of-type img {
        width: 100%;
        height: 100%
    }
    
    #fitosanitarios>.row>div:last-of-type {
        margin-left: 70px
    }
    
    #rega>.row>div:first-of-type {
        margin-left: 15px
    }
    
    #rega>.row>div:last-of-type {
        height: 422px;
        width: 477px;
        padding: 0;
        margin-top: 160px;
        margin-left: 40px
    }
    
    .highlight {
        color: #0DFF9E;
        font-weight: 600
    }
    
    .bold {
        font-weight: 600
    }
    
    #rega>.row>div:last-of-type img {
        width: 120%;
        height: 106%
    }
    
    #poda>.row>div:nth-of-type(2) {
        width: 55px
    }
    
    #poda>.row>div:last-of-type {
        position: relative;
        height: 571px;
        width: 477px;
        padding: 0;
        margin-top: 200px
    }
    
    #poda picture img {
        height: 104%
    }
    
    #folhas {
        position: absolute;
        top: -150px;
        left: -160px
    }
    
    #circles {
        position: relative;
        margin-bottom: 15px
    }
    
    #plant {
        position: relative;
        z-index: -1
    }
    
    .circle {
        background-color: #0DFF9E;
        border-radius: 50%;
        position: absolute
    }
    
    .big {
        width: 160px;
        height: 160px;
        top: 0;
        right: 70px;
        z-index: -1
    }
    
    .small {
        width: 85px;
        height: 85px;
        top: 131px;
        left: 47px;
        z-index: -1
    }
    
    #regaexc {
        display: none
    }
    
    @media screen and (max-width:1199px) {
        .circle {
            display: none
        }
        .instalacao div:nth-of-type(2) {
            width: 125px
        }
        #decks>.row>div:last-of-type img {
            width: 100%;
            object-fit: contain
        }
    }
    
    @media screen and (max-width:998px) {
        main>div:first-of-type p {
            display: none
        }
        main>div.col-9 {
            width: 90%
        }
        #circles,
        #instimeline,
        #plant {
            width: 100%
        }
        main>div:last-of-type {
            margin-top: 0
        }
        lottie-player {
            height: 40vh;
            width: inherit
        }
        .circle {
            display: block
        }
        .big {
            width: 150px;
            height: 150px;
            top: 0;
            left: 49%
        }
        .small {
            width: 85px;
            height: 85px;
            top: 42%;
            left: 37%
        }
        #instimeline>div,
        #instimeline>div:last-of-type {
            border: none;
            padding-left: 25px
        }
        .sectionHeader {
            display: flex;
            margin-bottom: 20px;
            align-items: center
        }
        .sectionHeader>div:last-of-type {
            margin-left: 20px
        }
        h2 {
            margin: 0
        }
        .sctimg {
            flex-shrink: 0
        }
        #sintetica>.row>div:last-of-type {
            margin-right: 0
        }
        #natural>.row>div:first-of-type {
            width: 325px
        }
        #decks>.row>div:last-of-type img {
            margin-top: 135px
        }
        #fitosanitarios>.row>div:last-of-type {
            margin-left: 45px;
            width: min-content
        }
        #fitosanitarios .sectionHeader {
            width: max-content
        }
        #relvados>.row>.content {
            width: min-content
        }
        #relvados>.row>div:nth-of-type(2) {
            display: none
        }
        #relvados>.row>div:last-of-type {
            width: 50%
        }
        #fitosanitarios>.row>div:first-of-type {
            width: 50%;
            margin-left: 0;
            height: auto
        }
        #fitosanitarios>.row>div:first-of-type img {
            height: unset
        }
        #fitosanitarios>.row>div:last-of-type {
            margin-left: 15px;
            margin-top: 100px
        }
        #fitosanitarios a {
            margin-bottom: 50px
        }
        #rega>.row>.content {
            width: 40%;
            margin-top: 100px
        }
        #rega a {
            margin-bottom: 50px
        }
        #rega>.row>div:last-of-type {
            width: 50%;
            height: auto;
            margin-left: 3px
        }
        #rega>.row>div:last-of-type img {
            height: unset
        }
        #poda>.row>div:first-of-type {
            width: 40%
        }
        #poda>.row>div:nth-of-type(2) {
            display: none
        }
        #poda>.row>div:last-of-type {
            margin-top: 140px;
            width: 50%;
            margin-left: 20px
        }
        #poda picture img {
            height: unset;
            width: 100%
        }
    }
    
    @media screen and (max-width:801px) {
        .big {
            left: 47%
        }
        .small {
            left: 33%
        }
        section>.row>div {
            width: 100%
        }
        .content {
            order: 2;
            width: 90%!important
        }
        #sintetica>.row>div:first-of-type {
            margin-top: 50px
        }
        #sintetica .btnBright {
            margin-bottom: 75px
        }
        #sintetica>.row>div:last-of-type {
            width: 70vw;
            margin-top: 50px
        }
        #sintetica picture img {
            height: unset;
            width: 100%
        }
        #natural>.row>div:first-of-type {
            width: 70vw;
            margin-top: 50px;
            height: unset
        }
        #natural picture img {
            width: 100%
        }
        #natural>.row>div:nth-of-type(2) {
            display: none
        }
        #natural .content {
            margin-top: 0
        }
        #natural a {
            margin-bottom: 50px
        }
        #decks>.row>div:first-of-type {
            margin-top: 50px
        }
        #decks a {
            margin-top: 30px;
            margin-bottom: 50px
        }
        #decks>.row>div:last-of-type {
            margin-left: 0;
            width: 70vw;
            margin-top: 50px;
            padding: 0
        }
        #decks>.row>div:last-of-type img {
            margin-top: 0;
            height: unset;
            width: 100%
        }
        #relvados>.row>div:first-of-type {
            margin-top: 50px
        }
        #relvados a {
            margin-bottom: 50px;
            margin-top: 26px
        }
        #relvados>.row>div:last-of-type {
            height: unset;
            margin-top: 50px;
            width: 70vw
        }
        #fitosanitarios>.row>div:first-of-type {
            margin-top: 50px;
            width: 70vw
        }
        #fitosanitarios>.row>div:last-of-type {
            margin-left: 0;
            margin-top: 50px
        }
        #rega>.row>div:first-of-type {
            margin-top: 50px;
            margin-left: 0
        }
        #rega a {
            margin-top: 20px
        }
        #rega>.row>div:last-of-type {
            margin-left: 0;
            width: 70vw;
            margin-top: 50px
        }
        #rega>.row>div:last-of-type img {
            width: 100%
        }
        #poda>.row>div:first-of-type {
            margin-top: 50px
        }
        #poda>.row>div:last-of-type {
            margin-left: 0;
            width: 70vw;
            height: unset;
            margin-top: 50px
        }
        #poda>.row>div:last-of-type>img {
            display: none
        }
        .btnContainer {
            text-align: center
        }
    }
    
    @media screen and (max-width:701px) {
        .small {
            left: 29%
        }
        section {
            padding: 0!important
        }
        .content {
            width: unset!important;
            padding: 0 30px
        }
        #sintetica>.row {
            padding: 0
        }
        #sintetica>.row>div:first-of-type {
            margin-top: 0
        }
        #sintetica>.row>div:last-of-type,
        #natural>.row>div:first-of-type,
        #decks>.row>div:last-of-type {
            margin-top: 0;
            width: 100vw;
            height: unset!important
        }
        #natural>.row>div:first-of-type {
            height: 660px
        }
        section>.row {
            padding-left: 0!important
        }
        #relvados>.row>div:last-of-type {
            margin-top: 0;
            width: 100vw
        }
        #rega>.row>div:last-of-type {
            display: none
        }
        #regaexc {
            display: block;
            width: 100vw
        }
        #regaexc img {
            width: 100%
        }
        #poda>.row>div:last-of-type {
            position: relative;
            width: 100vw;
            margin-top: 0
        }
    }
    
    @media screen and (max-width:501px) {
        .small {
            left: 19%
        }
    }

/* === Base dos produtos ===
   (acrescentado ao instalacao.css, para que o menu, a secção
    Fale Connosco e o rodapé fiquem exactamente iguais)
   ========================================================= */

    /* Neutralizar margens do instalacao.css que não se aplicam aqui */
    main.produtos { max-width: 1300px; margin: 0 auto; padding: 0 12px }
    main.produtos .content { margin-top: 0 }

    /* ---------- Intro ---------- */
    .pIntro { text-align: center; max-width: 760px; margin: 0 auto 40px }
    .pIntro p { margin: 0 auto; max-width: 60ch }
    .pNumeros { display: flex; gap: 40px; justify-content: center; flex-wrap: wrap; margin-top: 30px }
    .pNumeros > div { border-left: 3px solid #0DFF9E; padding-left: 14px; text-align: left }
    .pNumeros strong {
        display: block; font-family: 'Poppins', sans-serif; font-weight: 700;
        font-size: 1.3rem; color: #246E51;
    }
    .pNumeros span { font-size: .8rem; color: #5C7A6B }

    /* ---------- Filtros ---------- */
    .pFiltros {
        display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
        margin: 0 auto 30px; max-width: 1300px; padding: 0 12px;
    }
    .pFiltros .rotulo {
        font-family: 'Poppins', sans-serif; font-size: .7rem; letter-spacing: .12em;
        text-transform: uppercase; color: #5C7A6B; margin-right: 4px;
    }
    .pFiltro {
        background: #fff; border: 2px solid #DCE8DC; border-radius: 32px; padding: 8px 20px;
        font-family: 'Poppins', sans-serif; font-size: .8rem; font-weight: 600; color: #246E51;
        cursor: pointer; transition: .18s;
    }
    .pFiltro:hover { border-color: #0DFF9E }
    .pFiltro[aria-pressed="true"] { background: #246E51; border-color: #246E51; color: #fff }
    .linkFav {
        margin-left: auto; display: inline-flex; align-items: center; gap: 8px; background: #fff;
        border: 2px solid #DCE8DC; border-radius: 32px; padding: 8px 18px;
        font-family: 'Poppins', sans-serif; font-size: .8rem; font-weight: 600;
        color: #246E51; transition: .18s;
    }
    .linkFav:hover { border-color: #0DFF9E }
    .linkFav svg { width: 15px; height: 15px; fill: #E0454A; stroke: #E0454A; stroke-width: 1.8 }
    .contaFav {
        background: #246E51; color: #fff; border-radius: 32px; min-width: 20px; height: 20px;
        display: inline-grid; place-items: center; font-size: .68rem; padding: 0 6px;
    }

    /* ---------- Grelha ---------- */
    .pGrelha {
        display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 26px;
        max-width: 1300px; margin: 0 auto; padding: 0 12px 30px;
    }
    .pRelva {
        background: #fff; border: 1px solid #E3ECE1; border-radius: 20px; overflow: hidden;
        display: flex; flex-direction: column; color: inherit;
        transition: transform .2s ease, box-shadow .2s ease;
    }
    .pRelva:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(36,110,81,.12) }
    .pRelva figure { margin: 0; position: relative; aspect-ratio: 4/3; background: #E7F3EC }
    .pRelva figure img { width: 100%; height: 100%; object-fit: cover; display: block }
    .pAltura {
        position: absolute; top: 12px; left: 12px; background: #246E51; color: #fff;
        font-family: 'Poppins', sans-serif; font-size: .68rem; font-weight: 600;
        text-transform: uppercase; padding: 5px 12px; border-radius: 32px;
    }
    .pRelvaTxt { padding: 20px; display: flex; flex-direction: column; gap: 6px; flex: 1 }
    .pRelvaTxt h3 {
        font-family: 'Poppins', sans-serif; font-size: 20px; font-weight: 600;
        text-transform: uppercase; color: #246E51;
    }
    .pRelvaTxt .specs { font-size: .8rem; color: #5C7A6B; flex: 1; margin: 0 }
    .pRelvaTxt .preco {
        font-family: 'Poppins', sans-serif; font-size: 1.3rem; font-weight: 700; color: #246E51; margin: 0;
    }
    .pRelvaTxt .preco small { font-size: .7rem; font-weight: 500; color: #5C7A6B }
    .pRelvaTxt .verFicha {
        font-family: 'Poppins', sans-serif; font-size: .78rem; font-weight: 600;
        text-transform: uppercase; color: #00A86B;
    }

    /* ---------- Complementos ---------- */
    #complementos { background: #fff; border-top: 1px solid #E3ECE1; padding: 50px 0; margin-bottom: 0 }
    #complementos .interior { max-width: 1300px; margin: 0 auto; padding: 0 12px }
    #complementos h2 { text-align: center }
    #complementos .sub { text-align: center; color: #5C7A6B; margin-bottom: 30px }
    .listaComp { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 0 44px }
    .itemComp {
        display: flex; align-items: center; gap: 14px; padding: 16px 0; border-bottom: 1px dashed #E3ECE1;
    }
    .itemComp img { width: 50px; height: 50px; object-fit: contain; border-radius: 8px; background: #FBFFF3 }
    .itemComp .txt { flex: 1 }
    .itemComp strong { display: block; font-size: .95rem; color: #246E51 }
    .itemComp span { font-size: .8rem; color: #5C7A6B }
    .itemComp b { font-family: 'Poppins', sans-serif; color: #246E51; white-space: nowrap }

    /* Botões dentro das páginas de produtos: sem a margem de 150px do instalacao.css */
    .produtos .btnBright,
    #complementos .btnBright,
    .pAcoes .btnBright,
    .barraFav .btnBright,
    .pVazio .btnBright { margin-bottom: 0 }
    .btnContainer { display: flex; justify-content: center; margin-top: 40px; margin-bottom: 0 }

    .pAviso {
        font-size: .75rem; color: #5C7A6B; line-height: 1.7; max-width: 900px;
        margin: 40px auto 60px; padding: 0 12px; text-align: center;
    }

    .btnLinha {
        display: inline-block; border: 2px #246E51 solid; border-radius: 32px; padding: 10px 26px;
        text-align: center; font-family: 'Poppins', sans-serif; font-size: .875rem;
        text-transform: uppercase; font-weight: 600; color: #246E51; background: transparent;
    }
    .btnLinha:hover { background-color: #246E51; color: #fff }

    /* ---------- Ficha de produto ---------- */
    .pFicha { max-width: 1300px; margin: 0 auto; padding: 0 12px 60px }
    .pVoltar { display: inline-block; margin: 30px 0 10px; font-size: .85rem; color: #5C7A6B }
    .pVoltar:hover { color: #246E51 }
    .pFichaGrid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: start }
    .pFichaGrid figure { margin: 0; border-radius: 20px; overflow: hidden; border: 1px solid #E3ECE1 }
    .pFichaGrid figure img { width: 100%; display: block }
    .pFicha h1 { text-align: left; margin-top: 10px }
    .pEtiqueta {
        font-family: 'Poppins', sans-serif; font-size: .72rem; letter-spacing: .14em;
        text-transform: uppercase; color: #00A86B; font-weight: 600; margin: 0;
    }
    .precoGrande {
        font-family: 'Poppins', sans-serif; font-size: 2.2rem; font-weight: 700; color: #246E51; margin: 0 0 4px;
    }
    .precoGrande span { font-size: 1rem; color: #5C7A6B; font-weight: 500 }
    .pIva { font-size: .8rem; color: #5C7A6B; margin: 0 0 24px }
    .pDesc { line-height: 1.7; margin: 0 0 26px }
    .pTabela { width: 100%; border-collapse: collapse; margin-bottom: 26px }
    .pTabela th, .pTabela td {
        text-align: left; padding: 12px 0; border-bottom: 1px solid #E3ECE1; font-size: .9rem; color: #246E51;
    }
    .pTabela th { color: #5C7A6B; font-weight: 600; width: 42% }
    .pCalc { background: #fff; border: 1px solid #E3ECE1; border-radius: 20px; padding: 20px; margin-bottom: 24px }
    .pCalc label {
        display: block; font-family: 'Poppins', sans-serif; font-size: .75rem; text-transform: uppercase;
        letter-spacing: .08em; color: #5C7A6B; font-weight: 600; margin-bottom: 10px;
    }
    .pCalc input {
        width: 130px; padding: 11px 14px; border: 2px solid #E3ECE1; border-radius: 12px;
        font-size: 1rem; font-family: 'Montserrat', sans-serif;
    }
    .pCalc output {
        display: block; margin-top: 12px; font-family: 'Poppins', sans-serif;
        font-size: 1.1rem; font-weight: 700; color: #246E51;
    }
    .pCalc small { color: #5C7A6B; font-weight: 400; font-family: 'Montserrat', sans-serif }
    .pAcoes { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; margin-bottom: 20px }
    .pAcoes .btnBright { width: auto; padding: 10px 30px; margin: 0 }

    /* ---------- Favoritos ---------- */
    .pFavTopo { display: flex; justify-content: center; margin-bottom: 20px }
    .limparFav {
        background: 0; border: 0; font-size: .82rem; color: #5C7A6B; cursor: pointer; text-decoration: underline;
    }
    .limparFav:hover { color: #B4302B }
    .pVazio {
        max-width: 700px; margin: 0 auto 60px; text-align: center; padding: 60px 24px;
        background: #fff; border: 1px dashed #E3ECE1; border-radius: 20px;
    }
    .pVazio svg { width: 44px; height: 44px; fill: none; stroke: #DCE8DC; stroke-width: 1.5; margin-bottom: 16px }
    .pVazio h2 { text-align: center; font-size: 22px }
    .pVazio p { margin-bottom: 24px; color: #5C7A6B }
    .barraFav {
        display: flex; gap: 16px; align-items: center; flex-wrap: wrap; justify-content: center;
        max-width: 1300px; margin: 10px auto 0; padding: 24px; background: #fff;
        border: 1px solid #E3ECE1; border-radius: 20px;
    }
    .barraFav p { margin: 0; flex: 1; min-width: 240px; color: #5C7A6B }
    .barraFav .btnBright { margin: 0 }

    /* ---------- Corações ---------- */
    .fav-btn {
        position: absolute; top: 10px; right: 10px; z-index: 2; width: 38px; height: 38px;
        border: 0; border-radius: 50%; background: rgba(255,255,255,.94);
        display: grid; place-items: center; cursor: pointer;
        box-shadow: 0 2px 8px rgba(36,110,81,.18); transition: transform .16s;
    }
    .fav-btn:hover { transform: scale(1.08); background: #fff }
    .fav-btn svg { width: 19px; height: 19px; fill: none; stroke: #246E51; stroke-width: 1.9; transition: .16s }
    .fav-btn[aria-pressed="true"] svg { fill: #E0454A; stroke: #E0454A }
    .fav-linha {
        position: static; width: auto; height: auto; border-radius: 32px; padding: 10px 24px;
        display: inline-flex; align-items: center; gap: 9px; box-shadow: none;
        border: 2px solid #E3ECE1; background: #fff;
        font-family: 'Poppins', sans-serif; font-size: .875rem; font-weight: 600;
        text-transform: uppercase; color: #246E51;
    }
    .fav-linha:hover { transform: none; border-color: #0DFF9E }
    .fav-linha .txt-fora { display: inline }
    .fav-linha .txt-dentro { display: none }
    .fav-linha[aria-pressed="true"] .txt-fora { display: none }
    .fav-linha[aria-pressed="true"] .txt-dentro { display: inline }
    .fav-aviso {
        position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 120%);
        background: #246E51; color: #fff; padding: 12px 22px; border-radius: 32px;
        font-family: 'Poppins', sans-serif; font-size: .82rem; font-weight: 600; z-index: 60;
        box-shadow: 0 16px 40px rgba(36,110,81,.25); transition: transform .28s ease; pointer-events: none;
    }
    .fav-aviso.mostra { transform: translate(-50%, 0) }

    @media (max-width: 900px) {
        .pFichaGrid { grid-template-columns: 1fr; gap: 28px }
        .btnBright, .barraFav .btnBright { width: 100% }
        .listaComp { grid-template-columns: 1fr }
        .pFiltros .linkFav { margin-left: 0 }
    }


/* === Configurador em conversa ===
/* Xpress Garden - configurador em conversa (/produtos/orcamento.php) */
.conv{padding:20px 12px 90px;max-width:820px;margin:0 auto}

/* Barra de progresso */
.prog-barra{
  position:sticky;top:0;z-index:20;background:rgba(247,246,241,.94);backdrop-filter:blur(8px);
  padding:14px 0;margin-bottom:24px;border-bottom:1px solid #E3ECE1;
}
.prog-topo{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.prog-topo b{font-size:.82rem;color:#164e33}
.prog-topo span{font-size:.75rem;color:#5C7A6B}
.prog-trilho{height:4px;background:#E3ECE1;border-radius:32px;overflow:hidden}
.prog-cheia{height:100%;width:0;background:#246E51;border-radius:32px;transition:width .35s cubic-bezier(.2,.8,.3,1)}

/* Fio da conversa */
.fio-conv{display:flex;flex-direction:column;gap:18px}

.balao{
  max-width:82%;padding:14px 18px;border-radius:18px;line-height:1.5;font-size:.98rem;
  animation:sobe .3s ease both;
}
.balao-xg{
  background:#fff;border:1px solid #E3ECE1;border-bottom-left-radius:6px;align-self:flex-start;
  box-shadow:0 2px 10px rgba(12,51,37,.05);
}
.balao-eu{
  background:#246E51;color:#fff;border-bottom-right-radius:6px;align-self:flex-end;font-weight:600;
  display:flex;align-items:center;gap:10px;
}
.balao-eu button{
  background:0;border:0;color:rgba(255,255,255,.75);font-size:.78rem;cursor:pointer;
  text-decoration:underline;font-family:'Montserrat',sans-serif;padding:0;white-space:nowrap;
}
.balao-eu button:hover{color:#fff}
.balao-xg small{display:block;color:#5C7A6B;font-size:.82rem;margin-top:4px}
@keyframes sobe{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* "a escrever…" */
.escreve{display:flex;gap:4px;padding:16px 18px;align-self:flex-start}
.escreve i{width:7px;height:7px;border-radius:50%;background:#E3ECE1;animation:pisca 1.2s infinite}
.escreve i:nth-child(2){animation-delay:.18s}
.escreve i:nth-child(3){animation-delay:.36s}
@keyframes pisca{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

/* Zona de resposta */
.resposta{
  align-self:flex-end;width:100%;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;
  animation:sobe .3s ease both;
}
.bolha-op{font-family:'Poppins',sans-serif;text-transform:uppercase;
  border:1.5px solid #246E51;background:#fff;color:#164e33;border-radius:32px;
  padding:12px 20px;font-size:.92rem;font-weight:600;cursor:pointer;font-family:'Montserrat',sans-serif;transition:.15s;
}
.bolha-op:hover{background:#246E51;color:#fff}
.bolha-op:focus-visible{outline:2px solid #246E51;outline-offset:2px}
.bolha-op.escolhida{background:#246E51;color:#fff}
.bolha-op.secundaria{border-color:#E3ECE1;color:#5C7A6B;font-weight:500}
.bolha-op.secundaria:hover{border-color:#00A86B;background:#fff;color:#246E51}

/* Grelha de relvas dentro da conversa */
.op-relvas{
  width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;
  animation:sobe .3s ease both;
}
.mini-relva{
  border:1.5px solid #E3ECE1;border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;
  padding:0 0 10px;text-align:left;font-family:'Montserrat',sans-serif;transition:.15s;
}
.mini-relva:hover{border-color:#00A86B}
.mini-relva.escolhida{border-color:#246E51;box-shadow:0 0 0 3px rgba(46,139,98,.15)}
.mini-relva img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;margin-bottom:8px}
.mini-relva b{display:block;padding:0 10px;font-size:.9rem}
.mini-relva small{display:block;padding:0 10px;font-size:.74rem;color:#5C7A6B}
.mini-relva .fav{color:#D23B37;font-size:.7rem;padding:2px 10px 0;display:block}

/* Campos livres na conversa */
.campo-conv{
  width:100%;display:flex;gap:10px;flex-wrap:wrap;animation:sobe .3s ease both;
}
.campo-conv input,.campo-conv textarea{
  flex:1;min-width:200px;padding:13px 16px;border:1.5px solid #E3ECE1;border-radius:12px;
  font-size:1rem;font-family:'Montserrat',sans-serif;background:#fff;
}
.campo-conv input:focus,.campo-conv textarea:focus{outline:2px solid #00A86B;outline-offset:1px}
.campo-conv .enviar-campo{
  border:0;background:#246E51;color:#fff;border-radius:12px;padding:13px 22px;
  font-weight:700;cursor:pointer;font-family:'Montserrat',sans-serif;
}
.campo-conv .enviar-campo:hover{background:#00A86B}
.erro-campo{width:100%;text-align:right;color:#B4302B;font-size:.82rem;margin:0}

/* Dia e hora */
.grelha-dias{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;animation:sobe .3s ease both}
.dia{
  border:1.5px solid #E3ECE1;background:#fff;border-radius:12px;padding:12px 6px;text-align:center;
  cursor:pointer;font-family:'Montserrat',sans-serif;transition:.15s;
}
.dia:hover{border-color:#00A86B}
.dia.escolhida{border-color:#246E51;background:#F1F7F3}
.dia b{display:block;font-size:.95rem;color:#164e33}
.dia small{display:block;font-size:.72rem;color:#5C7A6B;text-transform:capitalize}

/* Resumo final */
.cartao-final{
  width:100%;background:#fff;border:1px solid #E3ECE1;border-radius:20px;
  padding:24px;box-shadow:0 16px 40px rgba(36,110,81,.12);animation:sobe .3s ease both;
}
.cartao-final h3{margin:0 0 16px;font-size:1.05rem}
.cartao-final dl{margin:0 0 18px}
.cartao-final dl div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #E3ECE1}
.cartao-final dt{font-size:.8rem;color:#5C7A6B;flex:0 0 42%}
.cartao-final dd{margin:0;font-size:.86rem;font-weight:600;text-align:right}
.total-final{background:#FBFFF3;border-radius:12px;padding:16px;margin-bottom:20px}
.total-final span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#5C7A6B}
.total-final strong{display:block;font-size:1.7rem;color:#246E51;margin:4px 0 6px}
.total-final small{font-size:.75rem;color:#5C7A6B;line-height:1.6;display:block}
.enviar-final{
  display:block;width:100%;box-sizing:border-box;text-align:center;text-decoration:none;
  border:0;border-radius:32px;padding:16px;font-weight:700;font-size:1rem;
  cursor:pointer;font-family:'Montserrat',sans-serif;background:#246E51;color:#fff;transition:.15s;
}
a.enviar-final:hover{color:#fff}
.enviar-final:hover{background:#00A86B}
.enviar-final.wa{background:#1FA855}
.enviar-final.email{background:#246E51}
.enviar-final.wa:hover{background:#178C46}
.enviar-final.email:hover{background:#1d5c43;color:#fff}
.recomecar{
  display:block;width:100%;text-align:center;background:0;border:0;margin-top:12px;
  font-size:.82rem;color:#5C7A6B;cursor:pointer;font-family:'Montserrat',sans-serif;text-decoration:underline;
}
.recomecar:hover{color:#246E51}
.micro-final{font-size:.74rem;color:#5C7A6B;text-align:center;line-height:1.6;margin:14px 0 0}

@media(max-width:600px){
  .balao{max-width:92%}
  .op-relvas{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
}
@media(prefers-reduced-motion:reduce){
  .balao,.resposta,.op-relvas,.campo-conv,.cartao-final,.grelha-dias{animation:none}
  .escreve i{animation:none}
}

    /* =====================================================
       PRODUTOS - correcções e páginas por categoria
       ===================================================== */

    /* O instalacao.css pinta de verde as <section> ímpares.
       Nas páginas de produtos isso não se aplica. */
    .produtos section,
    section.pSeccao {
        background-color: transparent !important;
    }
    section.pSeccao p { color: #246E51 !important }
    section.pSeccao h2 { color: #246E51 !important }

    /* ---------- Migalhas ---------- */
    .pMigalhas {
        max-width: 1300px; margin: 30px auto 0; padding: 0 12px;
        font-family: 'Poppins', sans-serif; font-size: .75rem;
        text-transform: uppercase; letter-spacing: .08em; color: #5C7A6B;
    }
    .pMigalhas a { color: #00A86B; font-weight: 600 }
    .pMigalhas a:hover { text-decoration: underline }
    .pMigalhas span { margin: 0 6px; color: #C4D9C8 }

    /* ---------- Escolha de categoria (página-mãe) ---------- */
    .pCategorias {
        display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
        gap: 30px; max-width: 1000px; margin: 0 auto 20px;
    }
    .pCategoria {
        background: #fff; border: 1px solid #E3ECE1; border-radius: 20px; overflow: hidden;
        display: flex; flex-direction: column; color: inherit;
        transition: transform .2s ease, box-shadow .2s ease;
    }
    .pCategoria:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(36,110,81,.14) }
    .pCategoria figure { margin: 0; aspect-ratio: 16/9; background: #E7F3EC; overflow: hidden }
    .pCategoria figure img { width: 100%; height: 100%; object-fit: cover; display: block }
    .pCategoria .txt { padding: 26px; display: flex; flex-direction: column; gap: 8px; flex: 1 }
    .pCategoria h2 { margin: 0; text-align: left; font-size: 26px }
    .pCategoria p { margin: 0; flex: 1; color: #5C7A6B }
    .pCategoria .conta {
        font-family: 'Poppins', sans-serif; font-size: .78rem; font-weight: 600; color: #246E51;
    }
    .pCategoria .verFicha {
        font-family: 'Poppins', sans-serif; font-size: .78rem; font-weight: 600;
        text-transform: uppercase; color: #00A86B; margin-top: 6px;
    }

    /* ---------- Cards de complementos ---------- */
    .pComp figure { background: #fff }
    .pComp figure img { object-fit: contain; padding: 20px }
    .pComp .pAltura {
        background: #fff; color: #246E51; border: 1px solid #E3ECE1; text-transform: none;
    }
    .pComp .preco small { text-transform: none }

    /* ---------- Ligação para a outra categoria ---------- */
    .pProxima { max-width: 1300px; margin: 40px auto 0; padding: 0 12px; text-align: center }
    .pProxima a {
        display: inline-block; padding: 18px 30px; background: #fff;
        border: 1px solid #E3ECE1; border-radius: 20px; color: #5C7A6B; font-size: .92rem;
        transition: .18s;
    }
    .pProxima a:hover { border-color: #0DFF9E }
    .pProxima b {
        color: #00A86B; font-family: 'Poppins', sans-serif; font-weight: 600;
        text-transform: uppercase; font-size: .82rem; margin-left: 6px;
    }

    /* =====================================================
       MENU - dropdown "Produtos"
       ===================================================== */
    .xgDrop { position: relative }
    .xgDrop > .nav-link { display: inline-flex; align-items: center; gap: 7px }
    .xgDrop > .nav-link i { font-size: .6rem; opacity: .6; transition: transform .2s ease }
    .xgDrop:hover > .nav-link i { transform: rotate(180deg) }
    .xgDrop.ativo > .nav-link { color: #246E51 !important; font-weight: 600 }

    .xgDropMenu {
        position: absolute; top: 100%; left: 50%; transform: translate(-50%, 8px);
        min-width: 190px; background: #fff; border: 1px solid #E3ECE1; border-radius: 16px;
        box-shadow: 0 16px 40px rgba(36,110,81,.14); padding: 8px;
        opacity: 0; visibility: hidden; transition: opacity .18s ease, transform .18s ease;
        z-index: 100;
    }
    .xgDrop:hover .xgDropMenu,
    .xgDrop:focus-within .xgDropMenu {
        opacity: 1; visibility: visible; transform: translate(-50%, 0);
    }
    /* espaço invisível para o rato não perder o menu */
    .xgDropMenu::before {
        content: ''; position: absolute; top: -10px; left: 0; right: 0; height: 10px;
    }
    .xgDropMenu a {
        display: block; padding: 12px 16px; border-radius: 12px; transition: background .15s ease;
    }
    .xgDropMenu a:hover { background: #F1F8F3 }
    .xgDropMenu a.sel { background: #F1F8F3 }
    .xgDropMenu a {
        font-family: 'Poppins', sans-serif; font-size: .92rem; font-weight: 500; color: #246E51;
    }
    .xgDropMenu a.sel { font-weight: 600 }

    @media (max-width: 991px) {
        .xgDropMenu {
            position: static; transform: none; opacity: 1; visibility: visible;
            box-shadow: none; border: 0; border-left: 2px solid #E3ECE1; border-radius: 0;
            margin: 4px 0 8px 12px; padding: 0; display: none; min-width: 0;
        }
        .xgDrop.aberto .xgDropMenu { display: block }
        .xgDropMenu a { padding: 10px 14px }
    }

    /* Botão "Encomendar" nos complementos */
    .btnEncomendar {
        display: block; text-align: center; margin-top: 12px;
        background: #0DFF9E; border: 2px solid #0DFF9E; border-radius: 32px; padding: 9px;
        font-family: 'Poppins', sans-serif; font-size: .78rem; font-weight: 600;
        text-transform: uppercase; color: #246E51; transition: .16s;
    }
    .btnEncomendar:hover { background: transparent; color: #246E51 }

/* Grelha de complementos dentro da conversa */
.op-comps { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)) }
.op-comps .mini-relva img { object-fit: contain; padding: 12px; background: #fff }
.op-comps .mini-relva small { text-transform: none }

/* Negrito nos balões */
.balao-xg b { color: #246E51; font-weight: 700 }

    /* Caixa "prefere que instalemos nós?" */
    .pInstalar {
        max-width: 1276px; margin: 10px auto 0;
        display: flex; align-items: center; justify-content: space-between;
        gap: 24px; flex-wrap: wrap;
        background: #fff; border: 1px solid #E3ECE1; border-radius: 20px;
        padding: 24px 30px;
    }
    .pInstalar p { margin: 0; flex: 1; min-width: 260px; color: #5C7A6B }
    .pInstalar b { color: #246E51 }
    .pInstalar .btnLinha { flex: 0 0 auto }

    /* Botão dentro dos cards */
    .btnEncomendar { cursor: pointer }
    .pRelva .btnEncomendar { margin-top: 14px }

    @media (max-width: 700px) {
        .pInstalar { flex-direction: column; text-align: center; padding: 24px }
        .pInstalar .btnLinha { width: 100% }
    }

    .pInstalarWrap { max-width: 1300px; margin: 0 auto; padding: 0 12px }

/* ---------- Quantidades dos complementos ---------- */
.lista-qtd{
  width:100%;display:flex;flex-direction:column;gap:10px;
  animation:sobe .3s ease both;
}
.linha-qtd{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  background:#fff;border:1px solid #E3ECE1;border-radius:16px;padding:14px 18px;
}
.linha-qtd img{
  width:48px;height:48px;object-fit:contain;flex:0 0 48px;
  border-radius:10px;background:#FBFFF3;
}
.linha-qtd .txt{flex:1;min-width:150px}
.linha-qtd .txt b{
  display:block;font-family:'Poppins',sans-serif;font-size:.92rem;color:#246E51;font-weight:600;
}
.linha-qtd .txt small{display:block;font-size:.76rem;color:#5C7A6B;margin-top:2px}

.stepper{display:flex;align-items:center;gap:6px}
.stepper button{
  width:34px;height:34px;flex:0 0 34px;border:2px solid #E3ECE1;background:#fff;
  border-radius:50%;font-size:1.1rem;font-weight:700;color:#246E51;cursor:pointer;
  display:grid;place-items:center;line-height:1;transition:.15s;
}
.stepper button:hover{border-color:#0DFF9E;background:#F1F8F3}
.stepper input{
  width:64px;padding:8px 6px;text-align:center;border:2px solid #E3ECE1;border-radius:10px;
  font-family:'Poppins',sans-serif;font-size:1rem;font-weight:600;color:#246E51;
  -moz-appearance:textfield;
}
.stepper input::-webkit-outer-spin-button,
.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.stepper input:focus{outline:2px solid #0DFF9E;outline-offset:1px}
.stepper .conta{font-size:.74rem;color:#5C7A6B;min-width:60px}

.linha-qtd .sub{
  font-family:'Poppins',sans-serif;font-size:1rem;color:#246E51;white-space:nowrap;
  min-width:80px;text-align:right;
}

@media(max-width:640px){
  .linha-qtd{gap:10px}
  .linha-qtd .txt{min-width:100%;order:1}
  .linha-qtd img{order:0}
  .stepper{order:2;flex:1}
  .linha-qtd .sub{order:3}
}
