/*! TakeFaster — Curiosidades sobre Animais | build 2026-08-26 */
:root{

--pink-50:#fff5f9;
--pink-100:#ffe8f0;
--pink-200:#ffcfe0;
--pink-300:#ffaecd;
--pink-400:#ff87b2;
--pink-500:#ff5c97;
--pink-600:#f43c81;
--pink-700:#cf2465;


--orange-100:#fff2e2;
--orange-200:#ffe0be;
--orange-300:#ffc78a;
--orange-400:#ffa84f;
--orange-500:#ff8a2b;
--orange-600:#e86d0e;


--green-100:#eafaef;
--green-200:#d2f4dc;
--green-300:#a9e7bd;
--green-400:#6fd396;
--green-500:#35b972;
--green-600:#1e9a5c;


--ink-900:#241a20;
--ink-800:#35272e;
--ink-700:#4c3b43;
--ink-600:#67555e;
--ink-500:#86747d;
--ink-400:#a99aa1;
--ink-300:#cfc4c9;
--ink-200:#e8dfe3;
--ink-100:#f4eef1;
--cream:#fffaf7;
--white:#ffffff;


--brand:var(--pink-500);
--brand-strong:var(--pink-600);
--accent:var(--orange-500);
--success:var(--green-500);
--danger:#e5484d;
--text:var(--ink-800);
--text-soft:var(--ink-600);
--text-muted:var(--ink-500);
--bg:var(--white);
--surface:var(--white);
--border:var(--ink-200);


--grad-brand:linear-gradient(135deg,var(--pink-500) 0%,var(--pink-400) 45%,var(--orange-400) 100%);
--grad-warm:linear-gradient(135deg,var(--orange-400) 0%,var(--pink-400) 100%);
--grad-fresh:linear-gradient(135deg,var(--green-400) 0%,var(--pink-300) 100%);
--grad-soft:linear-gradient(180deg,var(--pink-50) 0%,var(--white) 100%);
--grad-logo:linear-gradient(180deg,var(--pink-300) 0%,var(--pink-400) 50%,var(--pink-500) 100%);


--font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
--fs-hero:clamp(2.15rem,1.35rem + 3.4vw,4.15rem);
--fs-h1:clamp(1.95rem,1.3rem + 2.4vw,3.1rem);
--fs-h2:clamp(1.5rem,1.15rem + 1.3vw,2.15rem);
--fs-h3:clamp(1.15rem,1.02rem + 0.5vw,1.4rem);
--fs-lead:clamp(1.05rem,1rem + 0.4vw,1.25rem);
--fs-body:1.0425rem;
--fs-sm:0.925rem;
--fs-xs:0.8125rem;


--shell:1180px;
--shell-wide:1420px;
--gap:clamp(1rem,0.6rem + 1.2vw,1.75rem);
--band-y:clamp(3rem,2rem + 4vw,6rem);
--r-sm:10px;
--r-md:16px;
--r-lg:24px;
--r-xl:34px;
--r-pill:999px;


--sh-xs:0 1px 2px rgba(36,26,32,0.06);
--sh-sm:0 4px 14px rgba(36,26,32,0.07);
--sh-md:0 12px 30px -8px rgba(36,26,32,0.16);
--sh-lg:0 26px 60px -18px rgba(36,26,32,0.28);
--sh-pink:0 18px 40px -14px rgba(244,60,129,0.45);
--sh-orange:0 18px 40px -14px rgba(232,109,14,0.4);
--sh-inset:inset 0 1px 0 rgba(255,255,255,0.7);


--ease:cubic-bezier(0.22,0.68,0.32,1);
--t-fast:140ms var(--ease);
--t:260ms var(--ease);
--t-slow:520ms var(--ease);
}

@media (prefers-reduced-motion:reduce){
:root{
--t-fast:1ms linear;
--t:1ms linear;
--t-slow:1ms linear;
}
}


*,
*::before,
*::after{
box-sizing:border-box;
}

html{
-webkit-text-size-adjust:100%;
scroll-behavior:smooth;
scroll-padding-top:96px;
}

body{
margin:0;
background:var(--cream);
color:var(--text);
font-family:var(--font);
font-size:var(--fs-body);
line-height:1.68;
font-synthesis-weight:none;
-webkit-font-smoothing:antialiased;
overflow-x:hidden;
}


body::before{
content:'';
position:fixed;
inset:0;
z-index:-1;
pointer-events:none;
background:
radial-gradient(60rem 40rem at 8% -8%,var(--pink-100) 0%,transparent 62%),
radial-gradient(48rem 36rem at 98% 6%,var(--orange-100) 0%,transparent 60%),
radial-gradient(52rem 40rem at 50% 108%,var(--green-100) 0%,transparent 62%),
var(--cream);
}

h1,
h2,
h3,
h4{
margin:0 0 0.5em;
color:var(--ink-900);
font-weight:800;
line-height:1.14;
letter-spacing:-0.022em;
text-wrap:balance;
}

h1{
font-size:var(--fs-h1);
font-weight:900;
}
h2{
font-size:var(--fs-h2);
}
h3{
font-size:var(--fs-h3);
}

p{
margin:0 0 1.1em;
}

a{
color:var(--pink-700);
text-decoration-color:var(--pink-300);
text-decoration-thickness:2px;
text-underline-offset:3px;
transition:color var(--t-fast),text-decoration-color var(--t-fast);
}

a:hover{
color:var(--pink-600);
text-decoration-color:var(--pink-500);
}

strong{
font-weight:700;
color:var(--ink-900);
}

em.sci{
font-style:italic;
color:var(--text-soft);
}

img,
svg,
picture{
max-width:100%;
display:block;
}

ul,
ol{
margin:0 0 1.2em;
padding-left:1.35em;
}

li + li{
margin-top:0.4em;
}

button,
input,
select{
font:inherit;
color:inherit;
}

button{
cursor:pointer;
}

:focus-visible{
outline:3px solid var(--pink-500);
outline-offset:3px;
border-radius:6px;
}

::selection{
background:var(--pink-200);
color:var(--ink-900);
}

hr{
border:0;
height:1px;
background:var(--border);
margin:2.5rem 0;
}

.sr-only{
position:absolute;
width:1px;
height:1px;
padding:0;
margin:-1px;
overflow:hidden;
clip:rect(0,0,0,0);
white-space:nowrap;
border:0;
}

.skip-link{
position:absolute;
top:-60px;
left:1rem;
z-index:200;
padding:0.7rem 1.1rem;
border-radius:var(--r-pill);
background:var(--ink-900);
color:#fff;
font-weight:600;
text-decoration:none;
transition:top var(--t);
}

.skip-link:focus{
top:1rem;
color:#fff;
}


.shell{
width:100%;
max-width:var(--shell);
margin-inline:auto;
padding-inline:clamp(1.1rem,0.6rem + 2vw,2.5rem);
}

.shell--wide{
max-width:var(--shell-wide);
}



.site-header{
position:sticky;
top:0;
z-index:100;
background:rgba(255,255,255,0.82);
backdrop-filter:blur(14px) saturate(150%);
-webkit-backdrop-filter:blur(14px) saturate(150%);
border-bottom:1px solid rgba(36,26,32,0.06);
transition:box-shadow var(--t),background var(--t);
}

.site-header.is-stuck{
box-shadow:var(--sh-sm);
background:rgba(255,255,255,0.94);
}

.site-header__inner{
display:flex;
align-items:center;
gap:clamp(0.75rem,2vw,2rem);
min-height:74px;
}

.brand{
flex:0 0 auto;
display:block;
line-height:0;
text-decoration:none;
}

.brand img{
width:auto;
height:30px;
}

.site-footer .brand img{
height:34px;
}

.site-nav{
flex:1 1 auto;
display:flex;
align-items:center;
justify-content:center;
gap:1.25rem;
}

.site-nav ul{
display:flex;
align-items:center;
gap:clamp(0.35rem,1.2vw,1.15rem);
margin:0;
padding:0;
list-style:none;
}

.site-nav li + li{
margin:0;
}

.site-nav a{
display:inline-block;
padding:0.5rem 0.7rem;
border-radius:var(--r-pill);
color:var(--ink-700);
font-size:var(--fs-sm);
font-weight:600;
text-decoration:none;
white-space:nowrap;
transition:background var(--t-fast),color var(--t-fast);
}

.site-nav a:hover{
background:var(--pink-100);
color:var(--pink-700);
}

.site-nav a[aria-current='page']{
background:var(--pink-500);
color:#fff;
box-shadow:var(--sh-pink);
}

.site-nav__cta{
display:none;
}

.site-header__actions{
flex:0 0 auto;
display:flex;
align-items:center;
gap:0.5rem;
}

.icon-btn{
display:grid;
place-items:center;
width:42px;
height:42px;
border-radius:50%;
border:1px solid var(--border);
background:var(--white);
color:var(--ink-700);
transition:transform var(--t-fast),border-color var(--t-fast),color var(--t-fast);
}

.icon-btn svg{
width:20px;
height:20px;
}

.icon-btn:hover{
transform:translateY(-2px);
border-color:var(--pink-300);
color:var(--pink-600);
}

.nav-toggle{
display:none;
width:44px;
height:44px;
border:1px solid var(--border);
border-radius:14px;
background:var(--white);
padding:0;
place-items:center;
gap:5px;
}

