/* 8Mountains Team — card grid + cafe-style modal. Brand: terracotta #d1835a, ink #1c1c1c, off-white #f5f4f2. Fonts inherit theme (Playfair Display / Inter). */

.emt-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
	gap:24px;
	max-width:1100px;
	margin:0 auto;
	padding:8px 0 4px;
}

.emt-card{
	appearance:none;
	border:1px solid #ece6df;
	background:#fff;
	border-radius:18px;
	overflow:hidden;
	text-align:left;
	cursor:pointer;
	padding:0;
	display:flex;
	flex-direction:column;
	transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
	font:inherit;
}
.emt-card:hover,.emt-card:focus-visible{
	transform:translateY(-6px);
	box-shadow:0 14px 40px rgba(0,0,0,.14);
	border-color:#d1835a;
	outline:none;
}
.emt-card-photo{
	display:block;
	position:relative;
	aspect-ratio:4/5;
	background:#f0ece7;
	overflow:hidden;
}
.emt-card-photo img{
	width:100%;height:100%;object-fit:cover;display:block;
	transition:transform .4s ease;
}
.emt-card:hover .emt-card-photo img{transform:scale(1.05);}
.emt-card-body{
	padding:14px 16px 18px;
	display:flex;flex-direction:column;gap:2px;
}
.emt-card-name{
	font-family:'Playfair Display',Georgia,serif;
	font-size:19px;font-weight:700;color:#1c1c1c;line-height:1.2;
}
.emt-card-role{
	font-size:13.5px;color:#8a7f74;letter-spacing:.2px;
}

/* ---------- Modal ---------- */
.emt-modal{
	position:fixed;inset:0;z-index:100000;
	display:none;
	align-items:center;justify-content:center;
	padding:24px;
}
.emt-modal.is-open{display:flex;animation:emt-fade .25s ease;}
@keyframes emt-fade{from{opacity:0}to{opacity:1}}

.emt-modal-backdrop{
	position:absolute;inset:0;
	background:rgba(20,16,14,.55);
	backdrop-filter:blur(3px);
}
.emt-modal-window{
	position:relative;
	background:#fff;
	width:min(880px,100%);
	max-height:90vh;
	overflow:auto;
	border-radius:20px;
	box-shadow:0 30px 80px rgba(0,0,0,.35);
	animation:emt-pop .3s cubic-bezier(.2,.9,.3,1.2);
}
@keyframes emt-pop{from{transform:translateY(20px) scale(.97);opacity:0}to{transform:none;opacity:1}}

.emt-modal-close{
	position:absolute;top:12px;right:14px;z-index:3;
	width:38px;height:38px;border-radius:50%;
	border:none;background:rgba(255,255,255,.92);
	color:#1c1c1c;font-size:26px;line-height:1;cursor:pointer;
	box-shadow:0 2px 10px rgba(0,0,0,.18);
	transition:background .2s,transform .2s;
}
.emt-modal-close:hover{background:#fff;transform:rotate(90deg);}

/* Carousel */
.emt-carousel{
	position:relative;
	background:#1c1c1c;
	aspect-ratio:16/9;
	overflow:hidden;
	border-radius:20px 20px 0 0;
}
.emt-carousel-track{display:flex;height:100%;transition:transform .4s ease;}
.emt-carousel-track img{
	min-width:100%;height:100%;object-fit:cover;display:block;
}
.emt-car-prev,.emt-car-next{
	position:absolute;top:50%;transform:translateY(-50%);
	width:42px;height:42px;border-radius:50%;border:none;
	background:rgba(255,255,255,.9);color:#d1835a;
	font-size:24px;cursor:pointer;z-index:2;
	box-shadow:0 2px 10px rgba(0,0,0,.2);
	transition:background .2s;
}
.emt-car-prev{left:12px;}
.emt-car-next{right:12px;}
.emt-car-prev:hover,.emt-car-next:hover{background:#fff;}
.emt-car-dots{
	position:absolute;bottom:12px;left:0;right:0;
	display:flex;justify-content:center;gap:7px;z-index:2;
}
.emt-car-dots span{
	width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:background .2s,width .2s;
}
.emt-car-dots span.is-active{background:#fff;width:22px;border-radius:5px;}

.emt-modal-body{padding:24px 28px 30px;}
.emt-modal-name{
	font-family:'Playfair Display',Georgia,serif;
	font-size:28px;margin:0 0 2px;color:#1c1c1c;
}
.emt-modal-role{margin:0 0 16px;color:#d1835a;font-size:15px;font-weight:600;letter-spacing:.2px;}

.emt-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:0 0 18px;}
.emt-meta-row{display:flex;flex-direction:column;border-bottom:1px solid #f0ece7;padding-bottom:7px;}
.emt-meta-label{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#d1835a;font-weight:700;}
.emt-meta-val{font-size:14.5px;color:#333;}

.emt-section{margin:18px 0 0;}
.emt-section h4{
	font-family:'Playfair Display',Georgia,serif;
	font-size:18px;margin:0 0 6px;color:#1c1c1c;
}
.emt-section p{margin:0;color:#444;line-height:1.7;font-size:15px;}
.emt-bio{margin-top:18px;color:#444;line-height:1.7;font-size:15px;}

/* Responsive */
@media(max-width:620px){
	.emt-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;}
	.emt-modal{padding:10px;}
	.emt-modal-window{max-height:94vh;border-radius:16px;}
	.emt-modal-body{padding:18px 18px 24px;}
	.emt-modal-name{font-size:23px;}
	.emt-meta{grid-template-columns:1fr;gap:8px;}
	.emt-car-prev,.emt-car-next{width:36px;height:36px;font-size:20px;}
}
@media(min-width:621px) and (max-width:1024px){
	.emt-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));}
}
