*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f0e8;color:#252821;font-family:"DM Sans",sans-serif;line-height:1.6}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.announcement{background:#252821;color:#f4f0e8;text-align:center;padding:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.announcement span{margin-left:10px}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;border-bottom:1px solid #d9d4ca;background:#f4f0e8;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:10px;font:600 23px "Playfair Display",serif}.mark{width:30px;height:30px;border:1px solid #6c745d;border-radius:50%;display:grid;place-items:center;font:500 16px "Playfair Display",serif;color:#59624d}.nav nav{display:flex;gap:34px;font-size:13px}.nav nav a:hover,.footer-links a:hover{text-decoration:underline}.nav-cta{font-size:12px;border-bottom:1px solid #252821;padding-bottom:3px}.menu{display:none;background:none;border:0}.hero{min-height:720px;padding:85px 7% 80px;display:grid;grid-template-columns:1fr .9fr;gap:8%;align-items:center}.eyebrow,.section-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#73796b;font-weight:600}.hero h1,.intro h2,.section-head h2,.about h2,.process h2,.faq h2,.booking h2{font:500 clamp(48px,6vw,84px)/.98 "Playfair Display",serif;letter-spacing:-.035em;margin:24px 0}.hero h1 em,.intro h2 em,.section-head h2 em,.about h2 em,.faq h2 em,.booking h2 em{font-weight:500;color:#667056}.lead{font-size:17px;max-width:540px;color:#5c6159}.hero-actions{display:flex;align-items:center;gap:28px;margin:36px 0}.button{display:inline-flex;align-items:center;gap:30px;padding:15px 20px;border:0;cursor:pointer;font-size:12px}.primary{background:#252821;color:#fff}.light{background:#ece8dd;color:#252821}.button span{font-size:16px}.text-link{font-size:12px;border-bottom:1px solid #777b71;padding-bottom:4px}.text-link span{margin-left:12px}.trust{display:flex;gap:10px;align-items:center;color:#777c72;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.trust i{height:12px;border-left:1px solid #bbb7ae;margin:0 5px}.hero-visual{position:relative;min-height:570px}.image-card,.about-image{background:linear-gradient(145deg,#b8b5a7,#727967 55%,#3e493c);height:570px;position:relative;overflow:hidden}.image-card:before,.about-image:before{content:"";position:absolute;width:60%;height:75%;right:-10%;top:10%;border-radius:48% 52% 40% 60%;background:rgba(241,237,225,.27);transform:rotate(18deg)}.image-card:after,.about-image:after{content:"";position:absolute;width:35%;height:50%;left:15%;bottom:-10%;border-radius:50%;background:rgba(42,51,40,.3)}.image-overlay{position:absolute;inset:auto 25px 25px;display:flex;justify-content:space-between;color:#f4f0e8;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.floating-note{position:absolute;bottom:45px;left:-45px;background:#ebe5d8;padding:23px 26px;font:500 18px/1.25 "Playfair Display",serif;box-shadow:0 15px 40px #3332}.intro,.services,.about,.process,.testimonials,.faq{padding:120px 8%}.intro{border-top:1px solid #d7d2c8}.intro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12%;align-items:end}.intro h2{font-size:60px;margin-bottom:0}.intro-grid p{color:#686d64;max-width:470px}.services{background:#e7e2d7}.section-head{display:grid;grid-template-columns:1fr .55fr;gap:12%;align-items:end}.section-head h2{font-size:64px}.section-head>p{font-size:14px;color:#696e65;margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #c9c5ba;margin-top:70px}.service{min-height:260px;padding:32px 38px 30px 0;border-bottom:1px solid #c9c5ba;position:relative}.service:nth-child(even){padding-left:38px;border-left:1px solid #c9c5ba}.service span,.steps span{font-size:10px;color:#777d70}.service h3{font:500 29px "Playfair Display",serif;margin:35px 0 12px}.service p{font-size:13px;color:#71766e;max-width:420px}.service b{position:absolute;right:12px;bottom:28px;font-weight:400}.quote{background:#667056;color:#f4f0e8;padding:120px 15%;text-align:center}.quote-mark{font:70px "Playfair Display",serif}.quote blockquote{font:500 clamp(30px,4vw,54px)/1.15 "Playfair Display",serif;margin:5px auto 30px;max-width:1000px}.quote p{font-size:10px;letter-spacing:.15em;text-transform:uppercase}.about{display:grid;grid-template-columns:.9fr 1fr;gap:10%;align-items:center}.about-image{height:650px}.about h2{font-size:62px}.about .large{font:500 22px/1.35 "Playfair Display",serif;max-width:510px}.about-copy>p:not(.large){color:#696e65;max-width:520px;font-size:14px}.credentials{display:flex;gap:45px;border-top:1px solid #d1ccc1;margin-top:45px;padding-top:25px}.credentials div{display:flex;flex-direction:column}.credentials strong{font:500 24px "Playfair Display",serif}.credentials span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#777c72}.process{background:#252821;color:#f4f0e8}.process .section-label{color:#aeb4a4}.process h2{font-size:65px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:65px;border-top:1px solid #565b51}.steps>div{padding:28px 40px 20px 0;border-right:1px solid #565b51}.steps>div+div{padding-left:40px}.steps h3{font:500 26px "Playfair Display",serif;margin:40px 0 10px}.steps p{font-size:13px;color:#b7baaf;max-width:280px}.testimonials{background:#e7e2d7}.testimonial-wrap{display:grid;grid-template-columns:50px 1fr 50px;align-items:center;gap:30px;margin-top:60px}.testimonial{text-align:center;grid-column:2;display:none}.testimonial.active{display:block}.testimonial p{font:500 35px/1.25 "Playfair Display",serif;max-width:900px;margin:0 auto 25px}.testimonial span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#777d70}.slider-btn{border:1px solid #bcb8ae;background:transparent;border-radius:50%;width:44px;height:44px;cursor:pointer}.prev{grid-column:1}.next{grid-column:3}.faq{background:#f4f0e8}.faq h2{font-size:65px}.faq-list{max-width:900px;margin:55px 0 0 auto}.faq details{border-top:1px solid #d1ccc2;padding:24px 0}.faq details:last-child{border-bottom:1px solid #d1ccc2}.faq summary{cursor:pointer;list-style:none;font:500 21px "Playfair Display",serif;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary span{font:400 20px "DM Sans"}.faq details p{max-width:650px;color:#6d7169;font-size:13px}.booking{background:#667056;color:#f4f0e8;padding:100px 8%;display:grid;grid-template-columns:1fr .75fr;gap:13%;align-items:start}.booking .section-label{color:#b8bdaf}.booking h2{font-size:67px}.booking>div>p{color:#d0d3c9;max-width:430px;font-size:14px}.booking form{background:#252821;padding:38px}.booking label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#bfc2b8;margin-bottom:22px}.booking input,.booking textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #5b6056;color:#f4f0e8;padding:11px 0;outline:none;resize:vertical}.booking input::placeholder,.booking textarea::placeholder{color:#777c73}.booking .button{margin-top:8px}.booking small{display:block;color:#777c73;font-size:9px;margin-top:14px}footer{background:#252821;color:#f4f0e8;padding:65px 7% 25px}.light-brand{color:#f4f0e8}.light-brand .mark{color:#c0c6b6;border-color:#87907c}.footer-top{display:grid;grid-template-columns:1fr .7fr .7fr;gap:8%;padding-bottom:70px}.footer-top p,.footer-top a{font-size:12px;color:#b4b8ae}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-bottom{border-top:1px solid #4c5149;padding-top:18px;display:flex;justify-content:space-between;font-size:9px;color:#7f857a}.toast{position:fixed;bottom:25px;right:25px;background:#252821;color:#fff;padding:14px 18px;font-size:12px;transform:translateY(100px);transition:.35s;z-index:20}.toast.show{transform:translateY(0)}.reveal{animation:rise .9s ease both}@keyframes rise{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@media(max-width:800px){.nav{padding:0 5%}.nav nav,.nav-cta{display:none}.menu{display:block}.hero{grid-template-columns:1fr;padding:65px 7%}.hero h1{font-size:58px}.hero-visual{min-height:440px}.image-card{height:440px}.floating-note{left:15px;bottom:25px}.intro-grid,.section-head,.about,.booking{grid-template-columns:1fr;gap:35px}.intro,.services,.about,.process,.testimonials,.faq{padding:80px 7%}.intro h2,.section-head h2,.about h2,.process h2,.faq h2,.booking h2{font-size:50px}.service-grid{grid-template-columns:1fr}.service:nth-child(even){padding-left:0;border-left:0}.service{padding-right:0}.steps{grid-template-columns:1fr}.steps>div,.steps>div+div{padding:25px 0;border-right:0;border-bottom:1px solid #565b51}.testimonial p{font-size:25px}.testimonial-wrap{grid-template-columns:35px 1fr 35px;gap:8px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}.booking form{padding:25px}}