.fq-opening-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8rem;align-items:start}.fq-opening h2,.fq-path h2,.fq-main h2,.fq-next h2,.fq-boundary h2{font-size:clamp(2rem,3.2vw,3.55rem);line-height:1.05;letter-spacing:-.045em}.fq-opening h2 em,.fq-path h2 em,.fq-main h2 em,.fq-next h2 em,.fq-boundary h2 em{font-family:var(--serif);font-weight:400;color:var(--teal)}.fq-promise{margin-top:2rem;padding:1.2rem 1.35rem;border-left:3px solid var(--teal);background:#f1f7f8;display:flex;flex-direction:column;gap:.25rem}.fq-promise b{color:var(--navy)}.fq-promise span{font-size:.82rem;color:var(--muted);letter-spacing:.04em}.fq-prose{padding-top:.2rem}.fq-prose p{color:var(--muted);line-height:1.8;margin:0 0 1rem}.fq-prose .lead{font-size:1.22rem;line-height:1.55;color:var(--navy)}
.fq-path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#cbd9dc;border:1px solid #cbd9dc;margin-top:3rem}.fq-path-grid article{position:relative;background:#fff;padding:2rem 1.7rem;min-height:190px}.fq-path-grid article:not(:last-child):after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);z-index:2;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-size:.8rem}.fq-path-grid article.is-focus{background:var(--navy);color:#fff}.fq-path-grid span{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#e6f3f3;color:var(--teal);font-weight:800;font-size:.75rem}.fq-path-grid .is-focus span{background:var(--teal);color:#fff}.fq-path-grid h3{margin:1.1rem 0 .55rem;font-size:1.25rem}.fq-path-grid p{margin:0;color:var(--muted);line-height:1.6;font-size:.92rem}.fq-path-grid .is-focus p{color:#c9d9df}
.fq-groups{margin-top:3.25rem;display:grid;gap:1.2rem}.fq-group{display:grid;grid-template-columns:300px 1fr;border:1px solid #dbe4e6;background:#fff}.fq-group>header{padding:2rem;background:#f3f7f7;border-right:1px solid #dbe4e6;display:flex;gap:1rem;align-items:flex-start}.fq-group>header>span{color:var(--teal);font-weight:800;font-size:.78rem;letter-spacing:.08em}.fq-group h3{margin:0 0 .5rem;color:var(--navy);font-size:1.25rem}.fq-group header p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}.fq-list details{border-bottom:1px solid #e3eaeb}.fq-list details:last-child{border-bottom:0}.fq-list summary{list-style:none;cursor:pointer;padding:1.45rem 4rem 1.45rem 1.7rem;color:var(--navy);font-weight:700;position:relative;line-height:1.4}.fq-list summary::-webkit-details-marker{display:none}.fq-list summary span,.fq-list summary span:after{position:absolute;background:var(--teal);content:""}.fq-list summary span{right:1.65rem;top:50%;width:16px;height:2px}.fq-list summary span:after{left:7px;top:-7px;width:2px;height:16px;transition:transform .2s}.fq-list details[open] summary span:after{transform:rotate(90deg)}.fq-list details[open] summary{color:var(--teal)}.fq-list details p{margin:0;padding:0 3.8rem 1.5rem 1.7rem;color:var(--muted);line-height:1.75;font-size:.95rem}
.fq-boundary-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8rem;align-items:center}.fq-boundary h2{color:#fff}.fq-boundary p{color:#c8d7dd;line-height:1.8;margin:0}.fq-next-panel{background:#eef5f5;padding:3.5rem 4rem;display:grid;grid-template-columns:1fr .9fr;gap:5rem;align-items:center;border-left:4px solid var(--teal)}.fq-next-panel p{color:var(--muted);line-height:1.75}.fq-next-panel .button{margin-top:1rem}
@media(max-width:1000px){.fq-opening-grid,.fq-boundary-grid{gap:4rem}.fq-group{grid-template-columns:240px 1fr}.fq-path-grid{grid-template-columns:repeat(2,1fr)}.fq-path-grid article:nth-child(2):after{display:none}}
@media(max-width:760px){.fq-opening-grid,.fq-boundary-grid,.fq-next-panel{grid-template-columns:1fr;gap:2rem}.fq-path-grid{grid-template-columns:1fr}.fq-path-grid article{min-height:auto}.fq-path-grid article:not(:last-child):after{content:"↓";right:auto;left:50%;top:auto;bottom:-13px;transform:translateX(-50%)}.fq-path-grid article:nth-child(2):after{display:grid}.fq-group{grid-template-columns:1fr}.fq-group>header{border-right:0;border-bottom:1px solid #dbe4e6;padding:1.4rem}.fq-list summary{padding-left:1.35rem}.fq-list details p{padding-left:1.35rem;padding-right:1.35rem}.fq-next-panel{padding:2.2rem 1.5rem}}
