/**
 * IFA Global Conference on Ageing — landing page
 *
 * The page is ordinary Divi so comms can edit every word, image and link; the
 * look comes from the classes below, typed into each section, row, column or
 * module's CSS Class field. Nothing in PHP emits them. Loaded only on pages
 * whose content carries the "ifa-conf-hero" class (inc/enqueue.php; a bare "ifa-conf" would also match links to "ifa-conference"), so it works on a draft
 * and, unchanged, on the live Global Conference page once the content moves.
 *
 * Sections (.et_pb_section), every one also carries .ifa-conf:
 *   .ifa-conf-hero      hero: mint ground, title, subtitle and save-the-date line, the signature wave along its foot
 *   .ifa-conf-about     white; one column of text across the row
 *   .ifa-conf-highlights four highlights: level circles, centred text (icon-left rows on phones)
 *   .ifa-conf-stay      white; holds the navy Stay Informed panel
 *   .ifa-conf-previous  mint; video beside the Cape Town figures, then a small footnote
 *   .ifa-conf-next      mint for its first 36px, then white; holds the two-part panel
 * Rows:     .ifa-conf-split (text/media pair), .ifa-conf-copy (single reading column),
 *           .ifa-conf-cards, .ifa-conf-panel (navy, wave), .ifa-conf-note (footnote row),
 *           .ifa-conf-actions (white two-part card)
 * Modules:  .ifa-conf-subtitle and .ifa-conf-date are <p>s under the hero's <h1>;
 *           .ifa-conf-video (video), .ifa-conf-card (blurbs), .ifa-conf-note (the footnote's
 *           text module), .ifa-conf-stats (a <div> in the Cape Town text)
 * Buttons:  .ifa-teal (existing), .ifa-conf-btn--outline, .ifa-conf-btn--light
 *
 * Specificity: production's Divi static CSS and buttons.css out-rank a bare
 * class, so layout rules that Divi also sets carry !important, and the button
 * rules repeat buttons.css's #page-container selector. See docs/ASSETS.md.
 */

