:root{--cap-bg:#F4F1E9;--cap-alt:#FAF8F3;--cap-content:#FEFDF9;--cap-text:#22231F;--cap-sub:#74736C;--cap-line:#D8D4C9;--cap-accent:#68705C;--cap-dark:#292D27}
.cap-page,.cap-page *{box-sizing:border-box}.cap-page{margin:0;background:var(--cap-bg);color:var(--cap-text);font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}.cap-page a{color:inherit;text-decoration:none}.cap-shell{width:min(1240px,calc(100% - 48px));margin:0 auto}.cap-header{position:relative;z-index:20;background:rgba(244,241,233,.96);border-bottom:1px solid var(--cap-line)}.cap-header-inner{height:70px;display:flex;align-items:center;gap:46px}.cap-brand{font-family:Georgia,"Times New Roman",serif;font-size:22px;letter-spacing:.02em}.cap-nav{display:flex;gap:32px;margin-right:auto;font-size:10px;letter-spacing:.08em}.cap-nav a{padding:5px 0}.cap-nav .is-active{border-bottom:1px solid var(--cap-text)}.cap-header-cta{border:1px solid #aaa89f;padding:8px 18px;font-size:11px}.cap-menu-button{display:none;border:0;background:transparent;font-size:20px}.cap-section{padding:82px 0;border-bottom:1px solid var(--cap-line)}.cap-section-tight{border-bottom:1px solid var(--cap-line)}.cap-label{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}.cap-page h1,.cap-page h2,.cap-page h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin:0;color:var(--cap-text)}.cap-page h1{font-size:clamp(50px,5vw,64px);line-height:.98;letter-spacing:-.03em}.cap-page h2{font-size:clamp(36px,3.2vw,48px);line-height:1.08;letter-spacing:-.025em}.cap-page h3{font-size:20px;line-height:1.15}.cap-page p{margin:0;color:var(--cap-sub)}.cap-body-l{font-size:18px}.cap-meta{margin-top:26px;font-size:11px;letter-spacing:.08em;white-space:normal}.cap-text-link{display:inline-flex;gap:10px;margin-top:14px;padding-bottom:5px;border-bottom:1px solid var(--cap-text);font-size:12px;letter-spacing:.08em}.cap-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);min-height:610px}.cap-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:72px 8% 72px 4%}.cap-hero-subtitle{margin-top:24px;font-family:Georgia,"Times New Roman",serif;font-size:22px}.cap-hero-copy .cap-body-l{margin-top:8px;max-width:420px;color:var(--cap-text)}.cap-hero-media{min-height:610px;background:var(--cap-alt)}.cap-hero-media picture,.cap-hero-media img{display:block;width:100%;height:100%}.cap-hero-media img{object-fit:cover}.cap-image-placeholder{width:100%;height:100%;min-height:260px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ece8df,#f8f5ee);color:#a19d93;font-size:10px;letter-spacing:.18em}.cap-concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.cap-concept-media{aspect-ratio:5/3;overflow:hidden}.cap-concept-media img{width:100%;height:100%;object-fit:cover}.cap-concept-copy p{margin-top:26px;max-width:520px;font-size:15px}.cap-method .cap-section-intro,.cap-families .cap-section-intro,.cap-information .cap-section-intro{margin-top:12px}.cap-method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}.cap-method-card{min-width:0}.cap-method-card .cap-no{font-family:Georgia,serif;font-size:18px;margin-bottom:10px}.cap-method-card p{margin-top:5px;font-size:13px}.cap-method-image{aspect-ratio:4/2.6;margin-top:18px;overflow:hidden}.cap-method-image img{width:100%;height:100%;object-fit:cover}.cap-families{padding-top:62px;padding-bottom:62px}.cap-accordion{margin-top:30px;border-top:1px solid var(--cap-line)}.cap-accordion-item{border-bottom:1px solid var(--cap-line)}.cap-accordion-item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:58px minmax(180px,.5fr) 1fr 26px;gap:18px;align-items:center;min-height:58px;padding:9px 0}.cap-accordion-item summary::-webkit-details-marker{display:none}.cap-acc-no{font-family:Georgia,serif;font-size:13px}.cap-acc-title{font-family:Georgia,serif;font-size:14px}.cap-plus{font-size:18px;text-align:center;transition:transform .2s}.cap-accordion-item[open] .cap-plus{transform:rotate(45deg)}.cap-accordion-body{padding:0 44px 18px 76px;color:var(--cap-sub);font-size:13px}.cap-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:32px;border-left:1px solid var(--cap-line);border-top:1px solid var(--cap-line)}.cap-info-card{min-height:112px;padding:18px;border-right:1px solid var(--cap-line);border-bottom:1px solid var(--cap-line);display:flex;flex-direction:column;justify-content:space-between}.cap-info-card span{font-size:9px;letter-spacing:.12em}.cap-info-card strong{font-family:Georgia,serif;font-size:16px;font-weight:400;line-height:1.4}.cap-price-card strong{font-size:24px}.cap-price-card .woocommerce-Price-currencySymbol{font-size:.75em}.cap-enrollment{background:var(--cap-dark);color:#f5f2e9;padding:72px 0 70px}.cap-enrollment>.cap-shell{display:grid;grid-template-columns:300px 1fr;gap:42px;align-items:start}.cap-enrollment .cap-label,.cap-enrollment h2,.cap-enrollment p{color:#f5f2e9}.cap-enrollment h2{font-size:38px}.cap-enrollment-heading p{margin-top:14px;font-size:13px;color:#d6d2c9}.cap-enrollment-embed{min-width:0}.cap-enrollment-missing{padding:24px;border:1px solid #5a5f54}.cap-faq-grid{display:grid;grid-template-columns:260px 1fr;gap:60px}.cap-faq .cap-accordion{margin-top:0}.cap-faq .cap-accordion-item summary{grid-template-columns:1fr 26px}.cap-faq .cap-accordion-body{padding-left:0}.cap-footer{border-top:1px solid var(--cap-line);background:var(--cap-alt)}.cap-footer-inner{min-height:86px;display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:30px}.cap-footer-inner strong{font-family:Georgia,serif;font-size:16px}.cap-footer-links{display:flex;gap:22px;font-size:9px}.cap-footer small{font-size:8px;color:var(--cap-sub)}
/* Enrollment dark-skin adapter — data/checkout logic stays in the existing Enrollment plugin. */
.cap-enrollment [id^="chamiga-enrollment-"]{color:#f5f2e9!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:28px!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-section{background:transparent!important;border-color:#596057!important;color:#f5f2e9!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-season-offer,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-session-card,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-selection-summary{background:transparent!important;border-color:#596057!important;color:#f5f2e9!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-session-card.is-selected{background:#343a32!important;border-color:#6f776b!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-bulk-time.is-selected,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-time-option.is-selected{background:#596255!important;border-color:#c0c7b9!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-bulk-time,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-time-option{background:transparent!important;color:#f5f2e9!important;border-color:#71776d!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-offer-meta,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-note,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-session-name,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-time-date,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-summary-empty,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-summary-count,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-summary-item span,.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-selection-notice{color:#c9c7bf!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-submit{background:#f5f2e9!important;color:#22231f!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-submit:disabled{background:#72766f!important;color:#aaa!important}.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-mobile-summary{background:rgba(41,45,39,.97)!important;border-top-color:#596057!important;color:#f5f2e9!important}
@media(max-width:767px){.cap-shell{width:calc(100% - 40px)}.cap-header-inner{height:56px;gap:16px}.cap-brand{font-size:18px;margin-right:auto}.cap-nav,.cap-header-cta{display:none}.cap-menu-button{display:block}.cap-header.is-menu-open .cap-nav{position:absolute;display:flex;flex-direction:column;gap:12px;left:0;right:0;top:56px;background:var(--cap-alt);padding:18px 20px;border-bottom:1px solid var(--cap-line)}.cap-section{padding:54px 0}.cap-page h1{font-size:40px;line-height:.95}.cap-page h2{font-size:28px}.cap-label{margin-bottom:12px;font-size:9px}.cap-body-l{font-size:14px}.cap-hero-grid{display:block;min-height:0}.cap-hero-copy{padding:34px 0 26px}.cap-hero-copy .cap-body-l{margin-top:8px}.cap-hero-subtitle{margin-top:16px;font-size:15px}.cap-meta{margin-top:17px;font-size:9px}.cap-text-link{margin-top:11px;font-size:10px}.cap-hero-media{min-height:0;aspect-ratio:4/3;margin:0 -20px;width:calc(100% + 40px)}.cap-concept-grid{grid-template-columns:1fr;gap:24px}.cap-concept-media{aspect-ratio:16/8}.cap-concept-copy p{margin-top:14px;font-size:13px}.cap-method-grid{grid-template-columns:1fr;margin-top:28px;gap:0}.cap-method-card{display:grid;grid-template-columns:48px 1fr 94px;gap:8px 14px;align-items:start;padding:14px 0;border-top:1px solid var(--cap-line)}.cap-method-card .cap-no{grid-row:1/3;font-size:15px}.cap-method-card h3{font-size:13px}.cap-method-card p{font-size:10px}.cap-method-image{grid-column:3;grid-row:1/3;margin:0;aspect-ratio:1.35/1}.cap-families{padding-top:46px;padding-bottom:46px}.cap-accordion{margin-top:20px}.cap-accordion-item summary{grid-template-columns:36px 1fr 20px;gap:8px;min-height:47px}.cap-accordion-item summary .cap-acc-title{grid-column:2}.cap-accordion-item summary:has(.cap-acc-no) .cap-plus{grid-column:3}.cap-accordion-body{padding:0 28px 14px 44px;font-size:11px}.cap-info-grid{grid-template-columns:1fr 1fr;margin-top:22px}.cap-info-card{min-height:86px;padding:12px}.cap-info-card strong{font-size:12px}.cap-price-card strong{font-size:18px}.cap-enrollment{padding:42px 0 38px}.cap-enrollment>.cap-shell{display:block}.cap-enrollment-heading{margin-bottom:24px}.cap-enrollment h2{font-size:30px}.cap-enrollment [id^="chamiga-enrollment-"]{display:block!important;padding-bottom:90px!important}.cap-faq-grid{grid-template-columns:1fr;gap:16px}.cap-faq .cap-accordion-item summary{grid-template-columns:1fr 20px}.cap-faq .cap-accordion-body{padding-left:0}.cap-footer-inner{min-height:118px;grid-template-columns:1fr auto;align-content:center}.cap-footer-links{grid-row:2;grid-column:1/3}.cap-footer small{grid-column:2;grid-row:1}.cap-page{padding-bottom:76px}}

/* v0.9.2 — wireframe fidelity pass based on first live-page review. */
body.chamiga-aroma-canvas{margin:0;background:var(--cap-bg);overflow-x:hidden}
body.chamiga-aroma-canvas .cap-page{min-height:100vh}
.cap-acc-preview{color:var(--cap-sub);font-size:12px;line-height:1.55;min-width:0}
.cap-price-card strong,
.cap-price-card .woocommerce-Price-amount,
.cap-price-card .amount,
.cap-price-card bdi{font-family:Georgia,"Times New Roman",serif!important;font-size:22px!important;font-weight:400!important;line-height:1.15!important;color:var(--cap-text)!important}
.cap-price-card .woocommerce-Price-currencySymbol{font-size:.72em!important}
.cap-method-image{aspect-ratio:3/2}

/* Make the existing Enrollment substantially more compact without touching its checkout logic. */
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list{gap:8px!important}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-session-card{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:11px 13px!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-session-head{
  display:block!important;
  margin:0!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-session-name{margin-top:3px!important}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-time-options{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-time-option{
  min-height:46px!important;
  padding:7px 8px!important;
}

@media(max-width:767px){
  .cap-acc-preview{display:none}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-session-card{display:block!important;padding:13px!important}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-session-list .chamiga-session-head{display:flex!important;margin-bottom:10px!important}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-bulk-times,
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-time-options{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-time-option{min-height:48px!important;padding:7px 6px!important}
  .cap-price-card strong,
  .cap-price-card .woocommerce-Price-amount,
  .cap-price-card .amount,
  .cap-price-card bdi{font-size:18px!important}
}

/* v0.9.3 — dedicated Canvas renders outside Elementor/theme width wrappers. */
body.chamiga-aroma-canvas{
  width:100%;
  min-width:0;
}
body.chamiga-aroma-canvas > .cap-page{
  width:100%;
  max-width:none;
}


/* v0.9.4 — mobile FAQ grid collision fix.
   The generic mobile family-accordion rule assigned .cap-acc-title to column 2.
   FAQ only has two columns, so the question text was forced into the narrow + column. */
@media(max-width:767px){
  .cap-faq-grid,
  .cap-faq-grid > *,
  .cap-faq .cap-accordion,
  .cap-faq .cap-accordion-item{min-width:0!important;width:100%!important}

  .cap-faq .cap-accordion-item summary{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 24px!important;
    grid-template-rows:auto!important;
    gap:12px!important;
    align-items:center!important;
    width:100%!important;
    min-height:52px!important;
    padding:12px 0!important;
  }

  .cap-faq .cap-accordion-item summary .cap-acc-title{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    width:auto!important;
    white-space:normal!important;
    word-break:keep-all!important;
    overflow-wrap:break-word!important;
    writing-mode:horizontal-tb!important;
    line-height:1.55!important;
  }

  .cap-faq .cap-accordion-item summary .cap-plus{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    writing-mode:horizontal-tb!important;
  }
}

/* v0.9.7 — clean mobile spacing + FAQ pass.
   Replaces the malformed escaped CSS that shipped in v0.9.5/0.9.6. */
@media(min-width:768px){
  .cap-faq-grid{
    grid-template-columns:280px minmax(0,1fr)!important;
    gap:56px!important;
  }
  .cap-faq h2{
    font-size:38px!important;
    line-height:1.12!important;
    word-break:keep-all!important;
  }
}

@media(max-width:767px){
  /* Restore the normal 20px page side margin after v0.9.4's width override. */
  .cap-faq-grid{
    width:calc(100% - 40px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    gap:10px!important;
  }
  .cap-faq-grid > *,
  .cap-faq .cap-accordion,
  .cap-faq .cap-accordion-item{
    width:100%!important;
    min-width:0!important;
  }
  .cap-faq{
    padding-top:28px!important;
    padding-bottom:24px!important;
  }
  .cap-faq .cap-label{
    margin-bottom:6px!important;
    font-size:9px!important;
  }
  .cap-faq h2{
    font-size:24px!important;
    line-height:1.12!important;
    letter-spacing:-.03em!important;
    word-break:keep-all!important;
    white-space:nowrap!important;
  }
  .cap-faq .cap-accordion{
    margin-top:6px!important;
  }
  .cap-faq .cap-accordion-item summary{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 20px!important;
    gap:10px!important;
    align-items:center!important;
    min-height:46px!important;
    padding:10px 0!important;
  }
  .cap-faq .cap-accordion-item summary .cap-acc-title{
    grid-column:1!important;
    grid-row:1!important;
    font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.45!important;
    letter-spacing:-.025em!important;
    color:var(--cap-text)!important;
    white-space:normal!important;
    word-break:keep-all!important;
    overflow-wrap:break-word!important;
    writing-mode:horizontal-tb!important;
  }
  .cap-faq .cap-accordion-item summary .cap-plus{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    font-size:17px!important;
    line-height:1!important;
  }
  .cap-faq .cap-accordion-body{
    padding:0 30px 12px 0!important;
    font-size:12px!important;
    line-height:1.65!important;
    color:var(--cap-sub)!important;
  }

  /* Remove the duplicated bottom reserve from the embedded Enrollment. */
  .cap-enrollment [id^="chamiga-enrollment-"]{
    padding-bottom:0!important;
  }
  .cap-enrollment{
    padding-bottom:24px!important;
  }

  /* Mobile sticky CTA: target ~56–60px plus safe area. */
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-mobile-summary{
    min-height:58px!important;
    padding:7px max(16px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))!important;
    gap:12px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-mobile-summary-text{
    font-size:12px!important;
    line-height:1.35!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-mobile-submit{
    min-height:40px!important;
    padding:8px 17px!important;
    margin:0!important;
  }

  .cap-footer-inner{
    min-height:96px!important;
    padding:18px 0 15px!important;
    row-gap:12px!important;
  }
  .cap-footer-links{
    gap:16px!important;
    flex-wrap:wrap!important;
  }
  .cap-page{
    padding-bottom:64px!important;
  }
}


/* v0.9.8 — overall visual rhythm pass.
   Primary goal: match the approved editorial wireframe without changing
   page copy, stored content, Enrollment data, prices, stock, or checkout logic. */
@media(min-width:768px){
  /* Method hierarchy: keep the section editorial but give card titles more presence. */
  .cap-method .cap-section-intro{margin-top:22px!important;}
  .cap-method-card h3{font-size:22px!important;line-height:1.16!important;}

  /* Slightly tighten lower-page rhythm. */
  .cap-information{padding-top:72px!important;padding-bottom:72px!important;}
  .cap-faq{padding-top:70px!important;padding-bottom:66px!important;}
  .cap-footer-inner{min-height:76px!important;}

  /* Enrollment is composed into the approved two-column editorial layout by frontend.js. */
  .cap-enrollment{padding:62px 0 58px!important;}
  .cap-enrollment>.cap-shell{display:block!important;}
  .cap-enrollment-embed{width:100%!important;}
  .cap-enrollment [id^="chamiga-enrollment-"]{
    grid-template-columns:minmax(0,1fr) minmax(330px,.92fr)!important;
    gap:52px!important;
    align-items:start!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-main{min-width:0!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading{
    margin:0 0 24px!important;
    padding:0 0 22px!important;
    border-bottom:1px solid #596057!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading .cap-label{margin-bottom:10px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading h2{font-size:38px!important;line-height:1.02!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading p{margin-top:12px!important;font-size:13px!important;line-height:1.65!important;}

  /* Full Season becomes a line-based editorial block, not a boxed card. */
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-season-offer{
    border-left:0!important;
    border-right:0!important;
    border-top:0!important;
    border-bottom:1px solid #596057!important;
    padding:0 0 22px!important;
    margin:0 0 14px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-offer-title{font-size:22px!important;font-family:Georgia,"Times New Roman",serif!important;font-weight:400!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-offer-meta{font-size:13px!important;margin-top:5px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-default-time-text{margin-top:18px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-note{margin-top:10px!important;}

  /* Right summary uses the vertical divider from the approved wireframe. */
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-selection-summary{
    position:sticky!important;
    top:28px!important;
    padding:0 0 0 38px!important;
    border-left:1px solid #596057!important;
    min-height:300px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-summary-title{margin-bottom:16px!important;}

  /* Individual sessions are available, but do not dominate the initial page height. */
  .cap-enrollment [id^="chamiga-enrollment-"]:not(.cap-single-expanded) .chamiga-single-section{display:none!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0!important;
    padding:13px 0!important;
    border:0!important;
    border-bottom:1px solid #596057!important;
    background:transparent!important;
    color:#f5f2e9!important;
    font:inherit!important;
    font-size:12px!important;
    cursor:pointer!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle .cap-single-toggle-icon{font-size:18px!important;line-height:1!important;transition:transform .2s ease;}
  .cap-enrollment [id^="chamiga-enrollment-"].cap-single-expanded .cap-single-toggle .cap-single-toggle-icon{transform:rotate(45deg);}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-section{padding-top:16px!important;}

  /* Existing full-session detail control gets the same editorial row treatment. */
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-show-full-sessions{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:14px 0 0!important;
    padding:11px 0!important;
    color:#d9d7cf!important;
    border-bottom:1px solid #596057!important;
    font-size:11px!important;
    text-align:left!important;
  }
}

@media(max-width:767px){
  /* Keep the mobile sections that are already working, only normalize Enrollment composition. */
  .cap-enrollment>.cap-shell{display:block!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading{
    margin:0 0 20px!important;
    padding-bottom:18px!important;
    border-bottom:1px solid #596057!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading .cap-label{margin-bottom:8px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading h2{font-size:28px!important;line-height:1.03!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading p{margin-top:10px!important;font-size:12px!important;line-height:1.6!important;}

  .cap-enrollment [id^="chamiga-enrollment-"]:not(.cap-single-expanded) .chamiga-single-section{display:none!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin:0!important;
    padding:12px 0!important;
    border:0!important;
    border-bottom:1px solid #596057!important;
    background:transparent!important;
    color:#f5f2e9!important;
    font:inherit!important;
    font-size:12px!important;
    cursor:pointer!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle .cap-single-toggle-icon{font-size:18px!important;line-height:1!important;transition:transform .2s ease;}
  .cap-enrollment [id^="chamiga-enrollment-"].cap-single-expanded .cap-single-toggle .cap-single-toggle-icon{transform:rotate(45deg);}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-single-section{padding-top:14px!important;}

  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-season-offer{
    padding:16px!important;
    margin-bottom:12px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-show-full-sessions{
    width:100%!important;
    margin-top:12px!important;
    padding:10px 0!important;
    text-align:left!important;
  }
}

/* v0.9.9 — final visual alignment pass.
   Content copy and Enrollment business logic remain unchanged. */
@media(min-width:768px){
  /* 1) Hero / Concept / Method / Families: one consistent editorial rhythm. */
  .cap-concept{padding-top:76px!important;padding-bottom:76px!important;}
  .cap-method{padding-top:78px!important;padding-bottom:76px!important;}
  .cap-families{padding-top:62px!important;padding-bottom:62px!important;}
  .cap-concept-grid{gap:58px!important;}
  .cap-concept-media{aspect-ratio:3/2!important;}
  .cap-concept-copy p{margin-top:22px!important;line-height:1.72!important;}
  .cap-method-grid{margin-top:42px!important;gap:26px!important;}
  .cap-method-image{aspect-ratio:3/2!important;margin-top:16px!important;}
  .cap-families .cap-accordion{margin-top:26px!important;}
  .cap-families .cap-accordion-item summary{min-height:54px!important;}

  /* 2) Program Information: compact cards, and prices fill the second row. */
  .cap-information{padding-top:68px!important;padding-bottom:66px!important;}
  .cap-information .cap-section-intro{margin-top:10px!important;}
  .cap-info-grid{margin-top:28px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .cap-info-card{min-height:100px!important;padding:16px!important;}
  .cap-info-card strong{font-size:15px!important;line-height:1.38!important;}
  .cap-info-card.cap-price-card{grid-column:span 2!important;min-height:92px!important;}
  .cap-info-card.cap-price-card strong{font-size:22px!important;letter-spacing:.02em!important;}

  /* 3) Enrollment: preserve function, reduce visual weight and dead space. */
  .cap-enrollment{padding-top:52px!important;padding-bottom:48px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"]{
    grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)!important;
    gap:46px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading{
    margin-bottom:20px!important;
    padding-bottom:18px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-heading h2{
    font-size:40px!important;
    line-height:1!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-season-offer{
    border-bottom:0!important;
    padding-bottom:12px!important;
    margin-bottom:4px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-bulk-time{
    padding:10px 9px!important;
    min-height:42px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-show-full-sessions{
    /* Keep the per-session time-change function, remove the two decorative rules below it. */
    border:0!important;
    border-bottom:0!important;
    margin:10px 0 2px!important;
    padding:8px 0!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-selection-summary{
    min-height:250px!important;
    padding-left:34px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-enrollment-submit{
    min-height:46px!important;
    padding:12px 16px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
    padding:11px 0!important;
  }

  /* 4) FAQ / Footer: align to the wireframe and keep the lower page light. */
  .cap-faq{padding-top:62px!important;padding-bottom:58px!important;}
  .cap-faq-grid{grid-template-columns:240px minmax(0,1fr)!important;gap:54px!important;align-items:start!important;}
  .cap-faq .cap-label{margin-bottom:12px!important;}
  .cap-faq h2{font-size:36px!important;line-height:1.08!important;white-space:nowrap!important;}
  .cap-faq .cap-accordion-item summary{min-height:50px!important;padding:8px 0!important;}
  .cap-faq .cap-accordion-body{padding-bottom:14px!important;}
  .cap-footer-inner{min-height:72px!important;}
  .cap-footer-links{gap:20px!important;}
}

@media(max-width:767px){
  /* 5) Mobile: keep the proven layouts, normalize spacing only. */
  .cap-concept{padding-top:50px!important;padding-bottom:50px!important;}
  .cap-method{padding-top:50px!important;padding-bottom:48px!important;}
  .cap-families{padding-top:44px!important;padding-bottom:44px!important;}
  .cap-information{padding-top:48px!important;padding-bottom:48px!important;}
  .cap-faq{padding-top:44px!important;padding-bottom:40px!important;}

  .cap-concept-media{aspect-ratio:3/2!important;}
  .cap-method-grid{margin-top:24px!important;}
  .cap-families .cap-accordion{margin-top:18px!important;}
  .cap-info-grid{margin-top:20px!important;}
  .cap-info-card{min-height:82px!important;}
  .cap-info-card.cap-price-card{grid-column:span 1!important;}

  .cap-enrollment{padding-top:42px!important;padding-bottom:18px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-season-offer{
    border-bottom:0!important;
    margin-bottom:4px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .chamiga-show-full-sessions{
    border:0!important;
    border-bottom:0!important;
    margin:8px 0 0!important;
    padding:8px 0!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
    margin-top:2px!important;
    padding:10px 0!important;
  }

  .cap-faq h2{font-size:24px!important;line-height:1.12!important;}
  .cap-faq .cap-accordion{margin-top:16px!important;}
  .cap-faq .cap-accordion-item summary{min-height:44px!important;padding:9px 0!important;}
  .cap-footer-inner{padding-top:16px!important;padding-bottom:14px!important;}
}


/* v0.9.10 — recruitment-page-only navigation. */
.cap-page [id^="aroma-"]{scroll-margin-top:16px;}
.cap-footer-link-disabled{color:inherit;cursor:default;opacity:.72;}

/* v0.9.12 — marketing information architecture.
   Uses the approved design tokens and typography. Enrollment/WooCommerce styling is untouched. */
.cap-hero-concept{
  margin-top:18px;
  color:var(--cap-sub);
  font-family:Georgia,"Times New Roman",serif;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.cap-problem{background:var(--cap-alt);}
.cap-problem-grid,
.cap-editorial-grid,
.cap-audience-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:72px;
  align-items:start;
}
.cap-problem-copy,
.cap-editorial-body{padding-top:28px;}
.cap-problem-copy p,
.cap-editorial-body p,
.cap-audience-intro{
  max-width:560px;
  font-size:15px;
  line-height:1.82;
}
.cap-problem-emphasis{
  margin-top:32px;
  padding:18px 0 18px 22px;
  border-left:1px solid var(--cap-text);
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  line-height:1.45;
}

.cap-method-reference{
  margin-top:18px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:14px;
  font-style:italic;
  color:var(--cap-sub);
}
.cap-method .cap-section-intro{max-width:660px;line-height:1.75;}
.cap-method-endpoint{
  display:grid;
  grid-template-columns:58px 180px 1fr;
  gap:18px;
  align-items:center;
  margin-top:26px;
  padding:16px 0;
  border-top:1px solid var(--cap-line);
  border-bottom:1px solid var(--cap-line);
}
.cap-method-endpoint .cap-no{font-family:Georgia,serif;font-size:13px;}
.cap-method-endpoint strong{font-family:Georgia,"Times New Roman",serif;font-size:14px;font-weight:400;}
.cap-method-endpoint>span:last-child{color:var(--cap-sub);font-size:12px;}

.cap-single-complex .cap-editorial-body{padding-top:34px;}
.cap-single-complex .cap-editorial-body p{color:var(--cap-sub);}

.cap-families .cap-section-intro{max-width:620px;line-height:1.75;}

.cap-transformation-flow{
  display:flex;
  align-items:center;
  gap:16px;
  margin:36px 0 42px;
  padding:18px 0;
  border-top:1px solid var(--cap-line);
  border-bottom:1px solid var(--cap-line);
}
.cap-flow-step{
  font-family:Georgia,"Times New Roman",serif;
  font-size:17px;
  white-space:nowrap;
}
.cap-flow-arrow{color:var(--cap-sub);font-size:13px;}
.cap-transformation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.cap-transformation-card{padding-top:18px;border-top:1px solid var(--cap-text);}
.cap-transformation-card h3{font-size:15px;letter-spacing:.02em;}
.cap-transformation-card p{margin-top:12px;font-size:13px;line-height:1.7;}

.cap-audience{background:var(--cap-alt);}
.cap-audience-intro{margin-top:24px!important;}
.cap-audience-list{list-style:none;margin:8px 0 0;padding:0;border-top:1px solid var(--cap-line);}
.cap-audience-list li{
  position:relative;
  margin:0;
  padding:16px 0 16px 22px;
  border-bottom:1px solid var(--cap-line);
  color:var(--cap-sub);
  font-size:14px;
  line-height:1.55;
}
.cap-audience-list li:before{content:"—";position:absolute;left:0;color:var(--cap-text);}

@media(min-width:768px){
  .cap-problem{padding-top:74px!important;padding-bottom:74px!important;}
  .cap-single-complex{padding-top:72px!important;padding-bottom:72px!important;}
  .cap-transformation{padding-top:76px!important;padding-bottom:74px!important;}
  .cap-audience{padding-top:72px!important;padding-bottom:72px!important;}
  .cap-families h2{max-width:720px;}
}

@media(max-width:767px){
  .cap-hero-concept{margin-top:13px;font-size:9px;letter-spacing:.1em;}
  .cap-problem,.cap-single-complex,.cap-transformation,.cap-audience{padding-top:48px!important;padding-bottom:48px!important;}
  .cap-problem-grid,.cap-editorial-grid,.cap-audience-grid{grid-template-columns:1fr;gap:22px;}
  .cap-problem-copy,.cap-editorial-body,.cap-single-complex .cap-editorial-body{padding-top:0;}
  .cap-problem-copy p,.cap-editorial-body p,.cap-audience-intro{font-size:13px;line-height:1.72;}
  .cap-problem-emphasis{margin-top:22px;padding:14px 0 14px 16px;font-size:16px;line-height:1.45;}
  .cap-method-reference{margin-top:13px;font-size:12px;line-height:1.5;}
  .cap-method .cap-section-intro{font-size:12px;line-height:1.7;}
  .cap-method-endpoint{grid-template-columns:36px 1fr;gap:6px 8px;margin-top:14px;padding:12px 0;}
  .cap-method-endpoint .cap-no{grid-row:1/3;font-size:13px;}
  .cap-method-endpoint strong{font-size:12px;}
  .cap-method-endpoint>span:last-child{grid-column:2;font-size:10px;}
  .cap-families .cap-section-intro{font-size:12px;line-height:1.65;}
  .cap-transformation-flow{flex-wrap:wrap;gap:8px 10px;margin:24px 0 28px;padding:14px 0;}
  .cap-flow-step{font-size:14px;}
  .cap-flow-arrow{font-size:11px;}
  .cap-transformation-grid{grid-template-columns:1fr;gap:20px;}
  .cap-transformation-card{padding-top:14px;}
  .cap-transformation-card h3{font-size:13px;}
  .cap-transformation-card p{margin-top:8px;font-size:12px;line-height:1.65;}
  .cap-audience-intro{margin-top:16px!important;}
  .cap-audience-list{margin-top:2px;}
  .cap-audience-list li{padding:13px 0 13px 18px;font-size:12px;line-height:1.55;}
}

/* v0.9.14 — launch-safe multi-track Enrollment bridge.
   The proven CHAMIGA Enrollment core remains untouched; this page only switches
   between independently configured enrollment instances. */
.cap-info-card.cap-sunday-price-card em{
  display:block;
  margin-top:7px;
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-style:normal;
  font-size:10px;
  line-height:1.45;
  letter-spacing:.04em;
  color:var(--cap-sub);
}
.cap-enrollment-track-tabs{
  width:min(1240px,100%);
  display:flex;
  gap:0;
  margin:0 0 24px;
  border-bottom:1px solid rgba(245,242,233,.24);
}
.cap-enrollment-track-tab{
  appearance:none;
  border:0;
  border-bottom:1px solid transparent;
  margin:0 0 -1px;
  padding:0 0 11px;
  background:transparent;
  color:#a9ada5;
  font:500 11px/1.2 Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.08em;
  cursor:pointer;
}
.cap-enrollment-track-tab + .cap-enrollment-track-tab{margin-left:30px;}
.cap-enrollment-track-tab.is-active{
  color:#f5f2e9;
  border-bottom-color:#f5f2e9;
}
.cap-enrollment-track-panel[hidden]{display:none!important;}
.cap-enrollment-track-panel .cap-enrollment-embed{width:100%;}

@media(max-width:767px){
  .cap-enrollment-track-tabs{
    margin-bottom:18px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .cap-enrollment-track-tab{
    flex:0 0 auto;
    padding-bottom:10px;
    font-size:10px;
    white-space:nowrap;
  }
  .cap-enrollment-track-tab + .cap-enrollment-track-tab{margin-left:22px;}
  .cap-info-card.cap-sunday-price-card em{font-size:9px;letter-spacing:.02em;}
}


/* v0.9.15 — Enrollment selected-time visual state only.
   Selected time buttons use a stronger fill/border; no enrollment or checkout logic changed. */


/* v0.9.17 — Enrollment action hierarchy only.
   No selection, pricing, WooCommerce, AJAX, cart, or checkout logic is changed. */
.cap-enrollment [id^="chamiga-enrollment-"] .cap-common-offer-instruction{
  margin-top:18px!important;
  margin-bottom:10px!important;
  color:#f5f2e9!important;
  font-size:12px!important;
  line-height:1.55!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-common-offer .chamiga-bulk-time{
  min-height:58px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-bulk-time-label{
  display:block!important;
  font-size:13px!important;
  line-height:1.25!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-bulk-time-action{
  display:block!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.12em!important;
  color:#aeb4aa!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .chamiga-bulk-time.is-selected .cap-bulk-time-action{
  color:#f5f2e9!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
  margin-top:20px!important;
  padding:18px 0!important;
  border-top:1px solid #596057!important;
  border-bottom:1px solid #596057!important;
  text-align:left!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:4px!important;
  min-width:0!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:20px!important;
  line-height:1.15!important;
  font-weight:400!important;
  color:#f5f2e9!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-meta{
  font-size:10px!important;
  line-height:1.3!important;
  letter-spacing:.04em!important;
  color:#c9c7bf!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-action{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  font-size:11px!important;
  color:#f5f2e9!important;
  white-space:nowrap!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-icon{
  display:inline-block!important;
}
@media(max-width:767px){
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-common-offer .chamiga-bulk-time{
    min-height:54px!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-bulk-time-label{font-size:12px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle{
    margin-top:16px!important;
    padding:16px 0!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{font-size:18px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-action{font-size:10px!important;}
}

/* v0.9.17 — clearer Single Session hierarchy. Display-only; no Enrollment logic changes. */
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-width:0!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-label{
  display:block!important;
  margin-bottom:5px!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  color:#9fa39b!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{
  display:block!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:500!important;
  color:#f5f2e9!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-meta{
  display:block!important;
  margin-top:5px!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:#b8bbb3!important;
}
@media(max-width:767px){
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{font-size:15px!important;}
}

/* v0.9.18 — Single Session English heading matches package offer headings.
   Display-only. No Enrollment / WooCommerce / pricing / cart / checkout logic changes. */
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-label{
  margin-bottom:6px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:22px!important;
  line-height:1.15!important;
  font-weight:400!important;
  letter-spacing:0!important;
  text-transform:uppercase!important;
  color:#f5f2e9!important;
}
.cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{
  font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:400!important;
  color:#d6d2c9!important;
}
@media(max-width:767px){
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-label{font-size:22px!important;}
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-single-toggle-title{font-size:13px!important;}
}

/* v0.9.19 — Enrollment transition + unified mobile option frame.
   Display/information architecture only. No Enrollment selection, WooCommerce,
   AJAX, cart, pricing calculation, or checkout behavior is changed. */

/* Program Information now hands the user directly into the enrollment decision. */
.cap-information{
  padding-bottom:0!important;
}
.cap-enrollment-bridge{
  margin-top:38px;
  padding:28px 0 30px;
  border-top:1px solid var(--cap-line);
  background:#ece9e0;
}
.cap-enrollment-bridge-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:20px;
}
.cap-enrollment-bridge-head .cap-label{
  margin-bottom:7px;
}
.cap-enrollment-bridge-head p{
  font-size:13px;
  line-height:1.55;
  color:#62645e;
}
.cap-enrollment-bridge-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding-bottom:4px;
  border-bottom:1px solid #4e514a;
  font-size:11px;
  letter-spacing:.035em;
  color:#2b2d28!important;
}
.cap-enrollment-preview-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid #cbc8be;
  border-bottom:1px solid #cbc8be;
}
.cap-enrollment-preview-card{
  min-width:0;
  min-height:98px;
  padding:17px 20px 16px;
  display:grid;
  align-content:center;
  grid-template-columns:1fr auto;
  gap:4px 18px;
}
.cap-enrollment-preview-card + .cap-enrollment-preview-card{
  border-left:1px solid #cbc8be;
}
.cap-enrollment-preview-card>span{
  grid-column:1 / -1;
  font-size:10px;
  line-height:1.25;
  letter-spacing:.12em;
  color:#3f423c;
}
.cap-enrollment-preview-card>strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:21px;
  line-height:1.2;
  font-weight:400;
  color:#22231f;
  white-space:nowrap;
}
.cap-enrollment-preview-card>small{
  align-self:end;
  justify-self:end;
  padding-bottom:2px;
  font-size:9px;
  line-height:1.2;
  letter-spacing:.06em;
  color:#777970;
  white-space:nowrap;
}

/* The wrapper has no desktop visual effect; desktop layout remains unchanged. */
.cap-enrollment-options-stack{
  display:contents;
}

@media(max-width:767px){
  .cap-information{
    padding-bottom:0!important;
  }
  .cap-enrollment-bridge{
    margin-top:28px;
    padding:22px 0 26px;
  }
  .cap-enrollment-bridge-head{
    display:block;
    margin-bottom:17px;
  }
  .cap-enrollment-bridge-head p{
    max-width:290px;
    font-size:12px;
    line-height:1.55;
  }
  .cap-enrollment-bridge-link{
    margin-top:13px;
    font-size:10px;
  }
  .cap-enrollment-preview-grid{
    display:block;
  }
  .cap-enrollment-preview-card{
    min-height:0;
    padding:13px 0;
    grid-template-columns:minmax(0,1fr) auto;
    gap:3px 12px;
  }
  .cap-enrollment-preview-card + .cap-enrollment-preview-card{
    border-left:0;
    border-top:1px solid #cbc8be;
  }
  .cap-enrollment-preview-card>span{
    grid-column:1;
    grid-row:1;
    align-self:end;
    font-size:10px;
  }
  .cap-enrollment-preview-card>strong{
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
    font-size:18px;
  }
  .cap-enrollment-preview-card>small{
    grid-column:1;
    grid-row:2;
    justify-self:start;
    padding:0;
    font-size:9px;
  }

  /* One clear frame for FULL SEASON → SUNDAY INTENSIVE → SINGLE SESSION. */
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack{
    display:block!important;
    margin-top:8px!important;
    border:1px solid #596057!important;
    background:transparent!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack > .chamiga-season-offer{
    margin:0!important;
    padding:22px 18px 18px!important;
    border:0!important;
    border-bottom:1px solid #596057!important;
    background:transparent!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack > .cap-single-toggle{
    margin:0!important;
    padding:19px 18px!important;
    border:0!important;
    background:transparent!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"].cap-single-expanded .cap-enrollment-options-stack > .cap-single-toggle{
    border-bottom:1px solid #596057!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack > .chamiga-single-section{
    padding:0 18px 18px!important;
    margin:0!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack > .chamiga-single-section .chamiga-individual-heading{
    display:none!important;
  }
  .cap-enrollment [id^="chamiga-enrollment-"] .cap-enrollment-options-stack .chamiga-show-full-sessions{
    margin-bottom:0!important;
  }
}


/* v0.9.20 — Mobile Method rows: separate step/meta, title and description.
   This prevents long step labels (e.g. "01. Reference") from colliding with
   AROMA CHEMICAL / BOTANICAL MATERIAL and keeps future copy flexible. */
@media(max-width:767px){
  .cap-method-card{
    grid-template-columns:minmax(0,1fr) 96px!important;
    grid-template-rows:auto auto auto!important;
    column-gap:16px!important;
    row-gap:4px!important;
    align-items:start!important;
    padding:16px 0!important;
  }
  .cap-method-card .cap-no{
    grid-column:1!important;
    grid-row:1!important;
    margin:0 0 3px!important;
    min-width:0!important;
    font-size:13px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  .cap-method-card h3{
    grid-column:1!important;
    grid-row:2!important;
    margin:0!important;
    min-width:0!important;
    font-size:15px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }
  .cap-method-card p{
    grid-column:1!important;
    grid-row:3!important;
    margin:4px 0 0!important;
    min-width:0!important;
    font-size:11px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
  }
  .cap-method-card .cap-method-image{
    grid-column:2!important;
    grid-row:1 / 4!important;
    align-self:center!important;
    width:100%!important;
    margin:0!important;
    aspect-ratio:1.35 / 1!important;
  }

  /* Match the 04 endpoint to the same vertical reading order. */
  .cap-method-endpoint{
    grid-template-columns:1fr!important;
    gap:3px!important;
    margin-top:14px!important;
    padding:14px 0!important;
  }
  .cap-method-endpoint .cap-no{
    grid-column:1!important;
    grid-row:auto!important;
    margin:0 0 3px!important;
    font-size:13px!important;
    line-height:1.35!important;
  }
  .cap-method-endpoint strong{
    grid-column:1!important;
    font-size:15px!important;
    line-height:1.2!important;
  }
  .cap-method-endpoint>span:last-child{
    grid-column:1!important;
    margin-top:3px!important;
    font-size:11px!important;
    line-height:1.55!important;
  }
}


/* v0.9.21 — Generic Optional Method Feature blocks.
   No wrapper is rendered when no feature has Title/Body, so these styles cannot
   create residual spacing on classes that do not use the feature. */
.cap-method-features{
  margin-top:38px;
  border-top:1px solid var(--cap-line);
}
.cap-method-feature{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,360px);
  gap:48px;
  align-items:start;
  padding:30px 0;
  border-bottom:1px solid var(--cap-line);
}
.cap-method-feature.no-image{grid-template-columns:minmax(0,760px);}
.cap-method-feature-copy{min-width:0;}
.cap-method-feature-label{
  margin-bottom:10px;
  color:var(--cap-sub);
  font-size:10px;
  font-weight:500;
  letter-spacing:.14em;
  line-height:1.45;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.cap-method-feature-title{
  max-width:720px;
  font-size:27px!important;
  line-height:1.25!important;
  letter-spacing:-.018em;
  overflow-wrap:anywhere;
}
.cap-method-feature-body{
  max-width:680px;
  margin-top:16px!important;
  color:var(--cap-sub);
  font-size:14px;
  line-height:1.8;
  overflow-wrap:anywhere;
}
.cap-method-feature-meta{
  max-width:680px;
  margin-top:18px;
  color:var(--cap-sub);
  font-size:10px;
  letter-spacing:.06em;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.cap-method-feature-media{
  margin:0;
  aspect-ratio:3/2;
  overflow:hidden;
}
.cap-method-feature-media img{display:block;width:100%;height:100%;object-fit:cover;}
.cap-method-features + .cap-method-grid{margin-top:34px!important;}

@media(max-width:767px){
  .cap-method-features{margin-top:26px;}
  .cap-method-feature,
  .cap-method-feature.no-image{
    grid-template-columns:1fr;
    gap:18px;
    padding:22px 0;
  }
  .cap-method-feature-label{margin-bottom:8px;font-size:9px;line-height:1.45;}
  .cap-method-feature-title{font-size:20px!important;line-height:1.28!important;}
  .cap-method-feature-body{margin-top:12px!important;font-size:12px;line-height:1.72;}
  .cap-method-feature-meta{margin-top:14px;font-size:9px;line-height:1.6;letter-spacing:.045em;}
  .cap-method-feature-media{width:100%;aspect-ratio:3/2;}
  .cap-method-features + .cap-method-grid{margin-top:22px!important;}
}

/* v0.9.24 — generic Optional Example Groups. Wrapper is emitted only when Items exist. */
.cap-family-example-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-top:14px;border-top:1px solid var(--cap-line);border-left:1px solid var(--cap-line)}
.cap-family-example-group{min-width:0;padding:12px 14px;border-right:1px solid var(--cap-line);border-bottom:1px solid var(--cap-line)}
.cap-family-example-label{margin-bottom:5px;color:var(--cap-sub);font-size:8px;font-weight:600;line-height:1.35;letter-spacing:.14em;text-transform:uppercase;overflow-wrap:anywhere}
.cap-family-example-items{color:var(--cap-text);font-size:11px;line-height:1.55;letter-spacing:.025em;overflow-wrap:anywhere}
@media(max-width:767px){
  .cap-family-example-groups{grid-template-columns:1fr;margin-top:12px}
  .cap-family-example-group{padding:10px 11px}
  .cap-family-example-label{margin-bottom:4px;font-size:7.5px}
  .cap-family-example-items{font-size:10px;line-height:1.55}
}


/* v0.9.25 — Family accordion open-state clarity.
   On desktop the closed row shows the short description as a preview.
   When the row opens, that preview is removed so the same description
   is not repeated above the expanded content. */
@media(min-width:768px){
  .cap-families .cap-accordion-item[open] > summary{
    grid-template-columns:58px minmax(0,1fr) 26px;
  }
  .cap-families .cap-accordion-item[open] > summary .cap-acc-preview{
    display:none;
  }
  .cap-families .cap-accordion-item[open] > summary .cap-acc-title{
    grid-column:2;
    min-width:0;
  }
  .cap-families .cap-accordion-item[open] > summary .cap-plus{
    grid-column:3;
  }
}

/* v0.9.26 — flexible curriculum mini-detail + single-session mode */
.cap-family-detail{margin-top:18px;padding-top:18px;border-top:1px solid var(--cap-line)}
.cap-family-detail.has-image{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}
.cap-family-detail-media{margin:0;min-width:0;aspect-ratio:4/3;overflow:hidden;background:var(--cap-alt)}
.cap-family-detail-media img{display:block;width:100%;height:100%;object-fit:cover}
.cap-family-detail-copy{min-width:0}
.cap-family-detail-title{font-family:Georgia,"Times New Roman",serif!important;font-size:20px!important;line-height:1.25!important;margin:0!important;color:var(--cap-text)}
.cap-family-detail-body{margin-top:12px;color:var(--cap-sub);font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.cap-family-detail.no-image .cap-family-detail-copy{max-width:760px}
.cap-accordion-item[data-cap-always-open="1"]>summary{cursor:default}
@media(min-width:768px){
  .cap-families .cap-accordion-item[data-cap-always-open="1"]>summary{grid-template-columns:58px minmax(0,1fr)}
  .cap-families .cap-accordion-item[data-cap-always-open="1"]>summary .cap-acc-title{grid-column:2}
}
@media(max-width:767px){
  .cap-family-detail{margin-top:14px;padding-top:14px}
  .cap-family-detail.has-image{grid-template-columns:1fr;gap:14px}
  .cap-family-detail-media{aspect-ratio:16/10}
  .cap-family-detail-title{font-size:17px!important;line-height:1.28!important}
  .cap-family-detail-body{margin-top:9px;font-size:11px;line-height:1.75}
  .cap-families .cap-accordion-item[data-cap-always-open="1"]>summary{grid-template-columns:36px 1fr;gap:8px}
}


/* v0.9.28 — Program Information: optional generic Program Type cards.
   Two distinct program modes are compared side by side on desktop and stacked
   on mobile. Legacy four-cell .cap-info-grid remains unused for rollback only. */
.cap-program-type-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  margin-top:30px;
  border-top:1px solid var(--cap-line);
  border-left:1px solid var(--cap-line);
}
.cap-program-type-grid.is-single{grid-template-columns:minmax(0,1fr)}
.cap-program-type-card{
  min-width:0;
  padding:24px 26px 26px;
  border-right:1px solid var(--cap-line);
  border-bottom:1px solid var(--cap-line);
  display:flex;
  flex-direction:column;
}
.cap-program-type-label{
  font-size:10px;
  line-height:1.3;
  letter-spacing:.14em;
  font-weight:600;
  text-transform:uppercase;
  color:var(--cap-text);
}
.cap-program-type-meta{
  margin-top:17px;
  font-size:11px;
  line-height:1.4;
  letter-spacing:.07em;
  color:var(--cap-sub);
  text-transform:uppercase;
}
.cap-program-type-duration{
  margin-top:6px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:27px;
  line-height:1.08;
  letter-spacing:-.015em;
  color:var(--cap-text);
}
.cap-program-type-description{
  margin-top:22px;
  max-width:470px;
  font-size:14px;
  line-height:1.72;
  color:var(--cap-sub);
}
.cap-program-type-note{
  margin-top:13px;
  padding-left:11px;
  border-left:1px solid #aaa89f;
  font-size:11px;
  line-height:1.6;
  color:#6f716b;
}
.cap-program-type-schedule{
  margin-top:auto;
  padding-top:15px;
  border-top:1px solid var(--cap-line);
}
.cap-program-type-schedule span{
  display:block;
  margin-bottom:5px;
  font-size:9px;
  line-height:1.3;
  letter-spacing:.14em;
  color:var(--cap-sub);
}
.cap-program-type-schedule strong{
  display:block;
  min-height:36px;
  font-size:12px;
  line-height:1.5;
  font-weight:500;
  color:var(--cap-text);
}
.cap-program-common-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:18px;
  border-top:1px solid var(--cap-line);
  border-left:1px solid var(--cap-line);
}
.cap-program-common-item{
  min-width:0;
  min-height:84px;
  padding:16px 20px;
  border-right:1px solid var(--cap-line);
  border-bottom:1px solid var(--cap-line);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
}
.cap-program-common-item span{
  font-size:9px;
  line-height:1.3;
  letter-spacing:.14em;
  color:var(--cap-sub);
  text-transform:uppercase;
}
.cap-program-common-item strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:14px;
  line-height:1.45;
  font-weight:400;
  color:var(--cap-text);
}
@media(max-width:767px){
  .cap-program-type-grid{display:block;margin-top:22px;border-left:0}
  .cap-program-type-card{padding:20px 0 22px;border-right:0;display:block}
  .cap-program-type-label{font-size:9px}
  .cap-program-type-meta{margin-top:13px;font-size:9px}
  .cap-program-type-duration{margin-top:5px;font-size:23px}
  .cap-program-type-description{margin-top:17px;font-size:12px;line-height:1.65}
  .cap-program-type-note{margin-top:11px;font-size:10px}
  .cap-program-type-schedule{margin-top:18px;padding-top:13px}
  .cap-program-type-schedule strong{min-height:0;font-size:11px}
  .cap-program-common-grid{display:block;margin-top:14px;border-left:0}
  .cap-program-common-item{min-height:0;padding:14px 0;border-right:0;gap:7px}
  .cap-program-common-item strong{font-size:12px}
}


/* v0.9.29 — Program cards: keep desktop schedules on the same baseline while
   allowing weekday schedules to break into clearly separated day rows. */
@media(min-width:768px){
  .cap-program-type-grid:not(.is-single) .cap-program-type-card{
    height:100%;
  }
}

.cap-option-select{display:inline-block;margin-top:16px;text-decoration:underline;text-underline-offset:5px;min-height:44px;padding:10px 0;}
.cap-single-toggle,.chamiga-offer-block,#aroma-pricing{scroll-margin-top:100px;}

/* Portable content blocks. Native section and Enrollment selectors remain intact. */
.cap-content-block-slot{padding:24px 0;background:var(--cap-bg);}
.cap-content-block .cap-method-features{margin-top:0;}
.cap-content-block + .cap-content-block{margin-top:24px;}
.cap-content-block .cap-method-feature.has-image{grid-template-columns:minmax(0,1fr) minmax(0,var(--cap-block-image-width,30%));}
.cap-content-block-image_left .cap-method-feature.has-image{grid-template-columns:minmax(0,var(--cap-block-image-width,30%)) minmax(0,1fr);}
.cap-content-block-image_left .cap-method-feature-media{grid-column:1;grid-row:1;}
.cap-content-block-image_left .cap-method-feature-copy{grid-column:2;grid-row:1;}
.cap-content-block-image_top .cap-method-feature.has-image{display:flex;flex-direction:column;}
.cap-content-block-image_top .cap-method-feature-copy{width:100%;}
.cap-content-block-image_top .cap-method-feature-media{order:-1;width:var(--cap-block-image-width,100%);}
.cap-content-block .cap-method-feature-media{aspect-ratio:var(--cap-block-ratio,3 / 2);max-height:var(--cap-block-image-height,none);overflow:hidden;}
.cap-content-block-original .cap-method-feature-media img{height:auto;max-height:var(--cap-block-image-height,none);object-fit:contain;}
@media(max-width:767px){
 .cap-content-block .cap-method-feature.has-image{display:flex;flex-direction:column;gap:24px;}
 .cap-content-block .cap-method-feature-media{width:100%;order:-1;}
 .cap-content-block .cap-method-feature-copy{width:100%;}
}
/* Recruitment Focus is opt-in. Keep unfiltered controls hidden until identity is verified. */
.cap-page .cap-enrollment[data-cap-focus-only="1"]:not([data-cap-focus-state="ready"]) [id^="chamiga-enrollment-"]{display:none!important}
.cap-page .cap-enrollment[data-cap-focus-only="1"] [id^="chamiga-enrollment-"] .cap-focus-hidden{display:none!important}
.cap-page .cap-enrollment[data-cap-focus-only="1"] [data-cap-focus-notice][hidden]{display:none!important}
.cap-page .cap-enrollment[data-cap-focus-only="1"] .cap-focus-enrollment .chamiga-single-section{display:block!important}
.cap-page .cap-enrollment[data-cap-focus-only="1"] .chamiga-time-option:disabled,
.cap-page .cap-enrollment[data-cap-focus-only="1"] .chamiga-time-option[aria-disabled="true"],
.cap-page .cap-enrollment[data-cap-focus-only="1"] .chamiga-time-option[data-available="0"]{display:none!important}

/* v0.9.36: compact editorial layout; enrollment styles and behavior unchanged. */
.cap-now-open .cap-method-feature{padding:20px 0;}
.cap-now-open .cap-method-feature-meta{margin-top:12px;}
.cap-now-open .cap-now-open-cta{margin-top:16px;font-size:13px;}
.cap-compact .cap-problem .cap-method-reference{margin-top:18px;font-size:12px;}
.cap-compact .cap-method-application{margin-top:22px;font-size:13px;line-height:1.75;max-width:760px;}
.cap-compact .cap-method-card + .cap-method-card{position:relative;}
@media(min-width:768px){
 .cap-compact .cap-method-card + .cap-method-card::before{content:"→";position:absolute;left:-21px;top:2px;color:var(--cap-sub);}
}
@media(max-width:767px){
 .cap-now-open .cap-method-feature{padding:8px 0;}
 .cap-now-open .cap-method-feature-copy{order:-2;}
 .cap-now-open .cap-method-feature-media{max-height:160px;aspect-ratio:16/9;}
 .cap-compact .cap-section{padding-top:36px;padding-bottom:36px;}
 .cap-compact .cap-problem-copy p{font-size:13px;line-height:1.75;}
 .cap-compact .cap-method-application{font-size:12px;margin-top:16px;}
 .cap-compact .cap-method-card + .cap-method-card::before{content:"↓";position:absolute;right:0;top:-15px;font-size:13px;color:var(--cap-sub);}
}
