/* Restore the original site's simple section navigation, banner and photo albums. */
:root { --paper:#fff; --ink:#292522; --wine:#482a26; --muted:#57514c; --line:#e5ded8; --accent:#864735; }
body { background:#fff; }
.header { max-width:1440px; margin:auto; padding:0 4%; height:100px; background:rgba(255,255,255,.98); border-bottom:1px solid var(--line); }
.brand-words { font-family:Georgia,serif; font-size:34px; font-weight:700; letter-spacing:-.04em; }
.brand-words small { font-family:Verdana,sans-serif; font-size:10px; letter-spacing:.2em; }
.nav { gap:23px; font-size:14px; }
.nav [aria-current=page] { text-decoration:underline; text-underline-offset:7px; }
.legacy-shell { width:min(1100px,92%); margin:0 auto; padding-bottom:64px; }
.legacy-home { padding-top:32px; }
.original-banner { margin:0; overflow:hidden; border-radius:12px; background:#340b07; }
.original-banner img { width:100%; height:auto; display:block; }
.legacy-home-title { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:24px 0 32px; border-bottom:1px solid var(--line); }
.legacy-home-title h1 { font-size:32px; letter-spacing:-.025em; }
.legacy-home-title p { font-size:13px; font-weight:700; letter-spacing:.06em; }
.legacy-section { margin-top:46px; scroll-margin-top:120px; }
.legacy-section > h2, .legacy-section-heading h2, .legacy-litter h2 { font-size:27px; margin-bottom:14px; }
.legacy-section > p { margin:0 0 24px; max-width:850px; font-size:16px; line-height:1.9; }
.legacy-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:20px; }
.legacy-section-heading > a { font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.dog-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.dog-card { border:1px solid var(--line); border-radius:9px; overflow:hidden; background:#fff; scroll-margin-top:125px; }
.dog-photo { aspect-ratio:1.2; background:#f4f1ec; }
.dog-photo picture { display:block; height:100%; }
.dog-photo img { width:100%; height:100%; object-fit:contain; }
.dog-card-copy { padding:21px; }
.dog-card h3 { font-size:20px; line-height:1.5; overflow-wrap:anywhere; }
.dog-card h3 a:hover { text-decoration:underline; }
.registered-name { margin-top:7px; font-size:12px; line-height:1.8; letter-spacing:.025em; }
.dog-photo-placeholder { height:100%; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:14px; background:#f3eee8; }
.dog-photo-placeholder > span { font:70px/1 Georgia,serif; color:#765b4d; }
.dog-photo-placeholder > p { font-size:13px; }
.legacy-shortcuts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin:50px 0; }
.legacy-shortcuts a { padding:24px 0; border-top:2px solid var(--accent); }
.legacy-shortcuts h2 { font-size:24px; margin-bottom:12px; }
.legacy-shortcuts span { font-size:14px; line-height:1.8; color:var(--muted); }
.legacy-litter { padding:32px; background:#f5f1eb; border-radius:8px; }
.legacy-litter p { font-size:16px; margin:14px 0; line-height:1.9; }
.legacy-litter .button { margin:10px 24px 0 0; }
.legacy-intro { padding:32px 0 28px; border-bottom:1px solid var(--line); margin-bottom:30px; }
.legacy-intro .breadcrumbs { margin-bottom:25px; font-size:12px; }
.legacy-intro h1 { font-size:42px; }
.history-note { padding:20px 24px; background:#f5f1eb; margin:0 auto 35px; border-left:3px solid var(--accent); }
.history-note p { font-size:15px; line-height:1.9; }
.original-story { max-width:850px; margin:auto; }
.original-story > p { font-size:17px; line-height:1.95; margin:25px 0; }
.original-story figure { max-width:760px; margin:35px auto; }
.original-story figure img { width:auto; max-width:100%; max-height:580px; margin:auto; object-fit:contain; }
.original-story figcaption, .champions-gallery figcaption { font-size:14px; text-align:center; margin-top:12px; line-height:1.8; }
.legacy-lede { font-size:17px; line-height:1.9; max-width:850px; margin-bottom:35px; }
.champions-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; }
.champions-gallery figure { margin:0; padding:18px; border:1px solid var(--line); }
.champions-gallery img { height:350px; width:100%; object-fit:contain; background:#f8f6f2; }
.champions-gallery figcaption { font-weight:700; }
.litter-availability { padding:22px; background:#f5f1eb; border-radius:8px; }
.litter-availability p { margin-bottom:18px; line-height:1.9; }
.puppy-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.puppy-gallery figure { margin:0; }
.puppy-gallery img { width:100%; height:260px; object-fit:contain; background:#f5f1eb; }
.original-contact { padding:10px 0 45px; }
.original-contact p { font-size:17px; margin:20px 0 12px; }
.original-contact > a { font-size:21px; text-decoration:underline; text-underline-offset:5px; overflow-wrap:anywhere; }
.original-contact .contact-number { font-size:32px; font-weight:700; }
.page-intro { padding-top:35px; }
.page-intro h1 { font-size:42px; }
.related-pages { background:#f5f1eb; }
.footer { border-top:1px solid var(--line); background:#f8f6f2; max-width:none; }
.footer-directory { max-width:1200px; margin:0 auto 36px; }
.footer-bottom { max-width:1200px; margin:auto; }
.contact { background:#f1f2ec; }
@media(max-width:1080px) { .header { padding:0 5%; height:88px; } .nav { background:#fff; } }
@media(max-width:700px) {
 .dog-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .legacy-home-title { flex-direction:column; align-items:flex-start; gap:10px; }
 .legacy-home-title h1 { font-size:29px; }
 .legacy-section-heading { flex-wrap:wrap; gap:4px; }
 .legacy-shortcuts { gap:18px; }
 .legacy-shortcuts h2 { font-size:19px; }
 .champions-gallery { gap:22px; }
 .champions-gallery img { height:220px; }
 .puppy-gallery { grid-template-columns:1fr; }
}
@media(max-width:560px) {
 .header { height:80px; } .brand-words { font-size:29px; }
 .legacy-home { padding-top:20px; } .legacy-shell { width:90%; padding-bottom:40px; }
 .original-banner { border-radius:6px; }
 .legacy-home-title h1 { font-size:26px; }
 .legacy-home-title p { font-size:11px; }
 .dog-gallery, .champions-gallery, .legacy-shortcuts { grid-template-columns:1fr; }
 .legacy-section { margin-top:34px; }
 .dog-photo { aspect-ratio:1.25; }
 .legacy-shortcuts { gap:0; margin:35px 0; }
 .legacy-shortcuts a { padding:20px 0; }
 .legacy-shortcuts h2 { font-size:23px; }
 .legacy-litter { padding:24px; }
 .legacy-intro h1, .page-intro h1 { font-size:32px; }
 .original-story > p { font-size:16px; }
 .champions-gallery img { height:auto; max-height:360px; }
 .footer { padding-bottom:100px; }
}

@media(max-width:1080px) { .nav { max-height:calc(100dvh - 145px); overflow-y:auto; overscroll-behavior:contain; } }

/* Shared navigation: disclosure buttons work with touch, mouse and keyboard. */
.nav { gap:17px; }
.nav-group { position:relative; }
.nav-group-heading { display:flex; align-items:center; gap:2px; }
.nav-group-heading > a { padding:14px 0; white-space:nowrap; }
.submenu-toggle { display:flex; align-items:center; justify-content:center; width:30px; height:44px; padding:0; background:transparent; color:inherit; border:0; border-radius:5px; cursor:pointer; }
.submenu-toggle span { width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); }
.submenu-toggle[aria-expanded=true] span { transform:translateY(2px) rotate(225deg); }
.submenu-toggle:hover, .nav-group.is-open > .nav-group-heading { color:var(--accent); }
.nav a:focus-visible, .submenu-toggle:focus-visible, .menu-toggle:focus-visible { outline:2px solid var(--accent); outline-offset:4px; border-radius:3px; }
.nav-submenu { display:none; position:absolute; top:100%; left:-18px; width:290px; padding:10px; background:#fff; border:1px solid var(--line); border-radius:8px; box-shadow:0 12px 30px #3322191a; }
.nav-group.is-open > .nav-submenu { display:block; }
.nav-submenu a { display:block; padding:12px 14px; border-radius:4px; font-size:14px; line-height:1.6; }
.nav-submenu a:hover, .nav-submenu a:focus-visible { background:#f5f1eb; color:var(--accent); }
.nav-submenu a[aria-current=page] { background:#f5f1eb; text-underline-offset:4px; }
@media(min-width:1081px) and (max-width:1200px) { .nav { gap:11px; font-size:13px; } .header { gap:18px; } .submenu-toggle { width:26px; } }
@media(max-width:1080px) {
 .nav { top:100%; gap:0; }
 .nav-group { border-bottom:1px solid var(--line); }
 .nav-group-heading { justify-content:space-between; }
 .nav-group-heading > a { flex:1; padding:15px 0; font-size:14px; }
 .submenu-toggle { width:48px; height:48px; }
 .nav-submenu { position:static; width:auto; padding:0 0 12px 12px; border:0; border-left:2px solid var(--line); border-radius:0; box-shadow:none; margin:0 0 12px; }
 .nav-submenu a { padding:11px 12px; }
}
