@font-face{font-family:Barlow;src:url('assets/barlow-400.d03a7a5f6b74.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url('assets/barlow-500.0d7513795eaf.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Barlow;src:url('assets/barlow-700.fb958c8c20a0.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--slate:#3c4758;--sand:#e2dbd4;--cream:#f5f3ee;--ink:#302e2e;--line:#c8c4bc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:400 20px/1.5 Barlow,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid currentColor;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.05;font-weight:500}h1{font-size:clamp(64px,7vw,112px);letter-spacing:-.04em}h2{font-size:clamp(40px,4.3vw,64px);letter-spacing:-.025em}h3{font-size:28px}p+p{margin-top:20px}.eyebrow{font-size:14px;font-weight:500;letter-spacing:.16em;margin-bottom:26px}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:20px 5%;background:var(--slate);color:var(--cream);border-bottom:1px solid #ffffff26}.logo{width:170px;flex-shrink:0}.logo img{width:100%;height:auto}.header nav{display:flex;align-items:center;gap:32px}.header nav>a{text-decoration:none;font-size:18px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 25px;background:var(--sand);color:var(--ink);font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .15s,transform .15s}.button:hover{background:var(--cream);transform:translateY(-2px)}.button.small{padding:11px 20px}.button span{font-size:24px;line-height:1}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--slate);color:var(--cream);min-height:660px}.hero-copy{padding:64px 10% 60px}.hero .eyebrow{color:var(--sand)}.intro{max-width:420px;font-size:23px;margin-top:30px;line-height:1.45}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:34px}.text-link{font-weight:500;font-size:19px}.text-link span{margin-left:9px}.hero-price{border-top:1px solid #ffffff35;margin-top:40px;padding-top:21px;font-size:18px}.hero-price strong{font-size:26px;font-weight:500}.hero-price>span{display:block;font-size:16px;color:var(--sand);margin-top:4px}.hero-photo{position:relative;min-height:550px;overflow:hidden}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:48% center}.hero-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#17202aaa)}.hero-photo figcaption{position:absolute;bottom:24px;left:30px;font-size:16px;z-index:1}.strip{display:flex;justify-content:space-between;gap:20px;padding:22px 8%;border-bottom:1px solid var(--line);font-size:18px;color:var(--slate)}.strip span:before{content:'+';margin-right:15px}.section{padding:100px 8%;scroll-margin-top:20px}.studio{display:grid;grid-template-columns:1fr 1fr;gap:10%}.studio .lead{font-size:24px;margin-top:28px}.studio p:not(.eyebrow){max-width:510px}.studio .text-link{display:inline-block;margin-top:26px;color:var(--slate)}.services{list-style:none;padding:0;margin:0}.services li{display:flex;gap:24px;padding:28px 0;border-top:1px solid var(--line)}.services li>span{color:var(--slate);font-size:16px;min-width:24px}.services li p{font-size:20px;margin-top:12px}.testimonials{background:var(--sand)}.section-heading{margin-bottom:44px;max-width:680px}.section-heading>p:not(.eyebrow){margin-top:24px;font-size:23px;max-width:600px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.quotes>figure{display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid #a7a09a;padding-top:28px}.quotes blockquote{margin:0 0 32px;font-size:23px;line-height:1.5}.quotes figcaption{display:flex;align-items:center;gap:16px}.quotes figcaption img{width:60px;height:60px;object-fit:cover;border-radius:50%}.quotes figcaption strong{display:block;font-size:19px;font-weight:500}.quotes figcaption span{display:block;font-size:16px}.booking{background:var(--slate);color:var(--cream)}.booking .eyebrow{color:var(--sand)}.booking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.booking-grid article{padding:30px;background:#ffffff08;border:1px solid #ffffff50}.booking-grid .eyebrow{margin-bottom:18px}.booking-grid h3{font-size:38px}.price{font-size:60px;line-height:1.2;margin-top:24px;letter-spacing:-.03em}.price>span{font-size:24px;letter-spacing:0}.vat{font-size:17px;margin-top:8px;color:var(--sand)}.booking-grid .button{display:flex;margin-top:30px}.booking-note{margin-top:32px}.booking-note a{font-size:23px;display:inline-block;margin-top:4px}.booking-note .fine{max-width:730px;margin-top:18px;color:var(--sand)}.fine{font-size:16px;line-height:1.5}.practical{display:grid;grid-template-columns:1fr 1fr;gap:10%}.practical p:not(.eyebrow){margin-top:24px;max-width:500px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:23px;font-weight:500;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:26px}details[open]>summary:after{content:'−'}.faq{border-top:1px solid var(--line)}.faq p{font-size:20px}.floorplan{margin-top:25px;background:white}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.contact>div>p:not(.eyebrow){max-width:420px;margin-top:28px}address{font-style:normal;display:grid;justify-items:start;gap:16px;margin-top:30px}address .contact-phone{font-size:38px;text-decoration:none;color:var(--slate)}address span{font-size:19px}form{padding:36px;background:var(--sand)}form h3{margin-bottom:24px}label{display:block;font-size:18px;margin:16px 0 7px}input,textarea{display:block;width:100%;padding:12px 14px;border:1px solid #928e88;border-radius:0;background:var(--cream);color:var(--ink)}textarea{resize:vertical}form .fine{margin-top:18px}form .button{margin-top:22px;background:var(--slate);color:var(--cream);width:100%}form .button:hover{background:#2e3949}form .button:disabled{opacity:.65;cursor:wait}#form-status{margin-top:16px;font-size:18px}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}footer{padding:34px 8%;background:var(--slate);color:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:16px}footer>a{font-size:21px;font-weight:500;text-decoration:none}footer>div{display:flex;gap:24px}.skip{position:fixed;left:16px;top:-100px;z-index:10;padding:12px;background:white;color:var(--ink)}.skip:focus{top:12px}.legal{max-width:900px;margin:auto;padding:80px 24px}.legal h1{font-size:56px}.legal h2{font-size:30px;margin-top:38px}.legal p{margin-top:18px}
@media(min-width:1500px){.hero-copy{padding-left:max(12%,calc((100vw - 1280px)/2))}.section{padding-left:max(8%,calc((100vw - 1280px)/2));padding-right:max(8%,calc((100vw - 1280px)/2))}}
@media(max-width:1050px){.hero-copy{padding:48px 8%}.hero{min-height:620px}.hero-actions{gap:20px}.section{padding:72px 6%}.studio,.practical,.contact{gap:6%}.booking-grid article{padding:24px 20px}.quotes{gap:24px}.quotes blockquote{font-size:21px}.header nav{gap:22px}}
@media(max-width:760px){html{scroll-padding-top:20px}.header{height:82px;padding:18px 6%}.logo{width:140px}.header nav>a:not(.button){display:none}.header .button{font-size:17px;padding:10px 14px;gap:18px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 38px}h1{font-size:76px}.intro{font-size:23px;max-width:530px}.hero-photo{height:330px;min-height:0}.hero-photo>img{object-position:center 55%}.hero-price{margin-top:30px}.hero-photo figcaption{left:6%}.strip{padding:20px 6%;display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:17px}.section{padding:58px 6%}.studio,.practical,.contact{grid-template-columns:1fr;gap:36px}.services li:first-child{padding-top:24px}.quotes,.booking-grid{grid-template-columns:1fr;gap:28px}.quotes blockquote{font-size:23px}.quotes>figure{padding-top:24px}.quotes figcaption{margin-bottom:12px}.section-heading{margin-bottom:32px}.booking-grid article{padding:26px}.booking-grid .eyebrow{margin-bottom:12px}.booking-grid h3{font-size:32px}.price{font-size:54px;margin-top:18px}.booking-grid .button{margin-top:22px}.booking-note a{font-size:22px}.booking-note p{font-size:19px}.booking-note .fine{font-size:16px}form{padding:26px}footer{padding:32px 6%;flex-direction:column;align-items:flex-start;gap:16px}.eyebrow{margin-bottom:20px;font-size:13px}.hero-actions .button{padding:16px 22px}.legal h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.more-quotes{margin-top:35px}.more-quotes .quotes{margin-top:30px;row-gap:45px}
