/* HaiRakaDee Premium FAQ — v1.4 | Scoped to #faq to avoid CMS / page collisions */
#faq.faq-pro {scroll-margin-top:94px;padding-top:52px;padding-bottom:54px;}
#faq .faq-pro-heading {display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;padding-bottom:23px;border-bottom:1px solid #dce7f7;}
#faq .faq-pro-heading-copy {max-width:850px;min-width:0;}
#faq .faq-pro-eyebrow {display:inline-flex;align-items:center;gap:11px;color:#0c4db8;font-size:12px;letter-spacing:.015em;font-weight:850;margin-bottom:10px;}
#faq .faq-pro-eyebrow-mark {display:inline-block;width:24px;height:3px;border-radius:999px;background:linear-gradient(90deg,#0f67fa,#20c477);}
#faq .faq-pro-overline {font-size:10px;letter-spacing:.15em;color:#8191ab;font-weight:800;}
#faq .faq-pro-heading h2 {margin:0 0 8px;font-size:clamp(25px,2.9vw,38px);letter-spacing:-.025em;line-height:1.3;color:#0e2854;font-weight:850;}
#faq .faq-pro-heading p {margin:0;max-width:810px;font-size:14px;line-height:1.75;color:#657791;}
#faq .faq-pro-heading-note {display:flex;align-items:center;gap:10px;white-space:nowrap;padding:0 0 4px 20px;border-left:1px solid #dbe6f4;color:#143d78;}
#faq .faq-pro-heading-note strong {font:800 42px/1 system-ui,sans-serif;letter-spacing:-.06em;}
#faq .faq-pro-heading-note span {font-size:11px;font-weight:780;line-height:1.5;color:#647796;}
#faq .faq-pro-layout {display:grid;grid-template-columns:minmax(280px,.81fr) minmax(0,1.49fr);gap:17px;align-items:stretch;}
#faq .faq-pro-aside {position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;padding:23px 26px 21px;border-radius:24px;background:linear-gradient(155deg,#092547 0%,#0c3465 60%,#114c8a 100%);border:1px solid rgba(255,255,255,.13);box-shadow:0 19px 46px rgba(8,39,82,.17);}
#faq .faq-pro-aside::before {content:"";position:absolute;z-index:-1;right:-120px;top:-100px;width:310px;height:310px;border-radius:50%;border:1px solid rgba(181,216,255,.10);box-shadow:0 0 0 45px rgba(181,216,255,.025),0 0 0 90px rgba(181,216,255,.018);}
#faq .faq-pro-aside::after {content:"";position:absolute;z-index:-1;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#24d39b,#3887ff,transparent);}
#faq .faq-pro-aside-top {display:flex;justify-content:space-between;align-items:center;gap:12px;}
#faq .faq-pro-micro {display:inline-flex;align-items:center;gap:9px;font-weight:800;letter-spacing:.17em;font-size:10px;color:#b1d1ff;}
#faq .faq-pro-pulse {width:6px;height:6px;border-radius:50%;background:#30d49d;box-shadow:0 0 0 4px rgba(48,212,157,.13);}
#faq .faq-pro-aside-number {font:700 11px/1.3 system-ui,sans-serif;color:#7799c9;letter-spacing:.09em;}
#faq .faq-pro-brand-icon {display:grid;place-items:center;width:53px;height:53px;border:1px solid rgba(175,212,255,.18);border-radius:16px;margin:18px 0 12px;background:rgba(255,255,255,.07);color:#a9e5e0;}
#faq .faq-pro-aside h3 {color:#fff;font-size:clamp(22px,2.05vw,27px);line-height:1.35;letter-spacing:-.02em;margin:0 0 11px;font-weight:850;}
#faq .faq-pro-aside h3 span {color:#86d6fe;}
#faq .faq-pro-intro {color:#acc2dc;font-size:13px;line-height:1.85;margin:0 0 13px;}
#faq .faq-pro-steps {list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid rgba(201,223,250,.14);}
#faq .faq-pro-steps li {display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid rgba(201,223,250,.14);align-items:start;}
#faq .faq-pro-step-no {font:800 12px/1.7 system-ui,sans-serif;color:#4ee2af;letter-spacing:.06em;}
#faq .faq-pro-steps strong {display:block;font-size:13px;color:#eef6ff;line-height:1.55;font-weight:790;}
#faq .faq-pro-steps small {display:block;font-size:12px;line-height:1.6;color:#a9c1df;margin-top:2px;}
#faq .faq-pro-contact {margin-top:auto;padding-top:12px;display:grid;gap:10px;}
#faq .faq-pro-contact-caption {display:flex;align-items:center;gap:8px;font-size:12px;color:#a7bfdb;}
#faq .faq-pro-availability {width:7px;height:7px;border-radius:50%;background:#35de9a;flex:0 0 auto;}
#faq .faq-pro-line,#faq .faq-pro-call {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;text-decoration:none;border-radius:13px;font-size:13px;font-weight:760;transition:background .2s ease,transform .2s ease,border-color .2s ease;}
#faq .faq-pro-line {padding:10px 15px;background:#18ba72;color:#062e24;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 18px rgba(0,0,0,.10);}
#faq .faq-pro-line strong {font-weight:900;}
#faq .faq-pro-line:hover {background:#37d28d;transform:translateY(-1px);}
#faq .faq-pro-call {padding:10px 15px;justify-content:center;background:rgba(255,255,255,.075);border:1px solid rgba(215,232,255,.16);color:#e7f4ff;}
#faq .faq-pro-call:hover {background:rgba(255,255,255,.14);}
#faq .faq-pro-main {min-width:0;overflow:hidden;border:1px solid #dde8f7;border-radius:24px;background:#fff;box-shadow:0 17px 45px rgba(18,63,135,.075);}
#faq .faq-pro-main-top {display:flex;justify-content:space-between;gap:16px;align-items:center;padding:24px 26px 18px;}
#faq .faq-pro-main-eyebrow {display:block;font:800 10px/1.4 system-ui,sans-serif;letter-spacing:.16em;color:#1873d4;margin-bottom:9px;}
#faq .faq-pro-main-top h3 {font-size:clamp(19px,2vw,23px);color:#153a6f;line-height:1.38;margin:0 0 4px;font-weight:850;}
#faq .faq-pro-main-top p {font-size:12px;margin:0;color:#8493a7;line-height:1.6;}
#faq .faq-pro-mini-symbol {display:grid;place-items:center;flex:0 0 41px;width:41px;height:41px;border-radius:13px;font:900 19px/1 system-ui,sans-serif;color:#2372d4;border:1px solid #dcecff;background:#f1f7ff;}
#faq .faq-pro-items {padding:0 26px;}
#faq .faq-item {padding:0;border-top:1px solid #e7edf6;border-bottom:0;position:relative;}
#faq .faq-item:last-child {border-bottom:1px solid #e7edf6;}
#faq .faq-item h4 {padding:0;margin:0;line-height:1.5;}
#faq .faq-question {width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:13px;background:transparent;border:0;padding:18px 0;cursor:pointer;text-align:left;font:inherit;color:#193d6a;}
#faq .faq-question:focus-visible {outline:3px solid #5895ed;outline-offset:-3px;border-radius:8px;}
#faq .faq-pro-index {font:800 12px/1.5 system-ui,sans-serif;color:#7d9abd;letter-spacing:.04em;}
#faq .faq-pro-q-label {font-weight:800;font-size:14px;line-height:1.6;color:#213b5c;transition:color .2s ease;}
#faq .faq-question:hover .faq-pro-q-label {color:#075bc5;}
#faq .faq-pro-plus {position:relative;display:inline-block;width:29px;height:29px;border-radius:10px;background:#eff5ff;border:1px solid #dfebfa;transition:background .25s ease,border-color .25s ease;}
#faq .faq-pro-plus::before,#faq .faq-pro-plus::after {content:"";position:absolute;left:50%;top:50%;background:#2265bd;border-radius:99px;transform:translate(-50%,-50%);transition:transform .22s ease,background .22s ease;}
#faq .faq-pro-plus::before {width:11px;height:2px;}
#faq .faq-pro-plus::after {width:2px;height:11px;}
#faq .faq-item.active .faq-pro-index {color:#1574de;}
#faq .faq-item.active .faq-pro-q-label {color:#0755b5;}
#faq .faq-item.active .faq-pro-plus {background:#105ce7;border-color:#105ce7;}
#faq .faq-item.active .faq-pro-plus::before,#faq .faq-item.active .faq-pro-plus::after {background:#fff;}
#faq .faq-item.active .faq-pro-plus::after {transform:translate(-50%,-50%) rotate(90deg);}
#faq .faq-answer {display:block;padding:0 38px 18px 47px;margin:0;color:#6b7d95;font-size:13px;line-height:1.86;}
#faq .faq-answer[hidden] {display:none !important;}
#faq .faq-answer strong {color:#164785;}
#faq .faq-pro-bottom {display:flex;align-items:center;gap:11px;margin:20px 26px 24px;padding:13px 15px;border-radius:13px;border:1px solid #e5edf8;background:#f6faff;}
#faq .faq-pro-bottom-icon {display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border-radius:8px;background:#ddf8e8;color:#14875e;font-size:14px;font-weight:900;}
#faq .faq-pro-bottom p {font-size:12px;line-height:1.6;color:#637b9e;margin:0;}
#faq .faq-pro-bottom a {font-weight:850;color:#1659bc;text-decoration:none;margin-left:3px;}
#faq .faq-pro-bottom a:hover {text-decoration:underline;}
#faq .faq-pro-line:focus-visible,#faq .faq-pro-call:focus-visible,#faq .faq-pro-bottom a:focus-visible {outline:3px solid #81b7ff;outline-offset:3px;}
@media (max-width:1040px) {
  #faq .faq-pro-layout {grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);}
  #faq .faq-pro-main-top {padding:23px 22px 18px;}
  #faq .faq-pro-items {padding:0 22px;}
  #faq .faq-pro-bottom {margin-inline:22px;}
}
@media (max-width:840px) {
  #faq .faq-pro-layout {grid-template-columns:1fr;}
  #faq .faq-pro-aside {padding:25px;}
  #faq .faq-pro-brand-icon {margin:17px 0 12px;}
  #faq .faq-pro-steps {grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:0;}
  #faq .faq-pro-steps li {border:1px solid rgba(201,223,250,.14);border-radius:12px;padding:12px;grid-template-columns:1fr;gap:5px;}
  #faq .faq-pro-contact {margin-top:14px;grid-template-columns:1fr 1fr;}
  #faq .faq-pro-contact-caption {grid-column:1 / -1;}
}
@media (max-width:600px) {
  #faq.faq-pro {padding-top:37px;padding-bottom:42px;}
  #faq .faq-pro-heading {align-items:flex-start;margin-bottom:16px;gap:10px;padding-bottom:18px;}
  #faq .faq-pro-heading h2 {font-size:clamp(23px,6.5vw,29px);}
  #faq .faq-pro-heading p {font-size:13px;line-height:1.7;}
  #faq .faq-pro-heading-note {display:none;}
  #faq .faq-pro-layout {gap:14px;}
  #faq .faq-pro-aside {padding:23px 19px 19px;border-radius:20px;}
  #faq .faq-pro-aside h3 {font-size:24px;}
  #faq .faq-pro-steps {grid-template-columns:1fr;gap:0;border-top:1px solid rgba(201,223,250,.14);}
  #faq .faq-pro-steps li {grid-template-columns:35px minmax(0,1fr);gap:7px;border:0;border-radius:0;border-bottom:1px solid rgba(201,223,250,.14);padding:11px 0;}
  #faq .faq-pro-contact {grid-template-columns:1fr;gap:9px;}
  #faq .faq-pro-contact-caption {grid-column:auto;}
  #faq .faq-pro-main {border-radius:20px;}
  #faq .faq-pro-main-top {padding:21px 18px 17px;}
  #faq .faq-pro-main-top h3 {font-size:19px;}
  #faq .faq-pro-items {padding:0 18px;}
  #faq .faq-question {grid-template-columns:27px minmax(0,1fr) 29px;gap:8px;padding:16px 0;}
  #faq .faq-pro-q-label {font-size:13px;}
  #faq .faq-answer {padding:0 4px 17px 35px;font-size:12.5px;}
  #faq .faq-pro-bottom {margin:17px 18px 19px;padding:12px 13px;}
}
@media (prefers-reduced-motion:reduce) {
  #faq .faq-question *,#faq .faq-pro-line,#faq .faq-pro-call {transition:none !important;}
}
