/* Open editorial layout on a limestone-toned band, not an inset card. */
.home-faq.home-section{position:relative;padding:76px 0 68px;background:linear-gradient(140deg,#e8ece3 0%,#eeefe7 52%,#e9ece3 100%);color:var(--black);isolation:isolate}
.home-process:has(+.home-faq){padding-bottom:38px}
/* A fine architectural cut separates the paper and stone surfaces. */
.home-faq:before{content:"";position:absolute;inset:-1px 0 auto;height:28px;background:var(--paper);clip-path:polygon(0 0,100% 0,100% 8%,0 100%);pointer-events:none}
.home-faq:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#8ba18c45,transparent);pointer-events:none}
.home-faq .home-faq-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.13fr);align-items:start;gap:90px;width:min(calc(100% - 96px),var(--container));padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.home-faq-copy{min-width:0;padding-top:8px}
.home-faq .nexo-eyebrow{font-size:10px;letter-spacing:.2em;color:#53684f;margin-bottom:26px}
.home-faq .nexo-eyebrow:after{width:48px;background:#9caf9a}
.home-faq .nexo-title{font-size:clamp(38px,3.8vw,56px);line-height:1.04;letter-spacing:-.052em;margin:0 0 26px;max-width:550px;overflow-wrap:anywhere}
.home-faq .nexo-title span{display:block;background-image:var(--text-gradient)}
.home-faq .nexo-lead{font-size:15px;line-height:1.8;color:#576851;max-width:385px;margin:0 0 28px}
.home-faq-copy .nexo-btn{position:relative;isolation:isolate;overflow:hidden;min-height:48px;font-size:13px;gap:28px;max-width:100%;overflow-wrap:anywhere;background:transparent;border-color:#95aa95;color:#184d32;box-shadow:none}
.home-faq-copy .nexo-btn:before{content:"";position:absolute;inset:-1px;border-radius:inherit;z-index:-1;background:linear-gradient(110deg,#0d704e,#064332);opacity:0;transition:opacity .3s}
.home-faq-copy .nexo-btn:is(:hover,:focus-visible){background:transparent;color:white;border-color:#2e8b5d;box-shadow:none;transform:none}
.home-faq-copy .nexo-btn:is(:hover,:focus-visible):before{opacity:1}
.home-faq-list{display:grid;gap:0;min-width:0;border-top:1px solid #a6b7a1}
.nexo-faq.nexo-faq-item,.home-faq .nexo-faq.nexo-faq-item{position:relative;min-width:0;margin:0;border:0;border-bottom:1px solid #afbeab;border-radius:0;background:transparent;color:#142d1e;box-shadow:none;transition:border-color .25s}
.nexo-faq-item>summary,.home-faq .nexo-faq-item>summary{display:grid;grid-template-columns:24px minmax(0,1fr) 38px;gap:16px;align-items:center;padding:24px 0;min-height:86px;font-size:17px;font-weight:500;line-height:1.45;list-style:none;cursor:pointer}
.nexo-faq-item>summary:after{display:none;content:none}
.nexo-faq-item>summary::-webkit-details-marker{display:none}
.nexo-faq-index{font-size:11px;letter-spacing:.04em;font-weight:400;font-variant-numeric:tabular-nums;color:#617d5d;transition:color .25s}
.nexo-faq-question{overflow-wrap:anywhere;transition:color .25s}
.nexo-faq-item .nexo-faq-toggle{width:38px;height:38px;border-color:#98b29a;color:#215d3d;background:transparent;cursor:inherit;flex-shrink:0}
.nexo-faq-toggle svg{display:block;width:20px;height:20px}
.nexo-faq-plus{transform-origin:10px 10px;transition:opacity .25s,transform .3s}
.nexo-faq-item[open] .nexo-faq-plus{opacity:0;transform:rotate(90deg)}
.nexo-faq-item[open],.home-faq .nexo-faq-item[open]{background:transparent;border-color:#68946e;box-shadow:none}
.nexo-faq-item[open] .nexo-faq-question,.nexo-faq-item[open] .nexo-faq-index{color:#08633f}
.nexo-faq-answer{margin:0 58px 26px 40px;padding:0 0 0 18px;border:0;border-left:1px solid #4f9367}
.nexo-faq-item .nexo-faq-answer p{padding:0;margin:0;font-size:14px;line-height:1.85;color:#52654d;max-width:560px;overflow-wrap:anywhere}
.nexo-faq-item[open] .nexo-faq-answer{animation:nexo-faq-answer-in .25s ease both}
.nexo-faq-item>summary:focus-visible,.home-faq .nexo-faq-item>summary:focus-visible{outline:2px solid #087347;outline-offset:5px;border-radius:0}
.nexo-faq-item>summary:focus-visible .nexo-faq-toggle{color:white;border-color:transparent}
.nexo-faq-item>summary:focus-visible .nexo-faq-toggle:before{opacity:1}
@media(hover:hover){.nexo-faq-item:hover,.home-faq .nexo-faq-item:hover{background:transparent;border-color:#68946e}.nexo-faq-item>summary:hover .nexo-faq-question{color:#08633f}.nexo-faq-item>summary:hover .nexo-faq-toggle{color:white;border-color:transparent}.nexo-faq-item>summary:hover .nexo-faq-toggle:before{opacity:1}}
@keyframes nexo-faq-answer-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
/* Dark remains an editorial full-width option, never a rounded box. */
.home-faq.nexo-section--dark{background:var(--dark-gradient);color:white}
.home-faq.nexo-section--dark .nexo-title span{background-image:var(--text-gradient-dark)}
.home-faq.nexo-section--dark .nexo-lead,.home-faq.nexo-section--dark .nexo-eyebrow{color:#c4d8ca}
.nexo-section--dark .home-faq-list{border-color:#8cae9080}
.nexo-section--dark .nexo-faq.nexo-faq-item{color:#f2f7f0;border-color:#8cae9066}
.nexo-section--dark .nexo-faq-index,.nexo-section--dark .nexo-faq-item .nexo-faq-answer p{color:#c4d8ca}
.nexo-section--dark .nexo-faq-item .nexo-faq-toggle{color:#d8e9d8;border-color:#8aa98c}
.nexo-section--dark .nexo-faq-item[open] .nexo-faq-question,.nexo-section--dark .nexo-faq-item[open] .nexo-faq-index,.nexo-section--dark .nexo-faq-item>summary:hover .nexo-faq-question{color:#b7e9d1}
.home-faq.nexo-section--dark .home-faq-copy .nexo-btn{color:#e1efe3;border-color:#a4bca5}
.home-faq.nexo-section--dark :focus-visible{outline-color:#b7e9d1}
@media(max-width:1150px){.home-faq .home-faq-panel{gap:48px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.home-faq .nexo-title{font-size:43px}.nexo-faq-item>summary,.home-faq .nexo-faq-item>summary{font-size:16px;gap:14px}.nexo-faq-answer{margin-left:38px}}
@media(max-width:900px){.home-faq.home-section{padding:64px 0 58px}.home-faq .home-faq-panel{width:min(calc(100% - 40px),var(--container));grid-template-columns:1fr;gap:36px}.home-faq-copy{padding:0}.home-faq .nexo-title{max-width:650px}.home-faq .nexo-title span{display:inline}.home-faq .nexo-lead{max-width:520px}.home-faq .nexo-eyebrow{margin-bottom:22px}}
@media(max-width:600px){.home-process:has(+.home-faq){padding-bottom:30px}.home-faq.home-section{padding:54px 0 46px}.home-faq:before{height:18px}.home-faq .home-faq-panel{gap:30px}.home-faq .nexo-title{font-size:clamp(34px,8.3vw,43px);margin-bottom:20px}.home-faq .nexo-eyebrow{font-size:9px;letter-spacing:.17em}.home-faq .nexo-lead{font-size:14px;margin-bottom:22px}.home-faq-copy .nexo-btn{font-size:12px;padding:12px 19px;gap:22px}.nexo-faq-item>summary,.home-faq .nexo-faq-item>summary{grid-template-columns:18px minmax(0,1fr) 34px;gap:12px;padding:20px 0;min-height:76px;font-size:15px}.nexo-faq-item .nexo-faq-toggle{width:34px;height:34px}.nexo-faq-index{font-size:10px}.nexo-faq-answer{margin:0 46px 22px 30px;padding-left:14px}.nexo-faq-item .nexo-faq-answer p{font-size:13px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.nexo-faq-item,.nexo-faq-question,.nexo-faq-index,.nexo-faq-plus,.home-faq-copy .nexo-btn:before{transition:none!important}.nexo-faq-item[open] .nexo-faq-answer{animation:none!important}}
@media(forced-colors:active){.home-faq.home-section{background:Canvas!important;color:CanvasText!important}.home-faq .home-faq-panel{background:none;box-shadow:none}.nexo-faq.nexo-faq-item,.home-faq-list{color:CanvasText!important;border-color:CanvasText}.home-faq .nexo-lead,.home-faq .nexo-eyebrow,.nexo-faq-index,.nexo-faq-question,.nexo-faq-item .nexo-faq-answer p{color:CanvasText!important}.nexo-faq-item .nexo-faq-toggle{color:ButtonText!important;border-color:ButtonText}.nexo-faq-toggle:before{display:none}.nexo-faq-answer{border-color:CanvasText}}
