:root { color-scheme: light; --red:#a9001b; --text:#282522; --muted:#665f58; --cream:#f4f1e7; --line:#ddd7cd; }
* { box-sizing:border-box; }
body { margin:0; background:#fff; color:var(--text); font:16px/1.66 system-ui,sans-serif; }
a { color:#8e0018; text-underline-offset:.18em; }
a:hover { color:#57000f; }
:focus-visible { outline:3px solid #b75b13; outline-offset:3px; }
img { display:block; max-width:100%; height:auto; }
h1,h2,h3,h4,h5,h6 { line-height:1.2; overflow-wrap:break-word; }
h1 { font-size:clamp(2rem,5vw,3.2rem); letter-spacing:-.035em; margin:1.1rem 0; }
h2 { font-size:1.55rem; margin:1.3rem 0 .6rem; }
p { margin:0 0 1rem; }
figure { margin:0; }
.wrap { width:min(1160px,calc(100% - 38px)); margin-inline:auto; }
.archive-strip { padding:.35rem 1rem; background:#272321; color:#fff; text-align:center; font-size:.79rem; letter-spacing:.04em; }
.top { background:white; border-bottom:1px solid var(--line); }
.top-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; padding:10px 0; gap:8px 26px; }
.logo img { width:180px; height:auto; }
nav { display:flex; flex-wrap:wrap; gap:2px 14px; align-items:center; }
nav a,nav summary { display:block; padding:.45rem .15rem; color:var(--text); text-decoration:none; font-size:.92rem; font-weight:650; }
nav a[aria-current="page"] { color:var(--red); text-decoration:underline; }
.menu { position:relative; }
.menu summary { display:list-item; cursor:pointer; margin-left:1rem; }
.menu > div { position:absolute; z-index:2; inset-block-start:100%; inset-inline-start:0; min-width:188px; padding:8px 12px; background:white; border:1px solid var(--line); box-shadow:0 4px 12px #2825221a; }
.main { min-height:55vh; padding-block:1.8rem 3.5rem; }
.skip { position:absolute; left:1rem; top:1rem; transform:translateY(-200%); background:white; padding:.4rem .6rem; }
.skip:focus { transform:none; z-index:10; }
.banners { position:relative; }
.banners figure { background:#191818; margin-bottom:.5rem; }
.banners img { width:100%; }
.slider-controls { display:flex; justify-content:center; align-items:center; gap:1rem; margin-top:.65rem; color:var(--muted); }
.slider-controls[hidden] { display:none; }
.slider-controls button { width:38px; height:38px; border:1px solid var(--line); background:#fff; border-radius:3px; font-size:1.3rem; cursor:pointer; }
.intro { max-width:75ch; margin-bottom:1.75rem; }
.intro h5 { font-size:1.06rem; font-weight:500; }
.breed-grid,.collab-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.breed-grid article,.collab-grid figure { border:1px solid var(--line); text-align:center; padding:12px; }
.breed-grid h2 { font-size:1.1rem; }
.breed-grid img { width:100%; aspect-ratio:1; object-fit:contain; }
.breed-pictures { display:flex; flex-wrap:wrap; gap:16px; margin-block:1.4rem 2rem; }
.breed-pictures figure { width:min(230px,100%); padding:12px; border:1px solid var(--line); }
.breed-pictures img { width:100%; max-height:224px; object-fit:contain; }
figcaption { margin-top:.4rem; font-size:.86rem; color:var(--muted); text-align:center; }
.prose { max-width:83ch; }
.prose p,.prose li { overflow-wrap:anywhere; }
.prose img { max-height:480px; object-fit:contain; margin-block:.8rem; }
.prose p:empty { display:none; }
.prose table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; }
.prose th,.prose td { padding:.4rem .6rem; border:1px solid var(--line); }
.service { padding:1rem 1.35rem; margin-bottom:1rem; border:1px solid var(--line); }
.service:nth-of-type(odd) { background:var(--cream); }
.service .image-link { display:inline-block; margin:6px; max-width:100%; }
.service img { max-height:330px; object-fit:contain; }
.contact-grid { display:grid; grid-template-columns:1fr 1.5fr 1fr; gap:1rem; }
.archive-note,.media-missing { padding:.75rem 1rem; background:var(--cream); color:#514535; }
.actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { padding:.55rem .9rem; display:inline-block; color:white; background:var(--red); text-decoration:none; border-radius:3px; }
.button:hover { color:white; background:#820016; }
.button.secondary { border:1px solid var(--red); background:white; color:var(--red); }
.muted { color:var(--muted); }
.historical-price { font-weight:700; }
.index-list { display:grid; gap:.7rem; }
.bottom { padding:1.4rem 0; background:#282522; color:#f6f1e6; }
.bottom p { margin-bottom:.4rem; }
.footer-links { display:flex; flex-wrap:wrap; gap:.3rem 1.1rem; }
.bottom a { color:#fff; }
@media(max-width:780px) { .breed-grid,.collab-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .top-inner { justify-content:flex-start; } }
@media(max-width:550px) { .wrap { width:calc(100% - 24px); } .main { padding-top:1rem; } nav { gap:0 10px; } .contact-grid { grid-template-columns:1fr; } .breed-pictures figure { width:calc(50% - 8px); } }
.article-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:12px; margin-top:1.25rem; }
.article-gallery .image-link { display:grid; place-items:center; min-width:0; border:1px solid var(--line); padding:8px; }
.article-gallery img { width:100%; height:auto; margin:0; }