.ifa-conf {
    --cf-navy: var(--ifa-dark-blue, #203248);
    --cf-teal: var(--ifa-dark-teal, #255F71);
    --cf-mint: var(--ifa-light-mint, #EDF7F4);
    --cf-green: var(--ifa-green, #49B461);
    --cf-accent: #05766F;  /* text and rules on mint/white: 5.1:1 on mint, 5.6:1 on white */
    --cf-line: #DDE3E8;
    --cf-sand: #EDDBC7;
    --cf-shadow: 0 1px 0 rgba(32, 50, 72, .06), 0 24px 48px -24px rgba(32, 50, 72, .25);
    --cf-serif: 'Libre Baskerville', Georgia, serif;
    --cf-sans: 'Open Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ---------- Rhythm and type ---------- */
.et_pb_section.ifa-conf {
    padding: 0 !important;
    font-family: var(--cf-sans);
    color: var(--cf-navy);
    background-color: #fff;
}

/* 1080px: the site header's row width, so the left edge lines up with the logo. */
.ifa-conf .et_pb_row {
    width: calc(100% - 64px) !important;
    max-width: 1080px !important;
    padding: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative;
    z-index: 1;
}

/* Divi's row clearfix would become a stray grid/flex item. */
.ifa-conf .et_pb_row::after { display: none !important; }

.ifa-conf .et_pb_column {
    margin: 0 !important;
    width: auto !important;
    min-width: 0;
}

.ifa-conf .et_pb_module { margin-bottom: 0 !important; }

.ifa-conf p,
.ifa-conf .et_pb_text p {
    font-family: var(--cf-sans);
    font-size: 20px;
    line-height: 1.6;
    color: var(--cf-navy);
    padding-bottom: 0;
    margin: 0;
    text-wrap: pretty;
}

.ifa-conf h1,
.ifa-conf h2,
.ifa-conf h3 {
    font-family: var(--cf-serif);
    color: var(--cf-navy);
    padding-bottom: 0;
    margin: 0;
}

.ifa-conf h1 {
    font-size: clamp(30px, 3.3vw, 46px);
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: -.01em;
    text-wrap: balance;
}

.ifa-conf h1 span { color: var(--cf-accent); }

/* The two line wrappers (below) stay navy; only the year inside them is teal. */
.ifa-conf h1 .ifa-conf-h1-a,
.ifa-conf h1 .ifa-conf-h1-b { color: var(--cf-navy); }

.ifa-conf h2 {
    font-size: 31px;
    font-weight: 400;
    line-height: 1.25;
}

.ifa-conf h2 + p,
.ifa-conf .et_pb_text h2 { margin-bottom: 24px; }

.ifa-conf .et_pb_text h2 + p { margin-top: 0; }

.ifa-conf h3 { font-size: 20px; font-weight: 700; line-height: 1.4; }

.ifa-conf a:not(.et_pb_button) { color: var(--cf-teal); }
.ifa-conf a:not(.et_pb_button):hover { color: var(--cf-navy); }

/* Two-up text/media rows: the pair wraps to a stack when it runs out of room. */
.ifa-conf .et_pb_row.ifa-conf-split {
    display: flex !important;
    flex-wrap: wrap;
    gap: 56px 72px;
    align-items: center;
}

.ifa-conf .ifa-conf-split > .et_pb_column { flex: 1 1 440px; }

/* ---------- Hero ---------- */
/* The wave is two layers painted on the section's floor, each a full-width
   2172:353 box. ::after is the wave file; ::before is a white shape clipped to the
   wave's top outline (traced from that file), so everything under the curve is
   white while the mint above it ends exactly at the curve. The mint-to-white
   change is therefore hidden behind the wave across the whole width, with no
   straight edge at either side at any viewport. padding-bottom's percentage is of
   the section's width: 12.85% is the box height (16.25%) less the 3.4% the wave's
   top may rise behind the text, and the min() term lifts it a further 60px at most
   on wide screens, so the text sets the section's height (about 470px at 1920). */
.et_pb_section.ifa-conf-hero {
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    padding-top: 60px !important;
    padding-bottom: calc(12.85% - min(60px, max(0px, 8vw - 60px))) !important;
    background-color: var(--cf-mint) !important;
}

.ifa-conf-hero::before,
.ifa-conf-hero::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px; /* a fractional section height left a 1px mint line under the white shape */
    width: 100%;
    aspect-ratio: 2172 / 353;
    pointer-events: none;
}

.ifa-conf-hero::before {
    background: #fff;
    clip-path: polygon(0.00% 48.16%, 1.66% 52.69%, 3.32% 56.94%, 4.97% 60.91%, 6.63% 64.59%, 8.29% 68.27%, 9.95% 71.39%, 11.61% 74.50%, 13.27% 77.34%, 14.92% 79.60%, 16.58% 81.87%, 18.24% 83.85%, 19.90% 85.55%, 21.56% 87.25%, 23.22% 88.39%, 24.87% 89.52%, 26.53% 90.65%, 28.19% 91.50%, 29.85% 92.07%, 31.51% 92.63%, 33.16% 93.20%, 34.82% 93.48%, 36.48% 93.77%, 38.14% 94.05%, 39.80% 94.33%, 41.46% 94.33%, 43.11% 94.33%, 44.77% 94.62%, 46.43% 94.33%, 48.09% 94.33%, 49.75% 94.05%, 51.40% 94.05%, 53.06% 93.77%, 54.72% 93.20%, 56.38% 92.63%, 58.04% 92.07%, 59.70% 91.22%, 61.35% 90.08%, 63.01% 88.95%, 64.67% 87.54%, 66.33% 86.12%, 67.99% 84.70%, 69.65% 83.00%, 71.30% 81.30%, 72.96% 79.60%, 74.62% 77.90%, 76.28% 76.20%, 77.94% 74.50%, 79.59% 73.09%, 81.25% 71.67%, 82.91% 70.25%, 84.57% 69.41%, 86.23% 68.56%, 87.89% 68.27%, 89.54% 67.99%, 91.20% 68.27%, 92.86% 68.84%, 94.52% 69.97%, 96.18% 71.39%, 97.84% 73.37%, 99.49% 75.64%, 100.00% 76.77%, 100% 100%, 0% 100%);
}

.ifa-conf-hero::after {
    background: url("../images/conference/wave.webp") 0 0 / 100% 100% no-repeat;
}

.ifa-conf .ifa-conf-hero .et_pb_text { margin: 0; }

/* A paragraph, not a heading: the <h1> above it is the page's only title. */
.ifa-conf .et_pb_text p.ifa-conf-subtitle {
    max-width: 760px;
    margin: 24px 0 0;
    font-size: 22px;
    line-height: 1.5;
    text-wrap: balance;
}

/* Save the date: a teal tag, then the dates and place. */
.ifa-conf .et_pb_text p.ifa-conf-date {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin: 26px 0 0;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
}

.ifa-conf .ifa-conf-date span { white-space: nowrap; }

.ifa-conf .ifa-conf-date .ifa-conf-tag {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    background: var(--cf-teal);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .14em;
    line-height: 1.5;
    text-transform: uppercase;
}

.ifa-conf .ifa-conf-date .ifa-conf-sep { color: var(--cf-teal); font-weight: 400; }

/* On wide screens the title breaks after "&"; narrower, it just wraps balanced. */
@media (min-width: 1100px) {
    .ifa-conf h1 .ifa-conf-h1-a,
    .ifa-conf h1 .ifa-conf-h1-b { display: block; }
}

/* ---------- About ---------- */
.et_pb_section.ifa-conf-about { padding-top: 88px !important; }

/* One column at reading width; the heading balances its lines. */
/* Divi floats columns, and the row's clearfix is switched off above, so a lone
   column would leave its row zero-high. Unfloat it. */
.ifa-conf .ifa-conf-copy > .et_pb_column,
.ifa-conf .ifa-conf-note > .et_pb_column { float: none !important; }
/* Full row width: comms found a narrower reading column left the section looking empty on the right. */
.ifa-conf .ifa-conf-copy > .et_pb_column { max-width: none; width: 100% !important; }
.ifa-conf-about h2 { text-wrap: balance; }
.ifa-conf-about .et_pb_text p + p { margin-top: 20px; }

/* ---------- Highlights ---------- */
.et_pb_section.ifa-conf-highlights { padding: 96px 0 !important; }

.ifa-conf .et_pb_row.ifa-conf-cards {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 40px;
    align-items: start;
}

.ifa-conf-card.et_pb_blurb,
.ifa-conf .ifa-conf-card,
.ifa-conf .ifa-conf-card .et_pb_blurb_content,
.ifa-conf .ifa-conf-card .et_pb_module_header { text-align: center !important; } /* the blurb's own orientation setting is Left */

.ifa-conf .ifa-conf-card .et_pb_blurb_content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 22px;
    max-width: none;
    margin: 0;
}

.ifa-conf .ifa-conf-card .et_pb_main_blurb_image {
    flex: 0 0 auto;
    width: 96px !important;
    max-width: 96px !important;
    margin: 0 !important;
}

.ifa-conf .ifa-conf-card .et_pb_main_blurb_image .et_pb_image_wrap,
.ifa-conf .ifa-conf-card .et_pb_main_blurb_image img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 !important;
}

.ifa-conf .ifa-conf-card .et_pb_blurb_container { width: 100%; max-width: 250px; text-align: center !important; }

.ifa-conf .ifa-conf-card .et_pb_module_header {
    font-family: var(--cf-serif);
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--cf-navy);
    padding-bottom: 0;
    margin: 0;
}

/* ---------- Stay Informed panel ---------- */
.et_pb_section.ifa-conf-stay { padding: 0 0 112px !important; }

.ifa-conf .et_pb_row.ifa-conf-panel {
    display: flex !important;
    flex-wrap: wrap;
    gap: 28px 64px;
    align-items: flex-start;
    box-sizing: border-box;
    max-width: 1200px !important;
    padding: 44px 60px 72px !important;
    overflow: hidden;
    border-radius: 24px;
    background: var(--cf-navy);
}

/* The same wave, cropped by the panel's rounded foot. */
.ifa-conf-panel::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -130px;
    width: 1700px;
    aspect-ratio: 2172 / 353;
    pointer-events: none;
    background: url("../images/conference/wave.webp") 0 0 / 100% 100% no-repeat;
}