.nav-toggle span{
display:block;
width:19px;
height:2px;
border-radius:2px;
background:var(--ink-800);
transition:transform var(--t),opacity var(--t-fast);
}

.nav-toggle[aria-expanded='true'] span:nth-child(1){
transform:translateY(7px) rotate(45deg);
}
.nav-toggle[aria-expanded='true'] span:nth-child(2){
opacity:0;
}
.nav-toggle[aria-expanded='true'] span:nth-child(3){
transform:translateY(-7px) rotate(-45deg);
}

@media (max-width:940px){
.nav-toggle{
display:grid;
}

.site-nav{
position:fixed;
inset:74px 0 auto;
flex-direction:column;
align-items:stretch;
gap:0.35rem;
padding:1rem clamp(1.1rem,4vw,2rem) 1.6rem;
background:rgba(255,255,255,0.97);
backdrop-filter:blur(16px);
border-bottom:1px solid var(--border);
box-shadow:var(--sh-md);
transform:translateY(-14px);
opacity:0;
visibility:hidden;
transition:opacity var(--t),transform var(--t),visibility var(--t);
}

.site-nav.is-open{
transform:none;
opacity:1;
visibility:visible;
}

.site-nav ul{
flex-direction:column;
align-items:stretch;
gap:0.15rem;
}

.site-nav a{
display:block;
padding:0.8rem 1rem;
border-radius:var(--r-md);
font-size:1.02rem;
}

.site-nav__cta{
display:inline-flex;
margin-top:0.6rem;
justify-content:center;
}
}



.breadcrumb{
padding:0.9rem 0 0.2rem;
}

.breadcrumb ol{
display:flex;
flex-wrap:wrap;
align-items:center;
gap:0.3rem 0.55rem;
margin:0;
padding-inline:clamp(1.1rem,0.6rem + 2vw,2.5rem);
list-style:none;
font-size:var(--fs-xs);
color:var(--text-muted);
}

.breadcrumb li{
margin:0;
display:flex;
align-items:center;
gap:0.55rem;
}

.breadcrumb li + li::before{
content:'›';
color:var(--ink-300);
font-weight:700;
}

.breadcrumb a{
color:var(--text-soft);
text-decoration:none;
font-weight:600;
}

.breadcrumb a:hover{
color:var(--pink-600);
text-decoration:underline;
}

.breadcrumb [aria-current='page'] span{
color:var(--ink-800);
font-weight:700;
}



.band{
position:relative;
padding-block:var(--band-y);
}

.band--plain{
background:transparent;
}

.band--soft{
background:linear-gradient(180deg,rgba(255,255,255,0) 0%,var(--white) 12%,var(--white) 88%,rgba(255,255,255,0) 100%);
}

.band--pink{
background:linear-gradient(160deg,var(--pink-50) 0%,var(--pink-100) 100%);
}

.band--green{
background:linear-gradient(160deg,var(--green-100) 0%,rgba(255,255,255,0.6) 100%);
}

.band--orange{
background:linear-gradient(160deg,var(--orange-100) 0%,rgba(255,255,255,0.55) 100%);
}

.band--dark{
background:radial-gradient(80rem 40rem at 15% -20%,#46323c 0%,transparent 60%),var(--ink-900);
color:rgba(255,255,255,0.86);
}

.band--dark h2,
.band--dark h3{
color:#fff;
}


.band--related{
border-top:1px solid var(--ink-100);
}

.section-head{
display:flex;
align-items:flex-end;
justify-content:space-between;
gap:1.5rem;
margin-bottom:clamp(1.5rem,1rem + 1.6vw,2.75rem);
}

.section-head--center{
flex-direction:column;
align-items:center;
text-align:center;
}

.section-head--center .section-lead{
margin-inline:auto;
}

.section-title{
margin:0;
font-size:var(--fs-h2);
}

.section-lead{
margin:0.6rem 0 0;
max-width:62ch;
color:var(--text-soft);
font-size:var(--fs-lead);
}

.eyebrow{
margin:0 0 0.6rem;
display:inline-flex;
align-items:center;
gap:0.5rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.14em;
text-transform:uppercase;
color:var(--pink-600);
}

.eyebrow::before{
content:'';
width:26px;
height:3px;
border-radius:3px;
background:var(--grad-brand);
}

.link-arrow{
flex:0 0 auto;
display:inline-flex;
align-items:center;
gap:0.45rem;
font-weight:700;
font-size:var(--fs-sm);
text-decoration:none;
color:var(--pink-700);
}

.link-arrow span{
transition:transform var(--t-fast);
}

.link-arrow:hover span{
transform:translateX(4px);
}



.scene{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:cover;
pointer-events:none;
}

.mascot{
position:relative;
display:inline-grid;
place-items:center;
line-height:1;
pointer-events:none;
}

.mascot__glyph{
position:relative;
z-index:1;
filter:drop-shadow(0 18px 22px rgba(36,26,32,0.28));
}

.mascot__glow{
position:absolute;
inset:-35%;
border-radius:50%;
background:radial-gradient(circle,rgba(255,255,255,0.85) 0%,rgba(255,174,205,0.45) 45%,transparent 72%);
filter:blur(4px);
}

.mascot--sm .mascot__glyph{
font-size:2.1rem;
}
.mascot--md .mascot__glyph{
font-size:3.1rem;
}
.mascot--lg .mascot__glyph{
font-size:clamp(3.4rem,2.4rem + 3vw,5.2rem);
}
.mascot--xl .mascot__glyph{
font-size:clamp(5rem,3rem + 9vw,11rem);
}

.mascot.is-floating .mascot__glyph{
animation:float 6.5s var(--ease) infinite;
}

@keyframes float{
0%,
100%{
transform:translateY(0) rotate(-2deg);
}
50%{
transform:translateY(-14px) rotate(2deg);
}
}

@media (prefers-reduced-motion:reduce){
.mascot.is-floating .mascot__glyph{
animation:none;
}
}

.wave{
position:absolute;
left:0;
width:100%;
height:clamp(38px,6vw,80px);
pointer-events:none;
}

.wave--bottom{
bottom:-1px;
}

.paw-trail{
position:absolute;
width:200px;
height:66px;
color:currentColor;
opacity:0.16;
pointer-events:none;
}



.hero{
position:relative;
isolation:isolate;
overflow:hidden;
padding-block:clamp(2.6rem,1.6rem + 5vw,6rem) clamp(4rem,3rem + 5vw,7.5rem);
}

.hero__scene{
position:absolute;
inset:0;
z-index:-2;
}

.hero__veil{
position:absolute;
inset:0;
z-index:-1;
background:linear-gradient(100deg,rgba(255,255,255,0.92) 0%,rgba(255,255,255,0.66) 44%,rgba(255,255,255,0.12) 72%,transparent 100%);
}

.hero__inner{
display:grid;
grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr);
align-items:center;
gap:clamp(1.5rem,1rem + 3vw,3.5rem);
}

.hero__text{
position:relative;
z-index:1;
}

.hero__title{
margin:0 0 0.7rem;
font-size:var(--fs-h1);
}

.hero--home .hero__title{
font-size:var(--fs-hero);
}

.hero__lead{
margin:0;
max-width:56ch;
color:var(--ink-700);
font-size:var(--fs-lead);
}

.hero__actions{
display:flex;
flex-wrap:wrap;
gap:0.75rem;
margin-top:1.6rem;
}

.hero__meta{
display:flex;
flex-wrap:wrap;
gap:1.4rem 2.2rem;
margin:1.9rem 0 0;
}

.hero__meta dt{
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--text-muted);
}

.hero__meta dd{
margin:0.15rem 0 0;
font-weight:700;
color:var(--ink-900);
}

.hero__art{
display:grid;
place-items:center;
min-height:180px;
}

@media (max-width:820px){
.hero__inner{
grid-template-columns:minmax(0,1fr);
}

.hero__art{
order:-1;
min-height:0;
}

.hero__veil{
background:linear-gradient(180deg,rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.9) 42%,rgba(255,255,255,0.96) 100%);
}
}



.site-footer{
position:relative;
overflow:hidden;
margin-top:clamp(3rem,2rem + 4vw,6rem);
padding-block:clamp(2.75rem,2rem + 3vw,4.5rem) 1.75rem;
background:radial-gradient(70rem 34rem at 10% -30%,#4a3540 0%,transparent 60%),var(--ink-900);
color:rgba(255,255,255,0.74);
font-size:var(--fs-sm);
}

.site-footer__paws{
top:1.5rem;
right:2rem;
color:var(--pink-300);
opacity:0.2;
}

.site-footer__top{
display:grid;
grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);
gap:clamp(1.75rem,1rem + 3vw,4rem);
}

.site-footer__about p{
margin:1.1rem 0 0;
max-width:44ch;
}

.site-footer__stats{
display:flex;
flex-wrap:wrap;
gap:1.4rem;
margin:1.4rem 0 0;
padding:0;
list-style:none;
}

.site-footer__stats li{
margin:0;
}

.site-footer__stats strong{
display:block;
color:var(--pink-300);
font-size:1.4rem;
font-weight:900;
line-height:1.1;
}

.site-footer__stats span{
font-size:var(--fs-xs);
text-transform:uppercase;
letter-spacing:0.1em;
}

.site-footer__cols{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
gap:clamp(1.25rem,1rem + 1.5vw,2.5rem);
}

