/*
 * OFI Builder Integration - Base CSS v1.2.4
 * Stable technical layer only.
 * Page-specific colors, gradients, shadows, font sizes and spacing should come from the OFI Builder export.
 */

.ofi-b2-clean-export,
.ofi-b2-clean-export *,
.ofi-b2-clean-export *::before,
.ofi-b2-clean-export *::after {
  box-sizing: border-box;
}

.ofi-b2-clean-export {
  width: 100%;
  max-width: 100%;
  overflow-wrap: normal;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

.ofi-b2-clean-export .ofi-b2-canvas,
.ofi-b2-clean-export .ofi-b2-clean-canvas {
  width: 100%;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

.ofi-b2-clean-export .ofi-b2-section,
.ofi-b2-clean-export .ofi-b2-row,
.ofi-b2-clean-export .ofi-b2-column,
.ofi-b2-clean-export .ofi-b2-block,
.ofi-b2-clean-export .ofi-b2-block-inner,
.ofi-b2-clean-export .ofi-b2-column-inner {
  min-width: 0;
  max-width: 100%;
}

.ofi-b2-clean-export img,
.ofi-b2-clean-export svg,
.ofi-b2-clean-export video,
.ofi-b2-clean-export iframe {
  max-width: 100%;
  vertical-align: middle;
}

.ofi-b2-clean-export img,
.ofi-b2-clean-export svg,
.ofi-b2-clean-export video {
  height: auto;
}

.ofi-b2-clean-export iframe {
  border: 0;
}

.ofi-b2-clean-export figure {
  margin: 0;
}

.ofi-b2-clean-export a {
  color: inherit;
}

.ofi-b2-clean-export .ofi-b2-preview-btn,
.ofi-b2-clean-export .ofi-b2-preview-btn:visited,
.ofi-b2-clean-export .ofi-b2-preview-btn:hover,
.ofi-b2-clean-export .ofi-b2-preview-btn:focus {
  text-decoration: none;
}

.ofi-b2-clean-export .ofi-b2-preview-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  line-height: 1.2;
}

.ofi-b2-clean-export .ofi-b2-video-frame,
.ofi-b2-clean-export .ofi-b2-video-preview,
.ofi-b2-clean-export .ofi-b2-video-block-preview {
  max-width: 100%;
}

.ofi-b2-clean-export .ofi-b2-video-frame iframe,
.ofi-b2-clean-export .ofi-b2-video-preview iframe,
.ofi-b2-clean-export .ofi-b2-video-frame video,
.ofi-b2-clean-export .ofi-b2-video-preview video {
  display: block;
  width: 100%;
}

.ofi-b2-clean-export .ofi-b2-svg-icon {
  width: 1em;
  height: 1em;
  display: block;
  stroke: currentColor;
}

.ofi-b2-clean-export .ofi-b2-spacer {
  background: transparent;
}

.ofi-b2-clean-export .ofi-b2-toolbar,
.ofi-b2-clean-export .ofi-b2-section-title-tag,
.ofi-b2-clean-export .ofi-b2-section-add-row,
.ofi-b2-clean-export .ofi-b2-insert-row-zone,
.ofi-b2-clean-export .ofi-b2-section-resize-handle,
.ofi-b2-clean-export .ofi-b2-row-resize-handle,
.ofi-b2-clean-export .ofi-b2-column-resize-handle,
.ofi-b2-clean-export .ofi-b2-column-empty {
  display: none !important;
}

.ofi-b2-clean-export .ofi-b2-section:hover,
.ofi-b2-clean-export .ofi-b2-row:hover,
.ofi-b2-clean-export .ofi-b2-column:hover,
.ofi-b2-clean-export .ofi-b2-block:hover,
.ofi-b2-clean-export .selected,
.ofi-b2-clean-export .is-selected {
  outline: none !important;
}

.ofi-b2-clean-export .ofi-b2-section,
.ofi-b2-clean-export .ofi-b2-row,
.ofi-b2-clean-export .ofi-b2-column {
  border-color: transparent !important;
}

.ofi-b2-clean-export .ofi-b2-block {
  padding: 0;
}

.ofi-b2-clean-export .ofi-b2-row-wrap:last-child .ofi-b2-row {
  margin-bottom: 0;
}

@media (max-width: 900px) {
  .ofi-b2-clean-export .ofi-b2-row {
    max-width: 100% !important;
  }
}

@media (max-width: 720px) {
  .ofi-b2-clean-export .ofi-b2-canvas,
  .ofi-b2-clean-export .ofi-b2-clean-canvas {
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
  }

  .ofi-b2-clean-export .ofi-b2-row {
    grid-template-columns: 1fr !important;
    grid-template-areas: none !important;
  }

  .ofi-b2-clean-export .ofi-b2-column {
    grid-area: auto !important;
  }

  .ofi-b2-clean-export .ofi-b2-preview-btn {
    white-space: normal;
  }
}


/* OFI Builder Integration 1.2.1 — Accessible tutorial video modal */
.ofi-b2-tutorial-modal[hidden]{display:none!important}
.ofi-b2-tutorial-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:24px;font-family:var(--ofi-core-font,inherit);color:var(--ofi-core-body,#475569)}
.ofi-b2-tutorial-modal-backdrop{position:absolute;inset:0;background:rgba(2,12,27,.82);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.ofi-b2-tutorial-modal-dialog{position:relative;z-index:1;width:min(1080px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;background:var(--ofi-core-card-bg,#fff);border:1px solid color-mix(in srgb,var(--ofi-core-border,#dfe8f1) 82%,transparent);border-radius:24px;box-shadow:0 34px 100px rgba(2,12,27,.46);outline:0;animation:ofiTutorialModalIn .22s cubic-bezier(.16,1,.3,1) both}
.ofi-b2-tutorial-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid var(--ofi-core-border,#dfe8f1)}
.ofi-b2-tutorial-modal-head>div{min-width:0}.ofi-b2-tutorial-modal-head em{display:block;margin-bottom:5px;color:var(--ofi-core-accent,#0f9f93);font-size:12px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ofi-b2-tutorial-modal-head h3{margin:0;color:var(--ofi-core-title,#0f2f4a);font-size:clamp(20px,2.4vw,30px);line-height:1.15;letter-spacing:-.025em}
.ofi-b2-tutorial-modal-close{appearance:none;-webkit-appearance:none;display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid var(--ofi-core-border,#dfe8f1);border-radius:999px;background:#fff;color:var(--ofi-core-title,#0f2f4a);font:700 28px/1 system-ui,sans-serif;cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease}.ofi-b2-tutorial-modal-close:hover{transform:scale(1.04);background:var(--ofi-core-title,#0f2f4a);color:#fff}.ofi-b2-tutorial-modal-close:focus-visible{outline:3px solid color-mix(in srgb,var(--ofi-core-accent,#0f9f93) 45%,transparent);outline-offset:3px}
.ofi-b2-tutorial-modal-player{padding:18px 22px 0}.ofi-b2-tutorial-modal-player .ofi-b2-tutorial-video-frame{border-radius:var(--ofi-tutorial-player-radius,20px);box-shadow:none}
.ofi-b2-tutorial-modal-details{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 20px;align-items:start;padding:16px 22px 22px}.ofi-b2-tutorial-modal-details p{grid-column:1/-1;margin:0;color:var(--ofi-core-body,#475569);font-size:15px;line-height:1.65}.ofi-b2-tutorial-modal-meta{display:flex;flex-wrap:wrap;gap:8px}.ofi-b2-tutorial-modal-meta[hidden],.ofi-b2-tutorial-modal-details p[hidden],.ofi-b2-tutorial-modal-external[hidden]{display:none!important}.ofi-b2-tutorial-modal-meta span{display:inline-flex;align-items:center;border:1px solid var(--ofi-core-border,#dfe8f1);border-radius:999px;background:#f8fafc;color:var(--ofi-core-muted,#64748b);padding:6px 9px;font-size:12px;font-weight:800}
.ofi-b2-tutorial-modal-external{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;border-radius:11px;background:var(--ofi-core-title,#0f2f4a);color:#fff!important;text-decoration:none!important;padding:10px 13px;font-size:13px;font-weight:900}.ofi-b2-tutorial-modal-external svg{width:15px;height:15px}
.ofi-b2-tutorial-modal-launcher{max-width:880px;margin:0 auto}.ofi-b2-tutorial-modal-launcher-button{appearance:none;-webkit-appearance:none;width:100%;display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(240px,.8fr);padding:0;border:1px solid var(--ofi-core-border,#dfe8f1);border-radius:var(--ofi-core-radius,22px);overflow:hidden;background:var(--ofi-core-card-bg,#fff);box-shadow:0 16px 42px rgba(15,23,42,.09);text-align:left;color:inherit;cursor:pointer}.ofi-b2-tutorial-modal-launcher-media{position:relative;min-height:260px;display:grid;place-items:center;background:linear-gradient(135deg,#0f172a,#1e3a8a);overflow:hidden}.ofi-b2-tutorial-modal-launcher-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ofi-b2-tutorial-modal-launcher-media>svg{width:52px;height:52px;color:#fff}.ofi-b2-tutorial-modal-launcher-media i{position:relative;z-index:1;width:64px;height:64px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ofi-core-accent,#0f9f93);box-shadow:0 14px 34px rgba(2,12,27,.3)}.ofi-b2-tutorial-modal-launcher-media i svg{width:25px;height:25px}.ofi-b2-tutorial-modal-launcher-copy{display:flex;flex-direction:column;justify-content:center;padding:26px}.ofi-b2-tutorial-modal-launcher-copy em{color:var(--ofi-core-accent,#0f9f93);font-size:12px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.ofi-b2-tutorial-modal-launcher-copy strong{margin:8px 0;color:var(--ofi-core-title,#0f2f4a);font-size:24px;line-height:1.2}.ofi-b2-tutorial-modal-launcher-copy small{color:var(--ofi-core-body,#475569);font-size:15px;line-height:1.6}.ofi-b2-tutorial-modal-launcher-copy b{align-self:flex-start;margin-top:18px;border-radius:999px;background:var(--ofi-core-accent,#0f9f93);color:#fff;padding:9px 13px;font-size:13px;font-weight:900}
body.ofi-b2-tutorial-modal-open{overscroll-behavior:none}
@keyframes ofiTutorialModalIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:720px){.ofi-b2-tutorial-modal{align-items:stretch;padding:0}.ofi-b2-tutorial-modal-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:0}.ofi-b2-tutorial-modal-head{padding:16px 16px 13px}.ofi-b2-tutorial-modal-close{width:40px;height:40px}.ofi-b2-tutorial-modal-player{padding:14px 14px 0}.ofi-b2-tutorial-modal-details{grid-template-columns:1fr;padding:13px 16px 18px}.ofi-b2-tutorial-modal-external{justify-self:start}.ofi-b2-tutorial-modal-launcher-button{grid-template-columns:1fr}.ofi-b2-tutorial-modal-launcher-media{min-height:210px}.ofi-b2-tutorial-modal-launcher-copy{padding:20px}.ofi-b2-tutorial-modal-launcher-copy strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.ofi-b2-tutorial-modal-dialog{animation:none!important}}
