/* EXCLUSIVE CAT · diseño aprobado en la demo (se carga después de site.css y theme-cat.css).
   Sin fuentes externas: titulares en Cormorant Garamond si está instalada; si no, Palatino / Georgia. */
:root{
  --bg:#FAF6EE; --paper:#F3ECDD; --surface:#FFFFFF; --ink:#1B2240; --muted:#555B71;
  --accent:#1B2240; --accent-dark:#141C38; --accent-ink:#FFFFFF;
  --line:#E3D9C5; --gold:#B8924A; --gold-ink:#7A5A22; --dark:#161D3A; --dark-ink:#F3ECDD;
  --radius:12px; --wa:#1E7B45; --wa-dark:#17643A;
}
h1,h2,h3,h4{font-weight:500;letter-spacing:-.005em}
:focus-visible{outline:2px solid var(--gold-ink);outline-offset:3px}
.btn{font-weight:500}
.btn-primary:hover{box-shadow:none;background:#0F1530}
.btn-ghost{border-color:var(--ink)}
.kicker{font-family:var(--serif);font-style:italic;font-size:21px;color:var(--gold-ink);margin:0 0 6px;letter-spacing:0;text-transform:none}

/* cabecera */
.site-header{background:rgba(250,246,238,.96)}
.hdr .logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.hdr .logo img{height:58px;width:auto}
.lg-t b{display:block;font:600 23px/1 var(--serif);letter-spacing:.07em;text-transform:uppercase;color:var(--ink)}
.lg-t small{display:block;font-size:12.5px;color:var(--muted);margin-top:5px}
.nav a.nl{font-size:15.5px;padding:10px 12px}
.nav a.nl[aria-current="page"]{background:transparent;box-shadow:inset 0 -1px 0 var(--gold)}

/* titulares con filete dorado */
.section-head h2::after,.center-head h2::after,.crest h2::after{content:"";display:block;width:56px;height:1px;background:var(--gold);margin-top:22px}
.center-head h2::after{margin-left:auto;margin-right:auto}
.section-head{margin-bottom:40px}
.section{padding:88px 0}
.page-title h1{font-weight:500}

/* fotos enmarcadas como en una galería */
.frame{position:relative;background:var(--surface);padding:14px;border:1px solid var(--line);border-radius:4px!important;box-shadow:none!important;overflow:visible!important}
.frame::after{content:"";position:absolute;inset:7px;border:1px solid rgba(184,146,74,.55);border-radius:2px;pointer-events:none}
.frame img{width:100%;height:100%;object-fit:cover;border-radius:0}
.hero-img.frame{aspect-ratio:auto}
.hero-img.frame img{aspect-ratio:10/7}
.hero-raza .hero-img.frame img{aspect-ratio:4/3}
.ficha-foto.frame img{aspect-ratio:4/5}
.nos-grid .ph.frame img{aspect-ratio:4/3}
.hero{padding:64px 0 88px}
.hero h1{font-weight:500}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
.words{font-family:var(--serif);font-size:24px;color:var(--gold-ink);margin:-6px 0 16px}

/* escudo */
.crest{background:var(--paper);padding:80px 0}
.crest-grid{display:grid;grid-template-columns:240px 1fr;gap:64px;align-items:center;max-width:980px}
.crest img{width:240px}
.crest h2{font-size:clamp(32px,4vw,46px);margin-bottom:22px}
.crest p{color:var(--muted);font-size:18px;max-width:60ch}

/* garantías en líneas finas */
.gar-lines{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.gar-lines .gl{padding:28px 28px 28px 0;border-bottom:1px solid var(--line)}
.gar-lines .gl:not(:nth-child(3n+1)){padding-left:28px;border-left:1px solid var(--line)}
.gar-lines h3{font-size:25px;margin-bottom:8px}
.gar-lines p{color:var(--muted);font-size:16px;margin:0}
.gar-note{font-size:14.5px;color:var(--muted);margin-top:22px}

/* bandas azul noche */
.night{background:var(--dark);color:var(--dark-ink);padding:88px 0}
.night h2,.night h3{color:#fff}
.night .kicker{color:#D9B878}
.night p{color:#C9C3B4}
.night .section-head h2::after{background:#D9B878}
.fb-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start}
.fb-copy h2{font-size:clamp(34px,4vw,48px);margin-bottom:22px}
.fb-copy h2::after{content:"";display:block;width:56px;height:1px;background:#D9B878;margin-top:22px}
.night .form-card,.night .form-card p,.night .form-card label{color:var(--ink)}
.night .form-card .privacy{color:var(--muted)}
.night .form-card{margin:0}
.cat-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:44px 36px;counter-reset:s}
.cat-steps li{counter-increment:s;border-top:1px solid rgba(217,184,120,.6);padding-top:18px}
.cat-steps li::before{content:counter(s);display:block;font-family:var(--serif);font-size:46px;line-height:1;color:#D9B878;margin-bottom:12px}
.cat-steps h3{font-size:25px;margin-bottom:8px}
.cat-steps p{font-size:16px;margin:0}

/* dos columnas, listas y tablas */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.deliv{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.deliv li{padding:16px 0;border-bottom:1px solid var(--line)}
.deliv b{display:block;font-family:var(--serif);font-weight:500;font-size:23px}
.deliv span{color:var(--muted);font-size:16px}
.tblwrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.tbl{width:100%;border-collapse:collapse;min-width:560px;font-size:16px}
.tbl th,.tbl td{text-align:left;padding:16px 22px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl thead th{font-weight:500;font-size:14.5px;color:var(--muted);background:var(--bg)}
.tbl tbody th{font-family:var(--serif);font-weight:500;font-size:21px;white-space:nowrap}
.tbl td:nth-child(2){white-space:nowrap}
.tbl tr:last-child th,.tbl tr:last-child td{border-bottom:0}
.note-box{margin:22px 0 0;background:var(--surface);border-left:2px solid var(--gold);padding:14px 18px;border-radius:0 8px 8px 0;max-width:70ch}
.card .attrs{grid-template-columns:1fr;gap:0;margin-top:14px}
.card .attrs .attr{padding:12px 0;border-top:1px solid var(--line);background:none;border-radius:0}
.vet{margin-top:8px;max-width:440px}
.vet .kicker{font-size:19px}
.vet h3{font-size:27px;margin-bottom:10px}
.vet p{margin:0 0 6px;color:var(--muted)}
.faq{max-width:820px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:24px;padding:18px 40px 18px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:14px;font-size:28px;color:var(--gold-ink)}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--muted);margin:0 0 20px;max-width:65ch}

/* tarjetas */
.rcards-home{--n:3;--gap:28px}
.rcard{border-radius:var(--radius)}
.rcard:hover{border-color:var(--gold)}
.rcards-home .rcard h3{font-size:28px}
.rcards-home .rcard p{font-size:15.5px}
.rcard .go{border-bottom:1px solid var(--gold);align-self:flex-start;padding-bottom:2px}
.stat b{color:var(--ink)}

/* pie */
.site-footer{background:var(--dark)}
.ft-logo{width:150px;height:auto;margin-bottom:22px}
.ft-sal{margin-top:10px}
.ft-otros a{font-family:var(--serif);font-size:22px;border-bottom:1px solid var(--gold);text-decoration:none}

@media (max-width:960px){
  .crest-grid{grid-template-columns:1fr;text-align:center;gap:28px}
  .crest img{margin:0 auto;width:190px}
  .crest h2::after{margin-left:auto;margin-right:auto}
  .crest p{margin-left:auto;margin-right:auto}
  .gar-lines{grid-template-columns:1fr 1fr}
  .gar-lines .gl,.gar-lines .gl:not(:nth-child(3n+1)){padding:24px 22px 24px 0;border-left:0}
  .gar-lines .gl:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}
  .fb-grid,.two-col{grid-template-columns:1fr;gap:36px}
  .cat-steps{grid-template-columns:1fr 1fr}
  .rcards-home{--n:2;--gap:18px}
  .ficha-foto.frame{max-width:440px}
}
@media (max-width:620px){
  .section,.night{padding:64px 0}
  .hero{padding:32px 0 64px}
  .hdr .logo img{height:48px}
  .lg-t b{font-size:19px}
  .gar-lines,.cat-steps{grid-template-columns:1fr}
  .gar-lines .gl,.gar-lines .gl:nth-child(even){padding:20px 0;border-left:0}
  .rcards-home{--n:1}
  .rcards-home .rcard h3{font-size:24px}
  .rcards-home .rcard p{font-size:15px;-webkit-line-clamp:3}
  .rcards-home .rcard .go{font-size:14.5px}
  .frame{padding:9px}.frame::after{inset:4px}
}

/* ficha de la raza: filas finas en vez de tarjetas */
.ficha-grid{grid-template-columns:minmax(0,380px) 1fr;gap:56px}
.ficha-datos .attrs,.card .attrs{display:block;border-top:1px solid var(--line);margin:0}
.ficha-datos .attr,.card .attrs .attr{display:grid;grid-template-columns:170px 1fr;gap:16px;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:13px 0}
.ficha-datos .attr small,.card .attrs .attr small{font-size:15.5px;letter-spacing:0;text-transform:none;color:var(--muted);font-weight:400;margin:0}
.ficha-datos .attr b,.card .attrs .attr b{font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.5}
.ficha-datos .levels{grid-template-columns:1fr 1fr;gap:18px 28px;margin-top:26px}
.level{background:none;border:0;padding:0;border-radius:0}
.dots{gap:4px}.dots i{height:5px;border:0;background:var(--line)}
.valor{border-radius:var(--radius)}
@media (max-width:520px){.ficha-datos .attr,.card .attrs .attr{grid-template-columns:1fr;gap:2px}.ficha-datos .levels{grid-template-columns:1fr}}

/* ===================== Pulido estético ===================== */
/* ornamento de tres estrellas, como en el escudo */
.orn{display:block;width:64px;margin:0 auto 18px;color:var(--gold)}
.orn svg{display:block;width:100%;fill:currentColor}

/* portada: gatitos sin fondo sobre un aro dorado */
.hero-home{padding:72px 0 0;text-align:center;overflow:hidden;background:radial-gradient(ellipse 70% 60% at 50% 100%,#F1E7D3 0%,rgba(241,231,211,0) 70%),var(--bg)}
.hh-copy{max-width:820px;margin:0 auto}
.hero-home .eyebrow{letter-spacing:.24em;color:var(--gold-ink)}
.hero-home h1{font-size:clamp(46px,7vw,88px);line-height:1.02;margin-bottom:22px}
.hero-home .lead{margin:0 auto 32px;max-width:40em}
.hero-home .hero-ctas{justify-content:center}
.hh-stage{position:relative;max-width:1040px;margin:44px auto 0;padding-top:30px}
.hh-ring{position:absolute;left:50%;top:0;width:min(640px,68%);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;border:1px solid rgba(184,146,74,.55);pointer-events:none}
.hh-ring::after{content:"";position:absolute;inset:14px;border-radius:50%;border:1px solid rgba(184,146,74,.28)}
.hh-stage picture,.hh-stage img{position:relative;display:block;width:100%;height:auto}
.hh-stage::after{content:"";position:absolute;left:8%;right:8%;bottom:0;height:1px;background:linear-gradient(90deg,rgba(184,146,74,0),rgba(184,146,74,.8) 20%,rgba(184,146,74,.8) 80%,rgba(184,146,74,0))}
.hh-stage::before{content:"";position:absolute;left:12%;right:12%;bottom:-6px;height:26px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(27,34,64,.16),rgba(27,34,64,0) 70%);filter:blur(4px)}
@media (prefers-reduced-motion:no-preference){
  .hero-home .hh-copy>*{animation:ec-rise .9s cubic-bezier(.2,.7,.2,1) both}
  .hero-home .hh-copy>*:nth-child(2){animation-delay:.06s}.hero-home .hh-copy>*:nth-child(3){animation-delay:.12s}.hero-home .hh-copy>*:nth-child(4){animation-delay:.18s}.hero-home .hh-copy>*:nth-child(5){animation-delay:.24s}
  .hh-stage img{animation:ec-rise 1.1s .25s cubic-bezier(.2,.7,.2,1) both}
  .hh-ring{animation:ec-fade 1.6s .1s ease both}
}
@keyframes ec-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes ec-fade{from{opacity:0}to{opacity:1}}

/* banda del escudo: filetes dorados arriba y abajo */
.crest{border-top:1px solid rgba(184,146,74,.35);border-bottom:1px solid rgba(184,146,74,.35)}

/* cabecera más fina */
.site-header{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.nav a.nl{position:relative;border-radius:0;background:none!important}
.nav a.nl::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav a.nl:hover::after,.nav a.nl[aria-current="page"]::after{transform:scaleX(1)}
.nav a.nl[aria-current="page"]{box-shadow:none}

/* titulares de sección algo más grandes */
.section-head h2,.center-head h2{font-size:clamp(36px,4.4vw,54px)}
.page-title h1{font-size:clamp(46px,6vw,76px)}

/* botones: el contorno se vuelve dorado al pasar */
.btn-ghost:hover{border-color:var(--gold);background:transparent;color:var(--gold-ink)}
.btn-lg{min-height:56px}

/* tarjetas de razas: foto con zoom suave y filete dorado */
.rcard .ph{overflow:hidden}
.rcard .ph img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.rcard:hover .ph img{transform:scale(1.04)}
.rcard{transition:border-color .25s,box-shadow .25s}
.rcard:hover{box-shadow:0 14px 34px rgba(27,34,64,.08)}

/* banda azul noche con un brillo dorado muy suave */
.night{background:radial-gradient(ellipse 60% 70% at 0% 0%,rgba(184,146,74,.14),rgba(184,146,74,0) 60%),var(--dark)}
.night .form-card{box-shadow:0 24px 60px rgba(0,0,0,.25);border:0}

/* pie: Instagram */
.site-footer .social a{color:var(--dark-ink)}

@media (max-width:620px){
  .hero-home{padding-top:40px}
  .hh-stage{margin-top:32px;padding-top:16px}
  .hh-ring{width:82%}
  .hero-home .hero-ctas .btn{width:100%}
}