.site-footer__title{
margin:0 0 0.85rem;
color:#fff;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.14em;
text-transform:uppercase;
}

.site-footer ul{
margin:0;
padding:0;
list-style:none;
}

.site-footer__cols li + li{
margin-top:0.55rem;
}

.site-footer a{
color:rgba(255,255,255,0.78);
text-decoration:none;
}

.site-footer a:hover{
color:var(--pink-300);
text-decoration:underline;
}

.site-footer__bottom{
margin-top:clamp(2rem,1.5rem + 2vw,3.25rem);
padding-top:1.4rem;
border-top:1px solid rgba(255,255,255,0.12);
display:flex;
flex-wrap:wrap;
justify-content:space-between;
gap:0.6rem 2rem;
font-size:var(--fs-xs);
color:rgba(255,255,255,0.55);
}

.site-footer__bottom p{
margin:0;
}

.site-footer__note{
max-width:60ch;
}

@media (max-width:760px){
.site-footer__top{
grid-template-columns:minmax(0,1fr);
}
}

.to-top{
position:fixed;
right:clamp(1rem,2vw,2rem);
bottom:clamp(1rem,2vw,2rem);
z-index:90;
display:grid;
place-items:center;
width:48px;
height:48px;
border:0;
border-radius:50%;
background:var(--grad-brand);
color:#fff;
box-shadow:var(--sh-pink);
opacity:0;
visibility:hidden;
transform:translateY(12px);
transition:opacity var(--t),transform var(--t),visibility var(--t);
}

.to-top svg{
width:22px;
height:22px;
}

.to-top.is-visible{
opacity:1;
visibility:visible;
transform:none;
}

.to-top:hover{
transform:translateY(-3px) scale(1.04);
}




.btn{
--btn-bg:var(--white);
--btn-fg:var(--ink-800);
position:relative;
display:inline-flex;
align-items:center;
justify-content:center;
gap:0.55rem;
padding:0.8rem 1.5rem;
border:0;
border-radius:var(--r-pill);
background:var(--btn-bg);
color:var(--btn-fg);
font-size:var(--fs-sm);
font-weight:700;
line-height:1.25;
text-align:center;
text-decoration:none;
transition:transform var(--t-fast),box-shadow var(--t),background var(--t-fast),color var(--t-fast);
}

.btn:hover{
transform:translateY(-2px);
}

.btn:active{
transform:translateY(0);
}

.btn--primary{
--btn-fg:#fff;
background:var(--grad-brand);
box-shadow:var(--sh-pink);
}

.btn--primary:hover{
--btn-fg:#fff;
box-shadow:0 24px 48px -16px rgba(244,60,129,0.6);
}

.btn--accent{
--btn-fg:#fff;
background:linear-gradient(135deg,var(--orange-500),var(--orange-400));
box-shadow:var(--sh-orange);
}

.btn--soft{
--btn-bg:var(--white);
--btn-fg:var(--pink-700);
border:1px solid var(--pink-200);
box-shadow:var(--sh-xs);
}

.btn--soft:hover{
--btn-bg:var(--pink-50);
border-color:var(--pink-300);
}

.btn--ghost{
--btn-bg:transparent;
--btn-fg:var(--pink-700);
border:1.5px solid var(--pink-300);
}

.btn--ghost-light{
--btn-bg:rgba(255,255,255,0.14);
--btn-fg:#fff;
border:1.5px solid rgba(255,255,255,0.45);
}

.btn--ghost-light:hover{
--btn-bg:rgba(255,255,255,0.24);
--btn-fg:#fff;
}

.btn--truth{
--btn-bg:var(--green-100);
--btn-fg:var(--green-600);
border:1.5px solid var(--green-300);
}

.btn--myth{
--btn-bg:var(--pink-50);
--btn-fg:var(--pink-700);
border:1.5px solid var(--pink-200);
}

.btn--sm{
padding:0.5rem 1rem;
font-size:var(--fs-xs);
}

.btn--lg{
padding:1rem 2rem;
font-size:1.06rem;
}

.btn--block{
width:100%;
}

.btn[disabled]{
opacity:0.5;
cursor:not-allowed;
transform:none;
}



.chips{
display:flex;
flex-wrap:wrap;
gap:0.5rem;
margin:1.2rem 0 0;
padding:0;
list-style:none;
}

.chips li{
margin:0;
}

.chip{
display:inline-flex;
align-items:center;
gap:0.35rem;
padding:0.38rem 0.85rem;
border-radius:var(--r-pill);
background:rgba(255,255,255,0.9);
border:1px solid var(--pink-200);
color:var(--pink-700);
font-size:var(--fs-xs);
font-weight:700;
box-shadow:var(--sh-xs);
}

.pill{
padding:0.45rem 1rem;
border:1px solid var(--border);
border-radius:var(--r-pill);
background:var(--white);
color:var(--text-soft);
font-size:var(--fs-xs);
font-weight:700;
transition:all var(--t-fast);
}

.pill:hover{
border-color:var(--pink-300);
color:var(--pink-700);
}

.pill.is-active{
background:var(--pink-500);
border-color:var(--pink-500);
color:#fff;
}



.grid{
display:grid;
gap:var(--gap);
}

.grid--2{
grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
}

.grid--3{
grid-template-columns:repeat(auto-fit,minmax(min(100%,268px),1fr));
}

.grid--4{
grid-template-columns:repeat(auto-fit,minmax(min(100%,218px),1fr));
}

.grid--tight{
gap:1rem;
}


.grid--tools{
grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
}



.card{
position:relative;
border-radius:var(--r-lg);
background:var(--white);
box-shadow:var(--sh-sm);
transition:transform var(--t),box-shadow var(--t);
isolation:isolate;
}

.card:hover{
transform:translateY(-6px);
box-shadow:var(--sh-lg);
}

.card__link{
display:block;
height:100%;
border-radius:inherit;
overflow:hidden;
color:inherit;
text-decoration:none;
}

.card__scene{
position:relative;
display:block;
height:118px;
overflow:hidden;
}

.card__scene .scene{
transform:scale(1.02);
transition:transform var(--t-slow);
}

.card:hover .card__scene .scene{
transform:scale(1.09);
}

.card__mascot{
position:absolute;
top:62px;
left:20px;
z-index:2;
transition:transform var(--t);
}

.card:hover .card__mascot{
transform:translateY(-5px) scale(1.06);
}

.card__body{
display:flex;
flex-direction:column;
gap:0.35rem;
padding:1.6rem 1.4rem 1.4rem;
}

.card--species .card__body,
.card--list .card__body,
.card--category .card__body{
padding-top:2.1rem;
}

.card__tag{
align-self:flex-start;
padding:0.22rem 0.6rem;
border-radius:var(--r-pill);
background:var(--pink-100);
color:var(--pink-700);
font-size:0.72rem;
font-weight:800;
letter-spacing:0.06em;
text-transform:uppercase;
}

.card__tag--level{
background:var(--orange-100);
color:var(--orange-600);
}

.card__title{
color:var(--ink-900);
font-size:1.12rem;
font-weight:800;
line-height:1.28;
letter-spacing:-0.015em;
}

.card__sci{
color:var(--text-muted);
font-size:var(--fs-xs);
font-style:italic;
}

.card__text{
color:var(--text-soft);
font-size:var(--fs-sm);
line-height:1.55;
}

.card__meta{
color:var(--text-muted);
font-size:var(--fs-xs);
font-weight:600;
}

.card__cta{
margin-top:auto;
padding-top:0.7rem;
display:inline-flex;
align-items:center;
gap:0.4rem;
color:var(--pink-600);
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.03em;
text-transform:uppercase;
}

.card__cta span{
transition:transform var(--t-fast);
}

.card:hover .card__cta span{
transform:translateX(4px);
}

.card__badge{
position:absolute;
top:0.9rem;
right:0.9rem;
z-index:3;
padding:0.3rem 0.7rem;
border-radius:var(--r-pill);
background:rgba(36,26,32,0.72);
backdrop-filter:blur(4px);
color:#fff;
font-size:0.72rem;
font-weight:700;
}

.card--compact .card__scene{
height:86px;
}

.card--compact .card__mascot{
top:42px;
left:16px;
}

.card--compact .card__body{
padding:1.8rem 1.1rem 1.1rem;
}

.card--quiz .card__body{
padding-top:1.3rem;
}

.card--quiz .card__mascot{
position:static;
align-self:flex-start;
display:block;
padding:1.3rem 1.4rem 0;
}

.card--tool .card__link{
display:flex;
flex-direction:column;
gap:0;
}

.tool__icon{
display:grid;
place-items:center;
width:58px;
height:58px;
margin:1.5rem 1.4rem 0;
border-radius:18px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.8rem;
line-height:1;
}

.card--accent-orange .tool__icon{
background:linear-gradient(180deg,var(--orange-100),var(--white));
border-color:var(--orange-200);
}

.card--accent-green .tool__icon{
background:linear-gradient(180deg,var(--green-100),var(--white));
border-color:var(--green-200);
}

.card--accent-pink::after,
.card--accent-orange::after,
.card--accent-green::after{
content:'';
position:absolute;
inset:auto 0 0 0;
height:4px;
border-radius:0 0 var(--r-lg) var(--r-lg);
background:var(--grad-brand);
opacity:0;
transition:opacity var(--t);
}