.ifa-conf .ifa-conf-panel > .et_pb_column { position: relative; z-index: 1; }
.ifa-conf .ifa-conf-panel > .et_pb_column:first-child { flex: 999 1 480px; max-width: 760px; }
.ifa-conf .ifa-conf-panel > .et_pb_column:last-child { flex: 0 0 auto; }

.ifa-conf .ifa-conf-panel h2 { color: #fff; margin: 0 0 16px; }
.ifa-conf .ifa-conf-panel p { color: var(--cf-mint); }

/* ---------- Previous conference ---------- */
.et_pb_section.ifa-conf-previous {
    padding: 112px 0 88px !important;
    background-color: var(--cf-mint) !important;
}

.ifa-conf-previous .ifa-conf-split > .et_pb_column:first-child { flex: 11 1 460px; }
.ifa-conf-previous .ifa-conf-split > .et_pb_column:last-child { flex: 9 1 380px; }

.ifa-conf-video {
    overflow: hidden;
    border-radius: 20px;
    box-shadow: var(--cf-shadow);
    background: #fff;
}

/* Footnote under the video and figures. The next section's panel starts at that
   section's top edge, so the section's 88px bottom padding keeps this clear of it. */
.ifa-conf .et_pb_row.ifa-conf-note { margin-top: 56px !important; }
.ifa-conf .ifa-conf-note > .et_pb_column { max-width: none; width: 100% !important; }
.ifa-conf .et_pb_text.ifa-conf-note p { font-size: 16px; line-height: 1.6; margin-bottom: 6px; }
.ifa-conf .et_pb_text.ifa-conf-note p:last-child { margin-bottom: 0; }
.ifa-conf .et_pb_text.ifa-conf-note p.ifa-conf-note__label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--cf-teal);
}

