@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');
:root{--ink:#3b2732;--muted:#725d66;--rose:#a26479;--rose-dark:#814b60;--pink:#f8e9ee;--cream:#fffaf7;--paper:#ffffff;--line:#eedee4;--gold:#c9a081;--shadow:0 22px 64px rgba(72,36,50,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1160px,calc(100% - 44px));margin-inline:auto}.topbar{background:#503742;color:#fff;text-align:center;padding:9px 16px;font-size:12px;letter-spacing:.07em}.topbar a{text-decoration:underline;text-underline-offset:3px}.header{background:#fff;position:sticky;top:0;z-index:45;border-bottom:1px solid #f0e2e7;box-shadow:0 4px 14px #5f37420b}.header-inner{min-height:92px;display:flex;align-items:center;gap:34px;justify-content:space-between}.brand{display:flex;align-items:center;min-width:215px}.brand img{width:218px;height:65px;object-fit:contain;object-position:left center}.nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.nav>a{font-size:13px;font-weight:600;letter-spacing:.02em;padding:8px 0;white-space:nowrap}.nav>a:hover,.nav>a.active{color:var(--rose)}.nav .nav-book{background:var(--rose);color:white!important;padding:12px 18px;border-radius:2px;box-shadow:0 7px 16px #a2647920}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:6px;padding:9px 12px;font-size:21px;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:var(--rose);font-weight:700}.display,.section-title,h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.17}.display{font-size:clamp(48px,6.2vw,90px);letter-spacing:-.035em;margin:20px 0 20px}.display em{color:var(--rose);font-style:italic}.lead{font-size:17px;color:#6a555e;max-width:650px}.btn{border:1px solid var(--rose);background:var(--rose);color:#fff;display:inline-flex;align-items:center;gap:11px;justify-content:center;padding:14px 24px;border-radius:2px;font-size:13px;font-weight:700;letter-spacing:.025em;transition:.2s;min-height:47px}.btn:hover{background:var(--rose-dark);border-color:var(--rose-dark);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--ink);border-color:#b99fa7}.btn-outline:hover{background:var(--pink);color:var(--ink);border-color:var(--rose)}.btn-cream{background:white;border-color:white;color:var(--rose-dark)}.btn-cream:hover{background:#f9e8ed;border-color:#f9e8ed;color:var(--rose-dark)}.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:565px;background:linear-gradient(120deg,#fbf2f4,#f8e7ed)}.hero-copy{padding:80px min(6vw,96px) 80px max(28px,calc((100vw - 1160px)/2));display:flex;flex-direction:column;justify-content:center}.hero-copy .lead{max-width:520px}.hero-photo{position:relative;min-height:565px;overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#8e61701a,transparent 30%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% 48%}.hero-tag{background:#fff;box-shadow:var(--shadow);position:absolute;bottom:30px;left:30px;padding:18px 28px;z-index:1;max-width:290px;font-size:14px}.hero-tag strong{color:var(--rose);font-size:13px;letter-spacing:.12em;text-transform:uppercase;display:block}.marquee{background:#664453;color:white;padding:18px 0}.marquee-inner{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.09em;font-size:12px;font-weight:700}.marquee span:before{content:'✦';color:#e7b8c9;margin-right:11px}.section{padding:94px 0}.section-sm{padding:64px 0}.section-head{text-align:center;max-width:790px;margin:0 auto 42px}.section-title{font-size:clamp(34px,4vw,52px);margin:14px 0 18px}.section-copy{color:var(--muted);font-size:16px;max-width:760px}.section-head .section-copy{margin-inline:auto}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:#fff;border:1px solid #f3e6e9;box-shadow:0 6px 25px #57313d0c;transition:.2s;overflow:hidden}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card-photo{height:233px;overflow:hidden}.service-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover .service-card-photo img{transform:scale(1.04)}.service-body{padding:24px}.service-body h3{font-size:24px;margin:8px 0 8px}.service-body p{font-size:13px;color:var(--muted);margin:0 0 16px}.service-meta{display:flex;justify-content:space-between;gap:10px;align-items:center}.service-meta span{font-size:12px;color:var(--rose);font-weight:700}.service-meta a{font-weight:700;font-size:12px;text-decoration:underline;text-underline-offset:4px}.pill{display:inline-block;font-size:10px;letter-spacing:.1em;font-weight:800;text-transform:uppercase;color:var(--rose)}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.split-photo{height:570px;object-fit:cover;width:100%;box-shadow:14px 14px 0 #efd4dc}.split-content h2{font-size:clamp(36px,3.6vw,52px);margin:13px 0 19px}.split-content p{color:var(--muted)}.subtle-bg{background:#f8edef}.white-bg{background:#fff}.feature-band{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.feature{border-top:1px solid #c79da9;padding-top:20px}.feature b{font-family:Georgia,serif;font-size:20px;display:block;margin-bottom:6px;font-weight:normal}.feature p{margin:0;color:var(--muted);font-size:13px}.quote-band{background:#5a3c4a;color:#fff;padding:78px 0;text-align:center}.quote-band h2{font-size:clamp(36px,4vw,57px);margin:12px auto 14px;max-width:780px}.quote-band p{color:#f2dfe5}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-grid>a{display:block;overflow:hidden;aspect-ratio:4/5;position:relative}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-grid a:hover img{transform:scale(1.05)}.gallery-grid span{position:absolute;bottom:0;left:0;right:0;padding:35px 15px 15px;color:white;background:linear-gradient(transparent,#2311179d);font-size:14px;font-weight:700}.page-hero{background:linear-gradient(125deg,#f8e9ed,#fff6f8);padding:92px 0 88px;border-bottom:1px solid var(--line)}.page-hero .container{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.page-hero h1{font-size:clamp(44px,5.4vw,72px);margin:14px 0 20px}.page-hero p{color:var(--muted);max-width:600px;font-size:17px}.page-hero img{height:375px;width:100%;object-fit:cover;border:10px solid #fff;box-shadow:0 15px 36px #603a4b18}.breadcrumbs{font-size:12px;letter-spacing:.03em;color:var(--rose);font-weight:700}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.two-col{display:grid;grid-template-columns:1.65fr 1fr;gap:60px}.article h2{font-size:34px;margin:0 0 15px}.article h3{font-size:23px;margin:32px 0 12px}.article p{color:var(--muted);margin:0 0 21px}.list-check{padding:0;list-style:none}.list-check li{padding:10px 0 10px 29px;position:relative;color:var(--muted);border-bottom:1px solid var(--line)}.list-check li:before{content:'✦';color:var(--rose);position:absolute;left:0}.aside{background:#fff;padding:30px;border:1px solid var(--line);align-self:start;position:sticky;top:113px}.aside h3{font-size:27px;margin:0 0 10px}.aside p,.aside li{font-size:13px;color:var(--muted)}.aside .btn{display:flex;width:100%;margin-top:18px}.price-note{background:#fff4ed;border-left:3px solid var(--gold);padding:14px 17px;color:#815742;font-size:12px;margin:14px 0}.service-price{color:var(--rose);font-size:30px;font-family:'Playfair Display',Georgia,serif;margin:8px 0}.categories{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:0 auto 33px}.categories a{border:1px solid var(--line);padding:9px 14px;background:white;font-size:12px;font-weight:700;color:var(--rose-dark)}.categories a:hover{background:var(--pink)}.book-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:44px}.form-panel{background:#fff;padding:38px;border:1px solid var(--line);box-shadow:var(--shadow)}.form-panel h2{font-size:34px;margin:0 0 10px}.form-panel label{display:block;font-size:12px;color:#5d4150;font-weight:700;margin:15px 0 6px}.form-panel input,.form-panel select,.form-panel textarea{border:1px solid #e4d0d7;border-radius:2px;width:100%;background:#fffcfd;min-height:46px;padding:11px 13px;color:var(--ink)}.form-panel textarea{min-height:104px;resize:vertical}.form-panel .btn{margin-top:18px;width:100%}.hint{font-size:12px;color:var(--muted)}.contact-panel{background:#5a3c4a;padding:42px;color:white;align-self:start}.contact-panel h3{font-size:32px;margin:0 0 16px}.contact-panel p{color:#f1dfe7}.contact-panel strong{display:block;margin-top:25px}.contact-panel a{text-decoration:underline;text-underline-offset:4px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:700;cursor:pointer}.faq p{font-size:14px;color:var(--muted);max-width:850px}.footer{background:#38252e;color:#f9eef1;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:45px}.footer h3{font:500 23px Georgia,serif;margin:0 0 20px}.footer p{font-size:13px;color:#dfc8d0}.footer a{display:block;font-size:13px;color:#ead7df;margin:8px 0}.footer a:hover{color:#fff;text-decoration:underline}.footer .footer-logo{font:italic 30px Georgia,serif;color:#fff}.footer-bottom{border-top:1px solid #705462;margin-top:48px;padding-top:20px;font-size:12px;color:#cdb3bd;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.toast{font-size:12px;color:#a47182}.cta-card{background:#f7e4ea;padding:50px;display:flex;gap:30px;align-items:center;justify-content:space-between}.cta-card h2{font-size:39px;margin:0 0 10px}.cta-card p{margin:0;color:var(--muted)}.floating-book{position:fixed;bottom:20px;right:20px;z-index:40;box-shadow:0 12px 30px #492b3738}.map-fallback{background:#f1e3e8;padding:35px;border:1px solid var(--line);font-weight:600;color:var(--muted)}.small-muted{font-size:12px;color:var(--muted)}
@media(max-width:1090px){.header-inner{gap:10px}.nav{gap:12px}.nav>a{font-size:12px}.brand img{width:176px}.split{gap:32px}.hero-copy{padding-left:42px;padding-right:40px}.footer-grid{gap:24px}}@media(max-width:820px){.menu-toggle{display:block}.header-inner{min-height:79px}.nav{display:none;position:absolute;top:79px;left:0;right:0;background:#fff;box-shadow:0 18px 25px #28131d22;padding:20px 25px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav>a{padding:12px;border-bottom:1px solid var(--line);font-size:14px}.nav .nav-book{text-align:center;margin-top:14px}.hero{grid-template-columns:1fr}.hero-copy{padding:64px 28px;min-height:440px}.hero-photo{min-height:360px;height:390px}.split,.page-hero .container,.book-layout,.two-col{grid-template-columns:1fr}.page-hero{padding:45px 0}.page-hero .container{gap:28px}.page-hero img{height:300px}.section{padding:62px 0}.split-photo{height:390px}.card-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.feature-band{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.aside{position:static}.cta-card{display:block}.cta-card .btn{margin-top:20px}}@media(max-width:530px){.container{width:min(100% - 28px,1160px)}.topbar{font-size:10px}.brand img{width:179px}.header-inner{min-height:74px}.nav{top:74px}.hero-copy{padding:55px 22px}.hero-photo{height:320px;min-height:320px}.display{font-size:51px}.lead{font-size:15px}.hero-tag{bottom:18px;left:18px;max-width:240px;padding:13px}.marquee-inner{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:10px}.card-grid,.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.service-card-photo{height:145px}.service-body{padding:14px}.service-body h3{font-size:19px}.service-body p{font-size:12px}.service-meta{display:block}.service-meta a{display:block;margin-top:8px}.section-title{font-size:38px}.feature-band{grid-template-columns:1fr 1fr;gap:12px}.split-photo{height:310px}.page-hero h1{font-size:47px}.page-hero img{height:260px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid .footer-info{grid-column:1 / -1}.footer h3{font-size:21px}.form-panel,.contact-panel,.aside{padding:23px}.cta-card{padding:30px}.cta-card h2{font-size:31px}.floating-book{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
