/* reviews */
.reviews{background:var(--cream-2);padding:clamp(72px,11vw,150px) var(--pad)}
.reviews-inner{max-width:1080px;margin:0 auto}
.reviews .eyebrow{text-align:center}
.reviews h2{text-align:center;font-size:clamp(34px,5.4vw,60px);max-width:16ch;margin:0 auto;text-wrap:balance}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rv-summary{display:flex;align-items:center;justify-content:center;gap:14px;margin:22px 0 0;color:var(--ink-2)}
.rv-summary[hidden]{display:none}
.rv-avg{font-family:var(--serif);font-size:44px;line-height:1;font-weight:300}
.rv-summary small{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.rv-stars{display:inline-flex;gap:3px;color:var(--gold)}
.rv-stars svg{width:16px;height:16px;fill:currentColor}
.rv-stars .off{color:rgba(171,155,122,.28)}
.rv-list{display:grid;gap:16px;margin:clamp(34px,5vw,56px) 0 0}
.rv-list:empty{display:none}
@media(min-width:760px){.rv-list{grid-template-columns:repeat(2,1fr);gap:22px}}
@media(min-width:1100px){.rv-list{grid-template-columns:repeat(3,1fr)}}
.rv-card{background:var(--cream);border:1px solid rgba(171,155,122,.28);padding:28px 26px 24px;display:flex;flex-direction:column;gap:14px;animation:rvIn .7s var(--ease) both}
@keyframes rvIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.rv-card blockquote{margin:0;font-family:var(--serif);font-size:21px;line-height:1.4;color:var(--ink-2);white-space:pre-line;overflow-wrap:anywhere}
.rv-card blockquote::before{content:"\201C";display:block;font-size:52px;line-height:.6;color:var(--gold);margin-bottom:8px}
.rv-meta{margin-top:auto;padding-top:14px;border-top:1px solid rgba(171,155,122,.25);display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.rv-meta strong{font-weight:400;color:var(--ink);letter-spacing:.14em;text-transform:uppercase;font-size:12px;overflow-wrap:anywhere}
.rv-meta .rv-proj{color:var(--gold-deep)}
.rv-more{display:block;margin:22px auto 0}
.rv-form-wrap{max-width:620px;margin:clamp(40px,6vw,64px) auto 0;background:var(--cream);border:1px solid rgba(171,155,122,.35);padding:clamp(26px,5vw,44px)}
.rv-form-title{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.1;margin:0;text-align:center}
.rv-form-sub{text-align:center;color:var(--muted);margin:8px 0 26px;font-size:15px}
.rv-form{display:flex;flex-direction:column;gap:18px}
.rv-field{display:flex;flex-direction:column;gap:8px;position:relative}
.rv-label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-2);font-weight:400}
.rv-label em{font-style:normal;color:var(--muted);letter-spacing:.1em;text-transform:none}
.rv-form input[type=text],.rv-form select,.rv-form textarea{width:100%;font:300 16px/1.5 var(--sans);color:var(--ink);background:#fff;border:1px solid var(--stone);border-radius:0;padding:13px 14px;transition:border-color .3s,box-shadow .3s;-webkit-appearance:none;appearance:none}
.rv-form select{background-image:linear-gradient(45deg,transparent 50%,var(--gold-deep) 50%),linear-gradient(135deg,var(--gold-deep) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.rv-form textarea{resize:vertical;min-height:130px}
.rv-form input:focus,.rv-form select:focus,.rv-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(171,155,122,.18)}
.rv-count{align-self:flex-end;font-size:11px;letter-spacing:.08em;color:var(--muted)}
.rv-stars-input{display:flex;gap:4px;margin-left:-6px}
.rv-stars-input input{position:absolute;opacity:0;width:1px;height:1px}
.rv-stars-input label{cursor:pointer;width:46px;height:46px;display:flex;align-items:center;justify-content:center;color:rgba(171,155,122,.5);transition:color .2s,transform .2s;-webkit-tap-highlight-color:transparent}
.rv-stars-input label svg{width:34px;height:34px;fill:currentColor}
.rv-stars-input label.is-on{color:var(--gold)}
.rv-stars-input label:active{transform:scale(.9)}
.rv-stars-input input:focus-visible+label{outline:2px solid var(--gold);outline-offset:2px}
.rv-hp{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
.rv-msg{margin:0;min-height:0;font-size:14px;color:#9A3B2E}
.rv-msg:empty{display:none}
.rv-submit{justify-content:center;cursor:pointer;font-family:var(--sans);width:100%}
.rv-submit[disabled]{opacity:.6;cursor:wait;transform:none}
.rv-thanks{text-align:center;padding:10px 0}
.rv-thanks[hidden]{display:none}
.rv-thanks-stars{display:inline-flex;gap:4px;color:var(--gold);margin-bottom:14px}
.rv-thanks-stars svg{width:22px;height:22px;fill:currentColor}
.rv-thanks p{font-family:var(--serif);font-size:26px;line-height:1.3;margin:0;color:var(--ink-2)}