/* Figures are text in the page (screen readers get "500+ leaders"); only the
   look is display type. */
.ifa-conf .et_pb_text .ifa-conf-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 48px;
    margin: 0 0 24px;
}

.ifa-conf .ifa-conf-stats p {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    white-space: nowrap;
    line-height: 1.2;
}

.ifa-conf .ifa-conf-stats .ifa-conf-stats__n {
    font-family: var(--cf-serif);
    font-size: 44px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--cf-accent);
}

.ifa-conf .ifa-conf-stats .ifa-conf-stats__l {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--cf-navy);
}

/* ---------- Join / Areas of work ---------- */
/* Mint for the first 36px of the section, white after: the white panel starts
   at the section's top edge, so it overhangs the mint above by 36px. */
.et_pb_section.ifa-conf-next {
    padding: 0 0 112px !important;
    background: linear-gradient(to bottom, var(--cf-mint) 0, var(--cf-mint) 36px, #fff 36px) !important;
}

.ifa-conf .et_pb_row.ifa-conf-actions {
    display: flex !important;
    flex-wrap: wrap;
    overflow: hidden;
    border: 1px solid var(--cf-line);
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--cf-shadow);
}

.ifa-conf .ifa-conf-actions > .et_pb_column {
    flex: 1 1 380px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    box-sizing: border-box;
    padding: 56px !important;
}

.ifa-conf .ifa-conf-actions > .et_pb_column + .et_pb_column { border-left: 1px solid var(--cf-line); }

.ifa-conf .ifa-conf-actions .et_pb_blurb { text-align: left; }

.ifa-conf .ifa-conf-actions .et_pb_blurb_content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    max-width: none;
    margin: 0;
}

.ifa-conf .ifa-conf-actions .et_pb_main_blurb_image {
    width: 64px !important;
    max-width: 64px !important;
    margin: 0 !important;
}

