:root {
	--gap-sm: 8px;
	--gap-md: 16px;
	--clube-text-dark: #19232D;
	--clube-text-medium: #6A6A6A;
	--clube-text-light: #A8A8A8;
	--clube-accent: #F3B600;
}

.sub-secao-title {
	font-weight: 500;
	font-size: 18px;
	color: #19232D;
}

.subtitle-page {
	font-weight: 400;
	font-size: 13px;
	color: var(--clube-text-medium);
	display: block;
	margin-top: 4px;
}

.banner-clube-campo {
	height: 150px;
	position: relative;
}

.banner-clube-campo>img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: bottom;
	border-radius: 8px;
}

.banner-clube-overlay {
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: 12px;
	color: #fff;
}

.banner-clube-overlay .title-page {
	font-size: 32px;
	margin: 0 0 4px 0;
	color: #FFFFFF !important;
}

.banner-clube-subtitle {
	font-size: 13px;
	color: #FFFFFF !important;
}

.banner-clube-subtitle img {
	width: 16px;
	height: 16px;
}

.atividades-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1.3fr 1fr 1fr;
	gap: 4px;
	margin-bottom: 8px;
}

.atividades-grid .card-atividades-clube {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	background: transparent;
	border: none;
	box-shadow: none;
	border-radius: 8px;
}

.atividades-grid .icon-box {
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	border-radius: 8px;
	background: rgba(255, 141, 40, 0.15);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.atividades-grid .icon-box img {
	width: 22px;
	height: 22px;
}

.atividades-grid .atividade-title {
	font-weight: 500;
	font-size: 12px;
	color: #19232D;
	margin: 0 0 2px 0;
}

.atividades-grid .atividade-desc {
	font-weight: 400;
	font-size: 11px;
	color: #4A5568;
}

/* Tabs minimalistas */
#navtab-infos.nav-tabs {
	border-bottom: none;
	background: transparent;
	display: flex;
	gap: 0;
}

.nav-tabs .nav-link {
	flex: 1;
	text-align: center;
	padding: 8px 10px;
	font-weight: 500;
	font-size: 14px;
	background: #ECECF0;
	color: #19232D;
	border: none;
	margin-right: 0;
	border-radius: 0;
}

.nav-tabs .nav-link:first-child {
	border-top-left-radius: 6px;
}

.nav-tabs .nav-link:last-child {
	border-top-right-radius: 6px;
}

.nav-tabs .nav-link.active {
	background: #19232D !important;
	color: #FFFFFF !important;
}

.nav-tabs .nav-link {
	min-height: 32px;
}

.tab-pane-inner {
	padding: 0;
}

.tab-pane {
	background: #FFFFFF;
	border-radius: 6px;
	padding: 16px;
	margin-top: 0;
}

.tab-section-header h4 {
	font-weight: 500;
	font-size: 16px;
	color: #19232D;
	margin: 0 0 8px 0;
}

.tab-section-header .subtitle,
.subtitle-page {
	font-weight: 400;
	font-size: 13px;
	color: #4A5568;
	display: block;
	margin-top: 2px;
}

ul.list-check {
	padding-left: 0;
	margin-top: 8px;
}

ul.list-check li {
	margin-bottom: 8px;
	padding-left: 26px;
	position: relative;
	line-height: 1.5;
	color: #19232D;
}

ul.list-check li:before {
	content: '';
	position: absolute;
	left: 0;
	top: 5px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #ECECF0 url('../img/icons/icon-check.svg') center center / 9px 9px no-repeat;
}

.accordionRegimento {
	border-radius: 8px;
	margin-top: 20px;
	margin-bottom: 20px;
	border: 1px solid #d9e5e8;
	list-style: none !important;
	padding-inline-start: 0;
}

.accordionRegimento a {
	font-weight: 500;
	font-size: 14px;
	color: #19232D;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 4px 12px;
	cursor: pointer;
}

.accordionRegimento a:after {
	width: 8px;
	height: 8px;
	border-right: 2px solid #b5b5b5;
	border-bottom: 2px solid #b5b5b5;
	content: "";
	margin-top: 8px;
	transform: translateY(-50%) rotate(-45deg);
}

.accordionRegimento a.active:after {
	transform: rotate(45deg);
}

.accordionRegimento li {
	border: none;
	border-bottom: 1px solid #E5E7EB;
	position: relative;
	text-align: justify;
}

.accordionRegimento li:last-child {
	border: none;
}

.accordionRegimento li .conteudo-regimento {
	display: none;
	padding: 0 16px 12px 16px;
}

.accordionRegimento li .conteudo-regimento p {
	line-height: 1.6;
}

.conteudo-regimento {
	padding: 0px 25px;
}

/* Últimos eventos compactos */
.section-white-card {
	background: #FFFFFF;
	border-radius: 8px;
	padding: 16px;
}

.limite-card-img {
	border-radius: 8px;
}

.card-noticia-relacionada {
	height: 150px;
	border-radius: 8px;
}

.data-post-preview {
	right: 10px;
}

.title-noticia-relacionada h5 {
	font-weight: 500;
	font-size: 12px;
	color: #19232D;
	min-height: auto;
	margin-top: 8px;
}

.post-relacionados {
	margin-bottom: 12px;
}

.post-relacionados.lastPhoto {
	margin-right: 0;
}

.sub-secao-title+.row {
	margin-top: 4px;
}

.atividades-grid {
	margin-bottom: 10px;
}

