/* Theme additions; original approved visual system remains in original.css. */
:root{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.bs-skip-link{position:absolute;left:10px;top:-100px;z-index:9999;background:#fff;padding:12px 20px;color:#243653;border-radius:10px}.bs-skip-link:focus{top:10px}
:where(a,button,input,textarea,select):focus-visible{outline:2px solid #315c8b;outline-offset:3px}
:where(.site-container,.bs-internal){max-width:1372px}
.nav .bs-menu{list-style:none;display:flex;align-items:center;gap:24px;margin:0;padding:0}.nav .bs-menu a{text-decoration:none}.nav .sub-menu{list-style:none;padding:10px;background:var(--cream);box-shadow:0 10px 25px #3331}
@media(max-width:900px){.nav.is-open{display:flex}.nav .bs-menu{align-items:stretch;flex-direction:column;gap:17px}.nav .sub-menu{box-shadow:none}.header .menu-toggle{display:grid}}
.header .brand-image,.footer .brand-image{object-fit:contain}
.puppy-grid > template{display:none!important}.puppy-card.is-active{outline:2px solid #263653;outline-offset:2px}
.bs-puppy-detail-row{grid-column:1/-1;min-width:0;margin-top:0;animation:bs-details-in .3s ease-out}
@keyframes bs-details-in{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}
.bs-puppy-details{background:#ebe0d5;color:#263653;border-radius:26px;padding:30px 35px 37px;box-sizing:border-box}
.bs-puppy-details__top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;font-size:15px}
.bs-detail-close{border:0;cursor:pointer;border-radius:30px;background:#fff9eb;padding:12px 22px;color:#263653}
.bs-puppy-details__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.93fr);gap:44px;align-items:start}
.bs-puppy-details__main{position:relative;border-radius:20px;overflow:hidden;background:#fff5e9;aspect-ratio:1.55;min-height:190px}
.bs-puppy-details__main img{width:100%;height:100%;object-fit:cover;display:block}
.bs-gallery-prev,.bs-gallery-next{position:absolute;top:50%;transform:translateY(-50%);border:0;border-radius:50%;background:#fff9eb;width:44px;height:44px;font-size:31px;cursor:pointer;color:#263653}
.bs-gallery-prev{left:16px}.bs-gallery-next{right:16px}.bs-puppy-details__thumbs{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.bs-gallery-thumb{border:2px solid transparent;border-radius:13px;padding:2px;overflow:hidden;background:#fff8ed;cursor:pointer}.bs-gallery-thumb.is-current{border-color:#263653}.bs-gallery-thumb img{display:block;width:75px;height:70px;object-fit:cover;border-radius:10px}
.bs-details-eyebrow{letter-spacing:2px;font-size:12px;color:#667692}.bs-puppy-details__copy h3{font-weight:800;font-size:clamp(35px,4.8vw,69px);line-height:1.1;margin:22px 0 6px}.bs-details-subtitle{font-size:17px;color:#687993;margin-bottom:25px}
.bs-details-description{font-size:17px;line-height:1.8;margin:25px 0}.bs-details-perks{list-style:none;padding:0;margin:27px 0;display:grid;gap:14px;font-size:15px}.bs-details-perks li:before{content:'♡';color:#263653;margin-right:12px;font-size:18px}
.bs-details-actions{display:flex;align-items:center;gap:24px;margin-bottom:21px}.bs-details-actions .button{white-space:nowrap;min-height:50px}.bs-details-actions>span{font-size:14px;line-height:1.7}.bs-details-social{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px}.bs-details-social .social-links{display:flex;gap:8px}.bs-details-price{font-weight:700}
.moment-cover.bs-photo-cover{display:block;position:relative}.bs-photo-cover .moment-cover-bottom{pointer-events:none}.bs-video-dialog{width:min(860px,95vw);padding:0;border:0;border-radius:14px;background:#0b0b0b;overflow:visible}.bs-video-dialog::backdrop{background:#000a}.bs-video-dialog video{display:block;width:100%;max-height:80vh}.bs-video-close{position:absolute;right:0;top:-45px;border:0;border-radius:100%;background:#fff;color:#222;font-size:28px;width:38px;height:38px;cursor:pointer}
.family-grid.bs-review-slider{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-inline:contain}.bs-review-slider>.family-card{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start}.bs-review-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.bs-review-controls button{background:#fff9eb;border:1px solid #dbcbe8;width:44px;height:42px;border-radius:30px;cursor:pointer;color:#263653}
.bs-review-text{overflow-wrap:anywhere;line-height:1.65;font-size:14px;flex:1}.bs-review-text p{margin:0 0 12px}.bs-stars{color:#e6a043;letter-spacing:3px}.bs-quote{font-size:28px;opacity:.5}.bs-review-images{display:flex;gap:7px;margin-top:15px}.bs-review-images img{width:76px;height:76px;object-fit:cover;border-radius:12px}.bs-review-byline{display:flex;align-items:center;gap:10px;margin-top:20px;border-top:1px solid #e7dede;padding-top:11px}.bs-review-byline strong,.bs-review-byline span{display:block}.bs-review-byline span{font-size:12px;color:#787e88}.bs-review-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover}.bs-review-heart{border:1px solid #d7c9e3;border-radius:50%;padding:8px;font-size:18px!important;color:#8a77a4!important}
.bs-internal{padding:32px 26px 80px;max-width:1320px;margin:0 auto;min-height:44vh}.bs-breadcrumbs{color:#767f7b;font-size:14px;margin:12px 0 35px}.bs-breadcrumbs a{color:#596574}.bs-page{max-width:1000px;margin:0 auto}.bs-page__title{font-size:clamp(30px,4.5vw,56px);font-weight:700;margin-bottom:30px;color:var(--green)}.bs-page__content{font-size:17px;line-height:1.75}.bs-page__content p{margin-bottom:1em}.bs-page__content h2,.bs-page__content h3{margin:1.5em 0 .6em;font-weight:700;color:var(--green)}.bs-page__content h2{font-size:clamp(24px,3vw,35px)}.bs-page__content h3{font-size:clamp(19px,2vw,26px)}.bs-page__content ul,.bs-page__content ol{padding-left:25px}.bs-page__content a{text-decoration:underline;text-underline-offset:3px}.bs-page__content table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.bs-page__content td,.bs-page__content th{border:1px solid #dedbd5;padding:10px 12px}.bs-page__content img{max-width:100%;height:auto}.bs-error{padding:110px 25px 130px;min-height:55vh}.bs-error h1{font-size:clamp(38px,6vw,75px);margin:10px 0 18px}.bs-error p{margin-bottom:25px}.bs-unconfigured{padding:60px 20px}
@media(max-width:860px){.bs-puppy-details__body{gap:22px}.bs-puppy-details{padding:22px}.bs-details-actions{flex-wrap:wrap}.bs-review-slider>.family-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:640px){.bs-puppy-details__body{grid-template-columns:1fr}.bs-puppy-details{padding:18px;border-radius:20px}.bs-puppy-details__top{font-size:12px}.bs-puppy-details__copy h3{margin-top:14px}.bs-review-slider>.family-card{flex-basis:88%}.bs-internal{padding:28px 18px 60px}.bs-gallery-thumb img{width:59px;height:59px}.bs-details-actions .button{white-space:normal}}

.bs-form{max-width:760px;display:grid;gap:16px}.bs-form__row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bs-form label{display:grid;gap:7px}.bs-form input:not([type=checkbox]),.bs-form textarea{width:100%;font-size:16px;border:1px solid #c9d0cd;border-radius:10px;background:#fff;padding:12px}.bs-form__check{display:flex!important;align-items:flex-start;gap:8px!important}.bs-form__check input{margin-top:5px}.bs-form a{text-decoration:underline}.bs-form__honeypot{position:absolute;left:-99999px;height:1px;overflow:hidden}.bs-form__errors{background:#fce9e9;color:#8a2323;padding:12px 18px;border-radius:10px}.bs-form__privacy{font-size:13px;opacity:.8}@media(max-width:550px){.bs-form__row{grid-template-columns:1fr}}