.ifa-conf .ifa-conf-actions .et_pb_main_blurb_image .et_pb_image_wrap,
.ifa-conf .ifa-conf-actions .et_pb_main_blurb_image img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 !important;
}

.ifa-conf .ifa-conf-actions .et_pb_blurb_container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    text-align: left;
}

.ifa-conf .ifa-conf-actions .et_pb_module_header {
    font-family: var(--cf-serif);
    font-size: 31px;
    font-weight: 400;
    line-height: 1.25;
    color: var(--cf-navy);
    padding-bottom: 0;
    margin: 0;
}

.ifa-conf .ifa-conf-actions .et_pb_blurb_description {
    padding: 0;
    font-family: var(--cf-sans);
    font-size: 20px;
    line-height: 1.6;
    color: var(--cf-navy);
}

/* The blurb takes the spare height, which pins both buttons to the same baseline. */
.ifa-conf .ifa-conf-actions .et_pb_blurb { flex: 1 1 auto; }
.ifa-conf .ifa-conf-actions .et_pb_button_module_wrapper { margin-top: auto; }

/* ---------- Buttons ----------
   buttons.css paints every Divi button navy with
   `#page-container .et_pb_button_module_wrapper a.et_pb_button:not(.light-btn)`.
   These repeat its shape plus .ifa-conf and the variant, one class more
   specific, and the same for :hover. Action colours follow the site rule:
   dark teal at rest, navy on hover. */
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-teal,
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--outline,
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--light {
    display: inline-flex !important;
    align-items: center;
    min-height: 48px;
    padding: 12px 26px !important;
    box-sizing: border-box;
    border-radius: 8px !important;
    font-family: var(--cf-sans);
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    transition: background .25s, border-color .25s, color .25s;
}

/* Divi's hover arrow would add width and shift the label. */
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-teal::after,
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--outline::after,
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--light::after { display: none !important; }

#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-teal {
    background: var(--cf-teal) !important;
    border: 1px solid var(--cf-teal) !important;
    color: #fff !important;
}

#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-teal:hover {
    background: var(--cf-navy) !important;
    border-color: var(--cf-navy) !important;
    color: #fff !important;
}

#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--outline {
    background: #fff !important;
    border: 1.5px solid var(--cf-navy) !important;
    color: var(--cf-navy) !important;
}

#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--outline:hover {
    background: var(--cf-navy) !important;
    border-color: var(--cf-navy) !important;
    color: #fff !important;
}

/* White on the navy panel; sand on hover, since navy-on-navy would vanish. */
#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--light {
    background: #fff !important;
    border: 1px solid #fff !important;
    color: var(--cf-navy) !important;
}

#page-container .ifa-conf .et_pb_button_module_wrapper a.et_pb_button.ifa-conf-btn--light:hover {
    background: var(--cf-sand) !important;
    border-color: var(--cf-sand) !important;
    color: var(--cf-navy) !important;
}

/* ---------- Tablet ---------- */
@media (max-width: 980px) {
    .ifa-conf .et_pb_row.ifa-conf-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ifa-conf .ifa-conf-actions > .et_pb_column + .et_pb_column {
        border-left: 0;
        border-top: 1px solid var(--cf-line);
    }
}

