:root{font-family:Georgia,Times New Roman,serif;color:#4b2d20;background:#f6efe4;--brown: #5a2f20;--brown-soft: #694c3c;--green: #9db359;--green-dark: #7d8b45;--olive: #68813a;--cream: #f8f2e8;--cream-2: #fff9ef;--border: #d9cdbb;--shadow: 0 10px 24px rgba(96, 74, 48, .08)}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;min-width:320px;background:#f8f2e8f2;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-page{min-height:100vh;position:relative;background:#f8f2e8f2;color:#4b2d20;zoom:.9;isolation:isolate;--bg-parallax-offset: 0px;overflow:clip}.site-page:before{content:"";position:absolute;top:-48px;right:0;bottom:-48px;left:0;z-index:-1;opacity:0;pointer-events:none;background:linear-gradient(#f6efe42e,#f6efe42e),url(/images/site-background.png) center top / cover no-repeat;transform:translateY(calc(var(--bg-parallax-offset) * .42));will-change:transform,opacity}.site-page.site-page-intro-active:before{animation:pageBgFade 1.2s ease-out .42s forwards}.site-page.site-page-reveal-complete:before{opacity:1}.splash-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#f8f2e8;opacity:1;transition:opacity .5s ease}.splash-screen-hidden{opacity:0;pointer-events:none}.splash-logo{width:min(82vw,700px);object-fit:contain;animation:splashPop .9s ease-out both;filter:drop-shadow(0 18px 30px rgba(72,48,28,.22))}.site-frame{width:100%;max-width:none;padding:0}.site-window{overflow-x:clip;background:transparent;min-height:100vh;position:relative;z-index:0;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 40px 10px;border-bottom:1px solid #d9cbb5;background:#f8f2e8f2;position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transform:translateY(-24px)}.service-area-banner{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 24px;background:#743425eb;color:#fff8ef;font-family:Trebuchet MS,Arial,sans-serif;font-size:16px;font-weight:700;text-align:center;position:sticky;top:0;z-index:29}.service-area-banner-close{border:1px solid rgba(255,248,239,.58);border-radius:999px;background:#fff8ef24;color:inherit;font:inherit;padding:6px 14px;cursor:pointer}.site-page-intro-active .site-header{animation:navDropIn .7s cubic-bezier(.2,.8,.2,1) 40ms forwards}.site-page-reveal-complete .site-header{opacity:1;transform:translateY(0)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:88px;height:88px;object-fit:contain;object-position:center;transform:none}.brand-copy{line-height:.95}.brand-title{font-size:38px;font-weight:900;letter-spacing:-.03em;color:#4f281c}.brand-subtitle{margin-top:6px;font-family:Trebuchet MS,Arial,sans-serif;font-size:14px;font-weight:800;letter-spacing:.28em;color:#7d9b49}.brand-subtitle:before,.brand-subtitle:after{content:"✲";margin:0 8px}.site-nav{display:flex;align-items:center;gap:36px;font-family:Trebuchet MS,Arial,sans-serif;font-size:18px;font-weight:600;color:#5d3a2b}.site-nav a{transition:opacity .16s ease}.site-nav a:hover{opacity:.7}.nav-link-button{border:none;background:transparent;padding:0;color:inherit;font:inherit;cursor:pointer;transition:opacity .16s ease}.nav-link-button:hover{opacity:.7}.pill-button{display:inline-block;border:2px solid #8c7b40;border-radius:999px;background:var(--green);padding:14px 40px;color:#fff;font-family:Trebuchet MS,Arial,sans-serif;font-size:18px;font-weight:700;box-shadow:0 4px 0 var(--green-dark);transition:transform .16s ease,box-shadow .16s ease}.pill-button:hover{transform:translateY(1px);box-shadow:0 2px 0 var(--green-dark)}.pill-button-secondary{background:#fffaf2eb;color:var(--brown);box-shadow:0 4px #8c7b408c}.pill-button-small{padding:10px 24px;margin-bottom:2px}.site-main{overflow-x:clip;flex:1;display:flex;flex-direction:column}.site-main-transition{transition:opacity .36s ease,transform .36s ease,filter .36s ease;will-change:opacity,transform}.page-view{min-height:100%}.page-view-enter{opacity:0;transform:translateY(10px);filter:blur(1px);animation:pageViewFadeIn .56s ease-out forwards}.site-main-transition-out{opacity:0;transform:translateY(10px);filter:blur(1px)}.hero-section{position:relative;min-height:auto;padding:8px 40px 2px;background:transparent;display:flex;flex-direction:column}.hero-top-sign,.hero-banner{position:relative;z-index:1}.hero-top-sign{width:min(1380px,100%);margin:0 auto;display:flex;justify-content:center}.hero-top-sign-image{width:min(100%,1120px);object-fit:contain;filter:drop-shadow(0 14px 24px rgba(88,62,42,.16));opacity:0}.site-page-intro-active .hero-top-sign-image{animation:signFadeIn .9s ease-out 1.5s forwards}.site-page-reveal-complete .hero-top-sign-image{opacity:1;transform:translateY(0) scale(1)}.hero-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent}.hero-banner{max-width:1120px;margin:0 auto;padding:0;text-align:center;width:100%;opacity:0;transform:translateY(28px)}.site-page-intro-active .hero-banner{animation:cardRiseIn .8s cubic-bezier(.2,.8,.2,1) .95s forwards}.site-page-reveal-complete .hero-banner{opacity:1;transform:translateY(0)}.hero-banner h1{margin:0;color:#542c1e;font-size:clamp(34px,4.2vw,58px);line-height:1.03;font-weight:900;text-shadow:0 2px 0 rgba(255,248,236,.55)}.hero-banner .pill-button{margin-top:18px;margin-bottom:28px}.about-section{position:relative;padding:0 40px 18px;background:transparent}.section-heading{text-align:center}.section-card{width:min(1480px,calc(100% - 8px));margin:0 auto;padding:32px 32px 36px;border:1px solid rgba(185,163,125,.55);border-radius:34px;background:#faf4e8f0;box-shadow:0 14px 32px #604a301f;opacity:0;transform:translateY(28px)}.site-page-intro-active .section-card{animation:cardRiseIn .8s cubic-bezier(.2,.8,.2,1) 1.05s forwards}.site-page-reveal-complete .section-card{opacity:1;transform:translateY(0)}.section-kicker{color:#6b3726;font-size:24px;font-weight:900}.section-kicker:before,.section-kicker:after{content:"🐾";margin:0 10px}.section-rule{width:160px;height:3px;margin:12px auto 0;border-radius:999px;background:#d6c067}.about-grid{display:grid;gap:28px;align-items:center;grid-template-columns:1.08fr 1.02fr .9fr;margin-top:42px}.about-illustration-card{overflow:visible;border-radius:0;width:600px;background:transparent;box-shadow:none}.about-illustration-card img{width:100%;object-fit:cover;filter:drop-shadow(0 10px 20px rgba(96,74,48,.08))}.about-copy{padding:0 10px}.about-copy h2{margin:0;color:var(--brown);font-size:clamp(36px,4.3vw,56px);line-height:1.05;font-weight:900}.about-copy p{margin:20px 0 0;color:var(--brown-soft);font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(18px,2vw,24px);line-height:1.58}.about-copy-expand{display:grid;grid-template-rows:0fr;transition:grid-template-rows .36s ease,opacity .26s ease;opacity:0}.about-copy-expand-open{grid-template-rows:1fr;opacity:1}.about-copy-extra{overflow:hidden;margin-top:0;animation:aboutExtraFadeIn .26s ease-out both}.about-copy .pill-button{margin-top:30px}.about-photo-card{display:flex;align-items:center;justify-content:center}.about-photo-sticker{width:100%;max-width:320px;margin:0 auto;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(96,74,48,.12))}.services-section{position:relative;padding:0 40px 18px;background:transparent}.services-section .section-heading p{margin:16px 0 0;color:var(--olive);font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(20px,2.4vw,30px);font-weight:600}.service-grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:44px}.services-content{min-height:540px;transition:min-height .42s cubic-bezier(.2,.8,.2,1)}.services-content-idle,.services-content-in{min-height:620px}.services-overview-wrap,.service-detail-inline-wrap{transition:opacity .24s ease,transform .38s cubic-bezier(.2,.8,.2,1),filter .32s ease}.services-content-out .services-overview-wrap,.services-content-out .service-detail-inline-wrap{opacity:0;transform:translateY(18px) scale(.985);filter:blur(1px)}.services-content-in .services-overview-wrap,.services-content-in .service-detail-inline-wrap{opacity:0;transform:translateY(28px) scale(.975);filter:blur(2px);animation:servicePanelIn .46s cubic-bezier(.2,.8,.2,1) forwards}.service-card{overflow:hidden;border:1px solid #dfd3c2;border-radius:26px;background:linear-gradient(#fffaf2f5,#fffaf2f5),url(/images/flower-frame-background.png) center / 100% 100% no-repeat;box-shadow:var(--shadow);transition:transform .16s ease}.service-card:hover{transform:translateY(-4px)}.service-card-interactive{cursor:pointer}.service-card-interactive:focus-visible{outline:3px solid rgba(149,172,85,.65);outline-offset:4px}.service-image-wrap{padding:16px 16px 0}.service-image-wrap img{width:100%;aspect-ratio:1.12 / 1;border-radius:22px;object-fit:cover}.service-body{padding:20px 24px 28px;text-align:center}.service-body h3{margin:0;color:#5b2f20;font-size:clamp(26px,2.6vw,34px);font-weight:900}.service-body p{margin:12px 0 0;color:#6f5547;font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(17px,1.7vw,21px);line-height:1.45}.section-actions{margin-top:40px;text-align:center}.service-detail-inline-wrap{margin-top:42px}.gallery-section{padding:56px 40px;background:linear-gradient(#ecf4e2f5,#ecf4e2f5),url(/images/meadow-arch-background.png) center / cover no-repeat}.gallery-grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-card{overflow:hidden;border:1px solid var(--border);border-radius:24px;background:var(--cream-2);box-shadow:0 8px 20px #604a3012}.gallery-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.contact-section{position:relative;padding:0 40px;text-align:center;background:transparent;margin-top:auto;display:flex;flex-direction:column;justify-content:flex-end}.contact-panel{position:relative;z-index:1;width:min(1480px,calc(100% - 8px));max-width:1480px;margin:0 auto -18px;min-height:620px;padding:142px 56px 58px;border:none;border-radius:0;background:url(/images/meadow-arch-background.png) center center / 100% 100% no-repeat;box-shadow:none;opacity:0;transform:translateY(28px)}.site-page-intro-active .contact-panel{animation:cardRiseIn .8s cubic-bezier(.2,.8,.2,1) 1.15s forwards}.site-page-reveal-complete .contact-panel{opacity:1;transform:translateY(0)}.contact-panel h2{margin:36px auto 0;color:var(--brown);font-size:clamp(34px,3.6vw,52px);font-weight:900;line-height:1.04;max-width:860px}.contact-panel .pill-button{margin-top:28px}.contact-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:28px;overflow-y:auto;background:#4d301f6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-overflow-scrolling:touch;animation:modalBackdropFadeIn .26s ease-out both}.contact-modal-backdrop.contact-modal-backdrop-closing{animation:modalBackdropFadeOut .26s ease-in both}.contact-modal{position:relative;width:min(100%,980px);max-height:min(92vh,920px);overflow:auto;border:1px solid rgba(185,163,125,.6);border-radius:34px;background:#faf4e8fa;box-shadow:0 24px 60px #48312038;padding:34px 34px 30px;animation:modalPanelFadeIn .26s cubic-bezier(.2,.8,.2,1) both}.contact-modal.contact-modal-closing{animation:modalPanelFadeOut .26s ease-in both}.contact-modal h3{margin:0 40px 10px 0;color:var(--brown);font-size:clamp(30px,3vw,42px);line-height:1.05}.contact-modal-warning{margin-top:18px;border:1px solid rgba(185,131,73,.45);border-radius:18px;background:#fff5dcd1;color:#74452e;font-family:Trebuchet MS,Arial,sans-serif;font-size:16px;font-weight:700;line-height:1.5;padding:14px 16px}.contact-modal-message{padding:14px 4px 4px;text-align:center}.contact-modal-message p{margin:18px 0 0;color:var(--brown-soft);font-family:Trebuchet MS,Arial,sans-serif;font-size:20px;line-height:1.55}.about-modal-message{text-align:left}.about-modal-message p{font-size:19px}.contact-modal-close{position:absolute;top:18px;right:18px;border:none;background:transparent;color:#6b3726;font-size:36px;line-height:1;cursor:pointer}.contact-form{width:min(100%,920px);margin:24px auto 0}.contact-form-grid{display:grid;gap:18px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-grid>*{min-width:0}.contact-field{display:flex;flex-direction:column;gap:10px;text-align:left;min-width:0}.contact-field span{color:#6a4634;font-family:Trebuchet MS,Arial,sans-serif;font-size:17px;font-weight:700}.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-width:0;border:1px solid rgba(159,136,98,.75);border-radius:18px;background:#fffbf3e6;padding:14px 16px;color:#563325;font-family:Trebuchet MS,Arial,sans-serif;font-size:17px;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.contact-field textarea{min-height:126px;resize:vertical}.contact-date-input{display:block;inline-size:100%;width:100%;max-width:100%;min-width:0;font-size:16px;padding-right:10px;overflow:hidden;-moz-appearance:none;appearance:none;-webkit-appearance:none}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#95ac55;box-shadow:0 0 0 4px #9db3592e;background:#fffbf3fa}.contact-field-full{margin-top:18px}.contact-form-actions{margin-top:26px;display:flex;flex-direction:column;align-items:center;gap:16px}.contact-form-actions .pill-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;margin:0}.contact-form-actions .pill-button:disabled{cursor:wait;opacity:.78}.contact-form-message{margin:0;max-width:620px;font-family:Trebuchet MS,Arial,sans-serif;font-size:18px;font-weight:700;line-height:1.45}.contact-form-message-success{color:#4f6d1f}.contact-form-message-error{color:#8a3a2a}.contact-meta{margin-top:18px;color:#64493a;font-family:Trebuchet MS,Arial,sans-serif;font-size:28px}.contact-meta p{margin:8px 0}.services-page-shell{padding:24px 40px 40px}.services-page-hero{opacity:1;transform:none;animation:none}.services-page-actions{margin-top:26px;display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.service-detail-list{width:min(1480px,calc(100% - 8px));margin:24px auto 0;display:grid;gap:22px}.service-detail-card{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:28px;align-items:center;scroll-margin-top:180px;padding:28px;border:1px solid rgba(185,163,125,.55);border-radius:34px;background:#faf4e8f2;box-shadow:0 14px 32px #604a301f;opacity:1;transform:none;animation:none}.service-detail-image img{width:100%;border-radius:28px;object-fit:cover;box-shadow:0 10px 24px #604a301f}.service-detail-copy h2{margin:10px 0 0;color:var(--brown);font-size:clamp(34px,4vw,50px);line-height:1.04}.service-detail-copy p{margin:16px 0 0;color:var(--brown-soft);font-family:Trebuchet MS,Arial,sans-serif;font-size:clamp(18px,2vw,24px);line-height:1.6}.service-detail-highlights{margin:20px 0 0;padding-left:22px;color:#5d3a2b;font-family:Trebuchet MS,Arial,sans-serif;font-size:19px;line-height:1.7}.service-detail-copy .pill-button{margin-top:22px}.service-detail-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.page-corner-sticker{position:absolute;right:132px;bottom:32px;width:15vw;z-index:2;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(96,74,48,.14));pointer-events:none}@keyframes servicePanelIn{0%{opacity:0;transform:translateY(28px) scale(.975);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes signFadeIn{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes navDropIn{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes pageBgFade{0%{opacity:0}to{opacity:1}}@keyframes cardRiseIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes splashPop{0%{opacity:0;transform:scale(.86)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalBackdropFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalPanelFadeIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalPanelFadeOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.99)}}@keyframes modalPanelFadeInMobile{0%{opacity:0}to{opacity:1}}@keyframes modalPanelFadeOutMobile{0%{opacity:1}to{opacity:0}}@keyframes pageViewFadeIn{0%{opacity:0;transform:translateY(10px);filter:blur(1px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes aboutExtraFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1080px){.site-header{flex-wrap:wrap;justify-content:center}.site-nav{order:3;flex-wrap:wrap;justify-content:center;gap:20px 28px}.about-grid,.service-grid,.service-detail-card{grid-template-columns:1fr}.hero-section{min-height:auto}.about-illustration-card{width:min(100%,520px);margin:0 auto}.about-photo-sticker{max-width:260px}.about-copy{text-align:center}.service-detail-image{max-width:520px;margin:0 auto}}@media (max-width: 760px){.site-page:before{top:-48px;right:0;bottom:-160px;left:0;background:linear-gradient(#f6efe42e,#f6efe42e),url(/images/site-background.png) center top / cover no-repeat;transform:translateY(calc(var(--bg-parallax-offset) * .34))}.site-frame{padding:0}.site-header,.services-page-shell,.hero-section,.about-section,.services-section,.contact-section{padding-left:18px;padding-right:18px}.site-header{padding-top:10px;padding-bottom:10px;gap:14px;position:relative;top:auto}.service-area-banner{flex-direction:column;gap:10px;padding:12px 18px}.brand-title{font-size:24px}.brand-subtitle{font-size:11px;letter-spacing:.18em}.pill-button{padding:12px 26px}.hero-banner{padding:0}.hero-banner h1,.about-copy h2,.contact-panel h2{font-size:34px}.hero-top-sign-image{width:min(100%,560px)}.section-card,.contact-panel{padding:24px 18px;border-radius:24px}.contact-panel{border-radius:0;min-height:500px;padding:94px 18px 40px}.about-grid{gap:18px;margin-top:28px}.about-illustration-card{width:min(100%,360px)}.about-photo-sticker{max-width:190px}.contact-modal-backdrop{padding:16px;align-items:flex-start}.contact-modal{width:min(100%,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin-top:0;overflow-x:hidden;padding:24px 18px 22px;border-radius:24px;animation:modalPanelFadeInMobile .22s ease-out both}.contact-modal.contact-modal-closing{animation:modalPanelFadeOutMobile .22s ease-in both}.page-corner-sticker{width:88px;right:16px;bottom:14px}.service-detail-card{padding:20px 18px 22px;border-radius:24px}.service-detail-copy,.service-detail-copy .section-kicker{text-align:center}.service-detail-highlights{margin-top:16px;padding-left:20px;text-align:left}.about-copy p,.services-section .section-heading p,.service-body p,.contact-meta{font-size:20px}.contact-form-grid{grid-template-columns:1fr}.contact-date-input{width:100%;max-width:100%;min-width:0}.service-body h3{font-size:28px}}@media (max-width: 520px){.site-page{zoom:1}.brand{gap:10px}.brand img{width:64px;height:64px;transform:none}.brand-title{font-size:20px}.brand-subtitle{font-size:10px;letter-spacing:.12em}.site-nav{gap:14px 18px;font-size:15px}.pill-button{padding:11px 22px;font-size:16px}.hero-section{padding-top:4px}.hero-top-sign{width:100%}.hero-top-sign-image{width:min(100%,430px)}.hero-banner h1{font-size:24px;white-space:normal}.section-card{padding:22px 14px 24px}.section-kicker{font-size:20px}.about-illustration-card{width:min(100%,300px)}.about-photo-sticker{max-width:150px}.contact-panel{min-height:170px;padding:28px 16px 12px}.contact-panel h2{font-size:18px;max-width:220px;margin-top:10px}.contact-panel .pill-button{margin-top:10px;padding:7px 16px;font-size:13px}.contact-date-input{width:100%;max-width:100%;font-size:15px;padding-left:12px;padding-right:8px}.page-corner-sticker{width:42px;right:6px;bottom:4px}}
