@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#162332;--paper:#f5f3ed;--blue:#526e89;--line:#d7d8d2;--muted:#58616a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #538bc1;outline-offset:5px}.skip{position:fixed;top:-100px;background:white;padding:14px;z-index:99}.skip:focus{top:0}header{max-width:1600px;margin:auto;padding:29px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:15px;font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:.04em;font-size:18px}.mark{font-family:Georgia,serif;font-size:48px;line-height:1;letter-spacing:-9px;width:47px}.mark span{color:var(--blue);font-size:36px}.brand small{display:block;font-size:8px;letter-spacing:.19em;margin-top:5px}nav{display:flex;align-items:center;gap:29px;font-size:13px}nav a[aria-current]{border-bottom:1px solid var(--ink);padding-bottom:5px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:white;padding:19px 25px;font-size:13px;font-weight:600;gap:18px;transition:background .2s}.button:hover{background:var(--blue)}.button.small{padding:14px 20px}h1,h2,p{margin-top:0}h1,h2{font-family:Manrope,Arial,sans-serif;font-weight:500;letter-spacing:-.065em}h1{font-size:clamp(58px,6.2vw,100px);line-height:1.02;margin-bottom:27px}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--blue)}h2{font-size:clamp(32px,3.4vw,52px);line-height:1.15}p{font-size:15px;line-height:1.8;color:var(--muted)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.2em;color:var(--blue);margin-bottom:25px}.hero{display:grid;grid-template-columns:47% 53%;max-width:1600px;margin:auto;padding:65px 5% 85px;align-items:center}.hero-copy{padding:10px 30px 10px 0;z-index:1}.intro{max-width:340px;margin-bottom:29px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:7px}.rating{display:block;font-size:11px;margin-top:42px}.rating span{color:var(--blue);letter-spacing:2px;margin-right:10px}.rating small{color:var(--muted)}.hero-photo{position:relative;padding-bottom:27px;margin-left:24px}.hero-photo>img{width:100%;height:510px;object-fit:cover;object-position:48% center}.photo-caption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;padding-top:15px}.photo-inset{position:absolute;bottom:70px;left:-65px;width:157px;background:var(--paper);padding:8px}.photo-inset img{width:100%;height:175px;object-fit:cover}.photo-inset span{display:block;font-size:7px;letter-spacing:.1em;padding:10px 0 4px}.home-services{border-top:1px solid var(--line);padding:75px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1600px;margin:auto}.home-services p{max-width:360px}.quick-menu a{display:flex;justify-content:space-between;padding:27px 0;border-bottom:1px solid var(--line);font-size:18px}.quick-menu strong{font-size:14px;font-weight:500}.work-teaser{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper);align-items:center}.work-teaser img{height:400px;width:100%;object-fit:cover;object-position:center 40%}.work-teaser>div{padding:60px 15%}.work-teaser .eyebrow{color:#adc0d1}.inner{max-width:1400px;padding:65px 8% 30px;margin:auto}.page-heading{padding-bottom:40px}.page-heading h1{font-size:clamp(55px,6vw,85px)}.page-heading p:last-child{max-width:480px}.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:40px 1fr 80px 44px;gap:25px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}.number{font-size:10px;color:var(--blue);align-self:start;padding-top:8px}.service h2{font-size:25px;letter-spacing:-.04em;margin-bottom:8px}.service p{font-size:13px;max-width:550px;margin:0}.price{font-size:23px}.price small{display:block;font-size:10px;color:var(--muted);margin-top:7px}.round{border:1px solid var(--line);width:42px;height:42px;display:grid;place-items:center;border-radius:50%}.round:hover{background:var(--ink);color:white}.note{font-size:11px;margin:25px 0}.closing{text-align:center;padding:65px 0 55px}.closing h2{margin-bottom:25px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery-item{border:0;padding:0;text-align:left;background:transparent;color:var(--ink);cursor:pointer}.gallery-item img{width:100%;height:340px;object-fit:cover;object-position:center 35%;transition:filter .2s}.gallery-item:hover img{filter:brightness(.9)}.gallery-item span{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;padding:18px 0}.gallery-item b{font-size:16px}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.visit-photo{width:100%;height:550px;object-fit:cover;object-position:48% center}.visit-info{padding:10px 0}.visit-info h2{font-size:33px;letter-spacing:-.04em}.visit-info hr{border:0;border-top:1px solid var(--line);margin:30px 0}.visit-info .eyebrow{margin-bottom:17px}.phone{font-size:26px;display:block;margin-bottom:15px}.social-section{padding:65px 0;border-bottom:1px solid var(--line)}.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.outline:hover{color:white}.faq{padding:50px 0}.faq h2{font-size:34px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-size:15px}details p{padding-top:18px;max-width:700px;font-size:14px}footer{display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:28px;padding:50px 5% 30px;border-top:1px solid var(--line);max-width:1600px;margin:auto}.footer-brand{font-size:23px;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.02em}.footer-brand span{display:block;font-size:9px;letter-spacing:.3em;margin-top:8px}footer p{font-size:12px}footer>div{display:flex;flex-direction:column;gap:13px;font-size:12px}footer>small{grid-column:1/-1;font-size:9px;line-height:1.8;color:#69717b;border-top:1px solid var(--line);padding-top:22px;margin-top:15px}.menu,.mobile-book{display:none}dialog{border:0;padding:45px 15px 15px;background:var(--paper);max-width:90vw;max-height:90vh}dialog::backdrop{background:#07111be8}dialog img{max-height:75vh;max-width:80vw;object-fit:contain}.close{position:absolute;right:15px;top:12px;border:0;background:transparent;cursor:pointer}
@media(min-width:1600px){.hero-photo>img{height:600px}}@media(max-width:1000px){nav{gap:19px}.hero{padding-top:45px}.hero-photo>img{height:470px}.photo-inset{width:125px;left:-35px}.photo-inset img{height:140px}.gallery-item img{height:280px}.visit-grid{gap:30px}.actions{gap:17px}}@media(max-width:760px){header{padding:20px 6%;position:relative}.brand{font-size:15px}.brand small{font-size:7px}.mark{font-size:40px;width:38px}.menu{display:block;border:1px solid var(--line);background:transparent;padding:10px 12px;font-size:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:10;padding:25px 6%;border-bottom:1px solid var(--line);align-items:stretch}nav.open{display:flex;flex-direction:column;gap:20px}.hero{display:flex;flex-direction:column;padding:38px 6% 35px;align-items:stretch}.hero-copy{padding:0}.hero h1{font-size:64px;margin-bottom:22px}.hero h1 br:nth-child(2){display:none}.intro{font-size:14px;max-width:340px}.eyebrow{font-size:9px;margin-bottom:21px}.button{padding:17px 22px;font-size:12px}.rating{margin-top:25px;margin-bottom:30px;font-size:10px}.rating small{font-size:9px}.hero-photo{margin:0 0 0 20px;padding-bottom:20px}.hero-photo>img{height:330px;object-position:center}.photo-inset{left:-20px;bottom:48px;width:110px}.photo-inset img{height:125px}.photo-caption{font-size:6px;letter-spacing:.07em}.home-services{padding:45px 6%;grid-template-columns:1fr;gap:20px}.home-services h2{font-size:37px}.quick-menu a{padding:21px 0;font-size:17px}.work-teaser{grid-template-columns:1fr}.work-teaser img{height:300px}.work-teaser>div{padding:35px 6%}.work-teaser h2{font-size:38px}.inner{padding:40px 6% 10px}.page-heading{padding-bottom:25px}.page-heading h1{font-size:58px}.page-heading p{font-size:14px}.service{grid-template-columns:20px 1fr 55px;gap:13px;padding:24px 0}.service h2{font-size:21px}.service p{font-size:12px}.service .round{grid-column:2;width:auto;height:auto;border:0;border-radius:0;justify-self:start;font-size:20px}.price{font-size:20px;align-self:start;padding-top:4px}.number{font-size:9px}.gallery{grid-template-columns:1fr 1fr;gap:15px}.gallery-item img{height:230px}.gallery-item span{font-size:7px;padding:13px 0}.visit-grid{grid-template-columns:1fr;gap:30px}.visit-photo{height:300px;object-position:center}.visit-info h2{font-size:30px}.social-section{padding:40px 0}.social-section h2{font-size:32px}.closing{padding:45px 0}.closing h2{font-size:34px}footer{grid-template-columns:1fr 1fr;padding:35px 6% 95px;gap:25px}footer>.footer-brand{grid-column:1/-1}footer p{font-size:11px}footer>div{font-size:11px}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;background:var(--ink);color:white;padding:17px 15px calc(17px + env(safe-area-inset-bottom));z-index:8;font-size:13px;box-shadow:0 -2px 12px #0001}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
