/* ---------- Fonts (self-hosted: Cormorant Garamond + Inter) ---------- */
/* Self-hosted Google Fonts: Inter (variable) + Cormorant Garamond */
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-3.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/inter-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../fonts/inter-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/*!
 * Optimasi Widgets – front-end styles. By Cybernamix.
 * Type scale & spacing follow the Optimasi consistency system:
 * H1 48/42/36 · H2 30/27/25 · H3 22/21/20 · body Inter 16/1.75 · labels 13 uppercase.
 */
:root {
  --ox-green: #105142;
  --ox-green-dark: #0b5342;
  --ox-ink: #25292a;
  --ox-heading-ink: #10141a;
  --ox-muted: #5b625e;
  --ox-line: #dedfdd;
  --ox-cream: #f8f6f4;
  --ox-tint: #f0f6f3;
  --ox-header-bg: #f7f8f9;
  --ox-serif: "Cormorant Garamond", Georgia, serif;
  --ox-sans: "Inter", Arial, sans-serif;
  --ox-h1: 48px;
  --ox-h2: 30px;
  --ox-h3: 22px;
  --ox-body: 16px;
  --ox-label: 13px;
  --ox-numeral: 36px;
  --ox-quote: 34px;
  --ox-page-top: 64px;
  --ox-page-bottom: 96px;
  --ox-section: 40px;
  --ox-header-h: 80px;
}
@media (max-width: 1024px) {
  :root {
    --ox-h1: 42px; --ox-h2: 27px; --ox-h3: 21px; --ox-numeral: 32px; --ox-quote: 30px;
    --ox-page-top: 48px; --ox-page-bottom: 72px; --ox-section: 32px;
  }
}
@media (max-width: 767px) {
  :root {
    --ox-h1: 36px; --ox-h2: 25px; --ox-h3: 20px; --ox-numeral: 30px; --ox-quote: 26px;
    --ox-page-top: 36px; --ox-page-bottom: 56px; --ox-section: 28px;
  }
}
/* ---------- Page canvas ---------- */
body.oxw-page,
body.oxw-has-header { background: #fff; color: var(--ox-ink); }
body.oxw-has-header { margin: 0; }
.oxw-page .page-header,
.oxw-page .entry-title { display: none; }
.ox-page .elementor-widget:not(:last-child) { margin-block-end: 0; }
.ox-page .elementor-widget-container { margin: 0; }
.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px;
  overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}
