/* Customer opinions: warm paper, paint accents and readable public submissions. */
.reviews-section{background:var(--paper);position:relative;overflow:hidden;border-top:1px solid var(--line)}
.reviews-heading{align-items:flex-end;gap:40px;margin-bottom:35px}
.reviews-heading h2{max-width:640px}.reviews-heading>div:last-child{max-width:330px;flex-shrink:0}
.reviews-heading>div:last-child>p{font-size:17px;line-height:1.8;margin:0 0 20px;color:var(--muted)}
.reviews-add{justify-content:center;gap:20px;min-height:54px;font-size:16px}
.reviews-add .icon{width:20px;height:20px}
.reviews-summary{display:flex;align-items:center;gap:14px;padding:14px 0 25px;font-size:16px}.reviews-summary[hidden]{display:none}.reviews-summary strong{font-size:25px;letter-spacing:-.035em}.review-stars{color:#b57b05;letter-spacing:3px;font-size:22px;line-height:1.4}.reviews-summary .review-stars{font-size:24px}.reviews-summary>span:last-child{color:var(--muted)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.review-card{background:#fff;border:1px solid #e4e0d5;border-radius:12px;padding:27px;min-width:0;position:relative;box-shadow:0 4px 0 #20212004}
.review-card:before{content:'';height:5px;position:absolute;top:-1px;left:26px;right:26px;background:var(--yellow);border-radius:60% 25% 45% 10%;transform:rotate(-.5deg)}
.review-card:nth-child(3n+2):before{background:#f7a5a4}.review-card:nth-child(3n):before{background:#b9ddc8}
.review-card-top{display:flex;align-items:center;gap:13px;min-width:0;margin-bottom:16px}.review-avatar{width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;background:#fff0ae;color:var(--ink);font-weight:800;border-radius:50%;font-size:16px}.review-card:nth-child(3n+2) .review-avatar{background:#fbd7d8}.review-card:nth-child(3n) .review-avatar{background:#d9eddf}
.review-card h3{font-size:17px;line-height:1.45;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere}.review-card time{font-size:13px;color:var(--muted);display:block;margin-top:2px}.review-card .review-stars{font-size:19px;margin-bottom:13px}.review-text{font-size:16px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.review-photo-link{display:block;margin-top:19px;border-radius:8px;overflow:hidden}.review-photo{width:100%;max-height:260px;object-fit:cover;background:var(--paper);display:block}.review-contact{display:flex;align-items:center;gap:9px;margin-top:19px;padding-top:15px;border-top:1px solid var(--line);font-size:14px;font-weight:700;color:var(--green);overflow-wrap:anywhere}.review-contact a{text-decoration:underline;text-underline-offset:3px}.review-origin{font-size:12px;color:var(--muted);margin-top:14px;line-height:1.6}
.reviews-empty{display:grid;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:30px;padding:33px 36px;border:1px dashed #d4cdbb;border-radius:12px;background:#ffffffa6}.reviews-empty[hidden]{display:none}.reviews-empty-art{position:relative;display:grid;place-items:center;width:112px;height:92px;isolation:isolate}.reviews-empty-art:before{content:'';position:absolute;inset:0;background:var(--yellow);border-radius:35% 5% 25% 8%;transform:rotate(-5deg);z-index:-1}.reviews-empty-art svg{width:58px;height:58px;stroke:var(--ink);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.reviews-empty h3{font-size:24px;line-height:1.35;letter-spacing:-.03em;margin-bottom:9px}.reviews-empty p{font-size:16px;line-height:1.85;color:var(--muted);max-width:570px}.reviews-empty .button{white-space:nowrap;background:#fff;color:var(--ink);border:1px solid #cec7b6;justify-content:center;font-size:15px}.reviews-empty .button:hover{background:var(--yellow);border-color:var(--yellow)}
.reviews-load-more{display:block;margin:29px auto 0;font-size:15px;background:transparent;border:1px solid #bdb5a3;color:var(--ink)}.reviews-load-more[hidden]{display:none}.reviews-load-more:hover{background:#fff}.reviews-status{font-size:14px;line-height:1.7;color:var(--muted);margin-top:16px}.reviews-status:empty{display:none}
.review-dialog{padding:0;border:0;border-radius:15px;width:min(710px,calc(100% - 32px));max-height:92dvh;color:var(--ink);background:#fff;overflow:auto;box-shadow:0 20px 100px #0004;overscroll-behavior:contain}.review-dialog::backdrop{background:#171913ba;backdrop-filter:blur(5px)}.review-dialog-head{position:relative;padding:31px 36px 26px;background:var(--yellow);overflow:hidden}.review-dialog-head:after{content:'';position:absolute;width:150px;height:150px;right:-65px;bottom:-95px;border-radius:40% 20% 45% 15%;background:#ffffff40;transform:rotate(18deg)}.review-dialog-head .eyebrow{font-size:12px;margin-bottom:9px}.review-dialog-head h2{font-size:35px;line-height:1.15;padding-right:35px;letter-spacing:-.04em}.review-dialog-head>p:last-child{font-size:15px;line-height:1.75;margin-top:11px;max-width:530px}.review-dialog-close{position:absolute;right:17px;top:17px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ffffffbf;color:var(--ink);z-index:2}.review-dialog-close:hover{background:#fff}.review-dialog-close .icon{width:18px;height:18px}
.review-form{padding:29px 36px 33px}.review-form fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}.review-form legend{font-size:15px;font-weight:800;margin-bottom:7px}.review-rating{display:flex;gap:8px;align-items:center;width:max-content;max-width:100%}.review-rating label{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;width:43px;height:43px;font-size:34px;line-height:1;color:#c4bba4;border-radius:6px}.review-rating input{position:absolute;opacity:0;inset:0;cursor:pointer;width:100%;height:100%;margin:0}.review-rating label.is-filled{color:#b57b05}.review-rating label:has(input:focus-visible){outline:3px solid var(--red);outline-offset:2px}.review-rating-note{font-size:13px;color:var(--muted);margin-top:5px}
.review-field{margin-bottom:18px;min-width:0}.review-field>label,.review-contact-legend{display:block;font-size:15px;font-weight:700;margin-bottom:7px}.review-field>label>span{color:var(--red)}.review-field input,.review-field textarea{display:block;min-width:0;width:100%;padding:12px 13px;border:1px solid #d6d2c5;border-radius:7px;background:#fbfaf6;font-size:16px;color:var(--ink);outline-offset:3px}.review-field textarea{resize:vertical;min-height:124px;line-height:1.7}.review-field input::placeholder,.review-field textarea::placeholder{color:#85867e;opacity:1}.review-field input:focus,.review-field textarea:focus{background:#fff;border-color:#777}.review-field-help{font-size:13px;color:var(--muted);line-height:1.7;margin-top:6px}.review-contact-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.review-contact-intro{font-size:14px;color:var(--muted);line-height:1.8;margin:0 0 15px}.review-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.8;color:var(--muted);margin:13px 0}.review-check input{width:17px;height:17px;margin:3px 0 0;accent-color:var(--red);flex-shrink:0}.review-check a{text-decoration:underline;text-underline-offset:2px}.review-phone-consent{border-left:3px solid var(--yellow);padding:9px 13px;background:#fff7d9;border-radius:0 6px 6px 0}.review-phone-consent[hidden]{display:none}.review-phone-consent .review-check{margin:0;color:#5e521a}
.review-upload{position:relative;margin:21px 0}.review-upload>input{width:1px;height:1px;position:absolute;opacity:0}.review-upload>label{display:flex;align-items:center;gap:13px;padding:16px;border:1px dashed #bfb7a5;border-radius:8px;background:var(--paper);cursor:pointer}.review-upload>input:focus-visible+label{outline:3px solid var(--red);outline-offset:3px}.review-upload .icon{width:23px;height:23px;flex-shrink:0}.review-upload strong{font-size:14px;display:block}.review-upload small{font-size:12px;line-height:1.7;color:var(--muted);display:block;margin-top:2px}.review-photo-preview{display:flex;align-items:center;gap:15px;margin-top:12px}.review-photo-preview[hidden]{display:none}.review-photo-preview img{width:76px;height:76px;object-fit:cover;border-radius:6px}.review-photo-preview>div{min-width:0}.review-photo-preview span{display:block;font-size:13px;overflow-wrap:anywhere;line-height:1.6}.review-photo-remove{background:transparent;color:var(--red);padding:5px 0;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.review-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}.review-submit{width:100%;position:relative;justify-content:center;text-align:center;padding-inline:47px;font-size:16px;min-height:54px;margin-top:20px}.review-submit>.icon{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:19px;height:19px}.review-submit:disabled{opacity:.65;cursor:wait}.review-form-note{font-size:12px;line-height:1.8;color:var(--muted);text-align:center;margin-top:11px}.review-response{padding:13px 15px;border-radius:7px;background:#fff2d9;color:#684606;font-size:14px;line-height:1.8;margin-top:16px;outline-offset:3px}.review-response:empty{display:none}.review-response.is-success{background:#e8f6eb;color:#176a31}
@media(max-width:1000px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews-heading{gap:30px}.reviews-heading>div:last-child{max-width:300px}.reviews-empty{grid-template-columns:105px minmax(0,1fr);gap:24px}.reviews-empty .button{grid-column:2;justify-self:start}.reviews-empty-art{width:96px;height:86px;grid-row:1/3}}
@media(max-width:700px){.reviews-heading{align-items:flex-start;gap:21px;margin-bottom:26px}.reviews-heading>div:last-child{max-width:100%;width:100%}.reviews-heading>div:last-child>p{font-size:16px;margin-bottom:17px}.reviews-heading .reviews-add{width:100%;min-height:52px}.reviews-grid{grid-template-columns:minmax(0,1fr);gap:17px}.review-card{padding:23px}.review-text{font-size:16px}.reviews-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:29px 22px;gap:20px}.reviews-empty-art{width:94px;height:79px}.reviews-empty h3{font-size:23px}.reviews-empty p{font-size:15px}.reviews-empty .button{width:100%;min-height:49px}.reviews-summary{flex-wrap:wrap;gap:8px 12px;padding-top:0}.reviews-summary>span:last-child{font-size:14px}.review-dialog{width:calc(100% - 20px);max-height:94dvh;border-radius:12px}.review-dialog-head{padding:27px 23px 23px}.review-dialog-head h2{font-size:31px;padding-right:30px}.review-dialog-head>p:last-child{font-size:14px}.review-dialog-close{right:12px;top:12px}.review-form{padding:24px 21px 27px}.review-contact-fields{grid-template-columns:minmax(0,1fr);gap:0}.review-form legend,.review-field>label,.review-contact-legend{font-size:14px}.review-rating label{width:40px;height:40px;font-size:33px}.review-rating{gap:6px}.review-check{font-size:12px}.review-submit{font-size:15px}.review-field textarea{min-height:116px}.review-upload>label{padding:14px 12px}.review-upload small{font-size:12px}.review-dialog-head .eyebrow{font-size:11px}}
@media(prefers-reduced-motion:reduce){.reviews-section *{scroll-behavior:auto}}
