@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--wine:#70404a;--wine-dark:#4e2931;--cream:#f8f3eb;--paper:#fffdf9;--sage:#788574;--sage-soft:#e7ece3;--ink:#282321;--muted:#756b65;--line:#e8ddd2;--shadow:0 24px 70px rgba(64,42,36,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 'DM Sans',sans-serif}body.nav-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,input,textarea,select{font:inherit}h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500;line-height:1.08;margin:0}h1{font-size:clamp(3.4rem,6.5vw,6.6rem);letter-spacing:-.05em}h2{font-size:clamp(2.5rem,4.7vw,4.6rem);letter-spacing:-.04em}h3{font-size:1.45rem}p{color:var(--muted)}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.section{padding-block:120px}.skip-link{position:fixed;left:10px;top:-100px;background:#fff;padding:10px;z-index:200}.skip-link:focus{top:10px}.topbar{height:31px;background:var(--wine-dark);color:#fff;text-align:center;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;display:grid;place-items:center}.topbar i{display:inline-block;width:3px;height:3px;background:#d9bfc2;border-radius:50%;margin:0 10px}.site-header{height:82px;padding-inline:max(20px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:rgba(255,253,249,.94);backdrop-filter:blur(15px);border-bottom:1px solid rgba(112,64,74,.1);z-index:100}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:1.2rem/1 'Playfair Display',serif}.brand small{display:block;font:600 .5rem 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:7px}.brand-mark{width:41px;height:41px;border:1px solid var(--wine);color:var(--wine);border-radius:50%;display:grid;place-items:center;font-size:1.35rem}.site-header nav{display:flex;align-items:center;gap:27px}.site-header nav a{text-decoration:none;font-size:.78rem;position:relative}.site-header nav a:not(.nav-cta):after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--wine);transition:.25s}.site-header nav a:hover:after{right:0}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:0 23px;border-radius:99px;background:var(--wine);color:#fff!important;text-decoration:none;font-size:.82rem;font-weight:600;border:1px solid var(--wine);transition:.25s}.nav-cta{min-height:42px}.button:hover,.nav-cta:hover{background:var(--wine-dark);border-color:var(--wine-dark);transform:translateY(-2px)}.button-outline{background:transparent;color:var(--wine)!important}.button-outline:hover{color:#fff!important}.text-link{color:var(--wine);font-size:.83rem;font-weight:600;text-underline-offset:5px}.eyebrow{color:var(--wine);font-size:.69rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:11px;margin:0 0 18px}.eyebrow:before{content:'';width:29px;height:1px;background:currentColor}.hero{min-height:calc(100vh - 113px);height:760px;background:linear-gradient(90deg,rgba(248,243,235,.99) 0%,rgba(248,243,235,.93) 36%,rgba(248,243,235,.18) 65%),url('../hero-maison-v2.png') center/cover no-repeat;position:relative;display:flex;align-items:center;padding-inline:max(20px,calc((100% - 1160px)/2));overflow:hidden}.hero-content{width:54%;max-width:650px;position:relative;z-index:2}.hero h1 em{color:var(--wine);font-weight:500}.hero-lead{font-size:1.08rem;max-width:520px;margin:27px 0 32px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.trust-list{display:flex;gap:25px;flex-wrap:wrap;margin-top:50px;color:var(--muted);font-size:.73rem}.trust-list span:before{content:'✓';color:var(--sage);margin-right:7px;font-weight:700}.hero-note{position:absolute;right:max(25px,calc((100% - 1160px)/2));bottom:38px;padding:17px 23px;border-radius:13px;background:rgba(255,253,249,.9);backdrop-filter:blur(10px);box-shadow:var(--shadow);display:grid}.hero-note b{font:1.03rem 'Playfair Display',serif}.hero-note span{font-size:.7rem;color:var(--muted)}.about{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px;align-items:center}.about-photo{position:relative}.about-photo img{height:610px;width:100%;object-fit:cover;object-position:70%;border-radius:180px 180px 18px 18px}.about-photo:before{content:'';position:absolute;inset:24px 24px -24px -24px;border:1px solid #a6ae9f;border-radius:180px 180px 18px 18px;z-index:-1}.seal{position:absolute;right:-40px;top:70px;width:112px;height:112px;border-radius:50%;background:var(--wine);color:#fff;display:grid;place-items:center;text-align:center;font:italic 1rem 'Playfair Display',serif;line-height:1.25;transform:rotate(7deg);box-shadow:var(--shadow)}.about-copy .intro{font:1.25rem/1.55 'Playfair Display',serif;color:var(--ink)}.about-copy>p{max-width:560px}.values{margin-top:35px;border-top:1px solid var(--line)}.values div{padding:17px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:180px 1fr;gap:20px}.values b{font:1.07rem 'Playfair Display',serif;color:var(--wine)}.values span{font-size:.77rem;color:var(--muted)}.puppies-section{background:var(--cream)}.section-heading{text-align:center;max-width:670px;margin:0 auto 48px}.section-heading .eyebrow{justify-content:center}.section-heading>p:last-child{max-width:590px;margin:20px auto}.puppy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.puppy-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 9px 35px rgba(70,47,40,.07);transition:.3s}.puppy-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.puppy-photo{height:330px;position:relative;overflow:hidden}.puppy-photo img{width:100%;height:100%;object-fit:cover;transition:.5s}.puppy-card:nth-child(1) img{object-position:35%}.puppy-card:nth-child(2) img{object-position:53%}.puppy-card:nth-child(3) img{object-position:75%}.puppy-card:hover img{transform:scale(1.035)}.status{position:absolute;left:15px;top:15px;background:#fff;padding:7px 11px;border-radius:99px;text-transform:uppercase;letter-spacing:.08em;color:var(--sage);font-size:.62rem;font-weight:600}.status-reserved{color:var(--wine)}.puppy-info{padding:21px 22px 23px}.puppy-info>div{display:flex;justify-content:space-between;align-items:center}.puppy-info h3{font-size:1.75rem}.sex{color:var(--wine);font-size:.75rem}.puppy-info p{font-size:.75rem}.puppy-info p i{display:inline-block;width:3px;height:3px;background:var(--line);border-radius:50%;margin:0 8px}.puppy-info a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;color:var(--wine);text-decoration:none;font-size:.76rem;font-weight:600}.center{text-align:center;margin-top:38px}.care-section{background:var(--sage-soft)}.care-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.care-copy{position:sticky;top:135px}.care-copy p{max-width:410px}.care-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px}.care-cards article{background:rgba(255,255,255,.7);padding:29px;border-radius:14px}.care-cards article>span{width:38px;height:38px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--wine);font-size:.7rem;margin-bottom:35px}.care-cards h3{font-size:1.25rem}.care-cards p{font-size:.8rem;margin-bottom:0}.testimonials{background:var(--paper)}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.testimonial-grid blockquote{margin:0;padding:40px;border:1px solid var(--line);border-radius:18px;background:#fff}.testimonial-grid blockquote>p{font:1.4rem/1.55 'Playfair Display',serif;color:var(--ink);margin-top:0}.testimonial-grid blockquote>p:before{content:'“';display:block;font-size:4rem;line-height:.7;color:var(--wine);margin-bottom:13px}.testimonial-grid footer{display:grid}.testimonial-grid footer b{font-size:.8rem}.testimonial-grid footer span{font-size:.7rem;color:var(--muted)}.faq-section{background:var(--cream)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-heading{position:sticky;top:135px;align-self:start}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item button{width:100%;border:0;background:none;padding:22px 0;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--ink);font-weight:600;cursor:pointer}.faq-item button span{color:var(--wine);font-size:1.2rem}.faq-answer{display:grid;grid-template-rows:0fr;transition:.3s}.faq-answer p{overflow:hidden;margin:0;font-size:.84rem}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-item.open .faq-answer p{margin:0 40px 22px 0}.contact-section{background:var(--wine-dark);color:#fff}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.eyebrow.light{color:#d9bec2}.contact-copy h2{font-size:clamp(2.8rem,5vw,4.8rem)}.contact-copy>p:not(.eyebrow){color:#d3c7c5;max-width:440px}.contact-details{display:grid;gap:9px;margin-top:35px;color:#d3c7c5;font-size:.75rem}.contact-details span:before{content:'✓';margin-right:9px}.contact-form{background:#fff;color:var(--ink);border-radius:22px;padding:38px;display:grid;gap:16px;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:grid;gap:6px;color:var(--muted);font-size:.72rem}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);background:#fbf9f6;padding:13px;border-radius:8px;color:var(--ink);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--wine);box-shadow:0 0 0 3px rgba(112,64,74,.08)}.contact-form textarea{height:100px;resize:vertical}.contact-form button{border:0;background:var(--wine);color:#fff;padding:15px;border-radius:99px;font-weight:600;cursor:pointer;display:flex;justify-content:center;gap:15px}.contact-form>small{text-align:center;color:var(--muted);font-size:.62rem}.success,.error{padding:11px;border-radius:8px;background:#e5f1e1;color:#315e34}.error{background:#f6e2df;color:#842f2a}.site-footer{background:#241f1e;color:#fff;padding:75px max(20px,calc((100% - 1160px)/2)) 25px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .9fr 1fr;gap:55px}.brand-footer{color:#fff;margin-bottom:20px}.brand-footer .brand-mark{border-color:#fff;color:#fff}.brand-footer small{color:#9e9693}.site-footer p,.site-footer a{color:#bbb2af;font-size:.75rem}.site-footer h3{font-size:1rem;margin-bottom:20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start}.footer-grid a{text-decoration:none;margin-bottom:8px}.socials{display:flex;gap:14px}.socials a{text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid #413a38;margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;color:#8f8784;font-size:.65rem}.whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#287b58;color:#fff;text-decoration:none;display:grid;place-items:center;box-shadow:0 12px 30px rgba(40,123,88,.3);z-index:90;transition:.2s}.whatsapp:before{content:'W';font-weight:600;font-size:1.1rem}.whatsapp span{position:absolute;right:68px;background:#fff;color:var(--ink);padding:7px 10px;border-radius:6px;font-size:.67rem;box-shadow:0 5px 20px #0002;opacity:0;transform:translateX(5px);transition:.2s;pointer-events:none}.whatsapp:hover{transform:scale(1.06)}.whatsapp:hover span{opacity:1;transform:none}.menu{display:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.page{max-width:850px;min-height:70vh;margin:auto;padding:110px 24px}.page .lead{font:1.3rem 'Playfair Display',serif}.content{font-size:1.04rem}
@media(max-width:960px){.site-header nav{gap:16px}.about{gap:55px}.about-photo img{height:520px}.seal{right:-10px}.puppy-grid{grid-template-columns:repeat(2,1fr)}.puppy-card:last-child{grid-column:1/-1;width:calc(50% - 12px);justify-self:center}.care-grid,.faq-grid{gap:50px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/-1}}
@media(max-width:780px){.topbar{font-size:.55rem}.site-header{height:72px}.site-header nav{display:none;position:fixed;top:103px;inset-inline:0;height:calc(100vh - 103px);background:var(--paper);padding:45px 25px;flex-direction:column;align-items:center;font:1.3rem 'Playfair Display',serif}.nav-open .site-header nav{display:flex}.site-header nav a{font-size:1.15rem}.menu{display:grid;width:42px;height:42px;border:0;background:none;place-content:center;gap:7px}.menu span{width:22px;height:1px;background:var(--wine);transition:.2s}.nav-open .menu span:first-child{transform:translateY(4px) rotate(45deg)}.nav-open .menu span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{height:720px;min-height:0;align-items:flex-end;padding-bottom:55px;background:linear-gradient(0deg,rgba(248,243,235,.99) 0%,rgba(248,243,235,.9) 50%,rgba(248,243,235,.05) 88%),url('../hero-maison-v2.png') 69% center/cover}.hero-content{width:100%}.hero-note{display:none}.about,.care-grid,.faq-grid,.contact-grid{grid-template-columns:1fr}.care-copy,.faq-heading{position:static}.testimonial-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}}
@media(max-width:560px){h1{font-size:3.15rem}.container{width:calc(100% - 28px)}.section{padding-block:82px}.hero{height:690px}.hero-lead{font-size:.92rem}.hero-actions{gap:15px}.trust-list{gap:10px 17px;margin-top:28px}.about{padding-inline:14px;gap:60px}.about-photo img{height:410px}.about-photo:before{inset:15px 15px -15px -12px}.seal{width:90px;height:90px;font-size:.8rem}.values div{grid-template-columns:1fr;gap:4px}.puppy-grid{grid-template-columns:1fr}.puppy-card:last-child{grid-column:auto;width:100%}.puppy-photo{height:350px}.care-cards{grid-template-columns:1fr}.testimonial-grid blockquote{padding:28px}.testimonial-grid blockquote>p{font-size:1.18rem}.form-row{grid-template-columns:1fr}.contact-form{padding:25px 20px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:grid;gap:7px}.whatsapp{width:52px;height:52px}.brand{font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
