.hero{padding-top:2rem;@media (width>=64rem){padding-top:3.5rem}}.hero-copy{gap:1.75rem 3rem;display:grid;@media (width>=80rem){grid-template-columns:minmax(0,56rem) minmax(17rem,1fr);align-items:end}}.hero-title{font-family:var(--font-display);font-weight:var(--heading-weight);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.25rem,1.45rem + 3vw,3.375rem);line-height:1.06}.hero-sub{max-width:36rem;color:var(--muted-foreground);margin-top:1rem}.hero-side{@media (width>=80rem){padding-bottom:.5rem}}.hero-note{color:var(--muted-foreground);margin-top:.875rem;font-size:.9375rem;line-height:1.5;& b{color:var(--foreground);font-weight:600}}.hero-stage{margin-top:2.5rem;margin-inline:calc(-1 * var(--gutter));border-radius:1.25rem 1.25rem 0 0;padding:1rem .75rem 0;position:relative;@media (width>=40rem){border-radius:1.5rem 1.5rem 0 0;margin-inline:0;padding:1.375rem 2.5rem 0}@media (width>=64rem){margin-top:5rem}--dog-width:10rem;@media (width>=75rem){--dog-width:12rem}}.hero-stage-bar{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1.125rem;display:flex;@media (width>=40rem){padding-right:calc((100% - 57px) / 10 + .28 * var(--dog-width) + .75rem)}}.kinds{scrollbar-width:none;background:color-mix(in oklab, var(--primary-foreground) 8%, transparent);max-width:100%;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--primary-foreground) 10%, transparent);border-radius:.6875rem;padding:.1875rem;display:inline-flex;overflow-x:auto}.kind{cursor:pointer;color:color-mix(in oklab, var(--primary-foreground) 78%, transparent);transition:background-color var(--duration-hover) var(--motion-hover-ease), color var(--duration-hover) var(--motion-hover-ease);border-radius:.5rem;flex:none;padding:.4375rem .8125rem;font-size:.875rem;font-weight:500;&:hover{color:var(--primary-foreground)}&[aria-pressed=true]{background:var(--paper);color:var(--primary);box-shadow:0 1px 2px color-mix(in oklab, var(--foreground) 20%, transparent)}&:focus-visible{outline:2px solid var(--primary-foreground);outline-offset:2px}}.kind-caption{color:color-mix(in oklab, var(--primary-foreground) 80%, transparent);font-size:.9375rem;line-height:1.45;display:grid;@media (width<48rem){max-width:62%}@media (width>=48rem) and (width<75rem){flex-basis:100%;max-width:34rem}}.kind-caption>span{grid-area:1/1;&[aria-hidden=true]{visibility:hidden}}.hero-frame-wrap{position:relative}.hero-frame{border:1px solid color-mix(in oklab, var(--primary-foreground) 14%, transparent);background:var(--card);color:var(--foreground);box-shadow:0 30px 60px -24px color-mix(in oklab, var(--foreground) 45%, transparent);border-bottom:0;border-radius:.875rem .875rem 0 0;position:relative;overflow:hidden}.hero-dog[data-rig]{--perch-space:0px;--dog-inset:calc((100% - 57px) / 10 - .469 * var(--dog-width));@media (width<40rem){& :is([data-dog-layer],.animal-canvas,.animal-hit){display:none}}}[data-hero-kinds] [data-calendar-kind]{transition:opacity var(--duration-slow) var(--ease-out), filter var(--duration-slow) var(--ease-out)}[data-hero-kinds][data-kind=appointments] [data-calendar-kind]:not([data-calendar-kind=appointments]),[data-hero-kinds][data-kind=classes] [data-calendar-kind]:not([data-calendar-kind=classes]),[data-hero-kinds][data-kind=daycare] [data-calendar-kind]:not([data-calendar-kind=daycare]),[data-hero-kinds][data-kind=stays] [data-calendar-kind]:not([data-calendar-kind=stays]){opacity:.26;filter:saturate(.3)}@media (prefers-reduced-motion:reduce){[data-hero-kinds] [data-calendar-kind]{transition:none}}.story-band{container:story/inline-size}.story{gap:3rem 4.5rem;padding-block:5rem;display:grid;@container story (width>=60rem){grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding-block:6.5rem}}.story-photos{max-width:36rem;margin-inline:auto;@container story (width>=60rem){margin-inline:0 auto}}.story-caption{color:color-mix(in oklab, var(--primary-foreground) 75%, transparent);margin-top:.75rem;font-size:.875rem}.story-quote{border-left:2px solid color-mix(in oklab, var(--primary-foreground) 35%, transparent);margin-top:2rem;padding-left:1.25rem;& blockquote{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:pretty;font-size:clamp(1.375rem,1.1rem + .8vw,1.75rem);font-weight:500;line-height:1.35}}.price-row{gap:2.5rem 4rem;display:grid;@media (width>=64rem){grid-template-columns:minmax(0,1fr) minmax(0,33rem);align-items:center}}.price-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;max-width:34rem;margin-top:2rem;display:grid;& dt{font-family:var(--font-display);font-size:1.0625rem;font-weight:600;line-height:1.3}& dd{color:var(--muted-foreground);margin-top:.125rem;font-size:.9375rem;line-height:1.45}}.hero-request-control{z-index:40;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:.375rem;justify-content:flex-end;align-items:flex-start;display:flex;position:absolute;&:focus-visible{outline:2px solid var(--ring);outline-offset:2px}}.hero-request-cue{background:var(--primary);height:1.375rem;color:var(--primary-foreground);box-shadow:0 2px 6px -2px color-mix(in oklab, var(--foreground) 45%, transparent);opacity:0;scale:calc(1 - .04 * var(--motion-travel));transition:opacity var(--duration-fast) var(--ease-out), scale var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border-radius:999px;align-items:center;gap:.125rem;margin:-.6875rem -.375rem 0 0;padding:0 .5rem 0 .375rem;font-size:.75rem;font-weight:600;display:inline-flex;[data-state=accepted]>&{background:var(--card);color:var(--foreground);box-shadow:0 0 0 1px var(--border), 0 2px 6px -2px color-mix(in oklab, var(--foreground) 30%, transparent);padding-inline:.5rem}[data-state=accepted]>&,.hero-request-control:focus-visible>&{opacity:1;scale:1}@media (hover:none){opacity:1;scale:1}@media (hover:hover){.hero-request-control:hover>&{opacity:1;scale:1}}.hero-request-control[data-demo-hover]>&{opacity:1;scale:1}@media (prefers-reduced-motion:reduce){opacity:1;scale:1}:root[data-motion-reduced=true] &{opacity:1;scale:1}}.hero-request-control:active>.hero-request-cue{scale:calc(1 - .04 * var(--motion-travel))}@media (hover:hover){[data-hero-calendar]:has(.hero-request-control[data-state=requested]:hover) [data-request-part=hold]{outline-offset:1px;outline:1.5px solid}}[data-hero-calendar]:has(.hero-request-control[data-state=requested]:is(:focus-visible,[data-demo-hover])) [data-request-part=hold]{outline-offset:1px;outline:1.5px solid}[data-request-part]{transition:opacity var(--duration-slow) var(--ease-out), filter var(--duration-slow) var(--ease-out)}[data-request=requested] [data-request-part=booking],[data-request=accepted] [data-request-part=hold]{opacity:0!important;filter:blur(var(--motion-blur-active))!important}@media (prefers-reduced-motion:no-preference){[data-request=accepted] [data-request-part=booking]{animation:hero-accept-nudge var(--motion-accept-nudge) var(--ease-out);& [data-component=week-event-person-mark]{animation:hero-status-pop var(--motion-status-pop) var(--ease-overshoot) both}}}@keyframes hero-accept-nudge{0%{scale:.97}40%{scale:1.01}to{scale:1}}@keyframes hero-status-pop{0%{opacity:0;scale:.5}65%{opacity:1;scale:1.09}to{scale:1}}:root[data-motion-reduced=true] :is([data-request-part=booking],[data-request-part=booking] [data-component=week-event-person-mark]){animation:none}.story-pair{justify-items:center;width:100%;display:grid;@media (width>=48rem){grid-template-columns:minmax(0,1fr) 15rem;place-items:start stretch}}.story-window{display:none;@media (width>=48rem){border:1px solid var(--border);background:var(--background);max-height:26rem;box-shadow:0 18px 40px -20px color-mix(in oklab, var(--foreground) 30%, transparent);border-radius:.875rem;grid-area:1/1;margin-right:1.25rem;padding:1rem;display:block;overflow:hidden}}.story-window-flush{@media (width<48rem){&.week-frame{display:none}}@media (width>=48rem){height:24rem;padding:0;display:flex}}.story-window-padded{@media (width>=48rem){padding:1.25rem 1.5rem}}.story-pair-phone{z-index:1;width:min(100%,17rem);position:relative;@media (width>=48rem){grid-area:1/2;width:15rem;margin-top:2.5rem}}.story-phone{background:var(--foreground);box-shadow:0 30px 60px -24px color-mix(in oklab, var(--foreground) 45%, transparent);border-radius:2rem;padding:.375rem}.story-phone-screen{zoom:.6933;background:var(--background);border-radius:2.5rem;width:375px;max-height:540px;padding:1.25rem 1rem 1.5rem;overflow:hidden;@media (width>=48rem){zoom:.608;max-height:620px}}.story-phone-screen[data-flush]{padding:0}.story-email{background:var(--background);border:0;width:100%;height:620px;display:block}