.card--accent-orange::after{
background:linear-gradient(90deg,var(--orange-500),var(--orange-300));
}

.card--accent-green::after{
background:linear-gradient(90deg,var(--green-500),var(--green-300));
}

.card:hover::after{
opacity:1;
}



.stat-strip{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));
gap:1px;
margin:0;
padding:0;
list-style:none;
border-radius:var(--r-lg);
overflow:hidden;
background:var(--border);
box-shadow:var(--sh-md);
}

.stat-strip li{
margin:0;
padding:1.5rem 1.25rem;
background:var(--white);
text-align:center;
}

.stat-strip__icon{
display:block;
font-size:1.5rem;
margin-bottom:0.35rem;
}

.stat-strip strong{
display:block;
font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem);
font-weight:900;
line-height:1.1;
background:var(--grad-brand);
-webkit-background-clip:text;
background-clip:text;
color:transparent;
}

.stat-strip li>span:last-child{
display:block;
margin-top:0.2rem;
color:var(--text-muted);
font-size:var(--fs-xs);
font-weight:700;
letter-spacing:0.08em;
text-transform:uppercase;
}



.article{
display:grid;
grid-template-columns:minmax(0,1fr) 320px;
align-items:start;
gap:clamp(1.75rem,1rem + 3vw,3.5rem);
}

.prose{
max-width:74ch;
font-size:1.075rem;
}

.prose>p:first-of-type{
font-size:var(--fs-lead);
color:var(--ink-700);
}

.prose-block{
margin-bottom:clamp(1.75rem,1.2rem + 1.6vw,2.75rem);
scroll-margin-top:100px;
}

.prose-block h2{
position:relative;
margin-top:0;
padding-top:1.5rem;
}

.prose-block h2::before{
content:'';
position:absolute;
top:0;
left:0;
width:44px;
height:4px;
border-radius:4px;
background:var(--grad-brand);
}

.bullets{
margin:1.4rem 0;
padding:0;
list-style:none;
}

.bullets li{
position:relative;
margin:0 0 0.7rem;
padding-left:2rem;
}

.bullets li::before{
content:'';
position:absolute;
left:0;
top:0.55em;
width:11px;
height:11px;
border-radius:50%;
background:var(--grad-brand);
box-shadow:0 0 0 4px var(--pink-100);
}

.ordered{
counter-reset:ord;
list-style:none;
padding:0;
}

.ordered li{
counter-increment:ord;
position:relative;
padding-left:2.6rem;
margin-bottom:0.8rem;
}

.ordered li::before{
content:counter(ord);
position:absolute;
left:0;
top:0.1em;
display:grid;
place-items:center;
width:28px;
height:28px;
border-radius:50%;
background:var(--pink-100);
color:var(--pink-700);
font-size:0.85rem;
font-weight:800;
}


.fact-bubbles{
list-style:none;
margin:1.5rem 0 0;
padding:0;
counter-reset:fb;
display:grid;
gap:0.85rem;
}

.fact-bubble{
position:relative;
display:flex;
align-items:flex-start;
gap:1rem;
margin:0;
padding:1.1rem 1.25rem;
border-radius:var(--r-md);
background:var(--white);
border:1px solid var(--ink-100);
box-shadow:var(--sh-xs);
transition:transform var(--t-fast),box-shadow var(--t-fast),border-color var(--t-fast);
}

.fact-bubble:hover{
transform:translateX(4px);
border-color:var(--pink-200);
box-shadow:var(--sh-sm);
}

.fact-bubble__n{
flex:0 0 auto;
display:grid;
place-items:center;
width:34px;
height:34px;
border-radius:12px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
color:var(--pink-600);
font-size:0.9rem;
font-weight:900;
}

.fact-bubble p{
margin:0;
font-size:var(--fs-sm);
line-height:1.6;
}


.callout{
display:flex;
gap:1rem;
margin:1.75rem 0;
padding:1.35rem 1.5rem;
border-radius:var(--r-md);
border-left:5px solid var(--pink-400);
background:linear-gradient(120deg,var(--pink-50),rgba(255,255,255,0.7));
box-shadow:var(--sh-xs);
}

.callout--orange{
border-left-color:var(--orange-400);
background:linear-gradient(120deg,var(--orange-100),rgba(255,255,255,0.7));
}

.callout--green{
border-left-color:var(--green-400);
background:linear-gradient(120deg,var(--green-100),rgba(255,255,255,0.7));
}

.callout__icon{
font-size:1.5rem;
line-height:1.2;
}

.callout strong{
display:block;
margin-bottom:0.3rem;
font-size:1.02rem;
}

.callout p{
margin:0;
font-size:var(--fs-sm);
color:var(--ink-700);
}


.table-wrap{
margin:1.75rem 0;
overflow:hidden;
border-radius:var(--r-md);
border:1px solid var(--border);
background:var(--white);
box-shadow:var(--sh-xs);
}


.table-wrap__scroll{
overflow-x:auto;
background-image:
linear-gradient(to right,var(--white) 34%,rgba(255,255,255,0)),
linear-gradient(to left,var(--white) 34%,rgba(255,255,255,0)),
radial-gradient(farthest-side at 0 50%,rgba(31,20,27,0.16),rgba(31,20,27,0)),
radial-gradient(farthest-side at 100% 50%,rgba(31,20,27,0.16),rgba(31,20,27,0));
background-position:left center,right center,left center,right center;
background-repeat:no-repeat;
background-size:46px 100%,46px 100%,16px 100%,16px 100%;
background-attachment:local,local,scroll,scroll;
}

.table-wrap__scroll:focus-visible{
outline:3px solid var(--pink-500);
outline-offset:-3px;
}

.data-table{
width:100%;
border-collapse:collapse;
font-size:var(--fs-sm);
background:transparent;
}

.data-table th,
.data-table td{
padding:0.85rem 1.05rem;
text-align:left;
border-bottom:1px solid var(--ink-100);
}

.data-table thead th{
background:var(--pink-50);
color:var(--ink-900);
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.06em;
text-transform:uppercase;
white-space:nowrap;
}

.data-table tbody th{
font-weight:700;
color:var(--ink-900);
}

.data-table tbody tr:last-child th,
.data-table tbody tr:last-child td{
border-bottom:0;
}

.data-table tbody tr:hover{
background:var(--pink-50);
}

.table-wrap figcaption,
.data-table caption{
padding:0.8rem 1.05rem;
color:var(--text-muted);
font-size:var(--fs-xs);
text-align:left;
}


@media (max-width:620px){
.data-table th,
.data-table td{
padding:0.7rem 0.75rem;
}

.table-wrap figcaption,
.data-table caption{
padding:0.7rem 0.85rem;
}
}


.faq__items{
display:grid;
gap:0.7rem;
}

.faq__item,
.dyk-card{
border:1px solid var(--border);
border-radius:var(--r-md);
background:var(--white);
box-shadow:var(--sh-xs);
overflow:hidden;
transition:border-color var(--t-fast),box-shadow var(--t-fast);
}

.faq__item[open],
.dyk-card[open]{
border-color:var(--pink-200);
box-shadow:var(--sh-sm);
}

.faq__item summary,
.dyk-card summary{
display:flex;
align-items:center;
gap:0.85rem;
padding:1.05rem 1.25rem;
cursor:pointer;
color:var(--ink-900);
font-weight:700;
list-style:none;
}

.faq__item summary::-webkit-details-marker,
.dyk-card summary::-webkit-details-marker{
display:none;
}

.faq__item summary::after,
.dyk-card summary::after{
content:'+';
margin-left:auto;
display:grid;
place-items:center;
flex:0 0 auto;
width:28px;
height:28px;
border-radius:50%;
background:var(--pink-100);
color:var(--pink-700);
font-size:1.15rem;
font-weight:800;
transition:transform var(--t-fast),background var(--t-fast);
}

.faq__item[open] summary::after,
.dyk-card[open] summary::after{
content:'−';
background:var(--pink-500);
color:#fff;
}

.faq__item summary:hover,
.dyk-card summary:hover{
background:var(--pink-50);
}

.faq__answer,
.dyk-card__body{
padding:0 1.25rem 1.25rem;
color:var(--text-soft);
font-size:var(--fs-sm);
}

.faq__answer p:last-child,
.dyk-card__body p:last-child{
margin-bottom:0;
}


.toc{
margin:0 0 2rem;
padding:1.25rem 1.4rem;
border-radius:var(--r-md);
background:linear-gradient(140deg,var(--green-100),rgba(255,255,255,0.6));
border:1px solid var(--green-200);
}

.toc__title{
margin:0 0 0.6rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--green-600);
}

.toc ol{
margin:0;
padding-left:1.2rem;
font-size:var(--fs-sm);
}

.toc li{
margin-bottom:0.3rem;
}

.toc a{
color:var(--ink-700);
text-decoration:none;
font-weight:600;
}

.toc a:hover{
color:var(--pink-600);
text-decoration:underline;
}


.factsheet{
position:sticky;
top:96px;
padding:1.6rem 1.5rem;
border-radius:var(--r-lg);
background:var(--white);
border:1px solid var(--border);
box-shadow:var(--sh-md);
}

.factsheet__title{
margin:0 0 1rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--pink-600);
}

.factsheet__list{
margin:0 0 1.25rem;
}

