*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:#211f1d;background:#f7f3ee}a{text-decoration:none;color:inherit}img{display:block;width:100%;object-fit:cover}.topbar{height:34px;background:#211f1d;color:#fff;text-align:center;font-size:10px;letter-spacing:2px;padding:10px}.topbar span{opacity:.5;margin:0 8px}.header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:#f7f3ee;position:sticky;top:0;z-index:20;border-bottom:1px solid #e7dfd5}.logo{font-family:"Playfair Display",serif;font-size:29px;letter-spacing:4px;font-weight:700}.logo span{color:#b67c6e}.header nav{display:flex;gap:34px;font-size:13px;color:#5e5751}.header nav a:hover{color:#b67c6e}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 22px;font-size:12px;font-weight:700;letter-spacing:.5px;border:1px solid transparent;transition:.25s}.btn-dark{background:#211f1d;color:#fff}.btn-dark:hover{background:#b67c6e;transform:translateY(-2px)}.btn-outline{border-color:#211f1d}.btn-outline:hover{background:#211f1d;color:#fff}.menu{display:none;border:0;background:none;font-size:22px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px}.hero-copy{padding:110px 10% 70px 11%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:700;color:#a36e61;margin:0 0 18px}.hero h1,.section h2,.booking h2{font-family:"Playfair Display",serif;font-weight:500;line-height:1.02;font-size:clamp(48px,5.2vw,78px);margin:0 0 25px}.hero h1 em,.section h2 em,.booking h2 em{font-style:italic;color:#b67c6e}.hero-text{max-width:480px;color:#756d66;line-height:1.8;font-size:15px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:25px}.text-link{font-size:12px;font-weight:700}.hero-meta{display:flex;gap:45px;margin-top:60px;border-top:1px solid #ded5cb;padding-top:24px}.hero-meta div{display:flex;flex-direction:column}.hero-meta strong{font-family:"Playfair Display";font-size:23px}.hero-meta small{color:#8b827b;font-size:10px;margin-top:3px}.hero-image{position:relative;overflow:hidden}.hero-image>img{height:100%;min-height:690px}.floating-card{position:absolute;bottom:30px;left:30px;background:rgba(255,255,255,.94);padding:17px 20px;display:flex;align-items:center;gap:13px;box-shadow:0 12px 35px #0002}.floating-card>span{font-size:22px;color:#b67c6e}.floating-card b,.floating-card small{display:block}.floating-card b{font-size:12px}.floating-card small{font-size:10px;color:#8b827b;margin-top:3px}.marquee{overflow:hidden;background:#b67c6e;color:#fff;padding:15px 0;font-size:11px;letter-spacing:4px;white-space:nowrap}.marquee div{word-spacing:15px;text-align:center}.marquee span{opacity:.6}.section{padding:110px 8%}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-head h2{font-size:55px;margin:0}.section-head>p{max-width:370px;color:#817870;line-height:1.7;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #dcd3c9;border-left:1px solid #dcd3c9}.service-card{padding:30px;border-right:1px solid #dcd3c9;border-bottom:1px solid #dcd3c9;min-height:320px;transition:.25s}.service-card:hover{background:#efe7df;transform:translateY(-4px)}.service-card.featured{background:#211f1d;color:#fff}.service-num{font-size:10px;color:#b67c6e;margin-bottom:55px}.service-card h3{font-family:"Playfair Display";font-size:26px;font-weight:500;margin:0 0 12px}.service-card p{font-size:12px;line-height:1.7;color:#8e857e;min-height:60px}.featured p{color:#bdb5ae}.price{font-size:12px;font-weight:700;margin:28px 0 14px}.service-card a{font-size:11px;font-weight:700;color:#b67c6e}.about{display:grid;grid-template-columns:1fr 1fr;padding-top:0}.about-image{min-height:620px}.about-image img{height:100%;min-height:620px}.about-copy{padding:80px 10%;display:flex;justify-content:center;flex-direction:column}.about-copy h2{font-size:56px}.about-copy>p:not(.eyebrow){color:#756d66;font-size:14px;line-height:1.9;max-width:470px}.check-list{margin:28px 0;display:grid;gap:13px;font-size:12px;font-weight:600}.gallery{padding-top:40px}.centered{text-align:center;display:block}.centered>p:last-child{margin:0 auto;max-width:450px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-grid img{height:430px;transition:.35s}.gallery-grid img:hover{filter:brightness(.8)}.quote-section{padding:120px 12%;background:#e9ded4;text-align:center}.quote-mark{font-family:"Playfair Display";font-size:65px;color:#b67c6e;height:50px}.quote-section blockquote{font-family:"Playfair Display";font-size:clamp(25px,3vw,42px);line-height:1.35;max-width:900px;margin:10px auto 30px}.reviewer strong,.reviewer span{display:block}.reviewer strong{font-size:12px}.reviewer span{font-size:10px;color:#887d74;margin-top:5px}.booking{display:grid;grid-template-columns:1fr 1fr;gap:90px;background:#f7f3ee}.booking-copy h2{font-size:58px}.booking-copy>p:not(.eyebrow){max-width:450px;color:#756d66;line-height:1.8;font-size:14px}.contact-mini{display:flex;gap:15px;margin-top:28px;align-items:center}.contact-mini>span{width:42px;height:42px;border:1px solid #d6cbc0;border-radius:50%;display:grid;place-items:center;color:#b67c6e}.contact-mini b,.contact-mini small{display:block}.contact-mini b{font-size:11px}.contact-mini small{font-size:10px;color:#8a8078;margin-top:3px}.booking-form{background:#fff;padding:38px;box-shadow:0 20px 60px #4c392512}.booking-form label{display:block;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:17px}.booking-form input,.booking-form select,.booking-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #ddd2c8;background:transparent;padding:12px 0 10px;outline:none;font-family:inherit;font-size:13px;color:#211f1d}.booking-form textarea{resize:vertical}.booking-form input:focus,.booking-form select:focus{border-color:#b67c6e}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.full{width:100%;margin-top:8px}.form-message{font-size:11px;margin-top:14px;color:#b67c6e;min-height:15px}.footer{background:#211f1d;color:#eee8e2;padding:65px 8% 30px;display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:40px;position:relative}.footer .light{color:#fff}.footer p{font-size:11px;color:#928b85;line-height:1.7}.footer b{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#b67c6e;display:block;margin-bottom:16px}.footer div>a:not(.logo){display:block;font-size:11px;color:#b9b2ac;margin:10px 0}.copyright{grid-column:1/-1;border-top:1px solid #393532;padding-top:20px;margin-top:30px;color:#706a65;font-size:9px}@media(max-width:900px){.header{padding:0 5%}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#f7f3ee;padding:25px 5%;flex-direction:column;gap:20px;border-bottom:1px solid #ddd}.header nav.open{display:flex}.header-btn{display:none}.menu{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 8%}.hero-image,.hero-image>img{min-height:500px;height:500px}.hero-meta{margin-top:45px}.section{padding:80px 6%}.section-head{display:block}.section-head>p{margin-top:20px}.service-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr;padding-top:0}.about-image,.about-image img{min-height:480px;height:480px}.about-copy{padding:70px 8%}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:320px}.booking{grid-template-columns:1fr;gap:45px}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child{grid-column:1/-1}}@media(max-width:560px){.topbar{font-size:8px;letter-spacing:1.2px}.hero h1{font-size:48px}.hero-copy{padding:60px 7%}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-meta{gap:22px}.hero-meta strong{font-size:18px}.section h2,.about-copy h2,.booking-copy h2{font-size:43px}.service-grid{grid-template-columns:1fr}.service-card{min-height:275px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:390px}.quote-section{padding:85px 8%}.booking-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.footer{grid-template-columns:1fr 1fr;gap:30px;padding:55px 7% 25px}.copyright{margin-top:10px}.floating-card{left:15px;bottom:15px}.hero-image,.hero-image>img{min-height:430px;height:430px}}
