@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,opsz,wght@1,9..144,600&display=swap";.booking-page{background:#f8f5ee;grid-template-columns:minmax(340px,42%) 1fr;min-height:100vh;display:grid}.booking-summary{color:#fff;background:#274d3f;flex-direction:column;height:100vh;padding:42px clamp(30px,5vw,75px);display:flex;position:sticky;top:0}.booking-summary .brand{align-self:flex-start}.booking-summary .brand-mark{color:#274d3f;background:#f8f5ee}.booking-summary .back-link{color:#c9d7d0;align-items:center;gap:8px;margin-top:55px;font-size:13px;display:flex}.summary-content{margin:auto 0}.summary-content .section-kicker{color:#d7e99a}.summary-content h1{margin:18px 0 25px;font-size:clamp(48px,5vw,76px)}.summary-content>p{color:#c9d7d0;max-width:500px;line-height:1.75}.summary-price{border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;justify-content:space-between;align-items:center;margin-top:35px;padding:25px 0;display:flex}.summary-price span{align-items:center;gap:9px;font-size:13px;display:flex}.summary-price svg{width:18px}.summary-price strong{font-size:27px}.summary-price small{color:#c9d7d0;font-size:11px;font-weight:500}.reassurance{align-items:center;gap:13px;margin-top:30px;display:flex}.reassurance>svg{color:#d7e99a}.reassurance span{flex-direction:column;font-size:13px;display:flex}.reassurance small{color:#afc2b8;margin-top:4px}.booking-form-panel{width:100%;max-width:950px;margin:0 auto;padding:70px clamp(28px,7vw,100px)}.form-heading{margin-bottom:50px}.form-heading h2{margin:14px 0 16px;font-size:clamp(38px,4vw,54px)}.form-heading>p:last-child{color:#68756f;max-width:660px;line-height:1.7}.service-booking-form fieldset{border:0;margin:0 0 42px;padding:0}.service-booking-form legend{border-bottom:1px solid #d7ddd8;width:100%;margin-bottom:22px;padding-bottom:12px;font-size:17px;font-weight:700}.form-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.form-grid label:first-child:nth-last-child(3){grid-column:1/-1}.service-booking-form label{flex-direction:column;gap:8px;font-size:12px;font-weight:700;display:flex}.service-booking-form input,.service-booking-form select,.service-booking-form textarea{font:inherit;color:#23362f;background:#fff;border:1px solid #d2d9d3;border-radius:11px;outline:none;padding:13px 14px}.service-booking-form input:focus,.service-booking-form select:focus,.service-booking-form textarea:focus{border-color:#e66d42;box-shadow:0 0 0 3px #e66d4218}.details-grid .wide{grid-column:1/-1}.booking-submit{border-radius:10px;padding:16px 28px}.booking-status{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:30px;display:flex}.booking-status>svg{color:#e66d42;width:55px;height:55px}.booking-success{text-align:center;max-width:620px;margin:15vh auto}.booking-success>span{background:#d7e99a;border-radius:50%;place-items:center;width:70px;height:70px;margin:0 auto 28px;display:grid}.booking-success h2{font-size:52px}.booking-success>p:not(.section-kicker){color:#68756f;margin-bottom:30px;line-height:1.7}@media (width<=850px){.booking-page{grid-template-columns:1fr}.booking-summary{height:auto;min-height:530px;position:relative}.booking-summary .back-link{margin-top:35px}.summary-content{margin:70px 0 20px}.booking-form-panel{padding-top:55px}}@media (width<=560px){.booking-summary{min-height:500px;padding:28px 22px}.summary-content h1{font-size:48px}.booking-form-panel{padding:45px 22px}.form-grid{grid-template-columns:1fr}.form-grid label:first-child:nth-last-child(3),.details-grid .wide{grid-column:1}.summary-price{align-items:flex-start;gap:16px}.summary-price strong{font-size:22px}.booking-success h2{font-size:40px}}.service-booking-form legend small{color:#75817b;margin-top:6px;font-size:11px;font-weight:500;display:block}.walk-animal-list{gap:13px;display:grid}.walk-animal-card{background:#fff;border:1px solid #d8dfd9;border-radius:13px;padding:18px}.walk-card-head{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.walk-card-head>span{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.walk-card-head svg{width:18px}.walk-card-head button{color:#9b5846;background:#f3eee9;border:0;border-radius:50%;place-items:center;width:31px;height:31px;display:grid}.walk-card-head button svg{width:15px}.walk-animal-card>small{color:#688155;background:#edf3dc;border-radius:6px;width:max-content;margin-top:12px;padding:6px 9px;display:block}.add-animal-button{color:#274d3f;background:0 0;border:1px dashed #aebbb2;border-radius:10px;align-items:center;gap:8px;margin-top:14px;padding:12px 16px;font-weight:700;display:flex}.add-animal-button svg{width:17px}.walk-animal-card .form-grid{grid-template-columns:repeat(3,1fr)}@media (width<=700px){.walk-animal-card .form-grid{grid-template-columns:1fr}}.walk-price-recap{background:#edf3dc;border:1px solid #d2dfad;border-radius:11px;align-self:end;gap:7px;padding:13px 15px;display:grid}.walk-price-recap>div{color:#667267;justify-content:space-between;gap:20px;font-size:11px;display:flex}.walk-price-recap b{color:#435148}.walk-price-recap .walk-price-total{color:#274d3f;border-top:1px solid #ccd8af;align-items:center;margin-top:3px;padding-top:9px;font-size:13px;font-weight:700}.walk-price-total strong{color:#e66d42;font-size:22px}@media (width<=700px){.walk-price-recap{grid-column:1}}.animal-behaviour-grid{gap:13px;display:grid}.animal-behaviour-grid article{background:#fff;border:1px solid #d8dfd9;border-radius:13px;padding:18px}.animal-behaviour-grid h3{align-items:center;gap:8px;margin-bottom:17px;font-size:15px;display:flex}.animal-behaviour-grid h3 svg{width:18px}.reactivity-row{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}@media (width<=560px){.reactivity-row{grid-template-columns:1fr}}.inline-dog-behaviour{border-top:1px solid #e0e4e0;margin-top:18px;padding-top:18px}.inline-dog-behaviour textarea,.inline-dog-behaviour select{background:#fff}.inline-dog-behaviour+.walk-animal-card>small{margin-top:14px}.payment-note{border-left:3px solid #e66d42;align-self:center;padding:18px 20px}.payment-note b{color:#274d3f;margin-bottom:7px;font-size:13px;display:block}.payment-note p{color:#69766f;margin:0;font-size:12px;line-height:1.6}@media (width<=700px){.payment-note{border-top:2px solid #e66d42;border-left:0;grid-column:1;padding-left:0}}.package-account-notice{background:#fff5e9;border:1px solid #efd4b6;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.package-account-notice>svg{color:#e66d42;flex:none;width:22px}.package-account-notice b{font-size:13px}.package-account-notice p{color:#716d67;margin:5px 0 0;font-size:12px;line-height:1.55}.package-planning-note{background:#edf3dc;border-radius:12px;border:1px solid #d2dfad!important;padding:20px!important}.package-planning-note legend{border:0!important;margin:0 0 8px!important;padding:0!important}.package-planning-note p{color:#657168;margin:0;font-size:13px;line-height:1.65}.category-warning-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#183028b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.category-warning-modal{text-align:center;background:#f8f5ee;border-radius:20px;width:min(560px,100%);padding:42px;position:relative;box-shadow:0 25px 80px #0004}.category-warning-close{background:#ebece7;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:18px;right:18px}.category-warning-icon{color:#bd5637;background:#f4d9cf;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto 22px;display:grid}.category-warning-modal h2{margin:12px 0 18px;font-size:35px}.category-warning-modal>p:not(.section-kicker){color:#68756f;margin-bottom:25px;line-height:1.7}.category-warning-modal .primary{margin:auto}@media (width<=560px){.category-warning-modal{padding:38px 22px}.category-warning-modal h2{font-size:29px}}.auth-page{grid-template-columns:44% 1fr;min-height:100vh;display:grid}.auth-brand-panel{color:#fff;background:#274d3f;flex-direction:column;padding:45px clamp(30px,6vw,80px);display:flex}.auth-brand-panel .brand{align-self:flex-start}.auth-brand-panel .brand-mark{color:#274d3f;background:#f8f5ee}.auth-brand-panel>div{margin:auto 0}.auth-brand-panel .section-kicker{color:#d7e99a}.auth-brand-panel h1{font-size:clamp(48px,5vw,72px)}.auth-brand-panel p:last-child{color:#c1d0c8;line-height:1.7}.auth-form-panel{padding:45px clamp(25px,8vw,110px)}.auth-form-panel>.back-link{align-items:center;gap:8px;font-size:13px;display:flex}.auth-box{max-width:560px;margin:10vh auto}.auth-box h2{font-size:46px}.auth-box form,.auth-box label{flex-direction:column;display:flex}.auth-box form{gap:17px}.auth-box label{gap:7px;font-size:12px;font-weight:700}.auth-box label span,.auth-box form>small{color:#7d8883;font-weight:400}.auth-box input{font:inherit;border:1px solid #d3dad4;border-radius:10px;padding:14px}.auth-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.auth-box .primary{border-radius:10px;justify-content:center;margin-top:10px}.auth-switch{text-align:center;color:#748079;margin-top:28px;font-size:13px}.auth-switch a{color:#e66d42;font-weight:700}.account-page{min-height:100vh}.account-header{border-bottom:1px solid #dce0dc;justify-content:space-between;align-items:center;height:85px;padding:0 clamp(24px,7vw,100px);display:flex}.account-header button{color:#68756f;background:0 0;border:0;gap:8px;display:flex}.account-content{max-width:1100px;margin:auto;padding:45px 25px 100px}.account-content>.back-link{align-items:center;gap:8px;font-size:13px;display:flex}.account-welcome{margin:65px 0}.account-welcome h1{margin-bottom:15px;font-size:62px}.account-welcome>p:last-child{color:#6d7973}.account-section-title{border-bottom:1px solid #d7ddd8;justify-content:space-between;align-items:center;padding-bottom:20px;display:flex}.account-section-title h2{margin:0;font-size:30px}.booking-list{gap:14px;margin-top:25px;display:grid}.booking-list article{background:#fff;border:1px solid #dde1dd;border-radius:14px;align-items:center;gap:18px;padding:22px;display:flex}.booking-icon{color:#274d3f;background:#edf3dc;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.booking-list h3{margin:7px 0 5px}.booking-list p{color:#6d7973;margin:0;font-size:13px}.booking-status-pill{text-transform:uppercase;letter-spacing:.08em;color:#795717;background:#f4deb0;border-radius:99px;padding:5px 8px;font-size:10px}.empty-bookings{text-align:center;background:#fff;border:1px dashed #cbd3cc;border-radius:16px;margin-top:25px;padding:70px 20px}.empty-bookings>svg{color:#e66d42;width:42px;height:42px}@media (width<=760px){.auth-page{grid-template-columns:1fr}.auth-brand-panel{min-height:390px}.auth-form-panel{padding-top:30px}.auth-box{margin:60px auto}.auth-row{grid-template-columns:1fr}.account-welcome h1{font-size:48px}.account-section-title{flex-direction:column;align-items:flex-start;gap:20px}}.pet-form{background:#fff;border:1px solid #dce1dc;border-radius:16px;margin:24px 0 30px;padding:28px}.pet-form label{flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.pet-form label span{color:#7d8883;font-weight:400}.pet-form input,.pet-form select,.pet-form textarea,.saved-pet-choice select{font:inherit;background:#fff;border:1px solid #d3dad4;border-radius:9px;padding:12px 13px}.pet-form .wide{grid-column:1/-1}.pet-form>.primary{border-radius:9px;margin-top:20px}.pet-list{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px;display:grid}.pet-list article{background:#fff;border:1px solid #dde1dd;border-radius:14px;align-items:center;gap:15px;padding:20px;display:flex}.pet-avatar{color:#274d3f;background:#edf3dc;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.pet-list h3{margin:0 0 4px}.pet-list p,.pet-list small{color:#6d7973;margin:0}.pet-list small{margin-top:5px;display:block}.pet-list article>button{color:#a06658;background:0 0;border:0;margin-left:auto}.bookings-heading{margin-top:70px}.saved-pet-choice{flex-direction:column;gap:8px;max-width:420px;margin-bottom:20px;font-size:12px;font-weight:700;display:flex}@media (width<=650px){.pet-list,.pet-form .form-grid{grid-template-columns:1fr}.pet-form .wide{grid-column:1}}.dashboard{background:#f8f5ee;grid-template-columns:280px 1fr;min-height:100vh;display:grid}.dashboard-sidebar{color:#fff;background:#274d3f;flex-direction:column;height:100vh;padding:32px 22px;display:flex;position:sticky;top:0}.dashboard-sidebar .brand{padding:0 10px}.dashboard-sidebar .brand-mark{color:#274d3f;background:#f8f5ee}.dashboard-sidebar nav{flex-direction:column;gap:7px;margin-top:65px;display:flex}.dashboard-sidebar nav button,.logout-button{color:#bed0c6;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:13px 15px;display:flex}.dashboard-sidebar nav button svg,.logout-button svg{width:19px}.dashboard-sidebar nav button.active,.dashboard-sidebar nav button:hover{color:#fff;background:#ffffff14}.sidebar-user{border-top:1px solid #ffffff1f;align-items:center;gap:11px;margin-top:auto;padding:24px 8px 15px;display:flex}.sidebar-user>span{color:#274d3f;background:#d7e99a;border-radius:50%;place-items:center;width:39px;height:39px;font-weight:700;display:grid}.sidebar-user div{flex-direction:column;min-width:0;font-size:12px;display:flex}.sidebar-user small{color:#a9bdb2;text-overflow:ellipsis;margin-top:3px;overflow:hidden}.logout-button{width:100%}.dashboard-main{padding:65px clamp(30px,6vw,90px)}.dashboard-view{max-width:1050px;margin:auto}.view-heading{border-bottom:1px solid #d4dcd5;justify-content:space-between;align-items:flex-end;margin-bottom:30px;padding-bottom:30px;display:flex}.view-heading h1{margin:12px 0;font-size:55px}.view-heading>div>p:last-child{color:#6c7972}.view-heading .primary svg{width:17px}.success-banner,.error-banner{border-radius:10px;max-width:1050px;margin:0 auto 22px;padding:14px 18px;font-size:13px}.success-banner{color:#375124;background:#e2edc3}.error-banner{color:#8b3527;background:#f8ddd5}.account-settings{grid-template-columns:1fr 1fr;gap:22px;display:grid}.account-settings article{background:#fff;border:1px solid #dce2dc;border-radius:16px;padding:28px}.settings-title{gap:14px;display:flex}.settings-title>svg{color:#274d3f;background:#edf3dc;border-radius:50%;width:45px;height:45px;padding:10px}.settings-title h2{margin:0 0 5px;font-size:22px}.settings-title p{color:#75817b;font-size:12px}.account-settings form{flex-direction:column;gap:15px;margin-top:25px;display:flex}.account-settings label{flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.account-settings input{font:inherit;border:1px solid #d3dad4;border-radius:9px;padding:13px}.account-settings form>small{color:#7c8781}.account-settings .primary{border-radius:9px;justify-content:center}.mobile-dashboard-header{display:none}@media (width<=900px){.dashboard{grid-template-columns:90px 1fr}.dashboard-sidebar{padding:25px 14px}.dashboard-sidebar .brand>span:last-child,.sidebar-user div,.dashboard-sidebar nav button{font-size:0}.dashboard-sidebar nav button{justify-content:center}.dashboard-sidebar nav button svg{width:22px;height:22px}.sidebar-user{justify-content:center}.logout-button{justify-content:center;font-size:0}.account-settings{grid-template-columns:1fr}}@media (width<=650px){.dashboard{display:block}.dashboard-sidebar{z-index:20;height:auto;padding:8px;position:fixed;inset:auto 0 0}.dashboard-sidebar>.brand,.sidebar-user,.logout-button{display:none}.dashboard-sidebar nav{grid-template-columns:repeat(3,1fr);margin:0;display:grid}.dashboard-sidebar nav button{flex-direction:column;gap:3px;padding:7px;font-size:10px}.dashboard-main{padding:20px 20px 110px}.mobile-dashboard-header{justify-content:space-between;align-items:center;margin-bottom:45px;display:flex}.mobile-dashboard-header button{background:0 0;border:0}.view-heading{flex-direction:column;align-items:flex-start;gap:20px}.view-heading h1{font-size:43px}.account-settings{grid-template-columns:1fr}}.profile-settings{background:#fff;border:1px solid #dce2dc;border-radius:16px;max-width:1050px;margin:24px auto 0;padding:28px}.profile-settings form{margin-top:24px}.profile-settings label{flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.profile-settings input{font:inherit;border:1px solid #d3dad4;border-radius:9px;padding:13px}.profile-settings .wide{grid-column:1/-1}.profile-settings .primary{border-radius:9px;margin-top:20px}@media (width<=650px){.profile-settings .form-grid{grid-template-columns:1fr}.profile-settings .wide{grid-column:1}}.dog-behaviour-fields{background:#edf3dc;border:1px solid #d2dfad;border-radius:12px;padding:18px}.dog-behaviour-fields h3{margin-bottom:16px;font-size:15px}.dog-behaviour-fields .reactivity-row{margin-top:14px}.dog-behaviour-fields textarea,.dog-behaviour-fields select{background:#fff}.pet-form>h2{margin-bottom:22px;font-size:22px}.pet-actions{gap:5px;margin-left:auto;display:flex}.pet-actions button{color:#6a7770;background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.pet-actions button:hover{color:#274d3f;background:#edf3dc}.pet-actions button:last-child:hover{color:#a24d39;background:#f8e5df}.pet-actions svg{width:16px}.pet-form .inline-field-label{color:inherit;align-items:baseline;gap:6px;font-weight:700;display:flex}.pet-form .inline-field-label small{color:#7d8883;font-size:11px;font-weight:400}.pet-form .mixed-breed-toggle{flex-direction:row;align-self:end;align-items:center;gap:9px;min-height:44px;padding:0 4px;display:flex}.pet-form .mixed-breed-toggle input{accent-color:#e66d42;width:18px;height:18px}.pet-form select{width:100%}.animal-general-fields,.animal-breed-fields{border:1px solid #d9dfda;border-radius:12px;padding:18px}.animal-general-fields{background:#f8faf7}.animal-breed-fields{background:#f5efe6;border-color:#e4d7c6}.animal-general-fields h3,.animal-breed-fields h3{margin-bottom:16px;font-size:15px}.animal-general-fields>div{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.breed-grid{grid-template-columns:1fr 1fr;align-items:end;gap:14px;display:grid}.animal-breed-fields>.inline-field-label{margin-bottom:7px}@media (width<=800px){.animal-general-fields>div{grid-template-columns:1fr 1fr}}@media (width<=560px){.animal-general-fields>div,.breed-grid{grid-template-columns:1fr}}.pet-form .breed-grid{grid-template-columns:minmax(0,1.25fr) minmax(150px,.65fr) minmax(0,1.25fr)}.pet-form .breed-grid>label:first-child{grid-column:auto!important}.pet-form .breed-grid .mixed-breed-toggle{white-space:nowrap;grid-column:2}.pet-form .breed-grid>label:last-child:not(.mixed-breed-toggle){grid-column:3}@media (width<=700px){.pet-form .breed-grid{grid-template-columns:1fr 1fr}.pet-form .breed-grid .mixed-breed-toggle{grid-column:2}.pet-form .breed-grid>label:last-child:not(.mixed-breed-toggle){grid-column:1/-1}}@media (width<=500px){.pet-form .breed-grid{grid-template-columns:1fr}.pet-form .breed-grid .mixed-breed-toggle,.pet-form .breed-grid>label:last-child:not(.mixed-breed-toggle){grid-column:1}}.admin-view>section{margin-top:42px}.admin-view>section>h2{align-items:center;gap:10px;display:flex}.admin-view>section>h2 span{color:#fff;background:#e66d42;border-radius:99px;padding:4px 8px;font-size:12px}.admin-booking-list{gap:14px;display:grid}.admin-booking-card{background:#fff;border:1px solid #dce2dc;border-radius:15px;grid-template-columns:75px 1fr auto;align-items:center;gap:20px;padding:20px;display:grid}.admin-booking-date{text-align:center;text-transform:capitalize;color:#274d3f;flex-direction:column;display:flex}.admin-booking-date span{margin-top:5px;font-size:13px}.admin-booking-card h3{margin:8px 0}.admin-booking-card p{color:#68756f;margin:5px 0;font-size:12px}.admin-booking-actions{gap:8px;display:flex}.admin-booking-actions button{border:0;border-radius:8px;align-items:center;gap:6px;padding:10px 12px;font-weight:700;display:flex}.admin-booking-actions svg{width:16px}.admin-booking-actions .confirm{color:#304c25;background:#dfecc1}.admin-booking-actions .reject{color:#8b3527;background:#f7ddd5}.booking-status-pill.confirmed{color:#304c25;background:#dfecc1}@media (width<=800px){.admin-booking-card{grid-template-columns:60px 1fr}.admin-booking-actions{grid-column:1/-1;justify-content:flex-end}}@media (width<=520px){.admin-booking-card{grid-template-columns:1fr}.admin-booking-date{text-align:left;flex-direction:row;gap:10px}.admin-booking-actions{grid-column:auto;justify-content:stretch}.admin-booking-actions button{flex:1;justify-content:center}}.admin-dog-details{border-top:1px solid #e1e6e2;margin-top:14px;padding-top:12px}.admin-dog-details summary{cursor:pointer;color:#274d3f;font-size:13px;font-weight:700}.admin-dog-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:12px;display:grid}.admin-dog-list section{background:#f5f7f1;border:1px solid #dce5ce;border-radius:10px;padding:13px}.admin-dog-list h4{margin:0 0 8px;font-size:15px}.admin-dog-list section p{margin:5px 0}.admin-booking-message{white-space:pre-line;background:#fff7ee;border-radius:8px;margin-top:10px!important;padding:12px!important}.calendar-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.calendar-navigation,.calendar-view-switch{align-items:center;gap:7px;display:flex}.calendar-navigation button,.calendar-view-switch button{color:#274d3f;background:#fff;border:1px solid #d5ddd6;border-radius:8px;padding:9px 11px}.calendar-navigation button{place-items:center;display:grid}.calendar-navigation svg{width:17px}.calendar-navigation h2{text-transform:capitalize;margin:0 0 0 10px;font-size:20px}.calendar-view-switch{background:#e8ece8;border-radius:10px;padding:3px}.calendar-view-switch button{background:0 0;border:0}.calendar-view-switch button.active{background:#fff;box-shadow:0 1px 5px #183a2b1a}.admin-calendar{background:#fff;border:1px solid #d8dfd9;border-radius:15px;overflow:hidden}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{background:#f4f6f2;border-bottom:1px solid #d8dfd9}.calendar-weekdays b{text-align:center;text-transform:uppercase;color:#6d7973;padding:11px;font-size:11px}.calendar-day{border-bottom:1px solid #e2e6e2;border-right:1px solid #e2e6e2;min-width:0;min-height:165px;padding:8px}.admin-calendar.month .calendar-day{min-height:125px}.calendar-day:nth-child(7n){border-right:0}.calendar-day-number{place-items:center;width:26px;height:26px;margin-bottom:7px;font-size:12px;display:grid}.calendar-day.today .calendar-day-number{color:#fff;background:#e66d42;border-radius:50%;font-weight:700}.calendar-day.outside{color:#aeb6b0;background:#fafbf9}.calendar-events{gap:5px;display:grid}.calendar-event{border-left:4px solid;border-radius:5px;padding:6px 7px;font-size:10px;overflow:hidden}.calendar-event.confirmed{color:#29451e;background:#e5efcf;border-color:#6f963f}.calendar-event.pending{color:#4d5952;background:#edf0ed;border-color:#8c9891}.calendar-event b,.calendar-event span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.calendar-event span{opacity:.8;margin-top:3px}.calendar-legend{color:#65716a;gap:20px;margin-top:15px;font-size:12px;display:flex}.calendar-legend span{align-items:center;gap:7px;display:flex}.calendar-legend i{border-radius:3px;width:13px;height:13px}.calendar-legend i.confirmed{background:#6f963f}.calendar-legend i.pending{background:#8c9891}@media (width<=900px){.calendar-toolbar{flex-direction:column;align-items:flex-start}.calendar-navigation{flex-wrap:wrap}.calendar-navigation h2{width:100%;margin:8px 0 0}.admin-calendar{overflow-x:auto}.calendar-weekdays,.calendar-days{min-width:760px}}@media (width<=560px){.calendar-view-switch{width:100%}.calendar-view-switch button{flex:1}.calendar-navigation .today-button{display:none}}.rejection-modal-backdrop{z-index:100;background:#14251ed9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.rejection-modal{background:#fff;border-radius:18px;width:min(540px,100%);padding:32px;position:relative;box-shadow:0 25px 70px #0004}.rejection-close{background:#f1f3f1;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:18px;right:18px}.rejection-close svg{width:18px}.rejection-icon{color:#a43f2c;background:#f8ddd5;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.rejection-modal h2{margin:20px 0 10px;font-size:30px}.rejection-modal>p{color:#68756f;line-height:1.6}.rejection-modal label{flex-direction:column;gap:8px;margin-top:22px;font-size:13px;font-weight:700;display:flex}.rejection-modal label small{color:#77827c;font-weight:400}.rejection-modal textarea{font:inherit;resize:vertical;border:1px solid #d2d9d3;border-radius:10px;padding:13px}.rejection-modal textarea:focus{border-color:#e66d42;outline:0;box-shadow:0 0 0 3px #e66d4218}.rejection-modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.rejection-modal-actions button{border:0;border-radius:9px;padding:12px 17px;font-weight:700}.rejection-modal-actions button:first-child{color:#405048;background:#eef1ee}.rejection-modal-actions .reject-confirm{color:#fff;background:#d7533b}.rejection-modal-actions button:disabled{opacity:.55;cursor:not-allowed}@media (width<=520px){.rejection-modal{padding:26px 20px}.rejection-modal-actions{flex-direction:column-reverse}.rejection-modal-actions button{width:100%}}.rejection-modal label{flex-flow:wrap;align-items:baseline;column-gap:5px}.rejection-modal label textarea{flex-basis:100%;width:100%}.request-status-filters{border-bottom:1px solid #d6ddd7;gap:8px;margin:0 0 30px;display:flex}.request-status-filters button{color:#68756f;background:0 0;border:0;border-bottom:3px solid #0000;padding:13px 16px;font-weight:700}.request-status-filters button span{background:#e6eae7;border-radius:99px;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;font-size:11px;display:inline-grid}.request-status-filters button.active{color:#274d3f;border-bottom-color:#e66d42}.request-status-filters button.active.pending span{background:#e6eae7}.request-status-filters button.active.confirmed span{color:#304c25;background:#dfecc1}.request-status-filters button.active.rejected span{color:#8b3527;background:#f7ddd5}.booking-status-pill.pending,.booking-status-pill.confirmed,.booking-status-pill.rejected{font-size:0}.booking-status-pill.pending:after{content:"À valider";font-size:10px}.booking-status-pill.confirmed:after{content:"Validée";font-size:10px}.booking-status-pill.rejected{color:#8b3527;background:#f7ddd5}.booking-status-pill.rejected:after{content:"Refusée";font-size:10px}.request-pagination{justify-content:center;align-items:center;gap:18px;margin-top:28px;display:flex}.request-pagination button{color:#274d3f;background:#fff;border:1px solid #d4dcd5;border-radius:8px;align-items:center;gap:5px;padding:9px 12px;display:flex}.request-pagination button:disabled{opacity:.45}.request-pagination svg{width:16px}.request-pagination span{color:#68756f;font-size:12px}@media (width<=560px){.request-status-filters{overflow-x:auto}.request-status-filters button{white-space:nowrap;padding-inline:11px}.request-pagination{gap:8px}.request-pagination button{font-size:0}.request-pagination button svg{width:18px}}.request-status-filters+section>h2{display:none}.hourly-calendar{background:#fff;border:1px solid #d8dfd9;border-radius:15px;max-height:75vh;overflow:auto}.hourly-header{z-index:5;background:#f4f6f2;border-bottom:1px solid #d8dfd9;grid-template-columns:65px repeat(7,minmax(120px,1fr));min-width:905px;display:grid;position:sticky;top:0}.hourly-header>b{text-align:center;text-transform:capitalize;color:#647169;border-left:1px solid #e0e5e1;padding:10px;font-size:12px}.hourly-header b strong{place-items:center;width:28px;height:28px;margin:5px auto 0;font-size:15px;display:grid}.hourly-header b.today strong{color:#fff;background:#e66d42;border-radius:50%}.hourly-body{grid-template-columns:65px repeat(7,minmax(120px,1fr));min-width:905px;display:grid}.hour-labels{background:#fafbf9;height:1344px;position:relative}.hour-labels span{text-align:center;color:#758079;border-bottom:1px solid #e5e9e5;height:56px;padding-top:5px;font-size:10px;display:block}.hour-day-column{border-left:1px solid #dde3de;height:1344px;position:relative}.hour-slot{border-bottom:1px solid #e5e9e5;height:56px}.hour-slot:nth-child(2n){background:#fbfcfa}.hourly-event{z-index:2;border-left:4px solid;border-radius:6px;min-height:45px;padding:6px 7px;font-size:10px;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 2px 5px #17382912}.hourly-event.confirmed{color:#29451e;background:#e5efcf;border-color:#6f963f}.hourly-event.pending{color:#4d5952;background:#edf0ed;border-color:#8c9891}.hourly-event b,.hourly-event span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.hourly-event span{opacity:.8;margin-top:3px}@media (width<=700px){.hourly-calendar{max-height:68vh}}.booking-list article>div:nth-child(2){flex:1}.booking-rejection-reason{color:#723324;background:#fff2ee;border-left:3px solid #d7533b;border-radius:0 7px 7px 0;margin-top:13px;padding:11px 13px}.booking-rejection-reason b{font-size:12px}.booking-rejection-reason p{white-space:pre-line;line-height:1.5;color:#7b4b40!important;margin:5px 0 0!important}:root{color:#23362f;font-synthesis:none;--green:#274d3f;--orange:#e66d42;--cream:#f8f5ee;--lime:#d7e99a;--ink:#23362f;background:#f8f5ee;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.site-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#f8f5eeeb;border-bottom:1px solid #23362f14;justify-content:space-between;align-items:center;height:86px;padding:0 clamp(24px,6vw,96px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;font-size:22px;font-weight:700;display:flex}.brand>span:last-child span{color:var(--orange)}.brand-mark{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.brand-mark svg{width:21px}.nav{gap:38px;font-size:14px;font-weight:600;display:flex}.nav a:hover{color:var(--orange)}.header-cta,.primary{background:var(--orange);color:#fff;border:0;border-radius:99px;align-items:center;gap:10px;padding:13px 22px;font-weight:700;display:inline-flex;box-shadow:0 8px 25px #b3471f29}.menu-button{background:0 0;border:0;display:none}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:5vw;min-height:calc(100vh - 86px);padding:60px clamp(24px,7vw,110px) 80px;display:grid;overflow:hidden}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.15em;color:#618071;font-size:12px;font-weight:700}.eyebrow{align-items:center;gap:10px;display:flex}.eyebrow span{background:var(--orange);width:28px;height:2px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.055em;margin:25px 0 28px;font-size:clamp(52px,6vw,88px);font-weight:700;line-height:.98}h1 em,h2 em{color:var(--orange);font-family:Fraunces,serif;font-weight:600}.hero-copy>p{color:#64726c;max-width:590px;font-size:18px;line-height:1.7}.hero-actions{align-items:center;gap:26px;margin:35px 0;display:flex}.text-link{border-bottom:1px solid #b7c0bc;align-items:center;gap:5px;padding-bottom:4px;font-size:14px;font-weight:700;display:inline-flex}.trust{color:#6f7e77;align-items:center;gap:15px;font-size:12px;line-height:1.5;display:flex}.trust b{color:var(--ink)}.avatars{letter-spacing:-3px;background:#fff;border-radius:99px;padding:8px 11px;font-size:19px}.hero-visual{height:580px;position:relative}.sun{background:#efbb56;border-radius:50%;width:420px;height:420px;position:absolute;top:30px;left:50%;transform:translate(-50%)}.shape{border-radius:50% 50% 10% 10%;position:absolute}.shape-one{background:var(--green);width:180px;height:270px;bottom:12px;left:2%;transform:rotate(-14deg)}.shape-two{background:var(--lime);width:210px;height:190px;top:25%;right:-12%;transform:rotate(19deg)}.dog-card{justify-content:center;align-items:center;display:flex;position:absolute;inset:20px 8% 30px}.dog-emoji{filter:drop-shadow(0 22px 18px #1f382e38);font-size:260px;transform:scaleX(-1)}.floating-note{color:var(--orange);background:#fff;border-radius:99px;align-items:center;gap:8px;padding:13px 17px;font-size:12px;font-weight:700;display:flex;position:absolute;top:30%;right:0;box-shadow:0 12px 32px #23362f20}.mini-card{background:#fff;border-radius:16px;align-items:center;gap:12px;padding:16px;display:flex;position:absolute;bottom:24px;left:7%;box-shadow:0 15px 35px #23362f20}.mini-card>svg{background:var(--lime);border-radius:50%;width:40px;height:40px;padding:8px}.mini-card span{flex-direction:column;font-size:12px;display:flex}.mini-card small{color:#78847e;margin-top:3px}.manifesto{background:var(--green);color:#fff;text-align:center;padding:110px max(24px,9vw)}.manifesto .section-kicker{color:var(--lime)}h2{letter-spacing:-.04em;margin:18px 0 28px;font-size:clamp(38px,5vw,62px);line-height:1.08}.manifesto .intro{color:#cbd8d1;max-width:690px;margin:0 auto;line-height:1.75}.values{grid-template-columns:repeat(3,1fr);gap:60px;margin-top:75px;display:grid}.values article{padding:0 30px}.values article+article{border-left:1px solid #fff2}.values article>span{width:48px;height:48px;color:var(--lime);background:#ffffff12;border-radius:50%;place-items:center;margin:0 auto 22px;display:grid}.values h3{margin-bottom:12px;font-size:19px}.values p{color:#bdcdc5;font-size:14px;line-height:1.65}.services-section{padding:110px clamp(24px,7vw,110px)}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:55px;display:flex}.section-heading>p{color:#6b7772;max-width:430px;line-height:1.7}.service-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.service-card{background:#fbfaf6;border:1px solid #d8ddd8;border-radius:18px;flex-direction:column;justify-content:space-between;min-height:400px;padding:32px;transition:all .25s;display:flex;position:relative}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 50px #23362f15}.service-card.featured{background:#edf3dc;border-color:#c9d995}.popular{background:var(--green);color:#fff;text-transform:uppercase;letter-spacing:.08em;border-radius:99px;padding:7px 12px;font-size:10px;position:absolute;top:20px;right:20px}.service-number{color:var(--orange);font-family:Fraunces,serif;font-size:28px}.service-card h3{margin-bottom:12px;font-size:24px}.service-card p{color:#6e7974;font-size:14px;line-height:1.6}.service-meta{border-top:1px solid #d8ddd8;justify-content:space-between;align-items:center;margin-top:25px;padding-top:20px;display:flex}.service-meta span{gap:7px;font-size:13px;display:flex}.service-meta strong{font-size:24px}.service-card button{color:var(--ink);background:0 0;border:0;border-bottom:1px solid #98a39e;justify-content:space-between;margin-top:16px;padding:14px 0 7px;font-weight:700;display:flex}.service-card button:disabled{opacity:.5;cursor:not-allowed}.api-notice{text-align:center;color:#87908c;margin:25px 0 0;font-size:13px}.about{background:#e8eee1;grid-template-columns:1fr 1.1fr;align-items:center;gap:80px;padding:100px clamp(24px,10vw,150px);display:grid}.about-mark{height:380px;color:var(--green);background:#efbb56;border-radius:48% 48% 15% 15%;place-items:center;font-family:Fraunces;font-size:80px;display:grid;transform:rotate(-2deg)}.about-mark span{color:var(--orange);font-size:55px}.about>div:last-child>p:not(.section-kicker){color:#627069;max-width:580px;line-height:1.75}footer{color:#dae3df;background:#182f27;justify-content:space-between;align-items:center;padding:35px clamp(24px,7vw,110px);font-size:12px;display:flex}footer .brand{font-size:18px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#13271fbb;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--cream);border-radius:24px;width:min(720px,100%);padding:40px;position:relative;box-shadow:0 30px 90px #0005}.modal-close{background:#e8ebe6;border:0;border-radius:50%;place-items:center;width:39px;height:39px;display:grid;position:absolute;top:22px;right:22px}.modal h2{margin-bottom:10px;font-size:40px}.modal-intro{color:#6b7772}.modal form{grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;display:grid}.modal label{flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.modal label span{color:#89928e;font-weight:400}.modal .full{grid-column:1/-1}.modal input,.modal select,.modal textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #d5dbd5;border-radius:10px;outline:none;padding:12px 13px;font-size:14px}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #e66d4218}.submit{grid-column:1/-1;justify-content:center;margin-top:8px}.form-error{color:#b9402c;grid-column:1/-1;font-size:13px}.success-state{text-align:center;padding:55px 15px}.success-state>span{background:var(--lime);border-radius:50%;place-items:center;width:65px;height:65px;margin:0 auto 25px;display:grid}.success-state h2{font-size:43px}.success-state p{color:#6b7772;margin-bottom:28px}@media (width<=900px){.nav{background:var(--cream);flex-direction:column;padding:25px;display:none;position:absolute;top:85px;left:0;right:0}.nav.open{display:flex}.header-cta{display:none}.menu-button{display:block}.hero{grid-template-columns:1fr;padding-top:50px}.hero-visual{height:440px}.dog-emoji{font-size:210px}.values,.service-grid{grid-template-columns:1fr}.values{gap:35px}.values article+article{border-top:1px solid #fff2;border-left:0;padding-top:35px}.section-heading{display:block}.section-heading>p{margin-top:20px}.about{grid-template-columns:1fr}.about-mark{height:280px}footer{text-align:center;flex-direction:column;gap:15px}}@media (width<=560px){.site-header{height:72px}.nav{top:71px}.hero{min-height:auto}.hero-actions{flex-direction:column;align-items:flex-start}.hero-visual{height:330px}.sun{width:290px;height:290px}.dog-emoji{font-size:150px}.shape-one{width:110px;height:180px}.shape-two{width:120px;height:130px}.floating-note{top:22%;right:-4%}.mini-card{left:0}.manifesto,.services-section{padding-top:75px;padding-bottom:75px}.service-card{min-height:360px}.about{gap:45px;padding-top:70px;padding-bottom:70px}.modal{padding:30px 20px}.modal h2{font-size:32px}.modal form{grid-template-columns:1fr}.modal label,.modal .full,.submit{grid-column:1}.modal-backdrop{align-items:start}.about-mark{font-size:55px}}.account-header .brand>span:last-child,.booking-summary .brand>span:last-child,.auth-brand-panel .brand>span:last-child{text-transform:capitalize}.account-header .brand>span:last-child>span:before,.booking-summary .brand>span:last-child>span:before,.auth-brand-panel .brand>span:last-child>span:before{content:"'"}.about .section-kicker{font-size:0}.about .section-kicker:after{content:"Atypi'Chien, c'est avant tout";font-size:12px}.service-tabs{background:#ebece6;border-radius:99px;gap:5px;width:max-content;margin:0 auto 38px;padding:5px;display:flex}.service-tabs button{color:#66736d;background:0 0;border:0;border-radius:99px;padding:11px 25px;font-weight:700}.service-tabs button.active{color:#fff;background:#274d3f;box-shadow:0 5px 15px #274d3f24}.service-tabs+.service-grid:has(.service-card:only-child){grid-template-columns:minmax(280px,430px);justify-content:center}