.ox-green, .ox-page .green { color: var(--ox-green); }
.ox-flash { animation: oxFlash 1s ease-out; }
@keyframes oxFlash { from { background: #edf5f2; } to { background: transparent; } }
@media (max-width: 767px) { br.br-d { display: none; } }
/* ---------- Layout containers (set via Advanced → CSS classes) ----------
   The outer "ox-page" container carries the page gutters and top/bottom spacing as native
   Elementor padding (responsive). Inner containers centre the content at 1110px. */
.elementor .e-con.ox-page { --gap: 0px; --row-gap: 0px; --column-gap: 0px; gap: 0; }
.elementor .e-con.ox-inner,
.elementor .e-con.ox-pub-shell {
  width: 100%;
  max-width: 1110px;
  margin-left: auto;
  margin-right: auto;
  gap: 0;
  --gap: 0px; --row-gap: 0px; --column-gap: 0px;
}
.elementor .e-con.ox-inner { display: flex; flex-direction: column; }
.elementor .e-con.ox-inner > .elementor-widget { width: 100%; }
.elementor .e-con.ox-col { max-width: 100%; }
/* Publication: sidebar + article */
.elementor .e-con.ox-pub-shell {
  display: grid !important;
  grid-template-columns: 202px minmax(0, 1fr);
  column-gap: 58px;
  align-items: stretch;
}
.elementor .e-con.ox-pub-side {
  --padding-top: 4px; --padding-right: 24px; --padding-bottom: 30px; --padding-left: 0px; --gap: 0px;
  padding: 4px 24px 30px 0;
  border-right: 1px solid var(--ox-line);
  display: block !important;
  width: auto !important;
  min-width: 0;
}
.elementor .e-con.ox-pub-side > .elementor-element { position: relative; }
.elementor .e-con.ox-pub-main.ox-narrow { max-width: 770px; }
.elementor .e-con.ox-pub-main { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; --gap: 0px; padding: 0; display: block !important; min-width: 0; width: auto !important; }
@media (max-width: 850px) {
  .elementor .e-con.ox-pub-shell { display: block !important; }
  .elementor .e-con.ox-pub-side { border-right: 0; border-bottom: 1px solid #ddd; padding: 0 0 18px; margin: 0 0 26px; }
  .elementor .e-con.ox-pub-main.ox-narrow { max-width: none; }
}
/* =========================== Header =========================== */
.ox-header {
  background: var(--ox-header-bg);
  font-family: var(--ox-sans);
  font-size: 18px;
  line-height: 1.5;
  color: #222;
  width: 100%;
  z-index: 9999;
  box-sizing: border-box;
}
.ox-header.is-sticky { position: fixed; top: 0; left: 0; right: 0; }
.admin-bar .ox-header.is-sticky { top: 32px; }
@media screen and (max-width: 782px) { .admin-bar .ox-header.is-sticky { top: 46px; } }
.ox-header-spacer { height: var(--ox-header-h); }
.ox-header *, .ox-header *::before, .ox-header *::after { box-sizing: border-box; }
.ox-header__inner {
  max-width: 1200px;
  margin: 0 auto;
  min-height: var(--ox-header-h);
  padding: 10px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.ox-header__logo { display: inline-block; line-height: 0; }
.ox-header__logo img { width: 360px; max-width: 100%; height: auto; display: inline-block; vertical-align: middle; }
.ox-header__toggle {
  display: none;
  background: transparent;
  border: 0;
  color: #222;
  font-size: 20px;
  padding: 0 20px;
  line-height: 60px;
  cursor: pointer;
  margin-left: auto;
}
.ox-header__toggle:hover, .ox-header__toggle:focus { background: transparent; color: #222; }
.ox-header__toggle svg { display: block; width: 1em; height: 1em; }
.ox-header__close { display: none; }
.ox-header.is-menu-open .ox-header__bars { display: none; }
.ox-header.is-menu-open .ox-header__close { display: block; }
.ox-nav__list { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; }
.ox-nav__list > li { position: relative; }
.ox-nav__list > li > a {
  display: flex;
  align-items: center;
  padding: 0 20px;
  line-height: 60px;
  font-size: 15px;
  color: #222;
  text-decoration: none;
  transition: color .2s;
}
.ox-nav__list > li:hover > a,
.ox-nav__list > li.is-focus > a,
.ox-nav__list > li > a:focus,
.ox-nav__list > li.is-current > a { color: var(--ox-green); }
.ox-nav__arrow { display: inline-flex; padding-left: 10px; font-size: 15px; line-height: 1; }
.ox-nav__arrow svg { width: 1em; height: 1em; transition: transform .2s; }
.ox-nav__sub {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 100%;
  right: 0;
  width: 250px;
  background: #f0f0f0;
  box-shadow: 1px 1px 0 rgba(0, 0, 0, .1);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 80ms linear;
  z-index: 99999;
}
.ox-nav__list > li:hover > .ox-nav__sub,
.ox-nav__list > li.is-focus > .ox-nav__sub { opacity: 1; visibility: visible; pointer-events: auto; }
.ox-nav__sub a { display: block; padding: 10px 20px; font-size: 14px; line-height: 17px; color: #222; text-decoration: none; }
.ox-nav__sub a:hover, .ox-nav__sub li.is-current > a { color: var(--ox-green); }
@media (max-width: 768px) {
  .ox-header__inner { padding: 10px 30px; }
  .ox-header__logo img { width: 200px; }
  .ox-header__toggle { display: block; }
  .ox-nav { flex-basis: 100%; display: none; }
  .ox-nav.is-open { display: block; }
  .ox-nav__list { flex-direction: column; align-items: stretch; }
  .ox-nav__list > li > a { justify-content: space-between; padding: 0 20px; line-height: 60px; }
  .ox-nav__arrow { padding: 0 0 0 20px; }
  .ox-nav__sub {
    position: static; width: auto; box-shadow: none; opacity: 1; visibility: visible; pointer-events: auto;
    display: none;
  }
  .ox-nav__list > li:hover > .ox-nav__sub { display: none; }
  .ox-nav__list > li.is-sub-open > .ox-nav__sub { display: block; }
  .ox-nav__list > li.is-sub-open .ox-nav__arrow svg { transform: rotate(180deg); }
}
/* =========================== Footer =========================== */
.ox-footer {
  background: var(--ox-green-dark);
  color: #fff;
  font-family: var(--ox-sans);
  font-size: 14px;
  line-height: 1.7;
  padding: 40px 0;
}
.ox-footer *, .ox-footer *::before, .ox-footer *::after { box-sizing: border-box; }
.ox-footer__inner { max-width: 1200px; margin: 0 auto; padding: 0 64px; }
.ox-footer__inner > * { max-width: 1022px; }
.ox-footer__inner > .ox-footer__quote { max-width: 800px; margin-left: max(0px, calc((min(100%, 1022px) - 800px) / 2)); margin-right: auto; }
.ox-footer__quote {
  max-width: 800px;
  margin: 0 auto 55px;
  color: #fff;
  font-family: var(--ox-serif);
  font-size: 29px;
  font-weight: 500;
  line-height: 1.12;
  text-align: center;
}
.ox-footer__cols {
  display: grid;
  grid-template-columns: 1.2fr 1fr .65fr;
  gap: 55px;
  padding: 25px 0;
  border-top: 1px solid rgb(255 255 255 / 25%);
  border-bottom: 1px solid rgb(255 255 255 / 25%);
}
.ox-footer__logo { display: inline-block; width: 180px; max-width: 100%; margin-bottom: 6px; line-height: 0; }
.ox-footer__logo img { display: block; width: 100%; height: auto; }
.ox-footer__logo.is-white img { filter: brightness(0) invert(1); }
.ox-footer__about p { margin: 12px 0 18px; color: #fff; font-size: 14px; line-height: 1.7; }
.ox-footer__col h3 {
  margin: 0 0 18px;
  color: #fff;
  font-family: var(--ox-serif);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ox-footer__col a { display: block; margin: 0 0 10px; color: #fff; font-size: 13px; line-height: 1.7; text-decoration: none; }
.ox-footer__col a:hover, .ox-footer__col a:focus { color: #fff; text-decoration: underline; }
.ox-footer__copy { padding-top: 18px; color: #fff; font-size: 12px; }
@media (max-width: 768px) {
  .ox-footer { padding: 30px 0; }
  .ox-footer__inner { padding: 0 54px; }
  .ox-footer__quote { margin-bottom: 35px; font-size: 25px; }
  .ox-footer__cols { grid-template-columns: 1fr; gap: 22px; }
}
@media (min-width: 560px) and (max-width: 768px) {
  .ox-footer__cols { grid-template-columns: 1fr 1fr; gap: 26px 40px; }
  .ox-footer__about { grid-column: 1 / -1; }
}
/* Back to top */
.oxw-back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 20px;
  border-radius: 3px;
  background: rgba(0, 0, 0, .4);
  color: #fff;
  z-index: 10;
  opacity: .1;
  transform: translateY(1000px);
  transition: opacity 300ms ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
}
.oxw-back-to-top.is-visible { opacity: 1; transform: translateY(0); }
.oxw-back-to-top:hover, .oxw-back-to-top:focus { background: rgba(0, 0, 0, .6); color: #fff; }
.ox-footer__about p:last-child, .ox-footer__col a:last-child { margin-bottom: 0; }
/* =========================== Shared typography inside widgets =========================== */
.ox-title, .ox-sec, .ox-blk, .ox-side, .ox-related, .ox-snav, .ox-form-wrap { font-family: var(--ox-sans); color: var(--ox-ink); }
.ox-title *, .ox-sec *, .ox-blk *, .ox-side *, .ox-related *, .ox-form-wrap * { box-sizing: border-box; }
/* Block spacing (Spacing above) */
.ox-blk--content { margin-top: 24px; }
.ox-blk--gap { margin-top: var(--ox-section); }
.ox-blk--line { margin-top: var(--ox-section); padding-top: var(--ox-section); border-top: 1px solid var(--ox-line); }
.ox-blk--none { margin-top: 0; }
.elementor-widget:first-child > .elementor-widget-container > .ox-blk--content { margin-top: 0; }
/* =========================== Page Title =========================== */
.ox-title { margin: 0; }
.ox-title__eyebrow {
  font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px;
}
.ox-title__h {
  font-family: var(--ox-serif); font-size: var(--ox-h1); font-weight: 600; line-height: 1.08;
  letter-spacing: -.005em; color: var(--ox-green); margin: 0 0 20px;
}
.ox-title__kicker {
  font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px;
}
.ox-title__rule { display: block; width: 82px; height: 2px; background: var(--ox-green); margin: -4px 0 18px; }
.ox-title__meta { font-size: var(--ox-body); line-height: 1.75; margin: 0 0 var(--ox-section); color: var(--ox-ink); }
.ox-title__lead { font-size: var(--ox-body); line-height: 1.75; }
.ox-title__lead p { margin: 0 0 16px; }
.ox-title__lead > :last-child { margin-bottom: 0; }
.ox-title__lead strong { color: var(--ox-green); font-weight: 600; }
.ox-title:not(:has(.ox-title__meta, .ox-title__lead, .ox-title__kicker)) .ox-title__h { margin-bottom: 20px; }
/* =========================== Content Section =========================== */
.ox-sec { margin: 0; scroll-margin-top: calc(var(--ox-header-h) + 40px); }
.ox-sec--line { margin-top: var(--ox-section); padding-top: var(--ox-section); border-top: 1px solid var(--ox-line); }
.ox-sec--gap { margin-top: var(--ox-section); }
.ox-sec--double { position: relative; margin-top: calc(var(--ox-section) + 25px); padding-top: var(--ox-section); border-top: 1px solid var(--ox-line); }
.ox-sec--double::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 1px; background: var(--ox-line); }
.ox-sec--none { margin-top: 0; }
.ox-sec__label {
  font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px;
}
.ox-sec__num { font-family: var(--ox-serif); font-size: var(--ox-numeral); font-weight: 600; line-height: 1.05; color: var(--ox-green); margin: 2px 0 0; }
.ox-sec__rule { display: block; width: 45px; height: 2px; background: var(--ox-green); margin: 15px 0 22px; }
.ox-sec__h {
  font-family: var(--ox-serif); font-size: var(--ox-h2); font-weight: 600; line-height: 1.2;
  letter-spacing: 0; color: var(--ox-green); margin: 0 0 16px;
}
.ox-sec__body, .ox-tsq__body, .ox-duo__body { font-size: var(--ox-body); line-height: 1.75; color: var(--ox-ink); }
.ox-sec__body > *, .ox-tsq__body > *, .ox-duo__body > * { margin: 0 0 16px; }
.ox-sec__body > :last-child, .ox-tsq__body > :last-child, .ox-duo__body > :last-child { margin-bottom: 0; }
.ox-sec__body p, .ox-tsq__body p, .ox-duo__body p { font-size: var(--ox-body); line-height: 1.75; }
.ox-sec__body strong, .ox-tsq__body strong, .ox-duo__body strong { font-weight: 700; color: inherit; }
.ox-sec__body strong.green, .ox-tsq__body strong.green, .ox-duo__body strong.green { color: var(--ox-green); }
.ox-sec__body a, .ox-tsq__body a, .ox-duo__body a { color: var(--ox-green); font-weight: 600; text-decoration: none; }
.ox-sec__body a:hover, .ox-tsq__body a:hover, .ox-duo__body a:hover { text-decoration: underline; }
.ox-sec__body ul, .ox-sec__body ol, .ox-tsq__body ul, .ox-duo__body ul { padding-left: 24px; margin-bottom: 22.5px; }
.ox-sec__body li, .ox-tsq__body li, .ox-duo__body li { margin: 0 0 5px; font-size: var(--ox-body); line-height: 1.75; }
.ox-sec__body h3, .ox-duo__body h3 { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 600; line-height: 1.25; color: var(--ox-green); margin: 28px 0 10px; }
.ox-sec__body h4, .ox-tsq__body h4, .ox-duo__body h4 {
  font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 24px 0 10px;
}
.ox-sec__body h5, .ox-tsq__body h5, .ox-duo__body h5 { font-family: var(--ox-sans); font-size: var(--ox-body); font-weight: 600; line-height: 1.6; color: var(--ox-green); margin: 0 0 16px; }
.ox-sec__body blockquote, .ox-tsq__body blockquote {
  font-family: var(--ox-serif); font-size: var(--ox-quote); font-weight: 500; line-height: 1.15;
  color: #105343; margin: 15px 0; padding: 0; border: 0;
}
.ox-sec__body blockquote.ox-callout {
  font-family: var(--ox-sans); font-size: 18px; font-weight: 400; font-style: italic; line-height: 1.75; color: var(--ox-ink);
  margin: 0 0 27px; padding: 20px; border-left: 5px solid rgba(0, 0, 0, .05);
}
.ox-sec__body blockquote p { font-size: inherit; line-height: inherit; margin: 0; }
.ox-sec__body hr { border: 0; border-top: 1px solid var(--ox-line); margin: 24px 0; }
.ox-sec__body > h4:first-child, .ox-sec__body > h3:first-child { margin-top: 0; }
/* =========================== Statement =========================== */
.ox-statement { margin: 0; padding: 0; border: 0; quotes: none; }
.ox-statement::before, .ox-statement::after { content: none; }
.ox-statement__text { font-family: var(--ox-serif); font-size: var(--ox-quote); font-weight: 500; line-height: 1.15; color: var(--ox-green); margin: 0; }
.ox-statement__cite { margin: 12px 0 0; font-size: var(--ox-body); line-height: 1.75; color: var(--ox-ink); }
.ox-statement--dark .ox-statement__text { color: var(--ox-heading-ink); }
.ox-statement--big .ox-statement__text { font-size: calc(var(--ox-quote) * 1.35); line-height: 1.08; color: var(--ox-heading-ink); }
.ox-statement--big .ox-statement__text em, .ox-statement--big .ox-statement__text .ox-green { color: var(--ox-green); }
.ox-statement--ruled { border-top: 2px solid var(--ox-green); padding: 14px 6px 5px; display: inline-block; }
.ox-statement--ruled .ox-statement__text { font-size: var(--ox-h3); line-height: 1.3; font-style: italic; color: var(--ox-heading-ink); }
.ox-statement--callout { border-top: 1px solid var(--ox-green); border-bottom: 1px solid var(--ox-line); padding: 14px 0; }
.ox-statement--callout .ox-statement__text { font-size: var(--ox-h2); line-height: 1.2; }
.ox-statement--box { background: var(--ox-green); padding: 32px 25px; }
.ox-statement--box .ox-statement__text { color: #fff; }
.ox-statement--tint { background: var(--ox-tint); padding: 24px 28px; }
.ox-statement--tint .ox-statement__text { font-family: var(--ox-sans); font-size: var(--ox-body); font-weight: 400; line-height: 1.75; color: var(--ox-ink); }
.ox-statement--tint .ox-statement__text strong { color: var(--ox-green); }
/* =========================== Text + Side Quote =========================== */
.ox-tsq { display: grid; gap: 30px; align-items: center; grid-template-columns: minmax(0, 1fr) minmax(0, .45fr); }
.ox-tsq--3-2 { grid-template-columns: minmax(0, 1fr) 278px; gap: 26px; }
.ox-tsq--1-1 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ox-tsq--left { grid-template-columns: minmax(0, 42%) minmax(0, 1fr); align-items: start; }
.ox-tsq__quote { margin: 0; padding: 0; border: 0; quotes: none; }
.ox-tsq__quote p { margin: 0; font-family: var(--ox-serif); font-weight: 500; }
.ox-tsq__quote--ruled { padding: 12px 0 12px 15px; }
.ox-tsq__quote--ruled::before { content: ""; display: block; width: 40px; height: 2px; background: var(--ox-green); margin-bottom: 23px; }
.ox-tsq__quote--ruled p { font-size: 24px; line-height: 1.15; color: var(--ox-heading-ink); }
.ox-tsq__quote--large p { font-size: var(--ox-quote); line-height: 1.15; color: var(--ox-heading-ink); margin: 15px 0 18px; }
.ox-tsq__quote--box { background: var(--ox-green); padding: 32px 25px; border-left: 5px solid rgba(0, 0, 0, .05); display: flex; align-items: center; min-height: 205px; }
.ox-tsq__quote--box p { font-size: 27px; line-height: 1.13; color: #fff; }
.ox-tsq__body > .ox-sec__num { margin: 2px 0 0; }
.ox-tsq__body > .ox-sec__rule { margin: 15px 0 22px; }
.ox-tsq__body > .ox-sec__h { margin: 0 0 16px; }
.ox-tsq__aside { min-width: 0; }
.ox-tsq__aside > .ox-sec__label { margin: 0 0 10px; }
.ox-tsq__aside > .ox-sec__rule { margin: 15px 0 22px; }
@media (max-width: 850px) {
  .ox-tsq, .ox-tsq--3-2, .ox-tsq--1-1, .ox-tsq--left { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .ox-tsq__quote--ruled { padding-left: 0; }
  .ox-tsq__quote--box { min-height: 0; }
}
@media (max-width: 850px) { .ox-tsq__quote--box p { font-size: 25px; } }
/* =========================== Contrast / Two columns =========================== */
.ox-contrast { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.ox-contrast__col { padding: 4px 24px 4px 0; }
.ox-contrast__col + .ox-contrast__col { border-left: 1px solid var(--ox-line); padding: 4px 0 4px 24px; }
.ox-contrast__label { font-family: var(--ox-serif); font-size: 19px; font-weight: 600; color: var(--ox-green); margin: 0 0 8px; }
.ox-contrast__item { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 500; line-height: 1.3; color: var(--ox-heading-ink); margin: 0 0 14px; }
@media (max-width: 767px) {
  .ox-contrast { grid-template-columns: 1fr; }
  .ox-contrast__col + .ox-contrast__col { border-left: 0; border-top: 1px solid var(--ox-line); padding: 16px 0 0; margin-top: 8px; }
}
.ox-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ox-duo--divider .ox-duo__col + .ox-duo__col { border-left: 1px solid #c8ccca; padding-left: 18px; }
.ox-duo__col { min-width: 0; scroll-margin-top: calc(var(--ox-header-h) + 40px); }
.ox-duo__label {
  font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px;
}
.ox-duo__h { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 600; line-height: 1.25; color: var(--ox-green); margin: 0 0 10px; }
@media (max-width: 850px) {
  .ox-duo { grid-template-columns: minmax(0, 1fr); }
  .ox-duo--divider .ox-duo__col + .ox-duo__col { border-left: 0; padding-left: 0; border-top: 1px solid #c8ccca; padding-top: 18px; }
}
/* =========================== Icon grid / Flow =========================== */
.ox-icons { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 15px; }
.ox-icons__item { min-width: 0; }
.ox-icons__icon { display: block; font-size: 34px; line-height: 1; color: var(--ox-green); margin-bottom: 9px; }
.ox-icons__icon svg { width: 34px; height: 34px; display: block; fill: currentColor; }
.ox-icons__icon svg.ox-line-icon { fill: none; stroke: currentColor; stroke-width: 1.8; }
.ox-icons__text { font-size: 12px; line-height: 1.55; margin: 0; color: var(--ox-ink); }
@media (max-width: 1024px) { .ox-icons { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 480px) { .ox-icons { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ox-flow { display: flex; align-items: center; gap: 8px; flex-wrap: nowrap; }
.ox-flow__step {
  flex: 1 1 0; display: flex; align-items: center; justify-content: center; text-align: center;
  background: #e4ebea; color: var(--ox-ink); font-size: 12px; line-height: 1.4; padding: 12px 8px; min-height: 64px;
}
.ox-flow__step.is-hl { background: var(--ox-green); color: #fff; font-weight: 700; }
.ox-flow__arrow { flex: 0 0 auto; color: var(--ox-green); font-weight: 700; }
@media (max-width: 767px) {
  .ox-flow { flex-direction: column; align-items: stretch; }
  .ox-flow__arrow { transform: rotate(90deg); align-self: center; }
}
/* =========================== Info box =========================== */
.ox-info { background: var(--ox-tint); padding: 38px 40px 35px; }
.ox-info__title { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 600; line-height: 1.25; color: var(--ox-green); margin: 0 0 10px; }
.ox-info__item { font-size: var(--ox-body); line-height: 1.75; margin: 0 0 16px; color: #333; }
.ox-info__item:last-child { margin-bottom: 0; }
.ox-info__lead { color: var(--ox-green); font-weight: 700; }
.ox-info__sep { color: var(--ox-ink); }
@media (max-width: 767px) { .ox-info { padding: 26px 22px; } }
/* =========================== Definition rows =========================== */
.ox-rows--top { border-top: 1px solid #e2e2e2; }
.ox-rows__row { display: grid; grid-template-columns: var(--ox-rows-col, 36%) minmax(0, 1fr); align-items: start; padding: 19px 0; border-bottom: 1px solid #e2e2e2; }
.ox-rows__title { font-family: var(--ox-serif); font-size: 28px; font-weight: 600; line-height: 1.16; color: var(--ox-green); }
.ox-rows__text { margin: 0; padding: 3px 16px 0 0; font-family: var(--ox-sans); font-size: 16px; line-height: 1.6; color: #333; display: flex; gap: 13px; }
.ox-rows__marker { color: var(--ox-green); flex: none; }
@media (max-width: 767px) {
  .ox-rows__row { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 14px 0; }
  .ox-rows__title { font-size: 25px; }
}
/* =========================== Tag list =========================== */
.ox-tags { margin: 0; padding: 16px 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; font-family: var(--ox-sans); font-size: 15px; font-weight: 700; line-height: 1.5; color: var(--ox-green); text-align: left; }
.ox-tags__item { color: #1f2523; }
/* =========================== Audience links =========================== */
.ox-aud__row { display: grid; align-items: center; grid-template-columns: 20% 55% 25%; min-height: 210px; border-bottom: 1px solid #bcbcbc; padding: 26px 0; column-gap: 0; }
.ox-aud__row--two { grid-template-columns: 28% 20% 52%; }
.ox-aud__row--three { grid-template-columns: 59% 28% 13%; }
.ox-aud__icon { height: 153px; display: flex; justify-content: center; align-items: center; border-right: 1px solid #bcbcbc; padding: 10px 25px; }
.ox-aud__icon img { width: 145px; height: 135px; object-fit: contain; display: block; max-width: 100%; }
.ox-aud__main { padding: 0 48px; min-width: 0; }
.ox-aud__tag { font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45; letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px; }
.ox-aud__title { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 600; line-height: 1.25; letter-spacing: 0; color: var(--ox-green); margin: 28px 0 10px; }
.ox-aud__link { font-family: var(--ox-sans); font-size: 15px; font-weight: 400; line-height: 1.4; color: var(--ox-green); text-decoration: none; }
.ox-aud__link:hover, .ox-aud__link:focus { text-decoration: underline; color: var(--ox-green); }
.ox-aud__text { font-family: var(--ox-sans); font-size: var(--ox-body); line-height: 1.75; color: #333; margin: 0; padding: 0 18px 0 30px; }
.ox-aud__row--two .ox-aud__text { padding: 0 38px 0 0; }
.ox-aud__row--two .ox-aud__icon { border-left: 1px solid #bcbcbc; border-right: 0; }
.ox-aud__row--two .ox-aud__main { padding-left: 36px; padding-right: 8px; }
.ox-aud__row--three .ox-aud__main { padding: 0 45px 0 0; }
.ox-aud__row--three .ox-aud__text { padding-left: 58px; border-left: 1px solid #bcbcbc; min-height: 135px; display: flex; align-items: center; }
.ox-aud__row--three .ox-aud__icon { border: 0; padding: 5px; }
.ox-aud__row--three .ox-aud__icon img { width: 115px; height: 112px; }
@media (max-width: 800px) {
  .ox-aud__row, .ox-aud__row--two, .ox-aud__row--three { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 30px 0; }
  .ox-aud__icon, .ox-aud__row--two .ox-aud__icon, .ox-aud__row--three .ox-aud__icon { border: 0; height: auto; padding: 0; order: 0; }
  .ox-aud__icon img, .ox-aud__row--three .ox-aud__icon img { width: 95px; height: 95px; }
  .ox-aud__main, .ox-aud__row--two .ox-aud__main, .ox-aud__row--three .ox-aud__main { padding: 0; order: 1; }
  .ox-aud__text, .ox-aud__row--two .ox-aud__text, .ox-aud__row--three .ox-aud__text { border: 0; min-height: 0; padding: 0; order: 2; }
}
/* =========================== Collections =========================== */
.ox-coll { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; }
.ox-coll__card { min-height: 304px; padding: 24px 35px 15px; border-right: 1px solid #e7e3e1; }
.ox-coll__card:first-child { padding-left: 4px; }
.ox-coll__card:last-child { border-right: 0; padding-right: 0; }
.ox-coll__index, .ox-coll__kind { font-family: var(--ox-sans); font-size: var(--ox-label); font-weight: 700; line-height: 1.45; letter-spacing: .08em; text-transform: uppercase; color: var(--ox-green); margin: 0 0 10px; }
.ox-coll__title { font-family: var(--ox-serif); font-size: var(--ox-h3); font-weight: 600; line-height: 1.25; letter-spacing: 0; color: var(--ox-green); margin: 28px 0 10px; padding-bottom: 10px; min-height: 77px; }
.ox-coll__title a { color: inherit; text-decoration: none; }
.ox-coll__text { font-family: var(--ox-sans); font-size: 16px; line-height: 1.75; color: #333; max-width: 300px; min-height: 55px; margin: 0 0 16px; }
.ox-coll__link { display: inline-block; position: relative; margin-top: 25px; padding-bottom: 23px; font-family: var(--ox-sans); font-size: 15px; line-height: 1.7; color: var(--ox-green); text-decoration: none; }
.ox-coll__link::after { content: ""; position: absolute; left: 0; bottom: 0; width: 44px; height: 2px; background: var(--ox-green); transition: width .2s; }
.ox-coll__link:hover, .ox-coll__link:focus { color: var(--ox-green); }
.ox-coll__link:hover::after, .ox-coll__link:focus-visible::after { width: 100%; }
@media (max-width: 850px) {
  .ox-coll__card { padding: 24px 20px 20px; }
  .ox-coll__card:first-child { padding-left: 4px; }
}
@media (max-width: 650px) {
  .ox-coll { grid-template-columns: minmax(0, 1fr); }
  .ox-coll__card, .ox-coll__card:first-child, .ox-coll__card:last-child { padding: 24px 0 27px; border-right: 0; border-bottom: 1px solid #e7e3e1; min-height: 0; }
  .ox-coll__card:first-child { padding-top: 27px; }
  .ox-coll__title, .ox-coll__text { min-height: 0; }
}
/* =========================== Brand strip =========================== */
.ox-brand { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 76px; }
.ox-brand__logo { width: 280px; max-width: 100%; height: auto; display: block; }
.ox-brand__text { margin: 0; font-family: var(--ox-sans); font-size: 16px; line-height: 1.75; color: #333; }
@media (max-width: 850px) { .ox-brand { gap: 30px; } }
@media (max-width: 650px) { .ox-brand { grid-template-columns: minmax(0, 1fr); } }
/* =========================== Publication sidebar & related =========================== */
.ox-side__code { font-size: 14px; font-weight: 700; line-height: 1.5; letter-spacing: .2px; color: var(--ox-green); margin: 0 0 20px; }
.ox-toc { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.ox-toc a {
  display: block; padding: 6px 0 6px 11px; border-left: 3px solid transparent;
  font-size: 12px; line-height: 1.6; color: #252525; text-decoration: none;
}
.ox-toc a:hover { color: var(--ox-green); }
.ox-toc a.is-active { border-left-color: var(--ox-green); color: var(--ox-green); font-weight: 600; }
.ox-side__details { display: none; }
.ox-side__short { display: block; width: 28px; height: 2px; background: var(--ox-green); margin: 22px 0; }
.ox-side__print {
  display: inline-flex; align-items: center; gap: 10px; cursor: pointer;
  border: 1px solid #dce8e3; background: #f4f8f6; color: var(--ox-green);
  font-family: var(--ox-sans); font-size: 13px; font-weight: 600; line-height: 1.2;
  border-radius: 9px; padding: 10px 14px;
}
.ox-side__print:hover, .ox-side__print:focus { background: var(--ox-green); color: #fff; border-color: var(--ox-green); }
.ox-related { margin-top: 0; }
.ox-related__title { font-family: var(--ox-serif); font-size: 23px; font-weight: 600; line-height: 1.15; color: var(--ox-green); margin: 0 0 13px; }
.ox-related__list { list-style: none; margin: 0; padding: 0; }
.ox-related__list li { margin: 9px 0; font-size: 12px; line-height: 1.55; color: #2b2b2b; }
.ox-related__list a { color: var(--ox-green); text-decoration: none; }
.ox-related__list a:hover { text-decoration: underline; }
.ox-related__code { font-size: 11px; color: #697973; white-space: nowrap; }
.ox-pub-side .ox-related { margin-top: 0; }
@media (min-width: 851px) {
  .elementor .e-con.ox-side-sticky { position: sticky !important; top: calc(var(--ox-header-h) + 35px); z-index: 1; }
  .admin-bar .elementor .e-con.ox-side-sticky { top: calc(var(--ox-header-h) + 67px); }
}
@media (max-width: 850px) {
  .ox-side__nav, .ox-side__short { display: none; }
  .ox-side__details { display: block; border: 1px solid #d9e1df; padding: 10px 14px; margin: 0 0 18px; background: #fff; }
  .ox-side__details summary { font-family: var(--ox-sans); font-size: 14px; font-weight: 700; line-height: 1.75; color: var(--ox-green); cursor: pointer; list-style-position: inside; }
  .ox-side__details[open] summary { margin-bottom: 12px; }
  .ox-side__details .ox-toc { display: block; columns: 2; column-gap: 18px; }
  .ox-side__details .ox-toc li { break-inside: avoid; }
  .ox-side__details .ox-toc a.is-active { border-left-color: transparent; font-weight: 400; color: #252525; }
  .ox-pub-side .elementor-widget-oxw-related-reading:not(.ox-moved) { display: none; }
  .elementor-widget-oxw-related-reading.ox-moved .ox-related { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--ox-line); }
}
@media (max-width: 480px) { .ox-side__details .ox-toc { columns: 1; } }
/* =========================== Series navigation =========================== */
.ox-snav {
  width: 100%; max-width: 510px; margin: 80px auto 0; display: flex; justify-content: space-between; align-items: center; gap: 6px;
  padding: 9px 13px; border: 1px solid #e7e7e7; border-radius: 16px; background: #fff; box-shadow: 0 2px 15px rgba(0, 0, 0, .07);
  box-sizing: border-box;
}
.ox-snav__item {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 10px 12px; border-radius: 10px;
  font-family: var(--ox-sans); font-size: 13px; font-weight: 600; line-height: 1.25; color: var(--ox-green); text-decoration: none; white-space: nowrap;
  transition: background .2s, color .2s, transform .2s;
}
.ox-snav__item svg { width: 19px; height: 19px; flex: none; display: block; stroke: currentColor; }
a.ox-snav__item:not(.ox-snav__item--home):hover, a.ox-snav__item:not(.ox-snav__item--home):focus { background: #edf5f1; color: #0b4437; transform: translateY(-1px); }
.ox-snav__item--home { background: var(--ox-green); color: #fff; padding-inline: 20px; }
a.ox-snav__item--home:hover, a.ox-snav__item--home:focus { background: #0b3e33; color: #fff; }
.ox-snav__item.is-disabled { color: #b3b8b7; opacity: 1; cursor: not-allowed; }
@media (max-width: 480px) {
  .ox-snav { gap: 2px; padding: 7px; }
  .ox-snav__item { padding: 9px 7px; font-size: 11px; gap: 5px; }
  .ox-snav__item svg { width: 16px; height: 16px; }
  .ox-snav__item--home { padding-inline: 10px; }
}
/* =========================== Early Access form =========================== */
.ox-form-wrap { max-width: 100%; }
.ox-form { background: transparent; padding: 0 24px; margin: 0; }
.ox-form__grid { display: flex; flex-wrap: wrap; column-gap: 15px; }
.ox-form__section { flex: 0 0 100%; font-family: var(--ox-serif); font-size: var(--ox-h2); font-weight: 600; line-height: 1.2; letter-spacing: -.03em; color: var(--ox-green); margin: 10px 0 25px; }
.ox-form__group { margin: 0 0 24px; min-width: 0; }
.ox-form__group.is-full { flex: 0 0 100%; }
.ox-form__group.is-half { flex: 0 0 calc(50% - 7.5px); }
.ox-form__label { display: block; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 14.4px; font-weight: 600; line-height: 1.65; color: #475569; margin: 0 0 8px; }
.ox-form__req { color: #f56c6c; margin-left: 3px; }
.ox-form__control {
  display: block; width: 100%; min-height: 60px; padding: 18px 16px; font-family: -apple-system, system-ui, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 15.2px; line-height: 1; color: #334155; background: transparent; border: 1px solid #cbd5e1; border-radius: 8px; box-shadow: none; outline: none;
  transition: border-color .2s, box-shadow .2s; appearance: none;
}
.ox-form__control::placeholder { color: #868e96; opacity: 1; }
.ox-form__control:focus { border-color: var(--ox-green); box-shadow: 0 0 0 1px var(--ox-green); }
textarea.ox-form__control { min-height: 150px; resize: vertical; line-height: 1.5; }
.ox-form__group.has-error .ox-form__control, .ox-form__group.has-error .ox-select__button { border-color: #f56c6c; }
.ox-form__error { font-size: 13px; line-height: 1.4; color: #f56c6c; margin-top: 4px; }
.ox-form__error:empty { display: none; }
.ox-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ox-form__actions { margin-top: -4px; }
.ox-form__submit {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; min-width: 180px;
  font-family: var(--ox-sans); font-size: 15px; font-weight: 600; line-height: 1.5; color: #fff;
  background: #123d31; border: 0; border-radius: 4px; padding: 12px 24px; transition: background .2s, color .2s;
}
.ox-form__submit:hover, .ox-form__submit:focus { background: var(--ox-green); color: #fff; }
.ox-form.is-loading .ox-form__submit { opacity: .7; cursor: wait; }
.ox-form__message:empty { display: none; }
.ox-form__message { margin-top: 16px; padding: 14px 18px; border-radius: 5px; font-size: 16px; line-height: 1.5; }
.ox-form__message.is-success { border: 1px solid #a6d5c3; background: #edf8f3; color: #145c48; }
.ox-form__message.is-error { border: 1px solid #efb3ad; background: #fff1f0; color: #9f2018; }
.ox-form__note { display: flex; gap: 13px; align-items: flex-start; max-width: 465px; margin-top: 59px; }
.ox-form__note-icon { flex: none; display: block; width: 26px; height: 26px; border-radius: 50%; border: 2px solid var(--ox-green); color: var(--ox-green); font-family: var(--ox-sans); font-size: 16px; font-weight: 700; line-height: 22px; text-align: center; }
.ox-form__note p { margin: 0; font-family: var(--ox-sans); font-size: 16px; line-height: 1.75; color: #333; }
.ox-select { position: relative; }
.ox-select__native { position: absolute !important; opacity: 0; pointer-events: none; width: 1px !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; }
.ox-select__button {
  text-align: left; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; cursor: pointer; min-height: 62px; padding: 0 36px 0 10px;
  background: #fff; border: 1px solid #ddd; border-radius: 4px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 14px; color: #333;
}
.ox-select__button:hover, .ox-select__button:focus { background: #fff; color: #333; border-color: #ddd; }
.ox-select.is-open .ox-select__button, .ox-select__button:focus-visible { border-color: #b7b7b7; }
.ox-select__placeholder { color: #333; padding-left: 10px; font-size: 15px; }
.ox-select__chip { background: var(--ox-green); color: #fff; border-radius: 3px; padding: 2px 8px; font-size: 13px; }
.ox-select__caret { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); pointer-events: none; color: #333; line-height: 0; }
.ox-select__list {
  display: none; position: absolute; left: 0; right: 0; top: calc(100% + 2px); z-index: 50; list-style: none; margin: 0; padding: 4px 0;
  background: #fff; border: 1px solid #ddd; border-radius: 4px; box-shadow: 0 8px 24px rgba(0, 0, 0, .08); max-height: 260px; overflow: auto;
}
.ox-select.is-open .ox-select__list { display: block; }
.ox-select__list li { padding: 9px 14px; font-size: 15px; cursor: pointer; }
.ox-select__list li:hover, .ox-select__list li:focus { background: #f2f6f4; outline: none; }
.ox-select__list li[aria-selected="true"] { color: var(--ox-green); font-weight: 600; }
.ox-select__list li[aria-selected="true"]::after { content: " ✓"; }
@media (max-width: 760px) {
  .ox-form__control { min-height: 54px; }
  .ox-select__button { min-height: 56px; }
}
@media (max-width: 640px) { .ox-form__group.is-half { flex-basis: 100%; } }
/* =========================== Captcha note (local preview) =========================== */
.captcha-local-note { display: inline-block; max-width: 304px; padding: 12px 14px; border: 1px dashed #b9c7c2; border-radius: 4px; background: #f5f8f7; color: #4c5b57; font: 13px/1.5 var(--ox-sans); }
/* =========================== Print (publications) =========================== */
@media print {
  .oxw-global-header, .oxw-global-footer, .oxw-back-to-top, .ox-pub-side, .ox-snav { display: none !important; }
  .elementor .e-con.ox-pub-shell { display: block !important; padding: 0 !important; width: 100% !important; }
  .ox-sec { break-inside: auto; }
  .ox-sec__h { break-after: avoid; }
  .ox-tsq__quote--box, .ox-statement--box { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
/* =========================== Rich-text conventions =========================== */
.ox-sec__body p.ox-strong, .ox-tsq__body p.ox-strong, .ox-duo__body p.ox-strong { font-weight: 600; color: #11181f; }
.ox-sec__body p.ox-flow, .ox-tsq__body p.ox-flow, .ox-duo__body p.ox-flow { color: var(--ox-green); }
.ox-sec__body p.ox-meta-line { margin: 0; }
.ox-sec__body p.ox-callout-strong { font-size: 15px; font-weight: 700; line-height: 1.5; margin: 11px 0 0; }
.ox-sec__rule--top { margin: 0 0 22px; }
@media (max-width: 800px) { br.ox-br-desk { display: none; } }
.ox-sec.ox-sec--box { background: #e3ebea; padding: 17px 20px; border-top: 0; }
.ox-sec.ox-sec--box .ox-sec__body > :last-child { margin-bottom: 0; }
.ox-related__list a { display: block; margin-bottom: 9px; }
.ox-related__list li { margin: 9px 0; }
.ox-sec__num + .ox-sec__rule, .ox-tsq__body > .ox-sec__num + .ox-sec__rule { margin: 16px 0 20px; }
.ox-side .ox-side__print { display: inline-flex; align-items: center; gap: 10px; border: 1px solid #dce8e3; background: #f4f8f6; color: var(--ox-green); font-family: var(--ox-sans); font-size: 13px; font-weight: 600; line-height: 1.2; border-radius: 9px; padding: 10px 14px; }
.ox-side .ox-side__print:hover, .ox-side .ox-side__print:focus { background: var(--ox-green); color: #fff; border-color: var(--ox-green); }
.ox-form .ox-form__submit { font-size: 16px; font-weight: 500; line-height: 1.5; color: #fff; background: #173b2f; border: 1px solid #173b2f; border-radius: 0; padding: 10px 20px; }
.ox-form .ox-form__submit:hover, .ox-form .ox-form__submit:focus { background: var(--ox-green); border-color: var(--ox-green); color: #fff; }
.ox-duo--divider .ox-duo__col { padding-bottom: 7px; }
.ox-sec__body p.ox-meta-label { font-weight: 700; color: #202020; margin: 0 0 18px; }
.ox-brand--spread { display: flex; align-items: center; justify-content: space-between; gap: 45px; }
.ox-brand--spread .ox-brand__logo { flex: 0 1 280px; width: min(100%, 280px); }
.ox-brand--spread .ox-brand__text { max-width: 605px; }
@media (max-width: 760px) { .ox-brand--spread { flex-direction: column; align-items: flex-start; gap: 18px; } }
.ox-sec__body p.ox-perks { font-weight: 500; color: #115143; }
.ox-form__rule { border: 0; border-top: 1px solid #dad8d7; height: 0; margin: 12px 0 46px; background: none; }
/* ---------- Text + side note (FP-003 style) ---------- */
.ox-tsq--q-side { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 40px; }
.ox-tsq__short { display: block; width: 29px; height: 2px; background: var(--ox-green); margin: 0 0 25px; }
.ox-tsq__body > .ox-sec__label { margin: 0 0 10px; }
.ox-tsq__quote--side { border-left: 1px solid #c8ccca; padding-left: 18px; max-width: 270px; }
.ox-tsq__quote--side::before { content: ""; display: block; width: 29px; height: 2px; background: var(--ox-green); margin-bottom: 25px; }
.ox-tsq__quote--side p { font-size: 25px; line-height: 1.22; color: #10131a; }
@media (max-width: 850px) {
  .ox-tsq--q-side { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .ox-tsq__quote--side { border-left: 0; padding-left: 0; border-top: 1px solid #c8ccca; padding-top: 18px; max-width: none; }
  .ox-tsq__quote--side p { font-size: 24px; }
}
/* ---------- Statement display variants ---------- */
.ox-statement--display .ox-statement__text, .ox-statement--display-green .ox-statement__text { font-size: 37px; font-weight: 500; line-height: 1.15; color: #121a18; }
.ox-statement--display-green .ox-statement__text { color: var(--ox-green); }
.ox-statement--dramatic .ox-statement__text { font-size: 56px; font-weight: 500; line-height: 1.05; color: #111; }
.ox-statement--dramatic .ox-statement__text em { font-style: italic; color: var(--ox-green); }
.ox-statement--standout { border-top: 1px solid var(--ox-green); padding: 13px 0 4px; }
.ox-statement--standout .ox-statement__text { font-size: 33px; font-weight: 600; line-height: 1.12; color: var(--ox-green); }
@media (max-width: 1024px) { .ox-statement--dramatic .ox-statement__text { font-size: 43px; } }
.elementor .e-con.ox-pub-shell.ox-gap-50 { column-gap: 50px; }
.ox-duo__body p.ox-reflect { font-family: var(--ox-serif); font-size: 24px; font-weight: 500; line-height: 1.3; color: var(--ox-ink); }
.ox-tsq--wide { grid-template-columns: minmax(0, 1.58fr) minmax(0, 1fr); gap: 20px; align-items: stretch; }
.ox-tsq--wide .ox-tsq__quote--box { min-height: 0; padding: 0 10px 0 18px; border-left: 1px solid #c8ccca; }
.ox-tsq--wide .ox-tsq__quote--box p { font-size: 31px; line-height: 1.2; }
@media (max-width: 850px) {
  .ox-tsq--wide { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .ox-tsq--wide .ox-tsq__quote--box { min-height: 250px; border-left: 0; border-top: 1px solid #c8ccca; padding: 18px 10px 0 0; }
}
.ox-tsq--1-1 { gap: 20px; align-items: stretch; }
.ox-tsq--1-1 .ox-tsq__quote--large { display: flex; align-items: center; border-left: 1px solid #c8ccca; padding: 12px 20px 12px 18px; }
.ox-tsq--1-1 .ox-tsq__quote--large p { margin: 0; font-size: 38px; line-height: 1.02; color: #10131a; }
.ox-tsq__quote.is-center { justify-content: center; text-align: center; }
.ox-tsq__body hr { border: 0; border-top: 1px solid #bbb; height: 0; margin: 16px 0 8px; background: none; }
@media (max-width: 850px) {
  .ox-tsq--1-1 .ox-tsq__quote--large { border-left: 0; border-top: 1px solid #c8ccca; padding: 18px 0 12px; }
  .ox-tsq--1-1 .ox-tsq__quote--large p { font-size: 29px; }
}
/* ---------- "Classic" publication variant (FP-004 layout) ---------- */
.ox-variant-classic .ox-tsq--2-1:not(.ox-tsq--q-box):not(.ox-tsq--left) { grid-template-columns: minmax(0, 1fr) minmax(0, .94fr); gap: 28px; }
.ox-variant-classic .ox-tsq__quote--ruled { padding: 20px 0 20px 25px; }
.ox-variant-classic .ox-tsq__quote--ruled p { font-size: 25px; line-height: 1.07; }
.ox-variant-classic .ox-tsq--left { grid-template-columns: minmax(290px, 42%) minmax(0, 1fr); gap: 35px; }
.ox-variant-classic .ox-tsq__quote--large p { margin: 16px 0 20px; }
@media (max-width: 1024px) { .ox-variant-classic .ox-tsq__quote--large p { font-size: 30px; } }
@media (max-width: 767px) {
  .ox-variant-classic .ox-tsq--2-1:not(.ox-tsq--q-box):not(.ox-tsq--left), .ox-variant-classic .ox-tsq--left { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .ox-variant-classic .ox-tsq__quote--ruled { padding: 20px 0; }
}
@media (max-width: 767px) { .ox-variant-classic .ox-tsq__quote--large p { font-size: 26px; } }
/* MailerLite hidden submit target */
iframe.mailerlite-hidden-frame { position: absolute !important; left: 0 !important; top: 0 !important; width: 1px !important; height: 1px !important; border: 0 !important; opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }
/* Homepage subscribe section (matches approved landing page) */
.op-page h3.ox-subscribe-sub { margin-top: 40px; }
.op-page .email-subscribe-fields button { background-color: #125848; color: #fff; }
.op-page .email-subscribe-fields button:hover, .op-page .email-subscribe-fields button:focus-visible { background-color: #0e604f; }
.op-page .email-subscribe-fields button .button-text { color: #fff; }
/* FP-001/002/003 (original "op" publication template): code line in the sidebar */
.ox-op .ox-side__code { line-height: 1.75; }
@media (max-width: 768px) { br.ox-br-768 { display: none; } }
@media (max-width: 850px) {
  .elementor .e-con.ox-op > .e-con.ox-pub-side { border-bottom: 0; padding: 0; margin: 0; }
  .ox-op .ox-side__code { display: none; }
  .ox-op .ox-side__details { margin: 0 0 26px; }
  .ox-op .ox-side__details summary { font-size: 15px; line-height: 1.75; }
}
/* FP-004 ("classic") keeps the sidebar beside the text down to 768px */
@media (min-width: 768px) and (max-width: 850px) {
  .elementor .e-con.ox-pub-shell.ox-variant-classic { display: grid !important; }
  .ox-variant-classic .ox-tsq--left { grid-template-columns: minmax(0, 230fr) minmax(0, 215fr); gap: 23px; }
  .elementor .e-con.ox-variant-classic > .e-con.ox-pub-side { border-bottom: 0; padding: 4px 24px 30px 0; margin: 0; border-right: 1px solid var(--ox-line); }
}
@media (max-width: 767px) { .ox-tags { font-size: 14px; } }
.ox-variant-classic .ox-side__print { padding: 8px 12px; gap: 9px; font-size: 12px; }
.ox-variant-classic .ox-side__print span { font-size: 12px; }
/* ---------- Homepage widgets (original landing-page design) ---------- */
.op-page {--green: #075744;
      --ink: #171b19;
      --muted: #5b625e;
      --cream: #f8f6f4;
      color: var(--ink);
      font-family: "Inter", Arial, sans-serif;
      font-size: 15px;
      line-height: 1.6;}
.op-page * {box-sizing: border-box;}
.op-page h1,
.op-page h2,
.op-page h3,
.op-page p {margin: 0;}
.op-page h1,
.op-page h2,
.op-page h3 {font-family: "Cormorant Garamond", Georgia, serif;
      line-height: 1.15;
      letter-spacing: -0.025em;}
.op-page h1 {font-size: clamp(42px, 5.2vw, 76px);}
.op-page h2 {font-size: clamp(34px, 4vw, 58px);}
.op-page h3 {font-size: clamp(23px, 2.2vw, 34px);}
.op-page .green {color: var(--green);}
.op-page .italic {font-style: italic;}
.op-page .eyebrow {font-size: 10px;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--green);
      margin-bottom: 22px;}
.op-page .wrap {max-width: 1110px;
      margin: auto;
      padding: 0 32px;}
.op-page section {padding: 100px 0;}
.op-page section.tint {background: var(--cream);}
.op-page .grid2 {display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 70px;
      align-items: center;}
.op-page .intro {max-width: 550px;
      margin-top: 23px;
      color: var(--muted);}
.op-page .btn {display: inline-block;
      text-decoration: none;
      border: 1px solid var(--green);
      background: var(--green);
      color: #fff;
      padding: 9px 18px;
      font-size: 10px;
      line-height: 1.3;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      transition: 0.2s;}
.op-page .btn:hover {background: #093d32;
      color: #fff;}
.op-page .btn.outline {background: transparent;
      color: var(--green);}
.op-page .btn.outline:hover {background: var(--green);
      color: #fff;}
.op-page .actions {display: flex;
      flex-wrap: wrap;
      gap: 16px;
      margin-top: 30px;}
.op-page .site-head {padding: 22px 0;
      border-bottom: 1px solid #eee;
      background: #fff;}
.op-page .head-inner {display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;}
.op-page .brand {font-size: 25px;
      letter-spacing: 0.1em;
      color: #111;
      text-decoration: none;}
.op-page .brand span {font-size: 9px;
      display: inline-block;
      letter-spacing: 0.08em;
      line-height: 1.2;
      border-left: 1px solid #ddd;
      padding-left: 13px;
      margin-left: 12px;
      vertical-align: middle;}
.op-page .nav {display: flex;
      gap: 25px;}
.op-page .nav a {color: var(--green);
      font-size: 12px;
      text-decoration: none;}
.op-page .hero {padding: 110px 0 115px;}
.op-page .hero h1 {max-width: 750px;}
.op-page .hero .intro {max-width: 430px;}
.op-page .hero .actions {gap: 80px;}
.op-page .compare {display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 70px;
      margin-top: 65px;}
.op-page .compare > div + div {border-left: 1px solid #d5d7d2;
      padding-left: 70px;}
.op-page .compare ul {padding: 0;
      list-style: none;
      margin: 18px 0 0;}
.op-page .compare li {border-bottom: 1px solid #c9cec9;
      padding: 10px 0;
      font-size: 13px;}
.op-page .compare li:before {content: "↗";
      color: var(--green);
      margin-right: 13px;}
.op-page .smallcards {display: grid;
      gap: 23px;}
.op-page .smallcard {border-bottom: 1px solid #d5d8d3;
      padding-bottom: 20px;}
.op-page .smallcard b {color: var(--green);
      font-size: 13px;
      letter-spacing: 0.1em;
      margin-right: 14px;}
.op-page .smallcard strong {font-family: "Cormorant Garamond", Georgia, serif;
      font-size: 20px;}
.op-page .smallcard p {font-size: 13px;
      color: var(--muted);
      margin: 8px 0 0 34px;}
.op-page .system {font-size: clamp(54px, 7vw, 100px);
      color: var(--green);
      line-height: 0.98;
      margin-top: 15px;}
.op-page .steps {display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 28px;
      margin-top: 65px;}
.op-page .stepnum {font-family: "Cormorant Garamond", Georgia, serif;
      font-size: 42px;
      color: var(--green);
      border-bottom: 2px solid var(--green);
      padding-bottom: 8px;}
.op-page .steps h4 {font-family: "Cormorant Garamond", Georgia, serif;
      font-size: 18px;
      margin: 20px 0 8px;}
.op-page .steps p {font-size: 13px;
      color: var(--muted);}
.op-page .services {margin-top: 55px;}
.op-page .service {display: grid;
      grid-template-columns: 1fr 1.2fr;
      align-items: center;
      gap: 50px;
      border-bottom: 1px solid #cfd4d0;
      padding: 35px 0;}
.op-page .service:first-child {border-top: 1px solid #cfd4d0;}
.op-page .service p {font-size: 13px;
      color: var(--muted);
      max-width: 330px;}
.op-page .service h3 {max-width: 470px;}
.op-page .center {text-align: center;}
.op-page .center .intro {margin: 20px auto;}
.op-page .signup {display: flex;
      max-width: 510px;
      margin: 30px auto 10px;}
.op-page .signup input {flex: 1;
      min-width: 0;
      border: 1px solid #ccc;
      background: transparent;
      padding: 15px;
      font: inherit;}
.op-page .signup button {cursor: pointer;}
.op-page .fine {font-size: 11px;
      color: var(--muted);}
.op-page footer {background: #075744;
      color: #fff;
      padding: 75px 0 40px;}
.op-page footer .quote {max-width: 550px;
      margin: 0 auto 65px;
      text-align: center;
      font:
        500 27px/1.2 "Cormorant Garamond",
        Georgia,
        serif;}
.op-page .footgrid {display: grid;
      grid-template-columns: 2fr 1fr 1fr;
      gap: 60px;
      border-top: 1px solid #ffffff30;
      padding-top: 40px;}
.op-page footer h4 {font-size: 11px;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      margin: 0 0 20px;}
.op-page footer p,
.op-page footer a {font-size: 12px;
      color: #e0f0e9;
      text-decoration: none;}
.op-page footer a {display: block;
      margin: 8px 0;}
.op-page .copyright {margin-top: 70px;
      font-size: 11px;}
.op-page .illustration {min-height: 310px;
      display: grid;
      place-items: center;
      background: linear-gradient(130deg, #f3f8f5, #fff);
      border: 1px solid #e2eae5;
      position: relative;}
.op-page .paper {background: #fff;
      border: 1px solid #cbd9d2;
      box-shadow: 0 10px 35px #064e3b12;
      width: 52%;
      padding: 20px;
      transform: rotate(-5deg);}
.op-page .paper:nth-child(2) {position: absolute;
      right: 12%;
      top: 20%;
      transform: rotate(8deg);
      width: 33%;}
.op-page .paper i {display: block;
      height: 8px;
      background: #d8e8df;
      margin: 11px 0;}
.op-page .paper i:first-child {background: var(--green);
      width: 65%;}
.op-page .paper i:nth-child(3) {width: 80%;}
@media (max-width: 760px) {
.op-page section {padding: 65px 0;}
.op-page .wrap {padding: 0 22px;}
.op-page .head-inner {align-items: flex-start;
        flex-direction: column;}
.op-page .nav {flex-wrap: wrap;}
.op-page .hero {padding: 75px 0;}
.op-page .hero .actions {gap: 14px;}
.op-page .grid2,
.op-page .compare,
.op-page .service {grid-template-columns: 1fr;
        gap: 32px;}
.op-page .compare > div + div {border-left: 0;
        border-top: 1px solid #ddd;
        padding: 30px 0 0;}
.op-page .steps {grid-template-columns: repeat(2, 1fr);
        gap: 25px;}
.op-page .footgrid {grid-template-columns: 1fr 1fr;
        gap: 25px;}
.op-page .footgrid > div:first-child {grid-column: 1/-1;}
.op-page .illustration {min-height: 260px;}
}
@media (max-width: 420px) {
.op-page .steps {grid-template-columns: 1fr;}
.op-page .signup {flex-direction: column;}
.op-page .signup .btn {width: 100%;}
}
.op-page {--green: #0b5041;
      --ink: #090d15;
      font-family: "Inter", Arial, sans-serif;
      color: var(--ink);}
.op-page .wrap {max-width: 1110px;
      padding-left: 0;
      padding-right: 0;}
.op-page .site-head {background: #faf9f7;
      border-bottom: 0;
      padding: 13px 0 16px;}
.op-page .brand {font-size: 32px;
      line-height: 1;
      letter-spacing: 0.085em;
      color: #080e18;}
.op-page .brand span {font-family: "Inter", sans-serif;
      font-size: 11px;
      letter-spacing: 0;
      line-height: 1.12;
      padding-left: 16px;
      margin-left: 13px;
      border-color: #b9b9b9;}
.op-page .nav a {font-size: 12px;}
.op-page .hero {padding: 54px 0 86px;
      background: #fff;}
.op-page .hero .eyebrow {font-size: 11px;
      letter-spacing: 0.2em;
      margin-bottom: 17px;}
.op-page .hero h1 {font-family: "Cormorant Garamond", Georgia, serif;
      font-size: clamp(44px, 4.3vw, 69px);
      line-height: 0.9;
      letter-spacing: -0.025em;
      max-width: 580px;}
.op-page .hero .hero-second {margin-top: 32px;}
.op-page .hero .intro {margin-top: 40px;
      max-width: 408px;
      color: #1d2833;
      font-size: 15px;
      line-height: 1.65;}
.op-page .hero .actions {margin-top: 34px;
      gap: 0;
      justify-content: space-between;
      max-width: 610px;}
.op-page .hero .btn {font-size: 16px;
      line-height: 1.25;
      padding: 13px 28px;
      border-radius: 4px;
      min-width: 196px;
      text-align: center;}
.op-page .hero .btn.outline {min-width: 201px;
      border-width: 2px;}
@media (max-width: 1100px) {
.op-page .wrap {padding-left: 28px;
        padding-right: 28px;}
}
@media (max-width: 760px) {
.op-page .site-head {padding: 18px 0;}
.op-page .brand {font-size: 25px;}
.op-page .hero {padding: 65px 0;}
.op-page .hero h1 {font-size: clamp(43px, 8vw, 64px);
        line-height: 1;}
.op-page .hero .hero-second {margin-top: 26px;}
.op-page .hero .intro {margin-top: 32px;}
.op-page .hero .actions {gap: 15px;
        justify-content: flex-start;}
.op-page .hero .btn {min-width: 0;
        font-size: 13px;}
}
.op-page {--green: #095443;
      --ink: #0a0e17;
      font-size: 16px;
      line-height: 1.6;}
.op-page .wrap {max-width: 1110px;}
.op-page h1,
.op-page h2,
.op-page h3 {letter-spacing: -0.022em;
      line-height: 1.02;}
.op-page h2 {font-size: clamp(38px, 3.45vw, 54px);}
.op-page h3 {font-size: clamp(26px, 2.5vw, 38px);}
.op-page section {padding: 90px 0;}
.op-page .eyebrow {font-size: 11px;
      letter-spacing: 0.15em;}
.op-page .intro {font-size: 15px;
      color: #263342;
      line-height: 1.65;}
.op-page .compare {grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 0;
      position: relative;
      margin-top: 60px;}
.op-page .compare > div:first-child {padding-right: 100px;}
.op-page .compare > div:last-child {border-left: 1px solid #b5b9b9;
      padding-left: 105px;}
.op-page .compare-vs {position: absolute;
      left: 50%;
      top: 49%;
      transform: translate(-50%, -50%);
      background: var(--cream);
      color: var(--green);
      padding: 6px 0;
      font-size: 13px;}
.op-page .compare .eyebrow {font-size: 12px;
      letter-spacing: 0;
      margin-bottom: 26px;}
.op-page .compare h3 {font-size: 43px;
      margin-bottom: 21px;}
.op-page .compare li {padding: 13px 0;
      font-size: 14px;}
.op-page .compare li:before {content: "↑";
      font-size: 14px;}
.op-page .reality-grid {display: grid;
      grid-template-columns: 1.08fr 1.02fr 1fr;
      gap: 42px;
      align-items: center;
      margin-top: 62px;}
.op-page .reality-left h2 {font-size: clamp(32px, 2.8vw, 43px);}
.op-page .reality-art img {display: block;
      width: 100%;
      height: auto;
      object-fit: contain;}
.op-page .reality-facts {display: grid;
      gap: 25px;}
.op-page .reality-facts h4 {font-family: "Cormorant Garamond", serif;
      font-size: 17px;
      color: var(--green);
      margin: 0 0 8px;}
.op-page .reality-facts h4 span {margin-right: 9px;}
.op-page .reality-facts p {font-size: 14px;
      line-height: 1.8;
      margin: 0;
      color: #263342;}
.op-page .system {font-family: "Cormorant Garamond", Georgia, serif;
      font-size: clamp(73px, 7.7vw, 108px);
      line-height: 0.83;
      letter-spacing: -0.045em;
      margin: 10px 0 36px;}
.op-page .smallcard strong {font-size: 21px;}
.op-page .smallcard p {font-size: 14px;
      line-height: 1.7;
      color: #263342;}
.op-page .steps {gap: 35px;
      margin-top: 75px;}
.op-page .stepnum {font-size: 65px;
      line-height: 1;
      position: relative;
      border-bottom: 2px solid var(--green);}
.op-page .stepnum:before {content: "";
      position: absolute;
      bottom: -4px;
      left: 0;
      border: 2px solid var(--green);
      background: var(--cream);
      width: 6px;
      height: 6px;
      border-radius: 50%;}
.op-page .stepnum:after {content: "➜";
      position: absolute;
      bottom: -11px;
      right: -2px;
      font:
        14px Inter,
        sans-serif;
      color: var(--green);}
.op-page .steps h4 {font-size: 23px;
      margin-top: 32px;
      color: var(--green);}
.op-page .steps p {font-size: 14px;
      line-height: 1.7;
      color: #263342;}
.op-page .services {margin-top: 70px;}
.op-page .service {grid-template-columns: 1fr 1.15fr 1fr;
      gap: 38px;
      min-height: 170px;
      padding: 35px 0;}
.op-page .service h3 {font-size: 32px;
      line-height: 1.05;}
.op-page .service .eyebrow {font-size: 10px;
      letter-spacing: 0.1em;
      margin-bottom: 20px;}
.op-page .service p {font-size: 14px;
      line-height: 1.65;
      color: #263342;}
.op-page .service-icon {display: flex;
      align-items: center;
      justify-content: center;
      min-height: 95px;}
.op-page .service-icon img {max-width: 100%;
      max-height: max-content;
      object-fit: contain;}
.op-page .service-one .service-icon,
.op-page .service-two .service-icon {border-right: 1px solid #ccd0cc;}
.op-page .service-three .service-icon {border-left: 1px solid #ccd0cc;}
@media (max-width: 900px) {
.op-page .reality-grid {grid-template-columns: 1fr 1fr;}
.op-page .reality-facts {grid-column: 1/-1;
        grid-template-columns: repeat(3, 1fr);}
.op-page .service {gap: 22px;}
.op-page .service h3 {font-size: 26px;}
}
@media (max-width: 760px) {
.op-page .wrap {padding: 0 22px;}
.op-page section {padding: 65px 0;}
.op-page .compare > div:first-child {padding-right: 0;}
.op-page .compare > div:last-child {border-left: 0;
        border-top: 1px solid #ddd;
        padding: 30px 0 0;}
.op-page .compare-vs {display: none;}
.op-page .reality-grid {grid-template-columns: 1fr;
        gap: 28px;
        margin-top: 30px;}
.op-page .reality-facts {grid-column: auto;
        grid-template-columns: 1fr;}
.op-page .reality-art {max-width: 400px;}
.op-page .service {grid-template-columns: 75px 1fr;
        gap: 16px;}
.op-page .service > * {grid-column: auto;}
.op-page .service .service-main {grid-column: 2;}
.op-page .service p {grid-column: 1/-1;}
.op-page .service-two .service-icon {grid-column: 1;
        grid-row: 1;}
.op-page .service-two .service-main {grid-column: 2;
        grid-row: 1;}
.op-page .service-two p {grid-row: 2;}
.op-page .service-three .service-icon {grid-column: 1;
        grid-row: 1;}
.op-page .service-three .service-main {grid-column: 2;
        grid-row: 1;}
.op-page .service-three p {grid-row: 2;}
.op-page .service-icon,
.op-page .service-one .service-icon,
.op-page .service-two .service-icon,
.op-page .service-three .service-icon {border: 0;}
.op-page .service-icon img {max-width: 65px;}
.op-page .steps {gap: 26px;}
}
.op-page {--green: #0b5342;
      --cream: #faf8f7;
      --ink: #0a0e17;
      font-size: 16px;}
.op-page .wrap {max-width: 1110px;}
.op-page .site-head {position: relative;
      z-index: 2;
      background: #faf9f7;}
.op-page h1,
.op-page h2,
.op-page h3,
.op-page .stepnum,
.op-page .smallcard strong {font-family: "Cormorant Garamond", Georgia, serif;}
.op-page h1,
.op-page h2,
.op-page h3 {letter-spacing: -0.026em;}
.op-page h2 {font-size: clamp(40px, 3.7vw, 57px);
      line-height: 0.96;}
.op-page h3 {font-size: clamp(27px, 2.55vw, 40px);}
.op-page .hero h1 {line-height: 0.9;}
.op-page .hero .hero-second {margin-top: 30px;}
.op-page .hero {padding-top: 56px;
      padding-bottom: 85px;}
.op-page .eyebrow {letter-spacing: 0.16em;}
.op-page section {padding: 93px 0;}
.op-page .intro {line-height: 1.68;}
.op-page .compare {margin-top: 65px;}
.op-page .compare > div:first-child {padding-right: 108px;}
.op-page .compare > div:last-child {padding-left: 108px;}
.op-page .compare h3 {font-size: 45px;}
.op-page .compare li {min-height: 46px;
      padding: 11px 0;}
.op-page .reality {padding-top: 72px;
      padding-bottom: 82px;}
.op-page .reality-grid {grid-template-columns: 1.05fr 1.18fr 1.08fr;
      gap: 40px;
      margin-top: 42px;}
.op-page .reality-left h2 {font-size: 44px;
      line-height: 0.98;}
.op-page .reality-art {align-self: center;}
.op-page .reality-art img {width: 100%;
      max-width: 350px;
      margin: auto;}
.op-page .reality-facts h4 {font-size: 19px;
      line-height: 1.1;}
.op-page .reality-facts p {font-size: 14px;
      line-height: 1.75;}
.op-page .system {line-height: 0.82;
      font-size: clamp(78px, 7.5vw, 108px);}
.op-page .smallcard strong {font-size: 21px;}
.op-page .stepnum {font-size: 62px;
      line-height: 1.05;
      padding-bottom: 8px;
      position: relative;}
.op-page .stepnum:after {content: "→";
      position: absolute;
      right: -4px;
      bottom: -18px;
      font-family: Inter, Arial, sans-serif;
      font-size: 35px;}
.op-page .steps {margin-top: 80px;
      gap: 54px;}
.op-page .steps h4 {font-size: 22px;
      line-height: 1.1;
      margin-top: 35px;
      color: #083f33;}
.op-page .steps p {font-size: 14px;
      line-height: 1.8;
      color: #263342;}
.op-page .services {margin-top: 75px;}
.op-page .service {grid-template-columns: 155px 1.55fr 1fr;
      gap: 44px;
      min-height: 183px;
      padding: 26px 0;}
.op-page .service .eyebrow {font-size: 10px;
      margin-bottom: 22px;}
.op-page .service h3 {font-size: 34px;
      line-height: 0.97;}
.op-page .service p {font-size: 14px;
      line-height: 1.7;
      color: #25313a;}
.op-page .service-icon {height: 115px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-right: 1px solid #c7ccca;}
.op-page .service-icon img {height: max-content;
      width: 100%;
      object-fit: contain;}
.op-page .service-two {grid-template-columns: 1fr 150px 1.5fr;}
.op-page .service-two .service-icon {border-right: 0;
      border-left: 1px solid #c7ccca;}
.op-page .service-three {grid-template-columns: 1.5fr 1fr 140px;}
.op-page .service-three .service-icon {border-right: 0;}
.op-page .service-three .service-main {padding-left: 0;}
.op-page .service-three .service-icon img {height: 110px;}
@media (max-width: 1100px) {
.op-page .wrap {padding-left: 30px;
        padding-right: 30px;}
.op-page .reality-grid {gap: 25px;}
.op-page .service {gap: 25px;}
}
@media (max-width: 760px) {
.op-page section {padding: 65px 0;}
.op-page h2 {font-size: clamp(39px, 9vw, 52px);}
.op-page .reality-grid {grid-template-columns: 1fr;
        gap: 30px;}
.op-page .reality-left h2 {font-size: 44px;}
.op-page .reality-art img {max-width: 300px;}
.op-page .compare > div:first-child {padding-right: 0;}
.op-page .compare > div:last-child {border-left: 0;
        border-top: 1px solid #ddd;
        padding-left: 0;
        padding-top: 30px;}
.op-page .compare {grid-template-columns: minmax(0, 1fr);
        gap: 30px;
        margin-top: 48px;}
.op-page .compare-vs {display: none;}
.op-page .compare h3 {font-size: clamp(36px, 10vw, 44px);
        overflow-wrap: anywhere;}
.op-page .compare li {overflow-wrap: anywhere;}
.op-page .steps {margin-top: 48px;
        gap: 28px;}
.op-page .service,
.op-page .service-two,
.op-page .service-three {display: grid;
        grid-template-columns: 80px minmax(0, 1fr);
        gap: 16px;
        min-height: 0;}
.op-page .service .service-icon,
.op-page .service-two .service-icon,
.op-page .service-three .service-icon {grid-column: 1;
        grid-row: 1;
        border: 0;
        height: auto;}
.op-page .service .service-main,
.op-page .service-two .service-main,
.op-page .service-three .service-main {grid-column: 2;
        grid-row: 1;}
.op-page .service p,
.op-page .service-two p,
.op-page .service-three p {grid-column: 1/-1;
        grid-row: 2;}
.op-page .service-icon img {width: 75px;
        height: 75px;}
.op-page .service h3 {font-size: 30px;}
}
:root {--optimasi-green: #105142;
      --optimasi-ink: #1f2523;
      --optimasi-muted: #4c5b57;
      --optimasi-serif: "Cormorant Garamond", Georgia, serif;
      --optimasi-sans: "Inter", Arial, sans-serif;}
:where(.ox-home),
:where(.ox-home) * {font-family: var(--optimasi-sans);}
:where(.ox-home) h1,
:where(.ox-home) h2,
:where(.ox-home) h3,
:where(.ox-home) h4,
:where(.ox-home) h5,
:where(.ox-home) h6,
.op-page h1,
.op-page h2,
.op-page h3 {font-family: var(--optimasi-serif);
      letter-spacing: -0.03em;
      line-height: 1.05;
      color: var(--optimasi-green);}
:where(.ox-home) h1 {font-size: clamp(2.8rem, 5vw, 4.6rem);
      margin: 0 0 1rem;}
:where(.ox-home) h2 {font-size: clamp(2.2rem, 3.6vw, 3.25rem);
      margin: 0 0 0.9rem;}
:where(.ox-home) h3 {font-size: clamp(1.7rem, 2.4vw, 2.3rem);
      margin: 0 0 0.7rem;}
:where(.ox-home) p,
:where(.ox-home) li,
:where(.ox-home) a,
:where(.ox-home) span,
:where(.ox-home) button,
:where(.ox-home) input,
:where(.ox-home) textarea,
:where(.ox-home) label,
:where(.ox-home) small,
:where(.ox-home) strong,
:where(.ox-home) div {font-family: var(--optimasi-sans);}
:where(.ox-home),
:where(.ox-home) p,
:where(.ox-home) li,
:where(.ox-home) span,
:where(.ox-home) label,
:where(.ox-home) input,
:where(.ox-home) textarea,
:where(.ox-home) button {color: var(--optimasi-ink);}
.op-page h1,
.op-page h2,
.op-page h3,
.op-page .system,
.op-page .stepnum,
.op-page .smallcard strong,
.op-page footer .quote {font-family: "Cormorant Garamond", Georgia, serif !important;
      font-weight: 500;
      letter-spacing: -0.026em;}
.op-page h1,
.op-page h2,
.op-page h3 {color: var(--ink);}
.op-page .green,
.op-page .steps h4,
.op-page .reality-facts h4 {color: var(--green);}
.email-subscribe-wrapper,
.email-subscribe-wrapper * {box-sizing: border-box;}
.email-subscribe-wrapper {width: 100%;}
.email-subscribe-form {width: 100%;}
.email-subscribe-fields {display: grid;
              grid-template-columns: 2.24fr 1fr;
              gap: 10px;
              width: 70%;
              margin: 0 auto;}
.email-subscribe-fields input[type="email"] {width: 100%;
              height: 72px;
              padding: 0 29px;
              border: 2px solid #d5d4d2;
              border-radius: 5px;
              background: transparent;
              color: #243137;
              font-family: "Inter", Arial, sans-serif;
              font-size: 18px;
              outline: none;
              box-shadow: none;
              transition:
                border-color 0.2s ease,
                background-color 0.2s ease;}
.email-subscribe-fields input[type="email"]::placeholder {color: #5f666a;
              opacity: 1;}
.email-subscribe-fields input[type="email"]:focus {border-color: #205142;}
.email-subscribe-fields input[type="email"].has-error {border-color: #b42318;
              background: #fff9f8;}
.email-subscribe-fields button {position: relative;
              display: flex;
              align-items: center;
              justify-content: center;
              width: 100%;
              height: 72px;
              padding: 0 25px;
              border: 0;
              border-radius: 4px;
              background: #176f5d;
              color: #ffffff;
              font-family: "Inter", Arial, sans-serif;
              font-size: 16px;
              letter-spacing: 0.1px;
              cursor: pointer;
              transition:
                background-color 0.2s ease,
                opacity 0.2s ease;}
.email-subscribe-fields button:hover {background: #0e604f;}
.email-subscribe-fields button:disabled {cursor: not-allowed;
              opacity: 0.72;}
.email-captcha-wrapper {width: 70%;
              margin: 16px auto;}
.email-captcha-wrapper.has-error {width: fit-content;
              padding: 4px;
              border: 1px solid #b42318;
              border-radius: 4px;}
.button-loader {display: none;
              width: 22px;
              height: 22px;
              border: 2px solid rgba(255, 255, 255, 0.4);
              border-top-color: #ffffff;
              border-radius: 50%;
              animation: mailerlite-loader-spin 0.7s linear infinite;}
.email-subscribe-form.is-loading .button-text {display: none;}
.email-subscribe-form.is-loading .button-loader {display: block;}
.email-subscribe-message {display: none;
              width: 100%;
              margin-top: 15px;
              padding: 14px 18px;
              border-radius: 5px;
              font-family: "Inter", Arial, sans-serif;
              font-size: 16px;
              line-height: 1.5;}
.email-subscribe-message.is-success {display: block;
              border: 1px solid #a6d5c3;
              background: #edf8f3;
              color: #145c48;}
.email-subscribe-message.is-error {display: block;
              border: 1px solid #efb3ad;
              background: #fff1f0;
              color: #9f2018;}
.mailerlite-hidden-frame {position: absolute;
              width: 1px;
              height: 1px;
              border: 0;
              opacity: 0;
              visibility: hidden;
              pointer-events: none;}
@keyframes mailerlite-loader-spin {
              to {
                transform: rotate(360deg);
              }
            }
@media (max-width: 767px) {
:where(.ox-home) input.text,
:where(.ox-home) input.title,
:where(.ox-home) input[type="email"],
:where(.ox-home) input[type="password"],
:where(.ox-home) input[type="tel"],
:where(.ox-home) input[type="text"],
:where(.ox-home) select,
:where(.ox-home) textarea {background-color: #fff;
                border: 1px solid #bbb;
                padding: 2px;
                color: #4e4e4e;
                padding: 25px 15px 25px 15px;}
.email-subscribe-fields {grid-template-columns: 1fr;
                gap: 15px;}
.email-subscribe-fields input[type="email"],
.email-subscribe-fields button {height: 62px;}
.email-subscribe-fields input[type="email"] {padding: 0 20px;
                font-size: 18px;}
.email-subscribe-fields button {font-size: 17px;}
.email-captcha-wrapper {margin-top: 17px;
                width: 100%;
                overflow: hidden;}
.email-subscribe-message {margin-top: 12px;
                font-size: 15px;}
}
@media (max-width: 360px) {
.g-recaptcha {transform: scale(0.88);
                transform-origin: left top;
                margin-bottom: -9px;}
}
:root {--optimasi-green: #105142;
              --optimasi-ink: #1f2523;
              --optimasi-muted: #4c5b57;
              --optimasi-serif: "Cormorant Garamond", Georgia, serif;
              --optimasi-sans: "Inter", Arial, sans-serif;}
:where(.ox-home),
:where(.ox-home) * {font-family: var(--optimasi-sans);}
:where(.ox-home) h1,
:where(.ox-home) h2,
:where(.ox-home) h3,
:where(.ox-home) h4,
:where(.ox-home) h5,
:where(.ox-home) h6,
.op-page h1,
.op-page h2,
.op-page h3 {font-family: var(--optimasi-serif);
              letter-spacing: -0.03em;
              line-height: 1.05;
              color: var(--optimasi-green);}
:where(.ox-home) h1 {font-size: clamp(2.8rem, 5vw, 4.6rem);
              margin: 0 0 1rem;}
:where(.ox-home) h2 {font-size: clamp(2.2rem, 3.6vw, 3.25rem);
              margin: 0 0 0.9rem;}
:where(.ox-home) h3 {font-size: clamp(1.7rem, 2.4vw, 2.3rem);
              margin: 0 0 0.7rem;}
:where(.ox-home) p,
:where(.ox-home) li,
:where(.ox-home) a,
:where(.ox-home) span,
:where(.ox-home) button,
:where(.ox-home) input,
:where(.ox-home) textarea,
:where(.ox-home) label,
:where(.ox-home) small,
:where(.ox-home) strong,
:where(.ox-home) div {font-family: var(--optimasi-sans);}
:where(.ox-home),
:where(.ox-home) p,
:where(.ox-home) li,
:where(.ox-home) span,
:where(.ox-home) label,
:where(.ox-home) input,
:where(.ox-home) textarea,
:where(.ox-home) button {color: var(--optimasi-ink);}
.op-page .wrap {box-sizing: border-box;
      width: min(1110px, calc(100% - 48px));
      max-width: 1110px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 0;
      padding-right: 0;}
body .op-page h1,
body .op-page h2,
body .op-page h3,
body .op-page .system,
body .op-page .stepnum,
body .op-page .smallcard strong,
body .op-page footer .quote,
body .op-page .steps h4,
body .op-page .reality-facts h4,
body .op-page h1 span,
body .op-page h2 span,
body .op-page h3 span {font-family: "Cormorant Garamond", Georgia, serif !important;}
@media (max-width: 400px) {
  body .op-page .system { font-size: clamp(46px, 15vw, 64px) !important; }
}
@media (min-width: 761px) and (max-width: 900px) {
  body .op-page .reality-grid { grid-template-columns: 1fr 1fr !important; }
  body .op-page .reality-facts { grid-column: 1 / -1 !important; grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .email-subscribe-fields,
  .email-captcha-wrapper { width: 100% !important; max-width: 640px; }
  .email-subscribe-fields { grid-template-columns: 1.6fr 1fr !important; }
  .email-subscribe-fields button { padding: 0 16px !important; white-space: nowrap; }
}
@media (max-width: 767px) {
  body .op-page .eyebrow { font-size: 11px !important; }
}
/* ---------- Publication archive ---------- */
@media screen and (max-width: 850px) {
  .oxw-page--archive .op-archive {
    width: 100% !important;
    max-width: 100% !important;
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
  }
  .oxw-page--archive .op-archive header.op-hero {
    box-sizing: border-box !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 150px 0 30px !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  .oxw-page--archive .op-archive header.op-hero > .op-shell {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 20px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-eyebrow {
    display: block !important;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 0 20px !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    color: #fff !important;
  }
  .oxw-page--archive .op-archive header.op-hero h1 {
    position: static !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 32px !important;
    line-height: 1.18 !important;
    overflow-wrap: break-word !important;
    color: #fff !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-accent {
    width: 70px !important;
    height: 2px !important;
    margin: 22px 0 20px !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-tabs {
    position: static !important;
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 10px 15px !important;
    margin: 0 !important;
    min-height: 0 !important;
  }
  .oxw-page--archive .op-archive .op-shell {
    box-sizing: border-box !important;
  }
  .oxw-page--archive .op-archive .op-listing .op-shell {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 20px !important;
  }
  .oxw-page--archive .op-archive .op-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .op-archive .op-card { min-height: 0 !important; }
  .op-archive .op-card .op-meta { margin-bottom: 14px !important; }
  .op-archive .op-read { margin-top: 0 !important; }
  .op-archive .op-tabs a { font-size: 12px !important; }
  .op-archive .op-category-nav .op-shell { grid-template-columns: 1fr !important; padding: 14px 0 !important; gap: 10px !important; }
  .op-archive .op-category-nav a,
  .op-archive .op-category-nav a:nth-child(2),
  .op-archive .op-category-nav a:nth-child(3) { font-size: 13px !important; text-align: left !important; }
}
@media (min-width: 601px) and (max-width: 850px) {
  .oxw-page--archive .op-archive .op-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
.op-archive,.op-archive *{box-sizing:border-box}
.op-archive{--op-green:#105142;--op-line:#dedfdd;background:#fff;color:#242e29;font-family:'Inter',Arial,sans-serif;font-size:14px;line-height:1.55}
.op-archive .op-shell{width:min(1110px,calc(100% - 40px));margin-inline:auto}
.op-archive .op-hero{background:var(--op-green);color:#fff;padding:41px 0 20px;min-height:244px}
.op-archive .op-hero>.op-shell{display:flex;flex-direction:column;min-height:183px}
.op-archive .op-hero .op-eyebrow{display:block!important;visibility:visible!important;opacity:1!important;font-family:'Inter',Arial,sans-serif!important;font-size:12px!important;line-height:1.35!important;font-weight:700!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#fff!important;margin:0 0 25px!important;padding:0!important}
.op-archive h1{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:47px!important;line-height:1.15!important;font-weight:600!important;color:#fff!important;letter-spacing:0!important;text-transform:none!important;margin:0!important;padding:0!important}
.op-archive .op-accent{display:block!important;width:80px;height:2px;background:#d1e5dd;margin:23px 0 0;flex:none}
.op-archive .op-tabs{display:flex;justify-content:flex-end;align-items:center;gap:27px;flex-wrap:wrap;margin-top:auto;min-height:43px}
.op-archive .op-tabs a{color:#fff!important;text-decoration:none!important;border-bottom:2px solid transparent;padding:10px 0 12px;font-size:13px;white-space:nowrap}
.op-archive .op-tabs a:hover,.op-archive .op-tabs a[aria-current=page]{border-color:#fff}
.op-archive .op-listing{padding:77px 0 85px;min-height:310px}
.op-archive .op-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 25px}
.op-archive .op-card{border:1px solid #d9d9d9;padding:18px 16px;background:#fff;min-height:175px;display:flex;flex-direction:column;align-items:flex-start;overflow-wrap:anywhere}
.op-archive .op-card h2{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:26px!important;font-weight:700!important;line-height:1.07!important;letter-spacing:0!important;text-transform:none!important;color:var(--op-green)!important;margin:0 0 14px!important;padding:0!important}
.op-archive .op-card h2 a{color:inherit!important;text-decoration:none!important}.op-archive .op-card h2 a:hover{text-decoration:underline!important}
.op-archive .op-meta{font-size:12px!important;color:#37413c;margin:0 0 10px!important;line-height:1.45}
.op-archive .op-read{font-size:12px;font-weight:700;color:var(--op-green)!important;text-decoration:none!important;margin-top:auto;letter-spacing:.01em}.op-archive .op-read:hover{text-decoration:underline!important}
.op-archive .op-empty{padding:35px 0;color:#59655f;text-align:center}
.op-archive .op-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:35px}
.op-archive .op-pages .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:8px 11px;border:1px solid #d7e2dc;color:var(--op-green)!important;background:#fff;text-decoration:none!important;font-size:13px}
.op-archive .op-pages .page-numbers.current,.op-archive .op-pages a.page-numbers:hover{background:var(--op-green);border-color:var(--op-green);color:#fff!important}
.op-archive .op-category-nav{background:#faf8f7;border-top:1px solid #eee}
.op-archive .op-category-nav .op-shell{min-height:57px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-items:center}
.op-archive .op-category-nav a{font-size:12px;color:var(--op-green)!important;text-decoration:none!important;line-height:1.35}
.op-archive .op-category-nav a:hover{text-decoration:underline!important}
.op-archive .op-category-nav a:nth-child(2){text-align:center}.op-archive .op-category-nav a:nth-child(3){text-align:right}
.oxw-page--archive .site-content:has(.op-archive){display:block!important}
.oxw-page--archive .site-content:has(.op-archive)>#primary{width:100%!important;float:none!important}
.op-archive{width:100vw;max-width:100vw;position:relative;left:50%;margin-left:-50vw;margin-right:-50vw}
@media(max-width:850px){.op-archive h1{font-size:39px!important}.op-archive .op-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-archive .op-listing{padding:45px 0 60px}}
@media(max-width:600px){.op-archive .op-hero{min-height:0;padding:34px 0 20px}.op-archive .op-hero>.op-shell{min-height:0}.op-archive .op-hero .op-eyebrow{margin-bottom:19px!important}.op-archive .op-tabs{margin-top:24px;min-height:0}.op-archive h1{font-size:34px!important}.op-archive .op-tabs{justify-content:flex-start;gap:14px}.op-archive .op-tabs a{font-size:11px}.op-archive .op-grid{grid-template-columns:1fr;gap:14px}.op-archive .op-card{min-height:145px}.op-archive .op-category-nav a{font-size:10px}}
@media print{.op-archive .op-tabs,.op-archive .op-category-nav,.op-archive .op-pages{display:none!important}.op-archive .op-hero{background:#fff;color:var(--op-green)}.op-archive h1,.op-archive .op-eyebrow{color:var(--op-green)!important}.op-archive .op-card{break-inside:avoid}}
@media (min-width: 851px) {
  .oxw-page--archive .op-archive header.op-hero {
    box-sizing: border-box !important;
    height: 354px !important;
    min-height: 354px !important;
    padding: 125px 0 20px !important;
    margin: 0 !important;
  }
  .oxw-page--archive .op-archive header.op-hero > .op-shell {
    height: 183px !important;
    min-height: 183px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-eyebrow {
    margin: 0 0 25px !important;
    font-size: 12px !important;
    line-height: 16px !important;
  }
  .oxw-page--archive .op-archive header.op-hero h1 {
    font-size: 47px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-accent {
    width: 80px !important;
    height: 2px !important;
    margin-top: 23px !important;
  }
  .oxw-page--archive .op-archive header.op-hero .op-tabs {
    margin-top: auto !important;
    min-height: 43px !important;
    align-self: stretch !important;
  }
  .oxw-page--archive .op-archive .op-listing {
    padding-top: 77px !important;
  }
}
.oxw-page--archive .op-archive .op-shell {
  width: min(1110px, calc(100% - 40px)) !important;
  max-width: 1110px !important;
}
.oxw-page--archive .op-archive .op-card {
  min-height: 175px !important;
}
.oxw-page--archive .op-archive .op-card h2 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 26px !important;
  line-height: 1.07 !important;
}
@media (min-width: 851px) {
  .oxw-page--archive .op-archive .op-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px 25px !important;
  }
}
@media (max-width: 850px) {
  .oxw-page--archive .op-archive header.op-hero {
    height: auto !important;
    min-height: 0 !important;
  }
  .oxw-page--archive .op-archive header.op-hero > .op-shell {
    height: auto !important;
  }
}
.oxw-page--archive .op-archive header.op-hero { margin-top: calc(-1 * var(--ox-header-h)) !important; }
.oxw-page--archive .op-archive header.op-hero h1, .op-archive .op-hero h1 {
  font-family: var(--ox-serif) !important; font-size: var(--ox-h1) !important; font-weight: 600 !important;
  line-height: 1.08 !important; letter-spacing: -0.005em !important; text-transform: none !important;
  color: #fff !important; margin: 0 !important;
}
/* ---------- Theme guard: neutralise Hello Elementor defaults inside Optimasi widgets ---------- */
.ox-header button:hover, .ox-header button:focus,
.ox-select__button:hover, .ox-select__button:focus { background-color: inherit; color: inherit; }
.ox-select__button:hover, .ox-select__button:focus { background: #fff; color: #1e1f21; }
.ox-header .ox-header__toggle { display: none; border: 0; border-radius: 0; background: transparent; color: #222; }
.ox-header .ox-header__toggle:hover, .ox-header .ox-header__toggle:focus { background: transparent; color: #222; }
@media (max-width: 768px) { .ox-header .ox-header__toggle { display: block; } }
.oxw-page .site-main, .oxw-page main#content { max-width: none; padding: 0; margin: 0; }
.ox-title h1, .ox-title h2, .ox-sec h2, .ox-sec h3, .ox-tsq h2, .ox-duo h3, .ox-aud h3, .ox-coll h3, .ox-info h3, .ox-related h3 { font-weight: 600; }
.ox-home h4, .ox-home h5, .ox-home h6 { margin-block: 0; }
.ox-page a:not([class]) { text-decoration: none; }
.elementor-widget-oxw-site-header, .elementor-widget-oxw-site-footer { width: 100%; }
.oxw-global-header .e-con, .oxw-global-footer .e-con { --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; }
