/* ── Hero ── */
.fq-hero {
    background: #8b001b url('../img/ai-heroes/customer-fitting.png') center center / cover no-repeat;
    padding: 90px 0 70px;
    position: relative;
    overflow: hidden;
}
.fq-hero::after {
    content: '';
    position: absolute;
    right: -60px; top: -60px;
    width: 500px; height: 500px;
    border-radius: 50%;
    border: 80px solid rgba(145,118,90,.05);
    pointer-events: none;
}
.fq-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(20,24,36,.94) 0%, rgba(20,24,36,.82) 55%, rgba(20,24,36,.42) 100%);
}
.fq-hero-inner { position: relative; z-index: 1; }

.fq-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #c8102e;
    margin-bottom: 22px;
}
.fq-breadcrumb a { color: #c8102e; text-decoration: none; }
.fq-breadcrumb a:hover { color: #e53950; }
.fq-breadcrumb i { font-size: 9px; color: #3a3f52; }

.fq-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(145,118,90,.12);
    border: 1px solid rgba(145,118,90,.25);
    color: #c8102e;
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 20px;
    margin-bottom: 22px;
}
.fq-tag::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: #c8102e;
    flex-shrink: 0;
}
.fq-h1 {
    font-family: 'Bodoni Moda', serif;
    font-size: clamp(2rem, 5vw, 3.2rem);
    color: #ffdee4;
    line-height: 1.2;
    margin: 0 0 20px;
}
.fq-sub {
    font-size: 15px;
    color: #888;
    max-width: 580px;
    line-height: 1.8;
    margin: 0;
}

/* ── Body ── */
.fq-body {
    background: #f8f6f6;
    padding: 86px 0 72px;
}
.fq-body .container { max-width: 980px; }

/* ── Category block ── */
.fq-category-block {
    margin-bottom: 34px;
    padding: 30px;
    background: #fff;
    border: 1px solid #eadfe1;
    box-shadow: 0 14px 38px rgba(45, 18, 24, .055);
}
.fq-category-block:last-child { margin-bottom: 0; }

.fq-cat-label {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eadfe1;
    position: relative;
}
.fq-cat-label::after {
    content: '';
    position: absolute;
    bottom: -2px; left: 0;
    width: 58px; height: 3px;
    background: #c8102e;
}
.fq-cat-icon {
    width: 42px; height: 42px;
    background: #fff1f3;
    border: 1px solid #f1cbd2;
    border-radius: 50%;
    color: #c8102e;
    font-size: 15px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.fq-cat-label h2 {
    font-family: 'Bodoni Moda', serif;
    font-size: 1.3rem;
    color: #8b001b;
    margin: 0;
}

/* ── Accordion ── */
.fq-accordion { width: 100%; }

.fq-item {
    margin-bottom: 10px;
    border: 1px solid #eadfe1;
    background: #fff;
    overflow: hidden;
    transition: border-color .25s ease, box-shadow .25s ease;
}
.fq-item:last-child { margin-bottom: 0; }
.fq-item:hover,
.fq-item.open {
    border-color: #dca8b1;
    box-shadow: 0 8px 22px rgba(74, 20, 31, .06);
}

.fq-q {
    display: flex;
    align-items: center;
    gap: 18px;
    width: 100%;
    padding: 18px 20px;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
}
.fq-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff1f3;
    font-size: 10px;
    font-weight: 700;
    color: #c8102e;
    letter-spacing: 1px;
    flex-shrink: 0;
}
.fq-q-text {
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    color: #292326;
    line-height: 1.4;
    transition: color .2s;
}
.fq-item.open .fq-q-text,
.fq-q:hover .fq-q-text { color: #c8102e; }

.fq-toggle {
    width: 32px; height: 32px;
    display: flex; align-items: center; justify-content: center;
    color: #c41230;
    border: 1px solid #e5bbc2;
    border-radius: 50%;
    font-size: 12px;
    transition: transform .3s, color .2s;
    flex-shrink: 0;
}
.fq-item.open .fq-toggle { transform: rotate(45deg); color: #fff; background: #c41230; border-color: #c41230; }

.fq-a { max-height: 0; overflow: hidden; transition: max-height .45s ease; }
.fq-a-inner {
    padding: 0 72px 22px;
    font-size: 14.5px;
    color: #625b5d;
    line-height: 1.9;
}
.fq-item.open .fq-a { max-height: 500px; }

/* ── CTA ── */
.fq-cta {
    background: #fff7f8;
    padding: 60px 0;
    border-top: 3px solid;
    border-image: linear-gradient(to right, #c8102e, #e53950, #c8102e) 1;
}
.fq-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
}
.fq-cta-eyebrow {
    font-size: 11px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #ffb5c1;
    display: block;
    margin-bottom: 10px;
}
.fq-cta-text h2 {
    font-family: 'Bodoni Moda', serif;
    font-size: clamp(1.4rem, 3vw, 2rem);
    color: #fff;
    margin: 0 0 8px;
}
.fq-cta-text p { font-size: 14px; color: rgba(255,255,255,.78); margin: 0; }

.fq-cta-btns { display: flex; gap: 12px; flex-wrap: wrap; flex-shrink: 0; }

.fq-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #8b001b;
    color: #c8102e;
    border: 1px solid #8b001b;
    padding: 13px 28px;
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 600;
    border-radius: 3px;
    transition: all .2s;
}
.fq-btn-primary:hover { background: #c8102e; border-color: #c8102e; color: #fff; }

.fq-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.72);
    padding: 13px 28px;
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 600;
    border-radius: 3px;
    transition: all .2s;
}
.fq-btn-ghost:hover { background: #fff; border-color: #fff; color: #8b001b; }

.fq-q:focus-visible,
.fq-btn-primary:focus-visible,
.fq-btn-ghost:focus-visible {
    outline: 3px solid rgba(196,18,48,.28);
    outline-offset: 3px;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .fq-cta-inner { flex-direction: column; align-items: flex-start; }
    .fq-category-block { padding: 22px 16px; }
    .fq-q { gap: 12px; padding: 16px 14px; }
    .fq-num { width: 30px; height: 30px; }
    .fq-a-inner { padding: 0 56px 20px; }
    .fq-hero { padding: 60px 0 50px; }
    .fq-body { padding: 50px 0 40px; }
}
@media (max-width: 480px) {
    .fq-category-block { padding: 20px 12px; }
    .fq-num { display: none; }
    .fq-a-inner { padding: 0 54px 18px 14px; }
    .fq-cta-btns,
    .fq-btn-primary,
    .fq-btn-ghost { width: 100%; }
    .fq-btn-primary,
    .fq-btn-ghost { justify-content: center; }
}
