.cp-root{
  
  --pm-ivory:        #F4EEE3;   
  --pm-ivory-2:      #EBE3D2;   
  --pm-cream:        #FAF6EE;   
  --pm-stone:        #A89F8C;   
  --pm-stone-2:      #C7BCA8;   
  --pm-charcoal:     #1B1A17;   
  --pm-charcoal-2:   #2B2924;   
  --pm-ink:          #0E0D0B;   

  
  --pm-ochre:        #B7894A;   
  --pm-ochre-deep:   #8B6532;
  --pm-olive:        #6B6A4C;   
  --pm-olive-deep:   #4A4A33;
  --pm-dusk:         #9CB3BE;   
  --pm-dusk-deep:    #6E8993;
  --pm-blush:        #E6D3BA;   
  --pm-clay:         #C2876A;   

  
  --pm-bg:                var(--pm-ivory);
  --pm-bg-inverse:        var(--pm-charcoal);
  --pm-surface:           var(--pm-cream);
  --pm-surface-inverse:   var(--pm-charcoal-2);

  --pm-fg:                var(--pm-charcoal);          
  --pm-fg-2:              rgba(27, 26, 23, 0.72);      
  --pm-fg-3:              rgba(27, 26, 23, 0.50);      
  --pm-fg-inverse:        var(--pm-ivory);             
  --pm-fg-inverse-2:      rgba(244, 238, 227, 0.74);
  --pm-fg-inverse-3:      rgba(244, 238, 227, 0.50);

  --pm-accent:            var(--pm-ochre);
  --pm-accent-hover:      var(--pm-ochre-deep);

  --pm-border:            rgba(27, 26, 23, 0.10);
  --pm-border-strong:     rgba(27, 26, 23, 0.18);
  --pm-border-inverse:    rgba(244, 238, 227, 0.15);

  
  --pm-font-serif:  "Instrument Serif", "EB Garamond", Georgia, "Times New Roman", serif;
  --pm-font-sans:   "DM Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;

  
  --pm-text-xs:    0.75rem;   
  --pm-text-sm:    0.875rem;  
  --pm-text-base:  1rem;      
  --pm-text-lg:    1.125rem;  
  --pm-text-xl:    1.375rem;  
  --pm-text-2xl:   1.75rem;   
  --pm-text-3xl:   2.25rem;   
  --pm-text-4xl:   3rem;      
  --pm-text-5xl:   4rem;      
  --pm-text-6xl:   5.5rem;    
  --pm-text-display: clamp(2.75rem, 7vw, 6.5rem);

  
  --pm-leading-tight:   1.05;
  --pm-leading-snug:    1.18;
  --pm-leading-normal:  1.45;
  --pm-leading-loose:   1.65;
  --pm-tracking-tight:  -0.02em;
  --pm-tracking-normal: 0;
  --pm-tracking-wide:   0.08em;
  --pm-tracking-eyebrow: 0.16em;

  
  --pm-s-1: 4px;
  --pm-s-2: 8px;
  --pm-s-3: 12px;
  --pm-s-4: 16px;
  --pm-s-5: 24px;
  --pm-s-6: 32px;
  --pm-s-7: 48px;
  --pm-s-8: 64px;
  --pm-s-9: 96px;
  --pm-s-10: 128px;
  --pm-s-11: 160px;
  --pm-section-y: clamp(80px, 12vw, 160px);

  
  --pm-r-xs: 4px;
  --pm-r-sm: 8px;
  --pm-r-md: 12px;
  --pm-r-lg: 18px;
  --pm-r-xl: 28px;
  --pm-r-pill: 999px;

  
  --pm-shadow-1: 0 1px 2px rgba(27, 26, 23, 0.04);
  --pm-shadow-2: 0 6px 24px -8px rgba(27, 26, 23, 0.10);
  --pm-shadow-3: 0 24px 60px -20px rgba(27, 26, 23, 0.18);

  
  --pm-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --pm-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --pm-dur-1: 180ms;
  --pm-dur-2: 320ms;
  --pm-dur-3: 600ms;
  --pm-dur-4: 1200ms;
}.cp-root .pm-display{
  font-family: var(--pm-font-serif);
  font-weight: 400;
  font-size: var(--pm-text-display);
  line-height: var(--pm-leading-tight);
  letter-spacing: var(--pm-tracking-tight);
  text-wrap: balance;
}.cp-root .pm-display em,.cp-root .pm-display .italic{ font-style: italic; }.cp-root .pm-h1{
  font-family: var(--pm-font-serif);
  font-weight: 400;
  font-size: clamp(2.25rem, 4.5vw, 4rem);
  line-height: var(--pm-leading-tight);
  letter-spacing: var(--pm-tracking-tight);
  text-wrap: balance;
}.cp-root .pm-h2{
  font-family: var(--pm-font-serif);
  font-weight: 400;
  font-size: clamp(1.75rem, 3.5vw, 3rem);
  line-height: var(--pm-leading-snug);
  letter-spacing: var(--pm-tracking-tight);
  text-wrap: balance;
}.cp-root .pm-h3{
  font-family: var(--pm-font-serif);
  font-weight: 400;
  font-size: clamp(1.375rem, 2.4vw, 1.875rem);
  line-height: var(--pm-leading-snug);
}.cp-root .pm-h4{
  font-family: var(--pm-font-sans);
  font-weight: 500;
  font-size: var(--pm-text-lg);
  letter-spacing: var(--pm-tracking-normal);
  line-height: var(--pm-leading-snug);
}.cp-root .pm-body{
  font-family: var(--pm-font-sans);
  font-weight: 400;
  font-size: var(--pm-text-base);
  line-height: var(--pm-leading-loose);
  color: var(--pm-fg-2);
}.cp-root .pm-body-lg{
  font-family: var(--pm-font-sans);
  font-weight: 400;
  font-size: var(--pm-text-lg);
  line-height: var(--pm-leading-loose);
  color: var(--pm-fg-2);
  text-wrap: pretty;
}.cp-root .pm-eyebrow{
  font-family: var(--pm-font-sans);
  font-weight: 500;
  font-size: var(--pm-text-xs);
  letter-spacing: var(--pm-tracking-eyebrow);
  text-transform: uppercase;
  color: var(--pm-fg-3);
}.cp-root .pm-caption{
  font-family: var(--pm-font-sans);
  font-weight: 400;
  font-size: var(--pm-text-sm);
  line-height: var(--pm-leading-normal);
  color: var(--pm-fg-3);
}.cp-root .pm-mono{
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;
  font-size: var(--pm-text-sm);
}.cp-root .pm-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--pm-font-sans);
  font-weight: 500;
  font-size: var(--pm-text-sm);
  letter-spacing: 0.02em;
  padding: 14px 22px;
  border-radius: var(--pm-r-pill);
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform var(--pm-dur-1) var(--pm-ease-out),
              background var(--pm-dur-2) var(--pm-ease-out),
              color var(--pm-dur-2) var(--pm-ease-out),
              border-color var(--pm-dur-2) var(--pm-ease-out);
  text-decoration: none;
  white-space: nowrap;
}.cp-root .pm-btn:active{ transform: translateY(1px); }.cp-root .pm-btn--primary{
  background: var(--pm-charcoal);
  color: var(--pm-ivory);
}.cp-root .pm-btn--primary:hover{ background: var(--pm-charcoal-2); }.cp-root .pm-btn--secondary{
  background: transparent;
  color: var(--pm-charcoal);
  border-color: var(--pm-border-strong);
}.cp-root .pm-btn--secondary:hover{ background: rgba(27,26,23,0.04); }.cp-root .pm-btn--ghost{
  background: transparent;
  color: var(--pm-charcoal);
  border-color: transparent;
  padding-left: 4px; padding-right: 4px;
}.cp-root .pm-btn--ghost:hover{ color: var(--pm-ochre-deep); }.cp-root .pm-btn--inverse{
  background: var(--pm-ivory);
  color: var(--pm-charcoal);
}.cp-root .pm-btn--inverse:hover{ background: #fff; }.cp-root .pm-card{
  background: var(--pm-cream);
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-r-lg);
  box-shadow: var(--pm-shadow-1);
}.cp-root .pm-input{
  font-family: var(--pm-font-sans);
  font-size: var(--pm-text-base);
  background: var(--pm-cream);
  border: 1px solid var(--pm-border-strong);
  border-radius: var(--pm-r-md);
  padding: 14px 16px;
  color: var(--pm-fg);
  width: 100%;
  transition: border-color var(--pm-dur-1) var(--pm-ease-out);
}.cp-root .pm-input::placeholder{ color: var(--pm-fg-3); }.cp-root .pm-input:focus{ outline: none; border-color: var(--pm-charcoal); }.cp-root .pm-stage-cream{ background: var(--pm-ivory); color: var(--pm-fg); }.cp-root .pm-stage-ink{ background: var(--pm-charcoal); color: var(--pm-fg-inverse); }.cp-root .pm-stage-ink .pm-body{ color: var(--pm-fg-inverse-2); }.cp-root .pm-stage-ink .pm-eyebrow,.cp-root .pm-stage-ink .pm-caption{ color: var(--pm-fg-inverse-3); }.cp-root *{ box-sizing: border-box; }.cp-root,.cp-root{
  margin: 0; padding: 0;
  background: var(--pm-ivory);
  color: var(--pm-fg);
  font-family: var(--pm-font-sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}.cp-root img{ max-width: 100%; display: block; }.cp-root a{ color: inherit; text-decoration: none; }.cp-root ul{ list-style: none; padding: 0; margin: 0; }.cp-root em{ font-style: italic; }.cp-root .pm-section{
  padding: var(--pm-section-y) clamp(24px, 6vw, 96px);
}.cp-root .pm-nav{
  position: sticky; top: 0; z-index: 50;
  padding: 18px clamp(16px, 4vw, 48px);
  background: rgba(244, 238, 227, 0.78);
  backdrop-filter: saturate(140%) blur(14px);
  -webkit-backdrop-filter: saturate(140%) blur(14px);
  border-bottom: 1px solid var(--pm-border);
}.cp-root .pm-nav__inner{
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px;
  max-width: 1320px; margin: 0 auto;
}.cp-root .pm-nav__brand img{
  height: 22px; width: auto;
  filter: invert(1) brightness(0.10);
}.cp-root .pm-nav__links{
  display: flex; gap: 28px;
  font-size: 14px;
  color: var(--pm-fg);
}.cp-root .pm-nav__links a{ padding: 6px 0; transition: opacity var(--pm-dur-1); }.cp-root .pm-nav__links a:hover{ opacity: 0.6; }.cp-root .pm-nav__actions{ display: flex; align-items: center; gap: 14px; }.cp-root .pm-nav__login{ font-size: 14px; color: var(--pm-fg-2); }.cp-root .pm-nav__login:hover{ color: var(--pm-fg); }@media  (max-width: 880px) {
  .cp-root .pm-nav__links{ display: none; }
}.cp-root .pm-hero{
  position: relative;
  min-height: clamp(620px, 96vh, 920px);
  color: var(--pm-ivory);
  overflow: hidden;
  display: flex; align-items: center;
  padding: 120px clamp(24px, 6vw, 96px) 80px;
}.cp-root .pm-hero__bg{
  position: absolute; inset: 0;
  background-size: cover; background-position: center 30%;
  z-index: 0;
}.cp-root .pm-hero__veil{
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(180deg,
    rgba(11,9,7,0.20) 0%,
    rgba(11,9,7,0.05) 30%,
    rgba(11,9,7,0.10) 70%,
    rgba(11,9,7,0.55) 100%);
}.cp-root .pm-hero__inner{ position: relative; z-index: 2; max-width: 980px; }.cp-root .pm-hero__title{
  font-family: var(--pm-font-serif); font-weight: 400;
  font-size: clamp(3rem, 9.5vw, 9rem);
  line-height: 0.96;
  letter-spacing: -0.025em;
  margin: 0 0 28px;
  text-wrap: balance;
}.cp-root .pm-hero__sub{
  max-width: 540px;
  font-size: clamp(1rem, 1.2vw, 1.125rem);
  line-height: 1.55;
  color: rgba(244, 238, 227, 0.88);
  margin: 0 0 36px;
  text-wrap: pretty;
}.cp-root .pm-hero__cta{ display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }.cp-root .pm-hero__fineprint{ font-size: 13px; color: rgba(244, 238, 227, 0.65); letter-spacing: 0.04em; }.cp-root .pm-hero__scroll{
  position: absolute; bottom: 28px; left: clamp(24px, 6vw, 96px); z-index: 2;
  display: flex; align-items: center; gap: 14px;
  font-size: 11px; letter-spacing: var(--pm-tracking-eyebrow); text-transform: uppercase;
  color: rgba(244, 238, 227, 0.6);
}.cp-root .pm-hero__scroll-line{ width: 56px; height: 1px; background: rgba(244, 238, 227, 0.45); }.cp-root .pm-welcome{
  display: flex; flex-direction: column; align-items: center; text-align: center;
  gap: 28px;
  padding-top: clamp(120px, 14vw, 200px);
  padding-bottom: clamp(60px, 8vw, 100px);
}.cp-root .pm-welcome__lead{
  max-width: 920px;
  margin: 0;
  font-size: clamp(2rem, 4.4vw, 3.75rem);
}.cp-root .pm-feature-grid{
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 32px;
  max-width: 1320px; margin: 0 auto;
}@media  (max-width: 860px) { .cp-root .pm-feature-grid{ grid-template-columns: 1fr; } }.cp-root .pm-feature{ display: flex; flex-direction: column; gap: 18px; }.cp-root .pm-feature__photo{
  aspect-ratio: 3/4;
  border-radius: var(--pm-r-lg);
  background-size: cover; background-position: center;
  background-color: var(--pm-stone-2);
}.cp-root .pm-feature__title{
  font-family: var(--pm-font-serif); font-weight: 400;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 4px 0 0;
}.cp-root .pm-feature__body{
  font-size: 15px; line-height: 1.65; color: var(--pm-fg-2);
  margin: 0;
  text-wrap: pretty;
}.cp-root .pm-how{
  border-radius: 0;
}.cp-root .pm-how__head{
  display: flex; flex-direction: column; gap: 18px; max-width: 980px;
  margin: 0 auto 64px;
  text-align: center; align-items: center;
}.cp-root .pm-how__title{
  font-size: clamp(2rem, 4.4vw, 3.5rem);
  color: var(--pm-ivory);
  margin: 0;
}.cp-root .pm-how__grid{
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 36px;
  max-width: 1320px; margin: 0 auto;
}@media  (max-width: 860px) { .cp-root .pm-how__grid{ grid-template-columns: 1fr; } }.cp-root .pm-step{ display: flex; flex-direction: column; gap: 22px; }.cp-root .pm-step__photo{
  aspect-ratio: 4/5;
  border-radius: var(--pm-r-lg);
  background-size: cover; background-position: center;
  background-color: var(--pm-charcoal-2);
}.cp-root .pm-step__meta{ display: flex; flex-direction: column; gap: 10px; padding: 0 4px; }.cp-root .pm-step__n{
  font-family: var(--pm-font-sans);
  font-size: 13px;
  letter-spacing: var(--pm-tracking-eyebrow);
  text-transform: uppercase;
  color: var(--pm-blush);
}.cp-root .pm-step__body{ font-size: 15px; line-height: 1.6; color: var(--pm-fg-inverse-2); margin: 0; }.cp-root .pm-how__cta{ display: flex; justify-content: center; margin-top: 56px; }.cp-root .pm-uc__head{
  display: flex; flex-direction: column; gap: 18px;
  max-width: 980px;
  margin: 0 auto 56px;
  text-align: center; align-items: center;
}.cp-root .pm-uc__grid{
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
  max-width: 1320px; margin: 0 auto;
}@media  (max-width: 1024px) { .cp-root .pm-uc__grid{ grid-template-columns: repeat(2, 1fr); } }@media  (max-width: 560px)  { .cp-root .pm-uc__grid{ grid-template-columns: 1fr; } }.cp-root .pm-uc__tile{
  position: relative;
  aspect-ratio: 3/4.4;
  border-radius: var(--pm-r-lg);
  overflow: hidden;
  background: var(--pm-charcoal);
}.cp-root .pm-uc__photo{
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transition: transform var(--pm-dur-4) var(--pm-ease-out);
}.cp-root .pm-uc__tile:hover .pm-uc__photo{ transform: scale(1.04); }.cp-root .pm-uc__overlay{
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 22px 22px 24px;
  color: var(--pm-ivory);
  background: linear-gradient(to top, rgba(15,12,8,0.85) 0%, rgba(15,12,8,0.55) 50%, rgba(15,12,8,0) 100%);
}.cp-root .pm-uc__title-sm{
  font-family: var(--pm-font-serif);
  font-size: 22px; line-height: 1.1; letter-spacing: -0.02em;
  margin: 0 0 10px;
}.cp-root .pm-uc__body{ font-size: 13px; line-height: 1.55; color: rgba(244, 238, 227, 0.78); margin: 0 0 14px; }.cp-root .pm-uc__link{
  display: inline-flex; gap: 8px;
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--pm-blush);
  border-bottom: 1px solid rgba(230, 211, 186, 0.4);
  padding-bottom: 2px;
}.cp-root .pm-uc__link:hover{ color: var(--pm-ivory); border-color: var(--pm-ivory); }.cp-root .pm-benefits__head{
  display: flex; flex-direction: column; gap: 14px;
  max-width: 920px;
  margin: 0 auto 60px;
  text-align: center; align-items: center;
}.cp-root .pm-benefits__grid{
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 56px 40px;
  max-width: 1240px; margin: 0 auto;
}@media  (max-width: 900px) { .cp-root .pm-benefits__grid{ grid-template-columns: 1fr 1fr; gap: 40px; } }@media  (max-width: 560px) { .cp-root .pm-benefits__grid{ grid-template-columns: 1fr; } }.cp-root .pm-benefit{ padding-top: 16px; border-top: 1px solid var(--pm-border-strong); }.cp-root .pm-benefit__title{
  font-family: var(--pm-font-serif); font-weight: 400;
  font-size: 1.5rem; line-height: 1.1; letter-spacing: -0.02em;
  margin: 0 0 10px;
}.cp-root .pm-benefit__body{ font-size: 15px; line-height: 1.6; color: var(--pm-fg-2); margin: 0; }.cp-root .pm-benefits__cta{ display: flex; justify-content: center; margin-top: 64px; }.cp-root .pm-testimonials{ text-align: center; }.cp-root .pm-testimonials__head{ display: flex; flex-direction: column; gap: 18px; align-items: center; max-width: 980px; margin: 0 auto 48px; }.cp-root .pm-testimonials__title{ color: var(--pm-ivory); margin: 0; font-size: clamp(2rem, 4vw, 3rem); }.cp-root .pm-testimonial{ max-width: 820px; margin: 24px auto 32px; }.cp-root .pm-testimonial blockquote{
  font-family: var(--pm-font-serif); font-weight: 400;
  font-size: clamp(1.25rem, 2.4vw, 2rem);
  line-height: 1.3;
  letter-spacing: -0.01em;
  margin: 0;
  color: var(--pm-ivory);
  text-wrap: balance;
}.cp-root .pm-testimonial figcaption{
  margin-top: 28px;
  display: flex; flex-direction: column; gap: 4px;
  color: var(--pm-fg-inverse-3);
}.cp-root .pm-testimonial__name{
  font-family: var(--pm-font-sans); font-size: 14px;
  color: var(--pm-blush); letter-spacing: 0.02em;
}.cp-root .pm-testimonial__role{ font-size: 12px; letter-spacing: var(--pm-tracking-eyebrow); text-transform: uppercase; }.cp-root .pm-testimonial__controls{ display: flex; align-items: center; justify-content: center; gap: 20px; margin-top: 36px; }.cp-root .pm-iconbtn{
  width: 44px; height: 44px; border-radius: 999px;
  border: 1px solid var(--pm-border-inverse);
  background: transparent; color: var(--pm-ivory);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background var(--pm-dur-2);
}.cp-root .pm-iconbtn:hover{ background: rgba(244, 238, 227, 0.06); }.cp-root .pm-iconbtn img{ width: 20px; height: 20px; filter: invert(1) brightness(1.4); }.cp-root .pm-testimonial__dots{ display: flex; gap: 10px; }.cp-root .pm-dot{
  width: 8px; height: 8px; border-radius: 999px;
  border: 0; padding: 0; cursor: pointer;
  background: rgba(244, 238, 227, 0.25);
  transition: background var(--pm-dur-1), width var(--pm-dur-2);
}.cp-root .pm-dot.is-active{ background: var(--pm-ivory); width: 22px; }.cp-root .pm-pricing__head{
  display: flex; flex-direction: column; gap: 18px; align-items: center; text-align: center;
  max-width: 980px; margin: 0 auto 52px;
}.cp-root .pm-toggle{
  display: inline-flex; padding: 4px;
  border: 1px solid var(--pm-border-strong);
  border-radius: 999px;
  background: var(--pm-cream);
  margin-top: 8px;
}.cp-root .pm-toggle button{
  font-family: var(--pm-font-sans); font-size: 13px;
  padding: 8px 16px; border: 0; border-radius: 999px;
  background: transparent; color: var(--pm-fg-2);
  cursor: pointer; transition: all var(--pm-dur-2);
  display: inline-flex; align-items: center; gap: 8px;
}.cp-root .pm-toggle button.is-on{
  background: var(--pm-charcoal); color: var(--pm-ivory);
}.cp-root .pm-toggle__off{ font-size: 11px; padding: 2px 6px; border-radius: 4px; background: var(--pm-ochre); color: var(--pm-charcoal); letter-spacing: 0.04em; }.cp-root .pm-toggle button.is-on .pm-toggle__off{ background: var(--pm-ochre); color: var(--pm-charcoal); }.cp-root .pm-pricing__grid{
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
  max-width: 1120px; margin: 0 auto;
}@media  (max-width: 820px) { .cp-root .pm-pricing__grid{ grid-template-columns: 1fr; } }.cp-root .pm-plan{
  background: var(--pm-cream);
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-r-xl);
  padding: 36px 32px;
  display: flex; flex-direction: column; gap: 28px;
}.cp-root .pm-plan--featured{
  background: var(--pm-charcoal);
  color: var(--pm-ivory);
  border-color: transparent;
}.cp-root .pm-plan__row{ display: flex; align-items: center; justify-content: space-between; gap: 12px; }.cp-root .pm-plan__name{ font-family: var(--pm-font-serif); font-weight: 400; font-size: 1.5rem; letter-spacing: -0.02em; margin: 0; }.cp-root .pm-plan__badge{
  font-family: var(--pm-font-sans); font-size: 11px;
  padding: 4px 10px; border-radius: 999px;
  background: var(--pm-ochre); color: var(--pm-charcoal);
  letter-spacing: 0.06em; text-transform: uppercase;
}.cp-root .pm-plan__price{ display: flex; align-items: baseline; gap: 8px; }.cp-root .pm-plan__amount{
  font-family: var(--pm-font-serif); font-weight: 400;
  font-size: clamp(3rem, 5vw, 4.5rem); line-height: 1; letter-spacing: -0.03em;
}.cp-root .pm-plan__sub{ font-size: 13px; opacity: 0.7; }.cp-root .pm-plan__body{ font-size: 14px; line-height: 1.55; margin: 0; opacity: 0.82; }.cp-root .pm-plan--featured .pm-plan__body{ color: var(--pm-fg-inverse-2); }.cp-root .pm-plan__cta{ align-self: stretch; justify-content: center; }.cp-root .pm-plan__fine{ font-size: 12px; opacity: 0.55; text-align: center; }.cp-root .pm-plan__features{ display: flex; flex-direction: column; gap: 16px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,0.001); }.cp-root .pm-plan:not(.pm-plan--featured) .pm-plan__features{ border-top-color: var(--pm-border); }.cp-root .pm-plan--featured .pm-plan__features{ border-top-color: var(--pm-border-inverse); }.cp-root .pm-plan__features ul{ display: flex; flex-direction: column; gap: 18px; }.cp-root .pm-plan__features li{ display: flex; flex-direction: column; gap: 4px; padding-left: 24px; position: relative; }.cp-root .pm-plan__features li::before{
  content: ""; position: absolute; left: 0; top: 8px;
  width: 12px; height: 1px; background: currentColor; opacity: 0.4;
}.cp-root .pm-plan__features strong{ font-family: var(--pm-font-sans); font-weight: 500; font-size: 14px; }.cp-root .pm-plan__features span{ font-size: 13px; line-height: 1.5; opacity: 0.7; }.cp-root .pm-faq__head{
  display: flex; flex-direction: column; gap: 14px; align-items: center; text-align: center;
  max-width: 820px; margin: 0 auto 48px;
}.cp-root .pm-faq__list{ max-width: 880px; margin: 0 auto; }.cp-root .pm-faq__item{ border-top: 1px solid var(--pm-border-strong); }.cp-root .pm-faq__item:last-child{ border-bottom: 1px solid var(--pm-border-strong); }.cp-root .pm-faq__q{
  width: 100%; text-align: left;
  padding: 28px 0;
  background: transparent; border: 0;
  font-family: var(--pm-font-serif); font-weight: 400; font-size: 1.375rem;
  letter-spacing: -0.01em;
  color: var(--pm-fg);
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  cursor: pointer;
}.cp-root .pm-faq__chev{
  font-family: var(--pm-font-sans); font-weight: 300; font-size: 28px;
  color: var(--pm-fg-2);
}.cp-root .pm-faq__a{
  font-size: 15px; line-height: 1.65; color: var(--pm-fg-2);
  padding: 0 0 28px; max-width: 720px;
}.cp-root .pm-finalcta{
  position: relative;
  min-height: 640px;
  display: flex; align-items: center;
  padding: 120px clamp(24px, 6vw, 96px);
  color: var(--pm-ivory);
  overflow: hidden;
}.cp-root .pm-finalcta__bg{
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
}.cp-root .pm-finalcta__veil{
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(11,9,7,0.65) 0%, rgba(11,9,7,0.45) 100%);
}.cp-root .pm-finalcta__inner{ position: relative; max-width: 980px; }.cp-root .pm-finalcta__title{
  font-size: clamp(2.5rem, 6vw, 5rem);
  letter-spacing: -0.02em;
  margin: 0 0 22px;
}.cp-root .pm-finalcta__sub{ font-size: 1.05rem; line-height: 1.55; opacity: 0.82; margin: 0 0 32px; max-width: 580px; }.cp-root .pm-footer{
  background: var(--pm-charcoal);
  color: var(--pm-fg-inverse-2);
  padding: 72px clamp(24px, 6vw, 96px) 32px;
}.cp-root .pm-footer__inner{
  display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 56px;
  max-width: 1240px; margin: 0 auto;
}@media  (max-width: 760px) { .cp-root .pm-footer__inner{ grid-template-columns: 1fr; gap: 36px; } }.cp-root .pm-footer__brand img{ height: 28px; width: auto; margin-bottom: 18px; }.cp-root .pm-footer__tag{
  font-family: var(--pm-font-serif); font-size: 1.5rem; line-height: 1.15; color: var(--pm-ivory);
  margin: 0 0 22px; max-width: 320px;
}.cp-root .pm-footer__contact{ font-size: 13px; line-height: 1.7; }.cp-root .pm-footer__contact a{ color: var(--pm-blush); }.cp-root .pm-footer__col ul{ display: flex; flex-direction: column; gap: 10px; margin-top: 14px; }.cp-root .pm-footer__col a{ font-size: 14px; }.cp-root .pm-footer__col a:hover{ color: var(--pm-ivory); }.cp-root .pm-footer__rule{ height: 1px; background: var(--pm-border-inverse); margin: 56px 0 22px; max-width: 1240px; margin-left: auto; margin-right: auto; }.cp-root .pm-footer__base{
  max-width: 1240px; margin: 0 auto;
  display: flex; justify-content: space-between;
  font-size: 12px; color: var(--pm-fg-inverse-3); letter-spacing: 0.04em;
}.cp-root .cp-badge{
    display: inline-block;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(244, 238, 227, 0.78);
    padding: 7px 16px;
    border: 1px solid rgba(244, 238, 227, 0.34);
    border-radius: 999px;
    margin-bottom: 28px;
  }.cp-root .cp-context__grid{
    display: grid;
    grid-template-columns: 1fr 0.85fr;
    gap: clamp(32px, 5vw, 72px);
    max-width: 1240px;
    margin: 0 auto;
    align-items: center;
  }@media  (max-width: 860px) { .cp-root .cp-context__grid{ grid-template-columns: 1fr; } }.cp-root .cp-context__copy{ display: flex; flex-direction: column; gap: 18px; }.cp-root .cp-context__copy .pm-h2{ margin: 0; }.cp-root .cp-context__body{ font-size: 16px; line-height: 1.7; color: var(--pm-fg-2); margin: 0; text-wrap: pretty; }.cp-root .cp-context__photo{
    aspect-ratio: 4/5;
    border-radius: var(--pm-r-xl);
    background-size: cover; background-position: center;
    background-color: var(--pm-stone-2);
    box-shadow: var(--pm-shadow-2);
  }.cp-root .cp-who{
    max-width: 1040px; margin: 0 auto;
    display: grid; grid-template-columns: 0.4fr 1fr; gap: clamp(20px, 4vw, 48px);
    align-items: start;
  }@media  (max-width: 720px) { .cp-root .cp-who{ grid-template-columns: 1fr; gap: 14px; } }.cp-root .cp-who__lead{
    font-family: var(--pm-font-serif); font-weight: 400;
    font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.25; letter-spacing: -0.015em;
    color: var(--pm-charcoal); margin: 0; text-wrap: pretty;
  }.cp-root .cp-who__lead strong{ font-weight: 400; font-style: italic; color: var(--pm-ochre-deep); }.cp-root .cp-perks__head{
    display: flex; align-items: baseline; justify-content: space-between; gap: 24px; flex-wrap: wrap;
    max-width: 1240px; margin: 0 auto 48px;
  }.cp-root .cp-perks__head .pm-h2{ margin: 0; }.cp-root .cp-perks{
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px 36px;
    max-width: 1240px; margin: 0 auto;
  }@media  (max-width: 960px) { .cp-root .cp-perks{ grid-template-columns: 1fr 1fr; } }@media  (max-width: 620px) { .cp-root .cp-perks{ grid-template-columns: 1fr; } }.cp-root .cp-perk{ padding-top: 20px; border-top: 1px solid var(--pm-border-strong); display: flex; flex-direction: column; gap: 10px; }.cp-root .cp-perk__n{
    font-family: var(--pm-font-serif); font-style: italic; font-size: 1.75rem; line-height: 1;
    color: var(--pm-ochre-deep);
  }.cp-root .cp-perk__title{
    font-family: var(--pm-font-sans); font-weight: 500; font-size: 1.0625rem;
    letter-spacing: -0.005em; color: var(--pm-charcoal); margin: 2px 0 0;
  }.cp-root .cp-perk__body{ font-size: 14.5px; line-height: 1.6; color: var(--pm-fg-2); margin: 0; text-wrap: pretty; }.cp-root .cp-perk--wide{
    grid-column: 1 / -1;
    background: var(--pm-cream);
    border: 1px solid var(--pm-border);
    border-top: 1px solid var(--pm-border);
    border-radius: var(--pm-r-lg);
    padding: 28px 32px;
    box-shadow: var(--pm-shadow-1);
  }.cp-root .cp-perk--wide .cp-perk__body{ font-size: 15.5px; max-width: 52ch; }.cp-root .cp-perk--wide em{ font-style: italic; color: var(--pm-ochre-deep); }.cp-root .cp-edu__head{
    display: flex; flex-direction: column; gap: 16px; align-items: center; text-align: center;
    max-width: 880px; margin: 0 auto 56px;
  }.cp-root .cp-edu__head .pm-h2{ color: var(--pm-ivory); margin: 0; }.cp-root .cp-edu__lede{ font-size: 16px; line-height: 1.65; color: var(--pm-fg-inverse-2); margin: 0; max-width: 680px; text-wrap: pretty; }.cp-root .cp-edu__grid{
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
    max-width: 1240px; margin: 0 auto;
  }@media  (max-width: 860px) { .cp-root .cp-edu__grid{ grid-template-columns: 1fr; } }.cp-root .cp-edu-card{
    background: var(--pm-charcoal-2);
    border: 1px solid var(--pm-border-inverse);
    border-radius: var(--pm-r-lg);
    padding: 32px 30px 34px;
    display: flex; flex-direction: column; gap: 14px;
  }.cp-root .cp-edu-card__n{ font-family: var(--pm-font-serif); font-style: italic; font-size: 1.75rem; line-height: 1; color: var(--pm-blush); }.cp-root .cp-edu-card__h{
    font-family: var(--pm-font-serif); font-weight: 400; font-size: 1.5rem; line-height: 1.1;
    letter-spacing: -0.015em; color: var(--pm-ivory); margin: 0; text-wrap: balance;
  }.cp-root .cp-edu-card__b{ font-size: 14.5px; line-height: 1.6; color: var(--pm-fg-inverse-2); margin: 0; text-wrap: pretty; }.cp-root .cp-quotes__head{
    display: flex; flex-direction: column; gap: 14px; align-items: center; text-align: center;
    max-width: 880px; margin: 0 auto 48px;
  }.cp-root .cp-quotes__head .pm-h2{ margin: 0; }.cp-root .cp-quotes{
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px;
    max-width: 1200px; margin: 0 auto; align-items: start;
  }@media  (max-width: 860px) { .cp-root .cp-quotes{ grid-template-columns: 1fr; max-width: 600px; } }.cp-root .cp-quote{
    background: var(--pm-cream); border: 1px solid var(--pm-border);
    border-radius: var(--pm-r-lg); padding: 28px 28px 24px;
    display: flex; flex-direction: column; gap: 18px; box-shadow: var(--pm-shadow-1);
  }.cp-root .cp-quote__body{
    font-family: var(--pm-font-serif); font-weight: 400; font-size: 1.25rem; line-height: 1.28;
    letter-spacing: -0.005em; color: var(--pm-charcoal); margin: 0; text-wrap: pretty;
  }.cp-root .cp-quote__by{ display: flex; flex-direction: column; gap: 3px; border-top: 1px solid var(--pm-border); padding-top: 14px; }.cp-root .cp-quote__name{ font-family: var(--pm-font-sans); font-size: 14px; font-weight: 500; color: var(--pm-charcoal); }.cp-root .cp-quote__role{ font-family: var(--pm-font-sans); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--pm-fg-3); }.cp-root .cp-finalcta__email{
    font-family: var(--pm-font-serif); font-style: italic; font-size: 1.25rem; color: var(--pm-blush);
  }