:root{
  --ink:#0c0f14;
  --ink-soft:#171c25;
  --blue:#1769ff;
  --blue-bright:#2e7cff;
  --cream:#f5efe4;
  --paper:#fffdf8;
  --muted:#6d7480;
  --line:#dfe3e9;
  --orange:#d58a2f;
  --radius:22px;
  --shadow:0 20px 60px rgba(12,15,20,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
a{color:inherit}
.container{width:min(1160px,calc(100% - 32px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px 14px;z-index:100}
.skip-link:focus{left:8px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(12,15,20,.92);backdrop-filter:blur(14px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--blue);font-family:"Oswald";font-weight:700;letter-spacing:.03em;color:#fff}
.brand strong,.brand small{display:block;line-height:1}
.brand strong{font-family:"Oswald";letter-spacing:.08em}
.brand small{font-size:.69rem;letter-spacing:.16em;margin-top:5px;color:#aeb6c4}
.primary-nav{display:flex;align-items:center;gap:22px}
.primary-nav a{text-decoration:none;color:#dbe0e8;font-size:.94rem}
.primary-nav a:hover{color:#fff}
.nav-toggle{display:none;background:none;color:#fff;border:1px solid #3b4350;border-radius:10px;padding:8px 12px}
.hero{background:linear-gradient(135deg,#0a0d13 0%,#151b26 64%,#0d1522 100%);color:#fff;overflow:hidden}
.hero-grid{min-height:720px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:58px;padding-block:70px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.76rem;color:var(--blue-bright);margin:0 0 14px}
h1,h2,h3{font-family:"Oswald",sans-serif;line-height:1.05;margin:0}
h1{font-size:clamp(3.2rem,7vw,6.5rem);letter-spacing:-.025em;max-width:760px}
h2{font-size:clamp(2.3rem,4.5vw,4.2rem);letter-spacing:-.02em}
h3{font-size:1.55rem}
.hero-text{font-size:1.16rem;color:#c9d0db;max-width:610px;margin:24px 0 30px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{appearance:none;border:0;border-radius:999px;padding:14px 22px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s transform,.2s background,.2s color}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-bright)}
.btn-secondary{background:#fff;color:var(--ink)}
.btn-light{background:#fff;color:var(--ink);margin-top:12px}
.btn-small{padding:9px 14px;background:var(--ink);color:#fff;font-size:.86rem}
.mini-trust{display:flex;gap:20px;flex-wrap:wrap;color:#aeb6c4;font-size:.88rem;margin-top:26px}
.hero-art{position:relative}
.hero-image-wrap{background:#111721;border:1px solid rgba(255,255,255,.12);border-radius:32px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.4);transform:rotate(1.5deg)}
.hero-image-wrap img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 45%}
.hero-badge{position:absolute;right:-16px;bottom:24px;background:var(--cream);color:var(--ink);padding:16px 20px;border-radius:16px;box-shadow:var(--shadow)}
.hero-badge strong,.hero-badge span{display:block}
.hero-badge span{font-size:.8rem;color:var(--muted)}
.trust-strip{background:var(--cream);border-bottom:1px solid #e6ddcf}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:28px}
.trust-grid strong,.trust-grid span{display:block}
.trust-grid span{font-size:.83rem;color:var(--muted);margin-top:4px}
.section{padding:100px 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}
.text-link{background:none;border:0;color:var(--blue);font-weight:700;cursor:pointer}
.dog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dog-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 30px rgba(22,28,37,.06)}
.dog-visual{height:250px;display:grid;place-items:center;position:relative}
.dog-visual-merle{background:radial-gradient(circle at 30% 20%,#d9c7a8,#8f7d68 60%,#51483f)}
.dog-visual-black{background:radial-gradient(circle at 30% 20%,#3d434d,#171c24 65%,#0b0e13)}
.dog-visual-blue{background:radial-gradient(circle at 30% 20%,#4d8cff,#163777 70%,#0e1e3d)}
.dog-icon{font-size:5rem;filter:drop-shadow(0 12px 18px rgba(0,0,0,.22))}
.status{position:absolute;top:16px;left:16px;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:700;background:#fff}
.status.available{color:#176a39}
.status.reserved{color:#8b4e07}
.status.upcoming{color:#1549a1}
.dog-content{padding:22px}
.dog-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.dog-title span{color:var(--muted);font-size:.86rem}
.dog-content p{color:var(--muted)}
.dog-meta{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.dog-meta span{background:#f0f3f7;padding:6px 9px;border-radius:999px;font-size:.73rem}
.card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}
.fine-print{font-size:.8rem;color:var(--muted);margin-top:20px}
.section-dark{background:var(--ink);color:#fff}
.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.prose{font-size:1.05rem;color:#c6ccd6}
.standards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.standards-grid article{border:1px solid var(--line);border-radius:18px;padding:24px}
.standards-grid article>span{color:var(--blue);font-weight:700}
.standards-grid p{color:var(--muted)}
.testimonials{background:var(--cream)}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
blockquote{margin:0;background:#fff;border-radius:18px;padding:26px;font-size:1.02rem}
cite{display:block;margin-top:18px;color:var(--muted);font-style:normal;font-size:.86rem}
.faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px}
.accordion details{border-top:1px solid var(--line);padding:18px 0}
.accordion details:last-child{border-bottom:1px solid var(--line)}
.accordion summary{font-weight:700;cursor:pointer}
.accordion p{color:var(--muted)}
.contact-section{background:#eef3fb}
.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px}
.contact-points{display:grid;gap:8px;margin-top:24px}
.contact-points a{color:var(--blue)}
.contact-form{background:#fff;border-radius:var(--radius);padding:26px;display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:var(--shadow)}
label{font-weight:700;font-size:.86rem;display:grid;gap:7px}
input,select,textarea{width:100%;border:1px solid #cbd2dc;border-radius:12px;padding:12px;background:#fff;color:var(--ink)}
textarea{resize:vertical}
.full{grid-column:1/-1}
.form-status{min-height:1.5em;color:#176a39;margin:0;font-size:.85rem}
footer{background:#080a0f;color:#fff;padding:34px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:20px}
footer p{color:#aeb6c4;font-size:.88rem}
dialog{border:0;border-radius:22px;padding:30px;width:min(520px,calc(100% - 30px));box-shadow:0 30px 100px rgba(0,0,0,.35)}
dialog::backdrop{background:rgba(3,5,8,.72)}
.dialog-close{position:absolute;right:14px;top:12px;background:none;border:0;font-size:1.7rem;cursor:pointer}
dialog form{display:grid;gap:14px;margin-top:20px}

@media (max-width:900px){
  .nav-toggle{display:block}
  .primary-nav{display:none;position:absolute;top:74px;left:0;right:0;background:#0c0f14;padding:20px 16px;flex-direction:column;align-items:flex-start}
  .primary-nav.open{display:flex}
  .hero-grid,.split,.faq-layout,.contact-grid{grid-template-columns:1fr}
  .hero-grid{padding-top:48px}
  .hero-art{max-width:630px}
  .trust-grid,.standards-grid{grid-template-columns:repeat(2,1fr)}
  .dog-grid,.quote-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
}
@media (max-width:600px){
  .section{padding:72px 0}
  .hero-grid{min-height:auto}
  .hero-image-wrap{border-radius:22px}
  .hero-badge{right:8px;bottom:12px}
  .trust-grid,.standards-grid{grid-template-columns:1fr}
  .section-heading{align-items:flex-start;flex-direction:column}
  .contact-form{grid-template-columns:1fr;padding:20px}
  .contact-form>*{grid-column:1}
  h1{font-size:3.45rem}
}
.dog-photo-link{display:block;text-decoration:none}
.dog-photo{height:250px;position:relative;overflow:hidden;background:#dfe7da}
.dog-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%;transition:transform .25s ease}
.dog-photo-link:hover img{transform:scale(1.025)}
.detail-hero{background:linear-gradient(135deg,#0a0d13,#14233d);color:#fff;padding:72px 0}
.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.detail-gallery img{width:100%;height:320px;object-fit:cover;border-radius:18px;border:1px solid rgba(255,255,255,.12)}
.detail-gallery img:first-child{grid-column:1/-1;height:430px}
.detail-copy .dog-meta{margin:22px 0}
.detail-copy p{color:#c9d0db;font-size:1.05rem}
.profile-section{padding:90px 0}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.info-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}
.info-card ul{padding-left:20px;color:var(--muted)}
.back-link{display:inline-flex;margin-bottom:18px;color:#b9c7e6;text-decoration:none;font-weight:700}
@media (max-width:900px){
  .detail-grid,.profile-grid{grid-template-columns:1fr}
  .detail-gallery img,.detail-gallery img:first-child{height:320px}
}


/* Vibrant First Pick brand refresh — structure and content remain unchanged */
:root{
  --ink:#121323;
  --ink-soft:#22233a;
  --blue:#246bff;
  --blue-bright:#4b8dff;
  --electric:#7357ff;
  --cyan:#18c7d9;
  --pink:#ff4f9a;
  --sun:#ffbd3f;
  --cream:#fff3df;
  --paper:#fffaf6;
  --muted:#686a7b;
  --line:#e7ddf0;
  --shadow:0 22px 60px rgba(42,31,84,.16);
}

body{
  background:
    radial-gradient(circle at 7% 12%,rgba(255,79,154,.08),transparent 24rem),
    radial-gradient(circle at 92% 25%,rgba(24,199,217,.08),transparent 25rem),
    var(--paper);
}

.site-header{
  background:linear-gradient(90deg,rgba(17,18,36,.98),rgba(39,27,75,.97),rgba(13,45,73,.98));
  border-bottom:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 35px rgba(24,18,58,.22);
}

.brand-character{
  width:52px;
  height:52px;
  padding:3px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--pink),var(--electric),var(--cyan));
  box-shadow:0 0 0 3px rgba(255,255,255,.1),0 8px 24px rgba(76,70,255,.35);
}
.brand-character img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 36%;
  border-radius:9px;
}

.brand strong{
  background:linear-gradient(90deg,#fff,#b9d8ff,#ffd0e5);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.brand small{color:#c8c9dd}

.hero{
  background:
    radial-gradient(circle at 85% 22%,rgba(255,79,154,.24),transparent 24rem),
    radial-gradient(circle at 12% 82%,rgba(24,199,217,.21),transparent 28rem),
    linear-gradient(135deg,#111329 0%,#2a1b50 47%,#0d4963 100%);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:34px 34px;
}

.hero{position:relative}
.hero-grid{position:relative;z-index:1}

.eyebrow{
  color:var(--pink);
  text-shadow:0 0 24px rgba(255,79,154,.22);
}

h1{
  background:linear-gradient(105deg,#fff 15%,#b7d8ff 55%,#ffd1e5 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.btn-primary{
  background:linear-gradient(135deg,var(--pink),var(--electric) 52%,var(--blue));
  box-shadow:0 12px 28px rgba(94,76,255,.28);
}
.btn-primary:hover{
  background:linear-gradient(135deg,#ff6aaa,#806cff 52%,#4084ff);
}
.btn-secondary{
  background:linear-gradient(135deg,#fff,#eef7ff);
  color:#20213a;
  box-shadow:0 12px 28px rgba(5,18,50,.18);
}

.hero-image-wrap{
  border:2px solid rgba(255,255,255,.2);
  box-shadow:0 30px 90px rgba(0,0,0,.36),0 0 0 8px rgba(90,96,255,.08);
}

.hero-badge{
  background:linear-gradient(135deg,#fff5df,#ffe6f1);
  border:1px solid rgba(255,79,154,.2);
}

.trust-strip{
  background:linear-gradient(90deg,#fff0da,#ffe7f2 46%,#e5f9ff);
}
.trust-grid > div{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.9);
  border-radius:16px;
  padding:16px;
  box-shadow:0 8px 24px rgba(50,32,85,.07);
}

.dog-card{
  border:1px solid rgba(115,87,255,.16);
  box-shadow:0 16px 38px rgba(52,39,96,.10);
  transition:transform .2s ease,box-shadow .2s ease;
}
.dog-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 55px rgba(52,39,96,.16);
}
.dog-content{
  background:linear-gradient(180deg,#fff,#fff8fc);
}
.dog-meta span{
  background:linear-gradient(135deg,#edf4ff,#f8eaff);
  border:1px solid rgba(115,87,255,.12);
}
.status.upcoming{
  color:#4422b5;
  background:linear-gradient(135deg,#fff,#ebe5ff);
  box-shadow:0 8px 20px rgba(62,32,153,.12);
}

.section-dark{
  background:
    radial-gradient(circle at 15% 30%,rgba(255,79,154,.15),transparent 25rem),
    radial-gradient(circle at 88% 70%,rgba(24,199,217,.14),transparent 25rem),
    linear-gradient(135deg,#101225,#24183f 55%,#0d3549);
}

.standards-grid article{
  background:linear-gradient(145deg,#fff,#fff8fd);
  border-color:rgba(115,87,255,.14);
  box-shadow:0 12px 32px rgba(48,34,91,.07);
}
.standards-grid article:nth-child(2n){background:linear-gradient(145deg,#f6fbff,#eef9ff)}
.standards-grid article>span{color:var(--pink)}

.testimonials{
  background:
    radial-gradient(circle at 12% 18%,rgba(255,189,63,.18),transparent 20rem),
    linear-gradient(135deg,#fff0dc,#ffeaf4 55%,#eafaff);
}
blockquote{
  border:1px solid rgba(115,87,255,.12);
  box-shadow:0 12px 30px rgba(62,43,105,.08);
}

.contact-section{
  background:
    radial-gradient(circle at 92% 18%,rgba(24,199,217,.14),transparent 22rem),
    linear-gradient(135deg,#edf4ff,#f9edff 55%,#fff2e0);
}
.contact-form{
  border:1px solid rgba(115,87,255,.14);
}

footer{
  background:linear-gradient(90deg,#111225,#25183e,#0e3548);
}

dialog{
  border:1px solid rgba(115,87,255,.16);
  background:linear-gradient(145deg,#fff,#fff7fc);
}

.detail-hero{
  background:
    radial-gradient(circle at 88% 18%,rgba(255,79,154,.24),transparent 24rem),
    radial-gradient(circle at 12% 88%,rgba(24,199,217,.18),transparent 25rem),
    linear-gradient(135deg,#111329,#2b1b51 55%,#0c485f);
}
.info-card{
  background:linear-gradient(145deg,#fff,#fff8fd);
  border-color:rgba(115,87,255,.14);
  box-shadow:0 14px 36px rgba(57,42,105,.08);
}

@media (max-width:600px){
  .brand-character{width:46px;height:46px}
}


/* Premium kennel redesign */
:root{
  --lux-navy:#10152d;
  --lux-purple:#6d4cff;
  --lux-pink:#ff4f9d;
  --lux-cyan:#18c3d6;
  --lux-gold:#f6b93b;
  --lux-mint:#75e2b6;
}

body{
  background:
    radial-gradient(circle at 8% 6%,rgba(255,79,157,.08),transparent 22rem),
    radial-gradient(circle at 92% 18%,rgba(24,195,214,.08),transparent 24rem),
    linear-gradient(180deg,#fffaf7 0%,#f7f7ff 45%,#fffaf5 100%);
}

.site-header{
  background:rgba(15,20,43,.91);
  backdrop-filter:blur(18px) saturate(150%);
}

.hero{
  background:
    radial-gradient(circle at 82% 20%,rgba(255,79,157,.28),transparent 23rem),
    radial-gradient(circle at 12% 82%,rgba(24,195,214,.22),transparent 27rem),
    linear-gradient(130deg,#0e1430 0%,#36215f 52%,#0d5264 100%);
}

.hero-copy{
  padding:34px;
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 26px 70px rgba(0,0,0,.18);
}

.trust-grid > div{
  position:relative;
  overflow:hidden;
}
.trust-grid > div::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(var(--lux-pink),var(--lux-purple));
}

.dog-grid{
  align-items:stretch;
}
.dog-card{
  position:relative;
  overflow:hidden;
}
.dog-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
}

.dog-card:nth-child(1){
  background:linear-gradient(180deg,#fff,#f5efff);
  border-color:rgba(109,76,255,.25);
}
.dog-card:nth-child(1) .dog-content{
  background:linear-gradient(180deg,#ffffff,#f7f1ff);
}
.dog-card:nth-child(1) .btn-small{
  background:linear-gradient(135deg,var(--lux-purple),var(--lux-pink));
}

.dog-card-bella{
  background:linear-gradient(180deg,#fff,#fff3ea);
  border-color:rgba(246,185,59,.35);
}
.dog-card-bella .dog-content{
  background:linear-gradient(180deg,#fff,#fff6ed);
}
.dog-card-bella .btn-small{
  background:linear-gradient(135deg,#f0952b,#ff5c83);
}
.dog-card-bella .status{
  color:#833d06;
  background:linear-gradient(135deg,#fff7d7,#ffe5ef);
}

.dog-card:nth-child(3){
  background:linear-gradient(180deg,#fff,#ecfbff);
  border-color:rgba(24,195,214,.25);
}
.dog-card:nth-child(3) .dog-content{
  background:linear-gradient(180deg,#fff,#eefcff);
}
.dog-card:nth-child(3) .btn-small{
  background:linear-gradient(135deg,#0d9fb1,#2673ff);
}

.dog-photo{
  height:285px;
}
.dog-photo img{
  filter:saturate(1.04) contrast(1.03);
}

.section-heading h2{
  position:relative;
  display:inline-block;
}
.section-heading h2::after{
  content:"";
  display:block;
  width:86px;
  height:6px;
  margin-top:14px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--lux-pink),var(--lux-purple),var(--lux-cyan));
}

.section-dark{
  position:relative;
  overflow:hidden;
}
.section-dark::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  right:-170px;
  bottom:-220px;
  background:radial-gradient(circle,rgba(255,79,157,.20),transparent 68%);
}

.standards-grid article:nth-child(1){border-top:5px solid var(--lux-purple)}
.standards-grid article:nth-child(2){border-top:5px solid var(--lux-pink)}
.standards-grid article:nth-child(3){border-top:5px solid var(--lux-cyan)}
.standards-grid article:nth-child(4){border-top:5px solid var(--lux-gold)}

.quote-grid blockquote:nth-child(1){border-top:5px solid var(--lux-pink)}
.quote-grid blockquote:nth-child(2){border-top:5px solid var(--lux-purple)}
.quote-grid blockquote:nth-child(3){border-top:5px solid var(--lux-cyan)}

.bella-photo{
  background:linear-gradient(135deg,#ffe7ef,#fff0d3);
}
.bella-detail-hero{
  background:
    radial-gradient(circle at 82% 18%,rgba(246,185,59,.30),transparent 23rem),
    radial-gradient(circle at 12% 84%,rgba(255,79,157,.20),transparent 25rem),
    linear-gradient(135deg,#15152f,#512f56 55%,#6f4d22);
}
.bella-profile-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.bella-accent-pink{border-top:6px solid var(--lux-pink)}
.bella-accent-gold{border-top:6px solid var(--lux-gold)}
.bella-accent-blue{border-top:6px solid var(--lux-cyan)}

.consent-row{
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:10px;
  font-weight:500;
  color:var(--muted);
}
.consent-row input{
  width:18px;
  height:18px;
  margin-top:3px;
}

@media (max-width:900px){
  .hero-copy{padding:24px}
  .bella-profile-grid{grid-template-columns:1fr}
}


/* Polly legacy profile */
.dog-card-polly{
  background:linear-gradient(180deg,#fffdf5,#f7f0ff);
  border-color:rgba(246,185,59,.45);
  box-shadow:0 20px 48px rgba(95,66,22,.14);
}
.dog-card-polly .dog-content{
  background:linear-gradient(180deg,#fffdf8,#f8f1ff);
}
.dog-card-polly .btn-small{
  background:linear-gradient(135deg,#d79718,#7b4dff);
}
.polly-photo{
  background:linear-gradient(135deg,#fff1bf,#e9dcff);
}
.status.legacy{
  color:#6b4300;
  background:linear-gradient(135deg,#fff5c8,#f1e8ff);
  box-shadow:0 8px 22px rgba(119,78,10,.16);
}
.polly-detail-hero{
  background:
    radial-gradient(circle at 84% 18%,rgba(246,185,59,.34),transparent 24rem),
    radial-gradient(circle at 12% 84%,rgba(118,81,255,.22),transparent 25rem),
    linear-gradient(135deg,#17172f,#4c355e 56%,#6d501d);
}
.polly-profile-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}
.polly-accent-gold{border-top:6px solid #f6b93b}
.polly-accent-purple{border-top:6px solid #7651ff}
.polly-accent-blue{border-top:6px solid #2f7dff}
.polly-accent-mint{border-top:6px solid #55d6a5}
@media (max-width:900px){
  .polly-profile-grid{grid-template-columns:1fr}
}


/* Final three-card order and champion treatment */
.featured-mothers-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
}

.featured-mothers-grid .dog-card{
  width:100%;
}

.featured-champion{
  position:relative;
  border:3px solid #e2b43c !important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,246,199,.96)),
    linear-gradient(135deg,#f8dc79,#fff4b5);
  box-shadow:
    0 0 0 2px rgba(255,255,255,.85) inset,
    0 0 34px rgba(226,180,60,.48),
    0 22px 52px rgba(87,61,10,.18) !important;
  overflow:hidden;
}

.featured-champion::before{
  content:"";
  position:absolute;
  inset:-40% -20%;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.72) 48%,transparent 66%);
  transform:translateX(-120%) rotate(8deg);
  animation:championShine 4.8s ease-in-out infinite;
  pointer-events:none;
  z-index:2;
}

.featured-champion .dog-content,
.featured-champion .dog-photo{
  position:relative;
  z-index:1;
}

.featured-champion .dog-content{
  background:linear-gradient(180deg,#fffef7,#fff5c9) !important;
}

.featured-champion .status.legacy{
  background:linear-gradient(135deg,#fff3a8,#f3c541,#fff0a0);
  color:#4b3200;
  border:1px solid rgba(126,88,0,.24);
  box-shadow:0 8px 22px rgba(109,74,0,.2);
  font-weight:800;
}

.featured-champion .btn-small{
  background:linear-gradient(135deg,#c98a00,#f5c84b,#8c5c00) !important;
  color:#1d1400;
}

@keyframes championShine{
  0%,58%{transform:translateX(-120%) rotate(8deg)}
  76%,100%{transform:translateX(120%) rotate(8deg)}
}

body{
  background:
    radial-gradient(circle at 8% 10%,rgba(255,112,173,.12),transparent 25rem),
    radial-gradient(circle at 92% 18%,rgba(46,194,255,.12),transparent 28rem),
    radial-gradient(circle at 45% 72%,rgba(122,87,255,.10),transparent 30rem),
    linear-gradient(135deg,#fff8ee 0%,#f5f1ff 42%,#edf9ff 72%,#fff7e8 100%) !important;
}

.section:not(.section-dark):not(.contact-section):not(.testimonials){
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.32));
}

@media (min-width:900px){
  .featured-mothers-grid{
    grid-template-columns:1.15fr .925fr .925fr;
    align-items:stretch;
  }
  .featured-champion{
    transform:translateY(-8px);
  }
}


/* Photo-led homepage hero */
.hero-photo{
  position:relative;
  min-height:820px;
  display:flex;
  align-items:stretch;
  isolation:isolate;
  background:
    url("assets/future-legends-hero.jpeg") center 18% / contain no-repeat;
  overflow:hidden;
}

.hero-photo::before{
  display:none;
}

.hero-photo-shade{
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(180deg,rgba(5,8,18,.06) 0%,rgba(5,8,18,.02) 44%,rgba(5,8,18,.32) 69%,rgba(5,8,18,.88) 100%),
    linear-gradient(90deg,rgba(5,8,18,.48) 0%,rgba(5,8,18,.12) 44%,rgba(5,8,18,0) 72%);
}

.hero-photo-layout{
  min-height:820px;
  display:flex;
  align-items:flex-end;
  padding-top:90px;
  padding-bottom:56px;
}

.hero-photo-copy{
  width:min(690px,100%);
  padding:28px 30px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(7,10,20,.78),rgba(7,10,20,.42));
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 24px 70px rgba(0,0,0,.34);
  backdrop-filter:blur(8px);
}

.hero-photo-copy h1{
  max-width:650px;
  font-size:clamp(3rem,6vw,5.8rem);
}

.hero-photo-copy .hero-text{
  max-width:580px;
}

@media (max-width:900px){
  .hero-photo,
  .hero-photo-layout{
    min-height:760px;
  }

  .hero-photo{
    background-position:58% 36%;
  }

  .hero-photo-layout{
    padding-bottom:34px;
  }
}

@media (max-width:600px){
  .hero-photo,
  .hero-photo-layout{
    min-height:680px;
  }

  .hero-photo{
    background-position:56% 35%;
  }

  .hero-photo-copy{
    padding:20px;
    border-radius:20px;
  }

  .hero-photo-copy h1{
    font-size:clamp(2.65rem,13vw,4.2rem);
  }

  .hero-photo-copy .mini-trust{
    gap:10px 14px;
  }
}


/* Polly runner: the only added website animation */
.polly-runway{
  position:relative;
  height:92px;
  overflow:hidden;
  margin:-10px 0 18px;
  pointer-events:none;
}
.polly-runner{
  position:absolute;
  left:0;
  bottom:0;
  width:150px;
  height:auto;
  object-fit:contain;
  filter:none;
  animation:polly-run-across 8s linear infinite;
  will-change:transform;
}
@keyframes polly-run-across{
  from{transform:translateX(-170px)}
  to{transform:translateX(calc(100vw + 170px))}
}
@media (prefers-reduced-motion:reduce){
  .polly-runner{animation:none;left:50%;transform:translateX(-50%)}
}
@media (max-width:600px){
  .polly-runway{height:72px;margin-top:-4px}
  .polly-runner{width:120px;animation-duration:6.5s}
}

/* Premium top hero image — preserves all existing content below */
.hero-photo{
  min-height:auto;
  display:block;
  background:linear-gradient(135deg,#111329 0%,#2a1b50 47%,#0d4963 100%);
  overflow:hidden;
}
/* The original portrait controls its own height; its full frame stays visible. */
.premium-hero-media{
  width:100%;
  height:auto;
  background:#080a0f;
}
.premium-hero-media img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:780px;
  max-height:min(780px,calc(100svh - 78px));
  margin-inline:auto;
  object-fit:contain;
  object-position:center;
}
.hero-photo-layout{
  min-height:auto;
  padding-top:22px;
  padding-bottom:24px;
  align-items:flex-start;
}
.hero-photo-copy{
  width:min(860px,100%);
  padding:18px 22px;
  border-radius:20px;
  margin:0 auto;
}
.hero-photo-copy h1{
  font-size:clamp(2.45rem,5vw,4.5rem);
  margin-bottom:10px;
}
.hero-photo-copy .hero-text{margin-bottom:14px}
.hero-photo-copy .hero-actions{margin-top:12px}
.hero-photo-copy .mini-trust{margin-top:14px}
@media (max-width:900px){
  .hero-photo,.hero-photo-layout{min-height:auto}
  .hero-photo-layout{padding-top:18px;padding-bottom:20px}
}
@media (max-width:600px){
  .hero-photo,.hero-photo-layout{min-height:auto}
  .hero-photo-copy{padding:16px}
  .hero-photo-copy h1{font-size:clamp(2.25rem,11vw,3.4rem)}
}

/* Enlarged top-left logo using the supplied artwork only */
.brand-character{
  width:76px;
  height:76px;
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  flex:0 0 76px;
}
.brand-character img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:0;
  display:block;
}
@media (max-width:600px){
  .brand-character{width:64px;height:64px;flex-basis:64px}
}


/* Header logo full-screen lightbox */
#header-logo-lightbox-trigger{cursor:zoom-in}
.logo-lightbox{
  width:auto;
  max-width:min(92vw,1200px);
  max-height:92vh;
  margin:auto;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.logo-lightbox::backdrop{background:rgba(0,0,0,.9)}
.logo-lightbox img{
  display:block;
  max-width:92vw;
  max-height:88vh;
  width:auto;
  height:auto;
  object-fit:contain;
}
.logo-lightbox-close{
  position:absolute;
  top:-44px;
  right:0;
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#111;
  font-size:1.8rem;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
}

/* Better Beginnings character — intentionally overlays only the existing empty top-right area. */
#about .better-beginnings-character{
  position:absolute;
  z-index:2;
  top:14px;
  right:max(18px,calc((100vw - 1160px)/2 + 18px));
  height:470px;
  width:auto;
  max-width:36vw;
  object-fit:contain;
  object-position:top right;
  pointer-events:none;
  user-select:none;
}
#about .container{position:relative;z-index:1}
@media (max-width:900px){
  #about .better-beginnings-character{height:300px;max-width:42vw;top:12px;right:18px}
}
@media (max-width:620px){
  #about .better-beginnings-character{height:215px;max-width:46vw;top:12px;right:12px}
}


.featured-team-banner{margin:0 auto 1rem;max-width:1100px;border-radius:22px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.18);background:#05070d}
.featured-team-banner img{display:block;width:100%;height:auto;object-fit:cover}
.featured-team-caption{background:#05070d;text-align:center;padding:1rem 1.25rem 1.2rem}
.featured-team-kicker{margin:0 0 .28rem;color:#4aa3ff;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.featured-team-caption h2{margin:0;color:#70b7ff;font-size:clamp(1.55rem,4.2vw,3rem);line-height:1.05}
.featured-team-actions{display:flex;justify-content:center;margin:0 0 1.25rem}

/* 2026 premium polish pass — typography, spacing, clarity, and finish only. */
html{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
body{
  letter-spacing:.002em;
}
p,li,summary,label,input,select,textarea,button,a{
  text-wrap:pretty;
}
h1,h2,h3,
.brand strong{
  text-rendering:geometricPrecision;
}
h1{
  line-height:.98;
  letter-spacing:-.032em;
}
h2{
  line-height:1.01;
  letter-spacing:-.026em;
}
h3{
  line-height:1.08;
  letter-spacing:-.012em;
}
.eyebrow{
  letter-spacing:.19em;
  line-height:1.35;
}
.primary-nav a,
.btn,
.text-link{
  letter-spacing:.01em;
}
.primary-nav a{
  transition:color .18s ease,opacity .18s ease;
}
.section-heading{
  margin-bottom:38px;
}
.dog-card,
.info-card,
blockquote,
.contact-form,
.standards-grid article{
  border-color:rgba(150,160,174,.28);
}
.dog-card{
  box-shadow:0 14px 38px rgba(22,28,37,.075);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
@media (hover:hover){
  .dog-card:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 46px rgba(22,28,37,.11);
    border-color:rgba(23,105,255,.2);
  }
}
.dog-photo img,
.detail-gallery img,
.premium-hero-media img,
.featured-team-banner img{
  image-rendering:auto;
  backface-visibility:hidden;
}
.dog-photo img,
.detail-gallery img{
  filter:saturate(1.015) contrast(1.015);
}
.dog-content{
  padding:24px;
}
.dog-content p,
.prose,
.standards-grid p,
.accordion p,
.fine-print,
footer p{
  line-height:1.68;
}
.dog-title{
  align-items:flex-start;
}
.dog-title span{
  line-height:1.35;
  text-align:right;
}
.card-footer{
  gap:14px;
}
.btn{
  box-shadow:0 7px 18px rgba(12,15,20,.08);
}
.btn-primary{
  box-shadow:0 9px 22px rgba(23,105,255,.22);
}
input,select,textarea{
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(23,105,255,.72);
  box-shadow:0 0 0 4px rgba(23,105,255,.10);
}
.featured-team-banner{
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 20px 54px rgba(0,0,0,.20);
}
.featured-team-caption{
  padding:1.1rem 1.35rem 1.3rem;
}
.featured-team-kicker{
  letter-spacing:.21em;
}
.featured-team-caption h2{
  letter-spacing:-.02em;
}
@media (max-width:600px){
  body{line-height:1.6}
  .container{width:min(100% - 26px,1160px)}
  .dog-content{padding:21px}
  .card-footer{align-items:flex-start;flex-direction:column}
  .dog-title{gap:8px;flex-direction:column}
  .dog-title span{text-align:left}
  .featured-team-caption{padding:.95rem 1rem 1.1rem}
}

/* Polly Legacy — unified premium-blue typography */
.polly-page main .detail-copy,
.polly-page main .detail-copy h1,
.polly-page main .detail-copy p,
.polly-page main .detail-copy .eyebrow,
.polly-page main .detail-copy .back-link,
.polly-page main .detail-copy .dog-meta span,
.polly-page main .profile-section,
.polly-page main .profile-section h2,
.polly-page main .profile-section p,
.polly-page main .profile-section li,
.polly-page main .profile-section .eyebrow,
.polly-page main .contact-section,
.polly-page main .contact-section h2,
.polly-page main .contact-section p,
.polly-page main .contact-section .eyebrow,
.polly-page main .contact-form label,
.polly-page main .contact-form .consent-row span,
.polly-page main .contact-form .form-status {
  color: var(--blue) !important;
}

.polly-page main .detail-copy .dog-meta span {
  background: rgba(23,105,255,.09);
  border: 1px solid rgba(23,105,255,.18);
}

.polly-page main .btn-primary {
  color: var(--blue) !important;
  background: #fff;
  border: 1px solid rgba(23,105,255,.34);
  box-shadow: 0 9px 22px rgba(23,105,255,.14);
}
.polly-page main .btn-primary:hover {
  color: var(--blue-bright) !important;
  background: #f7faff;
}


/* Polly card split actions */
.polly-card-footer{
  align-items:center;
}
.polly-card-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.featured-champion .btn-small.btn-son{
  background:linear-gradient(135deg,var(--blue),var(--blue-bright)) !important;
  color:#fff;
}
.featured-champion .btn-small.btn-legacy{
  background:linear-gradient(135deg,#c98a00,#f5c84b,#8c5c00) !important;
  color:#1d1400;
}
@media (max-width:600px){
  .polly-card-footer{align-items:stretch;flex-direction:column;}
  .polly-card-actions{width:100%;justify-content:flex-start;}
  .polly-card-actions .btn{flex:1 1 145px;}
}


/* Stud section added beneath Bella */
.studs-divider{
  margin:64px 0 26px;
  padding-top:34px;
  border-top:1px solid rgba(16,21,45,.16);
  text-align:center;
}
.studs-divider span{
  display:inline-block;
  margin-bottom:8px;
  color:var(--lux-gold,#f6b93b);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.studs-divider h2{margin:0;color:var(--lux-navy,#10152d)}
.studs-divider p{margin:10px auto 0;max-width:520px;color:var(--muted)}
.studs-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:0 auto}
.stud-placeholder-card{overflow:hidden}
.stud-placeholder-photo{
  height:250px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 20% 20%,rgba(36,107,255,.22),transparent 15rem),
    radial-gradient(circle at 82% 78%,rgba(246,185,59,.18),transparent 14rem),
    linear-gradient(135deg,#11162d,#1e294b 55%,#101624);
}
.stud-placeholder-photo::after{
  content:"";
  position:absolute;inset:14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
}
.stud-placeholder-mark{
  position:relative;z-index:1;
  color:rgba(255,255,255,.3);
  font-size:4.5rem;
  font-weight:900;
  letter-spacing:.04em;
}
.stud-status{color:#7b5310;background:linear-gradient(135deg,#fff9e7,#ffe7a3);z-index:2}
.stud-placeholder-label{color:var(--blue);font-weight:800;font-size:.82rem}
@media (max-width:900px){.studs-grid{grid-template-columns:1fr;max-width:none}}
@media (max-width:600px){.studs-divider{margin-top:48px;padding-top:28px}}

/* Rio — first featured stud, subtle Rio de Janeiro inspired treatment */
.rio-stud-card{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);
  overflow:hidden;
  border:1px solid rgba(15,82,186,.16);
  box-shadow:0 24px 60px rgba(15,39,75,.14);
  background:linear-gradient(145deg,#fff 0%,#fbfdff 72%,#fffaf0 100%);
}
.rio-photo-stage{
  min-height:560px;
  position:relative;
  overflow:hidden;
  background:#0d2746;
}
.rio-main-photo{width:100%;height:100%;object-fit:cover;display:block}
.rio-photo-stage::after{
  content:"";
  position:absolute;inset:auto 0 0 0;height:34%;
  background:linear-gradient(to top,rgba(5,31,58,.62),transparent);
  pointer-events:none;
}
.rio-tropical-mark{
  position:absolute;right:18px;bottom:15px;z-index:2;
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  color:#f4bd45;border:1px solid rgba(244,189,69,.55);
  background:rgba(6,44,75,.72);backdrop-filter:blur(7px);
  font-size:1.45rem;
}
.rio-content{padding:30px 32px 28px}
.rio-kicker{
  color:#1595b7;font-weight:900;text-transform:uppercase;
  letter-spacing:.15em;font-size:.76rem;margin-bottom:8px;
}
.rio-stud-card .dog-title h3{color:#0d4d87;font-size:clamp(2.25rem,5vw,3.65rem);line-height:.95}
.rio-stud-card .dog-title span{color:#8f6818;background:#fff3cf;border:1px solid rgba(205,158,54,.25)}
.rio-intro{max-width:680px;font-size:1.02rem}
.rio-gallery{
  display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;
  margin:22px 0 20px;
}
.rio-gallery img{
  width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px;
  box-shadow:0 6px 16px rgba(11,42,70,.12);
  border:1px solid rgba(255,255,255,.85);
}
.rio-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.rio-info-grid div{
  padding:13px 14px;border-radius:13px;
  background:linear-gradient(135deg,rgba(20,147,183,.07),rgba(246,190,63,.07));
  border:1px solid rgba(15,82,186,.11);
}
.rio-info-grid small{display:block;color:#1595b7;font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.67rem;margin-bottom:4px}
.rio-info-grid strong{color:#14213d;font-size:.9rem;line-height:1.25}
.rio-signoff{color:#0d78a0;font-weight:800;font-size:.84rem}
@media (max-width:900px){
  .rio-stud-card{grid-template-columns:1fr}
  .rio-photo-stage{min-height:480px}
  .rio-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:600px){
  .rio-photo-stage{min-height:390px}
  .rio-content{padding:22px 20px}
  .rio-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .rio-info-grid{grid-template-columns:1fr}
}
\n\n/* Rio compact card + dedicated stud profile */\n.rio-card-compact{display:block;overflow:hidden;border-color:rgba(13,120,160,.22)}\n.rio-card-photo{position:relative;background:#e9f5f6}\n.rio-card-photo img{width:100%;height:100%;object-fit:cover;display:block}\n.rio-card-palm{position:absolute;right:16px;bottom:14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(13,120,160,.78);border:1px solid rgba(255,255,255,.45);font-weight:900}\n.rio-view-btn{background:linear-gradient(135deg,#0d78a0,#1595b7);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(13,120,160,.18)}\n.rio-view-btn:hover{filter:brightness(1.04)}\n.rio-page{background:linear-gradient(180deg,#f8fbfb 0%,#fff 45%,#f8fbfb 100%)}\n.rio-detail-hero{position:relative;overflow:hidden;background:linear-gradient(145deg,#071c2b 0%,#0b3150 58%,#0d596c 100%);color:#fff}\n.rio-detail-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 86% 12%,rgba(255,213,101,.16),transparent 24%),radial-gradient(circle at 12% 88%,rgba(22,178,183,.13),transparent 25%)}\n.rio-detail-hero .container{position:relative;z-index:1}\n.rio-detail-hero .detail-copy h1{color:#fff;font-size:clamp(4.2rem,10vw,7.4rem);letter-spacing:.015em}\n.rio-detail-hero .detail-copy p,.rio-detail-hero .back-link{color:rgba(255,255,255,.84)}\n.rio-detail-hero .eyebrow{color:#ffd36a}\n.rio-detail-hero .dog-meta span{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff}\n.rio-detail-gallery img{border:1px solid rgba(255,211,106,.24);box-shadow:0 18px 45px rgba(0,0,0,.22)}\n.rio-lead{font-size:1.05rem}\n.rio-primary-btn{background:linear-gradient(135deg,#e5b548,#f4cf72);color:#14213d;border-color:transparent}\n.rio-profile-section{position:relative}\n.rio-profile-section::before{content:"";position:absolute;left:5%;top:18px;width:34px;height:52px;border-left:2px solid rgba(13,120,160,.25);border-radius:60% 0 0 0;transform:rotate(-18deg);opacity:.7}\n.rio-accent-blue{border-top:4px solid #0d78a0}\n.rio-accent-gold{border-top:4px solid #d5a63b}\n.rio-accent-mint{border-top:4px solid #21a99e}\n.rio-gallery-section{background:linear-gradient(180deg,#f7fbfb,#eef7f7)}\n.rio-section-heading h2{color:#0c3550}\n.rio-full-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}\n.rio-full-gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px;box-shadow:0 14px 30px rgba(17,46,65,.12);border:1px solid rgba(13,120,160,.12)}\n@media(max-width:900px){.rio-full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.rio-full-gallery img:last-child{grid-column:1/-1;aspect-ratio:16/10}}\n@media(max-width:600px){.rio-detail-hero .detail-copy h1{font-size:4.2rem}.rio-full-gallery{gap:8px}.rio-full-gallery img{border-radius:13px}}\n
/* Batman — second featured stud + cinematic profile */
.batman-stud-card{display:block;overflow:hidden;border-color:rgba(64,93,154,.24)}
.batman-card-photo{position:relative;background:#090d16}
.batman-card-photo img{width:100%;height:100%;object-fit:cover;display:block}
.batman-status{color:#e5bf61;background:linear-gradient(135deg,#101827,#192844);border:1px solid rgba(229,191,97,.38)}
.batman-card-mark{position:absolute;right:16px;bottom:14px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:#d7b458;background:rgba(8,13,23,.84);border:1px solid rgba(215,180,88,.42);font-size:.72rem}
.batman-kicker{color:#355aa8;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.16em;margin-bottom:5px}
.batman-stud-card .dog-title h3{color:#111a30}
.batman-view-btn{background:linear-gradient(135deg,#18264a,#2e4e94);color:#fff;border-color:transparent;box-shadow:0 10px 22px rgba(27,47,91,.22)}
.batman-page{background:#070a10;color:#e9edf5}
.batman-page .site-header{background:rgba(7,10,16,.95);border-bottom-color:rgba(123,151,212,.14)}
.batman-page .site-header .brand,.batman-page .primary-nav a,.batman-page .nav-toggle{color:#eef3ff}
.batman-main{background:linear-gradient(180deg,#070a10 0%,#0b101a 48%,#080b12 100%)}
.batman-detail-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 13%,rgba(52,85,158,.30),transparent 27%),radial-gradient(circle at 12% 82%,rgba(197,158,65,.10),transparent 25%),linear-gradient(145deg,#05070c,#0a101d 58%,#10182a);color:#fff}
.batman-detail-hero .container{position:relative;z-index:1}
.batman-detail-hero .detail-copy h1{color:#fff;font-size:clamp(4.1rem,10vw,7.6rem);letter-spacing:.035em;text-transform:uppercase;text-shadow:0 9px 35px rgba(0,0,0,.45)}
.batman-detail-hero .eyebrow{color:#d9b85f}
.batman-detail-hero .detail-copy p,.batman-detail-hero .back-link{color:rgba(237,243,255,.82)}
.batman-detail-hero .dog-meta span{background:rgba(255,255,255,.06);border-color:rgba(139,167,226,.16);color:#e8eefc}
.batman-detail-gallery img{border:1px solid rgba(119,151,218,.22);box-shadow:0 20px 48px rgba(0,0,0,.44)}
.batman-lead{font-size:1.05rem}
.batman-primary-btn{background:linear-gradient(135deg,#c9a54c,#efd37d);color:#0a0f1b;border-color:transparent}
.batman-profile-section{background:#0b1019}
.batman-profile-section .info-card{background:linear-gradient(180deg,#111824,#0d131d);border-color:rgba(124,151,207,.14);color:#dce4f4;box-shadow:0 18px 44px rgba(0,0,0,.20)}
.batman-profile-section .info-card h2{color:#f5f7fc}
.batman-profile-section .info-card p{color:#aeb9cf}
.batman-accent-blue{border-top:4px solid #355eb4!important}
.batman-accent-gold{border-top:4px solid #c8a34a!important}
.batman-accent-silver{border-top:4px solid #a8b2c5!important}
.batman-gallery-section{background:linear-gradient(180deg,#090d14,#05070b)}
.batman-section-heading h2{color:#f4f7ff}
.batman-section-heading p{color:#9faabc}
.batman-full-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.batman-full-gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px;border:1px solid rgba(122,151,215,.17);box-shadow:0 18px 38px rgba(0,0,0,.32)}
.batman-page footer{background:#05070b;border-top:1px solid rgba(117,145,205,.13)}
.batman-page footer p{color:#8792a7}
.batman-intro{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 48%,#17213a 0,#090d16 34%,#030407 70%);color:#fff;overflow:hidden}
.batman-intro::before{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,transparent 42%,rgba(93,129,208,.08) 49%,rgba(222,188,95,.07) 51%,transparent 58%);transform:translateX(-65%);animation:batSweep 1.25s ease-out .15s forwards}
.batman-intro-inner{text-align:center;position:relative;z-index:2;padding:24px;animation:batReveal .9s ease both}
.night-emblem{width:min(64vw,420px);height:auto;filter:drop-shadow(0 0 28px rgba(52,91,178,.36));margin-bottom:10px}
.night-emblem path{fill:#111c33;stroke:#d1ad52;stroke-width:2.2}
.batman-intro-kicker{font:700 .72rem/1 "DM Sans",sans-serif;letter-spacing:.35em;color:#879ccc;margin-bottom:14px}
.batman-intro-title{font:700 clamp(1.45rem,5.2vw,3.2rem)/1.05 "Oswald",sans-serif;letter-spacing:.08em;color:#f1f3f8;text-shadow:0 4px 28px rgba(0,0,0,.5)}
.batman-intro-out{animation:batFade .9s ease forwards}
@keyframes batSweep{to{transform:translateX(65%)}}
@keyframes batReveal{from{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}
@keyframes batFade{to{opacity:0;visibility:hidden}}
@media (prefers-reduced-motion:reduce){.batman-intro::before,.batman-intro-inner,.batman-intro-out{animation:none}.batman-intro{display:none}}
@media(max-width:900px){.batman-full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.batman-full-gallery img:last-child{grid-column:1/-1;aspect-ratio:16/10}}
@media(max-width:600px){.batman-detail-hero .detail-copy h1{font-size:4rem}.batman-full-gallery{gap:8px}.batman-full-gallery img{border-radius:13px}.batman-intro-title{letter-spacing:.045em}}


/* Rio profile-only animated tropical cutouts */
.rio-page-effects{position:fixed;inset:0;z-index:45;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .35s ease}
.rio-page.rio-effects-live .rio-page-effects{opacity:1}
.rio-palm,.rio-bird,.rio-flower,.rio-diamond,.rio-medal{position:absolute;filter:drop-shadow(0 7px 12px rgba(0,0,0,.18));will-change:transform,opacity}
.rio-palm{font-size:clamp(3.4rem,7vw,6.2rem);bottom:-16px;transform-origin:50% 100%;opacity:.72}
.rio-palm-left{left:-17px;animation:rioPalmLeft 4.8s ease-in-out infinite}
.rio-palm-right{right:-18px;transform:scaleX(-1);animation:rioPalmRight 5.4s ease-in-out infinite}
.rio-bird{left:-14vw;top:16vh;font-size:clamp(1.6rem,3.2vw,2.7rem);animation:rioBirdFly 9.5s cubic-bezier(.4,0,.2,1) .65s infinite}
.rio-flower{font-size:clamp(1.25rem,2.7vw,2rem);opacity:.78}
.rio-flower-a{left:4vw;top:34vh;animation:rioFlowerFloat 4.3s ease-in-out 1.2s infinite}
.rio-flower-b{right:5vw;top:61vh;animation:rioFlowerFloat 5.1s ease-in-out .4s infinite reverse}
.rio-diamond{color:#fff4ad;font-size:clamp(.8rem,1.8vw,1.3rem);text-shadow:0 0 14px rgba(255,223,103,.95);opacity:0}
.rio-diamond-a{left:12vw;top:22vh;animation:rioGem 2.7s ease-in-out .9s infinite}
.rio-diamond-b{right:13vw;top:43vh;animation:rioGem 3.3s ease-in-out 1.8s infinite}
.rio-medal{right:4vw;bottom:11vh;font-size:clamp(1.5rem,3vw,2.4rem);opacity:0;animation:rioMedalPop 7s ease-in-out 2.2s infinite}
.rio-name-stage{position:relative;display:inline-block;isolation:isolate;padding-right:.08em}
.rio-name-stage h1{position:relative;z-index:3;margin:0}
.rio-sun-glow{position:absolute;z-index:0;left:50%;top:52%;width:clamp(86px,16vw,148px);height:clamp(86px,16vw,148px);border-radius:50%;transform:translate(-50%,-50%) scale(.45);background:radial-gradient(circle,rgba(255,218,105,.62) 0%,rgba(255,190,66,.24) 42%,rgba(255,196,75,0) 72%);opacity:0;animation:rioSunRise 1.25s ease-out .15s forwards, rioSunPulse 4.6s ease-in-out 1.4s infinite}
.rio-crown{position:absolute;z-index:5;left:52%;top:-.38em;font-size:clamp(1.7rem,4vw,3rem);transform:translate(-50%,-22px) rotate(-5deg) scale(.6);opacity:0;filter:drop-shadow(0 6px 10px rgba(0,0,0,.22));animation:rioCrownDrop 1s cubic-bezier(.2,.9,.25,1.2) .8s forwards, rioCrownFloat 4.8s ease-in-out 2s infinite}
.rio-sparkle{position:absolute;z-index:6;color:#ffe27d;text-shadow:0 0 12px rgba(255,220,98,.95);opacity:0}
.rio-sparkle-1{left:-.18em;top:.05em;font-size:1.15rem;animation:rioSpark 2.4s ease-in-out .55s infinite}
.rio-sparkle-2{right:-.32em;top:.2em;font-size:1.4rem;animation:rioSpark 2.9s ease-in-out 1.05s infinite}
.rio-sparkle-3{right:.12em;bottom:.06em;font-size:.95rem;animation:rioSpark 2.2s ease-in-out 1.65s infinite}
@keyframes rioPalmLeft{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(5deg)}}
@keyframes rioPalmRight{0%,100%{transform:scaleX(-1) rotate(-5deg)}50%{transform:scaleX(-1) rotate(6deg)}}
@keyframes rioBirdFly{0%{transform:translate(-8vw,7vh) rotate(-7deg) scale(.9);opacity:0}8%{opacity:1}46%{transform:translate(56vw,-3vh) rotate(5deg) scale(1)}88%{opacity:1}100%{transform:translate(124vw,4vh) rotate(-2deg) scale(.88);opacity:0}}
@keyframes rioFlowerFloat{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(7deg)}}
@keyframes rioGem{0%,100%{opacity:0;transform:scale(.45) rotate(0)}35%{opacity:.95;transform:scale(1.05) rotate(35deg)}55%{opacity:.25;transform:scale(.72) rotate(65deg)}}
@keyframes rioMedalPop{0%,64%,100%{opacity:0;transform:translateY(12px) scale(.75) rotate(-8deg)}72%,88%{opacity:.88;transform:translateY(0) scale(1) rotate(3deg)}}
@keyframes rioSunRise{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes rioSunPulse{0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.78}50%{transform:translate(-50%,-50%) scale(1.1);opacity:1}}
@keyframes rioCrownDrop{to{opacity:1;transform:translate(-50%,0) rotate(-3deg) scale(1)}}
@keyframes rioCrownFloat{0%,100%{transform:translate(-50%,0) rotate(-3deg)}50%{transform:translate(-50%,-6px) rotate(3deg)}}
@keyframes rioSpark{0%,100%{opacity:0;transform:scale(.4) rotate(0)}38%{opacity:1;transform:scale(1.35) rotate(35deg)}62%{opacity:.35;transform:scale(.75) rotate(75deg)}}
@media(max-width:700px){.rio-page-effects{z-index:35}.rio-palm{font-size:3.6rem;opacity:.58}.rio-bird{top:13vh}.rio-flower-a{top:31vh}.rio-flower-b{top:68vh}.rio-medal{bottom:8vh}.rio-crown{top:-.52em}}
@media(prefers-reduced-motion:reduce){.rio-page-effects{display:none}.rio-sun-glow,.rio-crown,.rio-sparkle{animation:none!important}.rio-sun-glow{opacity:.55;transform:translate(-50%,-50%) scale(1)}.rio-crown{opacity:1;transform:translate(-50%,0) scale(1)}}


/* Past Litters & Happy Families homepage section */
.past-litters{
  background:
    radial-gradient(circle at 15% 15%,rgba(202,165,76,.10),transparent 24rem),
    radial-gradient(circle at 88% 78%,rgba(202,165,76,.06),transparent 26rem),
    linear-gradient(145deg,#07090d,#0d1118 58%,#080a0f);
  color:#f6f1e6;
  border-top:1px solid rgba(215,180,92,.18);
  border-bottom:1px solid rgba(215,180,92,.14);
}
.past-litters .eyebrow{color:#d6b45e;text-shadow:none}
.past-litters h2{color:#fff8e8;margin-bottom:0}
.past-litters-heading{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:end}
.past-litters-intro{margin:0;color:#b9bec8;max-width:680px;justify-self:end;line-height:1.75}
.past-litters-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px}
.past-litter-card{overflow:hidden;border-radius:22px;background:linear-gradient(180deg,#121722,#0d1118);border:1px solid rgba(218,183,91,.22);box-shadow:0 20px 46px rgba(0,0,0,.28)}
.past-litter-photo{aspect-ratio:4/3;display:grid;place-content:center;text-align:center;gap:5px;background:linear-gradient(145deg,#191d24,#11151c);border-bottom:1px solid rgba(218,183,91,.18);color:#d7b85f;position:relative}
.past-litter-photo::before{content:"";position:absolute;inset:18px;border:1px dashed rgba(218,183,91,.32);border-radius:15px}
.past-litter-photo span{font:600 1.05rem/1.1 "Oswald",sans-serif;letter-spacing:.08em;text-transform:uppercase;position:relative;z-index:1}
.past-litter-photo small{color:#777f8e;position:relative;z-index:1}
.past-litter-photo img{width:100%;height:100%;object-fit:cover;display:block}
.past-litter-copy{padding:22px}
.past-litter-meta{margin:0 0 14px;color:#d6b45e;font-size:.78rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.past-litter-copy blockquote{padding:0;background:transparent;border:0;box-shadow:none;color:#e4e7ec;font-size:1rem;line-height:1.65}
.past-litter-copy cite{color:#8f97a5;margin-top:14px}
.past-litters-note{text-align:center;color:#7f8794;font-size:.82rem;margin:24px 0 0}
@media(max-width:900px){.past-litters-heading{grid-template-columns:1fr;gap:16px}.past-litters-intro{justify-self:start}.past-litters-grid{grid-template-columns:1fr}}


/* Home-page-only floating Puppy Quiz */
.puppy-quiz-launcher{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 10px 22px rgba(0,0,0,.34));animation:puppyQuizFloat 3.4s ease-in-out infinite}
.puppy-quiz-dog{width:58px;height:58px;border-radius:50%;overflow:hidden;border:3px solid #d7b55e;background:#111;box-shadow:0 0 0 3px rgba(8,10,14,.72)}
.puppy-quiz-dog img,.puppy-quiz-mini-dog img{width:100%;height:100%;display:block;object-fit:cover}
.puppy-quiz-bubble{position:relative;background:#fff8e8;color:#15110a;border:1px solid #d4b45f;border-radius:16px;padding:10px 14px;font:800 .82rem/1 "DM Sans",sans-serif;letter-spacing:.025em;white-space:nowrap}
.puppy-quiz-bubble:before{content:"";position:absolute;left:-7px;bottom:11px;width:12px;height:12px;background:#fff8e8;border-left:1px solid #d4b45f;border-bottom:1px solid #d4b45f;transform:rotate(45deg)}
.puppy-quiz-launcher:hover{transform:translateY(-3px)}
@keyframes puppyQuizFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.puppy-quiz-dialog{width:min(92vw,560px);max-height:min(86vh,720px);border:1px solid rgba(215,181,94,.42);border-radius:24px;padding:28px;background:linear-gradient(150deg,#0c1017,#141a24);color:#eef0f4;box-shadow:0 28px 90px rgba(0,0,0,.62);overflow:auto}
.puppy-quiz-dialog::backdrop{background:rgba(2,4,7,.76);backdrop-filter:blur(6px)}
.puppy-quiz-dialog h2,.puppy-quiz-dialog h3{color:#fff8e8}
.puppy-quiz-dialog h2{margin:.15rem 0 0}.puppy-quiz-dialog h3{font-size:clamp(1.35rem,4vw,1.9rem);margin:.35rem 0 1.25rem}
.puppy-quiz-close{color:#fff;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.puppy-quiz-head{display:flex;align-items:center;gap:14px;padding-right:34px}
.puppy-quiz-mini-dog{width:58px;height:58px;flex:0 0 auto;border-radius:50%;overflow:hidden;border:2px solid #d7b55e}
.puppy-quiz-intro{color:#aeb5c1;line-height:1.6;margin:14px 0 22px}
.puppy-quiz-step{display:none}.puppy-quiz-step.is-active{display:block;animation:puppyQuizIn .28s ease both}
@keyframes puppyQuizIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.puppy-quiz-count{margin:0;color:#d6b45e;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.puppy-quiz-options{display:grid;gap:10px}
.puppy-quiz-options button{width:100%;text-align:left;border:1px solid rgba(215,181,94,.23);border-radius:14px;padding:14px 16px;background:#111722;color:#edf0f6;font:700 .95rem/1.35 "DM Sans",sans-serif;cursor:pointer;transition:.18s ease}
.puppy-quiz-options button:hover,.puppy-quiz-options button:focus-visible{border-color:#d7b55e;background:#191f2b;transform:translateX(3px);outline:none}
.puppy-quiz-result-copy{color:#b7beca;line-height:1.65}.puppy-quiz-summary{display:grid;gap:7px;margin:18px 0;padding:15px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);font-size:.88rem;color:#c8ced8}.puppy-quiz-summary strong{color:#e3c46d}
.puppy-quiz-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.puppy-quiz-actions .btn{justify-content:center;text-align:center}.puppy-text-btn{background:#f3eee2;color:#111;border-color:#f3eee2}.puppy-waitlist-btn{grid-column:1/-1;background:transparent;color:#e9d18f;border-color:#b99743}
.puppy-quiz-restart{display:block;margin:16px auto 0;border:0;background:transparent;color:#8f98a8;text-decoration:underline;cursor:pointer}
@media(max-width:600px){.puppy-quiz-launcher{right:max(12px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.puppy-quiz-dog{width:52px;height:52px}.puppy-quiz-bubble{padding:9px 12px;font-size:.76rem}.puppy-quiz-dialog{padding:22px 18px;border-radius:20px}.puppy-quiz-actions{grid-template-columns:1fr}.puppy-waitlist-btn{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.puppy-quiz-launcher{animation:none}}


/* Puppy Quiz recommendation + contact result additions */
.puppy-quiz-recommendations{display:grid;gap:10px;margin:16px 0}
.puppy-litter-match{padding:15px 16px;border:1px solid rgba(215,181,94,.24);border-radius:15px;background:rgba(215,181,94,.055)}
.puppy-litter-match h4{margin:4px 0 7px;color:#fff8e8;font-size:1.05rem}
.puppy-litter-match p{margin:0;color:#bdc4cf;line-height:1.55;font-size:.88rem}
.puppy-litter-rank{display:inline-block;color:#e3c46d;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.puppy-kids-note{margin:2px 0 0;color:#aeb5c1;font-size:.8rem;line-height:1.5}
.puppy-quiz-contact{margin:18px 0 16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.09)}
.puppy-quiz-contact-title{margin:0 0 10px;color:#fff8e8;font-weight:800}
.puppy-quiz-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.puppy-quiz-contact-grid label{display:grid;gap:6px;color:#c7ccd5;font-size:.77rem;font-weight:700}
.puppy-quiz-contact-grid label.full{grid-column:1/-1}
.puppy-quiz-contact-grid label span{font-weight:500;color:#8f98a8}
.puppy-quiz-contact-grid input{width:100%;border:1px solid rgba(215,181,94,.2);border-radius:11px;background:#0f141d;color:#f6f2e8;padding:11px 12px;font:600 .9rem "DM Sans",sans-serif;outline:none}
.puppy-quiz-contact-grid input:focus{border-color:#d7b55e;box-shadow:0 0 0 3px rgba(215,181,94,.1)}
.puppy-quiz-email-note{margin:9px 0 0;color:#8f98a8;font-size:.75rem;line-height:1.45}
@media(max-width:600px){.puppy-quiz-contact-grid{grid-template-columns:1fr}.puppy-quiz-contact-grid label.full{grid-column:auto}}

/* First Pick Puppy Passport result */
.puppy-passport{position:relative;margin-top:4px;padding:21px;border:1px solid rgba(215,181,94,.55);border-radius:19px;background:linear-gradient(145deg,rgba(32,27,18,.96),rgba(13,17,23,.98) 52%,rgba(25,20,13,.96));box-shadow:inset 0 0 0 1px rgba(255,244,201,.055),0 18px 45px rgba(0,0,0,.28);overflow:hidden}
.puppy-passport:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 38%,rgba(229,197,112,.055) 49%,transparent 60%)}
.puppy-passport-topline{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px}
.puppy-passport-topline h3{margin:.08rem 0 .1rem!important;font-size:clamp(1.65rem,5vw,2.15rem)!important}
.puppy-passport-stamp{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border:2px solid #d7b55e;border-radius:50%;color:#e6c66d;font:900 1.1rem/1 "DM Sans",sans-serif;letter-spacing:.08em;box-shadow:inset 0 0 0 4px rgba(215,181,94,.09);transform:rotate(-7deg)}
.puppy-passport-label{position:relative;margin:12px 0 7px;color:#d9bb69;font:800 .69rem/1.2 "DM Sans",sans-serif;letter-spacing:.17em}
.puppy-passport-copy{position:relative;margin:0;color:#c0c5cd;line-height:1.6;font-size:.91rem}
.puppy-passport .puppy-quiz-recommendations{position:relative;margin:17px 0 13px}
.puppy-passport .puppy-litter-match{background:rgba(255,255,255,.035);border-color:rgba(215,181,94,.35)}
.puppy-passport .puppy-litter-match h4{font-size:1.03rem}
.puppy-passport-divider{position:relative;display:flex;align-items:center;gap:10px;margin:18px 0 8px;color:#9ea5b0;font:800 .68rem/1 "DM Sans",sans-serif;letter-spacing:.11em;text-transform:uppercase}
.puppy-passport-divider:before,.puppy-passport-divider:after{content:"";height:1px;flex:1;background:rgba(215,181,94,.23)}
.puppy-passport .puppy-quiz-summary{position:relative;margin:10px 0 12px;background:rgba(0,0,0,.16);grid-template-columns:1fr 1fr}
.puppy-passport-disclaimer{position:relative;margin:0;color:#888f9b;font-size:.72rem;line-height:1.5}
.puppy-passport-actions{margin-top:4px}
#puppy-save-match.is-saved{border-color:#d7b55e;color:#e7ca77;background:rgba(215,181,94,.08)}
@media(max-width:600px){.puppy-passport{padding:17px 15px}.puppy-passport-stamp{width:48px;height:48px}.puppy-passport .puppy-quiz-summary{grid-template-columns:1fr}}


/* 2026 home-page premium polish — visual only; profile pages and quiz logic unchanged */
.site-theme{
  --premium-gold:#d6b45e;
  --premium-gold-deep:#b88a2d;
  --premium-ink:#0b0e13;
  --premium-warm:#fff9ec;
}
.site-theme .site-header{border-bottom-color:rgba(214,180,94,.18)}
.site-theme .primary-nav a{transition:color .22s ease,text-shadow .22s ease}
.site-theme .primary-nav a:hover{color:#fff5d7;text-shadow:0 0 22px rgba(214,180,94,.28)}
.site-theme main .eyebrow{color:var(--premium-gold)}
.site-theme main .text-link,.site-theme main .contact-points a{color:var(--premium-gold-deep)}
.site-theme main .btn-primary{
  background:linear-gradient(135deg,var(--premium-gold-deep),var(--premium-gold));
  color:#111318;
  box-shadow:0 12px 30px rgba(184,138,45,.22);
}
.site-theme main .btn-primary:hover{background:linear-gradient(135deg,#c99a38,#e6c772);box-shadow:0 16px 34px rgba(184,138,45,.3)}
.site-theme main .btn-secondary{border:1px solid rgba(214,180,94,.32);box-shadow:0 8px 26px rgba(0,0,0,.12)}
.site-theme .hero-photo-copy .eyebrow,
.site-theme .hero-photo-copy h1,
.site-theme .hero-photo-copy .hero-text,
.site-theme .hero-photo-copy .hero-actions,
.site-theme .hero-photo-copy .mini-trust{
  opacity:0;
  transform:translateY(22px);
}
.site-theme.is-polished .hero-photo-copy .eyebrow,
.site-theme.is-polished .hero-photo-copy h1,
.site-theme.is-polished .hero-photo-copy .hero-text,
.site-theme.is-polished .hero-photo-copy .hero-actions,
.site-theme.is-polished .hero-photo-copy .mini-trust{
  animation:fpCinematicReveal .72s cubic-bezier(.2,.72,.2,1) forwards;
}
.site-theme.is-polished .hero-photo-copy h1{animation-delay:.10s}
.site-theme.is-polished .hero-photo-copy .hero-text{animation-delay:.20s}
.site-theme.is-polished .hero-photo-copy .hero-actions{animation-delay:.30s}
.site-theme.is-polished .hero-photo-copy .mini-trust{animation-delay:.40s}
@keyframes fpCinematicReveal{to{opacity:1;transform:translateY(0)}}

/* Refine the existing trust strip into a compact premium trust bar. */
.site-theme .trust-strip{
  position:relative;
  z-index:3;
  background:linear-gradient(180deg,#fffaf0,#f7edd9);
  border-top:1px solid rgba(214,180,94,.32);
  border-bottom:1px solid rgba(184,138,45,.22);
  box-shadow:0 14px 30px rgba(34,25,8,.05);
}
.site-theme .trust-grid{gap:10px;padding-block:16px}
.site-theme .trust-grid>div{
  position:relative;
  min-height:58px;
  padding:8px 12px 8px 48px;
  border-right:1px solid rgba(184,138,45,.18);
}
.site-theme .trust-grid>div:last-child{border-right:0}
.site-theme .trust-grid>div::before{
  position:absolute;left:10px;top:11px;width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;background:#151922;color:#f1cf75;border:1px solid rgba(214,180,94,.38);
  font-size:.86rem;font-weight:900;box-shadow:0 6px 15px rgba(12,15,20,.10)
}
.site-theme .trust-grid>div:nth-child(1)::before{content:"✚"}
.site-theme .trust-grid>div:nth-child(2)::before{content:"✓"}
.site-theme .trust-grid>div:nth-child(3)::before{content:"⌂"}
.site-theme .trust-grid>div:nth-child(4)::before{content:"∞"}
.site-theme .trust-grid strong{font-size:.88rem;letter-spacing:.01em}
.site-theme .trust-grid span{font-size:.75rem;line-height:1.35;margin-top:2px}

/* Gentle depth without changing section layout. */
.site-theme .section{position:relative;isolation:isolate;overflow:hidden}
.site-theme .section::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  width:520px;height:520px;border-radius:50%;right:-260px;top:calc(-180px + var(--fp-parallax,0px));
  background:radial-gradient(circle,rgba(214,180,94,.085),rgba(214,180,94,0) 68%);
  transform:translate3d(0,0,0);will-change:top;
}
.site-theme .section:nth-of-type(even)::before{right:auto;left:-280px;background:radial-gradient(circle,rgba(31,78,121,.065),rgba(31,78,121,0) 68%)}
.site-theme .section-dark::before{background:radial-gradient(circle,rgba(214,180,94,.13),rgba(214,180,94,0) 67%)}
.site-theme .dog-card,.site-theme .standards-grid article,.site-theme .past-litter-card,.site-theme .contact-form{
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.site-theme .dog-card:hover,.site-theme .standards-grid article:hover,.site-theme .past-litter-card:hover{
  transform:translateY(-4px);border-color:rgba(214,180,94,.34);box-shadow:0 20px 46px rgba(12,15,20,.11)
}
@media(max-width:900px){
  .site-theme .trust-grid{grid-template-columns:repeat(2,1fr)}
  .site-theme .trust-grid>div:nth-child(2){border-right:0}
}
@media(max-width:600px){
  .site-theme .trust-grid{grid-template-columns:1fr;gap:0;padding-block:8px}
  .site-theme .trust-grid>div{border-right:0;border-bottom:1px solid rgba(184,138,45,.14);min-height:54px}
  .site-theme .trust-grid>div:last-child{border-bottom:0}
  .site-theme .section::before{width:360px;height:360px}
}
@media(prefers-reduced-motion:reduce){
  .site-theme .hero-photo-copy .eyebrow,.site-theme .hero-photo-copy h1,.site-theme .hero-photo-copy .hero-text,.site-theme .hero-photo-copy .hero-actions,.site-theme .hero-photo-copy .mini-trust{opacity:1;transform:none;animation:none!important}
  .site-theme .section::before{top:-180px!important}
}

/* Upcoming Litters */
.upcoming-litters{background:linear-gradient(145deg,#0d1119 0%,#151b27 52%,#0c1017 100%);color:#fff}
.upcoming-litters-heading{max-width:720px;margin-bottom:30px}
.upcoming-litters-heading h2{margin:.2rem 0 .65rem;font-size:clamp(2rem,4vw,3.2rem);color:#fff}
.upcoming-litters-heading>p:last-child{color:#c8ced9;line-height:1.65}
.upcoming-litter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.upcoming-litter-card{position:relative;padding:28px;border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(214,180,94,.24);box-shadow:0 18px 45px rgba(0,0,0,.2);overflow:hidden}
.upcoming-litter-card::after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-80px;top:-80px;background:radial-gradient(circle,rgba(214,180,94,.18),transparent 70%);pointer-events:none}
.upcoming-litter-card h3{margin:14px 0 10px;color:#fff;font-size:1.35rem}
.upcoming-litter-card p{color:#bfc6d1;line-height:1.6;min-height:78px}
.litter-badge{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(214,180,94,.12);border:1px solid rgba(214,180,94,.4);color:#f1cf75;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.litter-details{display:grid;gap:7px;margin:20px 0;color:#aeb7c5;font-size:.88rem}.litter-details strong{color:#fff}
.upcoming-litter-card .btn{width:100%;justify-content:center}
.upcoming-note{margin:22px 0 0;text-align:center;color:#929cab;font-size:.82rem}
@media(max-width:900px){.upcoming-litter-grid{grid-template-columns:1fr}.upcoming-litter-card p{min-height:0}}

/* Floating Upcoming Litters bubble */
.litter-launcher{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(98px,calc(env(safe-area-inset-bottom) + 98px));z-index:899;display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 10px 22px rgba(0,0,0,.34))}
.litter-launcher-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#d9b35f,#8f681f);border:2px solid rgba(255,255,255,.7);font-size:1.45rem}
.litter-launcher-bubble{background:#0e1522;color:#fff;border:1px solid rgba(218,179,95,.75);border-radius:999px;padding:10px 14px;font:700 .78rem/1 'DM Sans',sans-serif;letter-spacing:.02em;white-space:nowrap}
.litter-launcher:hover{transform:translateY(-3px)}
.litter-dialog{width:min(92vw,520px);border:1px solid rgba(218,179,95,.55);border-radius:24px;padding:28px;background:linear-gradient(145deg,#0d1119,#171e2b);color:#fff;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.litter-dialog::backdrop{background:rgba(3,6,12,.76);backdrop-filter:blur(5px)}
.litter-dialog h2{margin:.2rem 0 .5rem;font-size:clamp(1.8rem,5vw,2.6rem)}
.litter-dialog-intro{color:#cbd1dc;margin:0 0 20px}
.litter-dog-list{display:grid;gap:10px}
.litter-dog-button{width:100%;min-height:62px;border:1px solid rgba(218,179,95,.32);border-radius:15px;background:rgba(255,255,255,.055);color:#fff;padding:12px 15px;text-align:left;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.litter-dog-button span{font:700 1.08rem 'DM Sans',sans-serif}.litter-dog-button small{color:#d9b35f;font-weight:700}.litter-dog-button:hover,.litter-dog-button.is-active{border-color:#d9b35f;background:rgba(218,179,95,.12)}
.litter-date-card{margin-top:16px;padding:18px;border-radius:16px;background:#f4f0e7;color:#111827}.litter-date-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#80601e;font-weight:800}.litter-date-card h3{margin:5px 0 2px;font-size:1.35rem}.litter-date-card p{margin:0 0 5px;font-size:1.15rem;font-weight:800}.litter-date-card small{color:#667085}
@media(max-width:600px){.litter-launcher{right:max(12px,env(safe-area-inset-right));bottom:max(88px,calc(env(safe-area-inset-bottom) + 88px))}.litter-launcher-icon{width:48px;height:48px}.litter-launcher-bubble{padding:9px 12px;font-size:.72rem}.litter-dialog{padding:22px 18px;border-radius:20px}}

/* Isis upcoming litter submenu */
.isis-litter-menu{margin-top:6px}.isis-menu-back{border:0;background:transparent;color:#d9b35f;font-weight:800;padding:0 0 14px;cursor:pointer}.isis-menu-hero{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center}.isis-menu-hero>img{width:120px;height:120px;object-fit:cover;border-radius:18px;border:1px solid rgba(218,179,95,.5)}.isis-menu-hero h3{margin:3px 0 7px;font-size:1.45rem}.isis-menu-hero p{margin:0;color:#cbd1dc}.isis-menu-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.isis-menu-gallery img{width:100%;height:145px;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.12)}.isis-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.isis-menu-actions .btn{width:100%;justify-content:center}.isis-pedigree-placeholder{margin-top:14px;padding:18px;border:1px dashed rgba(218,179,95,.6);border-radius:15px;background:rgba(218,179,95,.08)}.isis-pedigree-placeholder p{margin:5px 0 0;color:#cbd1dc}@media(max-width:520px){.isis-menu-hero{grid-template-columns:90px 1fr}.isis-menu-hero>img{width:90px;height:100px}.isis-menu-gallery img{height:115px}.isis-menu-actions{grid-template-columns:1fr}}

/* Isis pedigree submenu */
.isis-pedigree-menu{margin-top:4px}.isis-pedigree-menu h3{margin:3px 0 6px;font-size:1.55rem;color:#fff}.isis-pedigree-copy{margin:0 0 14px;color:#cbd1dc}.isis-pedigree-image-button{display:block;width:100%;padding:0;border:1px solid rgba(218,179,95,.55);border-radius:16px;overflow:hidden;background:#050505;cursor:zoom-in}.isis-pedigree-image-button img{display:block;width:100%;height:auto;max-height:58vh;object-fit:contain}.isis-pedigree-hint{display:block;margin-top:9px;text-align:center;color:#9ca6b5}.isis-pedigree-lightbox{width:min(96vw,820px);max-height:92vh;border:1px solid rgba(218,179,95,.55);border-radius:18px;padding:14px;background:#050505;box-shadow:0 24px 80px rgba(0,0,0,.65)}.isis-pedigree-lightbox::backdrop{background:rgba(0,0,0,.9);backdrop-filter:blur(4px)}.isis-pedigree-lightbox img{display:block;width:100%;height:auto;max-height:86vh;object-fit:contain;border-radius:10px}.isis-pedigree-lightbox-close{z-index:2}

/* Upcoming litter dog thumbnails */
.litter-dog-button{justify-content:flex-start;gap:13px}.litter-dog-button>img{width:52px;height:52px;flex:0 0 52px;object-fit:cover;border-radius:12px;border:1px solid rgba(218,179,95,.45)}.litter-dog-copy{display:flex;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:10px}.litter-dog-copy strong{font:700 1.08rem 'DM Sans',sans-serif}.litter-dog-copy small{text-align:right;color:#d9b35f;font-weight:700;line-height:1.25}@media(max-width:430px){.litter-dog-copy{align-items:flex-start;flex-direction:column;gap:3px}.litter-dog-copy small{text-align:left}.litter-dog-button>img{width:48px;height:48px;flex-basis:48px}}
