:root{--ink:#14110F;--cream:#F8F5F0;--tan:#EFE8DF;--rose:#D9A3AB;--rose-d:#8F4F5B;--body:#4A423C;--mute:#CFC4BA}
*{box-sizing:border-box}
body{margin:0;font-family:'DM Sans',Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.5}
a{color:inherit}
p{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.nav{background:var(--ink);padding:20px 0}
.nav .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600;color:var(--cream);text-decoration:none}
.nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px}
.nav-links a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:500;color:#F3EDE6;text-decoration:none}
.nav-links a.active{color:var(--rose);font-weight:600}
.nav-links a.cta{padding:0 22px;background:var(--rose);color:var(--ink);font-weight:600}
.dark{background:var(--ink);color:var(--cream)}
.tan{background:var(--tan)}
.sec{padding:96px 0}
.eyebrow{font-size:15px;font-weight:600;letter-spacing:5px;text-transform:uppercase;color:var(--rose-d)}
.dark .eyebrow{color:var(--rose)}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;margin:0;line-height:1.06}
h1{font-size:clamp(40px,6vw,72px);color:var(--cream)}
h2{font-size:clamp(34px,4.4vw,52px)}
.dark h2{color:var(--cream)}
h3{font-size:32px;font-weight:600;line-height:1.1}
.lead{font-size:22px;line-height:1.5;color:var(--mute);max-width:720px}
.stack{display:flex;flex-direction:column;gap:24px}
.btns{display:flex;flex-wrap:wrap;gap:16px;padding-top:8px}
.btn{display:inline-flex;align-items:center;min-height:52px;padding:0 30px;font-size:18px;font-weight:600;text-decoration:none}
.btn-p{background:var(--rose);color:var(--ink)}
.btn-o{border:2px solid #F3EDE6;color:#F3EDE6}
.btn-d{background:var(--ink);color:var(--cream)}
.link{display:inline-flex;align-items:center;min-height:48px;font-size:18px;font-weight:600;color:var(--rose-d);text-decoration:none}
.dark .link{color:var(--rose)}
.row{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.col{flex:1 1 420px;min-width:0}
.cards{display:flex;flex-wrap:wrap;gap:24px}
.card{flex:1 1 320px;min-width:0;background:#fff;border-top:6px solid var(--ink);padding:32px;display:flex;flex-direction:column;gap:12px}
.card:nth-child(even){border-top-color:#B5707A}
.card p{font-size:18px;line-height:1.55;color:var(--body)}
.cols{display:flex;flex-wrap:wrap;gap:40px}
.cols>div{flex:1 1 300px;min-width:0;border-top:4px solid var(--rose);padding-top:28px;display:flex;flex-direction:column;gap:12px}
.cols.four>div{flex-basis:240px}
.cols h3{color:#fff;font-size:36px}
.cols.four h3{font-size:30px}
.cols p{font-size:18px;line-height:1.6;color:var(--mute)}
.case{display:flex;flex-wrap:wrap;gap:48px}
.case .info{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:16px}
.case .info p{font-size:20px;line-height:1.6;color:var(--body)}
.case .detail{flex:2 1 520px;min-width:0;display:flex;flex-direction:column;gap:16px}
.label{font-size:14px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--body)}
.list p{padding:16px 0;border-top:1px solid #D9CFC4;font-size:19px;line-height:1.5}
.list p:last-child{border-bottom:1px solid #D9CFC4}
.tan .list p{border-color:#CFC4BA}
.small{font-size:14px;line-height:1.6;color:var(--mute)}
.steps{display:flex;flex-wrap:wrap;gap:32px}
.steps>div{flex:1 1 230px;min-width:0;display:flex;flex-direction:column;gap:12px}
.num{font-family:'Cormorant Garamond',Georgia,serif;font-size:56px;line-height:1;color:var(--rose-d)}
.steps h3{font-family:'DM Sans',Arial,sans-serif;font-size:22px;font-weight:600}
.steps p{font-size:17px;line-height:1.55;color:var(--body)}
.media:empty{display:none}
.media img{display:block;width:100%;height:auto}
.thumb:empty{display:none}
.thumb img{display:block;width:100%;height:240px;object-fit:cover;object-position:top}
.gallery{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.gallery:empty{display:none}
.gallery img{flex:1 1 240px;min-width:0;max-width:100%;height:auto;display:block}
.foot{border-top:1px solid #4A423C;margin-top:40px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:var(--mute);font-size:16px}
.body-lg{font-size:20px;line-height:1.65;color:var(--body)}
.hl{font-size:clamp(34px,5vw,60px);color:var(--cream);max-width:940px}
/* Email popup */
.pop-overlay{position:fixed;inset:0;background:rgba(20,17,15,.6);display:flex;align-items:center;justify-content:center;padding:16px;z-index:9999}
.pop-card{position:relative;background:var(--cream);color:var(--ink);max-width:460px;width:100%;padding:40px 32px 28px;border-top:6px solid var(--rose);display:flex;flex-direction:column;gap:14px;max-height:92vh;overflow:auto}
.pop-card h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(30px,6vw,40px);line-height:1.1;font-weight:500;margin:0}
.pop-blurb{color:var(--body);margin:0}
.pop-form{display:flex;flex-direction:column;gap:10px}
.pop-form input{font:inherit;padding:14px;border:1px solid var(--mute);background:#fff;color:var(--ink)}
.pop-form button{cursor:pointer;border:0}
.pop-x{position:absolute;top:8px;right:12px;background:none;border:0;font-size:32px;line-height:1;cursor:pointer;color:var(--ink)}
.pop-msg{margin:0;min-height:1em;color:var(--rose-d);font-weight:600}
.pop-fine{margin:0;font-size:13px;color:var(--body)}
