.ofi-faq-section{width:100%;padding:76px 24px 82px;background:linear-gradient(180deg,#f7f9fc 0%,#fff 100%);font-family:Arial,Helvetica,sans-serif;color:#102b52}
.ofi-faq-section *{box-sizing:border-box}
.ofi-faq-section a,.ofi-faq-section a:hover,.ofi-faq-section a:focus{text-decoration:none!important}
.ofi-faq-container{width:min(1180px,100%);margin:0 auto}
.ofi-faq-heading{text-align:center;max-width:760px;margin:0 auto 36px}
.ofi-faq-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#b17c1d;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
.ofi-faq-eyebrow span{display:inline-block;width:25px;height:2px;background:#d6a342;border-radius:3px}
.ofi-faq-heading h2{font-size:clamp(30px,3vw,43px);line-height:1.15;color:#102b52;font-weight:800;letter-spacing:-.7px;margin:0 0 13px;padding:0}
.ofi-faq-heading p{font-size:16px;line-height:1.7;color:#63748a;margin:0 auto;max-width:690px}
.ofi-faq-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:28px;align-items:start}
.ofi-faq-list{display:flex;flex-direction:column;gap:11px}
.ofi-faq-item{border:1px solid #e3e9f0;border-radius:12px;background:#fff;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}
.ofi-faq-item.is-open{border-color:#d7c18f;box-shadow:0 8px 22px rgba(15,45,78,.055)}
.ofi-faq-question-wrap{margin:0;padding:0}
.ofi-faq-question{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:19px 20px;border:0;background:#fff;color:#173557;text-align:left;font:700 15px/1.45 Arial,Helvetica,sans-serif;cursor:pointer}
.ofi-faq-question:hover{background:#fffdf8}
.ofi-faq-question-text{flex:1}
.ofi-faq-toggle{display:flex;align-items:center;justify-content:center;width:29px;height:29px;flex:0 0 29px;border-radius:50%;background:#f3f6fa;border:1px solid #e5eaf0;color:#b17c1d;font-size:21px;font-weight:400;line-height:1;transition:transform .2s ease,background .2s ease}
.ofi-faq-item.is-open .ofi-faq-toggle{background:#fff3d7;border-color:#f0dfb8}
.ofi-faq-answer{padding:0 20px 19px}
.ofi-faq-answer[hidden]{display:none!important}
.ofi-faq-answer p{margin:0;color:#68798c;font-size:13px;line-height:1.75}
.ofi-faq-side{position:relative;padding:28px 25px 24px;border-radius:16px;background:linear-gradient(145deg,#0a2d51 0%,#174a76 100%);color:#fff;overflow:hidden;box-shadow:0 14px 30px rgba(11,43,76,.12)}
.ofi-faq-side:after{content:"";position:absolute;width:170px;height:170px;border:1px solid rgba(242,204,124,.18);border-radius:50%;right:-70px;top:-75px;box-shadow:0 0 0 20px rgba(242,204,124,.035),0 0 0 40px rgba(242,204,124,.025)}
.ofi-faq-side-icon{display:flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:14px;background:linear-gradient(135deg,#f0cd7d,#c38d28);color:#102b52;font-size:28px;font-weight:800;margin-bottom:21px}
.ofi-faq-side h3{position:relative;z-index:1;color:#fff;font-size:22px;line-height:1.25;font-weight:800;margin:0 0 11px;padding:0}
.ofi-faq-side p{position:relative;z-index:1;color:rgba(255,255,255,.82);font-size:13px;line-height:1.7;margin:0 0 21px}
.ofi-faq-cta{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:13px 14px;border-radius:9px;background:linear-gradient(135deg,#f0cd7d,#c38d28);color:#102b52!important;font-size:12px;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}
.ofi-faq-cta:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.15)}
.ofi-faq-cta span{font-size:18px}
.ofi-faq-side small{position:relative;z-index:1;display:block;margin-top:18px;color:rgba(255,255,255,.62);font-size:10px;line-height:1.6}
@media(max-width:850px){.ofi-faq-section{padding:62px 20px}.ofi-faq-layout{grid-template-columns:1fr;gap:20px}.ofi-faq-side{max-width:none}.ofi-faq-side h3{font-size:20px}}
@media(max-width:560px){.ofi-faq-section{padding:49px 16px 55px}.ofi-faq-heading{margin-bottom:25px}.ofi-faq-heading h2{font-size:29px}.ofi-faq-heading p{font-size:14px;line-height:1.6}.ofi-faq-question{padding:16px 14px;font-size:14px;gap:12px}.ofi-faq-answer{padding:0 14px 16px}.ofi-faq-answer p{font-size:13px}.ofi-faq-side{padding:23px 19px}.ofi-faq-side h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.ofi-faq-section *{transition:none!important;animation:none!important}}

/* v1.0.2 compatibility fix: keep FAQ question text readable with theme hover/focus rules */
.ofi-faq-section .ofi-faq-item .ofi-faq-question,
.ofi-faq-section .ofi-faq-item .ofi-faq-question:link,
.ofi-faq-section .ofi-faq-item .ofi-faq-question:visited,
.ofi-faq-section .ofi-faq-item .ofi-faq-question:hover,
.ofi-faq-section .ofi-faq-item .ofi-faq-question:focus,
.ofi-faq-section .ofi-faq-item .ofi-faq-question:active {
  color: #173557 !important;
  background: #ffffff !important;
  opacity: 1 !important;
  text-decoration: none !important;
}
.ofi-faq-section .ofi-faq-item .ofi-faq-question-text {
  color: #173557 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.ofi-faq-section .ofi-faq-item .ofi-faq-toggle {
  color: #a87517 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.ofi-faq-section .ofi-faq-item.is-open .ofi-faq-question,
.ofi-faq-section .ofi-faq-item.is-open .ofi-faq-question:hover,
.ofi-faq-section .ofi-faq-item.is-open .ofi-faq-question:focus {
  color: #173557 !important;
  background: #fffdf8 !important;
}
