
:root{--ink:#5d2d2d;--wine:#9f4549;--rose:#d86b82;--pink:#f8d9d6;--cream:#fff8f3;--paper:#fffdfb;--line:#ead5cf}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}img{display:block;width:100%}a{text-decoration:none;color:inherit}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(255,253,251,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}.brand img{width:46px;height:46px;object-fit:cover;border-radius:50%}.nav-btn,.primary{background:var(--wine);color:#fff;padding:14px 22px;border-radius:999px;font-weight:700;display:inline-block}.secondary{padding:13px 21px;border:1px solid var(--wine);border-radius:999px;font-weight:700;display:inline-block}
.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:6vw}.hero h1,.section h2,.cta h2{font:600 clamp(3rem,6vw,6.8rem)/.95 "Playfair Display",serif;margin:14px 0 24px;letter-spacing:-.04em}.hero h1 em{color:var(--rose);font-weight:500}.lead{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.7;max-width:620px;color:#76504c}.eyebrow{font-size:.76rem;letter-spacing:.19em;font-weight:700;color:var(--wine)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 14px}.micro,.offer-note{font-size:.9rem;color:#8a6862}.hero-art{position:relative}.hero-main{aspect-ratio:4/5;object-fit:cover;border-radius:240px 240px 32px 32px}.logo-float{position:absolute;width:30%;left:-8%;bottom:7%;background:#fff;border-radius:50%;padding:8px;box-shadow:0 18px 50px #6d31312e}.logo-float img{border-radius:50%}
.trust{display:flex;justify-content:center;align-items:center;gap:24px;padding:22px 5vw;background:var(--wine);color:#fff;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.trust i{width:4px;height:4px;background:#fff;border-radius:50%}
.section{padding:8vw 6vw}.intro{text-align:center;background:var(--cream)}.intro>p:not(.eyebrow){max-width:660px;margin:0 auto;line-height:1.7}.section h2,.cta h2{font-size:clamp(2.5rem,5vw,5.2rem)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px;text-align:left}.service-grid article{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px}.service-grid b{color:var(--rose)}.service-grid h3{font:600 2rem "Playfair Display",serif;margin:28px 0 10px}.service-grid p{line-height:1.65;color:#76504c}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-head>p{max-width:300px;color:#76504c}.photo-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:16px}.photo-grid img{height:620px;object-fit:cover;border-radius:24px}.offers{background:#f7e9e4}.offers h2{max-width:850px}.offer-note{max-width:650px;line-height:1.6}.offer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:36px;overflow-x:auto;padding-bottom:10px}.offer-grid img{min-width:230px;border-radius:18px;box-shadow:0 10px 30px #6d31311a}
.visit{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.visit-photo img{height:650px;object-fit:cover;border-radius:32px}.visit-copy p{line-height:1.8;color:#76504c}.cta{text-align:center;padding:9vw 6vw;background:var(--ink);color:#fff}.cta img{width:150px;height:150px;object-fit:cover;border-radius:50%;margin:0 auto 30px}.cta .eyebrow{color:#f6c2c3}.cta p:not(.eyebrow){color:#f2dcd6}.cta .primary{background:#fff;color:var(--wine);margin-top:20px}
footer{display:flex;justify-content:space-between;gap:20px;padding:28px 6vw;font-size:.82rem;background:#3e2020;color:#f5ded8}
@media(max-width:820px){.nav{height:66px}.brand span{display:none}.hero{grid-template-columns:1fr;padding:56px 22px 42px}.hero-copy{order:1}.hero-art{order:0}.hero-main{height:56vh}.logo-float{width:27%;left:2%}.hero h1{font-size:3.7rem}.trust{justify-content:flex-start;overflow:auto;white-space:nowrap}.section{padding:76px 22px}.service-grid{grid-template-columns:1fr}.section-head{display:block}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid img{height:360px}.photo-grid img:first-child{grid-column:1/-1;height:430px}.offer-grid{grid-template-columns:repeat(5,240px);margin-right:-22px}.visit{grid-template-columns:1fr}.visit-photo img{height:440px}.cta{padding:90px 22px}.cta h2{font-size:3.4rem}footer{flex-direction:column}.nav-btn{padding:11px 17px}.actions .primary,.actions .secondary{width:100%;text-align:center}}
