:root{--ink:#2f2926;--muted:#6d625d;--cream:#f8f3ee;--paper:#fffdf9;--rose:#c78d96;--rose-dark:#8f5e67;--sage:#a8ad9d;--gold:#a18454;--line:#e7ddd5;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.7;font-size:16px}img{max-width:100%;display:block}a{color:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.narrow{width:min(760px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:999}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(231,221,213,.8)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand-mark{width:44px;height:44px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:13px;letter-spacing:.08em}.brand strong{display:block;font-family:var(--serif);font-size:19px;font-weight:500}.brand small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.18em;font-size:9px}.main-nav{display:flex;align-items:center;gap:22px}.main-nav a{text-decoration:none;font-size:13px}.main-nav a.active{color:var(--rose-dark)}.nav-cta{border:1px solid var(--ink);padding:9px 15px}.menu-toggle{display:none;border:0;background:none;font:inherit}.hero{min-height:760px;position:relative;background:url('/assets/images/hero-vintage-tea-party.jpg') center 45%/cover no-repeat;display:flex;align-items:flex-end}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(35,25,25,.62),rgba(35,25,25,.12) 70%),linear-gradient(0deg,rgba(0,0,0,.25),transparent 50%)}.hero-content{position:relative;color:#fff;padding-bottom:90px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:bold;color:var(--rose-dark);margin:0 0 16px}.hero .eyebrow,.cta .eyebrow{color:#f4d8dc}.hero h1,.page-hero h1,.article-head h1{font-family:var(--serif);font-weight:400;line-height:1.03;letter-spacing:-.025em;margin:.1em 0 .3em}.hero h1{font-size:clamp(54px,7vw,94px);max-width:900px}.lead{font-size:20px;max-width:720px;line-height:1.6}.hero .lead{color:rgba(255,255,255,.9);max-width:680px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.actions.center{justify-content:center}.btn{display:inline-block;text-decoration:none;padding:13px 20px;border:1px solid transparent;font-weight:bold;font-size:13px;letter-spacing:.02em}.btn.primary{background:var(--rose-dark);color:#fff}.btn.ghost{border-color:rgba(255,255,255,.75);color:#fff}.btn.outline{border-color:var(--ink)}.btn.light{background:#fff;color:var(--ink)}.section{padding:96px 0}.soft{background:var(--cream)}.intro{text-align:center}.intro h2,.section h2,.split-copy h2,.cta h2{font-family:var(--serif);font-size:clamp(36px,4vw,58px);line-height:1.1;font-weight:400;margin:.2em 0 .45em}.intro p:not(.eyebrow){font-size:19px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px;gap:30px}.section-head h2{margin-bottom:0}.text-link{font-size:14px;text-decoration:none;border-bottom:1px solid var(--ink)}.cards{display:grid;gap:18px}.cards.four{grid-template-columns:1.25fr repeat(3,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.card,.post-card,.service-box{background:#fff;border:1px solid var(--line);padding:30px;min-height:280px}.image-card{padding:0;overflow:hidden}.image-card img{height:250px;width:100%;object-fit:cover}.image-card>div{padding:26px}.card h3,.post-card h2,.post-card h3,.service-box h3{font-family:var(--serif);font-weight:400;font-size:27px;line-height:1.2}.card p,.post-card p,.service-box p{color:var(--muted)}.card a,.post-card a{font-size:13px;font-weight:bold;text-decoration:none}.card.tint{background:#f3e7e5}.card.tint span,.service-box span{font-family:var(--serif);font-size:13px;color:var(--rose-dark)}.split{display:grid;grid-template-columns:1fr 1fr;min-height:620px;padding:0}.split-image img{width:100%;height:100%;min-height:620px;object-fit:cover}.split-copy{padding:80px max(40px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center}.ticks{list-style:none;padding:0;margin:24px 0 30px}.ticks li{padding:8px 0 8px 28px;border-bottom:1px solid var(--line);position:relative}.ticks li:before{content:'✦';position:absolute;left:0;color:var(--gold)}.mosaic{display:grid;grid-template-columns:2fr 1fr 1.35fr;gap:16px;height:520px}.mosaic img{width:100%;height:100%;object-fit:cover}.cta{background:var(--rose-dark);color:#fff;text-align:center;padding:90px 0}.cta p{color:#f4e7e8}.phone-link{display:block;margin-top:20px;color:#fff;text-decoration:none;font-family:var(--serif);font-size:25px}.page-hero{padding:110px 0 80px;background:var(--cream)}.page-hero.subdued{background:#f0eee8}.page-hero h1{font-size:clamp(48px,6vw,82px);max-width:950px}.service-box{background:var(--cream)}.gallery-grid{columns:3 300px;column-gap:18px}.gallery-grid img{width:100%;margin:0 0 18px;break-inside:avoid}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.big-link{font-family:var(--serif);font-size:34px;text-decoration:none}.contact-form{display:grid;gap:18px}.contact-form label{display:grid;gap:7px;font-size:13px;font-weight:bold}.contact-form input,.contact-form textarea,.contact-form select{font:inherit;border:1px solid #cfc3bb;background:#fff;padding:12px;width:100%;border-radius:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hp{position:absolute;left:-9999px}.notice{padding:18px;background:var(--cream);border:1px solid var(--line);margin-bottom:22px}.success{background:#edf4ea}.error{background:#f8e8e8}.article-head{background:var(--cream);padding:100px 0 60px}.article-head h1{font-size:clamp(46px,6vw,76px)}.article-body{padding:70px 0}.article-body h2{font-family:var(--serif);font-size:36px;font-weight:400;margin-top:50px}.article-body p,.article-body li{font-size:18px}.date{font-size:12px!important;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.site-footer{background:#2e2927;color:#ede7e1;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:70px}.footer-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#c9bfb8}.footer-grid a{display:block;text-decoration:none;margin:7px 0}.footer-grid p{color:#c9bfb8}.footer-brand{font-family:var(--serif);font-size:34px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #4a423e;padding-top:22px;margin-top:45px;font-size:12px;color:#bcb1aa}.footer-bottom a{color:inherit}.center{text-align:center}@media(max-width:980px){.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:24px 20px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.cards.four,.cards.three{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.split-image img{min-height:450px}.split-copy{padding:65px 40px}.mosaic{height:auto;grid-template-columns:1fr 1fr}.mosaic img:first-child{grid-column:1/-1;height:420px}.contact-grid{grid-template-columns:1fr;gap:40px}}@media(max-width:650px){.wrap,.narrow{width:min(100% - 28px,var(--max))}.nav-wrap{height:70px}.main-nav{top:70px}.hero{min-height:660px}.hero-content{padding-bottom:54px}.hero h1{font-size:52px}.lead{font-size:18px}.section{padding:70px 0}.cards.four,.cards.three{grid-template-columns:1fr}.split-image img{min-height:340px}.split-copy{padding:55px 22px}.section-head{display:block}.text-link{display:inline-block;margin-top:12px}.mosaic{grid-template-columns:1fr}.mosaic img,.mosaic img:first-child{grid-column:auto;height:330px}.page-hero{padding:80px 0 55px}.page-hero h1{font-size:48px}.contact-grid{gap:30px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{gap:20px;flex-direction:column}.brand strong{font-size:17px}}

.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;margin-bottom:1rem}.post-card h2 a{color:inherit;text-decoration:none}.pagination{display:flex;justify-content:center;align-items:center;gap:1.25rem;margin-top:2.5rem;flex-wrap:wrap}.pagination a{font-weight:700}.article-body h2{margin-top:2.2rem}.article-body a{text-decoration:underline;text-underline-offset:3px}
