/* So Blessed Cleaning FAQ page */
.faq-hero{background:linear-gradient(135deg,#fffdf8 0%,#f7f0e5 100%);border-bottom:1px solid rgba(2,40,78,.1)}
.faq-hero__grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:stretch;min-height:430px}
.faq-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:64px 56px 64px 0}
.faq-hero__copy .breadcrumbs{margin-bottom:24px;color:#6b7785;font-size:13px}
.faq-hero__copy .breadcrumbs a{color:var(--navy);text-decoration:none}
.faq-hero__copy h1{max-width:650px;margin:0;color:var(--navy);font-size:clamp(48px,5vw,72px);line-height:.98;letter-spacing:-.035em}
.faq-hero__copy>p:not(.eyebrow){max-width:620px;margin:22px 0 0;color:#40556b;font-size:17px;line-height:1.7}
.faq-hero__visual{position:relative;min-height:430px;overflow:hidden}
.faq-hero__visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fffdf8 0%,rgba(255,253,248,.25) 10%,transparent 35%);pointer-events:none}
.faq-hero__visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.faq-intro{padding:56px 0 28px;background:#fff}
.faq-intro__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:start}
.faq-intro h2{margin:6px 0 0;color:var(--navy);font-size:clamp(34px,3.4vw,52px);line-height:1.02}
.faq-intro p{margin:0;color:#526476;font-size:16px;line-height:1.75}
.faq-category-nav{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.faq-category-nav a{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border:1px solid rgba(2,40,78,.16);border-radius:999px;background:#fff;color:var(--navy);font-size:13px;font-weight:700;text-decoration:none;transition:.18s ease}
.faq-category-nav a:hover{border-color:#b88933;background:#fffaf1;transform:translateY(-1px)}
.faq-sections{padding:22px 0 72px;background:#fff}
.faq-group{scroll-margin-top:112px;padding:34px 0;border-top:1px solid rgba(2,40,78,.1)}
.faq-group:first-child{border-top:0}
.faq-group__head{display:grid;grid-template-columns:220px 1fr;gap:32px;margin-bottom:18px}
.faq-group__head .kicker{margin-top:7px}
.faq-group__head h2{margin:0;color:var(--navy);font-size:clamp(28px,2.6vw,40px);line-height:1.05}
.faq-list{display:grid;gap:10px;margin-left:252px}
.faq-item{border:1px solid rgba(2,40,78,.13);border-radius:8px;background:#fff;box-shadow:0 7px 20px rgba(2,40,78,.045);overflow:hidden}
.faq-item[open]{border-color:rgba(184,137,51,.42);box-shadow:0 12px 28px rgba(2,40,78,.08)}
.faq-item summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:17px 54px 17px 20px;color:var(--navy);font-size:16px;font-weight:800;line-height:1.35;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(184,137,51,.5);border-radius:50%;color:#9e742d;font-size:20px;font-weight:400;line-height:1}
.faq-item[open] summary::after{content:"−"}
.faq-item__answer{padding:0 20px 20px;color:#526476;font-size:15px;line-height:1.72}
.faq-item__answer p{margin:0}
.faq-item__answer a{color:var(--navy);font-weight:700;text-underline-offset:2px}
.faq-assurance{margin-top:34px;padding:25px 28px;border:1px solid rgba(184,137,51,.28);border-radius:8px;background:#fffaf1;color:#40556b;line-height:1.7}
.faq-assurance strong{display:block;margin-bottom:5px;color:var(--navy);font-size:16px}
.faq-cta{background:linear-gradient(135deg,#062f59,#001b35)}
.faq-cta .contact-cta__inner p{max-width:680px;margin-left:auto;margin-right:auto}
@media(max-width:900px){.faq-hero__grid{grid-template-columns:1fr;min-height:0}.faq-hero__copy{padding:40px 0 26px}.faq-hero__visual{min-height:0;aspect-ratio:16/9}.faq-hero__visual::after{background:linear-gradient(180deg,#fffdf8 0%,rgba(255,253,248,.08) 16%,transparent 35%)}.faq-intro__grid{grid-template-columns:1fr;gap:18px}.faq-group__head{grid-template-columns:1fr;gap:5px}.faq-list{margin-left:0}.faq-sections{padding-bottom:54px}}
@media(max-width:600px){.faq-hero__copy h1{font-size:clamp(42px,12vw,58px)}.faq-intro{padding-top:42px}.faq-category-nav{display:grid;grid-template-columns:1fr 1fr}.faq-category-nav a{justify-content:center;text-align:center}.faq-item summary{padding-left:16px;padding-right:50px;font-size:15px}.faq-item__answer{padding-left:16px;padding-right:16px}}
