.animal-hero,.animal-profile-hero{
display:grid;
grid-template-columns:minmax(0,1fr) 240px;
align-items:center;
min-height:390px;
padding:clamp(38px,6vw,74px);
overflow:hidden;
border-radius:28px;
background:
radial-gradient(circle at 85% 20%,rgba(183,223,91,.22),transparent 19rem),
linear-gradient(125deg,#173f38,#28725d 65%,#3b8a68);
box-shadow:0 28px 65px rgba(23,63,56,.2);
color:#fff;
}

.animal-hero a,.animal-profile-hero a,.animal-taxon-hero>a{
display:inline-flex;align-items:center;gap:9px;margin-bottom:30px;
color:rgba(255,255,255,.76);font-weight:800;text-decoration:none;
}
.animal-hero p,.animal-profile-hero p,.animal-taxon-hero p{
margin:0 0 9px;color:#d9ef94;font-size:.74rem;font-weight:900;
letter-spacing:.16em;text-transform:uppercase;
}
.animal-hero h1,.animal-profile-hero h1,.animal-taxon-hero h1{
margin:0;font-size:clamp(2.8rem,6vw,5.4rem);line-height:.95;letter-spacing:-.05em;
}
.animal-hero span,.animal-profile-hero span,.animal-taxon-hero span{
display:block;max-width:700px;margin-top:22px;color:rgba(255,255,255,.78);
font-size:1.05rem;line-height:1.7;
}
.animal-hero>i,.animal-profile-hero>i{
color:rgba(255,255,255,.2);font-size:clamp(8rem,15vw,12rem);text-align:center;
}

.animal-classification-note{
display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:28px;padding:17px 20px;
border-radius:15px;background:#e8f5ed;color:#527066;font-size:.82rem;
}
.animal-classification-note strong{color:#28725d}
.animal-classification-note i{font-size:.65rem;color:#7cac83}
.animal-card em{margin-top:4px;color:#74867f;font-family:Georgia,serif}

.science-content-card.animal-card{
border:0!important;
border-radius:0;
box-shadow:none;
}

.science-content-card.animal-card:hover{
box-shadow:none;
}

.animal-rank-description{
margin:16px 0 0!important;
color:#60766e!important;
font-size:.9rem;
line-height:1.55!important;
}

.animal-card-body{
display:flex;
flex:1;
flex-direction:column;
}

.animal-card-action{
margin-top:auto!important;
}

.animal-card-media{
display:block;
height:275px;
margin:-28px -28px 24px;
overflow:hidden;
border-radius:0;
background:#fff;
}

.animal-card-media img{
display:block;
width:100%;
height:100%;
object-fit:contain;
object-position:center 54%;
transform:scale(1.68);
transition:transform .3s ease;
}

.animal-card:hover .animal-card-media img{transform:scale(1.73)}

.animal-card:has(.animal-card-media){
min-height:500px;
}

.animal-classification-grid{
grid-template-columns:1fr;
justify-items:center;
}

.animal-classification-grid .animal-card:has(.animal-card-media){
display:grid;
grid-template-columns:minmax(340px,1.08fr) minmax(300px,.92fr);
width:min(900px,100%);
min-height:350px;
padding:0;
overflow:hidden;
border-radius:28px;
background:#fff;
box-shadow:0 22px 55px rgba(23,63,56,.12);
}

.animal-classification-grid .animal-card-media{
position:relative;
align-self:stretch;
height:100%;
min-height:350px;
margin:0;
padding:0!important;
border-radius:0;
}

.animal-classification-grid .animal-card-media img{
position:absolute;
inset:0;
object-fit:cover;
object-position:center;
transform:none;
}

.animal-classification-grid .animal-card:hover .animal-card-media img{
transform:scale(1.025);
}

.animal-classification-grid .animal-card:hover{
transform:translateY(-4px);
box-shadow:0 28px 62px rgba(23,63,56,.16);
}

.animal-classification-grid .animal-card-body{
justify-content:center;
padding:clamp(28px,4vw,44px);
}

.animal-classification-grid .animal-card-body small{
font-size:.72rem;
letter-spacing:.12em;
}

.animal-classification-grid .animal-card-body h3{
margin-top:12px;
font-size:clamp(2rem,4vw,3.4rem);
line-height:1;
letter-spacing:-.04em;
}

.animal-classification-grid .animal-card-body em{
font-size:1.18rem;
}

.animal-classification-grid .animal-rank-description{
max-width:46ch;
font-size:1rem;
line-height:1.7!important;
}

.animal-classification-grid .animal-card-action{
margin-top:28px!important;
}

.animal-card-placeholder{
display:grid;
place-items:center;
width:56px;
height:56px;
margin-bottom:24px;
border-radius:16px;
background:#e8f5ed;
color:#28725d;
font-size:1.4rem;
}

.animal-taxon-hero{
padding:clamp(35px,6vw,68px);border-radius:26px;
background:linear-gradient(125deg,#163d37,#2f775e);color:#fff;
box-shadow:0 25px 55px rgba(23,63,56,.17);
}
.animal-taxon-hero em,.animal-profile-hero em{
display:block;margin-top:14px;color:#d9ef94;font-family:Georgia,serif;font-size:1.18rem;
}

.animal-species-callout{
display:grid;grid-template-columns:60px minmax(0,1fr) 30px;align-items:center;gap:22px;
margin-top:30px;padding:26px;border:1px solid rgba(40,114,93,.18);border-radius:20px;
background:#fff;color:inherit;text-decoration:none;box-shadow:0 14px 35px rgba(23,63,56,.08);
}
.animal-species-callout>i:first-child{color:#28725d;font-size:2rem;text-align:center}
.animal-species-callout>i:last-child{color:#28725d}
.animal-species-callout small{color:#28725d;font-weight:900;text-transform:uppercase}
.animal-species-callout h2{margin:5px 0}
.animal-species-callout p{margin:0;color:var(--science-muted)}

.animal-profile-hero.is-breed{background:linear-gradient(125deg,#3d4c2d,#718743)}

.animal-profile-hero.is-breed.has-image{
grid-template-columns:minmax(340px,.95fr) minmax(0,1.05fr);
min-height:430px;
padding:0;
background:linear-gradient(125deg,#3d4c2d,#718743);
}

.animal-breed-media{
align-self:stretch;
min-height:430px;
overflow:hidden;
}

.animal-breed-media img{
display:block;
width:100%;
height:100%;
min-height:430px;
object-fit:cover;
object-position:center;
}

.animal-breed-copy{
padding:clamp(38px,5vw,68px);
}

.animal-profile-hero.is-breed.has-image .animal-breed-copy a{
margin-bottom:25px;
}
.animal-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:25px}
.animal-facts article{display:grid;gap:9px;padding:22px;border:1px solid rgba(40,114,93,.15);border-radius:17px;background:#fff}
.animal-facts small{color:#28725d;font-weight:900;text-transform:uppercase}
.animal-facts strong{line-height:1.45}
.animal-description{margin-top:28px;padding:32px;border-radius:20px;background:#e8f5ed}
.animal-description p{margin:0 0 8px;color:#28725d;font-weight:900;text-transform:uppercase}
.animal-description h2{margin:0;font-size:clamp(1.4rem,3vw,2.2rem)}

.science-content-card.animal-race-card{
display:flex;
min-height:410px;
padding:0;
overflow:hidden;
border-radius:22px;
background:#fff;
box-shadow:0 16px 38px rgba(23,63,56,.1);
}

.science-content-card.animal-race-card:hover{
transform:translateY(-5px);
box-shadow:0 24px 48px rgba(23,63,56,.15);
}

.animal-race-card-media{
display:block!important;
height:220px;
margin:0!important;
padding:0!important;
overflow:hidden;
background:#edf4ef;
}

.animal-race-card-media img{
display:block;
width:100%;
height:100%;
object-fit:cover;
object-position:center;
transition:transform .3s ease;
}

.animal-race-card:hover .animal-race-card-media img{
transform:scale(1.04);
}

.animal-race-card-placeholder{
display:grid!important;
place-items:center;
height:220px;
margin:0!important;
padding:0!important;
background:linear-gradient(145deg,#e8f5ed,#f5f9e8);
color:#28725d;
font-size:2.2rem;
}

.animal-race-card .animal-card-body{
padding:26px 28px 28px;
}

.animal-race-card .animal-card-body small{
color:#28725d;
font-size:.7rem;
font-weight:900;
letter-spacing:.08em;
text-transform:uppercase;
}

.animal-race-card .animal-card-body h3{
margin:10px 0 8px;
font-size:1.35rem;
}

.animal-race-card .animal-card-body>p{
margin:0;
color:var(--science-muted);
line-height:1.55;
}

@media(max-width:800px){
.animal-hero,.animal-profile-hero{grid-template-columns:1fr}
.animal-hero>i,.animal-profile-hero>i{display:none}
.animal-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.animal-profile-hero.is-breed.has-image{grid-template-columns:1fr}
.animal-breed-media,.animal-breed-media img{
min-height:300px;
height:300px;
}
.animal-classification-grid .animal-card:has(.animal-card-media){
grid-template-columns:1fr;
width:min(560px,100%);
border-radius:22px;
}
.animal-classification-grid .animal-card-media{
height:280px;
min-height:0;
}
}
@media(max-width:560px){
.animal-hero,.animal-profile-hero{padding:36px 24px;border-radius:20px}
.animal-facts{grid-template-columns:1fr}
.animal-species-callout{grid-template-columns:42px minmax(0,1fr)}
.animal-species-callout>i:last-child{display:none}
.animal-card-media{height:235px}
.animal-card-media img{transform:scale(1.52)}
.animal-card:hover .animal-card-media img{transform:scale(1.57)}
}
