.elementor-widget-container.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-container .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-container.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-container:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-container.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-195 .elementor-element.elementor-element-b3c8b66{--display:flex;}.elementor-195 .elementor-element.elementor-element-b3c8b66:not(.elementor-motion-effects-element-type-background), .elementor-195 .elementor-element.elementor-element-b3c8b66 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-f31277b );}.elementor-widget-html.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-html .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-html.pa-bg-clipped-yes.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-text, .elementor-widget-html:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-html.premium-gbadge-custom:not(.pa-bg-clipped-yes) .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-13f0884 */:root{
    --ink: #14121F;
    --ink-2: #1C1930;
    --ink-3: #262140;
    --bone: #F3ECDD;
    --bone-dim: #C9C0AC;
    --bone-faint: #8E8873;
    --gold: #B08D57;
    --gold-bright: #D4AC72;
    --rose: #9C6B76;
    --rule: rgba(243,236,221,0.14);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--ink);
    color:var(--bone);
    font-family:'Archivo',sans-serif;
    font-size:17px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.display{
    font-family:'Fraunces',serif;
    font-weight:450;
    letter-spacing:-0.01em;
    margin:0;
  }
  .eyebrow{
    font-family:'Archivo',sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:0.22em;
    text-transform:uppercase;
    color:var(--gold-bright);
  }
  .wrap{max-width:1000px;margin:0 auto;padding:0 28px;}
  a{color:inherit; text-decoration:none;}

  /* ---------- NAV ---------- */
  header.site{
    position:sticky; top:0; z-index:30;
    background:rgba(20,18,31,0.88);
    backdrop-filter:blur(8px);
    border-bottom:1px solid var(--rule);
  }
  .nav-inner{
    max-width:1000px; margin:0 auto; padding:18px 28px;
    display:flex; align-items:center; justify-content:space-between;
    flex-wrap:wrap; gap:14px;
  }
  .brand{
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:19px;
    letter-spacing:0.01em;
    color:var(--bone);
  }
  nav.links{
    display:flex; flex-wrap:wrap; gap:22px;
    font-size:13px; letter-spacing:0.04em;
    text-transform:uppercase; font-weight:600;
    color:var(--bone-dim);
  }
  nav.links a:hover{ color:var(--gold-bright); }

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    padding:130px 0 100px;
    overflow:hidden;
    border-bottom:1px solid var(--rule);
    background:
      radial-gradient(ellipse 750px 460px at 50% -10%, rgba(176,141,87,0.14), transparent 65%),
      var(--ink);
    text-align:center;
  }
  .spine{
    position:absolute; top:0; left:50%; transform:translateX(-50%);
    width:1px; height:100%;
    background:linear-gradient(to bottom, transparent, var(--rule) 20%, var(--rule) 80%, transparent);
    z-index:0;
  }
  .hero-inner{position:relative; z-index:1;}
  .hero .eyebrow{display:block; margin-bottom:20px;}
  .hero h1{
    font-size:clamp(38px, 6.4vw, 64px);
    line-height:1.08;
    color:var(--bone);
    max-width:820px;
    margin:0 auto;
  }
  .hero h1 em{ font-style:italic; color:var(--gold-bright); }
  .hero p.lede{
    max-width:560px;
    margin:26px auto 0;
    color:var(--bone-dim);
    font-size:18px;
  }
  .hero-cta{
    display:inline-flex; gap:16px; margin-top:38px; flex-wrap:wrap; justify-content:center;
  }
  .btn{
    display:inline-block;
    font-family:'Archivo',sans-serif;
    font-size:13px; font-weight:700;
    letter-spacing:0.12em; text-transform:uppercase;
    padding:15px 30px;
    border-radius:2px;
    transition:all .2s ease;
  }
  .btn.primary{ background:var(--gold); color:var(--ink); }
  .btn.primary:hover{ background:var(--gold-bright); }
  .btn.ghost{ border:1px solid var(--rule); color:var(--bone-dim); }
  .btn.ghost:hover{ border-color:var(--bone-faint); color:var(--bone); }

  /* ---------- INVITATION / MANIFESTO ---------- */
  .invitation{
    padding:90px 0;
    border-bottom:1px solid var(--rule);
    background:var(--ink-2);
  }
  .invitation .wrap{max-width:700px; text-align:center;}
  .invitation .eyebrow{ display:block; margin-bottom:18px; }
  .invitation p{
    font-family:'Fraunces',serif;
    font-size:clamp(20px,2.6vw,26px);
    font-weight:300;
    line-height:1.5;
    color:var(--bone);
  }
  .invitation p em{ font-style:italic; color:var(--gold-bright); }
  .invitation p.small{
    font-family:'Archivo',sans-serif;
    font-size:16px;
    color:var(--bone-dim);
    margin-top:24px;
  }

  /* ---------- DOORWAYS INTRO ---------- */
  .doorways-intro{
    padding:70px 0 20px;
    text-align:center;
  }
  .doorways-intro .eyebrow{ display:block; margin-bottom:16px; }
  .doorways-intro h2{
    font-size:clamp(28px,4vw,38px);
    font-style:italic;
    color:var(--bone);
    max-width:640px;
    margin:0 auto;
  }
  .doorways-intro p{
    max-width:560px;
    margin:18px auto 0;
    color:var(--bone-dim);
  }

  /* ---------- DOORWAY CARDS ---------- */
  .doorways{ padding:40px 0 30px; }
  .door{
    border-top:1px solid var(--rule);
    padding:48px 0;
    display:grid;
    grid-template-columns:220px 1fr;
    gap:36px;
    align-items:start;
  }
  .door:last-child{ border-bottom:1px solid var(--rule); }
  .door-label{
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:14px;
    color:var(--gold-bright);
  }
  .door h3{
    font-size:clamp(24px,3vw,30px);
    color:var(--bone);
    margin-top:8px;
  }
  .door-body p{
    color:var(--bone-dim);
    max-width:620px;
  }
  .door-link{
    display:inline-flex; align-items:center; gap:8px;
    margin-top:18px;
    font-family:'Archivo',sans-serif;
    font-size:13px; font-weight:700;
    letter-spacing:0.1em; text-transform:uppercase;
    color:var(--bone);
    border-bottom:1px solid var(--gold);
    padding-bottom:3px;
  }
  .door-link:hover{ color:var(--gold-bright); border-color:var(--gold-bright); }

  /* sub-offerings within the Offerings door */
  .sub-offerings{
    margin-top:26px;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:18px;
  }
  .sub-card{
    border:1px solid var(--rule);
    padding:22px;
    border-radius:2px;
    transition:border-color .2s ease, background .2s ease;
  }
  .sub-card:hover{ border-color:var(--gold); background:rgba(176,141,87,0.06); }
  .sub-card .sub-eyebrow{
    font-size:11px; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--bone-faint); font-weight:700;
  }
  .sub-card h4{
    font-family:'Fraunces',serif;
    font-weight:450;
    font-size:19px;
    color:var(--bone);
    margin:8px 0 10px;
  }
  .sub-card p{ font-size:14.5px; color:var(--bone-dim); margin:0; }
  .sub-card .door-link{ font-size:11.5px; margin-top:14px; }

  @media (max-width:760px){
    .door{ grid-template-columns:1fr; gap:12px; }
    .sub-offerings{ grid-template-columns:1fr; }
  }

  /* ---------- TESTIMONIAL ---------- */
  .testimonial{
    padding:90px 0;
    text-align:center;
    background:var(--ink-3);
    border-top:1px solid var(--rule);
    border-bottom:1px solid var(--rule);
  }
  .testimonial blockquote{
    font-family:'Fraunces',serif;
    font-style:italic;
    font-size:clamp(21px,3vw,28px);
    color:var(--bone);
    max-width:680px;
    margin:0 auto;
    line-height:1.5;
  }
  .testimonial cite{
    display:block;
    margin-top:22px;
    font-family:'Archivo',sans-serif;
    font-style:normal;
    font-size:13px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--gold-bright);
  }

  /* ---------- CLOSING CTA ---------- */
  .closing{
    padding:110px 0;
    text-align:center;
  }
  .closing .eyebrow{ display:block; margin-bottom:20px; }
  .closing h2{
    font-size:clamp(30px,4.6vw,44px);
    color:var(--bone);
    max-width:640px;
    margin:0 auto;
    line-height:1.2;
  }
  .closing h2 em{ font-style:italic; color:var(--gold-bright); }
  .closing p{
    max-width:520px;
    margin:22px auto 0;
    color:var(--bone-dim);
  }
  .closing .hero-cta{ margin-top:34px; }

  footer.site{
    padding:40px 0 60px;
    text-align:center;
    font-size:13px;
    color:var(--bone-faint);
    border-top:1px solid var(--rule);
  }
  footer.site nav{
    display:flex; justify-content:center; gap:20px; flex-wrap:wrap;
    margin-bottom:18px;
    text-transform:uppercase; letter-spacing:0.08em; font-weight:600;
    color:var(--bone-dim);
  }
  footer.site nav a:hover{ color:var(--gold-bright); }/* End custom CSS */