/* 
template name: Travessia 2025
template author: @oxe.digital
Template Site: https://lenaura.com.br/travessia2025

1. default
2. navbar
3. hero
4. about slide
5. schedule
6. owl carousel
7. informacoes
8. patrocinio

*/

/* ===== 1. default ===== */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;500;600;700&family=Raleway:wght@300;600;700&display=swap');

:root {
    --color-white: #ffffff;
    --color-black: #181818;

    --color-primary: #387BA5;
    --color-primary-hover: #4997a0;

    --color-gray: #8f8f8f;
    --color-gray-hover: #696969;

    --color-bg-blue: #dee9ee80;

    --font-family-general: 'Open Sans', sans-serif;
    --font-family-emphasis: "Phenomena", sans-serif;

    --scroll-html-main: 65px;
}

@font-face {
    font-family: 'Phenomena';
    src: url('../fonts/Phenomena-Bold.eot');
    src: url('../fonts/Phenomena-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/Phenomena-Bold.woff2') format('woff2'),
        url('../fonts/Phenomena-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

.btn-primary {
    font-weight: 500;
    padding: 8px 24px !important;
    color: white;
    background: var(--color-primary) !important;
    border: 2px solid var(--color-primary);
    border-radius: 22px;
    transition: .3s;
}

.btn-primary:hover,
.btn-primary:focus-visible,
.btn-primary:active {
    color: white !important;
    background: var(--color-primary-hover) !important;
    border-color: var(--color-primary-hover) !important;
}

.btn-secondary {
    font-weight: 500;
    padding: 8px 24px !important;
    color: white;
    background: var(--color-gray) !important;
    border: 2px solid var(--color-gray);
    border-radius: 22px;
    transition: .3s;
}

.btn-secondary:hover,
.btn-secondary:focus-visible,
.btn-secondary:active {
    color: white !important;
    background: var(--color-gray-hover) !important;
    border-color: var(--color-gray-hover) !important;
}

.btn-outline-light {
    font-weight: 500;
    padding: 8px 24px !important;
    color: white;
    background: #ffffff30 !important;
    border: 2px solid #ffffff30;
    border-radius: 22px;
    transition: .3s;
}

.btn-outline-light:hover,
.btn-outline-light:focus-visible,
.btn-outline-light:active {
    color: var(--color-black) !important;
    background: var(--color-white) !important;
    border-color: var(--color-white) !important;
}

.btn-outline-primary {
    --bs-btn-color: var(--color-primary);
    --bs-btn-border-color: var(--color-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-primary);
    --bs-btn-hover-border-color: var(--color-primary);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--color-primary);
    --bs-btn-active-border-color: var(--color-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--color-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--color-primary);
    --bs-gradient: none;
}

.linkGeral {
    text-decoration: none;
    font-weight: 600;
    color: var(--color-primary);
    transition: .3s;
}

.linkGeral:hover {
    color: var(--color-primary-hover);
}

* {
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    outline: transparent !important;
    box-shadow: none !important;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--scroll-html-main);
    -webkit-scroll-padding-top: var(--scroll-html-main);
}

body {
    font-family: var(--font-family-general);
    background-color: var(--color-white);
}

main {
    margin-top: var(--scroll-html-main);
}

section {
    margin: 50px 0;
}

.container {
    max-width: 1200px;
}

.loader {
    background: url('../images/branding/spin.svg') 50% 50% no-repeat white;
    z-index: 999999;
}

.quickaccess {
    position: fixed;
    text-align: center;
    width: 100%;
    height: 70px;
    line-height: 70px;
    bottom: -70px;
    background: var(--color-primary);
    z-index: 1000;
    transition: .3s;
}

.quickaccess a {
    font-size: 17px;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: -0.2px;
    color: var(--color-white);
}

.quickaccess.show {
    bottom: 0;
}

.quickaccess:hover {
    background: var(--color-primary-hover);
    transition: .3s;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
}

