/* Card de touro — reusado na home, catálogo e "outros touros" da ficha */
.card{display:flex;flex-direction:column;background:var(--ng-bg-panel);border-radius:18px;overflow:hidden;border:1px solid rgba(237,237,237,0.1);color:var(--ng-text);}
.card:hover{color:var(--ng-text);border-color:rgba(153,198,138,0.6);}
.card-photo{position:relative;aspect-ratio:3/2;flex:none;background:var(--ng-bg);overflow:hidden;}
.card-photo>img{width:100%;height:100%;object-fit:cover;display:block;}
.nophoto{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(circle at 30% 20%,var(--ng-bg-alt) 0%,var(--ng-bg) 80%);}
.nophoto img{width:120px;height:auto;opacity:0.35;display:block;}
.nophoto span{font-size:12px;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;color:rgba(168,205,178,0.55);}
.card-photo .chip-raca{position:absolute;left:14px;top:14px;}
.card-photo .chip-dest{position:absolute;left:14px;bottom:14px;}
.card-body{padding:22px 24px 20px;display:flex;flex-direction:column;flex:1;}
.card-body h3{font-size:21px;margin-bottom:6px;}
.reg{font-size:13.5px;color:rgba(168,205,178,0.8);margin-bottom:18px;font-weight:600;}
.pta-row{display:flex;align-items:flex-end;justify-content:space-between;background:var(--ng-bg);border-radius:12px;padding:14px 18px;margin-bottom:18px;min-height:74px;}
.pta{display:flex;align-items:flex-end;gap:12px;}
.pta b{font-weight:800;font-size:40px;line-height:0.9;color:var(--ng-accent);}
.pta span{font-size:11.5px;line-height:1.3;color:rgba(168,205,178,0.8);font-weight:600;}
.pta.none{align-items:center;height:46px;}
.acu{text-align:right;}
.acu small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:rgba(168,205,178,0.7);font-weight:700;}
.acu b{font-size:20px;font-weight:800;}
.ped{margin:0 0 18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.ped dt{font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:rgba(168,205,178,0.65);font-weight:700;}
.ped dd{margin:2px 0 0;font-size:13.5px;font-weight:600;line-height:1.3;}
.card-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(237,237,237,0.12);padding-top:14px;font-size:13px;color:rgba(168,205,178,0.8);}
.card-foot b{color:var(--ng-accent);font-weight:700;}

/* Catálogo: hero + toolbar + filtros (raça/busca/view) */
.cat-hero{padding:72px 0 64px;}
.cat-hero p.lead{font-size:18px;line-height:1.6;color:rgba(255,255,255,0.88);max-width:700px;margin-top:18px;}
.sync-badge{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-size:12.5px;font-weight:600;color:var(--ng-accent);}
.sync-badge i{position:relative;width:8px;height:8px;border-radius:50%;background:var(--ng-accent);box-shadow:0 0 0 4px rgba(153,198,138,0.2);display:inline-block;}
.sync-badge i::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--ng-accent);animation:sync-pulse 1.8s ease-out infinite;}
@keyframes sync-pulse{
  0%{transform:scale(1);opacity:0.6;}
  100%{transform:scale(3.2);opacity:0;}
}
@media (prefers-reduced-motion: reduce){
  .sync-badge i::after{animation:none;box-shadow:0 0 0 4px rgba(153,198,138,0.2);}
}