/* ---------- Phone ---------- */
@media (max-width: 767px) {
    .ifa-conf .et_pb_row { width: calc(100% - 40px) !important; }

    .ifa-conf p,
    .ifa-conf .et_pb_text p { font-size: 18px; }

    .ifa-conf h2 { font-size: 26px; }
    .ifa-conf .et_pb_text h2 { margin-bottom: 16px; }
    .ifa-conf h1 { font-size: 26px; line-height: 1.25; }

    /* The wave gets its own 104px band under the date line: a
       640px-wide box pinned right, so the left of the wave is cropped. */
    .et_pb_section.ifa-conf-hero { padding-top: 40px !important; padding-bottom: 108px !important; }
    .ifa-conf-hero::before,
    .ifa-conf-hero::after { left: auto; right: 0; width: 640px; }
    .ifa-conf .et_pb_text p.ifa-conf-subtitle { margin-top: 18px; font-size: 18px; }
    /* "Adelaide, Australia" wraps to its own line, so the separator goes. */
    .ifa-conf .et_pb_text p.ifa-conf-date { margin-top: 20px; gap: 8px 12px; font-size: 18px; }
    .ifa-conf .ifa-conf-date .ifa-conf-tag { padding: 3px 10px; font-size: 12px; }
    .ifa-conf .ifa-conf-date .ifa-conf-sep { display: none; }

    .ifa-conf .et_pb_row.ifa-conf-split { gap: 32px; }

    .ifa-conf .ifa-conf-about .et_pb_text p + p { margin-top: 16px; }
    .et_pb_section.ifa-conf-about { padding-top: 56px !important; }

    .et_pb_section.ifa-conf-highlights { padding: 64px 0 !important; }
    .ifa-conf .et_pb_row.ifa-conf-cards { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .ifa-conf .ifa-conf-card,
    .ifa-conf .ifa-conf-card .et_pb_blurb_content,
    .ifa-conf .ifa-conf-card .et_pb_module_header,
    .ifa-conf .ifa-conf-card .et_pb_blurb_container { text-align: left !important; }
    .ifa-conf .ifa-conf-card .et_pb_blurb_content { flex-direction: row; align-items: center; gap: 18px; }
    .ifa-conf .ifa-conf-card .et_pb_main_blurb_image { width: 68px !important; max-width: 68px !important; flex: 0 0 68px; }
    .ifa-conf .ifa-conf-card .et_pb_blurb_container { width: auto; max-width: none; }
    .ifa-conf .ifa-conf-card .et_pb_module_header { font-size: 18px; }

    .et_pb_section.ifa-conf-stay { padding-bottom: 56px !important; }
    .ifa-conf .et_pb_row.ifa-conf-panel {
        width: calc(100% - 24px) !important;
        gap: 24px;
        padding: 32px 24px 84px !important;
        border-radius: 20px;
    }
    .ifa-conf-panel::before { width: 900px; bottom: -60px; }
    .ifa-conf .ifa-conf-panel h2 { margin-bottom: 12px; }

    .et_pb_section.ifa-conf-previous { padding: 56px 0 !important; }
    .ifa-conf .et_pb_row.ifa-conf-note { margin-top: 32px !important; }
    .ifa-conf .et_pb_text.ifa-conf-note p { font-size: 15px; }
    .ifa-conf .et_pb_text.ifa-conf-note p.ifa-conf-note__label { font-size: 13px; }
    .ifa-conf-video { border-radius: 16px; }
    .ifa-conf .et_pb_text .ifa-conf-stats { gap: 12px 36px; margin-bottom: 20px; }
    .ifa-conf .ifa-conf-stats .ifa-conf-stats__n { font-size: 36px; }
    .ifa-conf .ifa-conf-stats .ifa-conf-stats__l { font-size: 14px; }

    .et_pb_section.ifa-conf-next { padding-bottom: 72px !important; }
    .ifa-conf .et_pb_row.ifa-conf-actions { border-radius: 20px; }
    .ifa-conf .ifa-conf-actions > .et_pb_column { gap: 16px; padding: 32px 24px !important; }
    .ifa-conf .ifa-conf-actions .et_pb_blurb_content,
    .ifa-conf .ifa-conf-actions .et_pb_blurb_container { gap: 16px; }
    .ifa-conf .ifa-conf-actions .et_pb_main_blurb_image { width: 56px !important; max-width: 56px !important; }
    .ifa-conf .ifa-conf-actions .et_pb_module_header { font-size: 26px; }
    .ifa-conf .ifa-conf-actions .et_pb_blurb_description { font-size: 18px; }
    .ifa-conf .ifa-conf-actions .et_pb_button_module_wrapper { align-self: stretch; }

    #page-container .ifa-conf .ifa-conf-actions .et_pb_button_module_wrapper a.et_pb_button {
        display: flex !important;
        justify-content: center;
        padding: 12px 22px !important;
    }
}