h2 {
    font-family: var(--font-family-emphasis);
    font-size: calc(2.225rem + 3.5vw);
    letter-spacing: -0.55px;
    line-height: 48px;
    text-transform: uppercase;
}

h3 {
    letter-spacing: -0.55px;
}

.bg-light {
    background: var(--color-bg-blue) !important;
}

.title {
    padding: 40px 0;
}

.title p {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px !important;
    color: var(--color-gray);
}

.title p::after {
    content: "";
    width: 100px;
    height: 2px;
    display: inline-block;
    background: var(--color-primary-hover);
    margin: 4px 8px;
}

.title h2 {
    margin: 0;
    font-size: 42px;
    font-weight: 600;
    letter-spacing: -0.55px;
    line-height: 38px;
    color: var(--color-primary-hover);
}

.back-to-top {
    position: fixed;
    display: none;
    padding: 15px 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 11;
}

.box-cookies {
    box-shadow: 0px 0px 30px 20px rgba(0, 0, 0, 0.1) !important;
}

.box-cookies.hide {
    border-radius: 25px;
    display: none !important;
}

.modal a {
    text-decoration: none;
}

/* ===== 2. navbar ===== */

.navbar-brand img {
    width: 130px;
}

.nav-link {
    font-size: 17px;
    font-weight: 600;
}

.nav-link:hover,
.nav-link:active {
    color: var(--color-primary-hover);
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
    color: var(--color-primary-hover);
}

.nav-link:focus {
    color: var(--bs-nav-link-color);
}

/* ===== 3. hero ===== */

.hero {
    position: relative;
    background: url(../images/banners/hero-start-sm.webp) center center;
    background-size: cover;
    transition: 0.9s
}

.inner-hero {
    height: 70vh;
    width: 100%;
    margin: 0;
    padding: 0;
}

.flex {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.waves {
    position: relative;
    width: 100%;
    height: 50px;
    margin-bottom: -7px;
    /*Fix for safari gap*/
    min-height: 50px;
    max-height: 150px;
}

/* Animation */

.parallax>use {
    animation: move-forever 25s cubic-bezier(.55, .5, .45, .5) infinite;
}

.parallax>use:nth-child(1) {
    animation-delay: -2s;
    animation-duration: 7s;
}

.parallax>use:nth-child(2) {
    animation-delay: -3s;
    animation-duration: 10s;
}

.parallax>use:nth-child(3) {
    animation-delay: -4s;
    animation-duration: 13s;
}

.parallax>use:nth-child(4) {
    animation-delay: -5s;
    animation-duration: 20s;
}

@keyframes move-forever {
    0% {
        transform: translate3d(-90px, 0, 0);
    }

    100% {
        transform: translate3d(85px, 0, 0);
    }
}

/* ===== 5. schedule ===== */

.tab-pane .row {
    transition: .3s;
}

.tab-pane .row:hover {
    background-color: var(--color-bg-blue);
    transition: .3s;
}

.tab-pane time {
    font-weight: 300;
}

.tab-pane h5 {
    font-size: var(--color-white);
    font-weight: 700;
    letter-spacing: -0.2px !important;
}

.tab-pane p {
    font-weight: 300;
}

.tab-pane h6 {
    font-weight: 600 !important;
    color: #999;
}

.tab-pane img {
    width: 45px;
    height: 45px;
    border-radius: 50%;
}

/* ===== 6. owl carousel ===== */

#palestrantes {
    padding: 0;
}

#palestrantes .item {
    background: var(--color-bg-blue);
}

#palestrantes img {
    border-radius: 100px;
    border: solid 6px var(--color-bg-blue);
}

#palestrantes h5 {
    font-size: var(--color-white) !important;
    font-weight: 700;
}

#palestrantes p {
    margin: 0;
}

body .read-more-container {
    max-width: 600px;
    margin: 20px auto;
    font-family: Arial, sans-serif;
    line-height: 1.6
}

