:root{--brown:#5c3a29;--brown-dark:#3f271c;--rose:#bb6c64;--cream:#fbf5ec;--paper:#fffdf9;--sage:#65735c;--ink:#3f332d;--muted:#756a64;--line:#e3d7ca;--shadow:0 18px 50px rgba(78,53,38,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;font-size:16px;line-height:1.65}img{display:block;max-width:100%}a{color:inherit}.skip-link{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.7rem 1rem;z-index:99}.skip-link:focus{left:1rem}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,5vw,5rem);position:sticky;top:0;z-index:30;background:rgba(255,253,249,.95);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand img{width:62px;height:62px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:"Playfair Display",serif;font-size:1.32rem;color:var(--brown)}.brand small{text-transform:uppercase;letter-spacing:.2em;font-size:.66rem;color:var(--sage);font-weight:700;margin-top:.32rem}nav{display:flex;align-items:center;gap:1.65rem}nav a{text-decoration:none;font-weight:600;font-size:.94rem}.nav-cta{background:var(--brown);color:#fff;padding:.68rem 1.1rem;border-radius:999px}.menu-button{display:none}
.new-hero{background:var(--cream);padding:clamp(.7rem,2vw,1.4rem)}.new-hero img{width:100%;height:auto;max-height:720px;object-fit:cover;border-radius:clamp(1rem,2vw,1.8rem);box-shadow:var(--shadow)}
.welcome{text-align:center;padding:clamp(4rem,8vw,7.5rem) 1.2rem;max-width:1000px;margin:auto}.eyebrow{margin:0 0 .8rem;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700;color:var(--rose)}h1,h2,h3{font-family:"Playfair Display",Georgia,serif;color:var(--brown);line-height:1.08;margin-top:0}h1{font-size:clamp(3rem,6vw,6rem);letter-spacing:-.045em;margin:0 auto 1.3rem;max-width:12ch}.welcome>p:not(.eyebrow){font-size:clamp(1.05rem,1.6vw,1.25rem);color:var(--muted);max-width:760px;margin:0 auto 2rem}.welcome-actions{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;padding:.82rem 1.35rem;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.button-primary{background:var(--brown);color:#fff;box-shadow:0 12px 26px rgba(92,58,41,.2)}.button-primary:hover{background:var(--brown-dark)}.button-secondary{border-color:var(--brown);color:var(--brown);background:#fff}
.front-photo-row{display:grid;grid-template-columns:repeat(3,minmax(0,360px));justify-content:center;align-items:start;gap:1.5rem;padding:0 clamp(1.2rem,7vw,8rem) clamp(5rem,8vw,7rem)}.front-photo-row figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow)}.front-photo-row img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.front-photo-row figcaption{text-align:center;padding:.9rem 1rem;color:var(--brown);font-family:"Playfair Display",serif;font-size:1.08rem;font-weight:700}.front-parent-photo{transform:translateY(-1.25rem);border-color:#cdb7a6!important}.front-parent-photo figcaption{font-size:1.25rem}
.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);background:var(--brown);color:#efe4db;padding:1.35rem clamp(1rem,6vw,7rem);gap:1.4rem}.quick-facts span{text-align:center;font-size:.79rem;border-right:1px solid rgba(255,255,255,.18)}.quick-facts span:last-child{border:0}.quick-facts strong{display:block;color:#fff;font-size:.98rem;margin-bottom:.12rem}
.puppy-section,.family-gallery,.care,.parents-section{padding:clamp(5rem,9vw,8.5rem) clamp(1.2rem,7vw,8rem)}.girls-section{background:#f8eee9}.boys-section{background:var(--paper)}.section-heading{max-width:850px;margin:0 auto 3rem;text-align:center}.section-heading h2,.parents h2,.parents-section h2,.care h2,.inquiry h2{font-size:clamp(2.7rem,5vw,5rem);letter-spacing:-.038em;margin-bottom:1rem}.section-heading>p:last-child{color:var(--muted);font-size:1.06rem}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,360px));justify-content:center;gap:1.5rem;align-items:start}.profile-card{background:#fff;border:1px solid var(--line);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow)}.profile-card>img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center}.profile-card .vinny-position{object-position:center}.profile-card>div{padding:1.35rem 1.45rem 1.55rem}.profile-card span,.parent-profile-card span,.parent-feature span{text-transform:uppercase;letter-spacing:.15em;color:var(--rose);font-size:.68rem;font-weight:700}.profile-card h3,.parent-profile-card h3,.parent-feature h3{font-size:2.2rem;margin:.22rem 0 .65rem}.profile-card p,.parent-profile-card p,.parent-feature p{color:var(--muted);margin:0 0 1rem}.profile-card a{color:var(--brown);font-weight:700;text-decoration:none}.profile-card a:hover{text-decoration:underline}
.parents-spotlight{padding:clamp(5rem,9vw,8.5rem) clamp(1.2rem,8vw,9rem);display:grid;grid-template-columns:minmax(320px,560px) minmax(300px,650px);gap:clamp(2.5rem,7vw,7rem);justify-content:center;align-items:center;background:#fff}.parents-photo{background:var(--cream);padding:.65rem;border:1px solid var(--line);border-radius:1.8rem;box-shadow:var(--shadow)}.parents-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:1.3rem}.parents-copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.parent-portraits{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}.parent-portraits figure{margin:0;background:var(--cream);border:1px solid var(--line);border-radius:1rem;overflow:hidden}.parent-portraits img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.parent-portraits figcaption{padding:.85rem 1rem;color:var(--muted);font-size:.82rem}.parent-portraits strong{display:block;color:var(--brown);font-family:"Playfair Display",serif;font-size:1.25rem;margin-bottom:.1rem}
.parents-section{background:#fff}.parents-content{display:grid;grid-template-columns:minmax(0,480px) minmax(0,420px);justify-content:center;align-items:center;gap:clamp(1.5rem,5vw,5rem);max-width:1080px;margin:auto}.parents-together{margin:0;background:var(--cream);border:1px solid var(--line);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow)}.parents-together img{display:block;width:100%;height:auto}.parents-together figcaption{padding:.8rem 1.1rem;text-align:center;color:var(--brown);font-family:"Playfair Display",serif;font-weight:700}.parent-profile-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.parent-profile-card{background:var(--cream);border:1px solid var(--line);border-radius:1.6rem;overflow:hidden;box-shadow:var(--shadow)}.parent-profile-card>div{padding:1.35rem 1.45rem 1.55rem}.parent-profile-card p{margin-bottom:0}.parent-note{max-width:760px;margin:2rem auto 0;text-align:center;color:var(--muted)}
.group-spotlight{padding:clamp(5rem,9vw,8.5rem) clamp(1.2rem,8vw,9rem);display:grid;grid-template-columns:minmax(280px,.75fr) minmax(360px,1.25fr);gap:clamp(2.5rem,7vw,7rem);align-items:center;background:var(--cream)}.group-spotlight>div>p:last-child{color:var(--muted);font-size:1.05rem}.group-spotlight figure{margin:0;background:#fff;padding:.65rem;border-radius:1.8rem;box-shadow:var(--shadow)}.group-spotlight img{width:100%;height:auto;border-radius:1.3rem}.group-spotlight figcaption{text-align:center;padding:.8rem .4rem .25rem;color:var(--brown);font-family:"Playfair Display",serif;font-weight:700}
.family-gallery{background:var(--cream)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,360px));justify-content:center;gap:1.3rem;max-width:1150px;margin:auto}.gallery-grid figure{margin:0;background:#fff;padding:.55rem;border-radius:1.3rem;box-shadow:var(--shadow)}.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:.95rem}.gallery-grid figcaption{text-align:center;padding:.75rem .4rem .35rem;color:var(--brown);font-family:"Playfair Display",serif;font-weight:700}
.gallery-action{display:flex;justify-content:center;margin-top:2rem}
.gallery-page{background:var(--cream)}.gallery-hero{padding:clamp(4rem,8vw,7rem) 1.2rem 2.5rem;text-align:center;max-width:920px;margin:auto}.gallery-hero h1{font-size:clamp(3rem,7vw,6.5rem);max-width:none}.gallery-hero>p:last-child{color:var(--muted);font-size:clamp(1rem,1.6vw,1.2rem);max-width:700px;margin:0 auto}.full-gallery{padding:1rem clamp(1.2rem,7vw,8rem) clamp(5rem,9vw,8rem)}.photo-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;max-width:1240px;margin:auto}.photo-wall figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:1.35rem;overflow:hidden;box-shadow:var(--shadow)}.photo-wall img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}.photo-wall figcaption{padding:1rem 1.1rem 1.15rem;color:var(--brown);font-family:"Playfair Display",serif;font-size:1.08rem;font-weight:700}.gallery-invite{text-align:center;background:#fff;padding:clamp(3rem,6vw,5rem) 1.2rem}.gallery-invite h2{font-size:clamp(2.4rem,5vw,4.5rem);margin-bottom:1rem}.gallery-invite p{color:var(--muted);max-width:650px;margin:0 auto 1.5rem}
.parents{padding:clamp(5rem,9vw,8.5rem) clamp(1.2rem,7vw,8rem);background:#fff;display:grid;grid-template-columns:minmax(260px,.8fr) repeat(2,minmax(0,380px));gap:1.5rem;justify-content:center;align-items:center}.parents-intro{padding-right:clamp(0rem,2vw,2rem)}.parents-intro>p:last-child{color:var(--muted)}.parent-feature{background:var(--cream);border:1px solid var(--line);border-radius:1.5rem;overflow:hidden}.parent-feature>img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center}.parent-feature>div{padding:1.25rem 1.35rem}.parent-feature h3{margin-bottom:.45rem}
.care{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,7vw,7rem);background:linear-gradient(135deg,#f8efe5,#eee3d6);align-items:start}.care>div:first-child>p:last-child{color:var(--muted);font-size:1.05rem}.care-points{border-top:1px solid var(--line)}.care-points article{padding:1.25rem 0;border-bottom:1px solid var(--line)}.care-points strong{color:var(--brown);font-size:1.04rem}.care-points p{margin:.35rem 0 0;color:var(--muted)}
.inquiry{padding:clamp(5rem,9vw,8rem) clamp(1.2rem,7vw,8rem);display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,8rem);background:#e9efea}.inquiry-copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.direct-contact{display:grid;gap:.8rem;margin-top:2rem}.direct-contact a{display:flex;flex-direction:column;text-decoration:none}.direct-contact span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--rose);font-weight:700}.direct-contact strong{color:var(--brown)}.pickup-note{margin-top:2rem!important;font-size:.88rem!important;font-weight:600;color:var(--sage)!important}form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#fff;padding:clamp(1.3rem,3vw,2.5rem);border-radius:1.8rem;box-shadow:var(--shadow)}label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--brown)}input,select,textarea{display:block;width:100%;margin-top:.42rem;border:1px solid #d6ccc3;border-radius:.75rem;padding:.88rem;background:#fff;color:var(--ink);font:inherit;font-size:1rem;letter-spacing:normal;text-transform:none}textarea{resize:vertical}.full{grid-column:1/-1}.form-note{margin:0;text-align:center;color:var(--muted);font-size:.78rem}
footer{padding:3rem clamp(1.2rem,7vw,8rem) 2rem;background:var(--brown-dark);color:#f4ebe5;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.footer-brand{display:flex;align-items:center;gap:1rem}.footer-brand img{width:92px;height:92px;object-fit:contain}.footer-brand p{display:flex;flex-direction:column;margin:0}.footer-brand strong{font-family:"Playfair Display",serif;font-size:1.25rem}.footer-brand span{font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;color:#d3c0b4}.footer-contact{display:grid;text-align:right}.footer-contact a{text-decoration:none}.legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:1.3rem;color:#cdbdb4;font-size:.78rem}.mobile-inquire{display:none}
@media(max-width:1000px){.quick-facts{grid-template-columns:1fr 1fr}.quick-facts span:nth-child(2){border:0}.parents,.care,.inquiry{grid-template-columns:1fr}.parents-intro{max-width:760px}.parent-feature{max-width:560px}.front-photo-row,.gallery-grid{grid-template-columns:repeat(2,minmax(0,360px))}.photo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.front-parent-photo{transform:none;grid-column:1/-1;grid-row:1;justify-self:center;width:min(100%,360px)}.profile-grid{grid-template-columns:repeat(2,minmax(0,360px))}}
@media(max-width:700px){html{scroll-padding-top:72px}body{padding-bottom:64px}.site-header{height:72px}.brand img{width:52px;height:52px}.brand span{display:none}.menu-button{display:block;border:1px solid var(--brown);background:transparent;color:var(--brown);padding:.5rem .78rem;border-radius:999px;font-weight:700}nav{display:none;position:absolute;top:66px;left:.8rem;right:.8rem;background:#fff;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);padding:.6rem;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:.75rem}.nav-cta{text-align:center}.new-hero{padding:.5rem}.new-hero img{border-radius:1rem;min-height:245px;object-fit:cover;object-position:28% center}.welcome{padding:3.7rem 1.1rem}.welcome h1{font-size:3.2rem}.front-photo-row{grid-template-columns:minmax(0,380px);padding:0 1.1rem 4.3rem}.front-parent-photo{grid-column:auto;grid-row:1;width:100%}.quick-facts{gap:.9rem;padding:1.2rem .8rem}.quick-facts span{font-size:.72rem}.puppy-section,.family-gallery,.care,.parents,.parents-section,.inquiry{padding:4.3rem 1.1rem}.profile-grid,.parent-profile-grid,.gallery-grid,.photo-wall{grid-template-columns:minmax(0,380px)}.photo-wall .wide{grid-column:auto}.photo-wall .wide img{aspect-ratio:1/1}.parents{display:grid}.parent-feature{max-width:none}.inquiry form{grid-template-columns:1fr}.full{grid-column:auto}footer{grid-template-columns:1fr;padding:2.5rem 1.1rem}.footer-contact{text-align:left}.legal{grid-column:auto}.mobile-inquire{display:flex;position:fixed;z-index:40;bottom:.6rem;left:.8rem;right:.8rem;min-height:50px;align-items:center;justify-content:center;background:var(--brown);color:#fff;text-decoration:none;font-weight:700;border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.2)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:1000px){.parents-content{grid-template-columns:minmax(0,560px);gap:1.5rem}}
.akc-listing{margin:1.5rem 0 0}.akc-listing a{color:var(--brown);font-weight:700;text-decoration:underline;text-underline-offset:.2em}

.welcome>p.home-tagline{color:var(--brown);font-weight:600;margin-bottom:1rem}
.profile-card .puppy-status{display:inline-block;border:1px solid #c7d1c0;border-radius:999px;background:#edf2e9;color:#43553a;letter-spacing:.07em;font-size:.65rem;line-height:1.5;padding:.22rem .65rem;margin:0 0 .8rem}
.profile-card .puppy-status[data-status="reserved"]{background:var(--cream);border-color:#d9c7b3;color:var(--brown)}
.profile-card .puppy-status[data-status="home"]{background:#fff0ed;border:2px solid #b53535;color:#9d2525;font-size:1.25rem;font-weight:700;letter-spacing:.06em;padding:.4rem .85rem;line-height:1.4}
.faq{padding:clamp(4rem,7vw,6rem) clamp(1.2rem,7vw,8rem);background:var(--paper)}
.faq .section-heading h2{font-size:clamp(2.3rem,4vw,3.8rem)}
.faq-list{max-width:850px;margin:auto;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:1.1rem 0}
.faq-list summary{cursor:pointer;color:var(--brown);font-weight:700}
.faq-list p{color:var(--muted);margin:.65rem 0 0}
.form-trap{display:none!important}
.button:disabled{opacity:.65;cursor:wait}
#form-status[data-state="success"]{color:#43553a;font-weight:600}
#form-status[data-state="error"]{color:#8b302b;font-weight:600}
:focus-visible{outline:3px solid var(--rose);outline-offset:4px}

/* Preserve the complete uploaded puppy photo cards, including their names. */
img[src$="-Website.png"],img[src$="-Website.jpg"]{height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
.puppy-section-photo{display:block;width:100%;max-width:640px;margin:0 auto 3rem;border-radius:1.6rem}

/* Local discovery and puppy inquiry pages. */
.welcome h1{max-width:15ch}.availability-note{font-size:.9rem!important;color:var(--sage)!important;margin:1.4rem auto 0!important;max-width:650px!important}
.profile-more{display:block;margin-top:.75rem;font-size:.82rem;text-decoration:underline!important;text-underline-offset:.2em}
.local-families,.puppy-next{padding:clamp(4rem,7vw,6rem) clamp(1.2rem,7vw,8rem);background:var(--cream)}
.local-families .section-heading h2,.puppy-next h2{font-size:clamp(2.4rem,4.5vw,4.4rem)}
.local-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1180px;gap:1.5rem;margin:auto}
.local-grid article{background:var(--paper);padding:1.8rem;border:1px solid var(--line);border-radius:1.3rem}
.local-grid h3{font-size:1.6rem;line-height:1.2;margin-bottom:.9rem}.local-grid p{color:var(--muted)}.local-grid a{font-weight:700;color:var(--brown);text-underline-offset:.2em}
.puppies-intro{max-width:1000px;text-align:center;margin:auto;padding:clamp(3.5rem,7vw,6rem) 1.2rem 3rem}.puppies-intro h1{font-size:clamp(3rem,5.8vw,5.4rem);max-width:15ch}.puppies-intro>p:not(.eyebrow){max-width:750px;margin:0 auto 1.8rem;color:var(--muted);font-size:1.1rem}
.trust-chips{display:flex;justify-content:center;gap:.65rem;flex-wrap:wrap;margin:1.5rem 0}.trust-chips span{display:inline-block;background:#edf2e9;border:1px solid #c7d1c0;border-radius:999px;font-size:.8rem;font-weight:600;padding:.4rem .85rem;color:#43553a}
.available-section{padding:2rem clamp(1.2rem,7vw,8rem) 5rem;background:var(--paper)}.available-section .profile-grid{row-gap:2rem}.available-section h2{font-size:clamp(2.4rem,4.5vw,4rem)}
.privacy-page{max-width:820px;margin:auto;padding:4rem 1.2rem 6rem}.privacy-page h1{font-size:clamp(2.7rem,6vw,4.5rem);max-width:none}.privacy-page h2{font-size:1.8rem;margin-top:2.2rem}
.mobile-contact{display:none}.text-contact strong{font-size:.96rem}.photo-wall figcaption a{text-decoration:none}.photo-wall figcaption a:hover{text-decoration:underline}
img[src$="-Website.webp"]{height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
@media(max-width:1000px){nav{gap:1rem}nav a{font-size:.86rem}.local-grid{grid-template-columns:1fr}.local-grid article{padding:1.5rem}.puppies-intro{padding-top:3.5rem}}
@media(max-width:700px){.mobile-contact{display:grid;grid-template-columns:1fr 1.25fr;gap:.45rem;position:fixed;bottom:0;left:0;right:0;z-index:40;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line)}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;text-decoration:none;font-size:.9rem;font-weight:700;border:1px solid var(--brown);color:var(--brown)}.mobile-contact a:last-child{background:var(--brown);color:#fff}.local-families,.puppy-next{padding:3.5rem 1.1rem}.welcome h1{font-size:3.1rem}.trust-chips{gap:.5rem}.trust-chips span{font-size:.73rem}.direct-contact strong{overflow-wrap:anywhere}body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}}

/* Inquiry receipts and phone-sized controls retain the existing Appleloo palette. */
#form-status[data-state="uncertain"]{color:#6d5528;background:#fff8e8;border:1px solid #dfcc9f;border-radius:.8rem;padding:1rem;font-weight:500}
#form-status[data-state="success"]{background:#edf2e9;border:1px solid #c7d1c0;border-radius:.8rem;padding:1rem}
#form-status[data-state="sending"]{color:var(--brown)}
.button:disabled{cursor:default}.button[disabled]{box-shadow:none}
.price-note{color:var(--brown)!important;font-size:.95rem!important;line-height:1.5!important;margin:1rem auto 1.5rem!important}
.price-note strong{display:block;font-size:1rem}.price-note span{display:block;font-size:.85rem;color:var(--muted);margin-top:.15rem}.inquiry-price{margin:1.5rem 0!important}
.contact-help{text-align:left;margin-top:-.4rem;margin-bottom:0}.profile-card{scroll-margin-top:100px}
@media(max-width:700px){.menu-button{min-width:64px;min-height:44px}.puppies-intro .button,.welcome-actions .button{min-height:48px}.site-header{padding-left:1rem;padding-right:1rem}.profile-card{scroll-margin-top:88px}form{min-width:0}input,select,textarea{min-width:0;max-width:100%;font-size:16px}.button.full{width:100%;min-width:0}.inquiry-price{margin:1.2rem 0!important}.mobile-contact a{min-height:48px}}
