:root{--bg:#FAF4E8;--surface:#FFFBF2;--sand:#EFE3CB;--ink:#3A2A20;--muted:#76624F;--gold:#B8893A;--gold2:#E3C37A;--line:#DCCBA8;--cocoa:#2B1D15;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#1E1510;--surface:#2A1E17;--sand:#33251C;--ink:#F3E9D6;--muted:#BBA98E;--line:#4A3829}}
:root[data-theme="dark"]{--bg:#1E1510;--surface:#2A1E17;--sand:#33251C;--ink:#F3E9D6;--muted:#BBA98E;--line:#4A3829}
html{scroll-behavior:smooth;scroll-padding-top:calc(4.5rem + env(safe-area-inset-top,0px))}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.05rem/1.7 Jost,system-ui,sans-serif}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.1;margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{max-width:70rem;margin:0 auto;padding:0 1.25rem}
.gold{background:linear-gradient(100deg,#B8893A,#F0D48C 45%,#B8893A);-webkit-background-clip:text;background-clip:text;color:transparent}
/* header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--cocoa);border-bottom:1px solid #5a4630}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:4.25rem}
.brand{font:600 1.5rem "Cormorant Garamond",serif;text-decoration:none;color:#F0D48C}
nav{display:flex;gap:1.1rem;align-items:center}
nav a{color:#EADFC8;text-decoration:none;font-size:.95rem}
nav a:hover{color:#F0D48C}
#menu{display:none;background:none;border:1px solid #8a6f43;color:#F0D48C;border-radius:.3rem;padding:.45rem .8rem;font:inherit;cursor:pointer}
@media (max-width:75rem){#menu{display:block}
nav{display:none;position:absolute;left:0;right:0;top:4.25rem;flex-direction:column;align-items:flex-start;background:var(--cocoa);padding:1rem 1.25rem 1.5rem;gap:.9rem;border-bottom:1px solid #5a4630}
nav.open{display:flex}}
/* hero */
.hero{background:radial-gradient(ellipse at 50% 0%,#5b4021 0%,var(--cocoa) 62%);color:#F3E9D6;text-align:center;padding:4rem 0 6rem}
.crest{--w:min(19rem,76vw);width:var(--w);height:var(--w);margin:0 auto 2.4rem;padding:calc(var(--w)*.08);display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 38%,#FFFBF2 0%,#F3E7CF 100%);border-radius:50%;border:1px solid #E3C37A;box-shadow:0 0 0 7px rgba(184,137,58,.22),0 0 0 8px rgba(227,195,122,.55),0 22px 60px rgba(0,0,0,.45)}
.crest img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero h1{font-size:clamp(3.4rem,13vw,8.5rem);letter-spacing:-.01em}
.hero .sub{font:600 clamp(1.5rem,5.2vw,2.6rem)/1.25 "Cormorant Garamond",serif;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;background:linear-gradient(100deg,#C99A45,#F6DE9A 45%,#C99A45);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:34rem;margin:0 auto 2.2rem;color:#D9CCB4}
.btns{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}
.hero .kind{font:500 clamp(.95rem,3.2vw,1.2rem) Jost,sans-serif;letter-spacing:.28em;text-transform:uppercase;margin:0 auto 1.6rem;background:linear-gradient(100deg,#C99A45,#F6DE9A 45%,#C99A45);-webkit-background-clip:text;background-clip:text;color:transparent}
.btn{display:inline-block;border:1px solid var(--gold);background:linear-gradient(100deg,#B8893A,#E3C37A 50%,#B8893A);color:#2B1D15;font:500 1rem Jost,sans-serif;padding:.85rem 1.6rem;border-radius:.2rem;text-decoration:none;cursor:pointer}
.btn:hover{filter:brightness(1.06)}
.btn.line{background:none;color:#F0D48C}
.btn.dark{background:none;color:var(--ink);border-color:var(--gold)}
/* sections */
section{padding:4.5rem 0}
section.alt{background:var(--sand)}
.head{margin-bottom:2.2rem;max-width:40rem}
.head h2{font-size:clamp(2.2rem,6vw,3.4rem)}
.head h2::after{content:"";display:block;width:3.5rem;height:2px;background:var(--gold);margin-top:.9rem}
.head p{color:var(--muted);margin:.9rem 0 0}
.grid{display:grid;gap:2rem 1.5rem;grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr))}
.about{display:grid;gap:2.5rem;grid-template-columns:1fr}
@media (min-width:52rem){.about{grid-template-columns:1.2fr 1fr;align-items:center}}
.about p{margin:0 0 1rem;max-width:38rem}
/* cards */
.card{background:var(--surface);border:1px solid var(--line);padding:.8rem .8rem 1.3rem;display:flex;flex-direction:column}
.arch{aspect-ratio:4/5;border-radius:999px 999px 3px 3px;overflow:hidden;background:var(--sand);position:relative}
.slides{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.slides::-webkit-scrollbar{display:none}.slides img{flex:0 0 100%;scroll-snap-align:center}.dots{position:absolute;bottom:.7rem;left:0;right:0;display:flex;justify-content:center;gap:.4rem;pointer-events:none}.dots i{width:7px;height:7px;border-radius:50%;background:#fff;opacity:.55}.dots i.on{background:#C9A66B;opacity:1}
.arch img,.tile img{width:100%;height:100%;object-fit:cover;display:block}
.card h3{font-size:1.9rem;margin:1rem .4rem .1rem}
.card .breed{margin:0 .4rem .7rem;color:var(--muted);font-size:.95rem}
dl{margin:0 .4rem 1rem;display:grid;grid-template-columns:auto 1fr;gap:.2rem 1rem;font-size:.97rem}
dt{color:var(--muted)}dd{margin:0}
.tag{position:absolute;top:1rem;left:50%;transform:translateX(-50%);padding:.2rem .9rem;font-size:.85rem;border-radius:2rem;background:var(--cocoa);color:#F0D48C;border:1px solid var(--gold)}
.tag.Reserved{background:#F0D48C;color:var(--cocoa)}
.tag.Sold{background:#8a7a68;color:#fff;border-color:#8a7a68}
.card .btn{margin:auto .4rem 0;text-align:center}
.price{font:600 1.4rem "Cormorant Garamond",serif;color:var(--gold)}
/* litters */
.litter{border-left:3px solid var(--gold);padding:.4rem 0 .4rem 1.4rem;margin-bottom:2rem;max-width:44rem}
.lphoto{position:relative;max-width:24rem;aspect-ratio:3/4;overflow:hidden;background:var(--sand);margin:.8rem 0}.lphoto img{width:100%;height:100%;object-fit:cover;display:block}
.litter h3{font-size:1.9rem}.litter p{margin:.4rem 0;color:var(--muted)}
.litter strong{color:var(--ink);font-weight:500}
/* gallery */
.gal{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}
.tile{aspect-ratio:4/5;overflow:hidden;background:var(--sand)}
/* forms */
form{display:grid;gap:1rem;max-width:40rem}
.two{display:grid;gap:1rem;grid-template-columns:1fr}
@media (min-width:36rem){.two{grid-template-columns:1fr 1fr}}
label{display:grid;gap:.3rem;font-size:.95rem;color:var(--muted)}
input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:.2rem;padding:.7rem .8rem;width:100%}
textarea{min-height:8rem;resize:vertical}
.note{font-size:.92rem;color:var(--muted);margin:0}
.contact{display:flex;flex-wrap:wrap;gap:.9rem}
.badges{list-style:none;margin:2.6rem auto 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;max-width:46rem}
.badges li{border:1px solid #8a6f43;color:#E3C37A;border-radius:2rem;padding:.3rem 1rem;font-size:.92rem}
.info{max-width:46rem;display:grid;gap:.8rem}
details{background:var(--surface);border:1px solid var(--line);padding:0 1.2rem}
summary{cursor:pointer;padding:1rem 0;font:600 1.45rem "Cormorant Garamond",serif;list-style-position:outside}
details p{margin:0 0 1.1rem;color:var(--muted)}
.post{border-left:3px solid var(--gold);padding:.4rem 0 .4rem 1.4rem;margin-bottom:2rem;max-width:44rem}
.post h3{font-size:1.9rem}.post time{color:var(--muted);font-size:.92rem}.post p{margin:.5rem 0 0}
footer{background:var(--cocoa);color:#CBBBA0;text-align:center;padding:2.5rem 0 3rem;font-size:.95rem}
footer b{font:600 1.6rem "Cormorant Garamond",serif;color:#F0D48C;display:block;margin-bottom:.3rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* owner editor */
.litter.has-photo{display:grid;gap:1.6rem;grid-template-columns:1fr;max-width:62rem;background:var(--surface);border:1px solid var(--line);padding:1.1rem;margin-bottom:2rem}
@media (min-width:52rem){.litter.has-photo{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;padding:1.6rem;gap:2.6rem}}
.litter.has-photo .lphoto{max-width:none;margin:0;aspect-ratio:3/4;box-shadow:0 0 0 1px var(--gold),0 0 0 9px var(--surface),0 0 0 10px var(--line);margin:10px}
.lkicker{font:500 .85rem Jost,sans-serif;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)!important;margin:0 0 .4rem!important}
.litter.has-photo h3{font-size:clamp(2.4rem,7vw,3.8rem)}
.parents{display:flex;flex-wrap:wrap;gap:1.2rem 1.8rem;margin:1.2rem 0 1.4rem}
.par{display:flex;align-items:center;gap:.8rem}
.pph{width:4.4rem;height:4.4rem;border-radius:50%;overflow:hidden;border:2px solid var(--gold);background:var(--sand);flex:none}
.pph img{width:100%;height:100%;object-fit:cover;display:block}
.par small{display:block;color:var(--muted);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;line-height:1.2}
.par b{font:600 1.6rem "Cormorant Garamond",serif;color:var(--ink);line-height:1.1}
.sub{font-size:2.2rem;margin:0 0 1.2rem;display:flex;align-items:baseline;gap:.8rem}.sub span{font:400 .85rem Jost,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
#queenGrid{margin-bottom:3.2rem}
.grp{margin-bottom:1rem;max-width:62rem}.grp summary{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap}.grp summary span{font:400 .82rem Jost,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.grp .grid{padding:.4rem 0 1.4rem}.grp #queenGrid{margin-bottom:0}
.grp summary{font-size:1.9rem}
.ih{font:500 .8rem Jost,sans-serif;letter-spacing:.22em;color:var(--gold);margin:1.3rem 0 .3rem}
/* add to home screen */
.app-steps[hidden]{display:none}
.app-steps{max-width:34rem;margin:1.6rem auto 0;text-align:left;background:none;border:1px solid #5a4630;padding:0 1.1rem;color:#CBBBA0}
.app-steps summary{font-size:1.2rem;color:#F0D48C;padding:.8rem 0}
.app-steps ol{margin:0 0 .6rem;padding-left:1.2rem;display:grid;gap:.5rem}
.app-steps p{margin:0 0 1rem;color:#CBBBA0}
/* ===== multi-page views (GB Cattery style layout) ===== */
.view[hidden]{display:none}
nav a.on,nav .more>button.on{color:#F0D48C;box-shadow:0 1px 0 #C99A45}
nav a{padding-block:.2rem}
.more{position:relative}
.more>button{background:none;border:0;color:#EADFC8;font:inherit;font-size:.95rem;cursor:pointer;padding:.2rem 0}
.more>button:hover{color:#F0D48C}
.more>div{display:none;position:absolute;right:0;top:2.2rem;z-index:20;background:var(--cocoa);border:1px solid #5a4630;padding:1rem 1.2rem;min-width:13.5rem;flex-direction:column;gap:.8rem;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.more.open>div{display:flex}
@media (max-width:75rem){.more{display:contents}.more>button{display:none}.more>div{display:contents}}
.back{display:inline-block;margin-bottom:1.6rem;font:500 .85rem Jost,sans-serif;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--gold);cursor:pointer}
.back:hover{text-decoration:underline}
.empty{max-width:36rem;border:1px dashed var(--line);padding:1.6rem;color:var(--muted);background:var(--surface)}
.empty p{margin:0 0 1rem}
.more-row{margin-top:2rem}
/* kitten blocks: gallery on the left, details on the right */
.kits{display:grid;gap:1.8rem}
.kit{display:grid;gap:1.4rem;grid-template-columns:minmax(0,1fr);background:var(--surface);border:1px solid var(--line);padding:1rem}
@media (min-width:52rem){.kit{grid-template-columns:minmax(0,25rem) minmax(0,1fr);gap:2.4rem;padding:1.4rem;align-items:center}}
.gal1{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--sand);max-width:100%}
.gal1 .slides{height:100%}
.gal1 .slides img{height:100%;object-fit:cover;display:block}
.gal1 .tag{z-index:2}
.arrow{position:absolute;top:50%;transform:translateY(-50%);width:2.7rem;height:2.7rem;border-radius:50%;border:1px solid var(--gold);background:rgba(43,29,21,.74);color:#F0D48C;font:400 1.6rem/1 Jost,sans-serif;cursor:pointer;display:grid;place-items:center;padding:0 0 .2rem;z-index:2}
.arrow.l{left:.6rem}.arrow.r{right:.6rem}
.gal1 .dots,.arch .dots{z-index:2}
.ps{margin:.6rem 0 0;font-size:.88rem;color:var(--muted)}
.kit h3{font-size:clamp(2.4rem,6.5vw,3.4rem)}
.kit .lead{margin:.3rem 0 0;color:var(--muted)}
.kit dl{margin:1.1rem 0 1.5rem;font-size:1.02rem;gap:.4rem 1.6rem}
.kit dd.price{font-size:1.7rem;line-height:1.2}
.kbtns{display:flex;flex-wrap:wrap;gap:.8rem}
.facts{display:flex;flex-wrap:wrap;gap:.4rem 2rem;margin:0 0 2rem;padding:0;list-style:none}
.facts li{color:var(--muted)}
.facts b{color:var(--ink);font-weight:500}
.litnote{max-width:44rem;margin:0 0 2.2rem;color:var(--muted)}
.sech{font-size:clamp(1.9rem,5vw,2.6rem);margin:2.6rem 0 1.2rem}
.sech::after{content:"";display:block;width:3rem;height:2px;background:var(--gold);margin-top:.7rem}
.card dl{margin-top:.2rem}
.card .breed.col{margin-top:-.4rem}
.litter .parents .par{cursor:default}
/* photo viewer */
.tile img,.lphoto img,.gal1 img{cursor:zoom-in}
.lb{position:fixed;inset:0;z-index:90;background:rgba(20,12,8,.93);display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top,0px)) 1rem max(1rem,env(safe-area-inset-bottom,0px))}
.lb[hidden]{display:none}
.lb img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.lbx{position:absolute;top:max(.8rem,env(safe-area-inset-top,0px));right:.8rem;width:2.8rem;height:2.8rem;border-radius:50%;border:1px solid var(--gold);background:var(--cocoa);color:#F0D48C;font:400 1.3rem/1 Jost,sans-serif;cursor:pointer}
/* contact */
.cbox{display:grid;gap:.5rem;max-width:40rem;margin:0 0 1.6rem}
.cbox p{margin:0}
.cbox .big{font:600 1.6rem "Cormorant Garamond",serif;overflow-wrap:anywhere;user-select:all}
.cbox .lab{font:500 .8rem Jost,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.copy{justify-self:start;margin-top:.2rem}
/* editor: extra photos */

/* status and price lines */
:root{--price:#C73B2F}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--price:#FF7B6B}}
:root[data-theme="dark"]{--price:#FF7B6B}
.sp{margin:1.1rem 0 1.5rem}
.card .sp{margin:.4rem .4rem 1.1rem}
.sp p{margin:0;font:400 1.3rem/1.5 Jost,system-ui,sans-serif}
.sp .st{color:var(--ink)}
.sp .pr{color:var(--price)}
.kit .sp{font-size:1.1rem}
.kl{margin:1rem 0 0}
.kl p{margin:0;font:italic 500 1.5rem/1.55 "Cormorant Garamond",Georgia,serif}
.card .kl{margin:.4rem .4rem 0}
.card .kl p{font-size:1.25rem}

/* static-site additions */
nav a[aria-current=page],nav .more>button.on{color:#F0D48C;box-shadow:0 1px 0 #C99A45}
.crumbs{font-size:.9rem;color:var(--muted);margin:0 0 1.4rem}.crumbs a{color:var(--gold);text-decoration:none}.crumbs a:hover{text-decoration:underline}
.kit h3 a,.card h3 a{text-decoration:none}.kit h3 a:hover,.card h3 a:hover{text-decoration:underline}
.kit h1{font-size:clamp(2.2rem,6vw,3.2rem)}
.hero .loc{font:500 .95rem Jost,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#D9CCB4;margin:-1rem auto 1.6rem}
.seo-note{max-width:44rem;color:var(--muted);margin:2.4rem 0 0}
.card .arch a{display:block;height:100%}
