 /* ═══════════════════════════════════════════════
       BRAND TOKENS  (cores Trade Tur Goiás)
    ═══════════════════════════════════════════════ */
 :root {
     --teal: #1A9BA1;
     --teal-dk: #0F6D72;
     --teal-lt: #3DC0C7;
     --orange: #E8521A;
     --orange-dk: #B83C0E;
     --dark: #1C1C1C;
     --mid: #3D4A4B;
     --light: #F0F8F8;
     --white: #FFFFFF;
     --grey: #E8EEED;
 }

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 html {
     scroll-behavior: smooth;
 }

 body {
     font-family: 'Barlow', sans-serif;
     background: var(--white);
     color: var(--dark);
     overflow-x: hidden;
 }

 /* ── TOPBAR ─────────────────────────────────── */
 .topbar {
     background: var(--teal-dk);
     color: rgba(255, 255, 255, .75);
     font-size: .77rem;
     font-weight: 500;
     letter-spacing: .04em;
     padding: .4rem 0;
 }

 .topbar a {
     color: rgba(255, 255, 255, .8);
     text-decoration: none;
     transition: color .2s;
 }

 .topbar a:hover {
     color: #fff;
 }

 /* ── NAVBAR ──────────────────────────────────── */
 .navbar {
     background: rgba(15, 109, 114, .97);
     backdrop-filter: blur(10px);
     padding: .75rem 0;
     position: sticky;
     top: 0;
     z-index: 1050;
     border-bottom: 3px solid var(--orange);
 }

 /* logo do navbar — nunca se move */
 .navbar-logo {
     height: 54px;
     filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .35));
     display: block;
 }

 .navbar-logo {
     height: 54px;
     filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .35));
     display: block;
 }

 .navbar-brand {
     pointer-events: auto;
     /* garante que cliques funcionam */
     cursor: pointer;
     z-index: 1060;
     /* acima do logo-float (z-index: 30) */
     position: relative;
 }

 /* Logo flutuante */
 .logo-float {
     position: absolute;
     bottom: -38px;
     left: 50%;
     transform: translateX(-50%);
     z-index: 1010;
     /*pointer-events: none;*/
     /* alinha à esquerda no mesmo nível do conteúdo */
     left: calc((100vw - 1320px) / 2);
     /* margem do container Bootstrap xl */
     transform: none;
 }


 .navbar-nav .nav-link {
     color: rgba(255, 255, 255, .82) !important;
     font-size: .82rem;
     font-weight: 600;
     letter-spacing: .06em;
     text-transform: uppercase;
     padding: .45rem .85rem !important;
     transition: color .2s;
 }

 .navbar-nav .nav-link:hover {
     color: #fff !important;
 }

 .navbar-nav .nav-link.active-link {
     color: #fff !important;
     border-bottom: 2px solid var(--orange);
 }

.btn-nav-cta {
  background: var(--orange) !important;
  color: #fff !important;
  border-radius: 3px;
  padding: .45rem 1.2rem !important;
  font-weight: 700 !important;
  letter-spacing: .07em;
  transition: background .2s, transform .15s;
}

