/* FAIVO FAQ — dedicated /faivo-faq/ design */
:root{
  --faivo-faq-green:#0f8179;
  --faivo-faq-green-dark:#086b65;
  --faivo-faq-pale:#e8f4f0;
  --faivo-faq-pale-2:#f4faf7;
  --faivo-faq-line:#d7e9e4;
  --faivo-faq-ink:#263c37;
  --faivo-faq-muted:#667a74;
  --faivo-faq-white:#fff;
}

.faivo-faq-page{background:#fff;color:var(--faivo-faq-ink)}
.faivo-faq-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.faivo-faq-page h1,.faivo-faq-page h2,.faivo-faq-page h3{font-family:Lora,Georgia,'Times New Roman',serif;color:var(--faivo-faq-ink)}
.faivo-faq-page a{text-decoration:none}

.faivo-faq-hero{padding:32px 0 58px;background:linear-gradient(135deg,#e8f4f0 0%,#f4faf7 58%,#fff 100%);border-bottom:1px solid var(--faivo-faq-line)}
.faivo-faq-breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:38px;font-size:13px;color:#71847e}
.faivo-faq-breadcrumbs a{color:var(--faivo-faq-green)}
.faivo-faq-breadcrumbs strong{color:#4f665f}
.faivo-faq-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:56px;align-items:end}
.faivo-faq-kicker{display:block;margin-bottom:10px;color:var(--faivo-faq-green);font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.12em}
.faivo-faq-hero h1{max-width:760px;margin:0;font-size:clamp(42px,5vw,64px);line-height:1.02;letter-spacing:-.035em}
.faivo-faq-lead{max-width:720px;margin:20px 0 0;color:#536a63;font-size:17px;line-height:1.75}
.faivo-faq-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.faivo-faq-trust span{padding:8px 12px;border:1px solid #cce4de;border-radius:999px;background:rgba(255,255,255,.72);color:#42645d;font-size:12px;font-weight:700}
.faivo-faq-hero-card{padding:24px;border:1px solid #cfe6e0;border-radius:12px;background:rgba(255,255,255,.82);box-shadow:0 18px 38px rgba(17,79,72,.08)}
.faivo-faq-hero-card-label{display:block;margin-bottom:8px;color:var(--faivo-faq-green);font-size:11px;font-weight:800;letter-spacing:.11em}
.faivo-faq-hero-card strong{display:block;font-family:Lora,Georgia,serif;font-size:23px;color:#29433d}
.faivo-faq-hero-card p{margin:10px 0 15px;color:#63766f;font-size:13px;line-height:1.65}
.faivo-faq-hero-card a{color:var(--faivo-faq-green);font-size:13px;font-weight:800}

.faivo-faq-main{padding:42px 0 68px}
.faivo-faq-search-wrap{display:flex;align-items:center;gap:20px;margin-bottom:32px}
.faivo-faq-search{display:flex;align-items:center;flex:1;min-height:56px;padding:0 18px;border:1px solid #cee3de;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(21,92,83,.06)}
.faivo-faq-search svg{width:20px;height:20px;flex:0 0 20px;margin-right:12px;fill:none;stroke:var(--faivo-faq-green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.faivo-faq-search input{width:100%;padding:0;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#314c46;font-size:15px}
.faivo-faq-search input::placeholder{color:#85968f}
.faivo-faq-search-count{flex:0 0 auto;color:#70827c;font-size:12px;font-weight:700}

.faivo-faq-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:36px;align-items:start}
.faivo-faq-nav-card{position:sticky;top:92px;padding:18px;border:1px solid var(--faivo-faq-line);border-radius:10px;background:#fff}
.faivo-faq-nav-title{display:block;margin:0 8px 11px;color:#7c8b86;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.faivo-faq-nav{display:flex;flex-direction:column;gap:4px}
.faivo-faq-nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border-radius:7px;color:#4c625c;font-size:13px;line-height:1.35;font-weight:700;transition:.18s ease}
.faivo-faq-nav a small{display:flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:#eff7f4;color:#6b817a;font-size:10px}
.faivo-faq-nav a:hover,.faivo-faq-nav a.is-active{background:linear-gradient(135deg,#e8f4f0,#f4faf7);color:var(--faivo-faq-green-dark)}
.faivo-faq-nav a.is-active small{background:#fff;color:var(--faivo-faq-green)}
.faivo-faq-local-help{margin-top:18px;padding:15px;border-radius:8px;background:linear-gradient(135deg,#e8f4f0,#f4faf7)}
.faivo-faq-local-help span{display:block;color:#6c817a;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.faivo-faq-local-help strong{display:block;margin-top:4px;font-family:Lora,Georgia,serif;font-size:16px;color:#2e4a44}
.faivo-faq-local-help a{display:inline-block;margin-top:8px;color:var(--faivo-faq-green);font-size:12px;font-weight:800}

.faivo-faq-content{min-width:0}
.faivo-faq-group{scroll-margin-top:104px;margin-bottom:38px}
.faivo-faq-group:last-of-type{margin-bottom:0}
.faivo-faq-group-head{display:flex;align-items:flex-start;gap:15px;margin-bottom:14px}
.faivo-faq-group-number{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;margin-top:1px;border-radius:7px;background:var(--faivo-faq-pale);color:var(--faivo-faq-green);font-size:11px;font-weight:900}
.faivo-faq-group-head h2{margin:0;font-size:25px;line-height:1.25;letter-spacing:-.015em}
.faivo-faq-group-head p{margin:3px 0 0;color:#83928d;font-size:11px}
.faivo-faq-accordion{border-top:1px solid var(--faivo-faq-line)}
.faivo-faq-item{border-bottom:1px solid var(--faivo-faq-line);background:#fff}
.faivo-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;padding:14px 4px;cursor:pointer;list-style:none}
.faivo-faq-item summary::-webkit-details-marker{display:none}
.faivo-faq-item h3{margin:0;font-size:16px;line-height:1.45;font-weight:700;letter-spacing:-.005em}
.faivo-faq-plus{position:relative;width:24px;height:24px;flex:0 0 24px;border:1px solid #d2e5e0;border-radius:50%;background:#f8fcfa}
.faivo-faq-plus:before,.faivo-faq-plus:after{content:"";position:absolute;top:50%;left:50%;width:9px;height:1.5px;background:var(--faivo-faq-green);transform:translate(-50%,-50%);transition:.18s ease}
.faivo-faq-plus:after{transform:translate(-50%,-50%) rotate(90deg)}
.faivo-faq-item[open] .faivo-faq-plus:after{transform:translate(-50%,-50%) rotate(0);opacity:0}
.faivo-faq-item[open] summary h3{color:var(--faivo-faq-green-dark)}
.faivo-faq-answer{padding:0 48px 18px 4px;color:#5e716b;font-size:14px;line-height:1.75}
.faivo-faq-answer p{margin:0 0 10px}
.faivo-faq-answer p:last-child,.faivo-faq-answer ul:last-child,.faivo-faq-answer ol:last-child{margin-bottom:0}
.faivo-faq-answer ul,.faivo-faq-answer ol{padding-left:20px}
.faivo-faq-no-results{padding:34px;border:1px dashed #c9dfd9;border-radius:10px;background:#f7fbf9;text-align:center}
.faivo-faq-no-results strong{display:block;font-family:Lora,Georgia,serif;font-size:20px;color:#345149}
.faivo-faq-no-results p{margin:7px 0 0;color:#74847f;font-size:13px}
.faivo-faq-fallback{padding:28px;border:1px solid var(--faivo-faq-line);border-radius:10px}

.faivo-faq-cta{padding:0 0 72px}
.faivo-faq-cta-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:center;padding:32px 36px;border:1px solid #cfe6e0;border-radius:12px;background:linear-gradient(135deg,#e8f4f0 0%,#f4faf7 100%)}
.faivo-faq-cta h2{margin:0;font-size:30px;line-height:1.2}
.faivo-faq-cta-copy p,.faivo-faq-cta-card>div>p{max-width:720px;margin:8px 0 0;color:#5c716a;font-size:14px;line-height:1.7}
.faivo-faq-cta-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.faivo-faq-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border-radius:7px;font-size:12px;font-weight:800}
.faivo-faq-btn-primary{background:var(--faivo-faq-green);color:#fff!important;border:1px solid var(--faivo-faq-green)}
.faivo-faq-btn-primary:hover{background:var(--faivo-faq-green-dark)}
.faivo-faq-btn-secondary{border:1px solid #bcdad3;background:#fff;color:var(--faivo-faq-green)!important}

@media(max-width:1024px){
  .faivo-faq-shell{width:min(100%,calc(100% - 32px))}
  .faivo-faq-hero-grid{grid-template-columns:minmax(0,1fr) 290px;gap:30px}
  .faivo-faq-layout{grid-template-columns:220px minmax(0,1fr);gap:26px}
}

@media(max-width:767.98px){
  .faivo-faq-shell{width:calc(100% - 24px)}
  .faivo-faq-hero{padding:22px 0 34px}
  .faivo-faq-breadcrumbs{margin-bottom:24px;font-size:11px}
  .faivo-faq-hero-grid{grid-template-columns:1fr;gap:22px}
  .faivo-faq-hero h1{font-size:36px;line-height:1.06}
  .faivo-faq-lead{margin-top:14px;font-size:14px;line-height:1.65}
  .faivo-faq-trust{margin-top:16px}
  .faivo-faq-hero-card{padding:18px}
  .faivo-faq-main{padding:26px 0 44px}
  .faivo-faq-search-wrap{display:block;margin-bottom:24px}
  .faivo-faq-search{min-height:50px}
  .faivo-faq-search-count{display:block;margin-top:8px;text-align:right;font-size:10px}
  .faivo-faq-layout{display:block}
  .faivo-faq-nav-card{position:static;padding:0;border:0;background:transparent;margin-bottom:26px;overflow:hidden}
  .faivo-faq-nav-title,.faivo-faq-local-help{display:none}
  .faivo-faq-nav{flex-direction:row;gap:7px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
  .faivo-faq-nav::-webkit-scrollbar{display:none}
  .faivo-faq-nav a{flex:0 0 auto;padding:9px 11px;border:1px solid #d8e8e4;background:#fff;white-space:nowrap}
  .faivo-faq-nav a small{display:none}
  .faivo-faq-group{margin-bottom:30px;scroll-margin-top:72px}
  .faivo-faq-group-head{gap:10px;margin-bottom:10px}
  .faivo-faq-group-number{width:30px;height:30px;flex-basis:30px}
  .faivo-faq-group-head h2{font-size:21px}
  .faivo-faq-item summary{min-height:58px;padding:12px 2px;gap:12px}
  .faivo-faq-item h3{font-size:14px}
  .faivo-faq-plus{width:22px;height:22px;flex-basis:22px}
  .faivo-faq-answer{padding:0 34px 16px 2px;font-size:13px}
  .faivo-faq-cta{padding-bottom:44px}
  .faivo-faq-cta-card{grid-template-columns:1fr;gap:20px;padding:24px 20px}
  .faivo-faq-cta h2{font-size:25px}
  .faivo-faq-cta-actions{justify-content:flex-start}
}


/* NukeViet integration — keep WordPress FAQ design intact */
body.faivo-faq-body .faivo-nv-third-nav,
body.faivo-faq-body .breadcrumbs-wrap,
body.faivo-faq-body .faivo-nv-body > .wraper > .row,
body.faivo-faq-body .faivo-nv-body > .container > .row{display:none!important}
body.faivo-faq-body .faivo-nv-body,
body.faivo-faq-body .faivo-nv-body #body,
body.faivo-faq-body .faivo-nv-body > .wraper,
body.faivo-faq-body .faivo-nv-body #body > .container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.faivo-faq-body .faivo-nv-header{border-bottom:0!important;box-shadow:none!important}
body.faivo-faq-body .faivo-faq-page{margin:0!important}
body.faivo-faq-body .faivo-faq-footer{margin-top:0!important}
