@font-face{font-family:Lilita;src:url('/assets/lilita.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:Nunito;src:url('/assets/nunito.woff2') format('woff2');font-display:swap;font-weight:400 900}
:root{--yellow:#ffe778;--blue:#123bbb;--ice:#c1e8fc;--coral:#f54c36;--ink:#102961;--display:Lilita,'Arial Rounded MT Bold',sans-serif;--body:Nunito,'Trebuchet MS',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{margin:0;color:var(--blue);background:var(--yellow);font:600 1.125rem/1.55 var(--body)}a{color:inherit;text-decoration-thickness:1.5px;text-underline-offset:5px}a:focus-visible{outline:3px solid currentColor;outline-offset:6px}button,a{-webkit-tap-highlight-color:transparent}.skip-link{position:absolute;top:-100px;left:20px;padding:12px 20px;background:var(--blue);color:white;z-index:10}.skip-link:focus{top:12px}h1,h2,h3,p{margin:0}h2{font-family:var(--display);font-weight:400;line-height:1.03}p+p{margin-top:1rem}.site-header{padding:1.6rem 4.2%;display:flex;align-items:center;justify-content:space-between;gap:2rem;position:relative;z-index:4}.wordmark{font:400 clamp(1.7rem,3.1vw,2.85rem)/.98 var(--display);text-decoration:none;white-space:nowrap}.wordmark span{font:800 .65rem/1.5 var(--body);letter-spacing:.36em;display:block;text-align:center;margin-top:.4rem}.site-header nav{display:flex;gap:clamp(1.1rem,3.5vw,3.6rem);font-size:1.125rem;font-weight:800}.site-header nav a{text-decoration:none;padding:.6rem 0}.site-header nav a:hover{text-decoration:underline}.hero{position:relative;isolation:isolate;height:min(53vw,770px);min-height:470px;padding:3.1vw 4.2% 0;overflow:hidden}.hero h1{font:400 1rem/1 var(--display)}.the{display:block;font-size:clamp(3rem,6.4vw,6.4rem);margin-left:.9%}.meow{display:block;font-size:clamp(14rem,31.3vw,32rem);letter-spacing:-.035em;line-height:.91;margin-left:-.02em}.descriptor{display:block;font:900 clamp(1rem,2.9vw,2.8rem)/1.3 var(--body);letter-spacing:.26em;margin-top:.6rem;margin-left:.7%;white-space:nowrap}.cat-space{position:absolute;right:15.5%;bottom:3.4%;height:105%;width:40%;pointer-events:none;z-index:2}.hero-cat{width:100%;height:100%;object-fit:contain;object-position:center bottom}.coral-marks{position:absolute;right:19.3%;top:8%;width:4rem;height:5rem;z-index:3;transform:rotate(-8deg)}.coral-marks i{position:absolute;width:.7rem;height:2.8rem;border-radius:100px;background:var(--coral);transform:rotate(40deg)}.coral-marks i:nth-child(2){left:1.5rem;top:1.2rem;transform:rotate(73deg)}.coral-marks i:nth-child(3){left:1.6rem;top:3rem;height:2rem;transform:rotate(113deg)}.hero-location{position:absolute;bottom:8%;left:4.3%;font-size:1.25rem;font-weight:800}.doodle-space{position:absolute;right:3%;bottom:1.4%;width:20%;height:24%;z-index:3}.sleepy-cat{width:100%;height:100%;object-fit:contain;object-position:right bottom}.wave{height:23px;background:var(--blue);position:absolute;bottom:0;left:0;right:0;z-index:3}.wave:before{content:'';position:absolute;bottom:22px;left:0;right:0;height:14px;background:radial-gradient(ellipse at 50% 100%,var(--blue) 68%,transparent 71%) 0 0/72px 28px repeat-x}.enquiry-band{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.6rem 4.2%;background:var(--ice);border-bottom:2px solid var(--blue)}.enquiry-band h2{font-size:clamp(2rem,3.4vw,3.5rem);max-width:770px}.enquiry-actions{display:flex;gap:1rem;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:56px;padding:.85rem 1.7rem;border:2px solid var(--blue);border-radius:100px;background:var(--blue);color:white;text-decoration:none;font-weight:800;line-height:1.35;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-3px);box-shadow:0 5px 0 #123bbb26}.button-outline{color:var(--blue);background:transparent}.service{padding:6.5rem 6%;position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:10%;overflow:hidden}.service-heading,.service-copy{position:relative;z-index:1}.eyebrow{font-size:.8125rem;letter-spacing:.19em;font-weight:900;display:block;margin-bottom:1.5rem}.service h2{font-size:clamp(3.5rem,6.5vw,6.5rem)}.service-copy{align-self:center;max-width:510px;font-size:1.125rem}.service-copy p{max-width:45ch}.text-link{display:inline-block;font-weight:900;margin-top:1.5rem}.hotel{background:var(--blue);color:var(--yellow);padding-bottom:8rem}.service-stamp{position:absolute;font:400 1.35rem/1 var(--display);border:2px solid var(--yellow);border-radius:50%;width:105px;height:105px;display:grid;place-content:center;text-align:center;left:37%;bottom:2rem;transform:rotate(13deg)}.spa{background:var(--ice);padding-bottom:8rem}.spa .service-heading{grid-column:2;grid-row:1}.spa .service-copy{grid-column:1;grid-row:1}.spa-word{font:400 12rem/.8 var(--display);position:absolute;bottom:-1.9rem;right:-.4rem;opacity:.1;letter-spacing:-.03em;pointer-events:none}.contact{padding:6.5rem 6%;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--yellow)}.contact h2{font-size:clamp(4rem,7.8vw,8rem)}.contact-intro p{max-width:32ch;margin-top:1.6rem}.contact-intro .button{margin-top:1.8rem}.button-yellow{background:var(--blue);color:var(--yellow)}.contact-details{padding-top:.4rem}.contact-row{padding:1.8rem 0;border-top:2px solid var(--blue)}.contact-row h3{font-size:.8125rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.7rem}.contact-row address{font-style:normal;font-size:1.25rem;line-height:1.5}.contact-row .text-link{margin-top:.8rem}.phone-link{font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:900;text-decoration:none}.phone-link:hover{text-decoration:underline}.social-links{display:flex;gap:1.5rem}.handle{font-size:.875rem;display:block;margin-top:.7rem}footer{padding:1.7rem 4.2%;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;background:var(--blue);color:var(--yellow);font-size:.875rem}footer p{font-size:.875rem}.footer-brand{font:400 1.8rem/1 var(--display);text-decoration:none}
@media(min-width:1600px){.site-header,.hero,.enquiry-band,.service,.contact,footer{padding-left:max(4.2%,calc((100% - 1500px)/2));padding-right:max(4.2%,calc((100% - 1500px)/2))}.hero{height:770px}.meow{font-size:500px}.hero-location{left:max(4.2%,calc((100% - 1500px)/2))}.cat-space{right:calc(50% - 540px);width:570px}.doodle-space{right:max(4.2%,calc((100% - 1500px)/2));width:280px}.coral-marks{right:calc(50% - 430px)}}
@media(max-width:1100px){.enquiry-band{align-items:flex-start;flex-direction:column;gap:1.4rem}.hero{min-height:470px}.cat-space{right:12%;height:100%;width:45%}.descriptor{font-size:2.6vw}.service,.contact{column-gap:7%;padding-left:5%;padding-right:5%}.coral-marks{right:17%}}
@media(max-width:700px){.site-header{padding:1.3rem 5%;align-items:flex-start;gap:1.1rem;flex-wrap:wrap}.wordmark{font-size:2rem}.wordmark span{font-size:.59rem}.site-header nav{font-size:.9rem;gap:1.35rem;width:100%;justify-content:space-between;padding-top:.2rem}.hero{height:530px;min-height:0;padding:1.3rem 5% 0}.the{font-size:3.7rem}.meow{font-size:30.6vw;line-height:1;margin-top:.2rem;letter-spacing:-.035em}.descriptor{font-size:3.4vw;letter-spacing:.22em;margin-top:.55rem;position:relative;z-index:3}.cat-space{height:355px;width:75%;right:-4%;bottom:17px}.hero-location{left:5%;bottom:19%;font-size:1rem;max-width:8ch;line-height:1.4;z-index:3}.doodle-space{width:32%;height:18%;right:auto;left:4%;bottom:2.8%}.coral-marks{top:39%;right:7%;transform:scale(.65) rotate(-8deg);transform-origin:top right}.wave{height:18px}.wave:before{bottom:17px;background-size:54px 28px}.enquiry-band{padding:2rem 5%}.enquiry-band h2{font-size:2.4rem;max-width:14ch}.enquiry-actions{width:100%;flex-wrap:wrap;gap:.7rem}.button{font-size:.95rem;padding:.85rem 1.15rem;min-height:52px}.service,.contact{display:flex;flex-direction:column;gap:2rem;padding:3.8rem 6%}.service h2{font-size:4.2rem}.eyebrow{font-size:.75rem;margin-bottom:1rem}.service-copy{font-size:1.0625rem;align-self:auto}.hotel{padding-bottom:7rem}.service-stamp{left:auto;right:7%;bottom:1.3rem;width:78px;height:78px;font-size:1rem}.spa{padding-bottom:5.5rem}.spa-word{font-size:9rem}.contact h2{font-size:4.7rem}.contact-intro p{font-size:1.0625rem}.contact-details{margin-top:1rem}.contact-row address{font-size:1.125rem}footer{flex-wrap:wrap;padding:1.7rem 6%;gap:.8rem 1.5rem}.footer-brand{width:100%}footer p,footer>a:last-child{font-size:.8125rem}}
@media(max-width:360px){.hero{height:490px}.cat-space{height:320px}.service h2{font-size:3.7rem}.contact h2{font-size:4.1rem}.enquiry-actions .button{width:100%}.site-header nav{gap:.75rem}.descriptor{letter-spacing:.16em}}
.faq{background:var(--blue);color:var(--yellow);display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.4fr);gap:7%;padding:6rem 6%}.faq-intro h2{font-size:clamp(3.7rem,6.8vw,6.7rem)}.faq-intro>p{max-width:31ch;margin-top:1.5rem;color:var(--ice);font-size:1.0625rem}.reading-note{border-left:3px solid var(--yellow);padding-left:1.2rem;max-width:34ch;margin-top:2.5rem}.reading-label{display:block;font-size:.75rem;font-weight:900;letter-spacing:.12em;margin-bottom:.6rem}.reading-note p{font-size:.875rem;line-height:1.65;color:var(--ice)}.reading-note cite{font-style:normal}.review-date{display:block;font-size:.75rem;margin-top:.8rem;color:var(--ice)}.faq-list{border-top:2px solid var(--yellow)}.faq details{border-bottom:1px solid #c1e8fc66}.faq summary{display:grid;grid-template-columns:1.7rem 1fr 2rem;align-items:center;gap:1rem;cursor:pointer;padding:1.4rem 0;list-style:none;font-size:1.1875rem;font-weight:800;line-height:1.45}.faq summary::-webkit-details-marker{display:none}.faq summary::marker{content:''}.faq summary:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}.faq summary:hover>span:nth-child(2){text-decoration:underline;text-underline-offset:4px}.faq-number{font-size:.875rem;color:var(--ice);font-weight:700;align-self:start;padding-top:.24rem}.faq-toggle{position:relative;display:block;width:2rem;height:2rem;border:1.5px solid var(--yellow);border-radius:50%;flex-shrink:0}.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;top:50%;left:50%;background:var(--yellow);transform:translate(-50%,-50%)}.faq-toggle:before{width:.8rem;height:2px}.faq-toggle:after{width:2px;height:.8rem}.faq details[open] .faq-toggle{background:var(--yellow)}.faq details[open] .faq-toggle:before{background:var(--blue)}.faq details[open] .faq-toggle:after{display:none}.faq-answer{padding:0 2.8rem 1.8rem 2.7rem;color:var(--ice);font-size:1rem;line-height:1.75}.faq-source{display:block;color:var(--yellow);font-size:.875rem;line-height:1.55;margin-top:1rem;width:fit-content;overflow-wrap:anywhere}.faq-source+.faq-source{margin-top:.6rem}.faq-footer-note{font-size:.875rem;color:var(--ice);padding-top:1.5rem}.faq-footer-note a{color:var(--yellow)}
@media(min-width:1600px){.faq{padding-left:max(4.2%,calc((100% - 1500px)/2));padding-right:max(4.2%,calc((100% - 1500px)/2))}}
@media(max-width:850px){.faq{grid-template-columns:1fr;gap:2.5rem;padding:4rem 6%}.faq-intro>p{max-width:48ch}.faq-intro h2 br{display:none}.reading-note{max-width:50ch;margin-top:1.5rem}.faq summary{font-size:1.0625rem;gap:.75rem;grid-template-columns:1.35rem 1fr 1.8rem}.faq-toggle{width:1.8rem;height:1.8rem}.faq-answer{padding-left:2.1rem;padding-right:.5rem}.faq-intro h2{font-size:clamp(3.2rem,10vw,5rem)}}
.header-tools{display:flex;align-items:center;gap:2.2rem}.language-switch{display:flex;align-items:center;border:1.5px solid var(--blue);border-radius:100px;padding:3px;gap:3px;flex-shrink:0}.language-switch a{display:grid;place-items:center;min-width:40px;min-height:38px;border-radius:100px;text-decoration:none;font-size:.875rem;font-weight:900}.language-switch a[aria-current="page"]{background:var(--blue);color:var(--yellow)}.language-switch a:hover:not([aria-current]){background:#123bbb18}
@media(min-width:701px) and (max-width:1050px){.site-header nav{gap:1.3rem;font-size:1rem}.header-tools{gap:1.2rem}.wordmark{font-size:1.9rem}}
@media(max-width:700px){.header-tools{display:contents}.language-switch{position:absolute;top:1.3rem;right:5%}.language-switch a{min-width:35px;min-height:35px}.site-header nav{gap:.75rem}.wordmark{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}