.data-post-preview .dia,
.data-post-preview .mes,
.sub-secao-title {
	border-left: none !important;
	padding: 0 !important;
}

.atividades-grid .atividade-text {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
}

.tagConviteGerado,
.tagConviteGerado:hover {
	border: 1px solid gray;
	height: calc(1.5em + 0.5rem + 2px);
	width: 80px;
	margin: auto;
	padding: 0.25rem 0.5rem;
	font-size: .875rem;
	line-height: 1.5;
	border-radius: 0.2rem;
	color: #23c861;
	background-color: rgba(35, 200, 97, 0.1);
	background-clip: padding-box;
	border: 1px solid #23c861;
	cursor: default;
}

.headerList {
	background: #FFF;
	position: sticky;
	top: 0;
	z-index: 999;
	border-bottom: 1px solid #f0f0f0;
}

.guest-table {
	width: 100%;
}

.guest-table-scroll {
	max-height: 60vh;
	overflow-y: auto;
}

.guest-table thead th {
	position: sticky;
	top: 0;
	background: #FFF;
	z-index: 2;
}

.d-md-revert {
    display: revert;
}

a[data-toggle="collapse"] {
    position: relative;
}

.btn-doar-convite { 
  background: rgba(97, 85, 245, 0.1); 
  color: #3B5998; 
  border-radius: 6px;
}

.btn-doar-convite:hover { 
  background: rgba(97, 85, 245, 0.18); 
  color: #3B5998; 
}

.btn-gallery { background: #FFFFFF; color: #242d37; font-size: 10px !important; padding: 2px 6px; }


.limite-card-img {
    overflow: hidden;
    border-radius: 10px;
}

/*Lembretes importantes*/
#navtab-infos.nav-tabs {
    border-bottom: none;
}

#navtab-infos a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 33.33%;
    text-align: center;
    font-size: 0.8em;
    color: gray;
}

ul.list-check {
    list-style: none;
    margin: 0;
}

#tabcontent-infos .tab-pane {
    font-size: 13px;
    line-height: 2.5em;
    padding: 25px 10px;
    border: 1px solid #dee2e6;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    margin-bottom: 25px;
}

