.hapo-consult-faq{position:relative;box-sizing:border-box;overflow:hidden;padding:68px 24px 115px;background:radial-gradient(ellipse at 80% 100%,rgba(186,255,222,.53),transparent 46%),radial-gradient(ellipse at 0 95%,rgba(214,255,234,.48),transparent 40%),linear-gradient(#fbfffc,#f8fbf9);color:#141414;font-family:Manrope,Arial,sans-serif}
.hapo-consult-faq *{box-sizing:border-box}
.hapo-consult-faq--full{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hapo-consult-faq--container{width:100%}
.hapo-consult-faq__inner{position:relative;max-width:1280px;margin:auto}
.hapo-consult-faq__decor{position:absolute;z-index:0;width:clamp(220px,25vw,430px);height:auto;pointer-events:none;user-select:none}
.hapo-consult-faq__decor--top{top:0;left:0;width:clamp(220px,19vw,320px)}
.hapo-consult-faq__decor--bottom{right:0;bottom:0}
.hapo-consult-faq__decor-trace{fill:none;stroke-dasharray:140 860;stroke-dashoffset:1000;animation:hapo-consult-faq-corner-trace 9s linear infinite}
.hapo-consult-faq__decor-trace:nth-last-of-type(2){animation-delay:-1.2s}
.hapo-consult-faq__decor-trace:nth-last-of-type(1){animation-delay:-2.4s}
@keyframes hapo-consult-faq-corner-trace{to{stroke-dashoffset:0}}
.hapo-consult-faq__header{text-align:center;margin:0 0 54px}
.hapo-consult-faq .hapo-consult-faq__header h2,.hapo-consult-faq .hapo-consult-faq__header h3{margin:0;color:#0d0f0d;font-size:40px;font-weight:800;line-height:1.25}
.hapo-consult-faq__header span{display:block;width:150px;height:4px;margin:20px auto 0;background:#0bcb65}
.hapo-consult-faq__list{display:grid;gap:16px;margin:0;padding:0;list-style:none}
.hapo-consult-faq__item{min-width:0;padding:22px 26px;border:1px solid rgba(25,111,68,.055);border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(22,80,53,.07);transition:transform .48s cubic-bezier(.22,1,.36,1),box-shadow .48s cubic-bezier(.22,1,.36,1),border-color .3s ease}
.hapo-consult-faq__item:hover,.hapo-consult-faq__item:focus-within,.hapo-consult-faq__item:focus-visible{transform:translate3d(0,-3px,0);border-color:rgba(8,196,91,.24);box-shadow:0 16px 34px rgba(18,91,54,.12)}
.hapo-consult-faq__item:focus-visible{outline:3px solid #08bf58;outline-offset:3px}
.hapo-consult-faq .hapo-consult-faq__item h3{margin:0 0 11px;color:#161916;font-size:21px;font-weight:800;line-height:1.35}
.hapo-consult-faq__answer{color:#777f79;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.hapo-consult-faq__answer>*:first-child{margin-top:0}.hapo-consult-faq__answer>*:last-child{margin-bottom:0}
.hapo-consult-faq__answer p{margin:0 0 12px;color:inherit}
.hapo-consult-faq__answer a{color:#087943;text-decoration:underline;text-underline-offset:3px}
.hapo-consult-faq__answer a:focus-visible{outline:2px solid #09bf5c;outline-offset:3px}
.hapo-consult-faq__answer img{display:block;max-width:100%;height:auto;margin:12px 0;border-radius:8px}
.hapo-consult-faq__answer ul,.hapo-consult-faq__answer ol{margin:10px 0;padding-left:22px}
.hapo-consult-faq__empty{text-align:center}
@media(max-width:700px){.hapo-consult-faq{padding:60px 16px 80px}.hapo-consult-faq__decor{width:180px;opacity:.65}.hapo-consult-faq__header{margin-bottom:38px}.hapo-consult-faq .hapo-consult-faq__header h2,.hapo-consult-faq .hapo-consult-faq__header h3{font-size:32px}.hapo-consult-faq__item{padding:20px}.hapo-consult-faq .hapo-consult-faq__item h3{font-size:18px}.hapo-consult-faq__answer{font-size:15px}}
@media(prefers-reduced-motion:reduce){.hapo-consult-faq__item{transition:none}.hapo-consult-faq__item:hover,.hapo-consult-faq__item:focus-within,.hapo-consult-faq__item:focus-visible{transform:none}.hapo-consult-faq__decor-trace{animation:none;stroke-dasharray:none;stroke-opacity:0}}

.hapo-consult-faq--white{background:#fff}

/* Mobile, from the supplied 375px About-page design (2026-10-20): 25.5px title, 80px rule, cards
   25px apart alternating green (16px question, 15px answer, white text) and white (13px copy). */
@media(max-width:700px){
.hapo-consult-faq{padding:47px 16px 66px}
.hapo-consult-faq__header{margin-bottom:33px}
.hapo-consult-faq .hapo-consult-faq__header h2,.hapo-consult-faq .hapo-consult-faq__header h3{font-size:25.5px;line-height:1.3}
.hapo-consult-faq__header span{width:80px;margin-top:5px}
.hapo-consult-faq__list{gap:25px}
.hapo-consult-faq__item{margin:0;padding:14px 16px}
.hapo-consult-faq .hapo-consult-faq__item h3{margin:0 0 6px;font-size:13px;line-height:18px}
.hapo-consult-faq__answer{font-size:13px;line-height:16px}
.hapo-consult-faq__item:nth-child(odd){border-color:transparent;background:linear-gradient(120deg,#11c97b,#079a5e);color:#fff}
.hapo-consult-faq .hapo-consult-faq__item:nth-child(odd) h3{color:#fff;font-size:16px;line-height:21px}
.hapo-consult-faq__item:nth-child(odd) .hapo-consult-faq__answer{color:#fff;font-size:15px;line-height:18px}
}
