.reviews-intro {
    padding:32px;
    border:1px solid #d8e7f5;
    border-radius:8px;
    background:linear-gradient(125deg, #fff, #e9f4ff);
}

.reviews-intro h1 {
    max-width:940px;
    margin:12px 0 20px;
    color:#102246;
    font-size:clamp(28px, 2.7vw, 43px);
    line-height:1.12;
    letter-spacing:-.04em;
}

.reviews-page .reviews-intro p { max-width:940px;font-size:16px;line-height:1.7 }
.reviews-page .reviews-intro .eyebrow { color:#1973e9;font-size:11px;letter-spacing:.12em }
.reviews-page .reviews-intro p:last-child { margin-bottom:0 }
.reviews-page .reviews-story { align-items:stretch;isolation:isolate }
.reviews-page .reviews-story .finance-copy { position:relative;z-index:1 }

.reviews-page .reviews-story .reviews-photo-art {
    position:relative;
    display:block;
    align-self:stretch;
    min-height:460px;
    margin:0 0 0 -48px;
    padding:0;
    overflow:hidden;
    background:#edf5ff;
    -webkit-mask-image:linear-gradient(to right, transparent, #000 24%);
    mask-image:linear-gradient(to right, transparent, #000 24%);
}

.reviews-page .reviews-story:nth-of-type(even) .reviews-photo-art {
    margin:0 -48px 0 0;
    -webkit-mask-image:linear-gradient(to left, transparent, #000 24%);
    mask-image:linear-gradient(to left, transparent, #000 24%);
}

.reviews-page .reviews-photo-art > img {
    position:absolute;
    z-index:0;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.reviews-page .reviews-photo-art::before { content:none }

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
    .reviews-page .reviews-photo-art > img {
        transition:scale 900ms cubic-bezier(.2, .65, .3, 1);
    }

    .reviews-page .reviews-story:hover .reviews-photo-art > img {
        scale:1.035;
    }
}

@media (max-width:860px) {
    .reviews-page .reviews-story:nth-of-type(n) .reviews-photo-art {
        min-height:0;
        aspect-ratio:4 / 3;
        margin:0;
        -webkit-mask-image:none;
        mask-image:none;
    }
}
.reviews-visual { gap:18px;min-height:460px;padding:32px 26px 48px;overflow:hidden;background:radial-gradient(ellipse at 80% 15%, #fff 0, #e5f2ff 45%, #c9e2ff 100%) }
.reviews-visual::before { content:none }
.reviews-visual figcaption { color:#58749a;background:transparent }
.reviews-visual-heading > span { display:block;color:#1973e9;font-size:10px;font-weight:750;letter-spacing:.12em }
.reviews-visual-heading h3 { margin:12px 0 8px;color:#15345e;font-size:clamp(24px, 2.3vw, 34px);line-height:1.12;letter-spacing:-.035em }
.reviews-panel { min-width:0;padding:22px;border:1px solid #c5ddfb;border-radius:9px;background:#fffffff5;box-shadow:0 10px 28px #386ca917;color:#233f65 }
.reviews-panel > b { display:block;margin-bottom:16px;font-size:15px }
.reviews-panel small { display:block;color:#6882a1;font-size:11px;line-height:1.5 }
.reviews-row { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #e6eef8;font-size:12px;line-height:1.5 }
.reviews-row:last-child { border-bottom:0 }
.reviews-row > span { color:#6882a1 }
.reviews-row strong { text-align:right }
.reviews-note { padding:14px 16px;border:1px solid #afd2fa;border-radius:7px;background:#f4f9ff;color:#22578f;font-size:13px;line-height:1.5;text-align:center }
.reviews-payment { display:flex;align-items:center;gap:12px }
.reviews-payment > span { display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:50%;background:#e1f7ed;color:#15946a;font-size:20px }
.reviews-payment strong { display:block;margin-bottom:5px;font-size:14px }
.reviews-stars { margin:6px 0 16px;color:#f3b63d;font-size:31px;letter-spacing:3px;white-space:nowrap }
.reviews-stars > span { color:#dae4f0 }
.reviews-page .reviews-panel blockquote { margin:0 0 15px;padding:14px 0 14px 16px;border-left:3px solid #aecdf7;color:#3e5e83;font-size:14px;font-style:normal;line-height:1.65 }
.reviews-photo { justify-content:flex-end;min-height:540px }
.reviews-photo > img { object-position:45% center }
.reviews-photo::before { content:'';background:linear-gradient(180deg, transparent 40%, #18375c70) }
.reviews-photo figcaption { color:#fff;background:#142f56bf;font-size:9px }
.reviews-photo-card { width:100%;max-width:350px;margin:0 auto 24px }
.reviews-scan-flow { display:flex;align-items:center;justify-content:space-between;gap:5px;margin:12px 0 18px;color:#22578f;font-size:12px }
.reviews-scan-flow b { color:#73a3e6 }
.reviews-example-field { display:grid;gap:8px;padding:14px;border:1px solid #d5e4f7;border-radius:6px;background:#f8fbff;color:#506b8b;font-size:13px;line-height:1.6 }
.reviews-attachment { display:flex;align-items:center;gap:12px;margin:14px 0;padding:13px;border:1px dashed #b4d0f4;border-radius:6px;background:#f8fbff }
.reviews-attachment > span { display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:6px;background:#e7f1ff;color:#1973e9;font-size:24px }
.reviews-attachment strong { display:block;margin-bottom:4px;font-size:12px }
.reviews-signal { display:flex;align-items:center;gap:12px;padding:19px;border:1px solid #ead7ba;border-radius:8px;background:#fffaf1;box-shadow:0 8px 20px #386ca910 }
.reviews-signal b { display:block;color:#805c29;font-size:14px }
.reviews-signal small { display:block;margin-top:5px;color:#987c53;font-size:11px;line-height:1.5 }
.reviews-signal-dot { flex:0 0 9px;height:9px;border-radius:50%;background:#e7aa40;box-shadow:0 0 0 5px #f4e5c8 }
.reviews-signal-positive { border-color:#bde1d3;background:#f1fcf6 }
.reviews-signal-positive b { color:#277458 }
.reviews-signal-positive small { color:#68917f }
.reviews-signal-positive .reviews-signal-dot { background:#28a676;box-shadow:0 0 0 5px #daf3e6 }
.reviews-page .reviews-check-steps { display:grid;gap:12px;margin:0;padding:0;list-style:none;counter-reset:check }
.reviews-page .reviews-check-steps li { display:flex;align-items:center;gap:10px;color:#506b8b;font-size:13px;counter-increment:check }
.reviews-check-steps li::before { content:counter(check, decimal-leading-zero);display:grid;place-items:center;flex:0 0 26px;height:26px;border-radius:5px;background:#edf5ff;color:#1973e9;font-size:10px;font-weight:750 }
.reviews-client-summary { display:flex;align-items:center;gap:12px;margin:8px 0 24px;padding-bottom:20px;border-bottom:1px solid #e0ebf7 }
.reviews-avatar { display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#e2efff;color:#1973e9;font-size:19px;font-weight:700 }
.reviews-client-summary strong { display:block;margin-bottom:5px;font-size:12px }
.reviews-page .reviews-timeline { display:grid;gap:0;padding:0;margin:0;list-style:none }
.reviews-page .reviews-timeline li { position:relative;padding:0 0 27px 24px }
.reviews-timeline li::before { content:'';position:absolute;top:4px;left:0;width:9px;height:9px;border:2px solid #79acec;border-radius:50%;background:#fff }
.reviews-timeline li:not(:last-child)::after { content:'';position:absolute;left:4px;top:15px;bottom:3px;border-left:1px solid #c6ddf8 }
.reviews-timeline li:last-child { padding-bottom:0 }
.reviews-timeline li:last-child::before { border-color:#e6ae56;background:#fff7e7 }
.reviews-timeline b { display:block;margin:7px 0 5px;color:#233f65;font-size:13px }
.reviews-timeline span { display:block;color:#6882a1;font-size:11px }
.reviews-location { display:flex;align-items:center;gap:12px;padding:20px 16px;border:1px solid #c5ddfb;border-radius:9px;background:#fffffff0;box-shadow:0 10px 25px #386ca912 }
.reviews-location-index { display:grid;place-items:center;flex:0 0 34px;height:38px;border:1px solid #d1e3fa;border-radius:6px;background:#edf5ff;color:#1973e9;font-size:11px;font-weight:750 }
.reviews-location > div { min-width:0;flex:1 }
.reviews-location b { display:block;color:#233f65;font-size:13px }
.reviews-location small { display:block;margin-top:6px;color:#6882a1;font-size:10px;line-height:1.5 }
.reviews-location-tag { padding:5px 7px;border-radius:4px;background:#edf5ff;color:#527caa;font-size:9px }
.reviews-network-connector { color:#4f91e2;font-size:28px;text-align:center;line-height:1 }
.reviews-owner { padding:24px 18px;border:1px solid #7fb2f3;border-radius:9px;background:linear-gradient(130deg, #1973e9, #1358cc);box-shadow:0 14px 30px #1973e930;color:#fff;text-align:center }
.reviews-owner b { display:block;font-size:19px }
.reviews-owner small { display:block;margin-top:8px;color:#d8eaff;font-size:12px }
.reviews-page .reviews-service-steps { display:grid;gap:14px;padding:0;margin:0;list-style:none;counter-reset:service }
.reviews-page .reviews-service-steps li { position:relative;padding:19px 14px 19px 65px;border:1px solid #c5ddfb;border-radius:8px;background:#fffffff0;counter-increment:service }
.reviews-service-steps li::before { content:counter(service, decimal-leading-zero);position:absolute;top:20px;left:16px;display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:#e8f2ff;color:#1973e9;font-size:12px;font-weight:750 }
.reviews-service-steps b { display:block;color:#233f65;font-size:13px }
.reviews-service-steps span { display:block;margin-top:6px;color:#6882a1;font-size:12px }

@media (max-width:1000px) and (min-width:861px) {
    .reviews-visual { padding-inline:18px }
    .reviews-panel { padding:18px }
    .reviews-location-tag { display:none }
}

@media (max-width:860px) {
    .reviews-visual { min-height:420px;padding:30px 24px 44px }
    .reviews-photo { min-height:540px }
}

@media (max-width:600px) {
    .reviews-intro { padding:24px 18px }
    .reviews-intro h1 { font-size:29px }
    .reviews-visual { padding:28px 16px 44px }
    .reviews-panel { padding:18px 14px }
    .reviews-visual-heading h3 { font-size:28px }
    .reviews-photo { min-height:470px }
    .reviews-photo-card { margin-bottom:28px }
    .reviews-location { gap:9px;padding:17px 12px }
    .reviews-location-tag { display:none }
    .reviews-scan-flow { font-size:11px }
}
