/* The review invitation is a separate, calm space within the existing brand. */
section.review-section{width:86%;max-width:1240px;margin:72px auto;padding:0;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:stretch;background:#122e46;border:1px solid #24445c;border-radius:18px;overflow:hidden;box-shadow:0 18px 48px #102b4610;scroll-margin-top:108px}
.review-story{position:relative;isolation:isolate;padding:54px 48px 44px;overflow:hidden;color:#f7f4ec}
.review-story:after{content:"";position:absolute;z-index:-1;inset-inline-end:-110px;bottom:-230px;width:390px;height:390px;border:1px solid #ccb88c26;border-radius:50%;box-shadow:0 0 0 42px #ccb88c08,0 0 0 84px #ccb88c04}
.review-overline{display:flex;align-items:center;gap:12px;font:11px/1.7 Arial,sans-serif;letter-spacing:2.5px;color:#dec99f;text-transform:uppercase}
.review-line{display:block;width:30px;height:1px;background:#c8ad78;flex:none}
.review-story h2{font:400 clamp(30px,3.3vw,44px)/1.35 Georgia,'PingFang SC','Microsoft YaHei',serif;letter-spacing:-.5px;color:#f7f4ec;margin:24px 0 20px;max-width:430px;text-wrap:balance}
.review-story .review-intro{font:14px/1.95 Arial,'PingFang SC',sans-serif;color:#ccd5da;max-width:410px;margin:0}
.review-signature{display:flex;align-items:center;gap:14px;margin-top:34px;padding-top:24px;border-top:1px solid #ffffff20}
.review-signature img{width:49px;height:49px;background:#fff;border-radius:50%;object-fit:contain;padding:3px;flex:none}
.review-signature strong{display:block;font:italic 22px/1.4 Georgia,serif;font-weight:400;letter-spacing:.3px}
.review-signature span{display:block;margin-top:4px;color:#b6c5ce;font:8px/1.6 Arial,sans-serif;letter-spacing:1.8px}
.review-card{min-width:0;margin:18px;margin-inline-start:0;padding:30px 32px 26px;background:#fcfbf7;border:1px solid #f5ead9;border-radius:10px;color:#203b50}
.review-card-top{display:flex;justify-content:space-between;align-items:center}
.review-google{font:500 25px/1.4 Arial,sans-serif;letter-spacing:-1px;color:#3c4043}
.review-spark{font:38px/1 Georgia,serif;color:#b49a6b}
.review-stars{font:38px/1.6 Georgia,serif;letter-spacing:7px;color:#b28d4e;margin:16px 0 20px;direction:ltr}
.review-rating{display:flex;align-items:center;gap:20px;margin:20px 0 26px;direction:ltr}
.review-rating>strong{font:400 56px/1 Georgia,serif;letter-spacing:-2px;color:#17364b}
.review-rating .review-stars{font-size:25px;letter-spacing:4px;line-height:1.25;margin:0 0 5px}
.review-rating .review-count{font:11px/1.6 Arial,'PingFang SC',sans-serif;margin:0;color:#667781;letter-spacing:0}
.review-rating-source{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;margin:-6px 0 20px;font:10px/1.8 Arial,'PingFang SC',sans-serif;color:#7a837f}
.review-rating-source a{color:#64756b;text-underline-offset:3px}
.review-primary{display:flex;justify-content:center;align-items:center;min-height:54px;padding:15px 18px;background:#142f48;color:#fff!important;border:1px solid #142f48;border-radius:4px;text-align:center;text-decoration:none;font:14px/1.7 Arial,'PingFang SC',sans-serif;transition:background .18s,border-color .18s}
.review-primary:hover{background:#244961;border-color:#244961}
.review-card .review-explanation{font:12px/1.85 Arial,'PingFang SC',sans-serif;color:#637481;margin:15px 0 22px}
.review-invite{border-top:1px solid #dfddd4}
.review-invite summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:18px 0 0;font:13px/1.7 Arial,'PingFang SC',sans-serif;color:#223d50}
.review-invite summary::-webkit-details-marker{display:none}
.review-invite summary>span:last-child{font-size:18px;color:#a0834d;flex:none}
.review-invite[open] summary{padding-bottom:18px}
.review-invite[open] summary>span:last-child{transform:rotate(45deg)}
.review-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.review-tools a,.review-tools button{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;padding:11px 8px;border:1px solid #d6d9d7;border-radius:3px;background:transparent;color:#244559;cursor:pointer;text-decoration:none;text-align:center;font:12px/1.6 Arial,'PingFang SC',sans-serif;overflow-wrap:anywhere}
.review-tools a:hover,.review-tools button:hover{background:#eeeae0}
.review-invite textarea{display:block;width:100%;min-width:0;margin-top:12px;padding:12px;border:1px solid #dadbd4;border-radius:3px;background:#f4f3ed;color:#425b6a;resize:vertical;user-select:text;font:12px/1.8 Arial,'PingFang SC',sans-serif}
.review-card .review-send-note,.review-card .review-status{font:11px/1.8 Arial,'PingFang SC',sans-serif;color:#687a85;margin:11px 0 0}
.review-card .review-status{color:#365b4d}.review-status:empty{display:none}
.review-section [hidden]{display:none!important}
.review-section a:focus-visible,.review-section button:focus-visible,.review-section summary:focus-visible,.review-section textarea:focus-visible{outline:3px solid #b49a6b;outline-offset:4px}
@media(max-width:800px){section.review-section{grid-template-columns:minmax(0,1fr);width:88%;margin:48px auto}.review-story{padding:34px 28px}.review-story h2{font-size:35px;max-width:540px}.review-story .review-intro{max-width:540px}.review-signature{margin-top:25px;padding-top:20px}.review-card{margin:0 14px 14px;padding:26px}.review-stars{font-size:35px;margin-top:12px}.review-card .review-explanation{margin-bottom:20px}}
@media(max-width:420px){.review-story{padding:30px 24px}.review-story h2{font-size:31px}.review-card{padding:24px 20px}.review-stars{font-size:32px;letter-spacing:6px}.review-story .review-intro{font-size:13px}.review-tools{grid-template-columns:minmax(0,1fr)}.review-signature span{letter-spacing:1.1px}}
@media(prefers-reduced-motion:reduce){.review-primary{transition:none}}
@media print{.review-section{display:none!important}}
