/* Lo staff: pagina "Lo staff", griglia delle schede, pagina della categoria e scheda della singola persona.
   Valori ripresi dal plugin Themesflat e da Elementor del sito precedente. */

.carenow-medical-icon-dental-care::before { content: "\e905"; }
.carenow-medical-icon-healthcare-01::before { content: "\e900"; }

/* ---------- Pagina "Lo staff" ---------- */
#themesflat-content.cg-page-staff { padding-top: 0; padding-bottom: 0; }
.cg-staff-intro { padding: 95px 0 75px; background-color: #f1f1f1; transition: background .3s, border .3s, border-radius .3s, box-shadow .3s; }
.cg-staff-team { padding: 95px 0 75px; }
.cg-staff__titolo { margin: 30px 0 0; padding: 0; line-height: 1; }
@media (max-width: 1024px) {
	.cg-staff-team { padding: 80px 0 100px; }
}

/* ---------- Griglia delle schede ---------- */
.wrap-doctor-post .item { flex: 0 0 50%; max-width: 50%; padding-right: 40px; padding-left: 40px; }
.wrap-doctor-post.column-3 .item { flex: 0 0 33.33%; max-width: 33.33%; }
.doctor-post { position: relative; display: inline-block; width: 100%; margin-bottom: 40px; }
.doctor-post .featured-post {
	position: relative;
	display: flex; align-items: center; justify-content: center;
	overflow: hidden;
	margin: 0 0 160px;
	border-radius: 50%;
}
.doctor-post .featured-post a { position: relative; display: inline-block; }
.doctor-post .featured-post img { transition: all .5s ease-in-out; }
.doctor-post:hover .featured-post img { transform: scale(1.05); }
.doctor-post .content {
	position: absolute; bottom: 0; left: 0;
	width: 100%;
	padding: 37px 15px 23px;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .07);
	text-align: center;
	transition: all .5s;
}
.doctor-post .content::before {
	content: "";
	position: absolute; top: 0; left: 50%;
	width: 85%; height: 3px;
	background: var(--cg-secondary);
	transform: translateX(-50%);
}
.tf-doctor-wrap .doctor-post .content::before { background-color: var(--cg-accent); }
.doctor-post .title { margin: 0 0 8px; font-family: Rubik, sans-serif; font-size: 20px; font-weight: 700; line-height: 1.2; }
.doctor-post .title a { color: var(--cg-primary); }
.doctor-post .title a:hover { color: var(--cg-secondary); }
.tf-doctor-wrap .doctor-post .title a:hover { color: var(--cg-accent) !important; }
/* Profili social: compaiono al passaggio del mouse, solo se compilati nella scheda. */
.doctor-post .content .social {
	position: absolute; bottom: 0; left: 50%;
	display: flex; align-items: center; justify-content: center;
	padding: 0 25px;
	border: 1px solid rgba(9, 29, 62, .2);
	border-radius: 22px;
	opacity: 0; visibility: hidden;
	transform: translateX(-50%);
	transition: all .5s;
}
.doctor-post .content .social a { display: flex; align-items: center; justify-content: center; width: 35px; height: 42px; color: rgba(9, 29, 62, .4); }
.doctor-post .content .social a:hover { color: var(--cg-secondary); }
.tf-doctor-wrap .doctor-post .content .social a:hover { color: var(--cg-accent) !important; }
.doctor-post.has-social:hover .content,
.doctor-post.has-social:focus-within .content { padding-bottom: 82px; }
.doctor-post.has-social:hover .content .social,
.doctor-post.has-social:focus-within .content .social { bottom: 25px; opacity: 1; visibility: visible; }

@media only screen and (max-width: 1024px) {
	.wrap-doctor-post .item { padding-right: 15px; padding-left: 15px; }
	.doctor-post .featured-post a,
	.doctor-post .featured-post a img { width: 100%; }
}
@media only screen and (max-width: 991px) {
	.wrap-doctor-post.column-3 { justify-content: center; }
}
@media only screen and (max-width: 767px) {
	.wrap-doctor-post .item,
	.wrap-doctor-post.column-3 .item { flex: 0 0 100%; max-width: 100%; }
}

