#review{max-width:960px;margin:22px auto;padding:26px;background:#fffdf8;border:1px solid #e2e9df;border-radius:20px}
.review-heading small{color:#507564;font-weight:600}.review-heading h2{margin:8px 0 24px;font-size:26px;color:#243d36}
.review-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:28px}.review-grid h3{font-size:17px;margin:0 0 16px;color:#29463c}
.review-summary{padding:20px;border-radius:14px;background:#edf3ec}.review-summary dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px 12px;margin:0}
.review-summary dt{color:#607468;font-size:14px}.review-summary dd{margin:0;color:#213e32;font-weight:600;overflow-wrap:anywhere}.review-summary dd:last-child{font-size:24px;color:#246c51}
#reviewContact{display:grid;grid-template-columns:1fr 1fr;gap:12px}.review-person label{display:grid;gap:6px;font-size:14px;color:#506459}.review-person input,.review-person textarea{box-sizing:border-box;width:100%;min-width:0;padding:11px;border:1px solid #cdd8d0;border-radius:9px;background:#fff;font:inherit}
.review-extra{margin-top:18px}.review-extra summary{cursor:pointer;color:#52705e;font-size:14px;padding:8px 0}.review-extra label{margin-top:12px}
#reviewNotice{font-size:13px;line-height:1.7;color:#69786f;border-top:1px solid #e0e8df;margin:22px 0 12px;padding-top:14px}
#backToSelection{padding:9px 16px;border:1px solid #a4baa9;background:white;color:#355c46;border-radius:9px;font-size:14px}
@media(max-width:680px){#review{margin:12px 0;padding:18px}.review-grid{grid-template-columns:1fr;gap:22px}.review-heading h2{font-size:22px}.review-summary{padding:16px}.review-summary dl{grid-template-columns:84px minmax(0,1fr);gap:12px 8px}#reviewContact{grid-template-columns:1fr}}
.review-photo{margin:0 0 18px}.review-photo img{display:block;width:100%;height:180px;object-fit:cover;border-radius:10px}.review-photo figcaption{font-size:12px;color:#667b6a;margin-top:6px}