.btn-nav-cta:hover {
  background: var(--orange-dk) !important;
  transform: translateY(-1px);
}


 .navbar-toggler {
     border-color: rgba(255, 255, 255, .3);
     order: 2;
     flex-shrink: 0;
 }

 /* mantém logo e toggler sempre na mesma linha, sem descer */
 .navbar .container {
     flex-wrap: nowrap;
     align-items: center;
 }

 /* força o collapse a ocupar a linha de baixo sozinho */
 .navbar-collapse {
     flex-basis: 100%;
     order: 3;
 }

 /* logo sempre no topo, nunca empurrada */
 .navbar-brand {
     order: 1;
     flex-shrink: 0;
 }



 /* ── DROPDOWN ────────────────────────────────── */
 .navbar .dropdown-toggle::after {
     border-top-color: rgba(255, 255, 255, .6);
     vertical-align: .18em;
     transition: transform .22s;
 }

 .navbar .dropdown-toggle[aria-expanded="true"]::after {
     transform: rotate(180deg);
     border-top-color: #fff;
 }

 .navbar .dropdown-toggle[aria-expanded="true"] {
     color: #fff !important;
 }

 .navbar .dropdown-menu {
     background: rgba(15, 109, 114, .98);
     backdrop-filter: blur(12px);
     border: 1px solid rgba(255, 255, 255, .12);
     border-top: 3px solid var(--orange);
     border-radius: 0 0 6px 6px;
     min-width: 252px;
     padding: 0;
     margin-top: 6px !important;
     box-shadow: 0 12px 32px rgba(0, 0, 0, .28);
     animation: ddFade .18s ease both;
 }

 @keyframes ddFade {
     from {
         opacity: 0;
         transform: translateY(-6px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .navbar .dropdown-item {
     display: flex;
     align-items: center;
     gap: .75rem;
     padding: .72rem 1.1rem;
     color: rgba(255, 255, 255, .82);
     font-family: 'Barlow', sans-serif;
     font-size: .82rem;
     font-weight: 500;
     letter-spacing: .02em;
     border-bottom: 1px solid rgba(255, 255, 255, .07);
     transition: background .18s, color .18s;
     white-space: normal;
 }

 .navbar .dropdown-item:last-child {
     border-bottom: none;
 }

 .navbar .dropdown-item:hover,
 .navbar .dropdown-item:focus {
     background: rgba(232, 82, 26, .22);
     color: #fff;
 }

 .navbar .dropdown-item:hover .dd-icon,
 .navbar .dropdown-item:focus .dd-icon {
     background: var(--orange);
 }

 .dd-icon {
     width: 32px;
     height: 32px;
     flex-shrink: 0;
     background: rgba(255, 255, 255, .1);
     border-radius: 4px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-size: .9rem;
     transition: background .18s;
 }

 .dd-label {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .78rem;
     font-weight: 800;
     letter-spacing: .1em;
     text-transform: uppercase;
     display: block;
     line-height: 1.2;
 }

 .dd-desc {
     font-size: .7rem;
     font-weight: 400;
     color: rgba(255, 255, 255, .5);
     letter-spacing: .02em;
     text-transform: none;
     display: block;
     margin-top: .1rem;
 }

 .navbar .dropdown-item:hover .dd-desc,
 .navbar .dropdown-item:focus .dd-desc {
     color: rgba(255, 255, 255, .7);
 }

 /* ═══════════════════════════════════════════════
       HERO SLIDER
    ═══════════════════════════════════════════════ */
 .hero-wrapper {
     position: relative;
 }


 @media (max-width:768px) {
     .logo-float img {
         height: 68px;
     }

     .logo-float {
         bottom: -30px;
         z-index: 999;
     }
 }

 /* responsivo — acompanha o container em telas menores */
 @media (max-width: 1400px) {
     .logo-float {
         left: calc((100vw - 1140px) / 2);
     }
 }

 @media (max-width: 1200px) {
     .logo-float {
         left: calc((100vw - 960px) / 2);
     }
 }

 @media (max-width: 992px) {
     .logo-float {
         left: calc((100vw - 720px) / 2);
     }
 }

 @media (max-width: 768px) {
     .logo-float {
         left: calc((100vw - 540px) / 2);
     }
 }

 @media (max-width: 576px) {
     .logo-float {
         left: 1rem;
     }
 }

 /* ── MENU MOBILE SOBREPOSTO (overlay) ──────────── */
 @media (max-width: 991.98px) {

     .navbar {
         position: sticky;
         top: 0;
         z-index: 99;
     }

     /* container só segura logo + toggler */
     .navbar>.container {
         display: flex;
         flex-wrap: nowrap;
         align-items: center;
         justify-content: space-between;
     }

     /* collapse cobre a tela abaixo da navbar */
     .navbar-collapse {
         position: fixed;
         top: 72px;
         left: 0;
         width: 100%;
         height: calc(100vh - 72px);
         background: rgba(15, 109, 114, .98);
         backdrop-filter: blur(12px);
         z-index: 1055;
         padding: 1.5rem 2rem;
         overflow-y: auto;
         transform: translateY(-20px);
         opacity: 0;
         transition: transform .3s ease, opacity .3s ease;
         pointer-events: none;
         display: block !important;
     }

     .navbar-collapse.show {
         transform: translateY(0);
         opacity: 1;
         pointer-events: auto;
     }

     .navbar-nav {
         flex-direction: column;
         align-items: flex-start !important;
         gap: 0 !important;
         width: 100%;
     }

     .navbar-nav .nav-link {
         font-size: 1rem !important;
         padding: .85rem 0 !important;
         border-bottom: 1px solid rgba(255, 255, 255, .1);
         width: 100%;
     }

     .navbar-nav .dropdown {
         position: static !important;
     }

     .navbar .dropdown-menu {
         position: static !important;
         left: auto !important;
         transform: none !important;
         box-shadow: none !important;
         border: none !important;
         border-left: 3px solid var(--orange) !important;
         border-radius: 0 !important;
         margin: 0 0 .25rem .75rem !important;
         padding: .25rem 0 !important;
         min-width: 0 !important;
         width: 100%;
         animation: none !important;
     }
     /*
     .btn-nav-cta {
         margin-top: 1.25rem;
         width: 100%;
         text-align: center;
         display: block;
     }
     */
     /* hambúrguer */
     .navbar-toggler-icon {
         filter: none;
         background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255,255,255,.9)' stroke-width='2.5' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
     }

     /* X */
     .navbar-toggler[aria-expanded="true"] .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(255,255,255,.9)' stroke-width='2.5' stroke-linecap='round' d='M6 6l18 18M24 6L6 24'/%3E%3C/svg%3E");
     }
 }

 .logo-float img {
     height: 96px;
     filter: drop-shadow(0 4px 18px rgba(0, 0, 0, .5));
 }

 #heroCarousel {
     height: 92vh;
     min-height: 520px;
     max-height: 860px;
     overflow: hidden;
 }

 #heroCarousel .carousel-inner,
 #heroCarousel .carousel-item {
     height: 100%;
 }

 .slide {
     height: 100%;
     display: flex;
     align-items: center;
     position: relative;
     overflow: hidden;
 }

 .slide-bg {
     position: absolute;
     inset: 0;
     background-size: cover;
     background-position: center;
     transition: transform 8s ease;
 }

 .carousel-item.active .slide-bg {
     transform: scale(1.06);
 }

 .slide-overlay {
     position: absolute;
     inset: 0;
     z-index: 1;
 }

 .ov-teal {
     background: linear-gradient(120deg, rgba(15, 109, 114, .9) 0%, rgba(15, 109, 114, .55) 55%, rgba(15, 109, 114, .2) 100%);
 }

 .ov-orange {
     background: linear-gradient(120deg, rgba(184, 60, 14, .9) 0%, rgba(184, 60, 14, .55) 55%, transparent 100%);
 }

 .ov-dark {
     background: linear-gradient(120deg, rgba(15, 15, 15, .88) 0%, rgba(15, 15, 15, .5) 60%, transparent 100%);
 }

 .ov-right {
     background: linear-gradient(240deg, rgba(15, 109, 114, .9) 0%, rgba(15, 109, 114, .55) 55%, transparent 100%);
 }

 .ov-split {
     background: linear-gradient(135deg, rgba(15, 109, 114, .85) 0%, rgba(184, 60, 14, .82) 100%);
 }

 .slide-content {
     position: relative;
     z-index: 2;
     max-width: 640px;
     padding: 2rem 1rem;
 }

 .slide-eyebrow {
     display: inline-block;
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .71rem;
     font-weight: 800;
     letter-spacing: .22em;
     text-transform: uppercase;
     color: rgba(255, 255, 255, .85);
     background: rgba(255, 255, 255, .12);
     border: 1px solid rgba(255, 255, 255, .25);
     border-radius: 2px;
     padding: .28rem .75rem;
     margin-bottom: 1.1rem;
 }

 .slide h1,
 .slide h2 {
     font-family: 'Playfair Display', serif;
     font-size: clamp(2rem, 5vw, 3.9rem);
     font-weight: 900;
     color: #fff;
     line-height: 1.1;
     margin-bottom: 1rem;
 }

 .slide h1 em,
 .slide h2 em {
     font-style: italic;
     color: #FFD580;
 }

 .slide p {
     font-size: clamp(.88rem, 1.4vw, 1.02rem);
     color: rgba(255, 255, 255, .85);
     line-height: 1.72;
     margin-bottom: 1.6rem;
     max-width: 500px;
 }

 .slide-stats {
     display: flex;
     gap: .7rem;
     flex-wrap: wrap;
     margin-bottom: 1.75rem;
 }

 .slide-stat {
     background: rgba(255, 255, 255, .14);
     backdrop-filter: blur(4px);
     border: 1px solid rgba(255, 255, 255, .25);
     border-radius: 3px;
     padding: .38rem .88rem;
     color: #fff;
     font-size: .8rem;
     font-weight: 600;
     display: flex;
     align-items: center;
     gap: .4rem;
 }

 .slide-stat i {
     color: #FFD580;
 }

 .btn-sp {
     background: var(--orange);
     color: #fff;
     border: none;
     border-radius: 3px;
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .92rem;
     font-weight: 800;
     letter-spacing: .1em;
     text-transform: uppercase;
     padding: .78rem 1.9rem;
     text-decoration: none;
     display: inline-block;
     margin-right: .65rem;
     margin-bottom: .5rem;
     transition: background .2s, transform .15s;
 }

 .btn-sp:hover {
     background: var(--orange-dk);
     transform: translateY(-2px);
     color: #fff;
 }

 .btn-ss {
     background: transparent;
     color: #fff;
     border: 1.5px solid rgba(255, 255, 255, .45);
     border-radius: 3px;
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .92rem;
     font-weight: 700;
     letter-spacing: .08em;
     text-transform: uppercase;
     padding: .78rem 1.9rem;
     text-decoration: none;
     display: inline-block;
     margin-bottom: .5rem;
     transition: border-color .2s, color .2s;
 }

 .btn-ss:hover {
     border-color: #FFD580;
     color: #FFD580;
 }

 /* Slide number decoration */
 .slide-num {
     position: absolute;
     right: 7%;
     bottom: 12%;
     font-family: 'Playfair Display', serif;
     font-size: clamp(5rem, 12vw, 11rem);
     font-weight: 900;
     color: rgba(255, 255, 255, .055);
     line-height: 1;
     z-index: 1;
     user-select: none;
 }

 /* Carousel controls */
 .carousel-control-prev,
 .carousel-control-next {
     width: 46px;
     height: 46px;
     top: 50%;
     transform: translateY(-50%);
     background: rgba(255, 255, 255, .15);
     border-radius: 50%;
     backdrop-filter: blur(4px);
     margin: 0 1rem;
     opacity: 1;
     transition: background .2s;
 }

 .carousel-control-prev:hover,
 .carousel-control-next:hover {
     background: var(--orange);
 }

 .carousel-control-prev-icon,
 .carousel-control-next-icon {
     width: 1rem;
     height: 1rem;
 }

 .carousel-indicators {
     bottom: 1.5rem;
     gap: .4rem;
 }

 .carousel-indicators button {
     width: 26px;
     height: 3px;
     border-radius: 2px;
     background: rgba(255, 255, 255, .4);
     border: none;
     transition: background .3s, width .3s;
 }

 .carousel-indicators button.active {
     background: var(--orange);
     width: 46px;
 }

 /* Slide-in animations */
 @keyframes slideUp {
     from {
         opacity: 0;
         transform: translateY(28px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .carousel-item.active .slide-eyebrow {
     animation: slideUp .5s .1s both;
 }

 .carousel-item.active .slide h1,
 .carousel-item.active .slide h2 {
     animation: slideUp .55s .22s both;
 }

 .carousel-item.active .slide p {
     animation: slideUp .55s .35s both;
 }

 .carousel-item.active .slide-stats {
     animation: slideUp .5s .47s both;
 }

 .carousel-item.active .slide-btns {
     animation: slideUp .5s .57s both;
 }

 /* ── STRIP ───────────────────────────────────── */
 .strip {
     background: var(--teal);
     padding: 2rem 0;
     margin-top: 32px;
 }

 .strip-item {
     text-align: center;
     color: #fff;
 }

 .strip-num {
     font-family: 'Playfair Display', serif;
     font-size: 2.4rem;
     font-weight: 900;
     line-height: 1;
 }

 .strip-label {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .73rem;
     font-weight: 700;
     letter-spacing: .16em;
     text-transform: uppercase;
     opacity: .82;
     margin-top: .15rem;
 }

 .strip-divider {
     width: 1px;
     background: rgba(255, 255, 255, .22);
     align-self: stretch;
 }

 /* ── SECTION COMMONS ─────────────────────────── */
 section {
     padding: 5.5rem 0;
 }

 .sec-tag {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .72rem;
     font-weight: 800;
     letter-spacing: .22em;
     text-transform: uppercase;
     color: var(--orange);
     margin-bottom: .4rem;
 }

 .sec-title {
     font-family: 'Playfair Display', serif;
     font-size: clamp(1.7rem, 3.2vw, 2.6rem);
     font-weight: 700;
     line-height: 1.15;
     color: var(--dark);
 }

 .sec-title .hl {
     color: var(--teal);
 }

 .sec-title .hlo {
     color: var(--orange);
 }

 .sec-lead {
     font-size: .97rem;
     color: var(--mid);
     line-height: 1.75;
     max-width: 580px;
 }

 .divline {
     width: 44px;
     height: 3px;
     border-radius: 2px;
     background: linear-gradient(90deg, var(--teal), var(--orange));
     margin: .9rem 0 1.5rem;
 }

 /* ── SOBRE EVENTO ───────────────────────────── */
 .sobre-section {
     background: var(--white);
 }

 .evento-img-wrap {
     position: relative;
 }

 .evento-img-wrap img {
     width: 100%;
     height: 420px;
     object-fit: cover;
     border-radius: 6px;
     box-shadow: 0 12px 40px rgba(15, 109, 114, .18);
 }

 .evento-badge {
     position: absolute;
     bottom: -1.5rem;
     right: -1.5rem;
     background: var(--orange);
     color: #fff;
     padding: 1.5rem 2rem;
     border-radius: 6px;
     font-family: 'Barlow Condensed', sans-serif;
     font-weight: 800;
     letter-spacing: .08em;
     text-transform: uppercase;
     font-size: .82rem;
     max-width: 178px;
     line-height: 1.4;
 }

 .evento-badge strong {
     font-family: 'Playfair Display', serif;
     font-size: 2.6rem;
     display: block;
     line-height: 1;
     font-weight: 900;
 }

 .card-motivo {
     background: var(--light);
     border: none;
     border-radius: 6px;
     border-left: 4px solid var(--teal);
     padding: 1.4rem;
     height: 100%;
     transition: box-shadow .2s, border-color .2s;
 }

 .card-motivo:hover {
     box-shadow: 0 6px 24px rgba(15, 109, 114, .14);
     border-left-color: var(--orange);
 }

 .card-motivo h5 {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .92rem;
     font-weight: 800;
     letter-spacing: .1em;
     text-transform: uppercase;
     color: var(--teal);
     margin-bottom: .4rem;
 }

 .card-motivo:hover h5 {
     color: var(--orange);
 }

 .card-motivo p {
     font-size: .88rem;
     color: var(--mid);
     line-height: 1.65;
     margin: 0;
 }

 /* ── OBJETIVOS ───────────────────────────────── */
 .objetivos-section {
     background: var(--teal-dk);
     position: relative;
     overflow: hidden;
 }

 .objetivos-section::before {
     content: '';
     position: absolute;
     top: -100px;
     right: -100px;
     width: 420px;
     height: 420px;
     border-radius: 50%;
     background: radial-gradient(circle, rgba(232, 82, 26, .18) 0%, transparent 70%);
 }

 .objetivos-section .sec-title {
     color: #fff;
 }

 .objetivos-section .sec-tag {
     color: #FFD580;
 }

 .objetivos-section .sec-lead {
     color: rgba(255, 255, 255, .65);
 }

 .obj-card {
     background: rgba(255, 255, 255, .07);
     border: 1px solid rgba(255, 255, 255, .13);
     border-radius: 6px;
     padding: 1.7rem;
     transition: background .22s, border-color .22s, transform .22s;
     height: 100%;
 }

 .obj-card:hover {
     background: rgba(232, 82, 26, .18);
     border-color: var(--orange);
     transform: translateY(-4px);
 }

 .obj-icon {
     width: 46px;
     height: 46px;
     background: var(--orange);
     border-radius: 6px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-size: 1.2rem;
     margin-bottom: .9rem;
 }

 .obj-card h5 {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .9rem;
     font-weight: 800;
     letter-spacing: .1em;
     text-transform: uppercase;
     color: #fff;
     margin-bottom: .35rem;
 }

 .obj-card p {
     font-size: .86rem;
     color: rgba(255, 255, 255, .6);
     line-height: 1.6;
     margin: 0;
 }

 /* ── IMPACTO ─────────────────────────────────── */
 .impacto-section {
     background: var(--grey);
 }

 .impacto-item {
     display: flex;
     gap: 1rem;
     align-items: flex-start;
     margin-bottom: 1.65rem;
 }

 .impacto-icon {
     width: 40px;
     height: 40px;
     flex-shrink: 0;
     background: var(--teal);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-size: .95rem;
 }

 .impacto-item h6 {
     font-family: 'Barlow Condensed', sans-serif;
     font-weight: 800;
     letter-spacing: .06em;
     text-transform: uppercase;
     font-size: .85rem;
     color: var(--teal);
     margin-bottom: .15rem;
 }

 .impacto-item p {
     font-size: .88rem;
     color: var(--mid);
     margin: 0;
     line-height: 1.55;
 }

 .gratis-badge {
     background: var(--teal);
     color: #fff;
     font-family: 'Barlow Condensed', sans-serif;
     font-size: 1.9rem;
     font-weight: 800;
     letter-spacing: .06em;
     text-transform: uppercase;
     padding: 2.5rem;
     border-radius: 6px;
     text-align: center;
     box-shadow: 0 8px 32px rgba(15, 109, 114, .25);
 }

 .gratis-badge small {
     display: block;
     font-size: .75rem;
     letter-spacing: .2em;
     opacity: .8;
     margin-bottom: .4rem;
 }

 /* ── EMPRESA ─────────────────────────────────── */
 .empresa-section {
     background: var(--white);
 }

 .pilar-card {
     padding: 2rem 1.5rem;
     border-top: 3px solid var(--teal);
     background: var(--light);
     border-radius: 0 0 6px 6px;
     height: 100%;
     transition: box-shadow .2s;
 }

 .pilar-card:hover {
     box-shadow: 0 8px 28px rgba(15, 109, 114, .12);
 }

 .pilar-card .pilar-num {
     font-family: 'Playfair Display', serif;
     font-size: 3.5rem;
     font-weight: 900;
     color: rgba(15, 109, 114, .12);
     line-height: 1;
     margin-bottom: .4rem;
 }

 .pilar-card h5 {
     font-family: 'Barlow Condensed', sans-serif;
     font-weight: 800;
     font-size: .95rem;
     text-transform: uppercase;
     letter-spacing: .1em;
     color: var(--teal);
     margin-bottom: .5rem;
 }

 .pilar-card p {
     font-size: .88rem;
     color: var(--mid);
     line-height: 1.65;
     margin: 0;
 }

 /* ── SERVIÇOS ────────────────────────────────── */
 .servicos-section {
     background: var(--grey);
 }

 .servico-tag {
     background: var(--white);
     border: 1.5px solid rgba(15, 109, 114, .2);
     border-radius: 4px;
     padding: .55rem 1rem;
     font-size: .84rem;
     font-weight: 500;
     color: var(--dark);
     display: inline-flex;
     align-items: center;
     gap: .45rem;
     cursor: default;
     transition: background .2s, border-color .2s, color .2s;
 }

 .servico-tag:hover {
     background: var(--teal);
     color: #fff;
     border-color: var(--teal);
 }

 .servico-tag i {
     color: var(--teal);
     font-size: .88rem;
 }

 .servico-tag:hover i {
     color: #fff;
 }

 /* ── EQUIPE ──────────────────────────────────── */
 .equipe-section {
     background: var(--teal-dk);
 }

 .equipe-section .sec-title {
     color: #fff;
 }

 .equipe-section .sec-tag {
     color: #FFD580;
 }

 .team-card {
     background: rgba(255, 255, 255, .07);
     border: 1px solid rgba(255, 255, 255, .13);
     border-radius: 6px;
     overflow: hidden;
     transition: transform .22s;
 }

 .team-card:hover {
     transform: translateY(-6px);
 }

 .team-placeholder {
     width: 100%;
     height: 260px;
     background: linear-gradient(160deg, rgba(255, 255, 255, .08) 0%, rgba(232, 82, 26, .18) 100%);
     display: flex;
     align-items: center;
     justify-content: center;
     font-family: 'Playfair Display', serif;
     font-size: 4rem;
     color: rgba(255, 255, 255, .35);
     font-weight: 700;
 }

 .team-body {
     padding: 1.5rem;
 }

 .team-body h4 {
     font-family: 'Playfair Display', serif;
     font-size: 1.25rem;
     color: #fff;
     margin-bottom: .15rem;
 }

 .team-role {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .75rem;
     font-weight: 800;
     letter-spacing: .12em;
     text-transform: uppercase;
     color: var(--orange);
     margin-bottom: .75rem;
 }

 .team-body p {
     font-size: .84rem;
     color: rgba(255, 255, 255, .58);
     line-height: 1.65;
 }

 .team-social a {
     color: rgba(255, 255, 255, .35);
     font-size: 1.05rem;
     margin-right: .55rem;
     text-decoration: none;
     transition: color .2s;
 }

 .team-social a:hover {
     color: var(--orange);
 }

 /* ── CTA ─────────────────────────────────────── */
 .cta-section {
     background: var(--orange);
     position: relative;
     overflow: hidden;
     padding: 5rem 0;
     text-align: center;
 }

 .cta-section::before {
     content: 'III';
     position: absolute;
     font-family: 'Playfair Display', serif;
     font-size: 22rem;
     font-weight: 900;
     color: rgba(255, 255, 255, .06);
     top: -3rem;
     left: -1rem;
     line-height: 1;
     user-select: none;
 }

 .cta-section .sec-title {
     color: #fff;
 }

 .cta-section .sec-lead {
     color: rgba(255, 255, 255, .82);
 }

 .btn-cta-w {
     background: #fff;
     color: var(--orange);
     border: none;
     border-radius: 3px;
     font-family: 'Barlow Condensed', sans-serif;
     font-size: 1.05rem;
     font-weight: 800;
     letter-spacing: .12em;
     text-transform: uppercase;
     padding: .95rem 2.6rem;
     text-decoration: none;
     display: inline-block;
     transition: transform .15s, box-shadow .15s;
 }

 .btn-cta-w:hover {
     color: var(--orange-dk);
     transform: translateY(-3px);
     box-shadow: 0 10px 28px rgba(0, 0, 0, .22);
 }

 /* ── CONTATO ─────────────────────────────────── */
 .contato-section {
     background: var(--white);
 }

 .contact-card {
     display: flex;
     align-items: center;
     gap: 1rem;
     background: var(--light);
     border-radius: 6px;
     padding: 1.1rem 1.4rem;
     margin-bottom: .9rem;
     text-decoration: none;
     color: var(--dark);
     border: 1px solid transparent;
     transition: border-color .2s, box-shadow .2s;
 }

 .contact-card:hover {
     border-color: var(--teal);
     box-shadow: 0 4px 16px rgba(15, 109, 114, .12);
     color: var(--dark);
 }

 .contact-icon {
     width: 40px;
     height: 40px;
     flex-shrink: 0;
     background: var(--teal);
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-size: .95rem;
 }

 .contact-card strong {
     font-size: .72rem;
     letter-spacing: .06em;
     text-transform: uppercase;
     display: block;
     color: var(--mid);
     margin-bottom: .05rem;
 }

 .contact-card span {
     font-size: .92rem;
     font-weight: 600;
 }

 .form-control,
 .form-select {
     background: var(--light);
     border: 1.5px solid rgba(15, 109, 114, .2);
     border-radius: 4px;
     font-size: .88rem;
     padding: .65rem 1rem;
     color: var(--dark);
 }

 .form-control:focus,
 .form-select:focus {
     background: var(--light);
     border-color: var(--teal);
     box-shadow: 0 0 0 3px rgba(15, 109, 114, .14);
     color: var(--dark);
 }

 .form-label {
     font-size: .75rem;
     font-weight: 700;
     letter-spacing: .06em;
     text-transform: uppercase;
     color: var(--mid);
 }

 .btn-send {
     background: var(--teal);
     color: #fff;
     border: none;
     border-radius: 4px;
     font-family: 'Barlow Condensed', sans-serif;
     font-weight: 800;
     font-size: .95rem;
     letter-spacing: .12em;
     text-transform: uppercase;
     padding: .85rem 2rem;
     width: 100%;
     transition: background .2s;
 }

 .btn-send:hover {
     background: var(--teal-dk);
 }

 /* ── FOOTER ──────────────────────────────────── */
 footer {
     background: var(--teal-dk);
     padding: 4rem 0 1.5rem;
     color: rgba(255, 255, 255, .45);
 }

 footer p {
     font-size: .84rem;
     line-height: 1.7;
 }

 footer h6 {
     font-family: 'Barlow Condensed', sans-serif;
     font-size: .72rem;
     letter-spacing: .2em;
     text-transform: uppercase;
     color: var(--orange);
     margin-bottom: .9rem;
 }

 footer a {
     color: rgba(255, 255, 255, .45);
     text-decoration: none;
     font-size: .85rem;
     display: block;
     margin-bottom: .35rem;
     transition: color .2s;
 }

 footer a:hover {
     color: #fff;
 }

 .footer-bottom {
     border-top: 1px solid rgba(255, 255, 255, .08);
     margin-top: 2.5rem;
     padding-top: 1.25rem;
     font-size: .77rem;
     color: rgba(255, 255, 255, .3);
 }

 .footer-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 34px;
     height: 34px;
     border: 1px solid rgba(255, 255, 255, .15);
     border-radius: 50%;
     color: rgba(255, 255, 255, .45);
     font-size: .95rem;
     text-decoration: none;
     margin-right: .4rem;
     transition: border-color .2s, color .2s;
 }

 .footer-social a:hover {
     border-color: var(--orange);
     color: #fff;
 }

 /* ── SCROLL REVEAL ───────────────────────────── */
 .reveal {
     opacity: 0;
     transform: translateY(22px);
     transition: opacity .6s ease, transform .6s ease;
 }

 .reveal.visible {
     opacity: 1;
     transform: translateY(0);
 }