a.active:after {
    transform: rotate(45deg);
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

/* Reservar Espaço (associado) */
.form-reservar-wrapper {
    background: #f9f9f9;
    border-radius: 10px;
}

.termo-card .termo-conteudo {
   max-height: 165px;
    overflow: auto;
    background-color: #fff;
    padding: 4px;
}

.reserva-form { font-size: .9em; padding: 8px; background: #FFF; border-radius: 0 12px 12px 0; }
.termo-card .card { background: transparent; border: none; }
.termo-card .card-header { background: transparent; border: none; padding: 0 !important; }
.termo-card .btn-link { color: #000; text-decoration: none; font-size: 14px; padding: 0; margin: 0; }
.termo-card .btn-link { cursor: pointer; }
.termo-card .btn-link::after {
    content: "\f077";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 8px;
}
.termo-card .btn-link.collapsed::after {
    content: "\f078";
}
.termo-collapse { display: none; }
.termo-collapse.open { display: block; }
.termo-card .termo-conteudo { font-size: .85em; }

.btns-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.btns-grid .btn { width: 100%; }

.text-termo-compromisso .line-title-page {
    background: #000;
}

.text-termo-compromisso h4 {
    font-size: 1.4em;
}

textarea {
    padding: 10px;
}

.card-noticia-preview, .card-noticia-relacionada {
    overflow: hidden;
    border-radius: 10px;
    height: 225px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.post-noticia-preview a:hover .card-noticia-preview,
.post-relacionados a:hover .card-noticia-relacionada {
    -moz-transform: scale(1.08);
    -webkit-transform: scale(1.08);
    transform: scale(1.08);
}

.title-noticia-preview h5, .title-noticia-relacionada h5 {
    font-size: 0.9em;
    min-height: 3em;
    color: #000;
    margin-top: 12px;
}

.resumo-noticia-preview, .resumo-noticia-relacionada {
    font-size: 0.7em;
    min-height: 3em;
    color: gray;
    margin-top: 5px;
}

.data-post-preview {
    background: #edb900;
    position: absolute;
    top: 0;
    right: 0;
    border-top-right-radius: 10px;
    border-bottom-left-radius: 10px;
    color: #FFF;
    display: block;
    text-align: center;
    padding: 3px;
}

.data-post-preview .dia {
    font-size: 14px;
    margin-bottom: -3px;
}

.data-post-preview .mes {
    font-size: 10px;
}

.data-post-preview .ano {
    font-size: 9px;
}

.page-hero {
    background: #ffffff;
    border-radius: 8px;
    padding: 24px;
}

.page-hero-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: #ffbe0b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
 }

.page-hero-icon i {
    color: #ffffff;
    font-size: 20px;
}

.page-hero-icon img {
    width: 22px;
    height: 22px;
}

.page-hero-title {
    font-size: 24px;
    font-weight: 700;
    color: #19232d;
    margin: 0;
 }

.page-hero-subtitle {
    font-size: 14px;
    color: #6b7785;
 }


 .df-section {
    background: #ffffff;
    border-radius: 8px;
    padding: 12px 24px;
 }

.section-title {
    display: flex;
    align-items: center;
    font-weight: 600;
    margin: 24px 0 12px;
 }

 .section-title .bar {
     width: 6px;
     height: 18px;
     background: #ffbe0b;
     border-radius: 6px;
     display: inline-block;
     margin-right: 10px;
 } 

 .year-select-box {
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08);
    padding: 8px;
    display: inline-flex;
    align-items: center;
    min-width: 100px;
 }

 .year-select-box i {
    color: #ffbe0b;
    font-size: 20px;
 }

 .year-select-box select {
    border: none;
    outline: none;
    box-shadow: none;
    background: transparent;
    padding: 0 4px;
 }

 .resumidoCards {
    width: 100%;
 }

 .resumidoCard, .resumidoCard:hover {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #ffffff;
    background: linear-gradient(180deg, #F3B600 0%, #1b2531 100%);
    height: 75px;
    border-radius: 8px;
    margin: 10px 0;
    transition: transform 0.15s ease;
 }

 .resumidoCard:hover {
    transform: scale(1.01);
 }

.resumidoCard i {
    font-size: 22px;
    margin-right: 10px;
    opacity: 0.9;
    color: #FFF;
 }

.resumidoCard span {
    font-size: 18px;
    letter-spacing: 0.3px;
 }

.monthGrid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 12px;
    margin-block-start: 0;
    padding-inline-start: 0;
 }

.monthCard {
    margin: 0;
    border-radius: 16px;
    min-height: 88px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #24303b;
    background: #f6f8fb;
    transition: transform 0.15s ease;
 }

 .monthCard:hover {
     transform: scale(1.02);
     border: 1px solid #232a34;
 }

 .monthCard:hover {
     background: #f6f8fb;
     color: #24303b;
     transform: scale(1.02);
 }

 .monthGrid li {
     margin: 0;
 }

 .monthLabel {
     font-size: 14px;
     color: #8a95a3;
 }

 .monthNumber {
     font-size: 20px;
     font-weight: 700;
     color: inherit;
 }

/*  CALENDARIA ESPAÇO RESERVADOS*/
.calendar {
    box-shadow: -5px 0px 35px -16px rgba(0, 0, 0, 0.75);
    padding: 20px 10px;
    color: #363b41;
    display: inline-block;
    box-sizing: border-box;
}

.calendario a {
    color: inherit;
    text-decoration: none;
    display: flex;
    height: 100%;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.calendario {
    float: left;
    background: white;
    box-shadow: 0px 0px 35px -30px rgb(0 0 0 / 41%);
    padding: 20px 30px;
    color: #363b41;
    display: inline-block;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.calendario table {
    width: 100%;
}

.calendario table thead tr th, .calendario table tbody tr td {
    position: relative;
    box-sizing: border-box;
    color: #363b41;
    border-radius: 5px;
    background-color: white;
    text-align: center;
    height: calc(77vh / 7);
    width: calc(77vw / 7);
    cursor: pointer;
}

.calendario table tbody tr td:hover {
    background: #F8F8FF;
}

.calendario table tbody tr td.activo {
    background: #b0cef6;
}

.calendario table tbody tr td.disable, .calendario table tbody tr td.disable:hover {
    color: #aaa;
    cursor: auto;
    background: #FFF;
    height: 0;
}

.calendario table tbody tr td.invalid, .calendario table tbody tr td.invalid {
    color: #aaa;
    background: #f9f9f9 !important;
    cursor: no-drop !important;
}

.calendario table tbody tr td.event a:before, .calendario table tbody tr td.hoje a:before {
    content: "\a";
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #a39d9e;
    display: inline-block;
    bottom: 10px;
    left: calc(50% - 5px);
}

.calendario table tbody tr td.event.active a:before, .calendario table tbody tr td.hoje a:before {
    background-color: #0575E6;
}

.calendar_header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.has-form #periodoMaxLabel { display: none; }

.alertCalendar {
    font-size: 11px;
    color: #8a95a3;
}

.calendar_header .form-select-calendar { flex: 0 0 auto; }
.has-form .calendar_header .form-select-calendar { flex: 1 1 auto; width: 100%; max-width: 100%; }

.calendar_events {
    color: #a39d9e;
}

.calendar_event_list {
    max-height: 71vh;
    padding-right: 4px;
    overflow-y: auto !important;
}

.calendar_event_title {
    font-size: 14px;
    margin-bottom: 0;
    padding: 20px 10px;
}

.event_item {
    margin: 5px 10px;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255,0.2);
}

.event_item:hover, .event_item.active {
    background-image: linear-gradient(-222deg, #0575E6, #a8b6eb);
    box-shadow: 0px 0px 52px -18px rgba(0, 0, 0, 0.75);
}

.event_item:hover .event_item_dot, .event_item.active .event_item_dot {
    background-color: #fff;
}

.event_item:hover .event_item_date, .event_item:hover .event_item_title,
.event_item.active .event_item_date, .event_item.active .event_item_title {
    color: #fff;
}

.event_item_dot, .event_item_title {
    display: inline-block;
}

.event_item_dot {
    border-radius: 50%;
    width: 10px;
    height: 10px;
    background-color: #a39d9e;
    box-shadow: 0px 0px 52px -18px rgba(0, 0, 0, 0.75);
}

.dot_active, .event_item_dot.active {
    background-color: #0575E6;
}

.event_item_title {
    color: #363b41;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 14px;
}

.event_item_capacity {
    color: #FFF;
    font-weight: 500;
    font-size: 12px;
}

.event_item_date {
    font-weight: 300;
    font-size: 11px;
}

.event_item img {
    border-radius: 5px;
    width: 100%;
}

.header_title {
    font-size: 2em;
}

.dark {
    background-image: linear-gradient(-222deg, rgb(25, 35, 45), rgba(25, 35, 45, 0.93));
    color: #fff;
    border-radius: 8px;
}

.dark .header_title, .dark .event_item_title, .dark .calendar_event_title {
    color: #fff;
}

.special-scroll::-webkit-scrollbar {
    width: 4px;
}

.special-scroll::-webkit-scrollbar-track {
    border-radius: 10px;
    background: transparent;
}

.special-scroll::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #bbbbbb;
}

.form-select-calendar {
    font-size: 1.2rem;
    color: #000 !important;
    background-color: transparent !important;
    border: none;
    border-radius: 0;
    border-bottom: 1.5px solid rgba(255,255,255,0.9);
    font-weight: 500;
    padding: 0;
}

.form-select-calendar option {
    color: #000 !important;
    font-size: 18px !important;
    padding: 50px 15px !important;
}

.sem-evento {
    color: #FFF;
    text-align: center;
    position: absolute;
    top: 45%;
    left: 0;
    text-transform: lowercase;
    padding: 0 25px;
}

.sem-evento i {
    font-size: 30px;
    margin-bottom: 10px;
}

.legenda {
    position: absolute;
    bottom: 5px;
    font-size: 10px;
}

.legenda  b {
    color: #000;
    margin-right: 2px;
}

.radio-reserva-espaco {
    width: 100%;
}

.radio-reserva-espaco input[type=radio] {
    display: none;
}

.radio-reserva-espaco input[type=radio]:checked + .event_item {
    background-image: linear-gradient(-222deg, #0575E6, #a8b6eb) !important;
    box-shadow: 0px 0px 52px -18px rgba(0, 0, 0, 0.75) !important;
    color: #FFF !important;
}

.btn-gallery {
    background: #FFF;
    color: #242d37;
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 0.65em;
    padding: 2px;
}

/*reserva de espaço*/
.imgEspaco {
    width: 300px;
    height: 70px;
    border-radius: 10px;
    background-size: cover !important;
    background-position: center !important;
}

.imgCardEspacoReservado {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    min-height: 150px;
}

.listaConvidados {
    display: none;
}

.listaConvidados.active {
    display: block !important;
}

.tagGreen {
    color: #04d361;
}

.tagBlue {
    color: #138496;
}

.tagOrange {
    color: #ff6600;
}

.quantMinhasReservas {
    width: 15px;
    height: 15px;
    border-radius: 100%;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
}

/*Lista de convidados*/
.remove {
    background: #f1f1f1;
}

.remove td {
    font-style: italic;
}

.table > tbody > tr > td {
    vertical-align: middle;
}

.input-group {
    width: 100%;
}

.contadorListaConvidados {
    margin-top: -30px;
}

.dataTables_wrapper {
    width: 100%;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter, 
.dataTables_wrapper .dataTables_info, 
.dataTables_wrapper .dataTables_processing, 
.dataTables_wrapper .dataTables_paginate {
    color: #495057 !important;
    font-size: 0.9em;
    display: none !important;
}

#table-blacklist_length, #table-blacklist_info {
    position: absolute;
}

.dataTables_wrapper .dataTables_filter, #table-blacklist_paginate {
    display: flex !important;
    justify-content: flex-end !important;
}

.dataTables_wrapper .dataTables_filter input,  .dataTables_wrapper select {
    height: calc(1.5rem + 2px);
    font-size: 1rem;
    font-weight: 400;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

table.dataTable.no-footer {
    border-bottom: 1px solid transparent !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 2px 8px !important;
    color: #333 !important;
    font-size: 0.9em;
    transition: 0s all;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    color: #495057 !important;
    border: 1px solid #dee2e6 !important;
    background-color: #E9ECEF !important;
    background: -webkit-linear-gradient(top, #E9ECEF 0%, #E9ECEF 100%) !important;
    background: -moz-linear-gradient(top, #E9ECEF 0%, #E9ECEF 100%) !important;
    background: -ms-linear-gradient(top, #E9ECEF 0%, #E9ECEF 100%) !important;
    background: -o-linear-gradient(top, #E9ECEF 0%, #E9ECEF 100%) !important;
    background: linear-gradient(to bottom, #E9ECEF 0%, #E9ECEF 100%) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
    cursor: default !important;
    color: #666 !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    box-shadow: none;
    pointer-events: none !important;
}

.popover-header {
    font-size: 1em !important;
    background: #F8C303 !important;
}

#add-filho, .delete-filho {
    font-size: 1.3em;
    color: #19232D;
    padding: 5px;
}

.mesTitleConvite {
    color: gray;
    font-size: 2em;
}

.badgeStatusConvite {
    min-width: 100px;
    font-weight: 300;
    font-size: 12px;
    padding: 5px 20px;
}

.selectViewHistoricoConvites {
    border: none;
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: 500;
    color: #19232D !important;
    background-color: transparent !important;
    border-radius: 0;
    padding: 0;
    width: auto !important;
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
    appearance: menulist;
}

.selectViewHistoricoConvites option {
    color: #19232D !important;
    font-size: 14px !important;
    padding: 6px 12px !important;
}

.swiper-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 1;
    position: relative;
}

.swiper-container {
    background: linear-gradient(270deg, #f7f9ff 0%, #f2f6ff 100%);
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    width: 100%;
    position: relative;
    max-width: 100%;
    height: 100%;
    max-height: 550px;
    border-radius: 10px;
    padding: 0;
}

.slider-image-wrapper {
    height: 100%;
    max-height: 550px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    overflow: hidden;
}

.slider-item {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    opacity: 0;
    background: linear-gradient(270deg, #f7f9ff 0%, #f2f6ff 100%);
    cursor: -webkit-grab;
    cursor: grab;
}

.slider-item-content {
    padding: 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: 0.4s;
}

.slider-item-content > * {
    opacity: 0;
    transform: translateY(20px);
}

.swiper-slide-active .slider-item-content > * {
    transform: translateY(0px);
    opacity: 1;
}

.slider-image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: 0.2s;
}

.swiper-pagination {
    position: absolute;
    left: 50%;
    bottom: 8px;
    transform: translatex(-50%);
    z-index: 1;
    width: auto !important;
}

.swiper-pagination-bullet {
    border-radius: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    line-height: 30px;
    font-size: 12px;
    opacity: 1;
    background: rgba(255, 185, 0, 0.3);
    display: inline-block;
    margin-right: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.swiper-pagination-bullet-active {
    background: #FFB200;
    width: 20px;
    border-radius: 10px;
}

.slider-buttons {
    position: absolute;
    display: flex;
    top: 94%;
    right: 10px;
    justify-content: flex-end;
    width: 100%;
    z-index: 1;
}

.swiper-button-next,
.swiper-button-prev {
    background-color: #242D37;
    border: none;
    cursor: pointer;
    outline: none;
    color: #FFF;
    position: relative;
    margin-left: 4px;
}

.swiper-button-next:before,
.swiper-button-prev:before {
    content: "";
    position: absolute;
    background-color: #fff;
    height: 1px;
    width: 0;
    left: 0;
    bottom: -1px;
    transition: 0.2s;
}

.swiper-button-next:hover:before,
.swiper-button-prev:hover:before {
    width: 100%;
}

.mask {
    background: rgba(0, 0, 0, 0.68);
    visibility: hidden;
    transition: 0.7s;
    position: fixed;
    height: 100vh;
    width: 100vw;
    z-index: 99990;
    opacity: 0;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.active {
    visibility: visible;
    opacity: 1;
}

/* Modal de galeria em Reservar Espaço */
.mask.active {
    visibility: visible;
    opacity: 1;
}

.mask .modal__content {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    border-radius: 10px;
    width: 800px;
    max-width: 95vw;
    max-height: 90vh;
    overflow: hidden;
    z-index: 99999;
    padding: 16px;
}

.mask .modal__content .container {
    max-width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
}

.mask .swiper-container {
    background: transparent;
    box-shadow: none;
    border-radius: 10px;
}

.mask .slider-item {
    background: transparent !important;
}

.mask .slider-image-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mask .slider-image {
    max-width: 100%;
    max-height: 70vh;
    object-fit: contain;
    margin: 0 auto;
}

.mask .close {
    position: static;
}

.mask .close:hover {
    position: static;
}

.mask .slider-buttons {
    position: static !important;
    top: auto !important;
    right: auto !important;
    width: auto !important;
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
}

.mask .gallery-footer {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
}

.mask .gallery-footer .swiper-pagination {
    position: static;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    transform: none;
    white-space: nowrap;
    justify-self: center;
}

.mask .gallery-footer .swiper-pagination .swiper-pagination-bullet {
    display: inline-block;
}

.mask .swiper-pagination {
    display: inline-block;
}

/* Compatibilidade: garantir exibição dos modais do Bootstrap */
.modal.show {
    visibility: visible !important;
    opacity: 1 !important;
}

.calendar_event_list.special-scroll { 
    scrollbar-width: thin; 
    scrollbar-color: #c5c5c5 transparent; 
}

.calendar_event_list.special-scroll::-webkit-scrollbar { 
    width: 4px; 
}

.calendar_event_list.special-scroll::-webkit-scrollbar-track { 
    background: transparent; 
}

.calendar_event_list.special-scroll::-webkit-scrollbar-thumb { 
    background-color: #c5c5c5; 
    border-radius: 4px; 
}

.termo-card .termo-conteudo { 
    font-size: .85em; 
    scrollbar-width: thin; 
    scrollbar-color: #c5c5c5 transparent; 
}

.termo-card .termo-conteudo::-webkit-scrollbar { 
    width: 4px; 
}

.termo-card .termo-conteudo::-webkit-scrollbar-track { 
    background: transparent; 
}

.termo-card .termo-conteudo::-webkit-scrollbar-thumb { 
    background-color: #c5c5c5; 
    border-radius: 4px; 
}

.gap-8 { gap: 8px; }

/* UI nova: cards de convites */
.convites-resumo {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #19232D;
}

.convites-resumo .valor-total-negativo { color: #c82333; }

.convites-resumo .valor-total-zero { color: #23c861; }

.summary-divider {
    display: inline-block;
    width: 1px;
    height: 24px;
    background: #CECECE;
    margin: 0 12px;
    vertical-align: middle;
}

.empty-invitations {
    height: 35vh;
    color: #88879C;
    font-weight: 400;
    display: flex;
    justify-content: center;
    align-items: center;
}

.convite-card {
    border: 1px solid #eaeaea;
    border-radius: 10px;
    padding: 16px;
    background: #fff;
    min-height: 115px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.convite-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.convite-dados .label {
    font-family: 'Poppins', sans-serif;
    font-size: 10px;
    color: #88879C;
}

.convite-dados .value {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #59597C;
}

.convite-dados-right .label {
    white-space: nowrap;
}

.convite-dados-right .value {
    white-space: nowrap;
}

.convite-dados .guest-name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.convite-code code {
    background: #f5f6f8;
    color: #333333;
    padding: 4px 10px;
    border-radius: 4px;
    display: inline-block;
    font-family: monospace;
    font-size: 12px;
    white-space: nowrap;
}

.actions {
    display: inline-flex;
    align-items: center;
}

.actions .btn-icon {
    border: none;
    background: #f5f6f8;
    border-radius: 8px;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
}

.actions .btn-icon img {
    width: 16px;
    height: 16px;
}

.actions .btn-icon--whatsapp {
    background: #25D366;
}

.convite-code-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.convite-code-row .convite-code {
    margin-right: 10px;
}

.convite-code-row .label-status {
    font-size: 12px;
    font-weight: 600;
}

.cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
}

.convite-status {
    margin-top: 8px;
}

.convite-status .status {
    font-size: 12px;
    font-weight: 600;
}
.label-status {
    font-family: 'Poppins', sans-serif;
}
.label-status.usado {
    color: #19232D;
}
.label-status.expirado {
    color: #EB5757;
}
.label-status .status-word {
    font-weight: 700;
    font-size: 10px;
}
.label-status .status-date {
    font-weight: 300;
    font-size: 10px;
    margin-left: 6px;
}
.convite-status .ativo { color: #23c861; }

.form-control:disabled, .form-control[readonly] {
    background-color: #f9f9f9 !important;
    opacity: 1;
}
/* Modal Doar Convite: ajustar posição mais próxima do topo */
#modalDoarConvite .modal-dialog {
    margin-top: 6vh;
}
.mask .gallery-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
}

.mask .gallery-footer .swiper-pagination {
    position: static;
    flex: 1;
    text-align: center;
}

.mask .gallery-footer .close {
    padding: 6px 12px;
}

.mask .swiper-pagination {
    display: inline-block;
}
.mask .gallery-footer .btn-close-gallery { 
    justify-self: start; 
}

.mask .gallery-footer .slider-buttons { 
    justify-self: end; 
}

.invalid-feedback {
    font-size: 10px;
}

.form-control.is-valid, .was-validated .form-control:valid {
    padding-right: 0 !important;
}

.grid-etapa-juridico {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

.step-header { 
    display: flex;
    align-items: center;
    justify-content: flex-start;
}


.step-circle { 
    width: 24px; 
    height: 24px; 
    border-radius: 50%; 
    background: #0E1A2B; 
    color: #fff; 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    font-weight: 400; 
    margin-right: 8px; 
    flex-shrink: 0;
}

.step-title { 
    font-size: 16px; 
    font-weight: 500; 
    color: #19232D; 
}

.office-list { 
    display: flex; 
    gap: 12px; 
    padding: 0 12px 12px; 
}

.office-option { 
    cursor: pointer; 
}

.office-card { 
    position: relative; 
    background: #fff; 
    border: 1px solid #eaeaea; 
    border-radius: 12px; 
    padding: 16px; 
    box-shadow: 0 2px 6px rgba(0,0,0,0.05); 
    color: #19232D; 
}

.office-name { 
    font-size: 16px; 
    font-weight: 700; 
    color: #19232D;
    display: block;
    max-width: 98%;
}

.office-desc { 
    font-size: 12px; 
    color: #59597C; 
    font-weight: 400; 
}

.card-input-element:checked + .office-card { 
    background: linear-gradient(-222deg, #0575E6, #a8b6eb); 
    color: #fff; 
    box-shadow: 0 8px 20px rgba(5,117,230,0.25); 
}

.card-input-element:checked + .office-card .office-name { 
    color: #fff; 
}

.card-input-element:checked + .office-card .office-desc { 
    color: #fff; 
}

.card-input-element:checked + .office-card::after { 
    content: ""; 
    position: absolute; 
    right: 16px; 
    top: 12px; 
    width: 20px; 
    height: 20px; 
    background: url('../img/icons/icon-check-circle.svg') no-repeat center center; 
    background-size: contain; 
}

.schedule-card { 
    background: #fff; 
    border: 1px solid #eaeaea; 
    border-radius: 12px; 
}

.day-title { 
    font-size: 14px; 
    font-weight: 600; 
    color: #19232D; 
    display: flex; 
    align-items: center; 
}

.day-title img { 
    width: 18px; 
    height: 18px; 
    margin-right: 8px; 
}

.card-radio-btn { 
    display: inline-block; 
}

.times-grid { 
    display: grid; grid-template-columns: repeat(10, 1fr); 
    gap: 6px; 
}

.time-pill { 
    width: 100%; 
    height: 40px; 
    padding: 6px 10px; 
    border-radius: 8px; 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    background: #f1f3f7; 
    color: #19232D; 
    border: 1px solid #f1f3f7; 
    font-weight: 600; 
    cursor: pointer; 
    transition: border-color .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease; 
}

.time-pill:hover { 
    border-color: #0E1A2B; 
}

.card-input-element:checked + .time-pill { 
    background: #0E1A2B; 
    color: #fff; 
    border-color: #0E1A2B; 
}

.empty-card { 
    background: #fff; 
    border: 1px solid #eaeaea; 
    border-radius: 12px; 
    min-height: 120px; 
}

/* Step 3 Custom Styles - Filiacao */
.doc-card {
    border: 1px solid #EBEBEB;
    border-radius: 8px;
    padding: 12px;
    height: 100%;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
    display: flex;
    flex-direction: column;
}

.doc-card-title {
    color: #19232D;
    font-weight: 600;
    font-size: 12px;
    margin-bottom: 5px;
    line-height: 1.2;
}

.doc-card-title .campo-obrigatorio {
    color: red;
    margin-left: 3px;
}

.doc-card-subtitle {
    color: #7D7D7D;
    font-size: 10px;
    margin-bottom: 8px;
}

.upload-area {
    border: 1px dashed #D5D3E0;
    border-radius: 6px;
    background-color: rgba(59, 89, 152, 0.05);
    padding: 10px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    height: 45px;
}

.upload-area:hover, .upload-area.dragover {
    border-color: #19232D;
}

.upload-area img {
    width: 18px;
    height: 18px;
    opacity: 0.6;
}

.upload-area span {
    color: #7D7D7D;
    font-size: 11px;
}

.file-list {
    margin-top: 8px;
}

.file-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(40, 167, 69, 0.1);
    padding: 6px 10px;
    border-radius: 4px;
    margin-bottom: 4px;
    font-size: 12px;
    color: rgb(40 167 69);
    border: 1px solid #e9ecef;
    font-weight: 600;
}

.file-item .file-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 85%;
}

.file-item .btn-remove {
    background: none;
    border: none;
    color: #999;
    cursor: pointer;
    padding: 0 5px;
    font-size: 1.1em;
}

.file-item .btn-remove:hover {
    color: #555;
}

.visually-hidden-input {
    opacity: 0;
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.was-validated .visually-hidden-input:invalid ~ .invalid-feedback,
.visually-hidden-input.is-invalid ~ .invalid-feedback {
    display: block;
}

.termo-compromisso-card {
    background-color: #F5F4F4;
    border-radius: 12px;
    padding: 15px 15px 15px 40px;
}

.termo-compromisso-card .custom-control-label {
    font-size: 11px;
    color: #19232D !important;
    line-height: 1.4;
    text-align: justify;
}

.empty-text { 
    color: #88879C; 
    font-weight: 400; 
    font-size: 0.875rem;
}

.user-data-card { 
    background: #fff; 
    border: 1px solid #eaeaea; 
    border-radius: 12px; 
}

.actions-row { 
    display: grid; 
    grid-template-columns: 1fr 1fr; 
    gap: 12px; 
}

.btn:disabled, .btn.disabled { 
    cursor: not-allowed !important; 
}

/* Meus agendamentos */
.my-appointments-card { 
    background: #fff; 
    border: 1px solid #eaeaea; 
    border-radius: 8px; 
    padding: 16px; 
}

.my-appointments-card .card-header { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    padding: 8px 8px; 
    border-bottom: 1px solid #ececec; 
    background: transparent; 
}

.my-appointments-card .card-header .title { 
    font-size: 14px; 
    font-weight: 600; 
    color: #19232D; 
}

.appointment-item { 
    display: grid; 
    grid-template-columns: 2fr 1fr 1fr; 
    gap: 12px; 
    align-items: center; 
    padding: 12px 8px; 
}
.appointment-col .label { 
    font-size: 12px; 
    color: #88879C; 
    font-weight: 400; 
}
.appointment-office .office-name { 
    font-size: 14px; 
    font-weight: 400; 
    color: #19232D; 
}
.appointment-col .value { 
    font-size: 14px; 
    color: #19232D; 
    font-weight: 400; 
}
.appointment-user i { 
    color: #88879C; 
}
.appointment-meta { 
    text-align: right; 
}
.appointment-meta .date-highlight { 
    color: #FF8D28; 
    font-weight: 600; 
}
.appointment-meta .weekday { 
    font-size: 12px; 
    color: #88879C; 
    font-weight: 400; 
}

.post-relacionados {
  position: relative;
}

.grid-galeria {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 12px;
}

/* Forms: Editar Perfil, Comprovante de Filiação, Desfiliação */
#formEditarMeuPerfil,
#formComprovanteFiliacao,
#formDesfiliacao {
    background: #fff;
    border-radius: 8px;
    padding: 12px;
    border: none;
}

.modal-backdrop.show {
    opacity: 0.6 !important;
}

/* Página filiação */
.wizard-step {
    display: none;
}

.wizard-step.active {
    display: block;
    animation: fadeIn 0.4s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.custom-stepper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 25px;
    padding: 10px 0;
}

.stepper-item {
    display: flex;
    align-items: center;
    color: #adb5bd;
    font-weight: 500;
    font-size: 0.95rem;
    cursor: pointer;
}

.stepper-item.active {
    color: #212529;
    font-weight: 700;
}

.stepper-number {
    width: 30px;
    height: 30px;
    background-color: #f8f9fa;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    font-weight: 600;
    color: #adb5bd;
}

.stepper-item.active .stepper-number {
    background-color: #212529;
    color: #fff;
}

.stepper-arrow {
    color: #e1ebf5ff;
    margin: 0 15px;
}
/* Wizard de filiação */
header {
    height: 75px;
    border-bottom: 1px solid #eaeaea;
}

#formFiliacao label {
    font-size: 12px;
}

#formFiliacao .form-control {
    padding-left: 4px !important;
    padding-right: 2px !important;
    color: #19232D !important;
    font-size: 12px !important;
}

#formFiliacao .form-control::placeholder {
    color: #A0A3BD !important;
    font-size: 12px !important;
}

.campo-obrigatorio {
   color: red;
    font-size: 9px;
    position: absolute;
    padding-left: 5px;
} 

input[type="file"] {
    padding: 3px !important;
    font-size: 0.8em;
}

.files small {
    color: #5e5e5e;
    font-size: 11px;
}

.text-termo-compromisso {
    border-radius: 10px;
    padding: 10px 20px;
}

.text-termo-compromisso {
    margin: 0;
    font-size: 13px;
}

.form-grid-docente {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.form-grid-docente-row-1, 
.form-grid-docente-row-2,
.form-grid-docente-row-3,
.form-grid-docente-row-4 {
    display: grid;
    gap: 5px;
}

.form-grid-docente-row-1 {
    grid-template-columns: 4fr 1fr 1fr 1fr 1fr;
}

.form-grid-docente-row-2 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 0.5fr 1.3fr 1.3fr;
}

.form-grid-docente-row-3 {
    grid-template-columns: 3fr 0.5fr 2fr 1fr 1fr 0.5fr;
}

.form-grid-docente-row-4 {
    grid-template-columns: 2fr 2fr 1fr 1fr 1fr;
}

.aside-container {
    background-color: #F5F5F5;
    border-radius: 12px;
    padding: 12px;
}

.aside-header {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.aside-header-title {
    display: flex;
    align-items: center;
}

.aside-header span {
    font-weight: 500;
    color: #19232D;
    font-size: 14px;
    margin-left: 8px;
}

.aside-content ul {
    list-style: none;
    padding-left: 0;
    margin-top: 15px;
    margin-bottom: 0;
}

.aside-content li {
    color: #19232D;
    margin-bottom: 12px;
    display: flex;
    align-items: flex-start;
    font-size: 12px;
    line-height: 1.4;
}

.aside-content li:last-child {
    margin-bottom: 0;
}

.aside-content li img {
    width: 12px;
    margin-right: 10px;
    margin-top: 3px;
    flex-shrink: 0;
}

.mensalidade-highlight {
    background-color: #FFFFFF;
    border-radius: 6px;
    padding: 8px;
    margin-top: 32px;
    border: 0;
    box-shadow: none;
}

.mensalidade-title {
    font-weight: 500;
    color: #19232D;
    display: flex;
    align-items: center;
    font-size: 14px;
}

.mensalidade-value {
    font-weight: 500;
    font-size: 16px;
    color: #19232D;
    margin-top: 5px;
    line-height: 1.2;
}

.mensalidade-desc {
    font-weight: 400;
    color: #586069; 
    font-size: 12px;
    margin-top: 2px;
}

.alert-box-custom {
    background-color: rgba(255, 141, 40, 0.08) !important;
    border-radius: 6px !important;
    padding: 8px;
    display: flex;
    align-items: flex-start;
    margin-top: 12px;
}

.alert-box-custom img {
    width: 18px;
    margin-right: 12px;
    margin-top: 2px;
    flex-shrink: 0;
}

.alert-box-text {
    font-size: 12px !important;
    color: #19232D;
    line-height: 1.4;
}

.etapa-small {
    font-size: 10px !important;
    font-weight: 500;
    color: #404040;
}

footer.custom-footer {
    background-color: #19232D;
    color: #fff;
    font-size: 0.9rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    padding: 50px 50px 0;
}

footer.custom-footer a {
    color: #fff;
    text-decoration: none;
}

footer.custom-footer .social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: #F5F4F4;
    color: #121A21;
    border-radius: 6px;
}

footer.custom-footer .social-icons a  img {
    width: 18px;
}


footer .icon-footer {
   width: 16px; 
   margin-right: 10px; 
   margin-top: 3px;
}

/*Responsividade*/
@media (max-width:768px) {
    .d-grid {
        display: grid !important;
    }

    .calendario {
        padding: 12px;
    }

    .calendario table thead tr th, .calendario table tbody tr td {
        height: calc(40vh/7) !important;
    }

    .tab-section-header .subtitle, .subtitle-page, .event_item_title {
        font-size: 12px;
    }

    .event_item_capacity {
        font-size: 11px !important;
    }

    .close span {
        font-size: 16px !important;
    }

    .label-status.usado span {
        font-size: 10px !important;
    }

    .modal-footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .modal-footer .btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        font-size: 14px;
        padding: 6px;
    }

    .imgEspaco {
        width: 75px;
        height: 75px;
        border-radius: 6px;
    }

    .page-hero-icon {
        width: 40px !important;
        height: 40px !important;
        flex-shrink: 0;
        border-radius: 6px;
    }

    .page-hero {
        padding: 12px 4px;
    }

    .page-hero-subtitle {
        display: none;
    }

    .grid-etapa-juridico, .appointment-item {
        grid-template-columns: 1fr;
    }

    .office-card  {
        padding: 8px;
        height: 100%;
    }

    .office-name {
        font-size: 12px !important;
    }

    .card-input-element:checked + .office-card::after {
        display: none;
    }

    .times-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 4px;
    }

    .monthGrid {
        grid-template-columns: repeat(3, 1fr);
    }

    textarea.form-control {
        min-height: 100px;
    }

    .atividades-grid {
        grid-template-columns: repeat(6, 186px);
        gap: 4px;
        margin-bottom: 80px;
        padding-bottom: 6px;
        overflow-x: scroll;
    }

    #navtab-infos a {
        font-size: 12px;
    }

    .post-relacionados {
        min-width: 300px;
    }

    .banner-clube-overlay .title-page {
        font-size: 24px !important;
    }
}
