/* ProOpera /individual — approved visual direction 4. Header, FAQ and form are excluded. */
.ic-hero,.ic-section {
  --ic-gold:#e3b864;
  --ic-ivory:#fbf6ec;
  --ic-text:#e6dcd9;
  --ic-line:rgba(216,173,99,.30);
  color:var(--ic-ivory);
  background:#220d11!important;
}
.ic-hero>.absolute {display:none!important}
.site-main>section.ic-hero .ic-layout.container-x.page-top-safe {
  display:grid!important;
  grid-template-columns:155px minmax(0,1fr) 360px!important;
  grid-template-areas:'toc intro facts';
  align-items:start!important;
  gap:32px!important;
  width:calc(100% - 112px);
  max-width:1328px;
  margin-inline:auto;
  padding:calc(var(--site-header-height,64px) + 42px) 0 44px!important;
}
.ic-intro {grid-area:intro;min-width:0}
.ic-intro .ic-breadcrumb {
  margin:0 0 25px!important;
  font-size:10px;
  line-height:16px;
  letter-spacing:1.7px;
  color:#c8b8b1;
}
.ic-intro .hero-eyebrow {
  display:block!important;
  border:0!important;
  padding:0!important;
  margin:0 0 18px!important;
  color:var(--ic-gold);
  font-size:10px;
  line-height:17px;
  letter-spacing:2.1px;
}
.ic-intro .hero-eyebrow:before {display:none!important}
.ic-hero .ic-intro h1 {
  margin:0;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(40px,4.3vw,62px)!important;
  font-weight:400;
  line-height:1.07!important;
  letter-spacing:-1.1px;
  color:var(--ic-ivory);
  max-width:100%;
  text-wrap:pretty;
}
.ic-intro .ic-lead {
  display:block!important;
  margin:30px 0 0!important;
  max-width:none;
}
.ic-intro .ic-lead p,.ic-intro .ic-secondary-copy,.ic-intro .ic-byline {
  color:var(--ic-text);
  font-size:18px!important;
  font-weight:400;
  line-height:1.58!important;
  max-width:none;
}
.ic-intro .ic-actions {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 24px;
  margin:26px 0 0!important;
}
.ic-intro .ic-actions a {
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.ic-intro .ic-actions a:first-child {
  min-height:60px!important;
  min-width:360px;
  padding:16px 28px!important;
  border-radius:6px!important;
  color:#180e07!important;
}
.ic-intro .ic-actions a:nth-child(2) {
  min-height:44px;
  padding:8px 0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:var(--ic-gold)!important;
  text-decoration:underline;
  text-underline-offset:4px;
}
.ic-title-first-line {display:block}
.ic-title-place {white-space:nowrap}
.ic-intro .ic-secondary-copy {margin:30px 0 0!important}
.ic-intro .ic-byline {margin:28px 0 0!important}
.ic-facts {
  grid-area:facts;
  display:block!important;
  margin-top:70px;
  padding:8px 20px;
  border:1px solid var(--ic-line);
  border-radius:6px;
  background:rgba(33,14,16,.52);
}
.ic-fact {display:grid;grid-template-columns:30px minmax(0,1fr);gap:18px;align-items:center;min-height:80px;padding:18px 0}
.ic-fact+.ic-fact {border-top:1px solid var(--ic-line)}
.ic-fact .ic-fact-copy.panel {
  background:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  padding:0!important;
  color:var(--ic-text);
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.5!important;
}
.ic-icon {display:block;width:24px;height:24px;object-fit:contain;flex-shrink:0}
.ic-facts .ic-icon {width:30px;height:30px}
.ic-toc {grid-area:toc;display:grid;align-content:start;gap:0;margin:8px 0 0;padding:0 0 0 18px;border-left:1px solid var(--ic-gold)}
.ic-toc a {display:flex;align-items:center;min-height:44px;color:var(--ic-gold);font-size:13px;line-height:1.4;text-decoration:none}
.ic-toc a:hover {color:var(--ic-ivory);text-decoration:underline;text-underline-offset:4px}
.ic-toc a:focus-visible,.ic-summary:focus-visible,.ic-actions a:focus-visible {outline:2px solid var(--ic-gold);outline-offset:5px}
.ic-section {padding:0!important;scroll-margin-top:calc(var(--site-header-height,64px) + 25px)}
.ic-section .ic-section-inner {
  width:calc(100% - 112px);
  max-width:1328px;
  margin-inline:auto;
  padding:34px 0 40px 187px!important;
  border-top:1px solid var(--ic-line);
}
.ic-section .ic-section-inner>.mb-12 {margin:0 0 24px!important;max-width:none}
.ic-section .ic-section-inner>.mb-12>p:first-child {margin:0 0 10px!important;color:var(--ic-gold);font-size:10px;line-height:16px;letter-spacing:2.1px}
.ic-section .ic-section-inner .ic-section-title {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(28px,3.4vw,48px)!important;
  line-height:1.13!important;
  font-weight:400;
  color:var(--ic-ivory);
  letter-spacing:-.55px;
}
.ic-section .ic-section-inner>.mb-12>p:last-child:not(:first-child) {margin:16px 0 0!important;font-size:18px!important;line-height:1.6!important;color:var(--ic-text);max-width:1020px}
.ic-section .ic-accordion {
  display:block!important;
  overflow:hidden;
  border:1px solid var(--ic-line);
  border-radius:7px;
  background:rgba(33,14,16,.52);
}
.ic-disclosure+.ic-disclosure {border-top:1px solid var(--ic-line)}
.ic-summary {
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 22px;
  align-items:center;
  gap:24px;
  min-height:55px;
  padding:14px 26px;
  list-style:none;
  cursor:pointer;
}
.ic-summary::-webkit-details-marker {display:none}
.ic-summary::marker {content:''}
.ic-summary-plain {grid-template-columns:minmax(0,1fr) 22px}
.ic-summary h3 {margin:0!important;font-family:Georgia,'Times New Roman',serif;font-size:22px!important;font-weight:400;line-height:1.3!important;color:var(--ic-gold)}
.ic-summary:hover {background:rgba(216,173,99,.045)}
.ic-toggle {width:21px;height:21px;justify-self:end}
.ic-toggle-minus,.ic-disclosure[open]>.ic-summary>.ic-toggle-plus {display:none}
.ic-disclosure[open]>.ic-summary>.ic-toggle-minus {display:block}
.ic-answer {padding:0 72px 21px 78px}
.ic-summary-plain+.ic-answer {padding-left:26px}
.ic-answer p {margin:0!important;font-size:17px!important;line-height:1.55!important;color:var(--ic-text);max-width:900px}
.ic-answer p+p {margin-top:12px!important}
.ic-process .ic-section-inner>.grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 30px!important}
.ic-section article.panel {background:none!important;box-shadow:none!important;border-radius:0!important;border:0!important;border-top:1px solid var(--ic-line)!important;padding:24px 0!important}
.ic-section article.panel h3 {font-family:Georgia,'Times New Roman',serif;font-size:23px!important;line-height:1.25!important;color:var(--ic-gold)}
.ic-section article.panel p {font-size:16px!important;line-height:1.6!important;color:var(--ic-text)}
#individual-pricing {scroll-margin-top:calc(var(--site-header-height,64px) + 20px)}
@media (min-width:1600px) {
  .site-main>section.ic-hero .ic-layout.container-x.page-top-safe {grid-template-columns:155px minmax(0,1fr) 360px!important}
}
@media (max-width:1199px) and (min-width:768px) {
  .site-main>section.ic-hero .ic-layout.container-x.page-top-safe {width:calc(100% - 64px);grid-template-columns:110px minmax(0,1fr)!important;grid-template-areas:'toc intro' 'toc facts';gap:24px!important}
  .ic-facts {margin-top:8px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .ic-fact:nth-child(2) {border-top:0}
  .ic-section .ic-section-inner {width:calc(100% - 64px);padding-left:134px!important}
  .ic-hero .ic-intro h1 {font-size:46px!important}
}
@media (max-width:767px) {
  .site-main>section.ic-hero .ic-layout.container-x.page-top-safe {
    display:flex!important;
    flex-direction:column;
    width:100%;
    max-width:none;
    gap:0!important;
    padding:calc(var(--site-header-height,69.6px) + 8px) 20px 30px!important;
  }
  .ic-intro {width:100%}
  .ic-intro .ic-breadcrumb {font-size:9px;line-height:15px;letter-spacing:1.6px;margin-bottom:10px!important}
  .ic-intro .hero-eyebrow {font-size:10px;line-height:1.65;letter-spacing:1.75px;margin-bottom:14px!important;max-width:350px;border-left:1px solid var(--ic-line)!important;padding-left:5px!important}
  .ic-eyebrow-first,.ic-button-last-word {display:block}
  .ic-hero .ic-intro h1 {font-size:36px!important;line-height:1.08!important;letter-spacing:-.5px;text-wrap:initial}
  .ic-intro .ic-lead {margin-top:8px!important}
  .ic-intro .ic-lead p,.ic-intro .ic-secondary-copy,.ic-intro .ic-byline {font-size:15.5px!important;line-height:1.45!important}
  .ic-intro .ic-actions {flex-direction:column;gap:5px;margin-top:21px!important;align-items:stretch}
  .ic-intro .ic-actions a:first-child {min-width:0;min-height:56px!important;padding:8px 27px!important;font-size:15px!important;line-height:1.3!important}
  .ic-intro .ic-actions a:nth-child(2) {align-self:center;min-height:44px;font-size:14px!important}
  .ic-intro .ic-secondary-copy {margin-top:12px!important}
  .ic-intro .ic-byline {margin-top:12px!important}
  .ic-facts {width:100%;margin-top:16px;padding:0 14px;border-radius:6px}
  .ic-facts .ic-icon {width:26px;height:26px}
  .ic-fact {grid-template-columns:26px minmax(0,1fr);gap:18px;min-height:44px;padding:8px 0}
  .ic-fact .ic-fact-copy.panel {font-size:13.5px!important;line-height:1.45!important}
  .ic-toc {width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:26px 0 0;padding:0;border-left:0}
  .ic-toc a {min-height:44px;justify-content:center;border-left:1px solid var(--ic-line);font-size:12px}
  .ic-toc a:nth-child(3n+1) {border-left-color:var(--ic-gold)}
  .ic-section .ic-section-inner {width:auto;max-width:none;margin:0 20px;padding:28px 0 32px!important}
  .ic-section .ic-section-inner .ic-section-title {font-size:30px!important;line-height:1.12!important;letter-spacing:-.3px}
  .ic-section .ic-section-inner>.mb-12 {margin-bottom:20px!important}
  .ic-section .ic-section-inner>.mb-12>p:last-child:not(:first-child) {font-size:15.5px!important;line-height:1.55!important;margin-top:15px!important}
  .ic-summary {grid-template-columns:24px minmax(0,1fr) 20px;gap:13px;min-height:60px;padding:14px}
  .ic-summary-plain {grid-template-columns:minmax(0,1fr) 20px}
  .ic-summary h3 {font-size:18px!important;line-height:1.35!important}
  .ic-summary .ic-icon {width:22px;height:22px}
  .ic-answer {padding:0 18px 20px 51px}
  .ic-summary-plain+.ic-answer {padding-left:14px}
  .ic-answer p {font-size:15px!important;line-height:1.55!important}
  .ic-process .ic-section-inner>.grid {grid-template-columns:minmax(0,1fr)!important}
}
@media (max-width:374px) {
  .ic-hero .ic-intro h1 {font-size:33px!important}
  .site-main>section.ic-hero .ic-layout.container-x.page-top-safe {padding-inline:18px!important}
  .ic-section .ic-section-inner {margin-inline:18px}
}
@media (prefers-reduced-motion:reduce) {
  .ic-summary,.ic-toc a,.ic-actions a {transition:none!important}
}

.ic-actions .ic-action-arrow {display:inline-block;width:18px;height:18px;margin-left:12px;vertical-align:middle}

/* Selected static programme: all eight descriptions remain visible. */
.ic-topics-program .ic-topics-list {display:block;margin:34px 0 0}
.ic-topics-program .ic-section-inner .ic-section-title {font-size:56px!important}
.ic-topics-program .ic-section-inner>.mb-12>p:last-child:not(:first-child) {font-size:20px!important;line-height:1.5!important}
.ic-topics-program .ic-topic-row {
  display:grid;
  grid-template-columns:minmax(300px,34%) 100px minmax(0,1fr);
  align-items:center;
  gap:22px;
  margin:0;
  padding:22px 0;
  min-height:104px;
  border-bottom:1px solid rgba(216,173,99,.55);
  background:none;
}
.ic-topics-program .ic-topic-row:last-child {border-bottom:0}
.ic-topics-program .ic-topic-row .ic-topic-title {
  margin:0;
  color:#e3b864;
  font-family:Georgia,'Times New Roman',serif;
  font-size:34px;
  font-weight:400;
  line-height:1.18;
  letter-spacing:-.25px;
}
.ic-topics-program .ic-topic-row .ic-topic-copy {
  margin:0;
  color:#e6dcd9;
  font-size:20px;
  line-height:1.5;
}
.ic-topics-program .ic-topic-rule {width:100%;margin:0;align-self:center;position:relative}
/* Reuse the existing FAQ separator's gold point. */
.ic-topics-program .ic-topic-rule:after {content:"";background:#f3cb7e;border-radius:999px;width:5px;height:5px;position:absolute;top:-2px;left:50%;box-shadow:0 0 0 4px #d8ad6314,0 0 9px #d8ad634d}
@media (min-width:1200px) {.ic-topics-program .ic-topic-row:nth-child(6) .ic-topic-title {font-size:30px}}
@media (min-width:768px) and (max-width:1199px) {
  .ic-topics-program .ic-section-inner .ic-section-title {font-size:42px!important}
  .ic-topics-program .ic-section-inner>.mb-12>p:last-child:not(:first-child) {font-size:17px!important}
  .ic-topics-program .ic-topic-row {grid-template-columns:minmax(180px,31%) 50px minmax(0,1fr);gap:18px}
  .ic-topics-program .ic-topic-row .ic-topic-title {font-size:24px}
  .ic-topics-program .ic-topic-row .ic-topic-copy {font-size:16px}
}
@media (max-width:767px) {
  .ic-topics-program .ic-section-inner .ic-section-title {font-size:30px!important}
  .ic-topics-program .ic-section-inner>.mb-12>p:last-child:not(:first-child) {font-size:16px!important;line-height:1.55!important}
  .ic-topics-program .ic-topics-list {margin-top:28px}
  .ic-topics-program .ic-topic-row {grid-template-columns:minmax(0,1fr);gap:0;padding:23px 0 25px;min-height:0}
  .ic-topics-program .ic-topic-row:first-child {border-top:1px solid rgba(216,173,99,.4)}
  .ic-topics-program .ic-topic-row .ic-topic-title {font-size:25px;line-height:1.2;letter-spacing:-.2px}
  .ic-topics-program .ic-topic-rule {margin:17px 0 18px}
  .ic-topics-program .ic-topic-row .ic-topic-copy {font-size:16px;line-height:1.55}
}
