:root{--ink:#293d4d;--muted:#536875;--bg:#f7fbfc;--peach:#f7d8ce;--blue:#b9d7df;--lilac:#e7def0;--line:#d6e3e7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans TC',sans-serif;line-height:1.85}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #447e9c;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Noto Serif TC',serif;font-weight:400}h1{font-size:clamp(34px,3.4vw,56px);line-height:1.65;letter-spacing:.02em}h2{font-size:clamp(28px,2.8vw,44px);line-height:1.6}h3{font-size:23px;line-height:1.6}p{color:var(--muted);font-size:16px}img{max-width:100%;height:auto;object-fit:contain}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.button svg,.text-link svg,.story-tools svg{width:18px;height:18px;flex:none}.wrap{width:min(1280px,90%);margin:auto}.header{position:fixed;top:0;left:0;width:100%;height:110px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;z-index:50;transition:background .3s,box-shadow .3s}.header.scrolled{background:#f7fbfcf5;box-shadow:0 1px 0 var(--line)}.brand{display:flex;align-items:center;gap:18px;font:36px Georgia,serif;letter-spacing:.03em}.brand small{display:block;font:12px 'Noto Sans TC',sans-serif;letter-spacing:.27em;margin-top:9px}.seal{position:relative;background:#fff;border-radius:50%;width:96px;height:106px;display:grid;place-items:center;box-shadow:0 6px 20px #647f8b18;align-self:flex-start}.seal:before{content:'';position:absolute;width:1px;height:25px;background:#bea58b;top:-22px;left:50%}.seal i{position:absolute;width:14px;height:14px;background:var(--peach);border-radius:50%;left:2px;bottom:12px;box-shadow:10px 10px var(--lilac),24px 15px var(--peach),-4px -10px var(--lilac)}.brand svg{width:67px;height:67px;stroke:#71909e;stroke-width:4}.brand .fill{fill:#71909e;stroke:none}.header nav{display:flex;align-items:center;gap:29px;font-size:15px}.header nav>a:not(.button){padding:12px 0}.header nav>a[aria-current]{border-bottom:1px solid #6b8795}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:13px 24px;border-radius:40px;background:#fff;border:1px solid transparent;font-size:15px;line-height:1.5;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 5px 15px #293d4d12}.peach{background:var(--peach)}.blue{background:var(--blue)}.text-link{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid #98b3bd;padding:9px 0;font-size:15px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.menu-toggle{display:none}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.hero{position:relative;min-height:820px;height:95svh;max-height:1020px;display:flex;align-items:center;padding-top:100px}.hero-copy{width:46%;position:relative;z-index:4}.hero-copy p{margin-top:28px;line-height:2;letter-spacing:.06em}.portraits{position:absolute;width:66%;height:600px;right:-1%;top:160px}.portrait{position:absolute;bottom:20px;overflow:hidden;border-radius:230px 230px 18px 18px;width:38%;height:88%}.portrait img{width:130%;max-width:none;position:absolute;bottom:-3%;left:-15%;height:90%;object-fit:contain}.portrait.one{left:0;background:var(--peach);z-index:3}.portrait.two{left:34%;height:73%;background:var(--blue);z-index:4}.portrait.three{left:66%;height:58%;background:var(--lilac);z-index:5}.portrait.three img{width:150%;left:-27%;height:100%}.dotted{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;stroke:#9fc8d8;stroke-width:1.4;stroke-dasharray:3 7;opacity:.7}.floating-note{position:absolute;right:-1%;top:7%;padding:14px 25px;background:#ffffffdf;border-radius:14px;transform:rotate(5deg);z-index:8;font:18px 'Noto Serif TC',serif;box-shadow:0 8px 20px #293d4d0c}.story-link{position:absolute;bottom:16px;font-size:13px;letter-spacing:.12em;z-index:8}.story{height:auto;background:#edf6f9}.stage{height:auto;position:relative;overflow:hidden}.js .story{height:580svh}.js .stage{height:100svh;position:sticky;top:0}.back-word{font:clamp(60px,14vw,220px) Georgia,serif;position:absolute;left:6%;top:10%;white-space:nowrap;opacity:.06}.arch{position:absolute;border-radius:50% 50% 0 0;bottom:0;width:40%;height:75%;background:var(--blue);opacity:.5}.arch-a{left:5%}.arch-b{right:4%;background:var(--lilac);height:55%}.wood-floor{position:absolute;bottom:-9%;height:30%;width:150%;left:-25%;background:repeating-linear-gradient(95deg,#dfc8ad 0px,#dfc8ad 3px,#ead9c3 4px,#ead9c3 80px);border-radius:50%;opacity:.45;transform:rotate(-4deg)}.moving-dog,.moving-cat,.moving-sleep{position:absolute;width:min(42vw,620px);height:60%;object-fit:contain;bottom:4%;left:35%;will-change:transform,opacity}.moving-cat{left:52%;width:30vw;bottom:12%}.moving-sleep{left:55%;width:35vw;bottom:23%}.shelf{position:absolute;background:#dec5a5;border-radius:50%;width:35%;height:35px;box-shadow:0 14px 0 #c8af90;opacity:0}.shelf-a{right:6%;bottom:28%}.shelf-b{left:8%;bottom:49%;width:20%}.shelf-c{right:20%;bottom:63%;width:24%}.story-copy{position:relative;padding:60px 5%;max-width:650px}.story-copy span{font-size:13px;letter-spacing:.15em;color:#516e7c}.story-copy h2{margin:12px 0 22px}.story-copy p{max-width:430px}.js .story-copy{position:absolute;left:7%;top:22%;padding:0;width:39%;will-change:transform,opacity}.js .sc1{left:58%;top:25%;width:35%}.js .sc3{top:24%}.story-tools{position:absolute;bottom:22px;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;font-size:13px}.story-tools a{display:flex;gap:10px;align-items:center}.story-progress{display:block;width:150px;height:2px;background:#b8cfd7}.story-progress i{height:2px;width:0;background:#486f81;display:block}.mood{position:absolute;font-size:60px;color:#d18d72;left:70%;top:32%;opacity:0}.mood-cat{color:#7b92ab;left:79%;top:25%}.services{padding:90px 0 60px;display:grid;grid-template-columns:30% 1fr;gap:5%}.hall-summary{display:grid;grid-template-columns:1fr 1fr;gap:35px}.hall-summary article{display:flex;gap:18px}.hall-summary article+article{border-left:1px solid var(--line);padding-left:30px}.hall-summary h3{font-size:22px}.hall-summary p{margin:10px 0;font-size:14px}.number{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font:22px Georgia}.steps{padding:55px 0 80px;text-align:center;border-top:1px solid var(--line)}.steps ol{list-style:none;display:flex;justify-content:center;gap:8%;padding:35px 0 25px;margin:0}.steps li{flex:1;max-width:300px}.round{width:125px;height:125px;border:1px solid #a9c4bd;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;position:relative;background:#fff}.round:before,.round:after{content:'';position:absolute;width:25px;height:14px;border-radius:100% 0 100% 0;background:#c9d9d1;top:8px;left:7px;transform:rotate(-30deg);box-shadow:23px -6px #e5dce8,43px -3px #f3d4c8}.round:after{inset:auto 5px 5px auto;transform:rotate(150deg)}.round b{font:40px Georgia;color:#75929e}.steps h3{font-size:22px;margin-bottom:12px}.steps p{font-size:14px}.visit-band{background:#dcecf1;padding:65px 10%;display:flex;justify-content:space-between;align-items:center}.visit-band p{margin-bottom:20px}.footer-main{padding:55px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-main .brand{font-size:29px}.footer-main p,.footer-main a:not(.brand){font-size:13px}.footer-main>div a{display:block}.fine{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding:20px 6%;font-size:11px;color:#667a86}.cat-intro{padding-top:180px;position:relative;padding-bottom:40px}.cat-intro p{margin-top:25px}.cat-title{position:absolute;right:0;bottom:0;font:italic clamp(40px,8vw,130px) Georgia;opacity:.1}.cat-journey{height:auto;background:#e4eef5}.cat-stage{height:760px;position:relative;overflow:hidden}.js .cat-journey{height:250svh}.js .cat-stage{height:100svh;position:sticky;top:0}.cat-window{position:absolute;width:50%;height:80%;right:4%;bottom:-10%;background:#d5deec;border-radius:50% 50% 0 0}.cat-platform{position:absolute;right:9%;bottom:20%;width:50%;height:50px;border-radius:50%;background:#ddc7ab;box-shadow:0 20px 0 #c9ae8b}.cp2{bottom:43%;width:28%;right:35%}.cp3{bottom:67%;width:24%;right:5%}.climber{position:absolute;width:35%;height:55%;bottom:16%;left:35%;object-fit:contain}.napper{position:absolute;width:28%;right:4%;bottom:62%;height:28%;object-fit:contain}.cat-note{position:absolute;top:24%;left:7%;width:30%;z-index:3}.cat-note p{margin-top:20px}.cn2{top:25%}.cat-skip{position:absolute;bottom:20px;left:7%;font-size:13px}.rooms{padding:80px 0 60px}.room-heading{display:flex;justify-content:space-between;gap:30px;align-items:center}.room-buttons{display:flex;gap:12px;margin:35px 0 25px}.room-buttons button{border:1px solid var(--line);background:#fff;padding:14px 25px;border-radius:15px;flex:1;font-size:16px}.room-buttons button[aria-pressed=true]{background:var(--blue);border-color:var(--blue)}.room-detail{display:flex;align-items:center;gap:40px;background:#e4f0f4;padding:35px 50px;border-radius:35px}.room-no{font:100px Georgia;color:#8eb2c3}.room-detail p{max-width:650px;margin:12px 0}.room-detail a{font-size:14px;text-decoration:underline}.cat-care{padding:10px 0 80px}.cat-care dl{display:flex;gap:40px;margin:30px 0}.cat-care dl>div{flex:1;border-top:1px solid #bbd1db;padding-top:20px}.cat-care dt{font:22px 'Noto Serif TC',serif}.cat-care dd{margin:15px 0 0;font-size:14px;color:var(--muted)}.furniture{position:absolute;width:61%;height:90%;object-fit:contain;right:-2%;bottom:0}.furniture~.cat-platform{display:none}.no-motion .story,.no-motion .cat-journey{height:auto}.no-motion .stage,.no-motion .cat-stage{position:relative;height:auto;min-height:600px}.no-motion .story-copy{position:relative;inset:auto;width:100%;padding:28px 6%;background:#f7fbfce8}.no-motion .story-copy h2{font-size:28px}.no-motion .story-copy p{max-width:none}.no-motion .stage>.moving-dog,.no-motion .stage>.moving-cat,.no-motion .stage>.moving-sleep,.no-motion .mood{display:none}.no-motion .cat-note{position:relative;width:90%;inset:auto;margin:0 auto;padding:35px 0}.no-motion .cat-stage{padding-bottom:350px}.no-motion .cat-stage .climber{height:300px;bottom:0;left:30%}.no-motion .cat-stage .napper{display:none}.no-motion .cat-stage .furniture{height:350px}.no-motion .story-tools{position:relative;padding:20px 0}.no-motion .story-progress{display:none}html:not(.js) .story-copy{background:#f7fbfce8;z-index:3}html:not(.js) .cn2{top:55%}
@media(min-width:1700px){.header{padding:0 calc((100vw - 1400px)/2)}.portraits{height:680px}.hero{max-height:1050px}}
@media(max-width:1100px){.header nav{gap:18px}.header{padding:0 4%}.brand{font-size:30px;gap:10px}.seal{width:75px;height:85px}.hero{min-height:780px}.portraits{height:510px;top:200px}.hero-copy{width:47%}.hero-copy h1{font-size:36px}.hero-copy p{font-size:14px}.hero .actions{max-width:260px}.floating-note{font-size:15px}.services{grid-template-columns:1fr;gap:30px}.services h2 br{display:none}.cat-care dl{gap:25px}.header nav .button{padding:12px 15px}}
@media(max-width:760px){html{scroll-padding-top:85px}.header{height:85px;padding:0 6%}.brand{font-size:27px;gap:12px}.brand small{font-size:10px}.seal{width:60px;height:66px}.brand svg{width:48px;height:48px}.seal i{width:9px;height:9px;box-shadow:8px 7px var(--lilac),18px 10px var(--peach)}.menu-toggle{display:block;background:transparent;border:1px solid #9bb2bd;border-radius:24px;padding:7px 16px;font-size:14px}.header nav{display:none;position:absolute;top:85px;left:0;width:100%;padding:20px 6%;background:#f7fbfc;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:12px!important}.hero{height:auto;min-height:900px;display:block;padding-top:135px;padding-bottom:450px}.hero-copy{width:100%}.hero-copy h1{font-size:34px;line-height:1.6}.hero-copy p{font-size:14px;margin-top:20px;line-height:1.9}.hero .actions{max-width:none;margin-top:22px;gap:8px}.button{padding:12px 17px;font-size:14px}.portraits{width:100%;height:380px;right:0;top:auto;bottom:40px}.portrait{width:37%;bottom:10px}.portrait.one{height:89%}.portrait.two{height:74%}.portrait.three{height:62%;left:66%}.floating-note{right:0;top:10%;font-size:12px;padding:10px 14px}.story-link{font-size:11px;bottom:5px}.js .story{height:530svh}.js .story-copy,.js .sc1,.js .sc3{left:7%;top:16%;width:85%;max-width:none}.story-copy h2{font-size:31px;margin:8px 0 13px}.story-copy p{font-size:14px;max-width:100%}.story-copy span{font-size:11px}.moving-dog{width:85%;height:48%;left:7%;bottom:7%}.moving-cat{width:65%;height:43%;left:31%;bottom:9%}.moving-sleep{width:70%;height:40%;left:25%;bottom:12%}.shelf-a{bottom:19%;width:60%}.shelf-b{bottom:40%}.shelf-c{bottom:55%}.arch-a{width:75%;height:55%;left:-10%}.arch-b{height:42%;width:60%}.back-word{top:10%;font-size:80px}.mood{top:49%;left:72%;font-size:40px}.mood-cat{top:57%;left:80%}.story-tools{bottom:18px}.story-progress{width:70px}.services{padding:50px 0 40px}.hall-summary{display:block}.hall-summary article{gap:20px;padding:25px 0!important}.hall-summary article+article{border-left:0;border-top:1px solid var(--line)}.steps{padding:45px 0 50px}.steps ol{display:block;padding:10px 0 25px}.steps li{max-width:none;text-align:left;position:relative;padding:22px 0 22px 110px;min-height:140px}.round{position:absolute;left:0;top:30px;width:85px;height:85px}.round b{font-size:30px}.round:before,.round:after{width:16px;height:9px;box-shadow:16px -4px var(--lilac),30px -2px var(--peach)}.steps h3{font-size:21px}.steps p{font-size:13px}.visit-band{padding:45px 7%;display:block}.visit-band>div{margin-top:22px}.footer-main{display:block;padding:40px 7%}.footer-main p{margin:25px 0}.footer-main>div a{padding:4px 0}.fine{padding:20px 7%;font-size:10px}.cat-intro{padding-top:135px;padding-bottom:45px}.cat-intro h1{font-size:32px}.cat-intro p{font-size:14px}.cat-title{font-size:55px;bottom:5px}.cat-note,.cn2{top:15%;width:86%;left:7%}.cat-note h2{font-size:29px}.cat-note p{font-size:14px;margin-top:10px;max-width:320px}.cat-window{height:55%;width:80%;right:-10%}.furniture{width:100%;height:60%;right:-8%;bottom:0}.climber{width:60%;height:40%;left:20%;bottom:8%}.napper{width:40%;height:20%;bottom:31%;right:0}.cat-platform{bottom:15%;width:75%}.cp2{bottom:28%;width:45%}.cp3{bottom:42%;width:45%}.rooms{padding:50px 0 40px}.room-heading{display:block}.room-heading p{margin-top:20px;font-size:14px}.room-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.room-buttons button{padding:12px;font-size:14px}.room-detail{gap:20px;padding:25px;border-radius:25px}.room-no{font-size:50px}.room-detail h3{font-size:22px}.room-detail p,.room-detail a{font-size:13px}.cat-care{padding-bottom:50px}.cat-care dl{display:block}.cat-care dl>div{margin:25px 0}.cat-care dt{font-size:21px}.no-motion .cat-note{padding:25px 0}.no-motion .cat-stage{padding-bottom:260px}.no-motion .cat-stage .furniture{height:300px}.no-motion .cat-stage .climber{height:240px}.no-motion .story-copy{width:100%;inset:auto;padding:30px 7%}.no-motion .story-tools{left:7%;width:86%}}
@media(max-width:360px){.hero-copy h1{font-size:29px}.hero{min-height:850px;padding-top:120px;padding-bottom:390px}.hero .button{font-size:12px;padding:12px 14px}.portraits{height:340px}.floating-note{top:6%;font-size:10px}.story-copy h2{font-size:27px}.story-copy p{font-size:13px}.steps li{padding-left:95px}.steps h3{font-size:19px}.room-detail{padding:20px;gap:15px}.room-no{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.dog-intro{padding-top:170px;padding-bottom:50px;display:grid;grid-template-columns:1fr 1fr;gap:20px 80px;align-items:center}.dog-intro .button{justify-self:start;grid-column:2}.dog-intro h1{grid-row:span 2}.dog-journey{background:#fbefea;height:auto}.dog-stage{height:800px;position:relative;overflow:hidden}.js .dog-journey{height:280svh}.js .dog-stage{position:sticky;top:0;height:100svh}.dog-sun{position:absolute;width:65%;height:100%;border-radius:50% 50% 0 0;background:var(--peach);top:15%;left:18%}.dog-walker{position:absolute;width:47%;height:60%;bottom:17%;left:27%;object-fit:contain}.day-line{position:absolute;bottom:13%;left:15%;width:70%;height:1px;background:#cfb4a9;display:flex;justify-content:space-between}.day-line i{position:absolute;left:0;height:3px;top:-1px;background:#a77a65}.day-line span{background:#fbefea;border-radius:50%;padding:12px 18px;margin-top:-25px;z-index:1;font-size:15px}.day-note{position:absolute;left:7%;top:19%;width:30%}.day-note h2{font-size:34px}.day-note p{margin-top:15px;font-size:14px}.dn1{left:auto;right:6%}.dn2{left:7%}.dog-services{padding:65px 0}.dog-services h2{margin-bottom:30px}.service-row{display:grid;grid-template-columns:20% 1fr 30%;align-items:center;gap:30px;padding:26px 0;border-bottom:1px solid var(--line)}.service-row p,.service-row span{font-size:14px}.service-row span{color:#8a6858;border-left:1px solid var(--line);padding-left:30px}.assessment{padding:45px 6%;background:#f8e7df;display:flex;gap:70px;border-radius:50px 50px 12px 12px;align-items:center}.assessment .round{flex:none;width:150px;height:150px}.assessment p{max-width:740px;margin:20px 0}.assessment strong{font-weight:500;color:var(--ink)}.dog-hours{padding:50px 0 75px;display:flex;justify-content:space-between;gap:30px}.dog-hours p{font-size:14px;margin-bottom:10px}.prep-hero{display:flex;justify-content:space-between;align-items:center;padding-top:175px;padding-bottom:55px;min-height:450px;gap:50px}.prep-hero p{margin-top:20px}.packing-pet{width:40%;height:240px;border-radius:50%;background:var(--lilac);overflow:hidden;will-change:transform}.packing-pet img{width:100%;height:100%;object-fit:contain}.preparation{display:grid;grid-template-columns:28% 1fr;gap:8%;padding-bottom:65px}.prep-aside ol{padding:0;list-style:none;margin:0}.prep-aside li{padding:0 0 35px 66px;position:relative}.prep-aside li>span{position:absolute;left:0;top:0;border:1px solid #b3c8c4;background:#e7efeb;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font:22px Georgia}.prep-aside h3{font-size:24px;margin-bottom:10px}.prep-aside p{font-size:14px}.aside-note{border-top:1px solid var(--line);padding-top:25px;font-size:12px!important}.packing-paper{background:white;box-shadow:0 15px 45px #58717d0c;padding:40px 50px;border-top:3px solid var(--blue);position:relative}.packing-paper:before{content:'';position:absolute;top:-12px;left:30px;width:50px;height:18px;border:2px solid #bea58b;border-radius:4px;transform:rotate(-8deg)}.packing-paper h2{font-size:30px}.pet-select{display:flex;align-items:center;justify-content:space-between;margin:25px 0;font-size:14px;gap:15px}.pet-select select{background:#eff6f8;border:1px solid var(--line);padding:10px 15px;border-radius:10px;min-width:100px}.checklist>label{display:flex;gap:18px;border-top:1px solid var(--line);padding:19px 0;cursor:pointer}.checklist input{width:21px;height:21px;flex:none;margin:5px 0;accent-color:#6f929f}.checklist strong{display:block;font-weight:400;font-size:18px}.checklist small{display:block;font-size:13px;color:var(--muted);margin-top:6px}.checklist input:checked+span strong{text-decoration:line-through;text-decoration-color:#a9c5d1}.packing-paper #prep-status{font-size:12px;margin-top:18px;min-height:44px}.reset{background:none;border:0;border-bottom:1px solid #a5bac3;font-size:12px;padding:6px}.prep-next{padding:45px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px}.prep-next p{margin-top:20px;font-size:14px}.policy-links{padding-bottom:55px;display:flex;gap:25px;flex-wrap:wrap;font-size:13px}.policy-links p{font-size:13px}.policy-links a{text-decoration:underline}.visit-hero{padding-top:170px;padding-bottom:55px;display:flex;justify-content:space-between;align-items:center;gap:50px}.visit-hero p{margin-top:24px}.doors{display:flex;gap:25px;width:43%;align-items:flex-end;height:350px}.door{height:100%;width:50%;border-radius:160px 160px 0 0;background:var(--peach);position:relative;overflow:hidden;text-align:center;padding-top:35px;will-change:transform}.door.cat-door{background:var(--blue);height:88%}.door span{display:block;font-size:17px}.door b{font:60px Georgia;font-weight:400}.door img{position:absolute;bottom:-20px;left:10%;height:58%;width:80%;object-fit:contain}.door.cat-door img{bottom:-10px;height:54%}.contact{display:grid;grid-template-columns:42% 1fr;gap:5%;padding-bottom:50px}.contact-panel{padding-top:25px}.hall-buttons{display:flex;gap:10px;margin-bottom:25px}.hall-buttons button{padding:12px 25px;border:1px solid var(--line);background:#fff;border-radius:30px;font-size:15px}.hall-buttons button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.contact address{font-style:normal;font-size:16px;margin:20px 0 10px}.contact #hall-phone{font:32px Georgia;display:inline-block;margin-bottom:20px}.contact #hall-time{font-size:14px;max-width:370px}.map-notice{font-size:11px;margin-top:20px;max-width:360px}.map-box{border-radius:30px;min-height:480px;background:#e4eff1;position:relative;overflow:hidden;display:grid;place-items:center}.map-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.map-box iframe[hidden]{display:none}.map-box #map-placeholder{text-align:center;padding:35px;position:relative}.map-pin{font:45px Georgia;display:grid;place-items:center;width:85px;height:85px;border:1px solid #7d9da7;border-radius:50% 50% 50% 0;transform:rotate(-12deg);margin:0 auto 25px;background:#f7fbfc}.map-box p{font-size:14px;margin:20px 0}.visit-notes{display:flex;gap:45px;padding:35px 0 60px;border-top:1px solid var(--line)}.visit-notes>div{flex:1}.visit-notes h3{font-size:22px}.visit-notes p{font-size:14px;margin-top:15px}.visit-notes .license{font-size:12px}.no-motion .dog-journey{height:auto}.no-motion .dog-stage{height:auto;position:relative;padding:20px 0 320px}.no-motion .day-note{position:relative;inset:auto;width:90%;margin:0 auto;padding:25px 0;z-index:2}.no-motion .day-line{bottom:45px}.no-motion .dog-walker{height:280px;bottom:70px}.no-motion .day-note h2{font-size:28px}html:not(.js) .day-note{position:relative;inset:auto;width:90%;margin:0 auto;padding:20px 0}html:not(.js) .dog-stage{height:auto;padding-bottom:350px}html:not(.js) .dog-walker{height:300px;bottom:60px}html:not(.js) #prep-form input,html:not(.js) #pet-type,html:not(.js) #download-list,html:not(.js) #copy-list,html:not(.js) #reset-list,html:not(.js) #load-map{display:none}
@media(max-width:760px){.dog-intro{padding-top:135px;display:block;padding-bottom:35px}.dog-intro p{margin:20px 0;font-size:14px}.js .dog-journey{height:230svh}.day-note,.dn1,.dn2{top:16%;left:7%;right:auto;width:86%}.day-note h2{font-size:29px}.day-note p{font-size:14px}.dog-walker{width:90%;height:45%;left:5%;bottom:15%}.dog-sun{height:65%;width:95%;top:38%;left:5%}.day-line{left:8%;width:84%;bottom:13%}.day-line span{font-size:13px;padding:10px}.dog-services{padding:45px 0}.service-row{grid-template-columns:25% 1fr;gap:12px 15px;padding:20px 0}.service-row h3{font-size:21px}.service-row p{font-size:13px}.service-row span{grid-column:2;font-size:11px;border:0;padding:0}.assessment{border-radius:30px 30px 8px 8px;display:block;padding:30px 7%}.assessment .round{width:70px;height:70px;position:relative;inset:auto;margin:0 0 20px}.assessment .round b{font-size:30px}.assessment h2{font-size:27px}.assessment p{font-size:14px}.dog-hours{display:block;padding:35px 0 45px}.dog-hours h3{font-size:22px;margin-bottom:20px}.prep-hero{display:block;padding-top:135px;min-height:0;padding-bottom:35px}.prep-hero h1{font-size:32px}.prep-hero p{font-size:14px}.packing-pet{width:88%;height:175px;margin:30px auto 0}.preparation{display:block;padding-bottom:35px}.prep-aside ol{display:flex;gap:18px}.prep-aside li{flex:1;padding:0 0 15px}.prep-aside li>span{position:relative;width:42px;height:42px;margin-bottom:12px;font-size:18px}.prep-aside h3{font-size:18px}.prep-aside p{font-size:12px}.aside-note{padding:15px 0 30px}.packing-paper{padding:30px 22px}.packing-paper h2{font-size:25px}.pet-select{font-size:12px}.checklist>label{gap:14px}.checklist strong{font-size:17px}.checklist small{font-size:12px}.prep-next{display:block;padding:30px 0}.prep-next .button{margin-top:25px}.policy-links{gap:12px 22px}.visit-hero{display:block;padding-top:130px;padding-bottom:35px}.visit-hero h1{font-size:32px}.visit-hero p{font-size:14px}.doors{width:100%;height:270px;margin-top:30px;gap:20px}.door{padding-top:25px}.door b{font-size:48px}.door span{font-size:15px}.contact{display:block;padding-bottom:35px}.contact-panel{padding-top:10px;padding-bottom:30px}.contact address{font-size:14px}.contact #hall-phone{font-size:30px}.map-box{min-height:360px;border-radius:20px}.visit-notes{display:block;padding:10px 0 40px}.visit-notes>div{padding:25px 0;border-bottom:1px solid var(--line)}.visit-notes>div:last-child{border-bottom:0}.no-motion .dog-walker{width:85%;left:5%}.no-motion .day-note{padding:20px 0}.no-motion .day-note h2{font-size:25px}}

/* First visual review: protect faces and keep transition copy distinct. */
.portrait img,.portrait.three img{width:100%;height:100%;left:0;bottom:0;object-fit:cover;object-position:100% center}.portrait.two img{object-position:50% bottom}.climber{width:26%;height:38%;bottom:34%;left:43%}.napper{bottom:70%;height:20%;right:2%}
@media(min-width:761px){.hero{height:86svh;min-height:790px;max-height:960px}.hero-copy{transform:translateY(-10px)}.portraits{top:140px}}
@media(max-width:760px){.climber{width:42%;height:30%;bottom:14%;left:37%}.napper{width:35%;height:17%;bottom:38%;right:0}.portrait.one img{object-position:90% center}}

html:not(.js) .room-buttons{display:none}@media(max-width:760px){html:not(.js) .header{position:relative;height:auto;flex-wrap:wrap;padding-top:15px}html:not(.js) .header nav{display:flex;position:static;flex-flow:row wrap;border:0;padding:15px 0}html:not(.js) .menu-toggle{display:none}html:not(.js) .hero,html:not(.js) .cat-intro,html:not(.js) .dog-intro,html:not(.js) .prep-hero,html:not(.js) .visit-hero{padding-top:35px}}
.js.no-motion .story,.js.no-motion .cat-journey,.js.no-motion .dog-journey{height:auto}.js.no-motion .stage,.js.no-motion .cat-stage,.js.no-motion .dog-stage{position:relative;height:auto}

@media(min-width:761px){.climber{height:34%}.napper{bottom:68%;height:18%}}