.factsheet__row{
display:flex;
justify-content:space-between;
gap:1rem;
padding:0.6rem 0;
border-bottom:1px dashed var(--ink-200);
}

.factsheet__row:last-child{
border-bottom:0;
}

.factsheet dt{
flex:0 0 40%;
color:var(--text-muted);
font-size:var(--fs-xs);
font-weight:700;
text-transform:uppercase;
letter-spacing:0.04em;
}

.factsheet dd{
flex:1 1 auto;
margin:0;
text-align:right;
font-size:var(--fs-sm);
font-weight:600;
color:var(--ink-900);
}

@media (max-width:940px){
.article{

grid-template-columns:minmax(0,1fr);
}

.factsheet{
position:static;
}
}



.related{
display:grid;
gap:clamp(1.5rem,1rem + 2vw,2.5rem);
}

.related__group--category{
max-width:460px;
}

.related__title{
margin:0 0 1rem;
font-size:1.05rem;
font-weight:800;
}

.link-list{
display:grid;
gap:0.6rem;
margin:0;
padding:0;
list-style:none;
}

.link-list li{
margin:0;
}

.link-list a,
.category-pill{
display:flex;
align-items:center;
gap:0.9rem;
padding:0.9rem 1.1rem;
border-radius:var(--r-md);
background:var(--white);
border:1px solid var(--border);
color:inherit;
text-decoration:none;
box-shadow:var(--sh-xs);
transition:transform var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast);
}

.link-list a:hover,
.category-pill:hover{
transform:translateX(4px);
border-color:var(--pink-300);
box-shadow:var(--sh-sm);
color:inherit;
}

.link-list__icon,
.category-pill>span:first-child{
flex:0 0 auto;
display:grid;
place-items:center;
width:42px;
height:42px;
border-radius:13px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.3rem;
}

.link-list strong,
.category-pill strong{
display:block;
font-size:var(--fs-sm);
line-height:1.35;
}

.link-list small,
.category-pill small{
color:var(--text-muted);
font-size:var(--fs-xs);
}



.cta-band{
position:relative;
overflow:hidden;
margin-top:clamp(2rem,1.5rem + 2vw,3.5rem);
padding-block:clamp(2.25rem,1.5rem + 3vw,3.75rem);
background:radial-gradient(50rem 30rem at 85% 120%,rgba(255,168,79,0.5) 0%,transparent 60%),var(--grad-brand);
color:#fff;
}

.cta-band__paws{
bottom:0.75rem;
left:1.5rem;
color:#fff;
opacity:0.22;
}

.cta-band__inner{
display:flex;
align-items:center;
gap:clamp(1rem,0.5rem + 2vw,2.5rem);
}

.cta-band__art{
flex:0 0 auto;
}

.cta-band__text{
flex:1 1 auto;
}

.cta-band h2{
margin:0 0 0.35rem;
color:#fff;
}

.cta-band p{
margin:0;
max-width:54ch;
color:rgba(255,255,255,0.9);
}

.cta-band__actions{
flex:0 0 auto;
display:flex;
flex-wrap:wrap;
gap:0.7rem;
}

.cta-band__actions .btn--primary{
--btn-fg:var(--pink-700);
background:#fff;
box-shadow:0 18px 40px -14px rgba(36,26,32,0.5);
}

@media (max-width:860px){
.cta-band__inner{
flex-direction:column;
align-items:flex-start;
}

.cta-band__art{
display:none;
}
}



.notice{
margin:1.25rem 0;
padding:0.95rem 1.2rem;
border-radius:var(--r-md);
background:var(--orange-100);
border-left:4px solid var(--orange-400);
color:var(--ink-800);
font-size:var(--fs-sm);
}

.notice--pink{
background:var(--pink-50);
border-left-color:var(--pink-400);
}

.notice--green{
background:var(--green-100);
border-left-color:var(--green-400);
}




.quiz{
position:relative;
overflow:hidden;
margin-bottom:clamp(2rem,1.5rem + 2vw,3.25rem);
padding:clamp(1.4rem,1rem + 1.5vw,2.25rem);
border-radius:var(--r-xl);
background:var(--white);
border:1px solid var(--pink-100);
box-shadow:var(--sh-lg);
}

.quiz::before{
content:'';
position:absolute;
inset:-40% -30% auto auto;
width:26rem;
height:26rem;
border-radius:50%;
background:radial-gradient(circle,var(--pink-50) 0%,transparent 70%);
pointer-events:none;
}

.quiz__head{
position:relative;
display:flex;
flex-wrap:wrap;
align-items:flex-end;
justify-content:space-between;
gap:1rem;
margin-bottom:1.3rem;
}

.quiz__title{
margin:0;
font-size:var(--fs-h3);
}

.quiz__best{
margin:0;
padding:0.45rem 0.95rem;
border-radius:var(--r-pill);
background:var(--orange-100);
color:var(--orange-600);
font-size:var(--fs-xs);
font-weight:700;
white-space:nowrap;
}

.quiz__progress{
position:relative;
height:10px;
border-radius:var(--r-pill);
background:var(--ink-100);
overflow:hidden;
}

.quiz__bar{
display:block;
height:100%;
border-radius:inherit;
background:var(--grad-brand);
transition:width var(--t-slow);
}

.quiz__status{
margin:0.75rem 0 1.5rem;
color:var(--text-muted);
font-size:var(--fs-xs);
font-weight:600;
letter-spacing:0.03em;
text-transform:uppercase;
}

.quiz__status strong{
color:var(--ink-900);
}

.quiz__dot{
margin:0 0.4rem;
color:var(--ink-300);
}

.quiz__stage{
position:relative;
min-height:340px;
}

.quiz__loading{
display:grid;
place-items:center;
min-height:340px;
color:var(--text-muted);
}

.quiz__question{
margin:0 0 1.3rem;
font-size:clamp(1.2rem,1.05rem + 0.7vw,1.55rem);
font-weight:800;
line-height:1.3;
color:var(--ink-900);
letter-spacing:-0.015em;
}

.quiz__options{
display:grid;
gap:0.65rem;
margin:0;
padding:0;
list-style:none;
}

.quiz__options li{
margin:0;
}

.quiz__option{
position:relative;
display:flex;
align-items:center;
gap:0.9rem;
width:100%;
padding:0.95rem 1.15rem;
border:1.5px solid var(--border);
border-radius:var(--r-md);
background:var(--white);
color:var(--ink-800);
font-size:var(--fs-sm);
font-weight:600;
text-align:left;
transition:transform var(--t-fast),border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast);
}

.quiz__option:hover:not([disabled]){
transform:translateX(4px);
border-color:var(--pink-300);
background:var(--pink-50);
box-shadow:var(--sh-sm);
}

.quiz__key{
flex:0 0 auto;
display:grid;
place-items:center;
width:30px;
height:30px;
border-radius:10px;
background:var(--ink-100);
color:var(--ink-600);
font-size:0.82rem;
font-weight:800;
transition:background var(--t-fast),color var(--t-fast);
}

.quiz__option:hover:not([disabled]) .quiz__key{
background:var(--pink-200);
color:var(--pink-700);
}

.quiz__option.is-correct{
border-color:var(--green-400);
background:var(--green-100);
color:var(--ink-900);
}

.quiz__option.is-correct .quiz__key{
background:var(--green-500);
color:#fff;
}

.quiz__option.is-wrong{
border-color:var(--pink-400);
background:var(--pink-50);
}

.quiz__option.is-wrong .quiz__key{
background:var(--danger);
color:#fff;
}

.quiz__option[disabled]{
cursor:default;
opacity:1;
}

.quiz__option.is-dim{
opacity:0.5;
}

.quiz__feedback{
margin-top:1.1rem;
padding:1.1rem 1.25rem;
border-radius:var(--r-md);
background:var(--pink-50);
border-left:4px solid var(--pink-400);
animation:fade-up var(--t) both;
}

.quiz__feedback.is-right{
background:var(--green-100);
border-left-color:var(--green-500);
}

.quiz__verdict{
margin:0 0 0.35rem;
font-weight:800;
color:var(--ink-900);
}

.quiz__explanation{
margin:0;
font-size:var(--fs-sm);
color:var(--ink-700);
}

.quiz__next{
margin-top:1.1rem;
display:flex;
justify-content:flex-end;
}

@keyframes fade-up{
from{
opacity:0;
transform:translateY(8px);
}
to{
opacity:1;
transform:none;
}
}


.quiz__result{
text-align:center;
animation:fade-up var(--t-slow) both;
}

.quiz__score-ring{

--pct:0;
position:relative;
display:grid;
place-items:center;
width:168px;
height:168px;
margin:0.5rem auto 1.25rem;
border-radius:50%;
background:conic-gradient(var(--pink-500) calc(var(--pct) * 1%),var(--ink-100) 0);
}

.quiz__score-ring::after{
content:'';
position:absolute;
inset:12px;
border-radius:50%;
background:var(--white);
}

.quiz__score-value{
position:relative;
z-index:1;
font-size:2.4rem;
font-weight:900;
line-height:1;
color:var(--ink-900);
}

.quiz__score-value small{
display:block;
margin-top:0.2rem;
font-size:0.8rem;
font-weight:700;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--text-muted);
}

.quiz__medal{
font-size:2.6rem;
line-height:1;
}

.quiz__result h3{
margin:0.6rem 0 0.4rem;
font-size:var(--fs-h3);
}

