@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{--paper:#fbf8f4;--paper-2:#f4eee7;--blush:#eadbd0;--ink:#1f1b16;--muted:#756d64;--sage:#9eac97;--line:rgba(31,27,22,.11);--white:#fff;font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink)}img{display:block;width:100%;height:100%;object-fit:cover}a{text-decoration:none;color:inherit}button,select{font:inherit}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,Georgia,serif;letter-spacing:-.035em;font-weight:500}.nav{width:min(1200px,calc(100% - 40px));height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:baseline;gap:6px;font-size:17px}.brand strong{font-family:Playfair Display,serif;font-size:20px}.brand em{font-style:normal;color:var(--muted);font-size:13px}.brand-paw{font-size:18px}.nav nav{display:flex;gap:28px;font-size:13px;color:#514a43}.nav nav a:hover{color:#000}.btn{border-radius:999px;min-height:46px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;font-size:13px;font-weight:600;transition:.25s ease}.btn:hover{transform:translateY(-1px)}.btn-dark{background:var(--ink);color:var(--paper)}.btn-light{background:var(--paper);color:var(--ink)}.btn-ghost{border-color:var(--line);background:#ffffff73}.full{width:100%}.hero{width:min(1200px,calc(100% - 40px));min-height:690px;margin:15px auto 30px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:72px;padding:48px 0 68px}.hero-copy{max-width:650px}.availability-badge{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#625a52}.availability-badge span{width:7px;height:7px;border-radius:50%;background:#7e9c72;box-shadow:0 0 0 5px #7e9c721f}.hero h1{font-size:clamp(48px,6vw,77px);line-height:1;margin:27px 0 24px;max-width:780px}.hero-copy>p{font-size:17px;line-height:1.75;color:var(--muted);max-width:575px}.hero-actions{display:flex;gap:12px;margin-top:32px}.micro-proof{display:flex;gap:28px;margin-top:34px;color:#635c54;font-size:12px}.micro-proof span{display:flex;align-items:center;gap:8px}.hero-visual{height:590px;position:relative;padding:24px 25px 20px 55px}.hero-frame{height:100%;border-radius:180px 180px 28px 28px;overflow:hidden;box-shadow:0 25px 60px #32261d24}.floating-card{position:absolute;background:#ffffffed;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.8);border-radius:18px;padding:13px 16px;box-shadow:0 18px 45px #32261d21;display:flex;align-items:center;gap:12px}.floating-card.top{left:4px;top:110px}.floating-card.bottom{right:0;bottom:75px}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-size:12px}.floating-card small{font-size:10px;color:var(--muted);margin-top:3px}.avatar-stack{font-size:21px;letter-spacing:-7px;padding-right:7px}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:78px;display:flex;align-items:center;justify-content:center;gap:60px;padding:18px 30px;color:#665f56;font-size:12px}.trust-strip span{display:flex;align-items:center;gap:8px}.section{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:115px 0}.section-title{max-width:660px;margin-bottom:52px}.section-title.center{text-align:center;margin-left:auto;margin-right:auto}.kicker,.eyebrow{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#8b8176;font-weight:600}.kicker{margin-bottom:16px}.kicker.light{color:#c9bfb4}.section-title h2,.about h2,.cta h2{font-size:clamp(39px,5vw,59px);line-height:1.08;margin-bottom:19px}.section-title p{color:var(--muted);line-height:1.7;font-size:15px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;min-height:440px;display:flex;flex-direction:column;transition:.25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 55px #2b221b14}.service-top{display:flex;justify-content:space-between;align-items:flex-start}.service-icon{width:50px;height:50px;border-radius:15px;background:var(--paper-2);display:grid;place-items:center;font-size:22px}.service-price{font-size:11px;color:var(--muted)}.service-price strong{font-size:17px;color:var(--ink)}.service-card h3{font-family:Playfair Display,serif;font-size:26px;margin:34px 0 12px}.service-card>p{color:var(--muted);font-size:13px;line-height:1.7}.service-card ul{padding:0;list-style:none;font-size:12px;line-height:2;color:#5f574f}.service-meta{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;font-size:10px;color:#8a8178}.extras{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap}.extras span{border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:11px;background:#ffffff80}.about{width:min(1280px,calc(100% - 40px));background:var(--ink);border-radius:30px;padding:26px;display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center;color:var(--paper)}.about-image{height:620px;border-radius:20px;overflow:hidden}.about-copy{padding:40px 60px 40px 0;max-width:610px}.about-copy>p{color:#c9c0b6;line-height:1.8;font-size:14px}.about blockquote{font-family:Playfair Display,serif;font-style:italic;font-size:24px;line-height:1.45;margin:34px 0;color:#f4eee7}.about-signature{font-family:Playfair Display,serif;color:#d6cbc0}.gallery-section{padding-bottom:70px}.photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:480px;gap:15px}.photo-grid figure{margin:0;border-radius:22px;overflow:hidden}.photo-big{border-radius:180px 22px 22px!important}.reviews-section{padding-top:65px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.review-card{padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff;min-height:255px}.stars{font-size:12px;letter-spacing:3px;margin-bottom:28px}.review-card p{font-family:Playfair Display,serif;font-size:20px;line-height:1.5}.review-card strong,.review-card small{display:block;font-size:11px}.review-card small{color:var(--muted);margin-top:4px}.calculator-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:24px;align-items:start}.calculator-form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;display:flex;flex-direction:column;gap:28px}.animal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.animal-choice{border:1px solid var(--line);border-radius:14px;background:#fff;padding:13px;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer}.animal-choice span{font-size:21px}.animal-choice.active{background:var(--ink);color:var(--paper)}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.stepper{margin-top:10px;border:1px solid var(--line);border-radius:13px;padding:5px;background:var(--paper);display:flex;align-items:center;justify-content:space-between}.stepper button{border:0;background:transparent;width:38px;height:34px;border-radius:9px;cursor:pointer;font-size:18px}.stepper button:hover{background:#fff}.calculator-form select{width:100%;margin-top:10px;border:1px solid var(--line);background:var(--paper);padding:13px;border-radius:13px;outline:none}.option-list{display:grid;gap:8px;margin-top:10px}.option-row{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:13px;background:#fff;padding:12px 13px;cursor:pointer}.option-row.active{background:#f5ece5;border-color:#95877c}.option-row small{color:var(--muted)}.check-box{width:20px;height:20px;border:1px solid #c8bdb2;border-radius:6px;display:grid;place-items:center}.option-row.active .check-box{background:var(--ink);color:#fff}.estimate-card{position:sticky;top:20px;background:var(--ink);border-radius:24px;padding:33px;color:var(--paper)}.muted{color:#bdb3a9}.estimate-price{font-family:Playfair Display,serif;font-size:55px;margin:10px 0}.estimate-card>p{color:#bbb2a8;line-height:1.7;font-size:13px}.estimate-notes{border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);padding:18px 0;margin:20px 0;display:grid;gap:8px;color:#bbb2a8;font-size:11px}.availability-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:center}.availability-points{display:grid;gap:13px;font-size:12px;color:#655e55}.calendar-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:27px}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.calendar-head h3{font-family:Playfair Display,serif;font-size:25px;margin:0}.calendar-head>div{display:flex;gap:7px}.calendar-head button{border:1px solid var(--line);background:#fff;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center}.calendar-week{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#8d8278;margin-bottom:7px}.calendar-day{aspect-ratio:1;border-radius:13px;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:12px}.calendar-day i,.calendar-legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.status-available{background:#83a178}.status-limited{background:#c7a45e}.status-unavailable{background:#c5786c}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:10px;color:#6d645b}.calendar-legend span{display:flex;gap:7px;align-items:center}.cta{width:min(1200px,calc(100% - 40px));background:#776f63;border-radius:32px;color:var(--paper);text-align:center;padding:90px 25px;margin-bottom:35px}.cta p{max-width:560px;margin:0 auto 28px;color:#ded7d0;line-height:1.7}.cta small{display:block;color:#d8d0c8;margin-top:16px}footer{width:min(1200px,calc(100% - 40px));margin:0 auto;padding:28px 0 45px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer>div:last-child{display:flex;gap:20px;align-items:center}@media(max-width:900px){.nav nav{display:none}.nav-cta{display:none}.hero{grid-template-columns:1fr;padding-top:25px;gap:30px}.hero-visual{height:500px;padding-left:20px}.hero-frame{border-radius:130px 130px 24px 24px}.trust-strip{gap:18px;flex-wrap:wrap}.services-grid,.reviews-grid,.about{grid-template-columns:1fr}.about-image{height:460px}.about-copy{padding:25px}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:390px 230px}.photo-big{grid-column:1/-1}.calculator-grid,.availability-section{grid-template-columns:1fr}.estimate-card{position:relative;top:auto}.availability-section{gap:30px}}@media(max-width:600px){.nav,.hero,.section,.cta,footer{width:min(100% - 26px,1200px)}.hero{min-height:auto;padding-bottom:50px}.hero h1{font-size:47px}.hero-actions{flex-direction:column}.micro-proof{flex-direction:column;gap:10px}.hero-visual{height:410px;padding:10px}.floating-card.top{left:-3px}.floating-card.bottom{right:-4px}.section{padding:78px 0}.section-title{margin-bottom:35px}.trust-strip{justify-content:flex-start;padding:20px}.two-cols{grid-template-columns:1fr}.calculator-form{padding:20px}.animal-grid{grid-template-columns:1fr 1fr 1fr}.about{width:100%;border-radius:0;padding:13px}.about-image{height:420px}.about-copy{padding:30px 18px}.photo-grid{display:grid;grid-template-columns:1fr;grid-template-rows:340px 260px 260px}.photo-big{grid-column:auto!important;border-radius:24px!important}.calendar-card{padding:15px}.calendar-grid,.calendar-week{gap:4px}.calendar-day{border-radius:9px}footer{align-items:flex-start;flex-direction:column;gap:15px}footer>div:last-child{flex-wrap:wrap}}:root{--muted:#655d55}html{scroll-padding-top:25px}body{overflow-wrap:break-word}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:3px solid #866846;outline-offset:5px}a,button,input,select,textarea{touch-action:manipulation}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:10px;left:15px;background:var(--ink);color:#fff;padding:12px 20px;border-radius:9px;transform:translateY(-150%)}.skip-link:focus{transform:none}.nav{position:relative;gap:20px}.nav nav{gap:23px}.menu-toggle{display:none;border:1px solid var(--line);border-radius:50%;background:#fff;padding:9px;min-width:44px;min-height:44px}.hero-review-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;margin-top:24px;color:var(--muted);text-decoration:underline;text-underline-offset:5px}.hero-copy>p{max-width:560px}.kicker,.eyebrow{color:#6d6257}.kicker.light{color:#d6cbbf}.about-signature{margin-bottom:25px;font-size:22px}.how-section{padding-bottom:55px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.how-grid article{border-top:1px solid #cfc3b8;padding-top:24px}.how-grid article>span{color:#76614f;font-size:13px}.how-grid h3{font-family:Playfair Display,Georgia,serif;font-weight:500;font-size:27px;margin:15px 0}.how-grid p{font-size:14px;color:var(--muted);line-height:1.8}.review-summary{display:flex;align-items:center;justify-content:center;gap:8px;color:#6e563e;margin-bottom:25px;font-size:14px}.review-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start;margin-top:40px}.review-invitation{padding:35px 15px 15px 0}.review-invitation>svg{color:#8c6c53;margin-bottom:25px}.review-invitation h3{font-family:Playfair Display,Georgia,serif;font-size:35px;font-weight:500;line-height:1.25;max-width:360px}.review-invitation p{color:var(--muted);font-size:15px;line-height:1.8}.review-invitation .small-copy,.small-copy{font-size:12px;color:var(--muted);line-height:1.8}.extras+.small-copy{margin-top:15px}.first-review{background:#eee8df;border-radius:15px;padding:18px}.text-link{display:block;text-decoration:underline;text-underline-offset:4px;font-size:13px;line-height:1.7;margin:16px 0;overflow-wrap:anywhere}.review-card p{white-space:pre-wrap;overflow-wrap:anywhere}.form-card{background:#fff;padding:32px;border:1px solid var(--line);border-radius:25px;min-width:0}.form-card h3{font-family:Playfair Display,Georgia,serif;font-size:29px;font-weight:500;margin-bottom:10px}.form-card fieldset{border:0;padding:0;margin:0;min-width:0}.form-card>fieldset{display:flex;flex-direction:column;gap:20px}.form-card label{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.5;min-width:0}.form-card label small,.rating-field small{color:var(--muted);font-size:11px;line-height:1.6}.form-card input:not([type=checkbox]):not([type=radio]),.form-card textarea,.form-card select{width:100%;max-width:100%;border:1px solid #cabfb3;border-radius:11px;background:#fdfbf8;color:var(--ink);padding:12px;font-size:16px;min-height:48px}.form-card textarea{resize:vertical}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:2px solid #8c7359;outline-offset:2px}.form-card .optional{display:inline;font-size:11px;color:var(--muted)}.form-card .checkbox-line{display:grid;grid-template-columns:20px 1fr;align-items:start;font-size:12px;line-height:1.7;gap:10px}.checkbox-line input{width:18px;height:18px;margin:3px 0;accent-color:#51412f}.checkbox-line a{text-decoration:underline;text-underline-offset:3px}.rating-field legend{font-size:13px;margin-bottom:7px}.rating-options{display:flex;gap:7px;margin-bottom:5px}.rating-choice{position:relative;cursor:pointer}.rating-choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.rating-choice>span[aria-hidden]{display:grid;place-items:center;border-radius:10px;width:46px;height:46px;background:#f6f1e9;color:#81766b;font-size:29px;border:1px solid #cdbfae}.rating-choice.selected>span[aria-hidden]{color:#8d5f24;background:#f8eddc;border-color:#b38854}.rating-choice input:focus-visible+span{outline:3px solid #886642;outline-offset:3px}.form-error,.form-success{padding:15px;border-radius:12px;font-size:14px;line-height:1.65;margin:18px 0 0}.form-error{background:#fceee9;color:#813b29;border:1px solid #d4a89a}.form-success{background:#eaf0e6;color:#314e2c;border:1px solid #b0c5a5}.photo-caption{font-size:11px;color:var(--muted);text-align:right;margin-top:12px}.availability-note{border:1px solid var(--line);padding:35px;border-radius:25px;background:var(--paper-2)}.availability-note>svg{color:#6d775f;margin-bottom:20px}.availability-note h3{font-family:Playfair Display,Georgia,serif;font-size:29px;font-weight:500}.availability-note p{font-size:14px;line-height:1.8;color:var(--muted)}.faq-section{padding-top:20px;padding-bottom:65px}.faq{max-width:950px}.faq details{border-bottom:1px solid #d7cfc6;padding:20px 0}summary{cursor:pointer;line-height:1.6}.faq summary{font-size:17px;min-height:30px}.faq p{color:var(--muted);line-height:1.8;font-size:14px;max-width:790px;padding:15px 20px 0;margin:0}.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.contact-intro{padding-top:25px}.contact-intro h2{font-size:clamp(36px,4vw,55px);line-height:1.1}.contact-intro p{font-size:15px;line-height:1.8;color:var(--muted)}.contact-intro .small-copy{font-size:12px;margin-top:35px}.contact-location{font-size:14px;margin-top:25px}.estimate-attached{background:#f3eee6;border:1px solid var(--line);border-radius:12px;padding:15px;font-size:12px;line-height:1.8}.estimate-attached p{margin:5px 0}.privacy-section{padding-top:25px;padding-bottom:45px;font-size:13px}.privacy-section summary{color:#554a3e}.privacy-copy{max-width:820px;line-height:1.8;padding:25px 0;color:var(--muted)}.privacy-copy h2{font-size:28px;color:var(--ink)}.privacy-copy h3{font-size:16px;color:var(--ink);margin-top:25px}.estimate-card .eyebrow{color:#cabfb2}.calculator-form select{font-size:16px}.service-meta{color:#685f56}@media(max-width:1100px){.nav{gap:12px}.nav nav{gap:16px}.nav-cta{padding:0 15px}.hero,.about{gap:35px}.about-copy{padding-right:25px}.review-layout,.contact-section{gap:35px}}@media(max-width:900px){.menu-toggle{display:grid;place-items:center;margin-left:auto}.nav nav{display:none;position:absolute;z-index:20;top:74px;left:0;right:0;background:#fff;border:1px solid var(--line);padding:15px;border-radius:18px;box-shadow:0 15px 30px #1f1b1614}.nav nav.is-open{display:flex;flex-direction:column;gap:0}.nav nav a{padding:12px;font-size:15px}.review-layout,.contact-section{grid-template-columns:1fr;gap:25px}.review-invitation{padding:0}.review-invitation h3{max-width:none}.review-layout{max-width:700px;margin:30px auto 0}.how-grid{gap:25px}.contact-intro{padding-top:0}.contact-intro .small-copy{margin-top:20px}}@media(max-width:600px){.brand{font-size:16px}.hero h1{font-size:44px}.hero-review-link{font-size:12px}.hero-visual{height:400px}.floating-card{padding:11px 12px}.how-grid{grid-template-columns:1fr;gap:20px}.how-section{padding-bottom:30px}.review-layout{gap:25px}.form-card{padding:23px 18px}.form-card h3{font-size:27px}.rating-options{gap:5px}.rating-choice>span[aria-hidden]{width:42px;height:42px}.review-invitation h3{font-size:31px}.about{gap:0}.about h2{font-size:38px}.service-card{min-height:375px}.availability-note{padding:25px}.faq-section{padding-top:10px}.contact-section{padding-top:40px}.privacy-section{padding-top:20px;padding-bottom:30px}.cta{padding:55px 20px}.cta h2{font-size:39px}.option-row{grid-template-columns:auto 1fr}.option-row small{grid-column:2}.estimate-price{font-size:46px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