/* ---------- Scheda della persona ---------- */
#themesflat-content.cg-doctor-page { padding-top: 119px; padding-bottom: 104px; }
.col-lg-8 { flex: 0 0 auto; width: 100%; }
@media (min-width: 992px) {
	.col-lg-8 { width: 66.6667%; }
}
.single-doctor .featured-post { margin-bottom: 50px; border-radius: 5px; box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .07); }
.single-doctor .featured-post img { width: 100%; }
.single-doctor .meta-doctor { position: relative; padding: 25px 35px; }
.single-doctor .meta-doctor .social {
	position: absolute; bottom: 100%; left: 50%;
	display: flex; align-items: center; justify-content: center;
	max-width: 80%;
	padding: 0 25px;
	border-radius: 22px;
	background: var(--cg-secondary);
	transform: translate(-50%, 50%);
}
.single-doctor .meta-doctor .social a { display: flex; align-items: center; justify-content: center; width: 35px; height: 44px; color: #fff; }
.single-doctor .meta-doctor .social a:hover { color: var(--cg-primary); }
.single-doctor .meta-doctor .list-info { border-bottom: 1px solid #d8d8d8; }
.single-doctor .meta-doctor .list-info:last-of-type { border-bottom: none; }
.single-doctor .meta-doctor .phone,
.single-doctor .meta-doctor .mail { display: flex; padding: 21px 0; color: var(--cg-primary); }
.single-doctor .meta-doctor .phone span,
.single-doctor .meta-doctor .mail span,
.single-doctor .meta-doctor .phone a,
.single-doctor .meta-doctor .mail a { color: var(--cg-primary); }
.single-doctor .meta-doctor .phone a:hover,
.single-doctor .meta-doctor .mail a:hover { color: var(--cg-secondary); }
.single-doctor .meta-doctor .phone .post-icon,
.single-doctor .meta-doctor .mail .post-icon { margin-right: 33px; color: var(--cg-secondary) !important; font-size: 22px; }
/* Telefono in grande, come nel sito precedente (CSS aggiuntivo del Customizer). */
.single-doctor .meta-doctor .phone.list-info { width: 100%; font-size: 30px; font-weight: 600; text-align: center; }
.single-doctor .meta-doctor .phone .post-icon { margin-right: 20px; padding-top: 11px; font-size: 22px; text-align: right; }
.single-doctor .meta-doctor .themesflat-button {
	position: relative; z-index: 1;
	display: inline-block;
	overflow: hidden;
	width: 100%;
	padding: 21px 0;
	border-radius: 5px;
	background: var(--cg-secondary);
	color: #fff;
	font-family: Rubik, sans-serif;
	font-size: 18px;
	font-weight: 500;
	font-style: normal;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	transition: all .3s linear;
}
.single-doctor .meta-doctor .themesflat-button::before {
	content: "";
	position: absolute; inset: 0; z-index: -1;
	background-color: var(--cg-primary);
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform 500ms;
}
.single-doctor .meta-doctor .themesflat-button:hover,
.single-doctor .meta-doctor .themesflat-button:focus { background: var(--cg-secondary); color: #fff; }
.single-doctor .meta-doctor .themesflat-button:hover::before { transform: scale(1, 1); transform-origin: left top; }

/* Colonna del testo: in colonna flex come le sezioni del sito precedente (i margini non si sommano tra loro). */
.cg-doctor { display: flex; flex-direction: column; }
.cg-doctor__nome { margin: 0; font-family: Rubik, sans-serif; font-size: 18px; font-weight: 500; }
.cg-doctor__bio { margin-bottom: 17px; }
.cg-doctor__bio::after { content: ""; display: table; clear: both; }
.cg-doctor__riga { display: flex; }
.cg-doctor__riga--spec { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #d8d8d8; }
.cg-doctor__label { flex: 0 0 auto; width: 17%; font-family: Rubik, sans-serif; font-size: 18px; font-weight: 500; }
.cg-doctor__valore { flex: 0 0 auto; width: 83%; }
.cg-doctor__valore p { margin-bottom: 30px; }
.cg-doctor__valore p:last-child { margin-bottom: 0; }
.cg-doctor__aree-titolo {
	margin: 70px 0 27px;
	padding: 0;
	color: var(--cg-primary);
	font-family: Jost, sans-serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1;
}
.cg-doctor__aree { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 30px; padding: 15px 0; }

/* Aree di intervento: riquadri con icona a sinistra (l'icona "scende" al passaggio del mouse: classe anim-ttb in components.css). */
.cg-iconbox.cg-doctor__area {
	padding: 30px;
	border-radius: 5px;
	background-color: #fff;
	box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .07);
	font-family: Poppins, sans-serif;
	font-size: 14px;
	line-height: 25px;
}
.cg-doctor__area .wrap-icon-inner { color: var(--cg-accent); fill: var(--cg-accent); }
.cg-doctor__area .wrap-icon-inner i { font-size: 61px; }
.cg-doctor__area:hover .wrap-icon-inner { color: #201630; fill: #201630; }
.cg-doctor__area .content .title {
	margin: 0 0 15px;
	color: var(--cg-primary);
	font-family: Jost, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3em;
	letter-spacing: 0;
}
.cg-doctor__area .content .description { color: #565872; font-family: Rubik, sans-serif; font-size: 16px; font-weight: 400; line-height: 30px; letter-spacing: 0; }

@media (max-width: 767px) {
	.cg-doctor__riga { display: block; }
	.cg-doctor__label, .cg-doctor__valore { width: 100%; }
	.cg-doctor__aree { grid-template-columns: minmax(0, 1fr); }
}
