:root{--brand-primary: #c20a18;--brand-primary-dark: #8d0611;--brand-cream: #ffffff;--brand-ink: #333333;--brand-muted: #666666;--font-display: "Playfair Display", Georgia, "Times New Roman", serif;--font-body: "Open Sans", Arial, Helvetica, sans-serif;--maxw: 1080px;--row: 80%;--gap: 1.5rem;--rule: #e8e8e8}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:1.05rem;color:var(--brand-muted);background:#fff;line-height:1.7}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;color:var(--brand-ink);line-height:1.3}a{color:var(--brand-primary-dark)}a:hover{color:var(--brand-primary)}img{max-width:100%;height:auto;display:block}.site{display:flex;flex-direction:column;min-height:100vh}.site-header{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.75rem 1rem 0;border-bottom:1px solid var(--rule)}.brand{display:block;text-decoration:none}.brand-logo{width:auto;height:clamp(96px,14vw,150px);object-fit:contain}.nav{display:block}.nav-list,.nav-panel-list,.nav-mobile-list,.nav-mobile-sub{list-style:none;margin:0;padding:0}.nav-list{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem 1.6rem;padding:.35rem 0 1.1rem}.nav-link{font-family:var(--font-display);font-size:clamp(.85rem,1.5vw,1.05rem);font-weight:500;letter-spacing:2px;text-transform:uppercase;color:#0009;text-decoration:none;white-space:nowrap}.nav-link:hover,.nav-link.active{color:var(--brand-primary)}.nav-row{display:flex;align-items:center}.nav-item{position:relative}.nav-trigger{display:inline-flex;align-items:center;gap:.35rem;background:none;border:0;padding:0;cursor:pointer}.nav-caret-btn{background:none;border:0;padding:.25rem;margin-left:.1rem;cursor:pointer;color:#0009;line-height:0}.nav-caret:before{content:"";display:inline-block;width:.42em;height:.42em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-20%)}.nav-panel{display:none;position:absolute;z-index:60;top:100%;left:0;min-width:12rem;padding-top:.5rem}.nav-item.is-open>.nav-panel{display:block}.nav-panel-list{background:#fff;border:1px solid var(--rule);border-radius:.5rem;box-shadow:0 8px 24px #0000001f;padding:.4rem 0}.nav-panel .nav-link{display:block;flex:1;padding:.45rem 1rem;white-space:nowrap}.nav-panel .nav-trigger{display:flex;width:100%;justify-content:space-between;padding:.45rem 1rem}.nav-panel .nav-caret-btn{padding:.45rem .8rem}.nav-panel .nav-caret:before{transform:rotate(-45deg)}.nav-panel .nav-panel{top:-.4rem;left:100%;padding-top:0;padding-left:.35rem}.nav-item--flip>.nav-panel{left:auto;right:0}.nav-panel .nav-item--flip>.nav-panel{left:auto;right:100%;padding-left:0;padding-right:.35rem}.nav-panel .nav-item--flip>.nav-row .nav-caret:before{transform:rotate(135deg)}:root{--header-h: 8rem}.site-header{position:relative}.nav-toggle{display:none;position:absolute;top:1rem;right:.75rem;width:44px;height:44px;padding:0;cursor:pointer;background:none;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px}.nav-toggle span{display:block;width:22px;height:2px;background:var(--brand-ink);border-radius:2px;transition:transform .2s,opacity .2s}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile{display:none;position:absolute;z-index:70;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--rule);box-shadow:0 12px 24px #0000001a;visibility:hidden;pointer-events:none}.nav-mobile.open{visibility:visible;pointer-events:auto;max-height:calc(100vh - var(--header-h));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@supports (height: 100dvh){.nav-mobile.open{max-height:calc(100dvh - var(--header-h))}}.nav-mobile-list{padding:.25rem clamp(1rem,4vw,2rem) 1rem}.nav-mobile-row{display:flex;align-items:center;border-bottom:1px solid var(--rule)}.nav-mobile .nav-link{display:block;flex:1;padding:.85rem 0;text-align:left;white-space:normal}.nav-mobile .nav-trigger{display:flex;width:100%;justify-content:space-between;padding:.85rem 0}.nav-mobile .nav-caret-btn{padding:.85rem .75rem}.nav-mobile .is-open>.nav-mobile-row .nav-caret:before{transform:rotate(225deg)}.nav-mobile-sub{padding-left:1rem}.nav-mobile-sub[hidden]{display:none}@media(max-width:759px){.nav--main{display:none}.nav-toggle{display:flex}.nav-mobile{display:block}.site-header{padding-bottom:.9rem}}.site-main{flex:1;width:var(--row);max-width:var(--maxw);margin:0 auto;padding:3rem 0 4rem}.prose{text-align:center;margin:0 0 3rem}.prose p{margin:0 0 1.1rem}.section-title{font-size:clamp(1.6rem,3.2vw,2rem);text-transform:uppercase;letter-spacing:1px;margin:0 0 1.25rem}.meta{color:var(--brand-muted);font-style:italic;margin-top:-.5rem}.signature{font-family:var(--font-display);font-size:1.15rem;color:var(--brand-ink)}.litter-block{margin-top:3.5rem}.btn-row{text-align:center;margin:1.5rem 0}.btn{display:inline-block;background:#000;color:#fff;border:2px solid #fff;border-radius:3px;font-family:var(--font-display);font-size:1rem;letter-spacing:2px;padding:.55rem 1.5rem;text-decoration:none}.btn:hover{background:var(--brand-primary);color:#fff}.listing-rows{display:grid;gap:2.5rem}.listing-group{display:contents}.listing-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.5rem,4vw,3rem);background:#fff;border:1px solid var(--rule);border-radius:6px;box-shadow:0 12px 30px #0000000f;padding:clamp(1.5rem,3.5vw,3rem)}.listing-row-flip .listing-copy{order:2}.listing-row-flip .listing-media{order:1}.listing-copy{text-align:center}.listing-title{font-size:clamp(1.35rem,2.6vw,1.9rem);text-transform:uppercase;letter-spacing:1px;margin:0 0 .5rem}.listing-subtitle{font-size:1.02rem;color:var(--brand-muted);margin:0 0 .9rem}.listing-meta{font-family:var(--font-display);font-size:1.05rem;color:var(--brand-ink);letter-spacing:1px;margin:0 0 .9rem}.listing-body{margin:0 0 1.25rem}.listing-reservations{margin:0 0 1.25rem;text-align:left}.listing-reservations-heading{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-muted);margin:0 0 .4rem}.reservation-list{margin:0;padding-left:1.4rem;columns:2;column-gap:2rem}.reservation-list li{break-inside:avoid;padding:.1rem 0}.reservation-list li.is-available{opacity:.65;font-style:italic}.reservation-note{font-size:.85rem;color:var(--brand-muted);margin:.4rem 0 0}.listing-frame{display:block;width:100%;padding:10px;border:0;background:#fff;box-shadow:0 6px 22px #0000002e;cursor:zoom-in}.listing-frame img{width:100%;height:clamp(260px,34vw,420px);object-fit:cover;display:block}.listing-thumbs{list-style:none;margin:.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:.4rem}.listing-thumbs button{display:block;width:100%;padding:0;border:1px solid var(--rule);background:none;cursor:zoom-in}.listing-thumbs img{width:100%;aspect-ratio:1 / 1;object-fit:cover}.listing-thumbs button:hover{border-color:var(--brand-primary)}.photo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--cols, 4),1fr);gap:.75rem}.photo-cell{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.photo-cell img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:3px;transition:opacity .15s ease}.photo-cell:hover img{opacity:.85}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e6;display:grid;place-items:center;padding:3rem 1rem}.lightbox img{max-width:min(94vw,1100px);max-height:84vh;width:auto;object-fit:contain}.lightbox-close,.lightbox-arrow{position:absolute;border:0;background:#ffffff24;color:#fff;cursor:pointer;line-height:1}.lightbox-close{top:1rem;right:1.25rem;font-size:2.2rem;width:46px;height:46px;border-radius:50%}.lightbox-arrow{top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;font-size:2.2rem}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-close:hover,.lightbox-arrow:hover{background:var(--brand-primary)}.lightbox-count{position:absolute;bottom:1.1rem;color:#ffffffbf;font-size:.85rem;margin:0}.faq-list{max-width:780px;margin:0 auto;text-align:left}.faq-list details{border-bottom:1px solid var(--rule);padding:1rem 0}.faq-list summary{font-family:var(--font-display);font-size:1.1rem;color:var(--brand-ink);cursor:pointer}.faq-list p{margin:.75rem 0 0}.card-grid{list-style:none;margin:0;padding:0;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card{text-align:center}.card-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:4px}.card-body h3{font-size:1.5rem;text-transform:uppercase;letter-spacing:1px;margin:1rem 0 .35rem}.card-meta{color:var(--brand-muted);font-size:.95rem;margin:0 0 .75rem}.list{list-style:none;margin:0;padding:0}.site-footer{border-top:1px solid var(--rule);padding:2.5rem 1rem 3rem;text-align:center;color:var(--brand-muted);font-size:.9rem}.footer-tagline{font-size:clamp(1.2rem,2.5vw,1.6rem);text-transform:uppercase;letter-spacing:1px;margin:0 0 2rem}.footer-cols{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:var(--maxw);margin:0 auto 2rem}.footer-col h3{font-size:1rem;text-transform:uppercase;letter-spacing:1px;margin:0 0 .5rem}.footer-col p{margin:0}.footer-credit{margin:0;font-size:.82rem}.footer-credit a{color:var(--brand-primary-dark)}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.form-page{max-width:680px;margin:0 auto;text-align:left}.form-page h1{font-size:clamp(1.6rem,3.2vw,2rem);text-transform:uppercase;letter-spacing:1px;text-align:center;margin:0 0 1rem}.form-intro{text-align:center;margin:0 auto 2.25rem;max-width:56ch}.form{display:grid;gap:1.15rem;background:#fff;border:1px solid var(--rule);border-radius:6px;box-shadow:0 12px 30px #0000000f;padding:clamp(1.5rem,4vw,2.5rem)}.field{display:grid;gap:.4rem}.field label{font-family:var(--font-display);font-size:.95rem;color:var(--brand-ink);letter-spacing:.5px}.field label span{color:var(--brand-primary)}.form input[type=text],.form input[type=email],.form input[type=tel],.form input[type=date],.form textarea,.form select{width:100%;font-family:var(--font-body);font-size:1rem;color:var(--brand-ink);background:#fdfdfd;border:1px solid #d9d9d9;border-radius:4px;padding:.7rem .85rem}.form textarea{min-height:150px;resize:vertical}.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #c20a181f}.form input::placeholder,.form textarea::placeholder{color:#a8a8a8}.field:has(input[type=checkbox]){grid-template-columns:auto 1fr;align-items:start;gap:.6rem}.field:has(input[type=checkbox]) label{order:2;line-height:1.5}.field input[type=checkbox]{order:1;width:18px;height:18px;margin-top:.2rem;accent-color:var(--brand-primary)}.signature-input{font-family:var(--font-display)!important;font-size:1.25rem!important;font-style:italic}.field-note{color:var(--brand-muted);font-size:.82rem}.form button[type=submit]{justify-self:center;margin-top:.5rem;background:#000;color:#fff;border:2px solid #fff;border-radius:3px;font-family:var(--font-display);font-size:1rem;letter-spacing:2px;text-transform:uppercase;padding:.7rem 2rem;cursor:pointer}.form button[type=submit]:hover:not(:disabled){background:var(--brand-primary)}.form button[type=submit]:disabled{opacity:.55;cursor:default}.form-error{color:var(--brand-primary-dark);background:#fdf2f3;border:1px solid #f0c9cd;border-radius:4px;padding:.7rem .9rem;margin:0}.agreement{max-height:340px;overflow-y:auto;border:1px solid var(--rule);border-radius:6px;background:#fbfbfa;padding:1.25rem 1.5rem;margin:0 0 1.75rem;font-size:.95rem}.agreement p{margin:0 0 .9rem}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.listing-row{grid-template-columns:1fr}.listing-row-flip .listing-copy,.listing-row-flip .listing-media{order:initial}}@media(max-width:520px){.reservation-list{columns:1}}@media(max-width:700px){.site-main{width:90%;padding:2rem 0 3rem}.nav-list{gap:.25rem 1rem}.photo-grid{grid-template-columns:repeat(2,1fr)}}.yt-facade{position:relative;width:100%;overflow:hidden;background:#000}.yt-facade.card-video{margin-top:.75rem;max-width:360px;border-radius:8px}.yt-facade.page-video{margin:1.25rem auto;max-width:720px;border-radius:8px}.yt-facade iframe,.yt-facade button,.yt-facade img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.yt-facade button{padding:0;background:none;cursor:pointer}.yt-facade img{object-fit:cover}.yt-facade button>span{position:absolute;left:50%;top:50%;width:4rem;height:4rem;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;border-radius:9999px;background:#000000b3;color:#fff;transition:transform .15s}.yt-facade button:hover>span{transform:translate(-50%,-50%) scale(1.1)}.page-videos{padding:0 1rem 2rem}.litter-puppies{margin:.75rem 0}.litter-puppies-count{margin:0 0 .4rem;font-weight:600;color:var(--brand-ink)}.litter-puppies-thumbs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}.litter-puppies-thumbs a{display:block;text-align:center;text-decoration:none;font-size:.85rem}.litter-puppies-thumb{display:block;width:64px;height:64px;object-fit:cover;border-radius:4px;margin:0 auto .2rem}