.quiz__result p{
max-width:48ch;
margin-inline:auto;
color:var(--text-soft);
font-size:var(--fs-sm);
}

.quiz__result-actions{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:0.7rem;
margin-top:1.4rem;
}

.quiz__record{
margin-top:1rem;
font-size:var(--fs-xs);
color:var(--text-muted);
}



.random-fact{
position:relative;
overflow:hidden;
padding:clamp(1.75rem,1.2rem + 2.5vw,3.25rem);
border-radius:var(--r-xl);
background:
radial-gradient(40rem 24rem at 100% 0%,rgba(255,168,79,0.28) 0%,transparent 60%),
linear-gradient(140deg,var(--pink-100) 0%,var(--white) 60%);
border:1px solid var(--pink-200);
box-shadow:var(--sh-md);
}

.random-fact__inner{
position:relative;
z-index:1;
max-width:62ch;
}

.random-fact h2{
margin:0 0 0.5rem;
}

.random-fact__lead{
color:var(--text-soft);
font-size:var(--fs-sm);
}

.random-fact>.mascot{
position:absolute;
right:clamp(-1rem,-2vw,1rem);
bottom:-0.5rem;
opacity:0.9;
}

.random-fact__stage{
margin:1.4rem 0;
}

.fact-card{
position:relative;
margin:0;
padding:1.5rem 1.6rem 1.25rem;
border-radius:var(--r-lg);
background:var(--white);
border:1px solid var(--pink-100);
box-shadow:var(--sh-sm);
min-height:148px;
display:flex;
flex-direction:column;
justify-content:center;
}

.fact-card.is-swapping{
animation:fact-swap 420ms var(--ease) both;
}

@keyframes fact-swap{
0%{
opacity:0;
transform:translateY(10px) scale(0.985);
}
100%{
opacity:1;
transform:none;
}
}

.fact-card__mark{
position:absolute;
top:-14px;
left:1.4rem;
display:grid;
place-items:center;
width:40px;
height:40px;
border-radius:13px;
background:var(--grad-brand);
box-shadow:var(--sh-pink);
font-size:1.2rem;
}

.fact-card p{
margin:0.4rem 0 0;
font-size:clamp(1.05rem,1rem + 0.5vw,1.3rem);
font-weight:600;
line-height:1.5;
color:var(--ink-900);
}

.fact-card footer{
margin-top:0.9rem;
font-size:var(--fs-xs);
font-weight:700;
letter-spacing:0.08em;
text-transform:uppercase;
color:var(--pink-600);
}

.random-fact__actions{
display:flex;
flex-wrap:wrap;
gap:0.7rem;
}

.random-fact__counter{
margin:0.9rem 0 0;
font-size:var(--fs-xs);
color:var(--text-muted);
}



.tm-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,296px),1fr));
gap:var(--gap);
}

.tm-card{
position:relative;
display:flex;
flex-direction:column;
padding:1.5rem 1.4rem;
border-radius:var(--r-lg);
background:var(--white);
border:1px solid var(--border);
box-shadow:var(--sh-sm);
transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}

.tm-card:hover{
transform:translateY(-4px);
box-shadow:var(--sh-md);
}

.tm-card.is-revealed{
border-color:var(--pink-200);
}

.tm-card.is-hit{
border-color:var(--green-400);
}

.tm-card.is-miss{
border-color:var(--pink-400);
}


.tm-card__front{
display:flex;
flex:1 1 auto;
flex-direction:column;
}

.tm-card__label{
margin:0 0 0.6rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--text-muted);
}

.tm-card__claim{
margin:0 0 1.2rem;
font-size:1.1rem;
font-weight:700;
line-height:1.4;
color:var(--ink-900);
}

.tm-card__guess{
display:flex;
gap:0.5rem;
margin-top:auto;
}

.tm-card__fallback{
margin-top:0.9rem;
font-size:var(--fs-xs);
}

.tm-card__fallback summary{
cursor:pointer;
color:var(--pink-700);
font-weight:700;
}

.tm-card__fallback p{
margin:0.6rem 0 0;
color:var(--text-soft);
}

.js-on .tm-card__fallback{
display:none;
}

.tm-card__verdict{
animation:fade-up var(--t) both;
}

.tm-card__badge{
margin:0 0 0.5rem;
font-size:1.05rem;
font-weight:900;
}

.tm-card__verdict p{
margin:0 0 0.6rem;
font-size:var(--fs-sm);
color:var(--text-soft);
}

.tm-score{
margin:1.5rem 0 0;
padding:0.9rem 1.2rem;
border-radius:var(--r-md);
background:var(--green-100);
border-left:4px solid var(--green-400);
font-weight:700;
font-size:var(--fs-sm);
}



.dyk-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));
gap:0.85rem;
align-items:start;
}

.dyk-card summary{
align-items:flex-start;
}

.dyk-card__icon{
flex:0 0 auto;
display:grid;
place-items:center;
width:40px;
height:40px;
border-radius:13px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.2rem;
}

.dyk-card__q{
flex:1 1 auto;
line-height:1.4;
}

.dyk-card__chevron{
display:none;
}

.dyk-card__body{
padding-left:1.25rem;
}



.comparator{
padding:clamp(1.25rem,1rem + 1.5vw,2.25rem);
border-radius:var(--r-xl);
background:var(--white);
border:1px solid var(--border);
box-shadow:var(--sh-md);
}

.comparator__controls{
display:grid;
grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
align-items:end;
gap:0.85rem;
margin-bottom:1.75rem;
}

.field label{
display:block;
margin-bottom:0.4rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--text-muted);
}

.select-wrap{
position:relative;
}

.select-wrap::after{
content:'';
position:absolute;
right:1.1rem;
top:50%;
width:9px;
height:9px;
border-right:2px solid var(--ink-500);
border-bottom:2px solid var(--ink-500);
transform:translateY(-70%) rotate(45deg);
pointer-events:none;
}

.comparator select{
width:100%;
padding:0.85rem 2.6rem 0.85rem 1.1rem;
border:1.5px solid var(--border);
border-radius:var(--r-md);
background:var(--white);
font-size:var(--fs-sm);
font-weight:700;
color:var(--ink-900);
appearance:none;
transition:border-color var(--t-fast),box-shadow var(--t-fast);
}

.comparator select:hover,
.comparator select:focus{
border-color:var(--pink-300);
box-shadow:0 0 0 4px var(--pink-50);
}

.swap-btn{
display:grid;
place-items:center;
width:48px;
height:48px;
border:1.5px solid var(--pink-200);
border-radius:50%;
background:var(--pink-50);
color:var(--pink-700);
transition:transform var(--t),background var(--t-fast);
}

.swap-btn svg{
width:22px;
height:22px;
}

.swap-btn:hover{
transform:rotate(180deg);
background:var(--pink-100);
}

.compare-heads{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
gap:0.85rem;
margin-bottom:1.5rem;
}

.compare-head{
position:relative;
overflow:hidden;
padding:1.1rem 1.25rem;
border-radius:var(--r-lg);
background:linear-gradient(140deg,var(--pink-50),var(--white));
border:1px solid var(--pink-100);
text-align:center;
}

.compare-head--b{
background:linear-gradient(140deg,var(--green-100),var(--white));
border-color:var(--green-200);
}

.compare-head__glyph{
font-size:2.6rem;
line-height:1;
filter:drop-shadow(0 10px 14px rgba(36,26,32,0.2));
}

.compare-head__name{
margin:0.5rem 0 0.1rem;
font-size:1.05rem;
font-weight:800;
color:var(--ink-900);
}

.compare-head__group{
margin:0;
font-size:var(--fs-xs);
color:var(--text-muted);
font-weight:700;
text-transform:uppercase;
letter-spacing:0.06em;
}

.compare-rows{
display:grid;
gap:1.1rem;
}

.compare-row{
padding:1rem 1.15rem;
border-radius:var(--r-md);
background:var(--cream);
border:1px solid var(--ink-100);
}

.compare-row__label{
display:flex;
align-items:center;
justify-content:center;
gap:0.4rem;
margin:0 0 0.7rem;
font-size:var(--fs-xs);
font-weight:800;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--text-muted);
}

.compare-bars{
display:grid;
gap:0.5rem;
}

.compare-bar{
display:grid;
grid-template-columns:minmax(0,1fr) auto;
align-items:center;
gap:0.75rem;
}

.compare-bar__track{
height:22px;
border-radius:var(--r-pill);
background:var(--ink-100);
overflow:hidden;
}

.compare-bar__fill{
display:block;
height:100%;
border-radius:inherit;
background:var(--grad-brand);
width:0;
transition:width var(--t-slow);
}

.compare-bar--b .compare-bar__fill{
background:linear-gradient(90deg,var(--green-500),var(--green-300));
}

.compare-bar__value{
min-width:92px;
text-align:right;
font-size:var(--fs-sm);
font-weight:800;
color:var(--ink-900);
font-variant-numeric:tabular-nums;
}

.compare-bar.is-winner .compare-bar__value::after{
content:' 🏆';
}

.compare-text{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
gap:0.85rem;
margin-top:0.4rem;
}

.compare-text__cell{
padding:0.9rem 1.05rem;
border-radius:var(--r-md);
background:var(--white);
border:1px solid var(--ink-100);
font-size:var(--fs-sm);
}