body .read-more-content {
    display: none;
    transition: .3s
}

body .read-more-content.show {
    display: inline;
    transition: .3s
}

body .read-more-btn {
    color: #007794;
    cursor: pointer;
    font-weight: 600
}

body .read-more-btn:hover {
    text-decoration: none
}

/* ===== 7. informacoes ===== */

#informacoes h4 {
    color: var(--color-primary);
}

#informacoes img {
    max-width: 250px;
}

#informacoes .card {
    text-decoration: none;
    border: none;
    background: var(--color-bg-blue);
    transition: .3s;
}

#informacoes .card i {
    font-size: 32px;
    color: var(--color-primary-hover);
}

#informacoes .card-contrate {
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    padding: 20px 10px;
    color: var(--color-white);
    background: var(--color-primary);
}

#informacoes .badge {
    font-size: 14px;
    margin-top: 0px;
    background: var(--color-primary);
}

/* ===== Adicione a nova regra aqui ===== */
#informacoes #pricing .card s {
    color: var(--color-gray);
}

#informacoes #pricing .card span {
    color: var(--color-primary-hover);
}

/* ===== 8. patrocinio ===== */

#patrocinio h4 {
    color: var(--color-primary);
}

/* ===== 9. contato ===== */

#contato .icon-box {
    padding: 70px 20px 40px 20px;
    margin-top: 35px;
    margin-bottom: 25px;
    text-align: center;
    height: auto;
    position: relative;
    background: var(--color-bg-blue);
    transition: 0.2s;
}

#contato .icon {
    position: absolute;
    top: -24px;
    left: calc(50% - 36px);
    border-radius: 50%;
    border: 2px solid var(--color-white);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    width: 72px;
    height: 72px;
    background: var(--color-primary);
    transition: 0.2s;
}

#contato .icon i {
    color: var(--color-white);
    font-size: 26px;
    line-height: 0;
}

#contato a {
    color: #343a40;
    text-decoration: none;
}

#contato .icon-box:hover .icon {
    background: var(--color-white);
    border: 2px solid var(--color-primary-hover);
}

#contato .icon-box:hover .icon i {
    color: var(--color-primary-hover);
}

#contato .icon-box:hover a {
    color: var(--color-black);
}

#contato .description {
    line-height: 24px;
    font-size: 14px;
}

/* contato formulario inner */

#contato .form-group {
    position: relative;
}

#contato .form-group input, 
#contato .form-group textarea {
    width: 100%;
    padding: 10px 0;
    font-size: 17px;
    color: #333333;
    margin-bottom: 30px;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #9a9a9a;
    outline: none;
    background: transparent;
}

#contato .form-group label {
    position: absolute;
    top: 0;
    left: 0px;
    padding: 10px 0;
    font-size: 16px;
    color: #4e4e4e;
    pointer-events: none;
    transition: all .2s ease-out;
}

#contato .form-group input:focus~label,
#contato .form-group input:valid~label,
#contato .form-group textarea:focus~label,
#contato .form-group textarea:valid~label {
    top: -20px;
    left: 0px;
    font-weight: 600;
    color: var(--color-primary);
    font-size: 12px;
    transition: all .2s ease-out;
}

/* ===== 10. footer ===== */

footer {
    background-color: var(--color-bg-blue);
}



/* ===== 11. action ===== */

#action {
    position: relative;
    background: url('../images/banners/bg-dark.webp') no-repeat center center;
    background-size: cover;
    background-position: 25%;
    background-attachment: scroll;
    background-color: rgba(0, 0, 0, 0.20);
    background-blend-mode: multiply;
    padding: 150px 0;
}

#action a {
    color: var(--color-white);
    text-decoration: none;
    display: block;
    width: 100% !important;
}

/* Esta nova regra estende a área clicável do link */
#action a::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1; /* Garante que a camada de link cubra a seção */
}