.toolbar{display:flex;flex-direction:column;gap:18px;margin-bottom:32px;}
.tb-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.search{flex:1;min-width:220px;display:flex;align-items:center;gap:10px;background:var(--ng-bg-panel);border:1px solid rgba(237,237,237,0.16);border-radius:999px;padding:0 20px;height:48px;}
.search svg{flex:none;color:var(--ng-accent);}
.search input{flex:1;background:transparent;border:0;outline:0;color:var(--ng-text);font-family:'Raleway',sans-serif;font-size:15px;height:46px;}
.search input::placeholder{color:rgba(168,205,178,0.6);}
.sort{display:flex;align-items:center;gap:10px;background:var(--ng-bg-panel);border:1px solid rgba(237,237,237,0.16);border-radius:999px;padding:0 20px;height:48px;font-size:14px;color:rgba(237,237,237,0.85);white-space:nowrap;}
.sort small{color:rgba(168,205,178,0.7);font-size:12px;text-transform:uppercase;letter-spacing:0.06em;font-weight:700;}
.sort b{font-weight:700;color:#fff;}
.catalog-wrap{position:relative;}
.catalog-wrap input[type=radio]{position:absolute;opacity:0;pointer-events:none;width:0;height:0;}
.vt{display:flex;background:var(--ng-bg-panel);border:1px solid rgba(237,237,237,0.16);border-radius:999px;padding:4px;}
.vt label{display:flex;align-items:center;gap:8px;padding:0 18px;height:38px;border-radius:999px;font-size:14px;font-weight:600;color:rgba(237,237,237,0.8);cursor:pointer;}
#v-cards:checked ~ .toolbar label[for=v-cards],
#v-list:checked ~ .toolbar label[for=v-list]{background:var(--ng-accent);color:var(--ng-bg);}
#v-list:checked ~ .results .view-cards{display:none;}
#v-cards:checked ~ .results .view-list{display:none;}
.chips{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.chips .lbl{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:rgba(168,205,178,0.7);margin-right:6px;}
.chips a{padding:8px 18px;border-radius:999px;border:1px solid rgba(237,237,237,0.25);font-size:14px;font-weight:600;color:var(--ng-text);}
.chips a.active{background:var(--ng-accent);border-color:var(--ng-accent);color:var(--ng-bg);}
.chips a em{font-style:normal;opacity:0.65;margin-left:6px;font-weight:500;}

.view-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media (max-width: 900px){ .view-cards{grid-template-columns:1fr;} }

.view-list{background:var(--ng-bg-panel);border-radius:18px;overflow:hidden;border:1px solid rgba(237,237,237,0.1);}
.thead,.trow{display:grid;grid-template-columns:96px 1.6fr 1fr 1.3fr 1.4fr 1fr 0.7fr 0.8fr 24px;gap:18px;align-items:center;padding:0 24px;font-size:14px;}
.thead{height:52px;background:var(--ng-bg);font-size:12px;text-transform:uppercase;letter-spacing:0.07em;font-weight:700;color:var(--ng-accent);}
.trow{min-height:84px;padding-top:10px;padding-bottom:10px;border-top:1px solid rgba(237,237,237,0.1);color:var(--ng-text);}
.trow:hover{background:var(--ng-bg-alt);color:var(--ng-text);}
.tthumb{width:96px;height:68px;border-radius:10px;overflow:hidden;background:var(--ng-bg);}
.tthumb>img{width:100%;height:100%;object-fit:cover;display:block;}
.tthumb .nophoto{gap:4px;}
.tthumb .nophoto img{width:44px;}
.tthumb .nophoto span{display:none;}
.tname b{font-size:16px;font-weight:700;display:block;}
.rpta{font-weight:800;font-size:20px;color:var(--ng-accent);}
.dash{color:rgba(168,205,178,0.5);}
.go{font-size:26px;color:var(--ng-accent);text-align:right;}
.foot-note{margin-top:28px;font-size:13px;color:rgba(168,205,178,0.7);text-align:center;}
.empty-state{text-align:center;padding:64px 24px;color:rgba(168,205,178,0.75);}

@media (max-width: 900px){ .thead{display:none;} .trow{grid-template-columns:72px 1fr;grid-auto-rows:auto;} }

/* Ficha individual do touro */
.crumbs{padding:26px 0 0;font-size:14px;color:rgba(168,205,178,0.75);display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.crumbs a{color:var(--ng-accent);font-weight:600;}
.crumbs span{opacity:0.5;}
.t-hero{padding:28px 0 88px;}
.t-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:56px;align-items:start;}
.t-photo{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:16/9;background:var(--ng-bg);border:1px solid rgba(237,237,237,0.1);}
.t-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.t-photo .chip-raca{position:absolute;left:18px;top:18px;font-size:13px;padding:6px 14px;}
.t-photo .chip-dest{position:absolute;left:18px;bottom:18px;font-size:13px;padding:6px 14px;}
.t-eyebrow{display:flex;gap:10px;align-items:center;margin-bottom:14px;}
.t-info h1{font-size:46px;line-height:1.02;margin-bottom:10px;}
.t-reg{font-size:16px;color:rgba(168,205,178,0.85);font-weight:600;margin-bottom:28px;}
.metrics{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;margin-bottom:26px;}
.metric{background:var(--ng-bg-panel);border-radius:16px;padding:22px 24px;border:1px solid rgba(237,237,237,0.1);}
.metric small{display:block;font-size:12px;text-transform:uppercase;letter-spacing:0.08em;font-weight:700;color:rgba(168,205,178,0.75);margin-bottom:10px;}
.metric .big{font-weight:800;font-size:54px;line-height:0.9;color:var(--ng-accent);}
.metric .big em{font-style:normal;font-size:18px;color:rgba(237,237,237,0.8);margin-left:8px;font-weight:700;}
.metric.acc .big{color:var(--ng-text);}
.bar{height:6px;border-radius:99px;background:var(--ng-bg);margin-top:16px;overflow:hidden;}
.bar i{display:block;height:100%;background:var(--ng-accent);border-radius:99px;}
.facts{margin:0 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid rgba(237,237,237,0.12);}
.facts div{padding:14px 0;border-bottom:1px solid rgba(237,237,237,0.12);}
.facts div.wide{grid-column:1/3;}
.facts dt{font-size:11.5px;text-transform:uppercase;letter-spacing:0.07em;color:rgba(168,205,178,0.7);font-weight:700;}
.facts dd{margin:4px 0 0;font-size:16px;font-weight:600;}
.sale{background:var(--ng-bg-alt);border-radius:18px;padding:24px 26px;margin-top:20px;}
.t-left{position:sticky;top:20px;}
.sale small{display:block;font-size:12px;text-transform:uppercase;letter-spacing:0.08em;font-weight:700;color:rgba(168,205,178,0.8);margin-bottom:14px;}
.sale-row{display:flex;align-items:center;gap:16px;margin-bottom:18px;}
.partner{width:52px;height:52px;border-radius:14px;background:var(--ng-bg);color:var(--ng-accent);font-weight:800;font-size:22px;display:flex;align-items:center;justify-content:center;flex:none;}
.sale-row b{display:block;font-size:19px;}
.sale-row span{font-size:13px;color:rgba(237,237,237,0.7);}
.sale .btn{width:100%;justify-content:center;padding:15px 22px;font-size:15px;}
.sale p{font-size:12.5px;color:rgba(237,237,237,0.65);margin-top:14px;line-height:1.5;}
.about{display:grid;grid-template-columns:1.15fr 0.85fr;gap:64px;align-items:start;}
.about h2{font-size:32px;margin-bottom:22px;max-width:560px;}
.about .lead{font-size:18px;line-height:1.65;color:var(--ng-text);margin-bottom:18px;}
.about p{font-size:16px;line-height:1.75;color:rgba(168,205,178,0.85);margin-bottom:16px;}
.about p b{color:var(--ng-text);}
.hl-list{display:flex;flex-direction:column;gap:14px;}
.hl{background:var(--ng-bg);border-radius:16px;padding:22px 24px;display:flex;gap:20px;align-items:center;}
.hl .num{font-weight:800;font-size:34px;color:var(--ng-accent);line-height:1;flex:none;min-width:84px;}
.hl small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:0.07em;color:rgba(168,205,178,0.7);font-weight:700;margin-bottom:4px;}
.hl b{font-size:16px;display:block;margin-bottom:2px;}
.hl span{font-size:13px;color:rgba(168,205,178,0.8);line-height:1.45;}
.tree{display:grid;grid-template-columns:260px 70px 1fr;align-items:center;margin-top:36px;}
.node{background:var(--ng-bg-panel);border:1px solid rgba(237,237,237,0.12);border-radius:14px;padding:18px 22px;}
.node small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:0.07em;color:rgba(168,205,178,0.7);font-weight:700;margin-bottom:6px;}
.node b{font-size:17px;display:block;}
.node span{font-size:13px;color:var(--ng-accent);font-weight:700;display:block;margin-top:6px;}
.node.main{background:var(--ng-bg-alt);border-color:var(--ng-accent);}
.fork{height:170px;position:relative;}
.fork:before{content:'';position:absolute;left:0;top:50%;width:50%;border-top:2px solid rgba(153,198,138,0.6);}
.fork:after{content:'';position:absolute;left:50%;top:14%;bottom:14%;border-left:2px solid rgba(153,198,138,0.6);}
.parents{display:flex;flex-direction:column;gap:20px;position:relative;}
.parents .node{position:relative;}
.parents .node:before{content:'';position:absolute;left:-36px;top:50%;width:36px;border-top:2px solid rgba(153,198,138,0.6);}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;}
.rel-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px;}
.rel-head a{font-weight:700;font-size:14px;color:var(--ng-accent);}
@media (max-width: 900px){ .t-grid,.about{grid-template-columns:1fr;} .tree{grid-template-columns:1fr;} .fork{display:none;} .rel-grid{grid-template-columns:1fr;} }