.compare-text__cell strong{
display:block;
margin-bottom:0.2rem;
font-size:var(--fs-xs);
text-transform:uppercase;
letter-spacing:0.08em;
color:var(--text-muted);
}

.compare-verdict{
margin-top:1.5rem;
padding:1.15rem 1.3rem;
border-radius:var(--r-md);
background:linear-gradient(120deg,var(--pink-50),var(--white));
border-left:4px solid var(--pink-400);
font-size:var(--fs-sm);
}

.compare-verdict strong{
display:block;
margin-bottom:0.3rem;
}

.compare-links{
display:flex;
flex-wrap:wrap;
gap:0.6rem;
margin-top:1.25rem;
}


.comparator__stage{
min-height:360px;
}

.comparator__hint{
padding:2rem 0;
text-align:center;
color:var(--text-muted);
}

@media (max-width:720px){
.comparator__controls{
grid-template-columns:minmax(0,1fr);
justify-items:stretch;
}

.swap-btn{
justify-self:center;
}

.compare-text{
grid-template-columns:minmax(0,1fr);
}
}



.blitz{
position:relative;
overflow:hidden;
padding:clamp(1.5rem,1.2rem + 2vw,2.75rem);
border-radius:var(--r-xl);
background:radial-gradient(40rem 26rem at 90% -10%,rgba(255,168,79,0.3) 0%,transparent 62%),var(--ink-900);
color:rgba(255,255,255,0.85);
box-shadow:var(--sh-lg);
}

.blitz h2,
.blitz h3{
color:#fff;
}

.blitz__head{
display:flex;
align-items:center;
justify-content:space-between;
flex-wrap:wrap;
gap:1.25rem;
margin-bottom:1.75rem;
}

.blitz__timer{
position:relative;
width:96px;
height:96px;
flex:0 0 auto;
}

.blitz__timer svg{
width:100%;
height:100%;
transform:rotate(-90deg);
}

.blitz__track,
.blitz__dial{
fill:none;
stroke-width:9;
stroke-linecap:round;
}

.blitz__track{
stroke:rgba(255,255,255,0.14);
}

.blitz__dial{
stroke:var(--orange-400);
stroke-dasharray:327;
stroke-dashoffset:0;
transition:stroke-dashoffset 1s linear,stroke var(--t);
}

.blitz.is-critical .blitz__dial{
stroke:var(--pink-500);
}

.blitz__seconds{
position:absolute;
inset:0;
display:grid;
place-items:center;
font-size:1.9rem;
font-weight:900;
color:#fff;
font-variant-numeric:tabular-nums;
}

.blitz__scores{
display:flex;
gap:clamp(1rem,3vw,2.5rem);
}

.blitz__scores p{
margin:0;
text-align:center;
}

.blitz__scores span{
display:block;
font-size:var(--fs-xs);
letter-spacing:0.1em;
text-transform:uppercase;
color:rgba(255,255,255,0.55);
}

.blitz__scores strong{
display:block;
font-size:1.7rem;
font-weight:900;
color:#fff;
font-variant-numeric:tabular-nums;
}

.blitz__stage{
min-height:260px;
display:grid;
align-content:center;
}

.blitz__intro{
text-align:center;
}

.blitz__bolt{
display:block;
font-size:3rem;
line-height:1;
margin-bottom:0.5rem;
filter:drop-shadow(0 0 22px rgba(255,168,79,0.7));
}

.blitz__intro p{
max-width:52ch;
margin-inline:auto;
color:rgba(255,255,255,0.75);
}

.blitz__question{
margin:0 0 1.25rem;
font-size:clamp(1.15rem,1rem + 0.8vw,1.5rem);
font-weight:800;
line-height:1.32;
color:#fff;
text-align:center;
}

.blitz__options{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
gap:0.6rem;
margin:0;
padding:0;
list-style:none;
}

.blitz__options li{
margin:0;
}

.blitz__option{
width:100%;
padding:0.85rem 1.1rem;
border:1.5px solid rgba(255,255,255,0.2);
border-radius:var(--r-md);
background:rgba(255,255,255,0.07);
color:#fff;
font-size:var(--fs-sm);
font-weight:600;
text-align:left;
transition:transform var(--t-fast),background var(--t-fast),border-color var(--t-fast);
}

.blitz__option:hover{
transform:translateY(-2px);
background:rgba(255,255,255,0.16);
border-color:rgba(255,255,255,0.42);
}

.blitz__option.is-correct{
background:rgba(53,185,114,0.32);
border-color:var(--green-400);
}

.blitz__option.is-wrong{
background:rgba(229,72,77,0.28);
border-color:var(--danger);
}

.blitz__flash{
margin:1rem 0 0;
min-height:1.5rem;
text-align:center;
font-weight:800;
color:var(--orange-300);
}

.blitz__over{
text-align:center;
}

.blitz__over-score{
font-size:clamp(3rem,2rem + 4vw,4.5rem);
font-weight:900;
line-height:1;
color:var(--orange-300);
}

.blitz__over p{
max-width:46ch;
margin-inline:auto;
color:rgba(255,255,255,0.75);
}

.blitz__over-actions{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:0.7rem;
margin-top:1.4rem;
}



.search{
padding:clamp(1.25rem,1rem + 1.5vw,2.25rem);
border-radius:var(--r-xl);
background:var(--white);
border:1px solid var(--border);
box-shadow:var(--sh-md);
}

.search__form{
display:flex;
gap:0.6rem;
}

.search__form input{
flex:1 1 auto;
padding:0.95rem 1.2rem;
border:1.5px solid var(--border);
border-radius:var(--r-pill);
background:var(--cream);
font-size:var(--fs-body);
transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast);
}

.search__form input:focus{
outline:none;
background:var(--white);
border-color:var(--pink-400);
box-shadow:0 0 0 4px var(--pink-50);
}

.search__filters{
display:flex;
flex-wrap:wrap;
gap:0.45rem;
margin:1.1rem 0;
}

.search__status{
margin:0.75rem 0 0;
color:var(--text-muted);
font-size:var(--fs-sm);
}

.search__results{
display:grid;
gap:0.6rem;
margin:1rem 0 0;
padding:0;
list-style:none;
}

.search__results li{
margin:0;
}

.search__results a{
display:flex;
align-items:center;
gap:0.9rem;
padding:0.9rem 1.1rem;
border-radius:var(--r-md);
border:1px solid var(--ink-100);
background:var(--white);
text-decoration:none;
color:inherit;
transition:transform var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast);
}

.search__results a:hover{
transform:translateX(4px);
border-color:var(--pink-300);
box-shadow:var(--sh-sm);
}

.search__glyph{
flex:0 0 auto;
display:grid;
place-items:center;
width:42px;
height:42px;
border-radius:13px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.25rem;
}

.search__meta{
display:block;
color:var(--text-muted);
font-size:var(--fs-xs);
}

.search__kind{
margin-left:auto;
flex:0 0 auto;
padding:0.2rem 0.6rem;
border-radius:var(--r-pill);
background:var(--pink-100);
color:var(--pink-700);
font-size:0.7rem;
font-weight:800;
text-transform:uppercase;
letter-spacing:0.05em;
}




.home-hero{
position:relative;
isolation:isolate;
overflow:hidden;
padding-block:clamp(2.5rem,1.5rem + 5vw,5.5rem) clamp(5rem,3rem + 6vw,9rem);
}

.home-hero__scene{
position:absolute;
inset:0;
z-index:-3;
}

.home-hero__veil{
position:absolute;
inset:0;
z-index:-2;
background:linear-gradient(102deg,rgba(255,255,255,0.95) 0%,rgba(255,255,255,0.72) 40%,rgba(255,255,255,0.1) 70%,transparent 100%);
}

.home-hero__inner{
display:grid;
grid-template-columns:minmax(0,1.02fr) minmax(0,0.98fr);
align-items:center;
gap:clamp(1.5rem,1rem + 3vw,3rem);
}

.home-hero__title{
margin:0 0 0.85rem;
font-size:var(--fs-hero);
font-weight:900;
letter-spacing:-0.035em;
}

.home-hero__title em{
position:relative;
font-style:normal;
background:var(--grad-brand);
-webkit-background-clip:text;
background-clip:text;
color:transparent;
}

.home-hero__lead{
max-width:52ch;
color:var(--ink-700);
font-size:clamp(1.06rem,1rem + 0.5vw,1.32rem);
}

.home-hero__actions{
display:flex;
flex-wrap:wrap;
gap:0.75rem;
margin-top:1.75rem;
}

.home-hero__hint{
margin:1.25rem 0 0;
color:var(--text-muted);
font-size:var(--fs-xs);
}


.home-stage{
position:relative;
min-height:clamp(260px,34vw,430px);
display:grid;
place-items:center;
}

.home-stage__main{
position:relative;
z-index:2;
}

.home-stage__orbit{
position:absolute;
inset:6% 4%;
z-index:1;
border-radius:50%;
border:2px dashed rgba(255,92,151,0.28);
animation:spin 44s linear infinite;
}

.home-stage__orbit::before,
.home-stage__orbit::after{
content:'';
position:absolute;
width:14px;
height:14px;
border-radius:50%;
background:var(--grad-brand);
box-shadow:0 0 0 6px rgba(255,92,151,0.16);
}

.home-stage__orbit::before{
top:-7px;
left:50%;
}

.home-stage__orbit::after{
bottom:12%;
right:4%;
}

