.ce-page{--ce-ink:#493a30;--ce-deep:#382820;--ce-paper:#f5eddc;--ce-soft:#f9f3e8;--ce-line:#b5926266;background:var(--ce-paper);color:var(--ce-ink)}
.ce-page main{font-family:Lato,Arial,sans-serif;line-height:1.7}
.ce-page main :is(h1,h2,h3,.ce-lead){font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:.98;letter-spacing:-.025em;color:inherit}
.ce-page main h1{font-size:clamp(3.35rem,6.3vw,7.25rem);margin:0 0 .35em}
.ce-page main h2{font-size:clamp(2.7rem,5vw,5.15rem);margin:0 0 .35em}
.ce-page main h3{font-size:clamp(2rem,3vw,3rem);margin:.28em 0}
.ce-page main p{margin:0 0 1.05rem}
.ce-page main .ce-kicker{font:700 .69rem/1.5 Lato,Arial,sans-serif;letter-spacing:.19em;text-transform:uppercase;margin-bottom:1.45rem}
.ce-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;max-width:1500px;margin:auto;padding:clamp(2.2rem,6vw,6rem) clamp(1.3rem,6vw,7rem);gap:clamp(1.8rem,4.5vw,6rem)}
.ce-hero-copy>p:not(.ce-kicker){max-width:35rem}
.ce-page main .ce-lead{font-size:clamp(1.65rem,2.9vw,2.65rem);line-height:1.11;margin-bottom:.65em}
.ce-hero figure,.ce-portrait{margin:0}
.ce-hero img,.ce-portrait img{display:block;width:100%;height:auto}
.ce-page main .ce-button{display:inline-flex;gap:1rem;align-items:center;text-decoration:none;background:var(--ce-deep);color:var(--ce-soft);font:700 .82rem/1.35 Lato,Arial,sans-serif;padding:.95rem 1.25rem;margin-top:.55rem}
.ce-page main .ce-button:hover{background:#5e4334}
.ce-letter{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(1.1rem,6vw,7rem);max-width:1450px;margin:auto;padding:clamp(3rem,8vw,8rem) clamp(1.3rem,8vw,9rem)}
.ce-letter{border-top:1px solid var(--ce-line)}
.ce-letter p,.ce-close>p:not(.ce-kicker){max-width:37rem}
.ce-practice{background:var(--ce-deep);color:var(--ce-soft)}
.ce-practice-inner{max-width:1450px;margin:auto;padding:clamp(3rem,7vw,7rem) clamp(1.3rem,8vw,9rem)}
.ce-close{text-align:center;background:#e9dbc3;padding:clamp(3rem,7vw,6.5rem) 1.3rem}
.ce-close>p{margin-inline:auto!important}
.ce-page main .ce-related{margin:1.65rem auto 0;font-size:.9rem}
.ce-related a{color:inherit;text-decoration:underline;text-underline-offset:.2em}

.ce-page main .ce-lead strong{font-weight:600}
.ce-offering {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  align-items: center;
  gap: clamp(1.1rem, 6vw, 7rem);
  padding: clamp(1.75rem, 4vw, 3.5rem) 0;
  border-top: 1px solid #d4b37f8c;
}
.ce-offering:last-child { padding-bottom: 0; }
.ce-offering-reverse { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
.ce-offering-reverse > figure { grid-column: 1; grid-row: 1; }
.ce-offering-reverse > div { grid-column: 2; grid-row: 1; }
.ce-letter{align-items:center}
@media(max-width:660px){
  .ce-hero,.ce-letter,.ce-offering{grid-template-columns:1fr}
  .ce-offering-reverse > :is(figure,div){grid-column:auto;grid-row:auto}
  .ce-letter .ce-portrait{order:1}
}
.ce-prices{list-style:none;margin:1.4rem 0 .65rem;padding:0}
.ce-prices li+li{margin-top:.35rem}
@media(max-width:370px){.ce-page main h1{font-size:3rem}}
