@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--bg:#f7f2eb;--paper:#fffcf8;--ink:#302d28;--muted:#756c61;--gold:#ae8854;--line:#ddd1bf;--forest:#3b4339;--sand:#ede3d5}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.75 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,.quote-section blockquote{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12}h1 em,h2 em{color:var(--gold);font-weight:400}.header{position:relative;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px max(28px,6vw);border-bottom:1px solid var(--line);background:var(--bg)}.logo{display:inline-flex;align-items:center;gap:13px;white-space:nowrap}.logo-mark{display:grid;place-items:center;width:45px;height:45px;border:1px solid var(--gold);color:var(--gold);font:17px 'Playfair Display',serif;letter-spacing:-.15em;padding-right:4px}.logo-word{font:24px 'Playfair Display',serif;letter-spacing:.13em;line-height:1.1}.logo-word small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.19em;color:var(--muted);margin-top:9px}.header nav{display:flex;align-items:center;gap:clamp(15px,2.4vw,36px);font-size:12px;font-weight:600}.header nav a:not(.nav-cta):hover{color:var(--gold)}.nav-cta{background:var(--forest);color:white;padding:12px 17px}.nav-cta span{margin-left:10px}.menu-button{display:none;padding:8px 15px;background:transparent;border:1px solid var(--line)}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.19em;font-weight:700}.hero{min-height:650px;display:grid;grid-template-columns:53% 47%}.hero-text{padding:110px 5vw 60px max(28px,8vw)}.hero-text h1{font-size:clamp(53px,5.8vw,95px);letter-spacing:-.04em;margin:22px 0 26px}.lead{color:var(--muted);line-height:2;max-width:480px;font-size:15px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:34px}.button{display:inline-flex;gap:23px;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:.025em;padding:17px 23px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.dark{background:var(--forest);color:white}.outline{border:1px solid var(--forest)}.cream{background:var(--bg);color:var(--forest)}.line-link{font-size:12px;font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:6px}.tiny-note{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:12px;margin:79px 0 0}.tiny-note span{width:40px;height:1px;background:var(--gold)}.hero-visual{position:relative;min-height:550px;overflow:hidden;background:radial-gradient(circle at 51% 38%,#f6e6cb 0%,#d4b994 50%,#af926e 100%)}.visual-ring{position:absolute;left:14%;top:9%;width:73%;height:99%;border:24px solid #fff7e459;border-bottom:0;border-radius:50% 50% 0 0}.cat-art{position:absolute;bottom:14%;left:28%;width:48%;height:61%;filter:drop-shadow(18px 28px 20px #5f49394a)}.cat-face{position:absolute;top:9%;left:10%;width:81%;height:59%;background:radial-gradient(circle at 35% 32%,#f5e2be,#c6a173 75%);border-radius:48% 48% 43% 43%;z-index:2;box-shadow:inset -18px -12px 20px #88613d40}.cat-ear{position:absolute;top:0;width:34%;height:29%;background:#c09a68;clip-path:polygon(50% 0,0 100%,100% 100%);z-index:1}.cat-ear.left{left:10%;transform:rotate(-17deg)}.cat-ear.right{right:11%;transform:rotate(17deg)}.cat-eyes:before,.cat-eyes:after{position:absolute;content:'';background:#564735;width:12%;height:4%;border-radius:50%;top:52%}.cat-eyes:before{left:26%}.cat-eyes:after{right:26%}.cat-nose{position:absolute;top:60%;left:48%;font-size:13px;color:#896543}.cat-chest{position:absolute;bottom:0;left:0;width:100%;height:57%;border-radius:48% 48% 20% 20%;background:linear-gradient(110deg,#ead4ac,#aa875c);box-shadow:inset -20px -20px 26px #7b604334}.visual-caption{position:absolute;bottom:33px;left:38px;letter-spacing:.22em;font-size:10px;color:#fffaf0}.visual-caption span{color:#eee}.visual-seal{position:absolute;right:38px;top:35px;border:1px solid #fff8eaaa;border-radius:50%;width:113px;height:113px;color:#fff8ee;display:grid;place-content:center;text-align:center;font-size:10px;line-height:1.8;letter-spacing:.18em;transform:rotate(12deg)}.marquee{display:flex;align-items:center;justify-content:space-evenly;gap:18px;flex-wrap:wrap;background:var(--forest);color:#f9f0e4;padding:19px 22px;font-size:10px;letter-spacing:.18em}.section{padding:clamp(68px,8vw,125px) max(28px,8vw)}.story{display:grid;grid-template-columns:1fr 1fr;gap:11vw;align-items:center}.story h2,.spotlight h2,.editorial h2,.form-layout h2{font-size:clamp(43px,4.3vw,70px);letter-spacing:-.03em;margin:17px 0 0}.story-text p,.spotlight-copy p,.editorial-body p{color:var(--muted);font-size:16px;line-height:2;margin-bottom:25px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;background:var(--sand);padding-top:65px;padding-bottom:65px}.benefits article{border-top:1px solid #c9b9a5;padding-top:22px}.number{font-size:11px;color:var(--gold)}.benefits h3{font:29px 'Playfair Display',serif;margin:15px 0}.benefits p{color:var(--muted);font-size:13px}.spotlight{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.spotlight-art,.editorial-art{background:radial-gradient(circle at 40% 31%,#e5cfae,#a38b6c);min-height:480px;position:relative;display:grid;place-items:center}.spotlight-art>span,.editorial-art .oversize{font:clamp(130px,17vw,240px) 'Playfair Display',serif;letter-spacing:-.17em;padding-right:40px;color:#f4e8d5b8}.spotlight-art .slim{font-style:italic}.spotlight-art small,.smallnote{position:absolute;bottom:28px;letter-spacing:.19em;color:#fff8ec;font-size:10px}.spotlight-copy p{margin-top:24px}.spotlight-copy .button{margin-top:15px}.closing{background:var(--forest);color:#fff7eb;text-align:center}.closing h2{font-size:clamp(51px,5.2vw,84px);margin:21px 0}.closing p{max-width:590px;margin:0 auto 30px;color:#e6dac9}.footer{background:#e8dfd2;padding:65px max(28px,8vw) 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:70px}.footer-grid p{color:var(--muted);font-size:13px;max-width:335px;margin:24px 0 0}.footer-grid h3{font-size:11px;letter-spacing:.18em;color:var(--gold);text-transform:uppercase}.footer-grid>div>a:not(.logo){display:block;font-size:12px;margin:13px 0;overflow-wrap:anywhere}.copyright{border-top:1px solid #d1c4b2;margin-top:60px;padding-top:20px;color:var(--muted);font-size:11px}.page-hero{text-align:center;padding:94px 28px 92px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(53px,6vw,95px);letter-spacing:-.035em;margin:21px 0}.page-hero>p{max-width:650px;margin:auto;color:var(--muted);font-size:16px}.page-hero.compact{padding-top:72px;padding-bottom:70px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.editorial-body p{margin:20px 0}.quote-section{padding:80px 25px;background:var(--forest);color:#f7ebdb;text-align:center}.quote-section blockquote{font-size:clamp(32px,3.7vw,57px);margin:0}.centered{text-align:center}.centered h2{font-size:clamp(48px,4vw,67px);margin:24px 0 33px}.cats-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.cat-card{background:var(--paper)}.cat-photo-placeholder{height:400px;position:relative;display:grid;place-items:center;overflow:hidden}.cat-photo-placeholder.golden{background:radial-gradient(circle at 45% 30%,#f6e4c6,#bc9d77)}.cat-photo-placeholder.pearl{background:radial-gradient(circle at 45% 30%,#f3e5d3,#b8a692)}.cat-photo-placeholder p{position:absolute;bottom:20px;text-align:center;font-size:11px;color:#5f584e;letter-spacing:.04em;padding:0 15px}.line-cat{width:175px;height:225px;border-radius:48% 48% 40% 40%;background:linear-gradient(110deg,#f0d7b2,#ab875f);box-shadow:25px 22px 35px #604a3450;position:relative}.line-cat:before,.line-cat:after{content:'';position:absolute;width:65px;height:80px;background:#c6a175;top:-25px;clip-path:polygon(50% 0,0 100%,100% 100%)}.line-cat:before{left:0}.line-cat:after{right:0}.cat-card-body{padding:30px}.cat-card-body h2{font-size:36px;margin:10px 0}.cat-card-body p{color:var(--muted)}.availability{border-top:1px solid var(--line)}.availability .button{margin-top:15px}.form-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:9vw;align-items:start}.form-layout aside>p{line-height:2}.muted{color:var(--muted)}.small{font-size:12px}.rule{height:1px;width:70px;background:var(--gold);margin:38px 0}.contact-lines{display:flex;flex-direction:column;gap:14px;margin:30px 0}.contact-lines a{font-size:14px;overflow-wrap:anywhere}.form-panel{background:var(--paper);padding:clamp(26px,4vw,55px);border:1px solid #ebe1d6;box-shadow:0 20px 60px #443d3210}.form-title{font:31px 'Playfair Display',serif;margin-bottom:20px}.form-field{margin-bottom:22px}.form-field label:not(.choice):not(.check-label){display:block;font-size:12px;font-weight:700;margin-bottom:8px}.form-field input:not([type=checkbox]):not([type=radio]):not([type=file]),.form-field textarea,.form-field select{width:100%;background:#fff;border:1px solid #cfc4b6;color:var(--ink);padding:13px 14px;outline:none;min-height:48px;border-radius:0}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--gold)}.form-field textarea{min-height:128px;resize:vertical}.check-label,.choice{display:flex;gap:12px;align-items:flex-start;font-size:12px}.check-label input,.choice input{accent-color:var(--forest);margin-top:6px}.form-field .field-help{color:var(--muted);font-size:11px;margin:6px 0}.field-error,.form-error{color:#a02f31;font-size:12px;margin:7px 0}.form-progress{font-size:11px;letter-spacing:.15em;color:var(--gold)}.form-actions{display:flex;align-items:center;gap:15px;margin-top:22px;flex-wrap:wrap}.form-actions button{border:0}.form-actions .outline{border:1px solid var(--forest);background:transparent}.form-actions button:disabled{opacity:.55;cursor:wait}.success-card{border-top:1px solid var(--gold);padding-top:20px}.success-card h2{font:32px 'Playfair Display',serif}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1000px){.header{padding:18px 26px}.header nav{gap:15px}.hero-text{padding-left:6vw}}@media(max-width:780px){.menu-button{display:block}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;align-items:stretch;padding:22px 28px 28px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-text{padding:72px 27px 58px}.hero-text h1{font-size:clamp(54px,11vw,85px)}.tiny-note{margin-top:55px}.hero-visual{min-height:440px}.story,.spotlight,.editorial,.availability,.form-layout{grid-template-columns:1fr;gap:38px}.benefits{grid-template-columns:1fr;gap:20px}.benefits article{padding-top:13px}.cats-grid{grid-template-columns:1fr}.spotlight-art,.editorial-art{min-height:370px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-grid>div:first-child{grid-column:1/-1}.section{padding:65px 27px}.page-hero{padding:75px 27px}.form-panel{padding:27px 20px}.marquee{font-size:9px}}
/* CAT HOME official identity */
.official-logo{display:block;width:124px;height:85px;object-fit:contain;object-position:left center}.footer .official-logo{width:132px;height:99px}.header .logo{flex-shrink:0}.pedigree-area{background:#eee5d9}.pedigree-heading{max-width:760px}.pedigree-heading h2,.kitten-status h2{font-size:clamp(38px,4.4vw,66px);margin:20px 0}.pedigree-heading p,.kitten-status>p{color:#756c61;max-width:760px}.pedigree-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:36px}.pedigree-cards article{background:#fffcf8;padding:31px;border:1px solid #ddd1bf}.pedigree-cards h3{font:27px "Playfair Display",Georgia,serif;margin:14px 0}.pedigree-cards p{color:#756c61}.kitten-status{border-top:1px solid #ddd1bf}.kitten-status .button{margin-top:18px}@media(max-width:780px){.official-logo{width:101px;height:71px}.footer .official-logo{width:125px;height:90px}.pedigree-cards{grid-template-columns:1fr}}

/* CAT HOME family portrait gallery */
.spotlight-father{display:block;overflow:hidden}
.spotlight-real-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;transition:transform .4s}
.spotlight-father:hover .spotlight-real-photo{transform:scale(1.035)}
.spotlight-father:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(27,28,23,.32));pointer-events:none}
.spotlight-father small{z-index:1}
.cat-real-photo{height:400px;display:block;position:relative;overflow:hidden;background:#e1d3c0}
.cat-dad-img{width:100%;height:100%;object-fit:cover;object-position:center 46%;transition:transform .4s}
.cat-real-photo:hover .cat-dad-img{transform:scale(1.04)}
.cat-photo-cta{position:absolute;bottom:20px;right:22px;background:rgba(255,252,248,.93);padding:8px 15px;font-size:12px}
.family-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw}
.family-feature-copy h2,.gallery-head h2,.family-upcoming h2,.family-pedigree h2,.family-contact h2{font-size:clamp(42px,4.5vw,70px);margin:17px 0 22px;letter-spacing:-.025em}
.family-feature-copy>p,.family-upcoming p,.family-pedigree>p,.family-contact p{color:var(--muted);max-width:590px;line-height:2}
.family-subtitle{color:var(--gold)!important;font-weight:700;font-size:13px;letter-spacing:.04em}
.family-feature-image{height:620px;position:relative;overflow:hidden;background:#ddc3a3}
.family-main-photo{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.family-image-label{position:absolute;bottom:0;left:0;right:0;text-align:center;padding:34px 15px 20px;color:white;font-size:11px;font-weight:700;letter-spacing:.13em;background:linear-gradient(transparent,#27251e91)}
.family-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.family-facts span{font-size:10px;color:var(--muted);display:block}
.family-facts strong{font-size:12px;display:block;margin-top:5px}
.family-gallery{background:var(--sand)}
.gallery-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}
.gallery-head p{font-size:13px;color:var(--muted)}
.family-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.family-photo-grid figure{margin:0;background:var(--paper)}
.gallery-photo{width:100%;height:340px;object-fit:cover;object-position:center;display:block}
.family-photo-grid figcaption{padding:15px 17px;color:var(--muted);font-size:12px}
.family-upcoming{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.family-coming-photo{background:linear-gradient(150deg,#eadbc7,#cbb9a0);min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}
.family-coming-photo span{color:#6e5b46;letter-spacing:.19em;font-size:11px}
.family-coming-photo p{font:32px 'Playfair Display',Georgia,serif;color:#75624b;margin:18px 0}
.family-pedigree{background:#eae0d2}
.family-pedigree-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;background:var(--paper);padding:22px;margin:30px 0 22px;font-size:13px;border:1px solid var(--line)}
.family-pedigree-note span{color:var(--muted)}
.family-contact{text-align:center;background:var(--forest);color:#fff7eb}
.family-contact>p{margin:0 auto 28px;color:#e6dac9}
@media(max-width:1080px){.menu-button{display:block}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;align-items:stretch;padding:22px 28px 28px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}}
@media(max-width:780px){.family-feature,.family-upcoming{grid-template-columns:1fr;gap:35px}.family-feature-image{height:520px}.family-photo-grid{grid-template-columns:1fr;gap:22px}.gallery-photo{height:380px}.gallery-head{display:block}.family-facts{gap:5px}.cat-real-photo{height:400px}.family-coming-photo{min-height:320px}}

/* CAT HOME mother photo galleries */
.hero-real-family{display:block;cursor:pointer;background:#dbd0c0}
.hero-family-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:53% 42%;transition:transform .4s ease}
.hero-real-family:hover .hero-family-image{transform:scale(1.025)}
.hero-real-family:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(24,24,20,.28));pointer-events:none}
.hero-real-family .visual-caption,.hero-real-family .visual-seal{z-index:1}
.hero-real-family .visual-caption{line-height:1.5}
.family-mother-image{height:590px;position:relative;overflow:hidden;background:#d9c9b5}
.family-mom-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}
.family-mother-copy p{color:var(--muted);line-height:2}
.family-mother-copy .family-subtitle{color:var(--gold)}
.mother-gallery{background:#f4eee6}
.mother-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mother-photo-grid .gallery-photo{height:460px;object-position:center 45%}
.cat-mom-img{object-position:center 43%}
.family-pedigree-note+.family-pedigree-note{margin-top:-12px}
@media(max-width:780px){.hero-family-image{object-position:center 40%}.family-mother-image{height:465px}.mother-photo-grid{grid-template-columns:1fr}.mother-photo-grid .gallery-photo{height:380px}}

/* CAT HOME reserved litter gallery */
.litter-home{background:#f7f2eb}
.litter-home-heading,.litter-gallery-header{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;align-items:center;margin-bottom:30px}
.litter-home h2,.litter-gallery-section h2{font-size:clamp(44px,4.6vw,72px);letter-spacing:-.035em;margin:15px 0}
.litter-home-copy p,.litter-gallery-header p{color:var(--muted);font-size:15px;line-height:1.95}
.litter-status{display:inline-block;color:#3b4339;background:#e5eadc;border:1px solid #b9c9ae;padding:7px 13px;font-size:11px;letter-spacing:.08em;font-weight:700;text-transform:uppercase}
.litter-home-copy .litter-status{margin-bottom:18px}
.litter-home-images{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px}
.litter-home-images a{display:block;min-width:0;overflow:hidden;background:#e5d6bd}
.litter-home-images img{height:390px;width:100%;display:block;object-fit:cover;object-position:center 46%;transition:transform .35s ease}
.litter-home-images a:hover img{transform:scale(1.04)}
.litter-gallery-section{background:#f3ebdf}
.litter-gallery-availability{background:#fffaf3;padding:29px;border:1px solid #dfd3c2}
.litter-gallery-availability .button{margin-top:6px}
.litter-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.litter-gallery-item{margin:0;min-width:0;background:#fffaf3}
.litter-gallery-item img{width:100%;height:360px;object-fit:cover;object-position:center 45%;display:block}
.litter-gallery-item figcaption{font-size:11px;letter-spacing:.02em;color:var(--muted);padding:12px 15px}
#kitten-gallery{scroll-margin-top:40px}
@media(max-width:900px){.litter-home-heading,.litter-gallery-header{grid-template-columns:1fr;gap:28px}.litter-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.litter-home-images img{height:280px}}
@media(max-width:600px){.litter-home-images{grid-template-columns:1fr 1fr}.litter-home-images a:first-child{grid-column:1/-1}.litter-home-images a:first-child img{height:360px}.litter-home-images img{height:245px}.litter-gallery-grid{grid-template-columns:1fr}.litter-gallery-item img{height:390px}.litter-gallery-availability{padding:22px}}

/* four featured CAT HOME kitten photos */
.litter-home-images.litter-four-photos{grid-template-columns:repeat(4,minmax(0,1fr))}
.litter-four-photos img{height:350px;object-fit:cover}
@media(max-width:800px){.litter-home-images.litter-four-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.litter-four-photos img{height:300px}}
@media(max-width:500px){.litter-home-images.litter-four-photos a:first-child{grid-column:auto}.litter-home-images.litter-four-photos a:first-child img,.litter-home-images.litter-four-photos img{height:240px}}