@keyframes spin{
to{
transform:rotate(360deg);
}
}

@media (prefers-reduced-motion:reduce){
.home-stage__orbit{
animation:none;
}
}

.home-stage__satellite{
position:absolute;
z-index:3;
}

.home-stage__satellite--1{
top:4%;
left:2%;
}

.home-stage__satellite--2{
bottom:12%;
left:8%;
}

.home-stage__satellite--3{
top:12%;
right:2%;
}

.home-stage__satellite--4{
bottom:4%;
right:12%;
}

.home-stage__card{
position:absolute;
z-index:4;
right:-2%;
bottom:4%;
width:min(260px,78%);
padding:1rem 1.15rem;
border-radius:var(--r-lg);
background:rgba(255,255,255,0.92);
backdrop-filter:blur(10px);
border:1px solid var(--pink-100);
box-shadow:var(--sh-lg);
}

.home-stage__card p{
margin:0;
font-size:var(--fs-xs);
color:var(--text-soft);
}

.home-stage__card strong{
display:block;
margin-bottom:0.2rem;
font-size:var(--fs-sm);
color:var(--ink-900);
}

@media (max-width:900px){
.home-hero__inner{
grid-template-columns:minmax(0,1fr);
}

.home-hero__veil{
background:linear-gradient(180deg,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0.9) 45%,rgba(255,255,255,0.97) 100%);
}

.home-stage{
order:-1;
min-height:220px;
}

.home-stage__card{
display:none;
}
}


.stat-overlap{
position:relative;
z-index:5;
margin-top:clamp(-4.5rem,-3rem - 3vw,-2.5rem);
}



.hub-filters{
display:flex;
flex-wrap:wrap;
gap:0.5rem;
margin-bottom:clamp(1.5rem,1rem + 1.5vw,2.25rem);
}

.hub-count{
margin:0 0 1.25rem;
color:var(--text-muted);
font-size:var(--fs-sm);
}

.category-row{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));
gap:var(--gap);
}

.split{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
gap:clamp(1.5rem,1rem + 3vw,3.5rem);
align-items:center;
}

@media (max-width:880px){
.split{
grid-template-columns:minmax(0,1fr);
}
}



.species-hero .hero__title{
margin-bottom:0.3rem;
}

.species-hero__sci{
margin:0 0 0.9rem;
color:var(--text-soft);
font-size:var(--fs-lead);
font-style:italic;
}

.species-quick{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,132px),1fr));
gap:1px;
margin:0 0 clamp(1.75rem,1.2rem + 2vw,2.75rem);
padding:0;
list-style:none;
border-radius:var(--r-lg);
overflow:hidden;
background:var(--border);
box-shadow:var(--sh-sm);
}

.species-quick li{
margin:0;
padding:1.1rem 1rem;
background:var(--white);
text-align:center;
}

.species-quick__label{
display:block;
font-size:0.7rem;
font-weight:800;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--text-muted);
}

.species-quick__value{
display:block;
margin-top:0.25rem;
font-size:1.15rem;
font-weight:900;
color:var(--ink-900);
}

.species-quick__icon{
display:block;
font-size:1.2rem;
margin-bottom:0.3rem;
}



.entry-list{
display:grid;
gap:clamp(0.85rem,0.6rem + 0.8vw,1.35rem);
margin:1.75rem 0 0;
padding:0;
list-style:none;
counter-reset:entry;
}

.entry{
counter-increment:entry;
position:relative;
display:grid;
grid-template-columns:auto minmax(0,1fr);
gap:1.1rem;
margin:0;
padding:1.4rem 1.5rem;
border-radius:var(--r-lg);
background:var(--white);
border:1px solid var(--ink-100);
box-shadow:var(--sh-xs);
transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}

.entry:hover{
transform:translateY(-3px);
border-color:var(--pink-200);
box-shadow:var(--sh-md);
}

.entry__badge{
position:relative;
display:grid;
place-items:center;
width:62px;
height:62px;
border-radius:20px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.7rem;
}

.entry__badge::after{
content:counter(entry);
position:absolute;
top:-9px;
left:-9px;
display:grid;
place-items:center;
width:27px;
height:27px;
border-radius:50%;
background:var(--grad-brand);
color:#fff;
font-size:0.78rem;
font-weight:900;
box-shadow:var(--sh-pink);
}

.entry__head{
display:flex;
flex-wrap:wrap;
align-items:baseline;
gap:0.5rem 0.75rem;
margin-bottom:0.35rem;
}

.entry__name{
margin:0;
font-size:1.14rem;
font-weight:800;
color:var(--ink-900);
}

.entry__sci{
color:var(--text-muted);
font-size:var(--fs-xs);
font-style:italic;
}

.entry__stat{
margin-left:auto;
padding:0.24rem 0.7rem;
border-radius:var(--r-pill);
background:var(--orange-100);
color:var(--orange-600);
font-size:var(--fs-xs);
font-weight:800;
white-space:nowrap;
}

.entry__text{
margin:0;
color:var(--text-soft);
font-size:var(--fs-sm);
line-height:1.62;
}

.entry__link{
display:inline-flex;
align-items:center;
gap:0.35rem;
margin-top:0.6rem;
font-size:var(--fs-xs);
font-weight:800;
text-decoration:none;
color:var(--pink-700);
}

.entry__link:hover{
text-decoration:underline;
}

@media (max-width:560px){
.entry{
grid-template-columns:minmax(0,1fr);
padding:1.6rem 1.25rem 1.25rem;
}

.entry__badge{
width:52px;
height:52px;
font-size:1.45rem;
}

.entry__stat{
margin-left:0;
}
}



.fact-wall{
columns:3 300px;
column-gap:1rem;
margin:0;
padding:0;
list-style:none;
}

.fact-wall li{
margin:0 0 1rem;
padding:1.15rem 1.3rem;
border-radius:var(--r-md);
background:var(--white);
border:1px solid var(--ink-100);
box-shadow:var(--sh-xs);
break-inside:avoid;
transition:transform var(--t-fast),border-color var(--t-fast);
}

.fact-wall li:hover{
transform:translateY(-3px);
border-color:var(--pink-200);
}

.fact-wall__tag{
display:inline-block;
margin-bottom:0.5rem;
padding:0.18rem 0.6rem;
border-radius:var(--r-pill);
background:var(--green-100);
color:var(--green-600);
font-size:0.7rem;
font-weight:800;
letter-spacing:0.06em;
text-transform:uppercase;
}

.fact-wall p{
margin:0;
font-size:var(--fs-sm);
line-height:1.58;
}



.page-narrow{
max-width:76ch;
margin-inline:auto;
}

.page-narrow h2{
margin-top:2.25rem;
}

.page-narrow h2:first-child{
margin-top:0;
}

.contact-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));
gap:var(--gap);
margin:1.75rem 0;
}

.contact-card{
padding:1.5rem;
border-radius:var(--r-lg);
background:var(--white);
border:1px solid var(--border);
box-shadow:var(--sh-sm);
}

.contact-card__icon{
display:grid;
place-items:center;
width:48px;
height:48px;
margin-bottom:0.9rem;
border-radius:15px;
background:var(--grad-soft);
border:1px solid var(--pink-100);
font-size:1.4rem;
}

.contact-card h3{
margin:0 0 0.35rem;
font-size:1.05rem;
}

.contact-card p{
margin:0;
font-size:var(--fs-sm);
color:var(--text-soft);
}



.notfound{
padding-block:clamp(3rem,2rem + 5vw,6rem);
text-align:center;
}

.notfound__code{
font-size:clamp(4.5rem,3rem + 10vw,9rem);
font-weight:900;
line-height:0.9;
letter-spacing:-0.05em;
background:var(--grad-brand);
-webkit-background-clip:text;
background-clip:text;
color:transparent;
}

.notfound p{
max-width:48ch;
margin-inline:auto;
color:var(--text-soft);
}

.notfound__actions{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:0.7rem;
margin-top:1.5rem;
}


.center{
text-align:center;
}

.mt-0{
margin-top:0;
}

.mb-0{
margin-bottom:0;
}

.lead{
font-size:var(--fs-lead);
color:var(--text-soft);
max-width:68ch;
}

.stack>* + *{
margin-top:1.1rem;
}

.divider-soft{
height:1px;
margin:clamp(2rem,1.5rem + 2vw,3.5rem) 0;
background:linear-gradient(90deg,transparent,var(--ink-200) 20%,var(--ink-200) 80%,transparent);
}


.js-on .reveal{
opacity:0;
transform:translateY(18px);
transition:opacity 620ms var(--ease),transform 620ms var(--ease);
will-change:opacity,transform;
}

.js-on .reveal.is-in{
opacity:1;
transform:none;
}

@media (prefers-reduced-motion:reduce){
.js-on .reveal{
opacity:1;
transform:none;
transition:none;
}
}


.card__link:focus-visible{
outline:3px solid var(--pink-500);
outline-offset:4px;
}

@media print{
body::before,
.site-header,
.site-footer,
.to-top,
.cta-band,
.quiz,
.blitz,
.random-fact,
.comparator,
.search,
.breadcrumb{
display:none !important;
}

body{
background:#fff;
color:#000;
font-size:12pt;
}

.band{
padding-block:0;
}

a{
color:#000;
text-decoration:underline;
}

.article{
display:block;
}
}
